aboutsummaryrefslogtreecommitdiff
path: root/atom/packages/ex-mode/node_modules
diff options
context:
space:
mode:
Diffstat (limited to 'atom/packages/ex-mode/node_modules')
-rw-r--r--atom/packages/ex-mode/node_modules/atom-space-pen-views/README.md8
-rw-r--r--atom/packages/ex-mode/node_modules/atom-space-pen-views/lib/text-editor-view.js10
-rw-r--r--atom/packages/ex-mode/node_modules/atom-space-pen-views/node_modules/fuzzaldrin/package.json5
-rw-r--r--atom/packages/ex-mode/node_modules/atom-space-pen-views/package.json20
-rw-r--r--atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/event-kit/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/LICENSE.md (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/LICENSE.md)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/README.md (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/README.md)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/lib/fs-plus.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/lib/fs-plus.js)0
l---------atom/packages/ex-mode/node_modules/fs-plus/node_modules/.bin/rimraf (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/.bin/rimraf)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/LICENSE (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/LICENSE)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/README.md (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/README.md)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/component.json (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/component.json)0
-rwxr-xr-xatom/packages/ex-mode/node_modules/fs-plus/node_modules/async/lib/async.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/lib/async.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/package.json (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/package.json)6
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.npmignore (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.npmignore)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.travis.yml (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.travis.yml)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/LICENSE (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/LICENSE)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/examples/pow.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/index.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/index.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/package.json (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/package.json)9
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/readme.markdown (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/readme.markdown)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/chmod.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/clobber.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/mkdirp.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm_sync.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/race.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/race.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/rel.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/rel.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return_sync.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/root.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/root.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/sync.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/sync.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask_sync.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/AUTHORS (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/AUTHORS)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/LICENSE (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/LICENSE)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/README.md (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/README.md)0
-rwxr-xr-xatom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/bin.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/bin.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/package.json (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/package.json)3
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/rimraf.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/rimraf.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/run.sh (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/run.sh)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/setup.sh (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/setup.sh)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-async.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-async.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js)0
-rw-r--r--atom/packages/ex-mode/node_modules/fs-plus/package.json (renamed from atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/package.json)7
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/lib/deprecation.js11
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/README.md20
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/index.js172
l---------atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/cake1
l---------atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/coffee1
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/.npmignore11
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CNAME1
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CONTRIBUTING.md9
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/LICENSE22
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README50
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README.md60
-rwxr-xr-xatom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/cake7
-rwxr-xr-xatom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/coffee7
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/browser.js134
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/cake.js114
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/coffee-script.js347
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/command.js572
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/grammar.js631
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/helpers.js252
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/index.js11
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/lexer.js934
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/nodes.js3156
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/optparse.js139
-rwxr-xr-xatom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/parser.js724
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/register.js66
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/repl.js176
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/rewriter.js475
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/scope.js146
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/sourcemap.js161
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/package.json46
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/package.json71
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/register.js1
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/repl.js1
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.npmignore2
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.travis.yml5
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/LICENSE21
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js6
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/index.js82
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/readme.markdown63
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js38
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js37
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js28
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm.js32
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js39
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/race.js41
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/rel.js32
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return.js25
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js24
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/root.js18
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/sync.js32
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask.js28
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js32
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.npmignore2
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.travis.yml4
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/CHANGELOG.md194
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/LICENSE28
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/Makefile.dryice.js166
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/README.md475
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/assert-shim.js56
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/mini-require.js152
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-source-map.jsm20
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-utils.jsm18
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-browser.js8
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-source-map.jsm6
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-utils.jsm21
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-prefix.js8
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-suffix.js3
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map.js8
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/array-set.js97
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64-vlq.js142
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64.js42
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/binary-search.js80
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/mapping-list.js86
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-consumer.js575
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-generator.js400
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-node.js414
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/util.js319
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/LICENSE58
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/README.md171
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/amdefine.js301
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/intercept.js36
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/package.json45
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/package.json185
-rwxr-xr-xatom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/run-tests.js62
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-api.js26
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-array-set.js104
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64-vlq.js23
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64.js35
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-binary-search.js54
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-dog-fooding.js84
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-consumer.js702
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-generator.js679
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-node.js612
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-util.js216
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/util.js192
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/package.json67
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/package.json2
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/package.json26
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/node_modules/jquery/package.json5
-rw-r--r--atom/packages/ex-mode/node_modules/space-pen/package.json5
-rw-r--r--atom/packages/ex-mode/node_modules/underscore-plus/package.json2
152 files changed, 73 insertions, 16139 deletions
diff --git a/atom/packages/ex-mode/node_modules/atom-space-pen-views/README.md b/atom/packages/ex-mode/node_modules/atom-space-pen-views/README.md
index 4f8b31a..856ec19 100644
--- a/atom/packages/ex-mode/node_modules/atom-space-pen-views/README.md
+++ b/atom/packages/ex-mode/node_modules/atom-space-pen-views/README.md
@@ -84,7 +84,8 @@ class MySelectListView extends SelectListView
super
@addClass('overlay from-top')
@setItems(['Hello', 'World'])
- atom.workspaceView.append(this)
+ @panel ?= atom.workspace.addModalPanel(item: this)
+ @panel.show()
@focusFilterEditor()
viewForItem: (item) ->
@@ -92,6 +93,9 @@ class MySelectListView extends SelectListView
confirmed: (item) ->
console.log("#{item} was selected")
+
+ cancelled: ->
+ console.log("This view was cancelled")
```
## Methods
@@ -106,7 +110,7 @@ subclasses. Called when the item is about to appended to the list view.
* `item` The model item being rendered. This will always be one of the items
previously passed to `::setItems`.
-Returns a String of HTML, DOM element, jQuery object, or View.
+Returns a String of HTML, DOM element, jQuery object, or View. Note the root element must be an `li`.
#### `::confirmed`
diff --git a/atom/packages/ex-mode/node_modules/atom-space-pen-views/lib/text-editor-view.js b/atom/packages/ex-mode/node_modules/atom-space-pen-views/lib/text-editor-view.js
index e957a2b..8aecdaf 100644
--- a/atom/packages/ex-mode/node_modules/atom-space-pen-views/lib/text-editor-view.js
+++ b/atom/packages/ex-mode/node_modules/atom-space-pen-views/lib/text-editor-view.js
@@ -9,11 +9,11 @@
__extends(TextEditorView, _super);
function TextEditorView(params) {
- var attributes, mini, name, placeholderText, value;
+ var attributes, editor, mini, name, placeholderText, value;
if (params == null) {
params = {};
}
- mini = params.mini, placeholderText = params.placeholderText, attributes = params.attributes;
+ mini = params.mini, placeholderText = params.placeholderText, attributes = params.attributes, editor = params.editor;
if (attributes == null) {
attributes = {};
}
@@ -23,7 +23,11 @@
if (placeholderText != null) {
attributes['placeholder-text'] = placeholderText;
}
- this.element = document.createElement('atom-text-editor');
+ if (editor != null) {
+ this.element = atom.views.getView(editor);
+ } else {
+ this.element = document.createElement('atom-text-editor');
+ }
for (name in attributes) {
value = attributes[name];
this.element.setAttribute(name, value);
diff --git a/atom/packages/ex-mode/node_modules/atom-space-pen-views/node_modules/fuzzaldrin/package.json b/atom/packages/ex-mode/node_modules/atom-space-pen-views/node_modules/fuzzaldrin/package.json
index 297615c..b9dadd9 100644
--- a/atom/packages/ex-mode/node_modules/atom-space-pen-views/node_modules/fuzzaldrin/package.json
+++ b/atom/packages/ex-mode/node_modules/atom-space-pen-views/node_modules/fuzzaldrin/package.json
@@ -16,7 +16,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/fuzzaldrin.git"
+ "url": "git+https://github.com/atom/fuzzaldrin.git"
},
"bugs": {
"url": "https://github.com/atom/fuzzaldrin/issues"
@@ -67,5 +67,6 @@
],
"directories": {},
"_shasum": "90204c3e2fdaa6941bb28d16645d418063a90e9b",
- "_resolved": "https://registry.npmjs.org/fuzzaldrin/-/fuzzaldrin-2.1.0.tgz"
+ "_resolved": "https://registry.npmjs.org/fuzzaldrin/-/fuzzaldrin-2.1.0.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/atom/packages/ex-mode/node_modules/atom-space-pen-views/package.json b/atom/packages/ex-mode/node_modules/atom-space-pen-views/package.json
index c5be504..0837e28 100644
--- a/atom/packages/ex-mode/node_modules/atom-space-pen-views/package.json
+++ b/atom/packages/ex-mode/node_modules/atom-space-pen-views/package.json
@@ -1,6 +1,6 @@
{
"name": "atom-space-pen-views",
- "version": "2.0.5",
+ "version": "2.1.0",
"description": "Atom SpacePen views that used to live in core.",
"main": "./lib/main",
"scripts": {
@@ -34,15 +34,15 @@
"coffee-cache": "^0.2.0",
"temp": "^0.6.0"
},
- "gitHead": "0e5fc262cc62d453bbd6dce9ecaec5caddc553f9",
+ "gitHead": "75ccee886e723a7a4913a4286e089225eec8834d",
"homepage": "https://github.com/atom/atom-space-pen-views",
- "_id": "atom-space-pen-views@2.0.5",
- "_shasum": "4ef545a6ef396c8342717b0d9d2569577a2651f4",
+ "_id": "atom-space-pen-views@2.1.0",
+ "_shasum": "688e73a04a1cc0f5a41c254c6875e72d58faffb1",
"_from": "atom-space-pen-views@>=2.0.4 <3.0.0",
- "_npmVersion": "1.4.28",
+ "_npmVersion": "1.4.23",
"_npmUser": {
- "name": "kevinsawicki",
- "email": "kevinsawicki@gmail.com"
+ "name": "benogle",
+ "email": "ogle.ben@gmail.com"
},
"maintainers": [
{
@@ -63,9 +63,9 @@
}
],
"dist": {
- "shasum": "4ef545a6ef396c8342717b0d9d2569577a2651f4",
- "tarball": "http://registry.npmjs.org/atom-space-pen-views/-/atom-space-pen-views-2.0.5.tgz"
+ "shasum": "688e73a04a1cc0f5a41c254c6875e72d58faffb1",
+ "tarball": "http://registry.npmjs.org/atom-space-pen-views/-/atom-space-pen-views-2.1.0.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/atom-space-pen-views/-/atom-space-pen-views-2.0.5.tgz"
+ "_resolved": "https://registry.npmjs.org/atom-space-pen-views/-/atom-space-pen-views-2.1.0.tgz"
}
diff --git a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
index 1eace4a..be85e24 100644
--- a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
+++ b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/mixto"
+ "url": "git+https://github.com/atom/mixto.git"
},
"keywords": [
"mixin",
diff --git a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
index 7c7f365..66179a4 100644
--- a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
+++ b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/property-accessors"
+ "url": "git+https://github.com/atom/property-accessors.git"
},
"keywords": [
"property",
diff --git a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/package.json b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/package.json
index ccd6522..53b6b8a 100644
--- a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/package.json
+++ b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/node_modules/emissary/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "http://github.com/atom/emissary.git"
+ "url": "git+ssh://git@github.com/atom/emissary.git"
},
"bugs": {
"url": "https://github.com/atom/emissary/issues"
diff --git a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/package.json b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/package.json
index 8635d08..92f075a 100644
--- a/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/package.json
+++ b/atom/packages/ex-mode/node_modules/event-kit/node_modules/grim/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/grim.git"
+ "url": "git+https://github.com/atom/grim.git"
},
"bugs": {
"url": "https://github.com/atom/grim/issues"
diff --git a/atom/packages/ex-mode/node_modules/event-kit/package.json b/atom/packages/ex-mode/node_modules/event-kit/package.json
index 5ca1859..5f4b745 100644
--- a/atom/packages/ex-mode/node_modules/event-kit/package.json
+++ b/atom/packages/ex-mode/node_modules/event-kit/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/event-kit.git"
+ "url": "git+https://github.com/atom/event-kit.git"
},
"bugs": {
"url": "https://github.com/atom/event-kit/issues"
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/LICENSE.md b/atom/packages/ex-mode/node_modules/fs-plus/LICENSE.md
index 493db50..493db50 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/LICENSE.md
+++ b/atom/packages/ex-mode/node_modules/fs-plus/LICENSE.md
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/README.md b/atom/packages/ex-mode/node_modules/fs-plus/README.md
index ea02e6f..ea02e6f 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/README.md
+++ b/atom/packages/ex-mode/node_modules/fs-plus/README.md
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/lib/fs-plus.js b/atom/packages/ex-mode/node_modules/fs-plus/lib/fs-plus.js
index 499cd64..499cd64 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/lib/fs-plus.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/lib/fs-plus.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/.bin/rimraf b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/.bin/rimraf
index 4cd49a4..4cd49a4 120000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/.bin/rimraf
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/.bin/rimraf
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/LICENSE b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/LICENSE
index b7f9d50..b7f9d50 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/LICENSE
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/LICENSE
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/README.md b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/README.md
index 951f76e..951f76e 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/README.md
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/README.md
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/component.json b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/component.json
index bbb0115..bbb0115 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/component.json
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/component.json
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/lib/async.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/lib/async.js
index 1eebb15..1eebb15 100755
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/lib/async.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/lib/async.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/package.json b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/package.json
index a212ddf..c1296ac 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/async/package.json
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/async/package.json
@@ -8,7 +8,7 @@
"version": "0.2.10",
"repository": {
"type": "git",
- "url": "https://github.com/caolan/async.git"
+ "url": "git+https://github.com/caolan/async.git"
},
"bugs": {
"url": "https://github.com/caolan/async/issues"
@@ -54,5 +54,7 @@
],
"directories": {},
"_shasum": "b6bbe0b0674b9d719708ca38de8c237cb526c3d1",
- "_resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz"
+ "_resolved": "https://registry.npmjs.org/async/-/async-0.2.10.tgz",
+ "readme": "ERROR: No README data found!",
+ "homepage": "https://github.com/caolan/async#readme"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.npmignore b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.npmignore
index 9303c34..9303c34 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.npmignore
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.npmignore
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.travis.yml b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.travis.yml
index 84fd7ca..84fd7ca 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/.travis.yml
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/.travis.yml
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/LICENSE b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/LICENSE
index 432d1ae..432d1ae 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/LICENSE
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/LICENSE
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/examples/pow.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js
index e692421..e692421 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/examples/pow.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/index.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/index.js
index fda6de8..fda6de8 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/index.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/index.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/package.json b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/package.json
index cc7b329..2f42bec 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/package.json
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/package.json
@@ -14,7 +14,7 @@
],
"repository": {
"type": "git",
- "url": "http://github.com/substack/node-mkdirp.git"
+ "url": "git+ssh://git@github.com/substack/node-mkdirp.git"
},
"scripts": {
"test": "tap test/*.js"
@@ -42,5 +42,10 @@
],
"directories": {},
"_shasum": "de3e5f8961c88c787ee1368df849ac4413eca8d7",
- "_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz"
+ "_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz",
+ "bugs": {
+ "url": "https://github.com/substack/node-mkdirp/issues"
+ },
+ "readme": "ERROR: No README data found!",
+ "homepage": "https://github.com/substack/node-mkdirp#readme"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/readme.markdown b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/readme.markdown
index 83b0216..83b0216 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/readme.markdown
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/readme.markdown
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/chmod.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js
index 520dcb8..520dcb8 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/chmod.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/clobber.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js
index 0eb7099..0eb7099 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/clobber.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/mkdirp.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js
index b07cd70..b07cd70 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/mkdirp.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm.js
index 23a7abb..23a7abb 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm_sync.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js
index f685f60..f685f60 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/perm_sync.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/race.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/race.js
index 96a0447..96a0447 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/race.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/race.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/rel.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/rel.js
index 7985824..7985824 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/rel.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/rel.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return.js
index bce68e5..bce68e5 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return_sync.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js
index 7c222d3..7c222d3 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/return_sync.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/root.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/root.js
index 97ad7a2..97ad7a2 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/root.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/root.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/sync.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/sync.js
index 7530cad..7530cad 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/sync.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/sync.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask.js
index 64ccafe..64ccafe 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask_sync.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js
index 35bd5cb..35bd5cb 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/test/umask_sync.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/AUTHORS b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/AUTHORS
index 247b754..247b754 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/AUTHORS
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/AUTHORS
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/LICENSE b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/LICENSE
index 05a4010..05a4010 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/LICENSE
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/LICENSE
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/README.md b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/README.md
index cd123b6..cd123b6 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/README.md
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/README.md
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/bin.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/bin.js
index 29bfa8a..29bfa8a 100755
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/bin.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/bin.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/package.json b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/package.json
index 34093fa..0c67133 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/package.json
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/package.json
@@ -68,5 +68,6 @@
"tarball": "http://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz"
+ "_resolved": "https://registry.npmjs.org/rimraf/-/rimraf-2.2.8.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/rimraf.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/rimraf.js
index eb96c46..eb96c46 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/rimraf.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/rimraf.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/run.sh b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/run.sh
index 653ff9b..653ff9b 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/run.sh
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/run.sh
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/setup.sh b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/setup.sh
index 2602e63..2602e63 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/setup.sh
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/setup.sh
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-async.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-async.js
index 9c2e0b7..9c2e0b7 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-async.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-async.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js
index eb71f10..eb71f10 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js
+++ b/atom/packages/ex-mode/node_modules/fs-plus/node_modules/rimraf/test/test-sync.js
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/package.json b/atom/packages/ex-mode/node_modules/fs-plus/package.json
index 76dbfe4..c8e5c2c 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/package.json
+++ b/atom/packages/ex-mode/node_modules/fs-plus/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/fs-plus.git"
+ "url": "git+https://github.com/atom/fs-plus.git"
},
"bugs": {
"url": "https://github.com/atom/fs-plus/issues"
@@ -43,7 +43,7 @@
"gitHead": "eb4915c02f09427b1bb002b886a9cfc34a262e1f",
"_id": "fs-plus@2.8.1",
"_shasum": "60bcae0d2066f4bb4726f23add525dada80630f6",
- "_from": "fs-plus@>=2.5.0 <3.0.0",
+ "_from": "fs-plus@>=2.2.8 <3.0.0",
"_npmVersion": "1.4.28",
"_npmUser": {
"name": "kevinsawicki",
@@ -72,5 +72,6 @@
"tarball": "http://registry.npmjs.org/fs-plus/-/fs-plus-2.8.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/fs-plus/-/fs-plus-2.8.1.tgz"
+ "_resolved": "https://registry.npmjs.org/fs-plus/-/fs-plus-2.8.1.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/lib/deprecation.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/lib/deprecation.js
index 8faa7ab..fa39865 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/lib/deprecation.js
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/lib/deprecation.js
@@ -1,7 +1,5 @@
(function() {
- var Deprecation, SourceMapCache, convertLine;
-
- convertLine = require('coffeestack').convertLine;
+ var Deprecation, SourceMapCache;
SourceMapCache = {};
@@ -48,7 +46,7 @@
};
Deprecation.prototype.getLocationFromCallsite = function(callsite) {
- var column, converted, fileName, line;
+ var column, fileName, line;
if (callsite.location != null) {
return callsite.location;
}
@@ -60,11 +58,6 @@
fileName = callsite.getFileName();
line = callsite.getLineNumber();
column = callsite.getColumnNumber();
- if (/\.coffee$/.test(fileName)) {
- if (converted = convertLine(fileName, line, column, SourceMapCache)) {
- line = converted.line, column = converted.column;
- }
- }
return "" + fileName + ":" + line + ":" + column;
}
};
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/README.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/README.md
deleted file mode 100644
index f3f64b7..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/README.md
+++ /dev/null
@@ -1,20 +0,0 @@
-# CoffeeStack [![Build Status](https://travis-ci.org/kevinsawicki/coffeestack.png)](https://travis-ci.org/kevinsawicki/coffeestack)
-
-Module to convert JavaScript stack traces to CoffeeScript stack traces.
-
-## Installing
-
-```sh
-npm install coffeestack
-```
-
-## Using
-
-```coffeescript
-{convertStackTrace} = require 'coffeestack'
-
-try
- throw new Error('this is an error')
-catch error
- console.error(convertStackTrace(error.stack))
-```
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/index.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/index.js
deleted file mode 100644
index 5ad299b..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/index.js
+++ /dev/null
@@ -1,172 +0,0 @@
-(function() {
- var CoffeeScript, CoffeeScriptVersion, SourceMapConsumer, cachePath, compileSourceMap, convertLine, convertStackTrace, crypto, fs, getCachePath, getCachedSourceMap, getSourceMapPosition, loadCoffeeScript, path, writeSourceMapToCache;
-
- crypto = require('crypto');
-
- fs = require('fs-plus');
-
- path = require('path');
-
- CoffeeScriptVersion = null;
-
- CoffeeScript = null;
-
- SourceMapConsumer = null;
-
- cachePath = null;
-
- getCachePath = function(code) {
- var digest;
- if (!cachePath) {
- return;
- }
- digest = crypto.createHash('sha1').update(code, 'utf8').digest('hex');
- if (CoffeeScriptVersion == null) {
- CoffeeScriptVersion = require('coffee-script/package.json').version;
- }
- return path.join(cachePath, CoffeeScriptVersion, "" + digest + ".json");
- };
-
- getCachedSourceMap = function(codeCachePath) {
- if (fs.isFileSync(codeCachePath)) {
- try {
- return fs.readFileSync(codeCachePath, 'utf8');
- } catch (_error) {}
- }
- };
-
- writeSourceMapToCache = function(codeCachePath, sourceMap) {
- if (codeCachePath) {
- try {
- fs.writeFileSync(codeCachePath, sourceMap);
- } catch (_error) {}
- }
- };
-
- loadCoffeeScript = function() {
- var coffee, coffeePrepareStackTrace;
- coffee = require('coffee-script');
- coffeePrepareStackTrace = Error.prepareStackTrace;
- if (coffeePrepareStackTrace != null) {
- Error.prepareStackTrace = function(error, stack) {
- var coffeeError;
- try {
- return coffeePrepareStackTrace(error, stack);
- } catch (_error) {
- coffeeError = _error;
- return stack;
- }
- };
- }
- return coffee;
- };
-
- compileSourceMap = function(code, filePath, codeCachePath) {
- var v3SourceMap;
- if (CoffeeScript == null) {
- CoffeeScript = loadCoffeeScript();
- }
- v3SourceMap = CoffeeScript.compile(code, {
- sourceMap: true,
- filename: filePath
- }).v3SourceMap;
- writeSourceMapToCache(codeCachePath, v3SourceMap);
- return v3SourceMap;
- };
-
- getSourceMapPosition = function(sourceMapContents, line, column) {
- var sourceMap;
- if (SourceMapConsumer == null) {
- SourceMapConsumer = require('source-map').SourceMapConsumer;
- }
- sourceMap = new SourceMapConsumer(sourceMapContents);
- return sourceMap.originalPositionFor({
- line: line,
- column: column
- });
- };
-
- convertLine = function(filePath, line, column, sourceMaps) {
- var code, codeCachePath, position, source, sourceMapContents, sourceMapPath;
- if (sourceMaps == null) {
- sourceMaps = {};
- }
- try {
- if (!(sourceMapContents = sourceMaps[filePath])) {
- if (path.extname(filePath) === '.js') {
- sourceMapPath = "" + filePath + ".map";
- sourceMapContents = fs.readFileSync(sourceMapPath, 'utf8');
- } else {
- code = fs.readFileSync(filePath, 'utf8');
- codeCachePath = getCachePath(code);
- sourceMapContents = getCachedSourceMap(codeCachePath);
- if (sourceMapContents == null) {
- sourceMapContents = compileSourceMap(code, filePath, codeCachePath);
- }
- }
- }
- if (sourceMapContents) {
- sourceMaps[filePath] = sourceMapContents;
- position = getSourceMapPosition(sourceMapContents, line, column);
- if ((position.line != null) && (position.column != null)) {
- if (position.source && position.source !== '.') {
- source = path.resolve(filePath, '..', position.source);
- } else {
- source = filePath;
- }
- return {
- line: position.line,
- column: position.column,
- source: source
- };
- }
- }
- } catch (_error) {}
- return null;
- };
-
- convertStackTrace = function(stackTrace, sourceMaps) {
- var atLinePattern, column, convertedLines, filePath, line, mappedLine, match, stackTraceLine, _i, _len, _ref;
- if (sourceMaps == null) {
- sourceMaps = {};
- }
- if (!stackTrace) {
- return stackTrace;
- }
- convertedLines = [];
- atLinePattern = /^(\s+at .* )\((.*):(\d+):(\d+)\)/;
- _ref = stackTrace.split('\n');
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- stackTraceLine = _ref[_i];
- if (match = atLinePattern.exec(stackTraceLine)) {
- filePath = match[2];
- line = match[3];
- column = match[4];
- if (path.extname(filePath) === '.js') {
- mappedLine = convertLine(filePath, line, column, sourceMaps);
- }
- if (mappedLine != null) {
- convertedLines.push("" + match[1] + "(" + mappedLine.source + ":" + mappedLine.line + ":" + mappedLine.column + ")");
- } else {
- convertedLines.push(stackTraceLine);
- }
- } else {
- convertedLines.push(stackTraceLine);
- }
- }
- return convertedLines.join('\n');
- };
-
- exports.convertLine = convertLine;
-
- exports.convertStackTrace = convertStackTrace;
-
- exports.setCacheDirectory = function(newCachePath) {
- return cachePath = newCachePath;
- };
-
- exports.getCacheDirectory = function() {
- return cachePath;
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/cake b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/cake
deleted file mode 120000
index d95f32a..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/cake
+++ /dev/null
@@ -1 +0,0 @@
-../coffee-script/bin/cake \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/coffee b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/coffee
deleted file mode 120000
index b57f275..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/.bin/coffee
+++ /dev/null
@@ -1 +0,0 @@
-../coffee-script/bin/coffee \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/.npmignore b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/.npmignore
deleted file mode 100644
index 21e430d..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/.npmignore
+++ /dev/null
@@ -1,11 +0,0 @@
-*.coffee
-*.html
-.DS_Store
-.git*
-Cakefile
-documentation/
-examples/
-extras/coffee-script.js
-raw/
-src/
-test/
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CNAME b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CNAME
deleted file mode 100644
index faadabe..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CNAME
+++ /dev/null
@@ -1 +0,0 @@
-coffeescript.org \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CONTRIBUTING.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CONTRIBUTING.md
deleted file mode 100644
index 5ea4c5f..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/CONTRIBUTING.md
+++ /dev/null
@@ -1,9 +0,0 @@
-## How to contribute to CoffeeScript
-
-* Before you open a ticket or send a pull request, [search](https://github.com/jashkenas/coffeescript/issues) for previous discussions about the same feature or issue. Add to the earlier ticket if you find one.
-
-* Before sending a pull request for a feature, be sure to have [tests](https://github.com/jashkenas/coffeescript/tree/master/test).
-
-* Use the same coding style as the rest of the [codebase](https://github.com/jashkenas/coffeescript/tree/master/src). If you're just getting started with CoffeeScript, there's a nice [style guide](https://github.com/polarmobile/coffeescript-style-guide).
-
-* In your pull request, do not add documentation to `index.html` or re-build the minified `coffee-script.js` file. We'll do those things before cutting a new release. \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/LICENSE b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/LICENSE
deleted file mode 100644
index 4d09b4d..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/LICENSE
+++ /dev/null
@@ -1,22 +0,0 @@
-Copyright (c) 2009-2014 Jeremy Ashkenas
-
-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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README
deleted file mode 100644
index 37d7bbf..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README
+++ /dev/null
@@ -1,50 +0,0 @@
- {
- } } {
- { { } }
- } }{ {
- { }{ } } _____ __ __
- { }{ }{ { } / ____| / _|/ _|
- .- { { } { }} -. | | ___ | |_| |_ ___ ___
- ( { } { } { } } ) | | / _ \| _| _/ _ \/ _ \
- |`-..________ ..-'| | |___| (_) | | | || __/ __/
- | | \_____\___/|_| |_| \___|\___|
- | ;--.
- | (__ \ _____ _ _
- | | ) ) / ____| (_) | |
- | |/ / | (___ ___ _ __ _ _ __ | |_
- | ( / \___ \ / __| '__| | '_ \| __|
- | |/ ____) | (__| | | | |_) | |_
- | | |_____/ \___|_| |_| .__/ \__|
- `-.._________..-' | |
- |_|
-
-
- CoffeeScript is a little language that compiles into JavaScript.
-
- If you have the Node Package Manager installed:
- npm install -g coffee-script
- (Leave off the -g if you don't wish to install globally.)
-
- Or, if you don't wish to use npm:
- sudo bin/cake install
-
- Execute a script:
- coffee /path/to/script.coffee
-
- Compile a script:
- coffee -c /path/to/script.coffee
-
- For documentation, usage, and examples, see:
- http://coffeescript.org/
-
- To suggest a feature, report a bug, or general discussion:
- http://github.com/jashkenas/coffeescript/issues/
-
- If you'd like to chat, drop by #coffeescript on Freenode IRC,
- or on webchat.freenode.net.
-
- The source repository:
- git://github.com/jashkenas/coffeescript.git
-
- Top 100 contributors are listed here:
- http://github.com/jashkenas/coffeescript/contributors
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README.md
deleted file mode 100644
index 90f6788..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/README.md
+++ /dev/null
@@ -1,60 +0,0 @@
- {
- } } {
- { { } }
- } }{ {
- { }{ } } _____ __ __
- { }{ }{ { } / ____| / _|/ _|
- .- { { } { }} -. | | ___ | |_| |_ ___ ___
- ( { } { } { } } ) | | / _ \| _| _/ _ \/ _ \
- |`-..________ ..-'| | |___| (_) | | | || __/ __/
- | | \_____\___/|_| |_| \___|\___|
- | ;--.
- | (__ \ _____ _ _
- | | ) ) / ____| (_) | |
- | |/ / | (___ ___ _ __ _ _ __ | |_
- | ( / \___ \ / __| '__| | '_ \| __|
- | |/ ____) | (__| | | | |_) | |_
- | | |_____/ \___|_| |_| .__/ \__|
- `-.._________..-' | |
- |_|
-
-CoffeeScript is a little language that compiles into JavaScript.
-
-## Installation
-
-If you have the node package manager, npm, installed:
-
-```shell
-npm install -g coffee-script
-```
-
-Leave off the `-g` if you don't wish to install globally. If you don't wish to use npm:
-
-```shell
-git clone https://github.com/jashkenas/coffeescript.git
-sudo coffeescript/bin/cake install
-```
-
-## Getting Started
-
-Execute a script:
-
-```shell
-coffee /path/to/script.coffee
-```
-
-Compile a script:
-
-```shell
-coffee -c /path/to/script.coffee
-```
-
-For documentation, usage, and examples, see: http://coffeescript.org/
-
-To suggest a feature or report a bug: http://github.com/jashkenas/coffeescript/issues
-
-If you'd like to chat, drop by #coffeescript on Freenode IRC.
-
-The source repository: https://github.com/jashkenas/coffeescript.git
-
-Our lovely and talented contributors are listed here: http://github.com/jashkenas/coffeescript/contributors
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/cake b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/cake
deleted file mode 100755
index 5965f4e..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/cake
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env node
-
-var path = require('path');
-var fs = require('fs');
-var lib = path.join(path.dirname(fs.realpathSync(__filename)), '../lib');
-
-require(lib + '/coffee-script/cake').run();
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/coffee b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/coffee
deleted file mode 100755
index 3d1d71c..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/bin/coffee
+++ /dev/null
@@ -1,7 +0,0 @@
-#!/usr/bin/env node
-
-var path = require('path');
-var fs = require('fs');
-var lib = path.join(path.dirname(fs.realpathSync(__filename)), '../lib');
-
-require(lib + '/coffee-script/command').run();
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/browser.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/browser.js
deleted file mode 100644
index da2830d..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/browser.js
+++ /dev/null
@@ -1,134 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var CoffeeScript, compile, runScripts,
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
- CoffeeScript = require('./coffee-script');
-
- CoffeeScript.require = require;
-
- compile = CoffeeScript.compile;
-
- CoffeeScript["eval"] = function(code, options) {
- if (options == null) {
- options = {};
- }
- if (options.bare == null) {
- options.bare = true;
- }
- return eval(compile(code, options));
- };
-
- CoffeeScript.run = function(code, options) {
- if (options == null) {
- options = {};
- }
- options.bare = true;
- options.shiftLine = true;
- return Function(compile(code, options))();
- };
-
- if (typeof window === "undefined" || window === null) {
- return;
- }
-
- if ((typeof btoa !== "undefined" && btoa !== null) && (typeof JSON !== "undefined" && JSON !== null) && (typeof unescape !== "undefined" && unescape !== null) && (typeof encodeURIComponent !== "undefined" && encodeURIComponent !== null)) {
- compile = function(code, options) {
- var js, v3SourceMap, _ref;
- if (options == null) {
- options = {};
- }
- options.sourceMap = true;
- options.inline = true;
- _ref = CoffeeScript.compile(code, options), js = _ref.js, v3SourceMap = _ref.v3SourceMap;
- return "" + js + "\n//# sourceMappingURL=data:application/json;base64," + (btoa(unescape(encodeURIComponent(v3SourceMap)))) + "\n//# sourceURL=coffeescript";
- };
- }
-
- CoffeeScript.load = function(url, callback, options, hold) {
- var xhr;
- if (options == null) {
- options = {};
- }
- if (hold == null) {
- hold = false;
- }
- options.sourceFiles = [url];
- xhr = window.ActiveXObject ? new window.ActiveXObject('Microsoft.XMLHTTP') : new window.XMLHttpRequest();
- xhr.open('GET', url, true);
- if ('overrideMimeType' in xhr) {
- xhr.overrideMimeType('text/plain');
- }
- xhr.onreadystatechange = function() {
- var param, _ref;
- if (xhr.readyState === 4) {
- if ((_ref = xhr.status) === 0 || _ref === 200) {
- param = [xhr.responseText, options];
- if (!hold) {
- CoffeeScript.run.apply(CoffeeScript, param);
- }
- } else {
- throw new Error("Could not load " + url);
- }
- if (callback) {
- return callback(param);
- }
- }
- };
- return xhr.send(null);
- };
-
- runScripts = function() {
- var coffees, coffeetypes, execute, i, index, s, script, scripts, _fn, _i, _len;
- scripts = window.document.getElementsByTagName('script');
- coffeetypes = ['text/coffeescript', 'text/literate-coffeescript'];
- coffees = (function() {
- var _i, _len, _ref, _results;
- _results = [];
- for (_i = 0, _len = scripts.length; _i < _len; _i++) {
- s = scripts[_i];
- if (_ref = s.type, __indexOf.call(coffeetypes, _ref) >= 0) {
- _results.push(s);
- }
- }
- return _results;
- })();
- index = 0;
- execute = function() {
- var param;
- param = coffees[index];
- if (param instanceof Array) {
- CoffeeScript.run.apply(CoffeeScript, param);
- index++;
- return execute();
- }
- };
- _fn = function(script, i) {
- var options;
- options = {
- literate: script.type === coffeetypes[1]
- };
- if (script.src) {
- return CoffeeScript.load(script.src, function(param) {
- coffees[i] = param;
- return execute();
- }, options, true);
- } else {
- options.sourceFiles = ['embedded'];
- return coffees[i] = [script.innerHTML, options];
- }
- };
- for (i = _i = 0, _len = coffees.length; _i < _len; i = ++_i) {
- script = coffees[i];
- _fn(script, i);
- }
- return execute();
- };
-
- if (window.addEventListener) {
- window.addEventListener('DOMContentLoaded', runScripts, false);
- } else {
- window.attachEvent('onload', runScripts);
- }
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/cake.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/cake.js
deleted file mode 100644
index 94ecd4c..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/cake.js
+++ /dev/null
@@ -1,114 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var CoffeeScript, cakefileDirectory, fatalError, fs, helpers, missingTask, oparse, options, optparse, path, printTasks, switches, tasks;
-
- fs = require('fs');
-
- path = require('path');
-
- helpers = require('./helpers');
-
- optparse = require('./optparse');
-
- CoffeeScript = require('./coffee-script');
-
- CoffeeScript.register();
-
- tasks = {};
-
- options = {};
-
- switches = [];
-
- oparse = null;
-
- helpers.extend(global, {
- task: function(name, description, action) {
- var _ref;
- if (!action) {
- _ref = [description, action], action = _ref[0], description = _ref[1];
- }
- return tasks[name] = {
- name: name,
- description: description,
- action: action
- };
- },
- option: function(letter, flag, description) {
- return switches.push([letter, flag, description]);
- },
- invoke: function(name) {
- if (!tasks[name]) {
- missingTask(name);
- }
- return tasks[name].action(options);
- }
- });
-
- exports.run = function() {
- var arg, args, e, _i, _len, _ref, _results;
- global.__originalDirname = fs.realpathSync('.');
- process.chdir(cakefileDirectory(__originalDirname));
- args = process.argv.slice(2);
- CoffeeScript.run(fs.readFileSync('Cakefile').toString(), {
- filename: 'Cakefile'
- });
- oparse = new optparse.OptionParser(switches);
- if (!args.length) {
- return printTasks();
- }
- try {
- options = oparse.parse(args);
- } catch (_error) {
- e = _error;
- return fatalError("" + e);
- }
- _ref = options["arguments"];
- _results = [];
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- arg = _ref[_i];
- _results.push(invoke(arg));
- }
- return _results;
- };
-
- printTasks = function() {
- var cakefilePath, desc, name, relative, spaces, task;
- relative = path.relative || path.resolve;
- cakefilePath = path.join(relative(__originalDirname, process.cwd()), 'Cakefile');
- console.log("" + cakefilePath + " defines the following tasks:\n");
- for (name in tasks) {
- task = tasks[name];
- spaces = 20 - name.length;
- spaces = spaces > 0 ? Array(spaces + 1).join(' ') : '';
- desc = task.description ? "# " + task.description : '';
- console.log("cake " + name + spaces + " " + desc);
- }
- if (switches.length) {
- return console.log(oparse.help());
- }
- };
-
- fatalError = function(message) {
- console.error(message + '\n');
- console.log('To see a list of all tasks/options, run "cake"');
- return process.exit(1);
- };
-
- missingTask = function(task) {
- return fatalError("No such task: " + task);
- };
-
- cakefileDirectory = function(dir) {
- var parent;
- if (fs.existsSync(path.join(dir, 'Cakefile'))) {
- return dir;
- }
- parent = path.normalize(path.join(dir, '..'));
- if (parent !== dir) {
- return cakefileDirectory(parent);
- }
- throw new Error("Cakefile not found in " + (process.cwd()));
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/coffee-script.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/coffee-script.js
deleted file mode 100644
index 9061c7e..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/coffee-script.js
+++ /dev/null
@@ -1,347 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var Lexer, SourceMap, compile, ext, formatSourcePosition, fs, getSourceMap, helpers, lexer, parser, path, sourceMaps, vm, withPrettyErrors, _base, _i, _len, _ref,
- __hasProp = {}.hasOwnProperty,
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
- fs = require('fs');
-
- vm = require('vm');
-
- path = require('path');
-
- Lexer = require('./lexer').Lexer;
-
- parser = require('./parser').parser;
-
- helpers = require('./helpers');
-
- SourceMap = require('./sourcemap');
-
- exports.VERSION = '1.8.0';
-
- exports.FILE_EXTENSIONS = ['.coffee', '.litcoffee', '.coffee.md'];
-
- exports.helpers = helpers;
-
- withPrettyErrors = function(fn) {
- return function(code, options) {
- var err;
- if (options == null) {
- options = {};
- }
- try {
- return fn.call(this, code, options);
- } catch (_error) {
- err = _error;
- throw helpers.updateSyntaxError(err, code, options.filename);
- }
- };
- };
-
- exports.compile = compile = withPrettyErrors(function(code, options) {
- var answer, currentColumn, currentLine, extend, fragment, fragments, header, js, map, merge, newLines, _i, _len;
- merge = helpers.merge, extend = helpers.extend;
- options = extend({}, options);
- if (options.sourceMap) {
- map = new SourceMap;
- }
- fragments = parser.parse(lexer.tokenize(code, options)).compileToFragments(options);
- currentLine = 0;
- if (options.header) {
- currentLine += 1;
- }
- if (options.shiftLine) {
- currentLine += 1;
- }
- currentColumn = 0;
- js = "";
- for (_i = 0, _len = fragments.length; _i < _len; _i++) {
- fragment = fragments[_i];
- if (options.sourceMap) {
- if (fragment.locationData) {
- map.add([fragment.locationData.first_line, fragment.locationData.first_column], [currentLine, currentColumn], {
- noReplace: true
- });
- }
- newLines = helpers.count(fragment.code, "\n");
- currentLine += newLines;
- if (newLines) {
- currentColumn = fragment.code.length - (fragment.code.lastIndexOf("\n") + 1);
- } else {
- currentColumn += fragment.code.length;
- }
- }
- js += fragment.code;
- }
- if (options.header) {
- header = "Generated by CoffeeScript " + this.VERSION;
- js = "// " + header + "\n" + js;
- }
- if (options.sourceMap) {
- answer = {
- js: js
- };
- answer.sourceMap = map;
- answer.v3SourceMap = map.generate(options, code);
- return answer;
- } else {
- return js;
- }
- });
-
- exports.tokens = withPrettyErrors(function(code, options) {
- return lexer.tokenize(code, options);
- });
-
- exports.nodes = withPrettyErrors(function(source, options) {
- if (typeof source === 'string') {
- return parser.parse(lexer.tokenize(source, options));
- } else {
- return parser.parse(source);
- }
- });
-
- exports.run = function(code, options) {
- var answer, dir, mainModule, _ref;
- if (options == null) {
- options = {};
- }
- mainModule = require.main;
- mainModule.filename = process.argv[1] = options.filename ? fs.realpathSync(options.filename) : '.';
- mainModule.moduleCache && (mainModule.moduleCache = {});
- dir = options.filename ? path.dirname(fs.realpathSync(options.filename)) : fs.realpathSync('.');
- mainModule.paths = require('module')._nodeModulePaths(dir);
- if (!helpers.isCoffee(mainModule.filename) || require.extensions) {
- answer = compile(code, options);
- code = (_ref = answer.js) != null ? _ref : answer;
- }
- return mainModule._compile(code, mainModule.filename);
- };
-
- exports["eval"] = function(code, options) {
- var Module, Script, js, k, o, r, sandbox, v, _i, _len, _module, _ref, _ref1, _require;
- if (options == null) {
- options = {};
- }
- if (!(code = code.trim())) {
- return;
- }
- Script = vm.Script;
- if (Script) {
- if (options.sandbox != null) {
- if (options.sandbox instanceof Script.createContext().constructor) {
- sandbox = options.sandbox;
- } else {
- sandbox = Script.createContext();
- _ref = options.sandbox;
- for (k in _ref) {
- if (!__hasProp.call(_ref, k)) continue;
- v = _ref[k];
- sandbox[k] = v;
- }
- }
- sandbox.global = sandbox.root = sandbox.GLOBAL = sandbox;
- } else {
- sandbox = global;
- }
- sandbox.__filename = options.filename || 'eval';
- sandbox.__dirname = path.dirname(sandbox.__filename);
- if (!(sandbox !== global || sandbox.module || sandbox.require)) {
- Module = require('module');
- sandbox.module = _module = new Module(options.modulename || 'eval');
- sandbox.require = _require = function(path) {
- return Module._load(path, _module, true);
- };
- _module.filename = sandbox.__filename;
- _ref1 = Object.getOwnPropertyNames(require);
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- r = _ref1[_i];
- if (r !== 'paths') {
- _require[r] = require[r];
- }
- }
- _require.paths = _module.paths = Module._nodeModulePaths(process.cwd());
- _require.resolve = function(request) {
- return Module._resolveFilename(request, _module);
- };
- }
- }
- o = {};
- for (k in options) {
- if (!__hasProp.call(options, k)) continue;
- v = options[k];
- o[k] = v;
- }
- o.bare = true;
- js = compile(code, o);
- if (sandbox === global) {
- return vm.runInThisContext(js);
- } else {
- return vm.runInContext(js, sandbox);
- }
- };
-
- exports.register = function() {
- return require('./register');
- };
-
- if (require.extensions) {
- _ref = this.FILE_EXTENSIONS;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- ext = _ref[_i];
- if ((_base = require.extensions)[ext] == null) {
- _base[ext] = function() {
- throw new Error("Use CoffeeScript.register() or require the coffee-script/register module to require " + ext + " files.");
- };
- }
- }
- }
-
- exports._compileFile = function(filename, sourceMap) {
- var answer, err, raw, stripped;
- if (sourceMap == null) {
- sourceMap = false;
- }
- raw = fs.readFileSync(filename, 'utf8');
- stripped = raw.charCodeAt(0) === 0xFEFF ? raw.substring(1) : raw;
- try {
- answer = compile(stripped, {
- filename: filename,
- sourceMap: sourceMap,
- literate: helpers.isLiterate(filename)
- });
- } catch (_error) {
- err = _error;
- throw helpers.updateSyntaxError(err, stripped, filename);
- }
- return answer;
- };
-
- lexer = new Lexer;
-
- parser.lexer = {
- lex: function() {
- var tag, token;
- token = this.tokens[this.pos++];
- if (token) {
- tag = token[0], this.yytext = token[1], this.yylloc = token[2];
- this.errorToken = token.origin || token;
- this.yylineno = this.yylloc.first_line;
- } else {
- tag = '';
- }
- return tag;
- },
- setInput: function(tokens) {
- this.tokens = tokens;
- return this.pos = 0;
- },
- upcomingInput: function() {
- return "";
- }
- };
-
- parser.yy = require('./nodes');
-
- parser.yy.parseError = function(message, _arg) {
- var errorLoc, errorTag, errorText, errorToken, token, tokens, _ref1;
- token = _arg.token;
- _ref1 = parser.lexer, errorToken = _ref1.errorToken, tokens = _ref1.tokens;
- errorTag = errorToken[0], errorText = errorToken[1], errorLoc = errorToken[2];
- errorText = errorToken === tokens[tokens.length - 1] ? 'end of input' : errorTag === 'INDENT' || errorTag === 'OUTDENT' ? 'indentation' : helpers.nameWhitespaceCharacter(errorText);
- return helpers.throwSyntaxError("unexpected " + errorText, errorLoc);
- };
-
- formatSourcePosition = function(frame, getSourceMapping) {
- var as, column, fileLocation, fileName, functionName, isConstructor, isMethodCall, line, methodName, source, tp, typeName;
- fileName = void 0;
- fileLocation = '';
- if (frame.isNative()) {
- fileLocation = "native";
- } else {
- if (frame.isEval()) {
- fileName = frame.getScriptNameOrSourceURL();
- if (!fileName) {
- fileLocation = "" + (frame.getEvalOrigin()) + ", ";
- }
- } else {
- fileName = frame.getFileName();
- }
- fileName || (fileName = "<anonymous>");
- line = frame.getLineNumber();
- column = frame.getColumnNumber();
- source = getSourceMapping(fileName, line, column);
- fileLocation = source ? "" + fileName + ":" + source[0] + ":" + source[1] : "" + fileName + ":" + line + ":" + column;
- }
- functionName = frame.getFunctionName();
- isConstructor = frame.isConstructor();
- isMethodCall = !(frame.isToplevel() || isConstructor);
- if (isMethodCall) {
- methodName = frame.getMethodName();
- typeName = frame.getTypeName();
- if (functionName) {
- tp = as = '';
- if (typeName && functionName.indexOf(typeName)) {
- tp = "" + typeName + ".";
- }
- if (methodName && functionName.indexOf("." + methodName) !== functionName.length - methodName.length - 1) {
- as = " [as " + methodName + "]";
- }
- return "" + tp + functionName + as + " (" + fileLocation + ")";
- } else {
- return "" + typeName + "." + (methodName || '<anonymous>') + " (" + fileLocation + ")";
- }
- } else if (isConstructor) {
- return "new " + (functionName || '<anonymous>') + " (" + fileLocation + ")";
- } else if (functionName) {
- return "" + functionName + " (" + fileLocation + ")";
- } else {
- return fileLocation;
- }
- };
-
- sourceMaps = {};
-
- getSourceMap = function(filename) {
- var answer, _ref1;
- if (sourceMaps[filename]) {
- return sourceMaps[filename];
- }
- if (_ref1 = path != null ? path.extname(filename) : void 0, __indexOf.call(exports.FILE_EXTENSIONS, _ref1) < 0) {
- return;
- }
- answer = exports._compileFile(filename, true);
- return sourceMaps[filename] = answer.sourceMap;
- };
-
- Error.prepareStackTrace = function(err, stack) {
- var frame, frames, getSourceMapping;
- getSourceMapping = function(filename, line, column) {
- var answer, sourceMap;
- sourceMap = getSourceMap(filename);
- if (sourceMap) {
- answer = sourceMap.sourceLocation([line - 1, column - 1]);
- }
- if (answer) {
- return [answer[0] + 1, answer[1] + 1];
- } else {
- return null;
- }
- };
- frames = (function() {
- var _j, _len1, _results;
- _results = [];
- for (_j = 0, _len1 = stack.length; _j < _len1; _j++) {
- frame = stack[_j];
- if (frame.getFunction() === exports.run) {
- break;
- }
- _results.push(" at " + (formatSourcePosition(frame, getSourceMapping)));
- }
- return _results;
- })();
- return "" + (err.toString()) + "\n" + (frames.join('\n')) + "\n";
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/command.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/command.js
deleted file mode 100644
index 357653b..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/command.js
+++ /dev/null
@@ -1,572 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var BANNER, CoffeeScript, EventEmitter, SWITCHES, compileJoin, compileOptions, compilePath, compileScript, compileStdio, exec, findDirectoryIndex, forkNode, fs, helpers, hidden, joinTimeout, mkdirp, notSources, optionParser, optparse, opts, outputPath, parseOptions, path, printLine, printTokens, printWarn, removeSource, removeSourceDir, silentUnlink, sourceCode, sources, spawn, timeLog, usage, useWinPathSep, version, wait, watch, watchDir, watchedDirs, writeJs, _ref,
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
- fs = require('fs');
-
- path = require('path');
-
- helpers = require('./helpers');
-
- optparse = require('./optparse');
-
- CoffeeScript = require('./coffee-script');
-
- mkdirp = require('mkdirp');
-
- _ref = require('child_process'), spawn = _ref.spawn, exec = _ref.exec;
-
- EventEmitter = require('events').EventEmitter;
-
- useWinPathSep = path.sep === '\\';
-
- helpers.extend(CoffeeScript, new EventEmitter);
-
- printLine = function(line) {
- return process.stdout.write(line + '\n');
- };
-
- printWarn = function(line) {
- return process.stderr.write(line + '\n');
- };
-
- hidden = function(file) {
- return /^\.|~$/.test(file);
- };
-
- BANNER = 'Usage: coffee [options] path/to/script.coffee -- [args]\n\nIf called without options, `coffee` will run your script.';
-
- SWITCHES = [['-b', '--bare', 'compile without a top-level function wrapper'], ['-c', '--compile', 'compile to JavaScript and save as .js files'], ['-e', '--eval', 'pass a string from the command line as input'], ['-h', '--help', 'display this help message'], ['-i', '--interactive', 'run an interactive CoffeeScript REPL'], ['-j', '--join [FILE]', 'concatenate the source CoffeeScript before compiling'], ['-m', '--map', 'generate source map and save as .js.map files'], ['-n', '--nodes', 'print out the parse tree that the parser produces'], ['--nodejs [ARGS]', 'pass options directly to the "node" binary'], ['--no-header', 'suppress the "Generated by" header'], ['-o', '--output [DIR]', 'set the output directory for compiled JavaScript'], ['-p', '--print', 'print out the compiled JavaScript'], ['-s', '--stdio', 'listen for and compile scripts over stdio'], ['-l', '--literate', 'treat stdio as literate style coffee-script'], ['-t', '--tokens', 'print out the tokens that the lexer/rewriter produce'], ['-v', '--version', 'display the version number'], ['-w', '--watch', 'watch scripts for changes and rerun commands']];
-
- opts = {};
-
- sources = [];
-
- sourceCode = [];
-
- notSources = {};
-
- watchedDirs = {};
-
- optionParser = null;
-
- exports.run = function() {
- var literals, replCliOpts, source, _i, _len, _ref1, _results;
- parseOptions();
- replCliOpts = {
- useGlobal: true
- };
- if (opts.nodejs) {
- return forkNode();
- }
- if (opts.help) {
- return usage();
- }
- if (opts.version) {
- return version();
- }
- if (opts.interactive) {
- return require('./repl').start(replCliOpts);
- }
- if (opts.stdio) {
- return compileStdio();
- }
- if (opts["eval"]) {
- return compileScript(null, opts["arguments"][0]);
- }
- if (!opts["arguments"].length) {
- return require('./repl').start(replCliOpts);
- }
- literals = opts.run ? opts["arguments"].splice(1) : [];
- process.argv = process.argv.slice(0, 2).concat(literals);
- process.argv[0] = 'coffee';
- if (opts.output) {
- opts.output = path.resolve(opts.output);
- }
- if (opts.join) {
- opts.join = path.resolve(opts.join);
- console.error('\nThe --join option is deprecated and will be removed in a future version.\n\nIf for some reason it\'s necessary to share local variables between files,\nreplace...\n\n $ coffee --compile --join bundle.js -- a.coffee b.coffee c.coffee\n\nwith...\n\n $ cat a.coffee b.coffee c.coffee | coffee --compile --stdio > bundle.js\n');
- }
- _ref1 = opts["arguments"];
- _results = [];
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- source = _ref1[_i];
- source = path.resolve(source);
- _results.push(compilePath(source, true, source));
- }
- return _results;
- };
-
- compilePath = function(source, topLevel, base) {
- var code, err, file, files, stats, _i, _len, _results;
- if (__indexOf.call(sources, source) >= 0 || watchedDirs[source] || !topLevel && (notSources[source] || hidden(source))) {
- return;
- }
- try {
- stats = fs.statSync(source);
- } catch (_error) {
- err = _error;
- if (err.code === 'ENOENT') {
- console.error("File not found: " + source);
- process.exit(1);
- }
- throw err;
- }
- if (stats.isDirectory()) {
- if (path.basename(source) === 'node_modules') {
- notSources[source] = true;
- return;
- }
- if (opts.run) {
- compilePath(findDirectoryIndex(source), topLevel, base);
- return;
- }
- if (opts.watch) {
- watchDir(source, base);
- }
- try {
- files = fs.readdirSync(source);
- } catch (_error) {
- err = _error;
- if (err.code === 'ENOENT') {
- return;
- } else {
- throw err;
- }
- }
- _results = [];
- for (_i = 0, _len = files.length; _i < _len; _i++) {
- file = files[_i];
- _results.push(compilePath(path.join(source, file), false, base));
- }
- return _results;
- } else if (topLevel || helpers.isCoffee(source)) {
- sources.push(source);
- sourceCode.push(null);
- delete notSources[source];
- if (opts.watch) {
- watch(source, base);
- }
- try {
- code = fs.readFileSync(source);
- } catch (_error) {
- err = _error;
- if (err.code === 'ENOENT') {
- return;
- } else {
- throw err;
- }
- }
- return compileScript(source, code.toString(), base);
- } else {
- return notSources[source] = true;
- }
- };
-
- findDirectoryIndex = function(source) {
- var err, ext, index, _i, _len, _ref1;
- _ref1 = CoffeeScript.FILE_EXTENSIONS;
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- ext = _ref1[_i];
- index = path.join(source, "index" + ext);
- try {
- if ((fs.statSync(index)).isFile()) {
- return index;
- }
- } catch (_error) {
- err = _error;
- if (err.code !== 'ENOENT') {
- throw err;
- }
- }
- }
- console.error("Missing index.coffee or index.litcoffee in " + source);
- return process.exit(1);
- };
-
- compileScript = function(file, input, base) {
- var compiled, err, message, o, options, t, task;
- if (base == null) {
- base = null;
- }
- o = opts;
- options = compileOptions(file, base);
- try {
- t = task = {
- file: file,
- input: input,
- options: options
- };
- CoffeeScript.emit('compile', task);
- if (o.tokens) {
- return printTokens(CoffeeScript.tokens(t.input, t.options));
- } else if (o.nodes) {
- return printLine(CoffeeScript.nodes(t.input, t.options).toString().trim());
- } else if (o.run) {
- CoffeeScript.register();
- return CoffeeScript.run(t.input, t.options);
- } else if (o.join && t.file !== o.join) {
- if (helpers.isLiterate(file)) {
- t.input = helpers.invertLiterate(t.input);
- }
- sourceCode[sources.indexOf(t.file)] = t.input;
- return compileJoin();
- } else {
- compiled = CoffeeScript.compile(t.input, t.options);
- t.output = compiled;
- if (o.map) {
- t.output = compiled.js;
- t.sourceMap = compiled.v3SourceMap;
- }
- CoffeeScript.emit('success', task);
- if (o.print) {
- return printLine(t.output.trim());
- } else if (o.compile || o.map) {
- return writeJs(base, t.file, t.output, options.jsPath, t.sourceMap);
- }
- }
- } catch (_error) {
- err = _error;
- CoffeeScript.emit('failure', err, task);
- if (CoffeeScript.listeners('failure').length) {
- return;
- }
- message = err.stack || ("" + err);
- if (o.watch) {
- return printLine(message + '\x07');
- } else {
- printWarn(message);
- return process.exit(1);
- }
- }
- };
-
- compileStdio = function() {
- var code, stdin;
- code = '';
- stdin = process.openStdin();
- stdin.on('data', function(buffer) {
- if (buffer) {
- return code += buffer.toString();
- }
- });
- return stdin.on('end', function() {
- return compileScript(null, code);
- });
- };
-
- joinTimeout = null;
-
- compileJoin = function() {
- if (!opts.join) {
- return;
- }
- if (!sourceCode.some(function(code) {
- return code === null;
- })) {
- clearTimeout(joinTimeout);
- return joinTimeout = wait(100, function() {
- return compileScript(opts.join, sourceCode.join('\n'), opts.join);
- });
- }
- };
-
- watch = function(source, base) {
- var compile, compileTimeout, err, prevStats, rewatch, startWatcher, watchErr, watcher;
- watcher = null;
- prevStats = null;
- compileTimeout = null;
- watchErr = function(err) {
- if (err.code !== 'ENOENT') {
- throw err;
- }
- if (__indexOf.call(sources, source) < 0) {
- return;
- }
- try {
- rewatch();
- return compile();
- } catch (_error) {
- removeSource(source, base);
- return compileJoin();
- }
- };
- compile = function() {
- clearTimeout(compileTimeout);
- return compileTimeout = wait(25, function() {
- return fs.stat(source, function(err, stats) {
- if (err) {
- return watchErr(err);
- }
- if (prevStats && stats.size === prevStats.size && stats.mtime.getTime() === prevStats.mtime.getTime()) {
- return rewatch();
- }
- prevStats = stats;
- return fs.readFile(source, function(err, code) {
- if (err) {
- return watchErr(err);
- }
- compileScript(source, code.toString(), base);
- return rewatch();
- });
- });
- });
- };
- startWatcher = function() {
- return watcher = fs.watch(source).on('change', compile).on('error', function(err) {
- if (err.code !== 'EPERM') {
- throw err;
- }
- return removeSource(source, base);
- });
- };
- rewatch = function() {
- if (watcher != null) {
- watcher.close();
- }
- return startWatcher();
- };
- try {
- return startWatcher();
- } catch (_error) {
- err = _error;
- return watchErr(err);
- }
- };
-
- watchDir = function(source, base) {
- var err, readdirTimeout, startWatcher, stopWatcher, watcher;
- watcher = null;
- readdirTimeout = null;
- startWatcher = function() {
- return watcher = fs.watch(source).on('error', function(err) {
- if (err.code !== 'EPERM') {
- throw err;
- }
- return stopWatcher();
- }).on('change', function() {
- clearTimeout(readdirTimeout);
- return readdirTimeout = wait(25, function() {
- var err, file, files, _i, _len, _results;
- try {
- files = fs.readdirSync(source);
- } catch (_error) {
- err = _error;
- if (err.code !== 'ENOENT') {
- throw err;
- }
- return stopWatcher();
- }
- _results = [];
- for (_i = 0, _len = files.length; _i < _len; _i++) {
- file = files[_i];
- _results.push(compilePath(path.join(source, file), false, base));
- }
- return _results;
- });
- });
- };
- stopWatcher = function() {
- watcher.close();
- return removeSourceDir(source, base);
- };
- watchedDirs[source] = true;
- try {
- return startWatcher();
- } catch (_error) {
- err = _error;
- if (err.code !== 'ENOENT') {
- throw err;
- }
- }
- };
-
- removeSourceDir = function(source, base) {
- var file, sourcesChanged, _i, _len;
- delete watchedDirs[source];
- sourcesChanged = false;
- for (_i = 0, _len = sources.length; _i < _len; _i++) {
- file = sources[_i];
- if (!(source === path.dirname(file))) {
- continue;
- }
- removeSource(file, base);
- sourcesChanged = true;
- }
- if (sourcesChanged) {
- return compileJoin();
- }
- };
-
- removeSource = function(source, base) {
- var index;
- index = sources.indexOf(source);
- sources.splice(index, 1);
- sourceCode.splice(index, 1);
- if (!opts.join) {
- silentUnlink(outputPath(source, base));
- silentUnlink(outputPath(source, base, '.js.map'));
- return timeLog("removed " + source);
- }
- };
-
- silentUnlink = function(path) {
- var err, _ref1;
- try {
- return fs.unlinkSync(path);
- } catch (_error) {
- err = _error;
- if ((_ref1 = err.code) !== 'ENOENT' && _ref1 !== 'EPERM') {
- throw err;
- }
- }
- };
-
- outputPath = function(source, base, extension) {
- var basename, dir, srcDir;
- if (extension == null) {
- extension = ".js";
- }
- basename = helpers.baseFileName(source, true, useWinPathSep);
- srcDir = path.dirname(source);
- if (!opts.output) {
- dir = srcDir;
- } else if (source === base) {
- dir = opts.output;
- } else {
- dir = path.join(opts.output, path.relative(base, srcDir));
- }
- return path.join(dir, basename + extension);
- };
-
- writeJs = function(base, sourcePath, js, jsPath, generatedSourceMap) {
- var compile, jsDir, sourceMapPath;
- if (generatedSourceMap == null) {
- generatedSourceMap = null;
- }
- sourceMapPath = outputPath(sourcePath, base, ".js.map");
- jsDir = path.dirname(jsPath);
- compile = function() {
- if (opts.compile) {
- if (js.length <= 0) {
- js = ' ';
- }
- if (generatedSourceMap) {
- js = "" + js + "\n//# sourceMappingURL=" + (helpers.baseFileName(sourceMapPath, false, useWinPathSep)) + "\n";
- }
- fs.writeFile(jsPath, js, function(err) {
- if (err) {
- printLine(err.message);
- return process.exit(1);
- } else if (opts.compile && opts.watch) {
- return timeLog("compiled " + sourcePath);
- }
- });
- }
- if (generatedSourceMap) {
- return fs.writeFile(sourceMapPath, generatedSourceMap, function(err) {
- if (err) {
- printLine("Could not write source map: " + err.message);
- return process.exit(1);
- }
- });
- }
- };
- return fs.exists(jsDir, function(itExists) {
- if (itExists) {
- return compile();
- } else {
- return mkdirp(jsDir, compile);
- }
- });
- };
-
- wait = function(milliseconds, func) {
- return setTimeout(func, milliseconds);
- };
-
- timeLog = function(message) {
- return console.log("" + ((new Date).toLocaleTimeString()) + " - " + message);
- };
-
- printTokens = function(tokens) {
- var strings, tag, token, value;
- strings = (function() {
- var _i, _len, _results;
- _results = [];
- for (_i = 0, _len = tokens.length; _i < _len; _i++) {
- token = tokens[_i];
- tag = token[0];
- value = token[1].toString().replace(/\n/, '\\n');
- _results.push("[" + tag + " " + value + "]");
- }
- return _results;
- })();
- return printLine(strings.join(' '));
- };
-
- parseOptions = function() {
- var o;
- optionParser = new optparse.OptionParser(SWITCHES, BANNER);
- o = opts = optionParser.parse(process.argv.slice(2));
- o.compile || (o.compile = !!o.output);
- o.run = !(o.compile || o.print || o.map);
- return o.print = !!(o.print || (o["eval"] || o.stdio && o.compile));
- };
-
- compileOptions = function(filename, base) {
- var answer, cwd, jsDir, jsPath;
- answer = {
- filename: filename,
- literate: opts.literate || helpers.isLiterate(filename),
- bare: opts.bare,
- header: opts.compile && !opts['no-header'],
- sourceMap: opts.map
- };
- if (filename) {
- if (base) {
- cwd = process.cwd();
- jsPath = outputPath(filename, base);
- jsDir = path.dirname(jsPath);
- answer = helpers.merge(answer, {
- jsPath: jsPath,
- sourceRoot: path.relative(jsDir, cwd),
- sourceFiles: [path.relative(cwd, filename)],
- generatedFile: helpers.baseFileName(jsPath, false, useWinPathSep)
- });
- } else {
- answer = helpers.merge(answer, {
- sourceRoot: "",
- sourceFiles: [helpers.baseFileName(filename, false, useWinPathSep)],
- generatedFile: helpers.baseFileName(filename, true, useWinPathSep) + ".js"
- });
- }
- }
- return answer;
- };
-
- forkNode = function() {
- var args, nodeArgs, p;
- nodeArgs = opts.nodejs.split(/\s+/);
- args = process.argv.slice(1);
- args.splice(args.indexOf('--nodejs'), 2);
- p = spawn(process.execPath, nodeArgs.concat(args), {
- cwd: process.cwd(),
- env: process.env,
- customFds: [0, 1, 2]
- });
- return p.on('exit', function(code) {
- return process.exit(code);
- });
- };
-
- usage = function() {
- return printLine((new optparse.OptionParser(SWITCHES, BANNER)).help());
- };
-
- version = function() {
- return printLine("CoffeeScript version " + CoffeeScript.VERSION);
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/grammar.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/grammar.js
deleted file mode 100644
index cfcab24..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/grammar.js
+++ /dev/null
@@ -1,631 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var Parser, alt, alternatives, grammar, name, o, operators, token, tokens, unwrap;
-
- Parser = require('jison').Parser;
-
- unwrap = /^function\s*\(\)\s*\{\s*return\s*([\s\S]*);\s*\}/;
-
- o = function(patternString, action, options) {
- var addLocationDataFn, match, patternCount;
- patternString = patternString.replace(/\s{2,}/g, ' ');
- patternCount = patternString.split(' ').length;
- if (!action) {
- return [patternString, '$$ = $1;', options];
- }
- action = (match = unwrap.exec(action)) ? match[1] : "(" + action + "())";
- action = action.replace(/\bnew /g, '$&yy.');
- action = action.replace(/\b(?:Block\.wrap|extend)\b/g, 'yy.$&');
- addLocationDataFn = function(first, last) {
- if (!last) {
- return "yy.addLocationDataFn(@" + first + ")";
- } else {
- return "yy.addLocationDataFn(@" + first + ", @" + last + ")";
- }
- };
- action = action.replace(/LOC\(([0-9]*)\)/g, addLocationDataFn('$1'));
- action = action.replace(/LOC\(([0-9]*),\s*([0-9]*)\)/g, addLocationDataFn('$1', '$2'));
- return [patternString, "$$ = " + (addLocationDataFn(1, patternCount)) + "(" + action + ");", options];
- };
-
- grammar = {
- Root: [
- o('', function() {
- return new Block;
- }), o('Body')
- ],
- Body: [
- o('Line', function() {
- return Block.wrap([$1]);
- }), o('Body TERMINATOR Line', function() {
- return $1.push($3);
- }), o('Body TERMINATOR')
- ],
- Line: [o('Expression'), o('Statement')],
- Statement: [
- o('Return'), o('Comment'), o('STATEMENT', function() {
- return new Literal($1);
- })
- ],
- Expression: [o('Value'), o('Invocation'), o('Code'), o('Operation'), o('Assign'), o('If'), o('Try'), o('While'), o('For'), o('Switch'), o('Class'), o('Throw')],
- Block: [
- o('INDENT OUTDENT', function() {
- return new Block;
- }), o('INDENT Body OUTDENT', function() {
- return $2;
- })
- ],
- Identifier: [
- o('IDENTIFIER', function() {
- return new Literal($1);
- })
- ],
- AlphaNumeric: [
- o('NUMBER', function() {
- return new Literal($1);
- }), o('STRING', function() {
- return new Literal($1);
- })
- ],
- Literal: [
- o('AlphaNumeric'), o('JS', function() {
- return new Literal($1);
- }), o('REGEX', function() {
- return new Literal($1);
- }), o('DEBUGGER', function() {
- return new Literal($1);
- }), o('UNDEFINED', function() {
- return new Undefined;
- }), o('NULL', function() {
- return new Null;
- }), o('BOOL', function() {
- return new Bool($1);
- })
- ],
- Assign: [
- o('Assignable = Expression', function() {
- return new Assign($1, $3);
- }), o('Assignable = TERMINATOR Expression', function() {
- return new Assign($1, $4);
- }), o('Assignable = INDENT Expression OUTDENT', function() {
- return new Assign($1, $4);
- })
- ],
- AssignObj: [
- o('ObjAssignable', function() {
- return new Value($1);
- }), o('ObjAssignable : Expression', function() {
- return new Assign(LOC(1)(new Value($1)), $3, 'object');
- }), o('ObjAssignable : INDENT Expression OUTDENT', function() {
- return new Assign(LOC(1)(new Value($1)), $4, 'object');
- }), o('Comment')
- ],
- ObjAssignable: [o('Identifier'), o('AlphaNumeric'), o('ThisProperty')],
- Return: [
- o('RETURN Expression', function() {
- return new Return($2);
- }), o('RETURN', function() {
- return new Return;
- })
- ],
- Comment: [
- o('HERECOMMENT', function() {
- return new Comment($1);
- })
- ],
- Code: [
- o('PARAM_START ParamList PARAM_END FuncGlyph Block', function() {
- return new Code($2, $5, $4);
- }), o('FuncGlyph Block', function() {
- return new Code([], $2, $1);
- })
- ],
- FuncGlyph: [
- o('->', function() {
- return 'func';
- }), o('=>', function() {
- return 'boundfunc';
- })
- ],
- OptComma: [o(''), o(',')],
- ParamList: [
- o('', function() {
- return [];
- }), o('Param', function() {
- return [$1];
- }), o('ParamList , Param', function() {
- return $1.concat($3);
- }), o('ParamList OptComma TERMINATOR Param', function() {
- return $1.concat($4);
- }), o('ParamList OptComma INDENT ParamList OptComma OUTDENT', function() {
- return $1.concat($4);
- })
- ],
- Param: [
- o('ParamVar', function() {
- return new Param($1);
- }), o('ParamVar ...', function() {
- return new Param($1, null, true);
- }), o('ParamVar = Expression', function() {
- return new Param($1, $3);
- }), o('...', function() {
- return new Expansion;
- })
- ],
- ParamVar: [o('Identifier'), o('ThisProperty'), o('Array'), o('Object')],
- Splat: [
- o('Expression ...', function() {
- return new Splat($1);
- })
- ],
- SimpleAssignable: [
- o('Identifier', function() {
- return new Value($1);
- }), o('Value Accessor', function() {
- return $1.add($2);
- }), o('Invocation Accessor', function() {
- return new Value($1, [].concat($2));
- }), o('ThisProperty')
- ],
- Assignable: [
- o('SimpleAssignable'), o('Array', function() {
- return new Value($1);
- }), o('Object', function() {
- return new Value($1);
- })
- ],
- Value: [
- o('Assignable'), o('Literal', function() {
- return new Value($1);
- }), o('Parenthetical', function() {
- return new Value($1);
- }), o('Range', function() {
- return new Value($1);
- }), o('This')
- ],
- Accessor: [
- o('. Identifier', function() {
- return new Access($2);
- }), o('?. Identifier', function() {
- return new Access($2, 'soak');
- }), o(':: Identifier', function() {
- return [LOC(1)(new Access(new Literal('prototype'))), LOC(2)(new Access($2))];
- }), o('?:: Identifier', function() {
- return [LOC(1)(new Access(new Literal('prototype'), 'soak')), LOC(2)(new Access($2))];
- }), o('::', function() {
- return new Access(new Literal('prototype'));
- }), o('Index')
- ],
- Index: [
- o('INDEX_START IndexValue INDEX_END', function() {
- return $2;
- }), o('INDEX_SOAK Index', function() {
- return extend($2, {
- soak: true
- });
- })
- ],
- IndexValue: [
- o('Expression', function() {
- return new Index($1);
- }), o('Slice', function() {
- return new Slice($1);
- })
- ],
- Object: [
- o('{ AssignList OptComma }', function() {
- return new Obj($2, $1.generated);
- })
- ],
- AssignList: [
- o('', function() {
- return [];
- }), o('AssignObj', function() {
- return [$1];
- }), o('AssignList , AssignObj', function() {
- return $1.concat($3);
- }), o('AssignList OptComma TERMINATOR AssignObj', function() {
- return $1.concat($4);
- }), o('AssignList OptComma INDENT AssignList OptComma OUTDENT', function() {
- return $1.concat($4);
- })
- ],
- Class: [
- o('CLASS', function() {
- return new Class;
- }), o('CLASS Block', function() {
- return new Class(null, null, $2);
- }), o('CLASS EXTENDS Expression', function() {
- return new Class(null, $3);
- }), o('CLASS EXTENDS Expression Block', function() {
- return new Class(null, $3, $4);
- }), o('CLASS SimpleAssignable', function() {
- return new Class($2);
- }), o('CLASS SimpleAssignable Block', function() {
- return new Class($2, null, $3);
- }), o('CLASS SimpleAssignable EXTENDS Expression', function() {
- return new Class($2, $4);
- }), o('CLASS SimpleAssignable EXTENDS Expression Block', function() {
- return new Class($2, $4, $5);
- })
- ],
- Invocation: [
- o('Value OptFuncExist Arguments', function() {
- return new Call($1, $3, $2);
- }), o('Invocation OptFuncExist Arguments', function() {
- return new Call($1, $3, $2);
- }), o('SUPER', function() {
- return new Call('super', [new Splat(new Literal('arguments'))]);
- }), o('SUPER Arguments', function() {
- return new Call('super', $2);
- })
- ],
- OptFuncExist: [
- o('', function() {
- return false;
- }), o('FUNC_EXIST', function() {
- return true;
- })
- ],
- Arguments: [
- o('CALL_START CALL_END', function() {
- return [];
- }), o('CALL_START ArgList OptComma CALL_END', function() {
- return $2;
- })
- ],
- This: [
- o('THIS', function() {
- return new Value(new Literal('this'));
- }), o('@', function() {
- return new Value(new Literal('this'));
- })
- ],
- ThisProperty: [
- o('@ Identifier', function() {
- return new Value(LOC(1)(new Literal('this')), [LOC(2)(new Access($2))], 'this');
- })
- ],
- Array: [
- o('[ ]', function() {
- return new Arr([]);
- }), o('[ ArgList OptComma ]', function() {
- return new Arr($2);
- })
- ],
- RangeDots: [
- o('..', function() {
- return 'inclusive';
- }), o('...', function() {
- return 'exclusive';
- })
- ],
- Range: [
- o('[ Expression RangeDots Expression ]', function() {
- return new Range($2, $4, $3);
- })
- ],
- Slice: [
- o('Expression RangeDots Expression', function() {
- return new Range($1, $3, $2);
- }), o('Expression RangeDots', function() {
- return new Range($1, null, $2);
- }), o('RangeDots Expression', function() {
- return new Range(null, $2, $1);
- }), o('RangeDots', function() {
- return new Range(null, null, $1);
- })
- ],
- ArgList: [
- o('Arg', function() {
- return [$1];
- }), o('ArgList , Arg', function() {
- return $1.concat($3);
- }), o('ArgList OptComma TERMINATOR Arg', function() {
- return $1.concat($4);
- }), o('INDENT ArgList OptComma OUTDENT', function() {
- return $2;
- }), o('ArgList OptComma INDENT ArgList OptComma OUTDENT', function() {
- return $1.concat($4);
- })
- ],
- Arg: [
- o('Expression'), o('Splat'), o('...', function() {
- return new Expansion;
- })
- ],
- SimpleArgs: [
- o('Expression'), o('SimpleArgs , Expression', function() {
- return [].concat($1, $3);
- })
- ],
- Try: [
- o('TRY Block', function() {
- return new Try($2);
- }), o('TRY Block Catch', function() {
- return new Try($2, $3[0], $3[1]);
- }), o('TRY Block FINALLY Block', function() {
- return new Try($2, null, null, $4);
- }), o('TRY Block Catch FINALLY Block', function() {
- return new Try($2, $3[0], $3[1], $5);
- })
- ],
- Catch: [
- o('CATCH Identifier Block', function() {
- return [$2, $3];
- }), o('CATCH Object Block', function() {
- return [LOC(2)(new Value($2)), $3];
- }), o('CATCH Block', function() {
- return [null, $2];
- })
- ],
- Throw: [
- o('THROW Expression', function() {
- return new Throw($2);
- })
- ],
- Parenthetical: [
- o('( Body )', function() {
- return new Parens($2);
- }), o('( INDENT Body OUTDENT )', function() {
- return new Parens($3);
- })
- ],
- WhileSource: [
- o('WHILE Expression', function() {
- return new While($2);
- }), o('WHILE Expression WHEN Expression', function() {
- return new While($2, {
- guard: $4
- });
- }), o('UNTIL Expression', function() {
- return new While($2, {
- invert: true
- });
- }), o('UNTIL Expression WHEN Expression', function() {
- return new While($2, {
- invert: true,
- guard: $4
- });
- })
- ],
- While: [
- o('WhileSource Block', function() {
- return $1.addBody($2);
- }), o('Statement WhileSource', function() {
- return $2.addBody(LOC(1)(Block.wrap([$1])));
- }), o('Expression WhileSource', function() {
- return $2.addBody(LOC(1)(Block.wrap([$1])));
- }), o('Loop', function() {
- return $1;
- })
- ],
- Loop: [
- o('LOOP Block', function() {
- return new While(LOC(1)(new Literal('true'))).addBody($2);
- }), o('LOOP Expression', function() {
- return new While(LOC(1)(new Literal('true'))).addBody(LOC(2)(Block.wrap([$2])));
- })
- ],
- For: [
- o('Statement ForBody', function() {
- return new For($1, $2);
- }), o('Expression ForBody', function() {
- return new For($1, $2);
- }), o('ForBody Block', function() {
- return new For($2, $1);
- })
- ],
- ForBody: [
- o('FOR Range', function() {
- return {
- source: LOC(2)(new Value($2))
- };
- }), o('ForStart ForSource', function() {
- $2.own = $1.own;
- $2.name = $1[0];
- $2.index = $1[1];
- return $2;
- })
- ],
- ForStart: [
- o('FOR ForVariables', function() {
- return $2;
- }), o('FOR OWN ForVariables', function() {
- $3.own = true;
- return $3;
- })
- ],
- ForValue: [
- o('Identifier'), o('ThisProperty'), o('Array', function() {
- return new Value($1);
- }), o('Object', function() {
- return new Value($1);
- })
- ],
- ForVariables: [
- o('ForValue', function() {
- return [$1];
- }), o('ForValue , ForValue', function() {
- return [$1, $3];
- })
- ],
- ForSource: [
- o('FORIN Expression', function() {
- return {
- source: $2
- };
- }), o('FOROF Expression', function() {
- return {
- source: $2,
- object: true
- };
- }), o('FORIN Expression WHEN Expression', function() {
- return {
- source: $2,
- guard: $4
- };
- }), o('FOROF Expression WHEN Expression', function() {
- return {
- source: $2,
- guard: $4,
- object: true
- };
- }), o('FORIN Expression BY Expression', function() {
- return {
- source: $2,
- step: $4
- };
- }), o('FORIN Expression WHEN Expression BY Expression', function() {
- return {
- source: $2,
- guard: $4,
- step: $6
- };
- }), o('FORIN Expression BY Expression WHEN Expression', function() {
- return {
- source: $2,
- step: $4,
- guard: $6
- };
- })
- ],
- Switch: [
- o('SWITCH Expression INDENT Whens OUTDENT', function() {
- return new Switch($2, $4);
- }), o('SWITCH Expression INDENT Whens ELSE Block OUTDENT', function() {
- return new Switch($2, $4, $6);
- }), o('SWITCH INDENT Whens OUTDENT', function() {
- return new Switch(null, $3);
- }), o('SWITCH INDENT Whens ELSE Block OUTDENT', function() {
- return new Switch(null, $3, $5);
- })
- ],
- Whens: [
- o('When'), o('Whens When', function() {
- return $1.concat($2);
- })
- ],
- When: [
- o('LEADING_WHEN SimpleArgs Block', function() {
- return [[$2, $3]];
- }), o('LEADING_WHEN SimpleArgs Block TERMINATOR', function() {
- return [[$2, $3]];
- })
- ],
- IfBlock: [
- o('IF Expression Block', function() {
- return new If($2, $3, {
- type: $1
- });
- }), o('IfBlock ELSE IF Expression Block', function() {
- return $1.addElse(LOC(3, 5)(new If($4, $5, {
- type: $3
- })));
- })
- ],
- If: [
- o('IfBlock'), o('IfBlock ELSE Block', function() {
- return $1.addElse($3);
- }), o('Statement POST_IF Expression', function() {
- return new If($3, LOC(1)(Block.wrap([$1])), {
- type: $2,
- statement: true
- });
- }), o('Expression POST_IF Expression', function() {
- return new If($3, LOC(1)(Block.wrap([$1])), {
- type: $2,
- statement: true
- });
- })
- ],
- Operation: [
- o('UNARY Expression', function() {
- return new Op($1, $2);
- }), o('UNARY_MATH Expression', function() {
- return new Op($1, $2);
- }), o('- Expression', (function() {
- return new Op('-', $2);
- }), {
- prec: 'UNARY_MATH'
- }), o('+ Expression', (function() {
- return new Op('+', $2);
- }), {
- prec: 'UNARY_MATH'
- }), o('-- SimpleAssignable', function() {
- return new Op('--', $2);
- }), o('++ SimpleAssignable', function() {
- return new Op('++', $2);
- }), o('SimpleAssignable --', function() {
- return new Op('--', $1, null, true);
- }), o('SimpleAssignable ++', function() {
- return new Op('++', $1, null, true);
- }), o('Expression ?', function() {
- return new Existence($1);
- }), o('Expression + Expression', function() {
- return new Op('+', $1, $3);
- }), o('Expression - Expression', function() {
- return new Op('-', $1, $3);
- }), o('Expression MATH Expression', function() {
- return new Op($2, $1, $3);
- }), o('Expression ** Expression', function() {
- return new Op($2, $1, $3);
- }), o('Expression SHIFT Expression', function() {
- return new Op($2, $1, $3);
- }), o('Expression COMPARE Expression', function() {
- return new Op($2, $1, $3);
- }), o('Expression LOGIC Expression', function() {
- return new Op($2, $1, $3);
- }), o('Expression RELATION Expression', function() {
- if ($2.charAt(0) === '!') {
- return new Op($2.slice(1), $1, $3).invert();
- } else {
- return new Op($2, $1, $3);
- }
- }), o('SimpleAssignable COMPOUND_ASSIGN Expression', function() {
- return new Assign($1, $3, $2);
- }), o('SimpleAssignable COMPOUND_ASSIGN INDENT Expression OUTDENT', function() {
- return new Assign($1, $4, $2);
- }), o('SimpleAssignable COMPOUND_ASSIGN TERMINATOR Expression', function() {
- return new Assign($1, $4, $2);
- }), o('SimpleAssignable EXTENDS Expression', function() {
- return new Extends($1, $3);
- })
- ]
- };
-
- operators = [['left', '.', '?.', '::', '?::'], ['left', 'CALL_START', 'CALL_END'], ['nonassoc', '++', '--'], ['left', '?'], ['right', 'UNARY'], ['right', '**'], ['right', 'UNARY_MATH'], ['left', 'MATH'], ['left', '+', '-'], ['left', 'SHIFT'], ['left', 'RELATION'], ['left', 'COMPARE'], ['left', 'LOGIC'], ['nonassoc', 'INDENT', 'OUTDENT'], ['right', '=', ':', 'COMPOUND_ASSIGN', 'RETURN', 'THROW', 'EXTENDS'], ['right', 'FORIN', 'FOROF', 'BY', 'WHEN'], ['right', 'IF', 'ELSE', 'FOR', 'WHILE', 'UNTIL', 'LOOP', 'SUPER', 'CLASS'], ['left', 'POST_IF']];
-
- tokens = [];
-
- for (name in grammar) {
- alternatives = grammar[name];
- grammar[name] = (function() {
- var _i, _j, _len, _len1, _ref, _results;
- _results = [];
- for (_i = 0, _len = alternatives.length; _i < _len; _i++) {
- alt = alternatives[_i];
- _ref = alt[0].split(' ');
- for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) {
- token = _ref[_j];
- if (!grammar[token]) {
- tokens.push(token);
- }
- }
- if (name === 'Root') {
- alt[1] = "return " + alt[1];
- }
- _results.push(alt);
- }
- return _results;
- })();
- }
-
- exports.parser = new Parser({
- tokens: tokens.join(' '),
- bnf: grammar,
- operators: operators.reverse(),
- startSymbol: 'Root'
- });
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/helpers.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/helpers.js
deleted file mode 100644
index 049f757..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/helpers.js
+++ /dev/null
@@ -1,252 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var buildLocationData, extend, flatten, last, repeat, syntaxErrorToString, _ref;
-
- exports.starts = function(string, literal, start) {
- return literal === string.substr(start, literal.length);
- };
-
- exports.ends = function(string, literal, back) {
- var len;
- len = literal.length;
- return literal === string.substr(string.length - len - (back || 0), len);
- };
-
- exports.repeat = repeat = function(str, n) {
- var res;
- res = '';
- while (n > 0) {
- if (n & 1) {
- res += str;
- }
- n >>>= 1;
- str += str;
- }
- return res;
- };
-
- exports.compact = function(array) {
- var item, _i, _len, _results;
- _results = [];
- for (_i = 0, _len = array.length; _i < _len; _i++) {
- item = array[_i];
- if (item) {
- _results.push(item);
- }
- }
- return _results;
- };
-
- exports.count = function(string, substr) {
- var num, pos;
- num = pos = 0;
- if (!substr.length) {
- return 1 / 0;
- }
- while (pos = 1 + string.indexOf(substr, pos)) {
- num++;
- }
- return num;
- };
-
- exports.merge = function(options, overrides) {
- return extend(extend({}, options), overrides);
- };
-
- extend = exports.extend = function(object, properties) {
- var key, val;
- for (key in properties) {
- val = properties[key];
- object[key] = val;
- }
- return object;
- };
-
- exports.flatten = flatten = function(array) {
- var element, flattened, _i, _len;
- flattened = [];
- for (_i = 0, _len = array.length; _i < _len; _i++) {
- element = array[_i];
- if (element instanceof Array) {
- flattened = flattened.concat(flatten(element));
- } else {
- flattened.push(element);
- }
- }
- return flattened;
- };
-
- exports.del = function(obj, key) {
- var val;
- val = obj[key];
- delete obj[key];
- return val;
- };
-
- exports.last = last = function(array, back) {
- return array[array.length - (back || 0) - 1];
- };
-
- exports.some = (_ref = Array.prototype.some) != null ? _ref : function(fn) {
- var e, _i, _len;
- for (_i = 0, _len = this.length; _i < _len; _i++) {
- e = this[_i];
- if (fn(e)) {
- return true;
- }
- }
- return false;
- };
-
- exports.invertLiterate = function(code) {
- var line, lines, maybe_code;
- maybe_code = true;
- lines = (function() {
- var _i, _len, _ref1, _results;
- _ref1 = code.split('\n');
- _results = [];
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- line = _ref1[_i];
- if (maybe_code && /^([ ]{4}|[ ]{0,3}\t)/.test(line)) {
- _results.push(line);
- } else if (maybe_code = /^\s*$/.test(line)) {
- _results.push(line);
- } else {
- _results.push('# ' + line);
- }
- }
- return _results;
- })();
- return lines.join('\n');
- };
-
- buildLocationData = function(first, last) {
- if (!last) {
- return first;
- } else {
- return {
- first_line: first.first_line,
- first_column: first.first_column,
- last_line: last.last_line,
- last_column: last.last_column
- };
- }
- };
-
- exports.addLocationDataFn = function(first, last) {
- return function(obj) {
- if (((typeof obj) === 'object') && (!!obj['updateLocationDataIfMissing'])) {
- obj.updateLocationDataIfMissing(buildLocationData(first, last));
- }
- return obj;
- };
- };
-
- exports.locationDataToString = function(obj) {
- var locationData;
- if (("2" in obj) && ("first_line" in obj[2])) {
- locationData = obj[2];
- } else if ("first_line" in obj) {
- locationData = obj;
- }
- if (locationData) {
- return ("" + (locationData.first_line + 1) + ":" + (locationData.first_column + 1) + "-") + ("" + (locationData.last_line + 1) + ":" + (locationData.last_column + 1));
- } else {
- return "No location data";
- }
- };
-
- exports.baseFileName = function(file, stripExt, useWinPathSep) {
- var parts, pathSep;
- if (stripExt == null) {
- stripExt = false;
- }
- if (useWinPathSep == null) {
- useWinPathSep = false;
- }
- pathSep = useWinPathSep ? /\\|\// : /\//;
- parts = file.split(pathSep);
- file = parts[parts.length - 1];
- if (!(stripExt && file.indexOf('.') >= 0)) {
- return file;
- }
- parts = file.split('.');
- parts.pop();
- if (parts[parts.length - 1] === 'coffee' && parts.length > 1) {
- parts.pop();
- }
- return parts.join('.');
- };
-
- exports.isCoffee = function(file) {
- return /\.((lit)?coffee|coffee\.md)$/.test(file);
- };
-
- exports.isLiterate = function(file) {
- return /\.(litcoffee|coffee\.md)$/.test(file);
- };
-
- exports.throwSyntaxError = function(message, location) {
- var error;
- error = new SyntaxError(message);
- error.location = location;
- error.toString = syntaxErrorToString;
- error.stack = error.toString();
- throw error;
- };
-
- exports.updateSyntaxError = function(error, code, filename) {
- if (error.toString === syntaxErrorToString) {
- error.code || (error.code = code);
- error.filename || (error.filename = filename);
- error.stack = error.toString();
- }
- return error;
- };
-
- syntaxErrorToString = function() {
- var codeLine, colorize, colorsEnabled, end, filename, first_column, first_line, last_column, last_line, marker, start, _ref1, _ref2;
- if (!(this.code && this.location)) {
- return Error.prototype.toString.call(this);
- }
- _ref1 = this.location, first_line = _ref1.first_line, first_column = _ref1.first_column, last_line = _ref1.last_line, last_column = _ref1.last_column;
- if (last_line == null) {
- last_line = first_line;
- }
- if (last_column == null) {
- last_column = first_column;
- }
- filename = this.filename || '[stdin]';
- codeLine = this.code.split('\n')[first_line];
- start = first_column;
- end = first_line === last_line ? last_column + 1 : codeLine.length;
- marker = codeLine.slice(0, start).replace(/[^\s]/g, ' ') + repeat('^', end - start);
- if (typeof process !== "undefined" && process !== null) {
- colorsEnabled = process.stdout.isTTY && !process.env.NODE_DISABLE_COLORS;
- }
- if ((_ref2 = this.colorful) != null ? _ref2 : colorsEnabled) {
- colorize = function(str) {
- return "\x1B[1;31m" + str + "\x1B[0m";
- };
- codeLine = codeLine.slice(0, start) + colorize(codeLine.slice(start, end)) + codeLine.slice(end);
- marker = colorize(marker);
- }
- return "" + filename + ":" + (first_line + 1) + ":" + (first_column + 1) + ": error: " + this.message + "\n" + codeLine + "\n" + marker;
- };
-
- exports.nameWhitespaceCharacter = function(string) {
- switch (string) {
- case ' ':
- return 'space';
- case '\n':
- return 'newline';
- case '\r':
- return 'carriage return';
- case '\t':
- return 'tab';
- default:
- return string;
- }
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/index.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/index.js
deleted file mode 100644
index 46c97ea..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/index.js
+++ /dev/null
@@ -1,11 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var key, val, _ref;
-
- _ref = require('./coffee-script');
- for (key in _ref) {
- val = _ref[key];
- exports[key] = val;
- }
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/lexer.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/lexer.js
deleted file mode 100644
index 0f3cef8..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/lexer.js
+++ /dev/null
@@ -1,934 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var BOM, BOOL, CALLABLE, CODE, COFFEE_ALIASES, COFFEE_ALIAS_MAP, COFFEE_KEYWORDS, COMMENT, COMPARE, COMPOUND_ASSIGN, HEREDOC, HEREDOC_ILLEGAL, HEREDOC_INDENT, HEREGEX, HEREGEX_OMIT, IDENTIFIER, INDENTABLE_CLOSERS, INDEXABLE, INVERSES, JSTOKEN, JS_FORBIDDEN, JS_KEYWORDS, LINE_BREAK, LINE_CONTINUER, LOGIC, Lexer, MATH, MULTILINER, MULTI_DENT, NOT_REGEX, NOT_SPACED_REGEX, NUMBER, OPERATOR, REGEX, RELATION, RESERVED, Rewriter, SHIFT, SIMPLESTR, STRICT_PROSCRIBED, TRAILING_SPACES, UNARY, UNARY_MATH, WHITESPACE, compact, count, invertLiterate, key, last, locationDataToString, repeat, starts, throwSyntaxError, _ref, _ref1,
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; };
-
- _ref = require('./rewriter'), Rewriter = _ref.Rewriter, INVERSES = _ref.INVERSES;
-
- _ref1 = require('./helpers'), count = _ref1.count, starts = _ref1.starts, compact = _ref1.compact, last = _ref1.last, repeat = _ref1.repeat, invertLiterate = _ref1.invertLiterate, locationDataToString = _ref1.locationDataToString, throwSyntaxError = _ref1.throwSyntaxError;
-
- exports.Lexer = Lexer = (function() {
- function Lexer() {}
-
- Lexer.prototype.tokenize = function(code, opts) {
- var consumed, i, tag, _ref2;
- if (opts == null) {
- opts = {};
- }
- this.literate = opts.literate;
- this.indent = 0;
- this.baseIndent = 0;
- this.indebt = 0;
- this.outdebt = 0;
- this.indents = [];
- this.ends = [];
- this.tokens = [];
- this.chunkLine = opts.line || 0;
- this.chunkColumn = opts.column || 0;
- code = this.clean(code);
- i = 0;
- while (this.chunk = code.slice(i)) {
- consumed = this.identifierToken() || this.commentToken() || this.whitespaceToken() || this.lineToken() || this.heredocToken() || this.stringToken() || this.numberToken() || this.regexToken() || this.jsToken() || this.literalToken();
- _ref2 = this.getLineAndColumnFromChunk(consumed), this.chunkLine = _ref2[0], this.chunkColumn = _ref2[1];
- i += consumed;
- }
- this.closeIndentation();
- if (tag = this.ends.pop()) {
- this.error("missing " + tag);
- }
- if (opts.rewrite === false) {
- return this.tokens;
- }
- return (new Rewriter).rewrite(this.tokens);
- };
-
- Lexer.prototype.clean = function(code) {
- if (code.charCodeAt(0) === BOM) {
- code = code.slice(1);
- }
- code = code.replace(/\r/g, '').replace(TRAILING_SPACES, '');
- if (WHITESPACE.test(code)) {
- code = "\n" + code;
- this.chunkLine--;
- }
- if (this.literate) {
- code = invertLiterate(code);
- }
- return code;
- };
-
- Lexer.prototype.identifierToken = function() {
- var colon, colonOffset, forcedIdentifier, id, idLength, input, match, poppedToken, prev, tag, tagToken, _ref2, _ref3, _ref4;
- if (!(match = IDENTIFIER.exec(this.chunk))) {
- return 0;
- }
- input = match[0], id = match[1], colon = match[2];
- idLength = id.length;
- poppedToken = void 0;
- if (id === 'own' && this.tag() === 'FOR') {
- this.token('OWN', id);
- return id.length;
- }
- forcedIdentifier = colon || (prev = last(this.tokens)) && (((_ref2 = prev[0]) === '.' || _ref2 === '?.' || _ref2 === '::' || _ref2 === '?::') || !prev.spaced && prev[0] === '@');
- tag = 'IDENTIFIER';
- if (!forcedIdentifier && (__indexOf.call(JS_KEYWORDS, id) >= 0 || __indexOf.call(COFFEE_KEYWORDS, id) >= 0)) {
- tag = id.toUpperCase();
- if (tag === 'WHEN' && (_ref3 = this.tag(), __indexOf.call(LINE_BREAK, _ref3) >= 0)) {
- tag = 'LEADING_WHEN';
- } else if (tag === 'FOR') {
- this.seenFor = true;
- } else if (tag === 'UNLESS') {
- tag = 'IF';
- } else if (__indexOf.call(UNARY, tag) >= 0) {
- tag = 'UNARY';
- } else if (__indexOf.call(RELATION, tag) >= 0) {
- if (tag !== 'INSTANCEOF' && this.seenFor) {
- tag = 'FOR' + tag;
- this.seenFor = false;
- } else {
- tag = 'RELATION';
- if (this.value() === '!') {
- poppedToken = this.tokens.pop();
- id = '!' + id;
- }
- }
- }
- }
- if (__indexOf.call(JS_FORBIDDEN, id) >= 0) {
- if (forcedIdentifier) {
- tag = 'IDENTIFIER';
- id = new String(id);
- id.reserved = true;
- } else if (__indexOf.call(RESERVED, id) >= 0) {
- this.error("reserved word \"" + id + "\"");
- }
- }
- if (!forcedIdentifier) {
- if (__indexOf.call(COFFEE_ALIASES, id) >= 0) {
- id = COFFEE_ALIAS_MAP[id];
- }
- tag = (function() {
- switch (id) {
- case '!':
- return 'UNARY';
- case '==':
- case '!=':
- return 'COMPARE';
- case '&&':
- case '||':
- return 'LOGIC';
- case 'true':
- case 'false':
- return 'BOOL';
- case 'break':
- case 'continue':
- return 'STATEMENT';
- default:
- return tag;
- }
- })();
- }
- tagToken = this.token(tag, id, 0, idLength);
- if (poppedToken) {
- _ref4 = [poppedToken[2].first_line, poppedToken[2].first_column], tagToken[2].first_line = _ref4[0], tagToken[2].first_column = _ref4[1];
- }
- if (colon) {
- colonOffset = input.lastIndexOf(':');
- this.token(':', ':', colonOffset, colon.length);
- }
- return input.length;
- };
-
- Lexer.prototype.numberToken = function() {
- var binaryLiteral, lexedLength, match, number, octalLiteral;
- if (!(match = NUMBER.exec(this.chunk))) {
- return 0;
- }
- number = match[0];
- if (/^0[BOX]/.test(number)) {
- this.error("radix prefix '" + number + "' must be lowercase");
- } else if (/E/.test(number) && !/^0x/.test(number)) {
- this.error("exponential notation '" + number + "' must be indicated with a lowercase 'e'");
- } else if (/^0\d*[89]/.test(number)) {
- this.error("decimal literal '" + number + "' must not be prefixed with '0'");
- } else if (/^0\d+/.test(number)) {
- this.error("octal literal '" + number + "' must be prefixed with '0o'");
- }
- lexedLength = number.length;
- if (octalLiteral = /^0o([0-7]+)/.exec(number)) {
- number = '0x' + parseInt(octalLiteral[1], 8).toString(16);
- }
- if (binaryLiteral = /^0b([01]+)/.exec(number)) {
- number = '0x' + parseInt(binaryLiteral[1], 2).toString(16);
- }
- this.token('NUMBER', number, 0, lexedLength);
- return lexedLength;
- };
-
- Lexer.prototype.stringToken = function() {
- var inner, innerLen, numBreak, octalEsc, pos, quote, string, trimmed;
- switch (quote = this.chunk.charAt(0)) {
- case "'":
- string = (SIMPLESTR.exec(this.chunk) || [])[0];
- break;
- case '"':
- string = this.balancedString(this.chunk, '"');
- }
- if (!string) {
- return 0;
- }
- inner = string.slice(1, -1);
- trimmed = this.removeNewlines(inner);
- if (quote === '"' && 0 < string.indexOf('#{', 1)) {
- numBreak = pos = 0;
- innerLen = inner.length;
- while (inner.charAt(pos++) === '\n' && pos < innerLen) {
- numBreak++;
- }
- this.interpolateString(trimmed, {
- strOffset: 1 + numBreak,
- lexedLength: string.length
- });
- } else {
- this.token('STRING', quote + this.escapeLines(trimmed) + quote, 0, string.length);
- }
- if (octalEsc = /^(?:\\.|[^\\])*\\(?:0[0-7]|[1-7])/.test(string)) {
- this.error("octal escape sequences " + string + " are not allowed");
- }
- return string.length;
- };
-
- Lexer.prototype.heredocToken = function() {
- var doc, heredoc, match, quote, strOffset;
- if (!(match = HEREDOC.exec(this.chunk))) {
- return 0;
- }
- heredoc = match[0];
- quote = heredoc.charAt(0);
- doc = this.sanitizeHeredoc(match[2], {
- quote: quote,
- indent: null
- });
- if (quote === '"' && 0 <= doc.indexOf('#{')) {
- strOffset = match[2].charAt(0) === '\n' ? 4 : 3;
- this.interpolateString(doc, {
- heredoc: true,
- strOffset: strOffset,
- lexedLength: heredoc.length
- });
- } else {
- this.token('STRING', this.makeString(doc, quote, true), 0, heredoc.length);
- }
- return heredoc.length;
- };
-
- Lexer.prototype.commentToken = function() {
- var comment, here, match;
- if (!(match = this.chunk.match(COMMENT))) {
- return 0;
- }
- comment = match[0], here = match[1];
- if (here) {
- this.token('HERECOMMENT', this.sanitizeHeredoc(here, {
- herecomment: true,
- indent: repeat(' ', this.indent)
- }), 0, comment.length);
- }
- return comment.length;
- };
-
- Lexer.prototype.jsToken = function() {
- var match, script;
- if (!(this.chunk.charAt(0) === '`' && (match = JSTOKEN.exec(this.chunk)))) {
- return 0;
- }
- this.token('JS', (script = match[0]).slice(1, -1), 0, script.length);
- return script.length;
- };
-
- Lexer.prototype.regexToken = function() {
- var flags, length, match, prev, regex, _ref2, _ref3;
- if (this.chunk.charAt(0) !== '/') {
- return 0;
- }
- if (length = this.heregexToken()) {
- return length;
- }
- prev = last(this.tokens);
- if (prev && (_ref2 = prev[0], __indexOf.call((prev.spaced ? NOT_REGEX : NOT_SPACED_REGEX), _ref2) >= 0)) {
- return 0;
- }
- if (!(match = REGEX.exec(this.chunk))) {
- return 0;
- }
- _ref3 = match, match = _ref3[0], regex = _ref3[1], flags = _ref3[2];
- if (regex === '//') {
- return 0;
- }
- if (regex.slice(0, 2) === '/*') {
- this.error('regular expressions cannot begin with `*`');
- }
- this.token('REGEX', "" + regex + flags, 0, match.length);
- return match.length;
- };
-
- Lexer.prototype.heregexToken = function() {
- var body, flags, flagsOffset, heregex, match, plusToken, prev, re, tag, token, tokens, value, _i, _len, _ref2, _ref3, _ref4;
- if (!(match = HEREGEX.exec(this.chunk))) {
- return 0;
- }
- heregex = match[0], body = match[1], flags = match[2];
- if (0 > body.indexOf('#{')) {
- re = this.escapeLines(body.replace(HEREGEX_OMIT, '$1$2').replace(/\//g, '\\/'), true);
- if (re.match(/^\*/)) {
- this.error('regular expressions cannot begin with `*`');
- }
- this.token('REGEX', "/" + (re || '(?:)') + "/" + flags, 0, heregex.length);
- return heregex.length;
- }
- this.token('IDENTIFIER', 'RegExp', 0, 0);
- this.token('CALL_START', '(', 0, 0);
- tokens = [];
- _ref2 = this.interpolateString(body, {
- regex: true,
- strOffset: 3
- });
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- token = _ref2[_i];
- tag = token[0], value = token[1];
- if (tag === 'TOKENS') {
- tokens.push.apply(tokens, value);
- } else if (tag === 'NEOSTRING') {
- if (!(value = value.replace(HEREGEX_OMIT, '$1$2'))) {
- continue;
- }
- value = value.replace(/\\/g, '\\\\');
- token[0] = 'STRING';
- token[1] = this.makeString(value, '"', true);
- tokens.push(token);
- } else {
- this.error("Unexpected " + tag);
- }
- prev = last(this.tokens);
- plusToken = ['+', '+'];
- plusToken[2] = prev[2];
- tokens.push(plusToken);
- }
- tokens.pop();
- if (((_ref3 = tokens[0]) != null ? _ref3[0] : void 0) !== 'STRING') {
- this.token('STRING', '""', 0, 0);
- this.token('+', '+', 0, 0);
- }
- (_ref4 = this.tokens).push.apply(_ref4, tokens);
- if (flags) {
- flagsOffset = heregex.lastIndexOf(flags);
- this.token(',', ',', flagsOffset, 0);
- this.token('STRING', '"' + flags + '"', flagsOffset, flags.length);
- }
- this.token(')', ')', heregex.length - 1, 0);
- return heregex.length;
- };
-
- Lexer.prototype.lineToken = function() {
- var diff, indent, match, noNewlines, size;
- if (!(match = MULTI_DENT.exec(this.chunk))) {
- return 0;
- }
- indent = match[0];
- this.seenFor = false;
- size = indent.length - 1 - indent.lastIndexOf('\n');
- noNewlines = this.unfinished();
- if (size - this.indebt === this.indent) {
- if (noNewlines) {
- this.suppressNewlines();
- } else {
- this.newlineToken(0);
- }
- return indent.length;
- }
- if (size > this.indent) {
- if (noNewlines) {
- this.indebt = size - this.indent;
- this.suppressNewlines();
- return indent.length;
- }
- if (!this.tokens.length) {
- this.baseIndent = this.indent = size;
- return indent.length;
- }
- diff = size - this.indent + this.outdebt;
- this.token('INDENT', diff, indent.length - size, size);
- this.indents.push(diff);
- this.ends.push('OUTDENT');
- this.outdebt = this.indebt = 0;
- this.indent = size;
- } else if (size < this.baseIndent) {
- this.error('missing indentation', indent.length);
- } else {
- this.indebt = 0;
- this.outdentToken(this.indent - size, noNewlines, indent.length);
- }
- return indent.length;
- };
-
- Lexer.prototype.outdentToken = function(moveOut, noNewlines, outdentLength) {
- var decreasedIndent, dent, lastIndent, _ref2;
- decreasedIndent = this.indent - moveOut;
- while (moveOut > 0) {
- lastIndent = this.indents[this.indents.length - 1];
- if (!lastIndent) {
- moveOut = 0;
- } else if (lastIndent === this.outdebt) {
- moveOut -= this.outdebt;
- this.outdebt = 0;
- } else if (lastIndent < this.outdebt) {
- this.outdebt -= lastIndent;
- moveOut -= lastIndent;
- } else {
- dent = this.indents.pop() + this.outdebt;
- if (outdentLength && (_ref2 = this.chunk[outdentLength], __indexOf.call(INDENTABLE_CLOSERS, _ref2) >= 0)) {
- decreasedIndent -= dent - moveOut;
- moveOut = dent;
- }
- this.outdebt = 0;
- this.pair('OUTDENT');
- this.token('OUTDENT', moveOut, 0, outdentLength);
- moveOut -= dent;
- }
- }
- if (dent) {
- this.outdebt -= moveOut;
- }
- while (this.value() === ';') {
- this.tokens.pop();
- }
- if (!(this.tag() === 'TERMINATOR' || noNewlines)) {
- this.token('TERMINATOR', '\n', outdentLength, 0);
- }
- this.indent = decreasedIndent;
- return this;
- };
-
- Lexer.prototype.whitespaceToken = function() {
- var match, nline, prev;
- if (!((match = WHITESPACE.exec(this.chunk)) || (nline = this.chunk.charAt(0) === '\n'))) {
- return 0;
- }
- prev = last(this.tokens);
- if (prev) {
- prev[match ? 'spaced' : 'newLine'] = true;
- }
- if (match) {
- return match[0].length;
- } else {
- return 0;
- }
- };
-
- Lexer.prototype.newlineToken = function(offset) {
- while (this.value() === ';') {
- this.tokens.pop();
- }
- if (this.tag() !== 'TERMINATOR') {
- this.token('TERMINATOR', '\n', offset, 0);
- }
- return this;
- };
-
- Lexer.prototype.suppressNewlines = function() {
- if (this.value() === '\\') {
- this.tokens.pop();
- }
- return this;
- };
-
- Lexer.prototype.literalToken = function() {
- var match, prev, tag, value, _ref2, _ref3, _ref4, _ref5;
- if (match = OPERATOR.exec(this.chunk)) {
- value = match[0];
- if (CODE.test(value)) {
- this.tagParameters();
- }
- } else {
- value = this.chunk.charAt(0);
- }
- tag = value;
- prev = last(this.tokens);
- if (value === '=' && prev) {
- if (!prev[1].reserved && (_ref2 = prev[1], __indexOf.call(JS_FORBIDDEN, _ref2) >= 0)) {
- this.error("reserved word \"" + (this.value()) + "\" can't be assigned");
- }
- if ((_ref3 = prev[1]) === '||' || _ref3 === '&&') {
- prev[0] = 'COMPOUND_ASSIGN';
- prev[1] += '=';
- return value.length;
- }
- }
- if (value === ';') {
- this.seenFor = false;
- tag = 'TERMINATOR';
- } else if (__indexOf.call(MATH, value) >= 0) {
- tag = 'MATH';
- } else if (__indexOf.call(COMPARE, value) >= 0) {
- tag = 'COMPARE';
- } else if (__indexOf.call(COMPOUND_ASSIGN, value) >= 0) {
- tag = 'COMPOUND_ASSIGN';
- } else if (__indexOf.call(UNARY, value) >= 0) {
- tag = 'UNARY';
- } else if (__indexOf.call(UNARY_MATH, value) >= 0) {
- tag = 'UNARY_MATH';
- } else if (__indexOf.call(SHIFT, value) >= 0) {
- tag = 'SHIFT';
- } else if (__indexOf.call(LOGIC, value) >= 0 || value === '?' && (prev != null ? prev.spaced : void 0)) {
- tag = 'LOGIC';
- } else if (prev && !prev.spaced) {
- if (value === '(' && (_ref4 = prev[0], __indexOf.call(CALLABLE, _ref4) >= 0)) {
- if (prev[0] === '?') {
- prev[0] = 'FUNC_EXIST';
- }
- tag = 'CALL_START';
- } else if (value === '[' && (_ref5 = prev[0], __indexOf.call(INDEXABLE, _ref5) >= 0)) {
- tag = 'INDEX_START';
- switch (prev[0]) {
- case '?':
- prev[0] = 'INDEX_SOAK';
- }
- }
- }
- switch (value) {
- case '(':
- case '{':
- case '[':
- this.ends.push(INVERSES[value]);
- break;
- case ')':
- case '}':
- case ']':
- this.pair(value);
- }
- this.token(tag, value);
- return value.length;
- };
-
- Lexer.prototype.sanitizeHeredoc = function(doc, options) {
- var attempt, herecomment, indent, match, _ref2;
- indent = options.indent, herecomment = options.herecomment;
- if (herecomment) {
- if (HEREDOC_ILLEGAL.test(doc)) {
- this.error("block comment cannot contain \"*/\", starting");
- }
- if (doc.indexOf('\n') < 0) {
- return doc;
- }
- } else {
- while (match = HEREDOC_INDENT.exec(doc)) {
- attempt = match[1];
- if (indent === null || (0 < (_ref2 = attempt.length) && _ref2 < indent.length)) {
- indent = attempt;
- }
- }
- }
- if (indent) {
- doc = doc.replace(RegExp("\\n" + indent, "g"), '\n');
- }
- if (!herecomment) {
- doc = doc.replace(/^\n/, '');
- }
- return doc;
- };
-
- Lexer.prototype.tagParameters = function() {
- var i, stack, tok, tokens;
- if (this.tag() !== ')') {
- return this;
- }
- stack = [];
- tokens = this.tokens;
- i = tokens.length;
- tokens[--i][0] = 'PARAM_END';
- while (tok = tokens[--i]) {
- switch (tok[0]) {
- case ')':
- stack.push(tok);
- break;
- case '(':
- case 'CALL_START':
- if (stack.length) {
- stack.pop();
- } else if (tok[0] === '(') {
- tok[0] = 'PARAM_START';
- return this;
- } else {
- return this;
- }
- }
- }
- return this;
- };
-
- Lexer.prototype.closeIndentation = function() {
- return this.outdentToken(this.indent);
- };
-
- Lexer.prototype.balancedString = function(str, end) {
- var continueCount, i, letter, match, prev, stack, _i, _ref2;
- continueCount = 0;
- stack = [end];
- for (i = _i = 1, _ref2 = str.length; 1 <= _ref2 ? _i < _ref2 : _i > _ref2; i = 1 <= _ref2 ? ++_i : --_i) {
- if (continueCount) {
- --continueCount;
- continue;
- }
- switch (letter = str.charAt(i)) {
- case '\\':
- ++continueCount;
- continue;
- case end:
- stack.pop();
- if (!stack.length) {
- return str.slice(0, +i + 1 || 9e9);
- }
- end = stack[stack.length - 1];
- continue;
- }
- if (end === '}' && (letter === '"' || letter === "'")) {
- stack.push(end = letter);
- } else if (end === '}' && letter === '/' && (match = HEREGEX.exec(str.slice(i)) || REGEX.exec(str.slice(i)))) {
- continueCount += match[0].length - 1;
- } else if (end === '}' && letter === '{') {
- stack.push(end = '}');
- } else if (end === '"' && prev === '#' && letter === '{') {
- stack.push(end = '}');
- }
- prev = letter;
- }
- return this.error("missing " + (stack.pop()) + ", starting");
- };
-
- Lexer.prototype.interpolateString = function(str, options) {
- var column, errorToken, expr, heredoc, i, inner, interpolated, len, letter, lexedLength, line, locationToken, nested, offsetInChunk, pi, plusToken, popped, regex, rparen, strOffset, tag, token, tokens, value, _i, _len, _ref2, _ref3, _ref4;
- if (options == null) {
- options = {};
- }
- heredoc = options.heredoc, regex = options.regex, offsetInChunk = options.offsetInChunk, strOffset = options.strOffset, lexedLength = options.lexedLength;
- offsetInChunk || (offsetInChunk = 0);
- strOffset || (strOffset = 0);
- lexedLength || (lexedLength = str.length);
- tokens = [];
- pi = 0;
- i = -1;
- while (letter = str.charAt(i += 1)) {
- if (letter === '\\') {
- i += 1;
- continue;
- }
- if (!(letter === '#' && str.charAt(i + 1) === '{' && (expr = this.balancedString(str.slice(i + 1), '}')))) {
- continue;
- }
- if (pi < i) {
- tokens.push(this.makeToken('NEOSTRING', str.slice(pi, i), strOffset + pi));
- }
- if (!errorToken) {
- errorToken = this.makeToken('', 'string interpolation', offsetInChunk + i + 1, 2);
- }
- inner = expr.slice(1, -1);
- if (inner.length) {
- _ref2 = this.getLineAndColumnFromChunk(strOffset + i + 2), line = _ref2[0], column = _ref2[1];
- nested = new Lexer().tokenize(inner, {
- line: line,
- column: column,
- rewrite: false
- });
- popped = nested.pop();
- if (((_ref3 = nested[0]) != null ? _ref3[0] : void 0) === 'TERMINATOR') {
- popped = nested.shift();
- }
- if (len = nested.length) {
- if (len > 1) {
- nested.unshift(this.makeToken('(', '(', strOffset + i + 1, 0));
- nested.push(this.makeToken(')', ')', strOffset + i + 1 + inner.length, 0));
- }
- tokens.push(['TOKENS', nested]);
- }
- }
- i += expr.length;
- pi = i + 1;
- }
- if ((i > pi && pi < str.length)) {
- tokens.push(this.makeToken('NEOSTRING', str.slice(pi), strOffset + pi));
- }
- if (regex) {
- return tokens;
- }
- if (!tokens.length) {
- return this.token('STRING', '""', offsetInChunk, lexedLength);
- }
- if (tokens[0][0] !== 'NEOSTRING') {
- tokens.unshift(this.makeToken('NEOSTRING', '', offsetInChunk));
- }
- if (interpolated = tokens.length > 1) {
- this.token('(', '(', offsetInChunk, 0, errorToken);
- }
- for (i = _i = 0, _len = tokens.length; _i < _len; i = ++_i) {
- token = tokens[i];
- tag = token[0], value = token[1];
- if (i) {
- if (i) {
- plusToken = this.token('+', '+');
- }
- locationToken = tag === 'TOKENS' ? value[0] : token;
- plusToken[2] = {
- first_line: locationToken[2].first_line,
- first_column: locationToken[2].first_column,
- last_line: locationToken[2].first_line,
- last_column: locationToken[2].first_column
- };
- }
- if (tag === 'TOKENS') {
- (_ref4 = this.tokens).push.apply(_ref4, value);
- } else if (tag === 'NEOSTRING') {
- token[0] = 'STRING';
- token[1] = this.makeString(value, '"', heredoc);
- this.tokens.push(token);
- } else {
- this.error("Unexpected " + tag);
- }
- }
- if (interpolated) {
- rparen = this.makeToken(')', ')', offsetInChunk + lexedLength, 0);
- rparen.stringEnd = true;
- this.tokens.push(rparen);
- }
- return tokens;
- };
-
- Lexer.prototype.pair = function(tag) {
- var wanted;
- if (tag !== (wanted = last(this.ends))) {
- if ('OUTDENT' !== wanted) {
- this.error("unmatched " + tag);
- }
- this.outdentToken(last(this.indents), true);
- return this.pair(tag);
- }
- return this.ends.pop();
- };
-
- Lexer.prototype.getLineAndColumnFromChunk = function(offset) {
- var column, lineCount, lines, string;
- if (offset === 0) {
- return [this.chunkLine, this.chunkColumn];
- }
- if (offset >= this.chunk.length) {
- string = this.chunk;
- } else {
- string = this.chunk.slice(0, +(offset - 1) + 1 || 9e9);
- }
- lineCount = count(string, '\n');
- column = this.chunkColumn;
- if (lineCount > 0) {
- lines = string.split('\n');
- column = last(lines).length;
- } else {
- column += string.length;
- }
- return [this.chunkLine + lineCount, column];
- };
-
- Lexer.prototype.makeToken = function(tag, value, offsetInChunk, length) {
- var lastCharacter, locationData, token, _ref2, _ref3;
- if (offsetInChunk == null) {
- offsetInChunk = 0;
- }
- if (length == null) {
- length = value.length;
- }
- locationData = {};
- _ref2 = this.getLineAndColumnFromChunk(offsetInChunk), locationData.first_line = _ref2[0], locationData.first_column = _ref2[1];
- lastCharacter = Math.max(0, length - 1);
- _ref3 = this.getLineAndColumnFromChunk(offsetInChunk + lastCharacter), locationData.last_line = _ref3[0], locationData.last_column = _ref3[1];
- token = [tag, value, locationData];
- return token;
- };
-
- Lexer.prototype.token = function(tag, value, offsetInChunk, length, origin) {
- var token;
- token = this.makeToken(tag, value, offsetInChunk, length);
- if (origin) {
- token.origin = origin;
- }
- this.tokens.push(token);
- return token;
- };
-
- Lexer.prototype.tag = function(index, tag) {
- var tok;
- return (tok = last(this.tokens, index)) && (tag ? tok[0] = tag : tok[0]);
- };
-
- Lexer.prototype.value = function(index, val) {
- var tok;
- return (tok = last(this.tokens, index)) && (val ? tok[1] = val : tok[1]);
- };
-
- Lexer.prototype.unfinished = function() {
- var _ref2;
- return LINE_CONTINUER.test(this.chunk) || ((_ref2 = this.tag()) === '\\' || _ref2 === '.' || _ref2 === '?.' || _ref2 === '?::' || _ref2 === 'UNARY' || _ref2 === 'MATH' || _ref2 === 'UNARY_MATH' || _ref2 === '+' || _ref2 === '-' || _ref2 === '**' || _ref2 === 'SHIFT' || _ref2 === 'RELATION' || _ref2 === 'COMPARE' || _ref2 === 'LOGIC' || _ref2 === 'THROW' || _ref2 === 'EXTENDS');
- };
-
- Lexer.prototype.removeNewlines = function(str) {
- return str.replace(/^\s*\n\s*/, '').replace(/([^\\]|\\\\)\s*\n\s*$/, '$1');
- };
-
- Lexer.prototype.escapeLines = function(str, heredoc) {
- str = str.replace(/\\[^\S\n]*(\n|\\)\s*/g, function(escaped, character) {
- if (character === '\n') {
- return '';
- } else {
- return escaped;
- }
- });
- if (heredoc) {
- return str.replace(MULTILINER, '\\n');
- } else {
- return str.replace(/\s*\n\s*/g, ' ');
- }
- };
-
- Lexer.prototype.makeString = function(body, quote, heredoc) {
- if (!body) {
- return quote + quote;
- }
- body = body.replace(RegExp("\\\\(" + quote + "|\\\\)", "g"), function(match, contents) {
- if (contents === quote) {
- return contents;
- } else {
- return match;
- }
- });
- body = body.replace(RegExp("" + quote, "g"), '\\$&');
- return quote + this.escapeLines(body, heredoc) + quote;
- };
-
- Lexer.prototype.error = function(message, offset) {
- var first_column, first_line, _ref2;
- if (offset == null) {
- offset = 0;
- }
- _ref2 = this.getLineAndColumnFromChunk(offset), first_line = _ref2[0], first_column = _ref2[1];
- return throwSyntaxError(message, {
- first_line: first_line,
- first_column: first_column
- });
- };
-
- return Lexer;
-
- })();
-
- JS_KEYWORDS = ['true', 'false', 'null', 'this', 'new', 'delete', 'typeof', 'in', 'instanceof', 'return', 'throw', 'break', 'continue', 'debugger', 'if', 'else', 'switch', 'for', 'while', 'do', 'try', 'catch', 'finally', 'class', 'extends', 'super'];
-
- COFFEE_KEYWORDS = ['undefined', 'then', 'unless', 'until', 'loop', 'of', 'by', 'when'];
-
- COFFEE_ALIAS_MAP = {
- and: '&&',
- or: '||',
- is: '==',
- isnt: '!=',
- not: '!',
- yes: 'true',
- no: 'false',
- on: 'true',
- off: 'false'
- };
-
- COFFEE_ALIASES = (function() {
- var _results;
- _results = [];
- for (key in COFFEE_ALIAS_MAP) {
- _results.push(key);
- }
- return _results;
- })();
-
- COFFEE_KEYWORDS = COFFEE_KEYWORDS.concat(COFFEE_ALIASES);
-
- RESERVED = ['case', 'default', 'function', 'var', 'void', 'with', 'const', 'let', 'enum', 'export', 'import', 'native', '__hasProp', '__extends', '__slice', '__bind', '__indexOf', 'implements', 'interface', 'package', 'private', 'protected', 'public', 'static', 'yield'];
-
- STRICT_PROSCRIBED = ['arguments', 'eval'];
-
- JS_FORBIDDEN = JS_KEYWORDS.concat(RESERVED).concat(STRICT_PROSCRIBED);
-
- exports.RESERVED = RESERVED.concat(JS_KEYWORDS).concat(COFFEE_KEYWORDS).concat(STRICT_PROSCRIBED);
-
- exports.STRICT_PROSCRIBED = STRICT_PROSCRIBED;
-
- BOM = 65279;
-
- IDENTIFIER = /^([$A-Za-z_\x7f-\uffff][$\w\x7f-\uffff]*)([^\n\S]*:(?!:))?/;
-
- NUMBER = /^0b[01]+|^0o[0-7]+|^0x[\da-f]+|^\d*\.?\d+(?:e[+-]?\d+)?/i;
-
- HEREDOC = /^("""|''')((?:\\[\s\S]|[^\\])*?)(?:\n[^\n\S]*)?\1/;
-
- OPERATOR = /^(?:[-=]>|[-+*\/%<>&|^!?=]=|>>>=?|([-+:])\1|([&|<>*\/%])\2=?|\?(\.|::)|\.{2,3})/;
-
- WHITESPACE = /^[^\n\S]+/;
-
- COMMENT = /^###([^#][\s\S]*?)(?:###[^\n\S]*|###$)|^(?:\s*#(?!##[^#]).*)+/;
-
- CODE = /^[-=]>/;
-
- MULTI_DENT = /^(?:\n[^\n\S]*)+/;
-
- SIMPLESTR = /^'[^\\']*(?:\\[\s\S][^\\']*)*'/;
-
- JSTOKEN = /^`[^\\`]*(?:\\.[^\\`]*)*`/;
-
- REGEX = /^(\/(?![\s=])[^[\/\n\\]*(?:(?:\\[\s\S]|\[[^\]\n\\]*(?:\\[\s\S][^\]\n\\]*)*])[^[\/\n\\]*)*\/)([imgy]{0,4})(?!\w)/;
-
- HEREGEX = /^\/{3}((?:\\?[\s\S])+?)\/{3}([imgy]{0,4})(?!\w)/;
-
- HEREGEX_OMIT = /((?:\\\\)+)|\\(\s|\/)|\s+(?:#.*)?/g;
-
- MULTILINER = /\n/g;
-
- HEREDOC_INDENT = /\n+([^\n\S]*)/g;
-
- HEREDOC_ILLEGAL = /\*\//;
-
- LINE_CONTINUER = /^\s*(?:,|\??\.(?![.\d])|::)/;
-
- TRAILING_SPACES = /\s+$/;
-
- COMPOUND_ASSIGN = ['-=', '+=', '/=', '*=', '%=', '||=', '&&=', '?=', '<<=', '>>=', '>>>=', '&=', '^=', '|=', '**=', '//=', '%%='];
-
- UNARY = ['NEW', 'TYPEOF', 'DELETE', 'DO'];
-
- UNARY_MATH = ['!', '~'];
-
- LOGIC = ['&&', '||', '&', '|', '^'];
-
- SHIFT = ['<<', '>>', '>>>'];
-
- COMPARE = ['==', '!=', '<', '>', '<=', '>='];
-
- MATH = ['*', '/', '%', '//', '%%'];
-
- RELATION = ['IN', 'OF', 'INSTANCEOF'];
-
- BOOL = ['TRUE', 'FALSE'];
-
- NOT_REGEX = ['NUMBER', 'REGEX', 'BOOL', 'NULL', 'UNDEFINED', '++', '--'];
-
- NOT_SPACED_REGEX = NOT_REGEX.concat(')', '}', 'THIS', 'IDENTIFIER', 'STRING', ']');
-
- CALLABLE = ['IDENTIFIER', 'STRING', 'REGEX', ')', ']', '}', '?', '::', '@', 'THIS', 'SUPER'];
-
- INDEXABLE = CALLABLE.concat('NUMBER', 'BOOL', 'NULL', 'UNDEFINED');
-
- LINE_BREAK = ['INDENT', 'OUTDENT', 'TERMINATOR'];
-
- INDENTABLE_CLOSERS = [')', '}', ']'];
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/nodes.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/nodes.js
deleted file mode 100644
index 52c99a9..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/nodes.js
+++ /dev/null
@@ -1,3156 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var Access, Arr, Assign, Base, Block, Call, Class, Code, CodeFragment, Comment, Existence, Expansion, Extends, For, HEXNUM, IDENTIFIER, IDENTIFIER_STR, IS_REGEX, IS_STRING, If, In, Index, LEVEL_ACCESS, LEVEL_COND, LEVEL_LIST, LEVEL_OP, LEVEL_PAREN, LEVEL_TOP, Literal, METHOD_DEF, NEGATE, NO, NUMBER, Obj, Op, Param, Parens, RESERVED, Range, Return, SIMPLENUM, STRICT_PROSCRIBED, Scope, Slice, Splat, Switch, TAB, THIS, Throw, Try, UTILITIES, Value, While, YES, addLocationDataFn, compact, del, ends, extend, flatten, fragmentsToText, isLiteralArguments, isLiteralThis, last, locationDataToString, merge, multident, parseNum, some, starts, throwSyntaxError, unfoldSoak, utility, _ref, _ref1,
- __hasProp = {}.hasOwnProperty,
- __extends = function(child, parent) { for (var key in parent) { if (__hasProp.call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; },
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; },
- __slice = [].slice;
-
- Error.stackTraceLimit = Infinity;
-
- Scope = require('./scope').Scope;
-
- _ref = require('./lexer'), RESERVED = _ref.RESERVED, STRICT_PROSCRIBED = _ref.STRICT_PROSCRIBED;
-
- _ref1 = require('./helpers'), compact = _ref1.compact, flatten = _ref1.flatten, extend = _ref1.extend, merge = _ref1.merge, del = _ref1.del, starts = _ref1.starts, ends = _ref1.ends, last = _ref1.last, some = _ref1.some, addLocationDataFn = _ref1.addLocationDataFn, locationDataToString = _ref1.locationDataToString, throwSyntaxError = _ref1.throwSyntaxError;
-
- exports.extend = extend;
-
- exports.addLocationDataFn = addLocationDataFn;
-
- YES = function() {
- return true;
- };
-
- NO = function() {
- return false;
- };
-
- THIS = function() {
- return this;
- };
-
- NEGATE = function() {
- this.negated = !this.negated;
- return this;
- };
-
- exports.CodeFragment = CodeFragment = (function() {
- function CodeFragment(parent, code) {
- var _ref2;
- this.code = "" + code;
- this.locationData = parent != null ? parent.locationData : void 0;
- this.type = (parent != null ? (_ref2 = parent.constructor) != null ? _ref2.name : void 0 : void 0) || 'unknown';
- }
-
- CodeFragment.prototype.toString = function() {
- return "" + this.code + (this.locationData ? ": " + locationDataToString(this.locationData) : '');
- };
-
- return CodeFragment;
-
- })();
-
- fragmentsToText = function(fragments) {
- var fragment;
- return ((function() {
- var _i, _len, _results;
- _results = [];
- for (_i = 0, _len = fragments.length; _i < _len; _i++) {
- fragment = fragments[_i];
- _results.push(fragment.code);
- }
- return _results;
- })()).join('');
- };
-
- exports.Base = Base = (function() {
- function Base() {}
-
- Base.prototype.compile = function(o, lvl) {
- return fragmentsToText(this.compileToFragments(o, lvl));
- };
-
- Base.prototype.compileToFragments = function(o, lvl) {
- var node;
- o = extend({}, o);
- if (lvl) {
- o.level = lvl;
- }
- node = this.unfoldSoak(o) || this;
- node.tab = o.indent;
- if (o.level === LEVEL_TOP || !node.isStatement(o)) {
- return node.compileNode(o);
- } else {
- return node.compileClosure(o);
- }
- };
-
- Base.prototype.compileClosure = function(o) {
- var args, argumentsNode, func, jumpNode, meth;
- if (jumpNode = this.jumps()) {
- jumpNode.error('cannot use a pure statement in an expression');
- }
- o.sharedScope = true;
- func = new Code([], Block.wrap([this]));
- args = [];
- if ((argumentsNode = this.contains(isLiteralArguments)) || this.contains(isLiteralThis)) {
- args = [new Literal('this')];
- if (argumentsNode) {
- meth = 'apply';
- args.push(new Literal('arguments'));
- } else {
- meth = 'call';
- }
- func = new Value(func, [new Access(new Literal(meth))]);
- }
- return (new Call(func, args)).compileNode(o);
- };
-
- Base.prototype.cache = function(o, level, reused) {
- var ref, sub;
- if (!this.isComplex()) {
- ref = level ? this.compileToFragments(o, level) : this;
- return [ref, ref];
- } else {
- ref = new Literal(reused || o.scope.freeVariable('ref'));
- sub = new Assign(ref, this);
- if (level) {
- return [sub.compileToFragments(o, level), [this.makeCode(ref.value)]];
- } else {
- return [sub, ref];
- }
- }
- };
-
- Base.prototype.cacheToCodeFragments = function(cacheValues) {
- return [fragmentsToText(cacheValues[0]), fragmentsToText(cacheValues[1])];
- };
-
- Base.prototype.makeReturn = function(res) {
- var me;
- me = this.unwrapAll();
- if (res) {
- return new Call(new Literal("" + res + ".push"), [me]);
- } else {
- return new Return(me);
- }
- };
-
- Base.prototype.contains = function(pred) {
- var node;
- node = void 0;
- this.traverseChildren(false, function(n) {
- if (pred(n)) {
- node = n;
- return false;
- }
- });
- return node;
- };
-
- Base.prototype.lastNonComment = function(list) {
- var i;
- i = list.length;
- while (i--) {
- if (!(list[i] instanceof Comment)) {
- return list[i];
- }
- }
- return null;
- };
-
- Base.prototype.toString = function(idt, name) {
- var tree;
- if (idt == null) {
- idt = '';
- }
- if (name == null) {
- name = this.constructor.name;
- }
- tree = '\n' + idt + name;
- if (this.soak) {
- tree += '?';
- }
- this.eachChild(function(node) {
- return tree += node.toString(idt + TAB);
- });
- return tree;
- };
-
- Base.prototype.eachChild = function(func) {
- var attr, child, _i, _j, _len, _len1, _ref2, _ref3;
- if (!this.children) {
- return this;
- }
- _ref2 = this.children;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- attr = _ref2[_i];
- if (this[attr]) {
- _ref3 = flatten([this[attr]]);
- for (_j = 0, _len1 = _ref3.length; _j < _len1; _j++) {
- child = _ref3[_j];
- if (func(child) === false) {
- return this;
- }
- }
- }
- }
- return this;
- };
-
- Base.prototype.traverseChildren = function(crossScope, func) {
- return this.eachChild(function(child) {
- var recur;
- recur = func(child);
- if (recur !== false) {
- return child.traverseChildren(crossScope, func);
- }
- });
- };
-
- Base.prototype.invert = function() {
- return new Op('!', this);
- };
-
- Base.prototype.unwrapAll = function() {
- var node;
- node = this;
- while (node !== (node = node.unwrap())) {
- continue;
- }
- return node;
- };
-
- Base.prototype.children = [];
-
- Base.prototype.isStatement = NO;
-
- Base.prototype.jumps = NO;
-
- Base.prototype.isComplex = YES;
-
- Base.prototype.isChainable = NO;
-
- Base.prototype.isAssignable = NO;
-
- Base.prototype.unwrap = THIS;
-
- Base.prototype.unfoldSoak = NO;
-
- Base.prototype.assigns = NO;
-
- Base.prototype.updateLocationDataIfMissing = function(locationData) {
- if (this.locationData) {
- return this;
- }
- this.locationData = locationData;
- return this.eachChild(function(child) {
- return child.updateLocationDataIfMissing(locationData);
- });
- };
-
- Base.prototype.error = function(message) {
- return throwSyntaxError(message, this.locationData);
- };
-
- Base.prototype.makeCode = function(code) {
- return new CodeFragment(this, code);
- };
-
- Base.prototype.wrapInBraces = function(fragments) {
- return [].concat(this.makeCode('('), fragments, this.makeCode(')'));
- };
-
- Base.prototype.joinFragmentArrays = function(fragmentsList, joinStr) {
- var answer, fragments, i, _i, _len;
- answer = [];
- for (i = _i = 0, _len = fragmentsList.length; _i < _len; i = ++_i) {
- fragments = fragmentsList[i];
- if (i) {
- answer.push(this.makeCode(joinStr));
- }
- answer = answer.concat(fragments);
- }
- return answer;
- };
-
- return Base;
-
- })();
-
- exports.Block = Block = (function(_super) {
- __extends(Block, _super);
-
- function Block(nodes) {
- this.expressions = compact(flatten(nodes || []));
- }
-
- Block.prototype.children = ['expressions'];
-
- Block.prototype.push = function(node) {
- this.expressions.push(node);
- return this;
- };
-
- Block.prototype.pop = function() {
- return this.expressions.pop();
- };
-
- Block.prototype.unshift = function(node) {
- this.expressions.unshift(node);
- return this;
- };
-
- Block.prototype.unwrap = function() {
- if (this.expressions.length === 1) {
- return this.expressions[0];
- } else {
- return this;
- }
- };
-
- Block.prototype.isEmpty = function() {
- return !this.expressions.length;
- };
-
- Block.prototype.isStatement = function(o) {
- var exp, _i, _len, _ref2;
- _ref2 = this.expressions;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- exp = _ref2[_i];
- if (exp.isStatement(o)) {
- return true;
- }
- }
- return false;
- };
-
- Block.prototype.jumps = function(o) {
- var exp, jumpNode, _i, _len, _ref2;
- _ref2 = this.expressions;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- exp = _ref2[_i];
- if (jumpNode = exp.jumps(o)) {
- return jumpNode;
- }
- }
- };
-
- Block.prototype.makeReturn = function(res) {
- var expr, len;
- len = this.expressions.length;
- while (len--) {
- expr = this.expressions[len];
- if (!(expr instanceof Comment)) {
- this.expressions[len] = expr.makeReturn(res);
- if (expr instanceof Return && !expr.expression) {
- this.expressions.splice(len, 1);
- }
- break;
- }
- }
- return this;
- };
-
- Block.prototype.compileToFragments = function(o, level) {
- if (o == null) {
- o = {};
- }
- if (o.scope) {
- return Block.__super__.compileToFragments.call(this, o, level);
- } else {
- return this.compileRoot(o);
- }
- };
-
- Block.prototype.compileNode = function(o) {
- var answer, compiledNodes, fragments, index, node, top, _i, _len, _ref2;
- this.tab = o.indent;
- top = o.level === LEVEL_TOP;
- compiledNodes = [];
- _ref2 = this.expressions;
- for (index = _i = 0, _len = _ref2.length; _i < _len; index = ++_i) {
- node = _ref2[index];
- node = node.unwrapAll();
- node = node.unfoldSoak(o) || node;
- if (node instanceof Block) {
- compiledNodes.push(node.compileNode(o));
- } else if (top) {
- node.front = true;
- fragments = node.compileToFragments(o);
- if (!node.isStatement(o)) {
- fragments.unshift(this.makeCode("" + this.tab));
- fragments.push(this.makeCode(";"));
- }
- compiledNodes.push(fragments);
- } else {
- compiledNodes.push(node.compileToFragments(o, LEVEL_LIST));
- }
- }
- if (top) {
- if (this.spaced) {
- return [].concat(this.joinFragmentArrays(compiledNodes, '\n\n'), this.makeCode("\n"));
- } else {
- return this.joinFragmentArrays(compiledNodes, '\n');
- }
- }
- if (compiledNodes.length) {
- answer = this.joinFragmentArrays(compiledNodes, ', ');
- } else {
- answer = [this.makeCode("void 0")];
- }
- if (compiledNodes.length > 1 && o.level >= LEVEL_LIST) {
- return this.wrapInBraces(answer);
- } else {
- return answer;
- }
- };
-
- Block.prototype.compileRoot = function(o) {
- var exp, fragments, i, name, prelude, preludeExps, rest, _i, _len, _ref2;
- o.indent = o.bare ? '' : TAB;
- o.level = LEVEL_TOP;
- this.spaced = true;
- o.scope = new Scope(null, this, null);
- _ref2 = o.locals || [];
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- name = _ref2[_i];
- o.scope.parameter(name);
- }
- prelude = [];
- if (!o.bare) {
- preludeExps = (function() {
- var _j, _len1, _ref3, _results;
- _ref3 = this.expressions;
- _results = [];
- for (i = _j = 0, _len1 = _ref3.length; _j < _len1; i = ++_j) {
- exp = _ref3[i];
- if (!(exp.unwrap() instanceof Comment)) {
- break;
- }
- _results.push(exp);
- }
- return _results;
- }).call(this);
- rest = this.expressions.slice(preludeExps.length);
- this.expressions = preludeExps;
- if (preludeExps.length) {
- prelude = this.compileNode(merge(o, {
- indent: ''
- }));
- prelude.push(this.makeCode("\n"));
- }
- this.expressions = rest;
- }
- fragments = this.compileWithDeclarations(o);
- if (o.bare) {
- return fragments;
- }
- return [].concat(prelude, this.makeCode("(function() {\n"), fragments, this.makeCode("\n}).call(this);\n"));
- };
-
- Block.prototype.compileWithDeclarations = function(o) {
- var assigns, declars, exp, fragments, i, post, rest, scope, spaced, _i, _len, _ref2, _ref3, _ref4;
- fragments = [];
- post = [];
- _ref2 = this.expressions;
- for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) {
- exp = _ref2[i];
- exp = exp.unwrap();
- if (!(exp instanceof Comment || exp instanceof Literal)) {
- break;
- }
- }
- o = merge(o, {
- level: LEVEL_TOP
- });
- if (i) {
- rest = this.expressions.splice(i, 9e9);
- _ref3 = [this.spaced, false], spaced = _ref3[0], this.spaced = _ref3[1];
- _ref4 = [this.compileNode(o), spaced], fragments = _ref4[0], this.spaced = _ref4[1];
- this.expressions = rest;
- }
- post = this.compileNode(o);
- scope = o.scope;
- if (scope.expressions === this) {
- declars = o.scope.hasDeclarations();
- assigns = scope.hasAssignments;
- if (declars || assigns) {
- if (i) {
- fragments.push(this.makeCode('\n'));
- }
- fragments.push(this.makeCode("" + this.tab + "var "));
- if (declars) {
- fragments.push(this.makeCode(scope.declaredVariables().join(', ')));
- }
- if (assigns) {
- if (declars) {
- fragments.push(this.makeCode(",\n" + (this.tab + TAB)));
- }
- fragments.push(this.makeCode(scope.assignedVariables().join(",\n" + (this.tab + TAB))));
- }
- fragments.push(this.makeCode(";\n" + (this.spaced ? '\n' : '')));
- } else if (fragments.length && post.length) {
- fragments.push(this.makeCode("\n"));
- }
- }
- return fragments.concat(post);
- };
-
- Block.wrap = function(nodes) {
- if (nodes.length === 1 && nodes[0] instanceof Block) {
- return nodes[0];
- }
- return new Block(nodes);
- };
-
- return Block;
-
- })(Base);
-
- exports.Literal = Literal = (function(_super) {
- __extends(Literal, _super);
-
- function Literal(value) {
- this.value = value;
- }
-
- Literal.prototype.makeReturn = function() {
- if (this.isStatement()) {
- return this;
- } else {
- return Literal.__super__.makeReturn.apply(this, arguments);
- }
- };
-
- Literal.prototype.isAssignable = function() {
- return IDENTIFIER.test(this.value);
- };
-
- Literal.prototype.isStatement = function() {
- var _ref2;
- return (_ref2 = this.value) === 'break' || _ref2 === 'continue' || _ref2 === 'debugger';
- };
-
- Literal.prototype.isComplex = NO;
-
- Literal.prototype.assigns = function(name) {
- return name === this.value;
- };
-
- Literal.prototype.jumps = function(o) {
- if (this.value === 'break' && !((o != null ? o.loop : void 0) || (o != null ? o.block : void 0))) {
- return this;
- }
- if (this.value === 'continue' && !(o != null ? o.loop : void 0)) {
- return this;
- }
- };
-
- Literal.prototype.compileNode = function(o) {
- var answer, code, _ref2;
- code = this.value === 'this' ? ((_ref2 = o.scope.method) != null ? _ref2.bound : void 0) ? o.scope.method.context : this.value : this.value.reserved ? "\"" + this.value + "\"" : this.value;
- answer = this.isStatement() ? "" + this.tab + code + ";" : code;
- return [this.makeCode(answer)];
- };
-
- Literal.prototype.toString = function() {
- return ' "' + this.value + '"';
- };
-
- return Literal;
-
- })(Base);
-
- exports.Undefined = (function(_super) {
- __extends(Undefined, _super);
-
- function Undefined() {
- return Undefined.__super__.constructor.apply(this, arguments);
- }
-
- Undefined.prototype.isAssignable = NO;
-
- Undefined.prototype.isComplex = NO;
-
- Undefined.prototype.compileNode = function(o) {
- return [this.makeCode(o.level >= LEVEL_ACCESS ? '(void 0)' : 'void 0')];
- };
-
- return Undefined;
-
- })(Base);
-
- exports.Null = (function(_super) {
- __extends(Null, _super);
-
- function Null() {
- return Null.__super__.constructor.apply(this, arguments);
- }
-
- Null.prototype.isAssignable = NO;
-
- Null.prototype.isComplex = NO;
-
- Null.prototype.compileNode = function() {
- return [this.makeCode("null")];
- };
-
- return Null;
-
- })(Base);
-
- exports.Bool = (function(_super) {
- __extends(Bool, _super);
-
- Bool.prototype.isAssignable = NO;
-
- Bool.prototype.isComplex = NO;
-
- Bool.prototype.compileNode = function() {
- return [this.makeCode(this.val)];
- };
-
- function Bool(val) {
- this.val = val;
- }
-
- return Bool;
-
- })(Base);
-
- exports.Return = Return = (function(_super) {
- __extends(Return, _super);
-
- function Return(expression) {
- this.expression = expression;
- }
-
- Return.prototype.children = ['expression'];
-
- Return.prototype.isStatement = YES;
-
- Return.prototype.makeReturn = THIS;
-
- Return.prototype.jumps = THIS;
-
- Return.prototype.compileToFragments = function(o, level) {
- var expr, _ref2;
- expr = (_ref2 = this.expression) != null ? _ref2.makeReturn() : void 0;
- if (expr && !(expr instanceof Return)) {
- return expr.compileToFragments(o, level);
- } else {
- return Return.__super__.compileToFragments.call(this, o, level);
- }
- };
-
- Return.prototype.compileNode = function(o) {
- var answer;
- answer = [];
- answer.push(this.makeCode(this.tab + ("return" + (this.expression ? " " : ""))));
- if (this.expression) {
- answer = answer.concat(this.expression.compileToFragments(o, LEVEL_PAREN));
- }
- answer.push(this.makeCode(";"));
- return answer;
- };
-
- return Return;
-
- })(Base);
-
- exports.Value = Value = (function(_super) {
- __extends(Value, _super);
-
- function Value(base, props, tag) {
- if (!props && base instanceof Value) {
- return base;
- }
- this.base = base;
- this.properties = props || [];
- if (tag) {
- this[tag] = true;
- }
- return this;
- }
-
- Value.prototype.children = ['base', 'properties'];
-
- Value.prototype.add = function(props) {
- this.properties = this.properties.concat(props);
- return this;
- };
-
- Value.prototype.hasProperties = function() {
- return !!this.properties.length;
- };
-
- Value.prototype.bareLiteral = function(type) {
- return !this.properties.length && this.base instanceof type;
- };
-
- Value.prototype.isArray = function() {
- return this.bareLiteral(Arr);
- };
-
- Value.prototype.isRange = function() {
- return this.bareLiteral(Range);
- };
-
- Value.prototype.isComplex = function() {
- return this.hasProperties() || this.base.isComplex();
- };
-
- Value.prototype.isAssignable = function() {
- return this.hasProperties() || this.base.isAssignable();
- };
-
- Value.prototype.isSimpleNumber = function() {
- return this.bareLiteral(Literal) && SIMPLENUM.test(this.base.value);
- };
-
- Value.prototype.isString = function() {
- return this.bareLiteral(Literal) && IS_STRING.test(this.base.value);
- };
-
- Value.prototype.isRegex = function() {
- return this.bareLiteral(Literal) && IS_REGEX.test(this.base.value);
- };
-
- Value.prototype.isAtomic = function() {
- var node, _i, _len, _ref2;
- _ref2 = this.properties.concat(this.base);
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- node = _ref2[_i];
- if (node.soak || node instanceof Call) {
- return false;
- }
- }
- return true;
- };
-
- Value.prototype.isNotCallable = function() {
- return this.isSimpleNumber() || this.isString() || this.isRegex() || this.isArray() || this.isRange() || this.isSplice() || this.isObject();
- };
-
- Value.prototype.isStatement = function(o) {
- return !this.properties.length && this.base.isStatement(o);
- };
-
- Value.prototype.assigns = function(name) {
- return !this.properties.length && this.base.assigns(name);
- };
-
- Value.prototype.jumps = function(o) {
- return !this.properties.length && this.base.jumps(o);
- };
-
- Value.prototype.isObject = function(onlyGenerated) {
- if (this.properties.length) {
- return false;
- }
- return (this.base instanceof Obj) && (!onlyGenerated || this.base.generated);
- };
-
- Value.prototype.isSplice = function() {
- return last(this.properties) instanceof Slice;
- };
-
- Value.prototype.looksStatic = function(className) {
- var _ref2;
- return this.base.value === className && this.properties.length && ((_ref2 = this.properties[0].name) != null ? _ref2.value : void 0) !== 'prototype';
- };
-
- Value.prototype.unwrap = function() {
- if (this.properties.length) {
- return this;
- } else {
- return this.base;
- }
- };
-
- Value.prototype.cacheReference = function(o) {
- var base, bref, name, nref;
- name = last(this.properties);
- if (this.properties.length < 2 && !this.base.isComplex() && !(name != null ? name.isComplex() : void 0)) {
- return [this, this];
- }
- base = new Value(this.base, this.properties.slice(0, -1));
- if (base.isComplex()) {
- bref = new Literal(o.scope.freeVariable('base'));
- base = new Value(new Parens(new Assign(bref, base)));
- }
- if (!name) {
- return [base, bref];
- }
- if (name.isComplex()) {
- nref = new Literal(o.scope.freeVariable('name'));
- name = new Index(new Assign(nref, name.index));
- nref = new Index(nref);
- }
- return [base.add(name), new Value(bref || base.base, [nref || name])];
- };
-
- Value.prototype.compileNode = function(o) {
- var fragments, prop, props, _i, _len;
- this.base.front = this.front;
- props = this.properties;
- fragments = this.base.compileToFragments(o, (props.length ? LEVEL_ACCESS : null));
- if ((this.base instanceof Parens || props.length) && SIMPLENUM.test(fragmentsToText(fragments))) {
- fragments.push(this.makeCode('.'));
- }
- for (_i = 0, _len = props.length; _i < _len; _i++) {
- prop = props[_i];
- fragments.push.apply(fragments, prop.compileToFragments(o));
- }
- return fragments;
- };
-
- Value.prototype.unfoldSoak = function(o) {
- return this.unfoldedSoak != null ? this.unfoldedSoak : this.unfoldedSoak = (function(_this) {
- return function() {
- var fst, i, ifn, prop, ref, snd, _i, _len, _ref2, _ref3;
- if (ifn = _this.base.unfoldSoak(o)) {
- (_ref2 = ifn.body.properties).push.apply(_ref2, _this.properties);
- return ifn;
- }
- _ref3 = _this.properties;
- for (i = _i = 0, _len = _ref3.length; _i < _len; i = ++_i) {
- prop = _ref3[i];
- if (!prop.soak) {
- continue;
- }
- prop.soak = false;
- fst = new Value(_this.base, _this.properties.slice(0, i));
- snd = new Value(_this.base, _this.properties.slice(i));
- if (fst.isComplex()) {
- ref = new Literal(o.scope.freeVariable('ref'));
- fst = new Parens(new Assign(ref, fst));
- snd.base = ref;
- }
- return new If(new Existence(fst), snd, {
- soak: true
- });
- }
- return false;
- };
- })(this)();
- };
-
- return Value;
-
- })(Base);
-
- exports.Comment = Comment = (function(_super) {
- __extends(Comment, _super);
-
- function Comment(comment) {
- this.comment = comment;
- }
-
- Comment.prototype.isStatement = YES;
-
- Comment.prototype.makeReturn = THIS;
-
- Comment.prototype.compileNode = function(o, level) {
- var code, comment;
- comment = this.comment.replace(/^(\s*)#/gm, "$1 *");
- code = "/*" + (multident(comment, this.tab)) + (__indexOf.call(comment, '\n') >= 0 ? "\n" + this.tab : '') + " */";
- if ((level || o.level) === LEVEL_TOP) {
- code = o.indent + code;
- }
- return [this.makeCode("\n"), this.makeCode(code)];
- };
-
- return Comment;
-
- })(Base);
-
- exports.Call = Call = (function(_super) {
- __extends(Call, _super);
-
- function Call(variable, args, soak) {
- this.args = args != null ? args : [];
- this.soak = soak;
- this.isNew = false;
- this.isSuper = variable === 'super';
- this.variable = this.isSuper ? null : variable;
- if (variable instanceof Value && variable.isNotCallable()) {
- variable.error("literal is not a function");
- }
- }
-
- Call.prototype.children = ['variable', 'args'];
-
- Call.prototype.newInstance = function() {
- var base, _ref2;
- base = ((_ref2 = this.variable) != null ? _ref2.base : void 0) || this.variable;
- if (base instanceof Call && !base.isNew) {
- base.newInstance();
- } else {
- this.isNew = true;
- }
- return this;
- };
-
- Call.prototype.superReference = function(o) {
- var accesses, method;
- method = o.scope.namedMethod();
- if (method != null ? method.klass : void 0) {
- accesses = [new Access(new Literal('__super__'))];
- if (method["static"]) {
- accesses.push(new Access(new Literal('constructor')));
- }
- accesses.push(new Access(new Literal(method.name)));
- return (new Value(new Literal(method.klass), accesses)).compile(o);
- } else if (method != null ? method.ctor : void 0) {
- return "" + method.name + ".__super__.constructor";
- } else {
- return this.error('cannot call super outside of an instance method.');
- }
- };
-
- Call.prototype.superThis = function(o) {
- var method;
- method = o.scope.method;
- return (method && !method.klass && method.context) || "this";
- };
-
- Call.prototype.unfoldSoak = function(o) {
- var call, ifn, left, list, rite, _i, _len, _ref2, _ref3;
- if (this.soak) {
- if (this.variable) {
- if (ifn = unfoldSoak(o, this, 'variable')) {
- return ifn;
- }
- _ref2 = new Value(this.variable).cacheReference(o), left = _ref2[0], rite = _ref2[1];
- } else {
- left = new Literal(this.superReference(o));
- rite = new Value(left);
- }
- rite = new Call(rite, this.args);
- rite.isNew = this.isNew;
- left = new Literal("typeof " + (left.compile(o)) + " === \"function\"");
- return new If(left, new Value(rite), {
- soak: true
- });
- }
- call = this;
- list = [];
- while (true) {
- if (call.variable instanceof Call) {
- list.push(call);
- call = call.variable;
- continue;
- }
- if (!(call.variable instanceof Value)) {
- break;
- }
- list.push(call);
- if (!((call = call.variable.base) instanceof Call)) {
- break;
- }
- }
- _ref3 = list.reverse();
- for (_i = 0, _len = _ref3.length; _i < _len; _i++) {
- call = _ref3[_i];
- if (ifn) {
- if (call.variable instanceof Call) {
- call.variable = ifn;
- } else {
- call.variable.base = ifn;
- }
- }
- ifn = unfoldSoak(o, call, 'variable');
- }
- return ifn;
- };
-
- Call.prototype.compileNode = function(o) {
- var arg, argIndex, compiledArgs, compiledArray, fragments, preface, _i, _len, _ref2, _ref3;
- if ((_ref2 = this.variable) != null) {
- _ref2.front = this.front;
- }
- compiledArray = Splat.compileSplattedArray(o, this.args, true);
- if (compiledArray.length) {
- return this.compileSplat(o, compiledArray);
- }
- compiledArgs = [];
- _ref3 = this.args;
- for (argIndex = _i = 0, _len = _ref3.length; _i < _len; argIndex = ++_i) {
- arg = _ref3[argIndex];
- if (argIndex) {
- compiledArgs.push(this.makeCode(", "));
- }
- compiledArgs.push.apply(compiledArgs, arg.compileToFragments(o, LEVEL_LIST));
- }
- fragments = [];
- if (this.isSuper) {
- preface = this.superReference(o) + (".call(" + (this.superThis(o)));
- if (compiledArgs.length) {
- preface += ", ";
- }
- fragments.push(this.makeCode(preface));
- } else {
- if (this.isNew) {
- fragments.push(this.makeCode('new '));
- }
- fragments.push.apply(fragments, this.variable.compileToFragments(o, LEVEL_ACCESS));
- fragments.push(this.makeCode("("));
- }
- fragments.push.apply(fragments, compiledArgs);
- fragments.push(this.makeCode(")"));
- return fragments;
- };
-
- Call.prototype.compileSplat = function(o, splatArgs) {
- var answer, base, fun, idt, name, ref;
- if (this.isSuper) {
- return [].concat(this.makeCode("" + (this.superReference(o)) + ".apply(" + (this.superThis(o)) + ", "), splatArgs, this.makeCode(")"));
- }
- if (this.isNew) {
- idt = this.tab + TAB;
- return [].concat(this.makeCode("(function(func, args, ctor) {\n" + idt + "ctor.prototype = func.prototype;\n" + idt + "var child = new ctor, result = func.apply(child, args);\n" + idt + "return Object(result) === result ? result : child;\n" + this.tab + "})("), this.variable.compileToFragments(o, LEVEL_LIST), this.makeCode(", "), splatArgs, this.makeCode(", function(){})"));
- }
- answer = [];
- base = new Value(this.variable);
- if ((name = base.properties.pop()) && base.isComplex()) {
- ref = o.scope.freeVariable('ref');
- answer = answer.concat(this.makeCode("(" + ref + " = "), base.compileToFragments(o, LEVEL_LIST), this.makeCode(")"), name.compileToFragments(o));
- } else {
- fun = base.compileToFragments(o, LEVEL_ACCESS);
- if (SIMPLENUM.test(fragmentsToText(fun))) {
- fun = this.wrapInBraces(fun);
- }
- if (name) {
- ref = fragmentsToText(fun);
- fun.push.apply(fun, name.compileToFragments(o));
- } else {
- ref = 'null';
- }
- answer = answer.concat(fun);
- }
- return answer = answer.concat(this.makeCode(".apply(" + ref + ", "), splatArgs, this.makeCode(")"));
- };
-
- return Call;
-
- })(Base);
-
- exports.Extends = Extends = (function(_super) {
- __extends(Extends, _super);
-
- function Extends(child, parent) {
- this.child = child;
- this.parent = parent;
- }
-
- Extends.prototype.children = ['child', 'parent'];
-
- Extends.prototype.compileToFragments = function(o) {
- return new Call(new Value(new Literal(utility('extends'))), [this.child, this.parent]).compileToFragments(o);
- };
-
- return Extends;
-
- })(Base);
-
- exports.Access = Access = (function(_super) {
- __extends(Access, _super);
-
- function Access(name, tag) {
- this.name = name;
- this.name.asKey = true;
- this.soak = tag === 'soak';
- }
-
- Access.prototype.children = ['name'];
-
- Access.prototype.compileToFragments = function(o) {
- var name;
- name = this.name.compileToFragments(o);
- if (IDENTIFIER.test(fragmentsToText(name))) {
- name.unshift(this.makeCode("."));
- } else {
- name.unshift(this.makeCode("["));
- name.push(this.makeCode("]"));
- }
- return name;
- };
-
- Access.prototype.isComplex = NO;
-
- return Access;
-
- })(Base);
-
- exports.Index = Index = (function(_super) {
- __extends(Index, _super);
-
- function Index(index) {
- this.index = index;
- }
-
- Index.prototype.children = ['index'];
-
- Index.prototype.compileToFragments = function(o) {
- return [].concat(this.makeCode("["), this.index.compileToFragments(o, LEVEL_PAREN), this.makeCode("]"));
- };
-
- Index.prototype.isComplex = function() {
- return this.index.isComplex();
- };
-
- return Index;
-
- })(Base);
-
- exports.Range = Range = (function(_super) {
- __extends(Range, _super);
-
- Range.prototype.children = ['from', 'to'];
-
- function Range(from, to, tag) {
- this.from = from;
- this.to = to;
- this.exclusive = tag === 'exclusive';
- this.equals = this.exclusive ? '' : '=';
- }
-
- Range.prototype.compileVariables = function(o) {
- var step, _ref2, _ref3, _ref4, _ref5;
- o = merge(o, {
- top: true
- });
- _ref2 = this.cacheToCodeFragments(this.from.cache(o, LEVEL_LIST)), this.fromC = _ref2[0], this.fromVar = _ref2[1];
- _ref3 = this.cacheToCodeFragments(this.to.cache(o, LEVEL_LIST)), this.toC = _ref3[0], this.toVar = _ref3[1];
- if (step = del(o, 'step')) {
- _ref4 = this.cacheToCodeFragments(step.cache(o, LEVEL_LIST)), this.step = _ref4[0], this.stepVar = _ref4[1];
- }
- _ref5 = [this.fromVar.match(NUMBER), this.toVar.match(NUMBER)], this.fromNum = _ref5[0], this.toNum = _ref5[1];
- if (this.stepVar) {
- return this.stepNum = this.stepVar.match(NUMBER);
- }
- };
-
- Range.prototype.compileNode = function(o) {
- var cond, condPart, from, gt, idx, idxName, known, lt, namedIndex, stepPart, to, varPart, _ref2, _ref3;
- if (!this.fromVar) {
- this.compileVariables(o);
- }
- if (!o.index) {
- return this.compileArray(o);
- }
- known = this.fromNum && this.toNum;
- idx = del(o, 'index');
- idxName = del(o, 'name');
- namedIndex = idxName && idxName !== idx;
- varPart = "" + idx + " = " + this.fromC;
- if (this.toC !== this.toVar) {
- varPart += ", " + this.toC;
- }
- if (this.step !== this.stepVar) {
- varPart += ", " + this.step;
- }
- _ref2 = ["" + idx + " <" + this.equals, "" + idx + " >" + this.equals], lt = _ref2[0], gt = _ref2[1];
- condPart = this.stepNum ? parseNum(this.stepNum[0]) > 0 ? "" + lt + " " + this.toVar : "" + gt + " " + this.toVar : known ? ((_ref3 = [parseNum(this.fromNum[0]), parseNum(this.toNum[0])], from = _ref3[0], to = _ref3[1], _ref3), from <= to ? "" + lt + " " + to : "" + gt + " " + to) : (cond = this.stepVar ? "" + this.stepVar + " > 0" : "" + this.fromVar + " <= " + this.toVar, "" + cond + " ? " + lt + " " + this.toVar + " : " + gt + " " + this.toVar);
- stepPart = this.stepVar ? "" + idx + " += " + this.stepVar : known ? namedIndex ? from <= to ? "++" + idx : "--" + idx : from <= to ? "" + idx + "++" : "" + idx + "--" : namedIndex ? "" + cond + " ? ++" + idx + " : --" + idx : "" + cond + " ? " + idx + "++ : " + idx + "--";
- if (namedIndex) {
- varPart = "" + idxName + " = " + varPart;
- }
- if (namedIndex) {
- stepPart = "" + idxName + " = " + stepPart;
- }
- return [this.makeCode("" + varPart + "; " + condPart + "; " + stepPart)];
- };
-
- Range.prototype.compileArray = function(o) {
- var args, body, cond, hasArgs, i, idt, post, pre, range, result, vars, _i, _ref2, _ref3, _results;
- if (this.fromNum && this.toNum && Math.abs(this.fromNum - this.toNum) <= 20) {
- range = (function() {
- _results = [];
- for (var _i = _ref2 = +this.fromNum, _ref3 = +this.toNum; _ref2 <= _ref3 ? _i <= _ref3 : _i >= _ref3; _ref2 <= _ref3 ? _i++ : _i--){ _results.push(_i); }
- return _results;
- }).apply(this);
- if (this.exclusive) {
- range.pop();
- }
- return [this.makeCode("[" + (range.join(', ')) + "]")];
- }
- idt = this.tab + TAB;
- i = o.scope.freeVariable('i');
- result = o.scope.freeVariable('results');
- pre = "\n" + idt + result + " = [];";
- if (this.fromNum && this.toNum) {
- o.index = i;
- body = fragmentsToText(this.compileNode(o));
- } else {
- vars = ("" + i + " = " + this.fromC) + (this.toC !== this.toVar ? ", " + this.toC : '');
- cond = "" + this.fromVar + " <= " + this.toVar;
- body = "var " + vars + "; " + cond + " ? " + i + " <" + this.equals + " " + this.toVar + " : " + i + " >" + this.equals + " " + this.toVar + "; " + cond + " ? " + i + "++ : " + i + "--";
- }
- post = "{ " + result + ".push(" + i + "); }\n" + idt + "return " + result + ";\n" + o.indent;
- hasArgs = function(node) {
- return node != null ? node.contains(isLiteralArguments) : void 0;
- };
- if (hasArgs(this.from) || hasArgs(this.to)) {
- args = ', arguments';
- }
- return [this.makeCode("(function() {" + pre + "\n" + idt + "for (" + body + ")" + post + "}).apply(this" + (args != null ? args : '') + ")")];
- };
-
- return Range;
-
- })(Base);
-
- exports.Slice = Slice = (function(_super) {
- __extends(Slice, _super);
-
- Slice.prototype.children = ['range'];
-
- function Slice(range) {
- this.range = range;
- Slice.__super__.constructor.call(this);
- }
-
- Slice.prototype.compileNode = function(o) {
- var compiled, compiledText, from, fromCompiled, to, toStr, _ref2;
- _ref2 = this.range, to = _ref2.to, from = _ref2.from;
- fromCompiled = from && from.compileToFragments(o, LEVEL_PAREN) || [this.makeCode('0')];
- if (to) {
- compiled = to.compileToFragments(o, LEVEL_PAREN);
- compiledText = fragmentsToText(compiled);
- if (!(!this.range.exclusive && +compiledText === -1)) {
- toStr = ', ' + (this.range.exclusive ? compiledText : SIMPLENUM.test(compiledText) ? "" + (+compiledText + 1) : (compiled = to.compileToFragments(o, LEVEL_ACCESS), "+" + (fragmentsToText(compiled)) + " + 1 || 9e9"));
- }
- }
- return [this.makeCode(".slice(" + (fragmentsToText(fromCompiled)) + (toStr || '') + ")")];
- };
-
- return Slice;
-
- })(Base);
-
- exports.Obj = Obj = (function(_super) {
- __extends(Obj, _super);
-
- function Obj(props, generated) {
- this.generated = generated != null ? generated : false;
- this.objects = this.properties = props || [];
- }
-
- Obj.prototype.children = ['properties'];
-
- Obj.prototype.compileNode = function(o) {
- var answer, i, idt, indent, join, lastNoncom, node, prop, props, _i, _j, _len, _len1;
- props = this.properties;
- if (!props.length) {
- return [this.makeCode(this.front ? '({})' : '{}')];
- }
- if (this.generated) {
- for (_i = 0, _len = props.length; _i < _len; _i++) {
- node = props[_i];
- if (node instanceof Value) {
- node.error('cannot have an implicit value in an implicit object');
- }
- }
- }
- idt = o.indent += TAB;
- lastNoncom = this.lastNonComment(this.properties);
- answer = [];
- for (i = _j = 0, _len1 = props.length; _j < _len1; i = ++_j) {
- prop = props[i];
- join = i === props.length - 1 ? '' : prop === lastNoncom || prop instanceof Comment ? '\n' : ',\n';
- indent = prop instanceof Comment ? '' : idt;
- if (prop instanceof Assign && prop.variable instanceof Value && prop.variable.hasProperties()) {
- prop.variable.error('Invalid object key');
- }
- if (prop instanceof Value && prop["this"]) {
- prop = new Assign(prop.properties[0].name, prop, 'object');
- }
- if (!(prop instanceof Comment)) {
- if (!(prop instanceof Assign)) {
- prop = new Assign(prop, prop, 'object');
- }
- (prop.variable.base || prop.variable).asKey = true;
- }
- if (indent) {
- answer.push(this.makeCode(indent));
- }
- answer.push.apply(answer, prop.compileToFragments(o, LEVEL_TOP));
- if (join) {
- answer.push(this.makeCode(join));
- }
- }
- answer.unshift(this.makeCode("{" + (props.length && '\n')));
- answer.push(this.makeCode("" + (props.length && '\n' + this.tab) + "}"));
- if (this.front) {
- return this.wrapInBraces(answer);
- } else {
- return answer;
- }
- };
-
- Obj.prototype.assigns = function(name) {
- var prop, _i, _len, _ref2;
- _ref2 = this.properties;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- prop = _ref2[_i];
- if (prop.assigns(name)) {
- return true;
- }
- }
- return false;
- };
-
- return Obj;
-
- })(Base);
-
- exports.Arr = Arr = (function(_super) {
- __extends(Arr, _super);
-
- function Arr(objs) {
- this.objects = objs || [];
- }
-
- Arr.prototype.children = ['objects'];
-
- Arr.prototype.compileNode = function(o) {
- var answer, compiledObjs, fragments, index, obj, _i, _len;
- if (!this.objects.length) {
- return [this.makeCode('[]')];
- }
- o.indent += TAB;
- answer = Splat.compileSplattedArray(o, this.objects);
- if (answer.length) {
- return answer;
- }
- answer = [];
- compiledObjs = (function() {
- var _i, _len, _ref2, _results;
- _ref2 = this.objects;
- _results = [];
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- obj = _ref2[_i];
- _results.push(obj.compileToFragments(o, LEVEL_LIST));
- }
- return _results;
- }).call(this);
- for (index = _i = 0, _len = compiledObjs.length; _i < _len; index = ++_i) {
- fragments = compiledObjs[index];
- if (index) {
- answer.push(this.makeCode(", "));
- }
- answer.push.apply(answer, fragments);
- }
- if (fragmentsToText(answer).indexOf('\n') >= 0) {
- answer.unshift(this.makeCode("[\n" + o.indent));
- answer.push(this.makeCode("\n" + this.tab + "]"));
- } else {
- answer.unshift(this.makeCode("["));
- answer.push(this.makeCode("]"));
- }
- return answer;
- };
-
- Arr.prototype.assigns = function(name) {
- var obj, _i, _len, _ref2;
- _ref2 = this.objects;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- obj = _ref2[_i];
- if (obj.assigns(name)) {
- return true;
- }
- }
- return false;
- };
-
- return Arr;
-
- })(Base);
-
- exports.Class = Class = (function(_super) {
- __extends(Class, _super);
-
- function Class(variable, parent, body) {
- this.variable = variable;
- this.parent = parent;
- this.body = body != null ? body : new Block;
- this.boundFuncs = [];
- this.body.classBody = true;
- }
-
- Class.prototype.children = ['variable', 'parent', 'body'];
-
- Class.prototype.determineName = function() {
- var decl, tail;
- if (!this.variable) {
- return null;
- }
- decl = (tail = last(this.variable.properties)) ? tail instanceof Access && tail.name.value : this.variable.base.value;
- if (__indexOf.call(STRICT_PROSCRIBED, decl) >= 0) {
- this.variable.error("class variable name may not be " + decl);
- }
- return decl && (decl = IDENTIFIER.test(decl) && decl);
- };
-
- Class.prototype.setContext = function(name) {
- return this.body.traverseChildren(false, function(node) {
- if (node.classBody) {
- return false;
- }
- if (node instanceof Literal && node.value === 'this') {
- return node.value = name;
- } else if (node instanceof Code) {
- node.klass = name;
- if (node.bound) {
- return node.context = name;
- }
- }
- });
- };
-
- Class.prototype.addBoundFunctions = function(o) {
- var bvar, lhs, _i, _len, _ref2;
- _ref2 = this.boundFuncs;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- bvar = _ref2[_i];
- lhs = (new Value(new Literal("this"), [new Access(bvar)])).compile(o);
- this.ctor.body.unshift(new Literal("" + lhs + " = " + (utility('bind')) + "(" + lhs + ", this)"));
- }
- };
-
- Class.prototype.addProperties = function(node, name, o) {
- var assign, base, exprs, func, props;
- props = node.base.properties.slice(0);
- exprs = (function() {
- var _results;
- _results = [];
- while (assign = props.shift()) {
- if (assign instanceof Assign) {
- base = assign.variable.base;
- delete assign.context;
- func = assign.value;
- if (base.value === 'constructor') {
- if (this.ctor) {
- assign.error('cannot define more than one constructor in a class');
- }
- if (func.bound) {
- assign.error('cannot define a constructor as a bound function');
- }
- if (func instanceof Code) {
- assign = this.ctor = func;
- } else {
- this.externalCtor = o.classScope.freeVariable('class');
- assign = new Assign(new Literal(this.externalCtor), func);
- }
- } else {
- if (assign.variable["this"]) {
- func["static"] = true;
- } else {
- assign.variable = new Value(new Literal(name), [new Access(new Literal('prototype')), new Access(base)]);
- if (func instanceof Code && func.bound) {
- this.boundFuncs.push(base);
- func.bound = false;
- }
- }
- }
- }
- _results.push(assign);
- }
- return _results;
- }).call(this);
- return compact(exprs);
- };
-
- Class.prototype.walkBody = function(name, o) {
- return this.traverseChildren(false, (function(_this) {
- return function(child) {
- var cont, exps, i, node, _i, _len, _ref2;
- cont = true;
- if (child instanceof Class) {
- return false;
- }
- if (child instanceof Block) {
- _ref2 = exps = child.expressions;
- for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) {
- node = _ref2[i];
- if (node instanceof Assign && node.variable.looksStatic(name)) {
- node.value["static"] = true;
- } else if (node instanceof Value && node.isObject(true)) {
- cont = false;
- exps[i] = _this.addProperties(node, name, o);
- }
- }
- child.expressions = exps = flatten(exps);
- }
- return cont && !(child instanceof Class);
- };
- })(this));
- };
-
- Class.prototype.hoistDirectivePrologue = function() {
- var expressions, index, node;
- index = 0;
- expressions = this.body.expressions;
- while ((node = expressions[index]) && node instanceof Comment || node instanceof Value && node.isString()) {
- ++index;
- }
- return this.directives = expressions.splice(0, index);
- };
-
- Class.prototype.ensureConstructor = function(name) {
- if (!this.ctor) {
- this.ctor = new Code;
- if (this.externalCtor) {
- this.ctor.body.push(new Literal("" + this.externalCtor + ".apply(this, arguments)"));
- } else if (this.parent) {
- this.ctor.body.push(new Literal("" + name + ".__super__.constructor.apply(this, arguments)"));
- }
- this.ctor.body.makeReturn();
- this.body.expressions.unshift(this.ctor);
- }
- this.ctor.ctor = this.ctor.name = name;
- this.ctor.klass = null;
- return this.ctor.noReturn = true;
- };
-
- Class.prototype.compileNode = function(o) {
- var args, argumentsNode, func, jumpNode, klass, lname, name, superClass, _ref2;
- if (jumpNode = this.body.jumps()) {
- jumpNode.error('Class bodies cannot contain pure statements');
- }
- if (argumentsNode = this.body.contains(isLiteralArguments)) {
- argumentsNode.error("Class bodies shouldn't reference arguments");
- }
- name = this.determineName() || '_Class';
- if (name.reserved) {
- name = "_" + name;
- }
- lname = new Literal(name);
- func = new Code([], Block.wrap([this.body]));
- args = [];
- o.classScope = func.makeScope(o.scope);
- this.hoistDirectivePrologue();
- this.setContext(name);
- this.walkBody(name, o);
- this.ensureConstructor(name);
- this.addBoundFunctions(o);
- this.body.spaced = true;
- this.body.expressions.push(lname);
- if (this.parent) {
- superClass = new Literal(o.classScope.freeVariable('super', false));
- this.body.expressions.unshift(new Extends(lname, superClass));
- func.params.push(new Param(superClass));
- args.push(this.parent);
- }
- (_ref2 = this.body.expressions).unshift.apply(_ref2, this.directives);
- klass = new Parens(new Call(func, args));
- if (this.variable) {
- klass = new Assign(this.variable, klass);
- }
- return klass.compileToFragments(o);
- };
-
- return Class;
-
- })(Base);
-
- exports.Assign = Assign = (function(_super) {
- __extends(Assign, _super);
-
- function Assign(variable, value, context, options) {
- var forbidden, name, _ref2;
- this.variable = variable;
- this.value = value;
- this.context = context;
- this.param = options && options.param;
- this.subpattern = options && options.subpattern;
- forbidden = (_ref2 = (name = this.variable.unwrapAll().value), __indexOf.call(STRICT_PROSCRIBED, _ref2) >= 0);
- if (forbidden && this.context !== 'object') {
- this.variable.error("variable name may not be \"" + name + "\"");
- }
- }
-
- Assign.prototype.children = ['variable', 'value'];
-
- Assign.prototype.isStatement = function(o) {
- return (o != null ? o.level : void 0) === LEVEL_TOP && (this.context != null) && __indexOf.call(this.context, "?") >= 0;
- };
-
- Assign.prototype.assigns = function(name) {
- return this[this.context === 'object' ? 'value' : 'variable'].assigns(name);
- };
-
- Assign.prototype.unfoldSoak = function(o) {
- return unfoldSoak(o, this, 'variable');
- };
-
- Assign.prototype.compileNode = function(o) {
- var answer, compiledName, isValue, match, name, val, varBase, _ref2, _ref3, _ref4, _ref5;
- if (isValue = this.variable instanceof Value) {
- if (this.variable.isArray() || this.variable.isObject()) {
- return this.compilePatternMatch(o);
- }
- if (this.variable.isSplice()) {
- return this.compileSplice(o);
- }
- if ((_ref2 = this.context) === '||=' || _ref2 === '&&=' || _ref2 === '?=') {
- return this.compileConditional(o);
- }
- if ((_ref3 = this.context) === '**=' || _ref3 === '//=' || _ref3 === '%%=') {
- return this.compileSpecialMath(o);
- }
- }
- compiledName = this.variable.compileToFragments(o, LEVEL_LIST);
- name = fragmentsToText(compiledName);
- if (!this.context) {
- varBase = this.variable.unwrapAll();
- if (!varBase.isAssignable()) {
- this.variable.error("\"" + (this.variable.compile(o)) + "\" cannot be assigned");
- }
- if (!(typeof varBase.hasProperties === "function" ? varBase.hasProperties() : void 0)) {
- if (this.param) {
- o.scope.add(name, 'var');
- } else {
- o.scope.find(name);
- }
- }
- }
- if (this.value instanceof Code && (match = METHOD_DEF.exec(name))) {
- if (match[2]) {
- this.value.klass = match[1];
- }
- this.value.name = (_ref4 = (_ref5 = match[3]) != null ? _ref5 : match[4]) != null ? _ref4 : match[5];
- }
- val = this.value.compileToFragments(o, LEVEL_LIST);
- if (this.context === 'object') {
- return compiledName.concat(this.makeCode(": "), val);
- }
- answer = compiledName.concat(this.makeCode(" " + (this.context || '=') + " "), val);
- if (o.level <= LEVEL_LIST) {
- return answer;
- } else {
- return this.wrapInBraces(answer);
- }
- };
-
- Assign.prototype.compilePatternMatch = function(o) {
- var acc, assigns, code, expandedIdx, fragments, i, idx, isObject, ivar, name, obj, objects, olen, ref, rest, top, val, value, vvar, vvarText, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7;
- top = o.level === LEVEL_TOP;
- value = this.value;
- objects = this.variable.base.objects;
- if (!(olen = objects.length)) {
- code = value.compileToFragments(o);
- if (o.level >= LEVEL_OP) {
- return this.wrapInBraces(code);
- } else {
- return code;
- }
- }
- isObject = this.variable.isObject();
- if (top && olen === 1 && !((obj = objects[0]) instanceof Splat)) {
- if (obj instanceof Assign) {
- _ref2 = obj, (_ref3 = _ref2.variable, idx = _ref3.base), obj = _ref2.value;
- } else {
- idx = isObject ? obj["this"] ? obj.properties[0].name : obj : new Literal(0);
- }
- acc = IDENTIFIER.test(idx.unwrap().value || 0);
- value = new Value(value);
- value.properties.push(new (acc ? Access : Index)(idx));
- if (_ref4 = obj.unwrap().value, __indexOf.call(RESERVED, _ref4) >= 0) {
- obj.error("assignment to a reserved word: " + (obj.compile(o)));
- }
- return new Assign(obj, value, null, {
- param: this.param
- }).compileToFragments(o, LEVEL_TOP);
- }
- vvar = value.compileToFragments(o, LEVEL_LIST);
- vvarText = fragmentsToText(vvar);
- assigns = [];
- expandedIdx = false;
- if (!IDENTIFIER.test(vvarText) || this.variable.assigns(vvarText)) {
- assigns.push([this.makeCode("" + (ref = o.scope.freeVariable('ref')) + " = ")].concat(__slice.call(vvar)));
- vvar = [this.makeCode(ref)];
- vvarText = ref;
- }
- for (i = _i = 0, _len = objects.length; _i < _len; i = ++_i) {
- obj = objects[i];
- idx = i;
- if (isObject) {
- if (obj instanceof Assign) {
- _ref5 = obj, (_ref6 = _ref5.variable, idx = _ref6.base), obj = _ref5.value;
- } else {
- if (obj.base instanceof Parens) {
- _ref7 = new Value(obj.unwrapAll()).cacheReference(o), obj = _ref7[0], idx = _ref7[1];
- } else {
- idx = obj["this"] ? obj.properties[0].name : obj;
- }
- }
- }
- if (!expandedIdx && obj instanceof Splat) {
- name = obj.name.unwrap().value;
- obj = obj.unwrap();
- val = "" + olen + " <= " + vvarText + ".length ? " + (utility('slice')) + ".call(" + vvarText + ", " + i;
- if (rest = olen - i - 1) {
- ivar = o.scope.freeVariable('i');
- val += ", " + ivar + " = " + vvarText + ".length - " + rest + ") : (" + ivar + " = " + i + ", [])";
- } else {
- val += ") : []";
- }
- val = new Literal(val);
- expandedIdx = "" + ivar + "++";
- } else if (!expandedIdx && obj instanceof Expansion) {
- if (rest = olen - i - 1) {
- if (rest === 1) {
- expandedIdx = "" + vvarText + ".length - 1";
- } else {
- ivar = o.scope.freeVariable('i');
- val = new Literal("" + ivar + " = " + vvarText + ".length - " + rest);
- expandedIdx = "" + ivar + "++";
- assigns.push(val.compileToFragments(o, LEVEL_LIST));
- }
- }
- continue;
- } else {
- name = obj.unwrap().value;
- if (obj instanceof Splat || obj instanceof Expansion) {
- obj.error("multiple splats/expansions are disallowed in an assignment");
- }
- if (typeof idx === 'number') {
- idx = new Literal(expandedIdx || idx);
- acc = false;
- } else {
- acc = isObject && IDENTIFIER.test(idx.unwrap().value || 0);
- }
- val = new Value(new Literal(vvarText), [new (acc ? Access : Index)(idx)]);
- }
- if ((name != null) && __indexOf.call(RESERVED, name) >= 0) {
- obj.error("assignment to a reserved word: " + (obj.compile(o)));
- }
- assigns.push(new Assign(obj, val, null, {
- param: this.param,
- subpattern: true
- }).compileToFragments(o, LEVEL_LIST));
- }
- if (!(top || this.subpattern)) {
- assigns.push(vvar);
- }
- fragments = this.joinFragmentArrays(assigns, ', ');
- if (o.level < LEVEL_LIST) {
- return fragments;
- } else {
- return this.wrapInBraces(fragments);
- }
- };
-
- Assign.prototype.compileConditional = function(o) {
- var fragments, left, right, _ref2;
- _ref2 = this.variable.cacheReference(o), left = _ref2[0], right = _ref2[1];
- if (!left.properties.length && left.base instanceof Literal && left.base.value !== "this" && !o.scope.check(left.base.value)) {
- this.variable.error("the variable \"" + left.base.value + "\" can't be assigned with " + this.context + " because it has not been declared before");
- }
- if (__indexOf.call(this.context, "?") >= 0) {
- o.isExistentialEquals = true;
- return new If(new Existence(left), right, {
- type: 'if'
- }).addElse(new Assign(right, this.value, '=')).compileToFragments(o);
- } else {
- fragments = new Op(this.context.slice(0, -1), left, new Assign(right, this.value, '=')).compileToFragments(o);
- if (o.level <= LEVEL_LIST) {
- return fragments;
- } else {
- return this.wrapInBraces(fragments);
- }
- }
- };
-
- Assign.prototype.compileSpecialMath = function(o) {
- var left, right, _ref2;
- _ref2 = this.variable.cacheReference(o), left = _ref2[0], right = _ref2[1];
- return new Assign(left, new Op(this.context.slice(0, -1), right, this.value)).compileToFragments(o);
- };
-
- Assign.prototype.compileSplice = function(o) {
- var answer, exclusive, from, fromDecl, fromRef, name, to, valDef, valRef, _ref2, _ref3, _ref4;
- _ref2 = this.variable.properties.pop().range, from = _ref2.from, to = _ref2.to, exclusive = _ref2.exclusive;
- name = this.variable.compile(o);
- if (from) {
- _ref3 = this.cacheToCodeFragments(from.cache(o, LEVEL_OP)), fromDecl = _ref3[0], fromRef = _ref3[1];
- } else {
- fromDecl = fromRef = '0';
- }
- if (to) {
- if (from instanceof Value && from.isSimpleNumber() && to instanceof Value && to.isSimpleNumber()) {
- to = to.compile(o) - fromRef;
- if (!exclusive) {
- to += 1;
- }
- } else {
- to = to.compile(o, LEVEL_ACCESS) + ' - ' + fromRef;
- if (!exclusive) {
- to += ' + 1';
- }
- }
- } else {
- to = "9e9";
- }
- _ref4 = this.value.cache(o, LEVEL_LIST), valDef = _ref4[0], valRef = _ref4[1];
- answer = [].concat(this.makeCode("[].splice.apply(" + name + ", [" + fromDecl + ", " + to + "].concat("), valDef, this.makeCode(")), "), valRef);
- if (o.level > LEVEL_TOP) {
- return this.wrapInBraces(answer);
- } else {
- return answer;
- }
- };
-
- return Assign;
-
- })(Base);
-
- exports.Code = Code = (function(_super) {
- __extends(Code, _super);
-
- function Code(params, body, tag) {
- this.params = params || [];
- this.body = body || new Block;
- this.bound = tag === 'boundfunc';
- }
-
- Code.prototype.children = ['params', 'body'];
-
- Code.prototype.isStatement = function() {
- return !!this.ctor;
- };
-
- Code.prototype.jumps = NO;
-
- Code.prototype.makeScope = function(parentScope) {
- return new Scope(parentScope, this.body, this);
- };
-
- Code.prototype.compileNode = function(o) {
- var answer, boundfunc, code, exprs, i, lit, p, param, params, ref, splats, uniqs, val, wasEmpty, wrapper, _i, _j, _k, _l, _len, _len1, _len2, _len3, _len4, _len5, _m, _n, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7;
- if (this.bound && ((_ref2 = o.scope.method) != null ? _ref2.bound : void 0)) {
- this.context = o.scope.method.context;
- }
- if (this.bound && !this.context) {
- this.context = '_this';
- wrapper = new Code([new Param(new Literal(this.context))], new Block([this]));
- boundfunc = new Call(wrapper, [new Literal('this')]);
- boundfunc.updateLocationDataIfMissing(this.locationData);
- return boundfunc.compileNode(o);
- }
- o.scope = del(o, 'classScope') || this.makeScope(o.scope);
- o.scope.shared = del(o, 'sharedScope');
- o.indent += TAB;
- delete o.bare;
- delete o.isExistentialEquals;
- params = [];
- exprs = [];
- _ref3 = this.params;
- for (_i = 0, _len = _ref3.length; _i < _len; _i++) {
- param = _ref3[_i];
- if (!(param instanceof Expansion)) {
- o.scope.parameter(param.asReference(o));
- }
- }
- _ref4 = this.params;
- for (_j = 0, _len1 = _ref4.length; _j < _len1; _j++) {
- param = _ref4[_j];
- if (!(param.splat || param instanceof Expansion)) {
- continue;
- }
- _ref5 = this.params;
- for (_k = 0, _len2 = _ref5.length; _k < _len2; _k++) {
- p = _ref5[_k].name;
- if (!(!(param instanceof Expansion))) {
- continue;
- }
- if (p["this"]) {
- p = p.properties[0].name;
- }
- if (p.value) {
- o.scope.add(p.value, 'var', true);
- }
- }
- splats = new Assign(new Value(new Arr((function() {
- var _l, _len3, _ref6, _results;
- _ref6 = this.params;
- _results = [];
- for (_l = 0, _len3 = _ref6.length; _l < _len3; _l++) {
- p = _ref6[_l];
- _results.push(p.asReference(o));
- }
- return _results;
- }).call(this))), new Value(new Literal('arguments')));
- break;
- }
- _ref6 = this.params;
- for (_l = 0, _len3 = _ref6.length; _l < _len3; _l++) {
- param = _ref6[_l];
- if (param.isComplex()) {
- val = ref = param.asReference(o);
- if (param.value) {
- val = new Op('?', ref, param.value);
- }
- exprs.push(new Assign(new Value(param.name), val, '=', {
- param: true
- }));
- } else {
- ref = param;
- if (param.value) {
- lit = new Literal(ref.name.value + ' == null');
- val = new Assign(new Value(param.name), param.value, '=');
- exprs.push(new If(lit, val));
- }
- }
- if (!splats) {
- params.push(ref);
- }
- }
- wasEmpty = this.body.isEmpty();
- if (splats) {
- exprs.unshift(splats);
- }
- if (exprs.length) {
- (_ref7 = this.body.expressions).unshift.apply(_ref7, exprs);
- }
- for (i = _m = 0, _len4 = params.length; _m < _len4; i = ++_m) {
- p = params[i];
- params[i] = p.compileToFragments(o);
- o.scope.parameter(fragmentsToText(params[i]));
- }
- uniqs = [];
- this.eachParamName(function(name, node) {
- if (__indexOf.call(uniqs, name) >= 0) {
- node.error("multiple parameters named '" + name + "'");
- }
- return uniqs.push(name);
- });
- if (!(wasEmpty || this.noReturn)) {
- this.body.makeReturn();
- }
- code = 'function';
- if (this.ctor) {
- code += ' ' + this.name;
- }
- code += '(';
- answer = [this.makeCode(code)];
- for (i = _n = 0, _len5 = params.length; _n < _len5; i = ++_n) {
- p = params[i];
- if (i) {
- answer.push(this.makeCode(", "));
- }
- answer.push.apply(answer, p);
- }
- answer.push(this.makeCode(') {'));
- if (!this.body.isEmpty()) {
- answer = answer.concat(this.makeCode("\n"), this.body.compileWithDeclarations(o), this.makeCode("\n" + this.tab));
- }
- answer.push(this.makeCode('}'));
- if (this.ctor) {
- return [this.makeCode(this.tab)].concat(__slice.call(answer));
- }
- if (this.front || (o.level >= LEVEL_ACCESS)) {
- return this.wrapInBraces(answer);
- } else {
- return answer;
- }
- };
-
- Code.prototype.eachParamName = function(iterator) {
- var param, _i, _len, _ref2, _results;
- _ref2 = this.params;
- _results = [];
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- param = _ref2[_i];
- _results.push(param.eachName(iterator));
- }
- return _results;
- };
-
- Code.prototype.traverseChildren = function(crossScope, func) {
- if (crossScope) {
- return Code.__super__.traverseChildren.call(this, crossScope, func);
- }
- };
-
- return Code;
-
- })(Base);
-
- exports.Param = Param = (function(_super) {
- __extends(Param, _super);
-
- function Param(name, value, splat) {
- var _ref2;
- this.name = name;
- this.value = value;
- this.splat = splat;
- if (_ref2 = (name = this.name.unwrapAll().value), __indexOf.call(STRICT_PROSCRIBED, _ref2) >= 0) {
- this.name.error("parameter name \"" + name + "\" is not allowed");
- }
- }
-
- Param.prototype.children = ['name', 'value'];
-
- Param.prototype.compileToFragments = function(o) {
- return this.name.compileToFragments(o, LEVEL_LIST);
- };
-
- Param.prototype.asReference = function(o) {
- var node;
- if (this.reference) {
- return this.reference;
- }
- node = this.name;
- if (node["this"]) {
- node = node.properties[0].name;
- if (node.value.reserved) {
- node = new Literal(o.scope.freeVariable(node.value));
- }
- } else if (node.isComplex()) {
- node = new Literal(o.scope.freeVariable('arg'));
- }
- node = new Value(node);
- if (this.splat) {
- node = new Splat(node);
- }
- node.updateLocationDataIfMissing(this.locationData);
- return this.reference = node;
- };
-
- Param.prototype.isComplex = function() {
- return this.name.isComplex();
- };
-
- Param.prototype.eachName = function(iterator, name) {
- var atParam, node, obj, _i, _len, _ref2;
- if (name == null) {
- name = this.name;
- }
- atParam = function(obj) {
- var node;
- node = obj.properties[0].name;
- if (!node.value.reserved) {
- return iterator(node.value, node);
- }
- };
- if (name instanceof Literal) {
- return iterator(name.value, name);
- }
- if (name instanceof Value) {
- return atParam(name);
- }
- _ref2 = name.objects;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- obj = _ref2[_i];
- if (obj instanceof Assign) {
- this.eachName(iterator, obj.value.unwrap());
- } else if (obj instanceof Splat) {
- node = obj.name.unwrap();
- iterator(node.value, node);
- } else if (obj instanceof Value) {
- if (obj.isArray() || obj.isObject()) {
- this.eachName(iterator, obj.base);
- } else if (obj["this"]) {
- atParam(obj);
- } else {
- iterator(obj.base.value, obj.base);
- }
- } else if (!(obj instanceof Expansion)) {
- obj.error("illegal parameter " + (obj.compile()));
- }
- }
- };
-
- return Param;
-
- })(Base);
-
- exports.Splat = Splat = (function(_super) {
- __extends(Splat, _super);
-
- Splat.prototype.children = ['name'];
-
- Splat.prototype.isAssignable = YES;
-
- function Splat(name) {
- this.name = name.compile ? name : new Literal(name);
- }
-
- Splat.prototype.assigns = function(name) {
- return this.name.assigns(name);
- };
-
- Splat.prototype.compileToFragments = function(o) {
- return this.name.compileToFragments(o);
- };
-
- Splat.prototype.unwrap = function() {
- return this.name;
- };
-
- Splat.compileSplattedArray = function(o, list, apply) {
- var args, base, compiledNode, concatPart, fragments, i, index, node, _i, _len;
- index = -1;
- while ((node = list[++index]) && !(node instanceof Splat)) {
- continue;
- }
- if (index >= list.length) {
- return [];
- }
- if (list.length === 1) {
- node = list[0];
- fragments = node.compileToFragments(o, LEVEL_LIST);
- if (apply) {
- return fragments;
- }
- return [].concat(node.makeCode("" + (utility('slice')) + ".call("), fragments, node.makeCode(")"));
- }
- args = list.slice(index);
- for (i = _i = 0, _len = args.length; _i < _len; i = ++_i) {
- node = args[i];
- compiledNode = node.compileToFragments(o, LEVEL_LIST);
- args[i] = node instanceof Splat ? [].concat(node.makeCode("" + (utility('slice')) + ".call("), compiledNode, node.makeCode(")")) : [].concat(node.makeCode("["), compiledNode, node.makeCode("]"));
- }
- if (index === 0) {
- node = list[0];
- concatPart = node.joinFragmentArrays(args.slice(1), ', ');
- return args[0].concat(node.makeCode(".concat("), concatPart, node.makeCode(")"));
- }
- base = (function() {
- var _j, _len1, _ref2, _results;
- _ref2 = list.slice(0, index);
- _results = [];
- for (_j = 0, _len1 = _ref2.length; _j < _len1; _j++) {
- node = _ref2[_j];
- _results.push(node.compileToFragments(o, LEVEL_LIST));
- }
- return _results;
- })();
- base = list[0].joinFragmentArrays(base, ', ');
- concatPart = list[index].joinFragmentArrays(args, ', ');
- return [].concat(list[0].makeCode("["), base, list[index].makeCode("].concat("), concatPart, (last(list)).makeCode(")"));
- };
-
- return Splat;
-
- })(Base);
-
- exports.Expansion = Expansion = (function(_super) {
- __extends(Expansion, _super);
-
- function Expansion() {
- return Expansion.__super__.constructor.apply(this, arguments);
- }
-
- Expansion.prototype.isComplex = NO;
-
- Expansion.prototype.compileNode = function(o) {
- return this.error('Expansion must be used inside a destructuring assignment or parameter list');
- };
-
- Expansion.prototype.asReference = function(o) {
- return this;
- };
-
- Expansion.prototype.eachName = function(iterator) {};
-
- return Expansion;
-
- })(Base);
-
- exports.While = While = (function(_super) {
- __extends(While, _super);
-
- function While(condition, options) {
- this.condition = (options != null ? options.invert : void 0) ? condition.invert() : condition;
- this.guard = options != null ? options.guard : void 0;
- }
-
- While.prototype.children = ['condition', 'guard', 'body'];
-
- While.prototype.isStatement = YES;
-
- While.prototype.makeReturn = function(res) {
- if (res) {
- return While.__super__.makeReturn.apply(this, arguments);
- } else {
- this.returns = !this.jumps({
- loop: true
- });
- return this;
- }
- };
-
- While.prototype.addBody = function(body) {
- this.body = body;
- return this;
- };
-
- While.prototype.jumps = function() {
- var expressions, jumpNode, node, _i, _len;
- expressions = this.body.expressions;
- if (!expressions.length) {
- return false;
- }
- for (_i = 0, _len = expressions.length; _i < _len; _i++) {
- node = expressions[_i];
- if (jumpNode = node.jumps({
- loop: true
- })) {
- return jumpNode;
- }
- }
- return false;
- };
-
- While.prototype.compileNode = function(o) {
- var answer, body, rvar, set;
- o.indent += TAB;
- set = '';
- body = this.body;
- if (body.isEmpty()) {
- body = this.makeCode('');
- } else {
- if (this.returns) {
- body.makeReturn(rvar = o.scope.freeVariable('results'));
- set = "" + this.tab + rvar + " = [];\n";
- }
- if (this.guard) {
- if (body.expressions.length > 1) {
- body.expressions.unshift(new If((new Parens(this.guard)).invert(), new Literal("continue")));
- } else {
- if (this.guard) {
- body = Block.wrap([new If(this.guard, body)]);
- }
- }
- }
- body = [].concat(this.makeCode("\n"), body.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab));
- }
- answer = [].concat(this.makeCode(set + this.tab + "while ("), this.condition.compileToFragments(o, LEVEL_PAREN), this.makeCode(") {"), body, this.makeCode("}"));
- if (this.returns) {
- answer.push(this.makeCode("\n" + this.tab + "return " + rvar + ";"));
- }
- return answer;
- };
-
- return While;
-
- })(Base);
-
- exports.Op = Op = (function(_super) {
- var CONVERSIONS, INVERSIONS;
-
- __extends(Op, _super);
-
- function Op(op, first, second, flip) {
- if (op === 'in') {
- return new In(first, second);
- }
- if (op === 'do') {
- return this.generateDo(first);
- }
- if (op === 'new') {
- if (first instanceof Call && !first["do"] && !first.isNew) {
- return first.newInstance();
- }
- if (first instanceof Code && first.bound || first["do"]) {
- first = new Parens(first);
- }
- }
- this.operator = CONVERSIONS[op] || op;
- this.first = first;
- this.second = second;
- this.flip = !!flip;
- return this;
- }
-
- CONVERSIONS = {
- '==': '===',
- '!=': '!==',
- 'of': 'in'
- };
-
- INVERSIONS = {
- '!==': '===',
- '===': '!=='
- };
-
- Op.prototype.children = ['first', 'second'];
-
- Op.prototype.isSimpleNumber = NO;
-
- Op.prototype.isUnary = function() {
- return !this.second;
- };
-
- Op.prototype.isComplex = function() {
- var _ref2;
- return !(this.isUnary() && ((_ref2 = this.operator) === '+' || _ref2 === '-')) || this.first.isComplex();
- };
-
- Op.prototype.isChainable = function() {
- var _ref2;
- return (_ref2 = this.operator) === '<' || _ref2 === '>' || _ref2 === '>=' || _ref2 === '<=' || _ref2 === '===' || _ref2 === '!==';
- };
-
- Op.prototype.invert = function() {
- var allInvertable, curr, fst, op, _ref2;
- if (this.isChainable() && this.first.isChainable()) {
- allInvertable = true;
- curr = this;
- while (curr && curr.operator) {
- allInvertable && (allInvertable = curr.operator in INVERSIONS);
- curr = curr.first;
- }
- if (!allInvertable) {
- return new Parens(this).invert();
- }
- curr = this;
- while (curr && curr.operator) {
- curr.invert = !curr.invert;
- curr.operator = INVERSIONS[curr.operator];
- curr = curr.first;
- }
- return this;
- } else if (op = INVERSIONS[this.operator]) {
- this.operator = op;
- if (this.first.unwrap() instanceof Op) {
- this.first.invert();
- }
- return this;
- } else if (this.second) {
- return new Parens(this).invert();
- } else if (this.operator === '!' && (fst = this.first.unwrap()) instanceof Op && ((_ref2 = fst.operator) === '!' || _ref2 === 'in' || _ref2 === 'instanceof')) {
- return fst;
- } else {
- return new Op('!', this);
- }
- };
-
- Op.prototype.unfoldSoak = function(o) {
- var _ref2;
- return ((_ref2 = this.operator) === '++' || _ref2 === '--' || _ref2 === 'delete') && unfoldSoak(o, this, 'first');
- };
-
- Op.prototype.generateDo = function(exp) {
- var call, func, param, passedParams, ref, _i, _len, _ref2;
- passedParams = [];
- func = exp instanceof Assign && (ref = exp.value.unwrap()) instanceof Code ? ref : exp;
- _ref2 = func.params || [];
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- param = _ref2[_i];
- if (param.value) {
- passedParams.push(param.value);
- delete param.value;
- } else {
- passedParams.push(param);
- }
- }
- call = new Call(exp, passedParams);
- call["do"] = true;
- return call;
- };
-
- Op.prototype.compileNode = function(o) {
- var answer, isChain, lhs, rhs, _ref2, _ref3;
- isChain = this.isChainable() && this.first.isChainable();
- if (!isChain) {
- this.first.front = this.front;
- }
- if (this.operator === 'delete' && o.scope.check(this.first.unwrapAll().value)) {
- this.error('delete operand may not be argument or var');
- }
- if (((_ref2 = this.operator) === '--' || _ref2 === '++') && (_ref3 = this.first.unwrapAll().value, __indexOf.call(STRICT_PROSCRIBED, _ref3) >= 0)) {
- this.error("cannot increment/decrement \"" + (this.first.unwrapAll().value) + "\"");
- }
- if (this.isUnary()) {
- return this.compileUnary(o);
- }
- if (isChain) {
- return this.compileChain(o);
- }
- switch (this.operator) {
- case '?':
- return this.compileExistence(o);
- case '**':
- return this.compilePower(o);
- case '//':
- return this.compileFloorDivision(o);
- case '%%':
- return this.compileModulo(o);
- default:
- lhs = this.first.compileToFragments(o, LEVEL_OP);
- rhs = this.second.compileToFragments(o, LEVEL_OP);
- answer = [].concat(lhs, this.makeCode(" " + this.operator + " "), rhs);
- if (o.level <= LEVEL_OP) {
- return answer;
- } else {
- return this.wrapInBraces(answer);
- }
- }
- };
-
- Op.prototype.compileChain = function(o) {
- var fragments, fst, shared, _ref2;
- _ref2 = this.first.second.cache(o), this.first.second = _ref2[0], shared = _ref2[1];
- fst = this.first.compileToFragments(o, LEVEL_OP);
- fragments = fst.concat(this.makeCode(" " + (this.invert ? '&&' : '||') + " "), shared.compileToFragments(o), this.makeCode(" " + this.operator + " "), this.second.compileToFragments(o, LEVEL_OP));
- return this.wrapInBraces(fragments);
- };
-
- Op.prototype.compileExistence = function(o) {
- var fst, ref;
- if (this.first.isComplex()) {
- ref = new Literal(o.scope.freeVariable('ref'));
- fst = new Parens(new Assign(ref, this.first));
- } else {
- fst = this.first;
- ref = fst;
- }
- return new If(new Existence(fst), ref, {
- type: 'if'
- }).addElse(this.second).compileToFragments(o);
- };
-
- Op.prototype.compileUnary = function(o) {
- var op, parts, plusMinus;
- parts = [];
- op = this.operator;
- parts.push([this.makeCode(op)]);
- if (op === '!' && this.first instanceof Existence) {
- this.first.negated = !this.first.negated;
- return this.first.compileToFragments(o);
- }
- if (o.level >= LEVEL_ACCESS) {
- return (new Parens(this)).compileToFragments(o);
- }
- plusMinus = op === '+' || op === '-';
- if ((op === 'new' || op === 'typeof' || op === 'delete') || plusMinus && this.first instanceof Op && this.first.operator === op) {
- parts.push([this.makeCode(' ')]);
- }
- if ((plusMinus && this.first instanceof Op) || (op === 'new' && this.first.isStatement(o))) {
- this.first = new Parens(this.first);
- }
- parts.push(this.first.compileToFragments(o, LEVEL_OP));
- if (this.flip) {
- parts.reverse();
- }
- return this.joinFragmentArrays(parts, '');
- };
-
- Op.prototype.compilePower = function(o) {
- var pow;
- pow = new Value(new Literal('Math'), [new Access(new Literal('pow'))]);
- return new Call(pow, [this.first, this.second]).compileToFragments(o);
- };
-
- Op.prototype.compileFloorDivision = function(o) {
- var div, floor;
- floor = new Value(new Literal('Math'), [new Access(new Literal('floor'))]);
- div = new Op('/', this.first, this.second);
- return new Call(floor, [div]).compileToFragments(o);
- };
-
- Op.prototype.compileModulo = function(o) {
- var mod;
- mod = new Value(new Literal(utility('modulo')));
- return new Call(mod, [this.first, this.second]).compileToFragments(o);
- };
-
- Op.prototype.toString = function(idt) {
- return Op.__super__.toString.call(this, idt, this.constructor.name + ' ' + this.operator);
- };
-
- return Op;
-
- })(Base);
-
- exports.In = In = (function(_super) {
- __extends(In, _super);
-
- function In(object, array) {
- this.object = object;
- this.array = array;
- }
-
- In.prototype.children = ['object', 'array'];
-
- In.prototype.invert = NEGATE;
-
- In.prototype.compileNode = function(o) {
- var hasSplat, obj, _i, _len, _ref2;
- if (this.array instanceof Value && this.array.isArray() && this.array.base.objects.length) {
- _ref2 = this.array.base.objects;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- obj = _ref2[_i];
- if (!(obj instanceof Splat)) {
- continue;
- }
- hasSplat = true;
- break;
- }
- if (!hasSplat) {
- return this.compileOrTest(o);
- }
- }
- return this.compileLoopTest(o);
- };
-
- In.prototype.compileOrTest = function(o) {
- var cmp, cnj, i, item, ref, sub, tests, _i, _len, _ref2, _ref3, _ref4;
- _ref2 = this.object.cache(o, LEVEL_OP), sub = _ref2[0], ref = _ref2[1];
- _ref3 = this.negated ? [' !== ', ' && '] : [' === ', ' || '], cmp = _ref3[0], cnj = _ref3[1];
- tests = [];
- _ref4 = this.array.base.objects;
- for (i = _i = 0, _len = _ref4.length; _i < _len; i = ++_i) {
- item = _ref4[i];
- if (i) {
- tests.push(this.makeCode(cnj));
- }
- tests = tests.concat((i ? ref : sub), this.makeCode(cmp), item.compileToFragments(o, LEVEL_ACCESS));
- }
- if (o.level < LEVEL_OP) {
- return tests;
- } else {
- return this.wrapInBraces(tests);
- }
- };
-
- In.prototype.compileLoopTest = function(o) {
- var fragments, ref, sub, _ref2;
- _ref2 = this.object.cache(o, LEVEL_LIST), sub = _ref2[0], ref = _ref2[1];
- fragments = [].concat(this.makeCode(utility('indexOf') + ".call("), this.array.compileToFragments(o, LEVEL_LIST), this.makeCode(", "), ref, this.makeCode(") " + (this.negated ? '< 0' : '>= 0')));
- if (fragmentsToText(sub) === fragmentsToText(ref)) {
- return fragments;
- }
- fragments = sub.concat(this.makeCode(', '), fragments);
- if (o.level < LEVEL_LIST) {
- return fragments;
- } else {
- return this.wrapInBraces(fragments);
- }
- };
-
- In.prototype.toString = function(idt) {
- return In.__super__.toString.call(this, idt, this.constructor.name + (this.negated ? '!' : ''));
- };
-
- return In;
-
- })(Base);
-
- exports.Try = Try = (function(_super) {
- __extends(Try, _super);
-
- function Try(attempt, errorVariable, recovery, ensure) {
- this.attempt = attempt;
- this.errorVariable = errorVariable;
- this.recovery = recovery;
- this.ensure = ensure;
- }
-
- Try.prototype.children = ['attempt', 'recovery', 'ensure'];
-
- Try.prototype.isStatement = YES;
-
- Try.prototype.jumps = function(o) {
- var _ref2;
- return this.attempt.jumps(o) || ((_ref2 = this.recovery) != null ? _ref2.jumps(o) : void 0);
- };
-
- Try.prototype.makeReturn = function(res) {
- if (this.attempt) {
- this.attempt = this.attempt.makeReturn(res);
- }
- if (this.recovery) {
- this.recovery = this.recovery.makeReturn(res);
- }
- return this;
- };
-
- Try.prototype.compileNode = function(o) {
- var catchPart, ensurePart, placeholder, tryPart;
- o.indent += TAB;
- tryPart = this.attempt.compileToFragments(o, LEVEL_TOP);
- catchPart = this.recovery ? (placeholder = new Literal('_error'), this.errorVariable ? this.recovery.unshift(new Assign(this.errorVariable, placeholder)) : void 0, [].concat(this.makeCode(" catch ("), placeholder.compileToFragments(o), this.makeCode(") {\n"), this.recovery.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab + "}"))) : !(this.ensure || this.recovery) ? [this.makeCode(' catch (_error) {}')] : [];
- ensurePart = this.ensure ? [].concat(this.makeCode(" finally {\n"), this.ensure.compileToFragments(o, LEVEL_TOP), this.makeCode("\n" + this.tab + "}")) : [];
- return [].concat(this.makeCode("" + this.tab + "try {\n"), tryPart, this.makeCode("\n" + this.tab + "}"), catchPart, ensurePart);
- };
-
- return Try;
-
- })(Base);
-
- exports.Throw = Throw = (function(_super) {
- __extends(Throw, _super);
-
- function Throw(expression) {
- this.expression = expression;
- }
-
- Throw.prototype.children = ['expression'];
-
- Throw.prototype.isStatement = YES;
-
- Throw.prototype.jumps = NO;
-
- Throw.prototype.makeReturn = THIS;
-
- Throw.prototype.compileNode = function(o) {
- return [].concat(this.makeCode(this.tab + "throw "), this.expression.compileToFragments(o), this.makeCode(";"));
- };
-
- return Throw;
-
- })(Base);
-
- exports.Existence = Existence = (function(_super) {
- __extends(Existence, _super);
-
- function Existence(expression) {
- this.expression = expression;
- }
-
- Existence.prototype.children = ['expression'];
-
- Existence.prototype.invert = NEGATE;
-
- Existence.prototype.compileNode = function(o) {
- var cmp, cnj, code, _ref2;
- this.expression.front = this.front;
- code = this.expression.compile(o, LEVEL_OP);
- if (IDENTIFIER.test(code) && !o.scope.check(code)) {
- _ref2 = this.negated ? ['===', '||'] : ['!==', '&&'], cmp = _ref2[0], cnj = _ref2[1];
- code = "typeof " + code + " " + cmp + " \"undefined\" " + cnj + " " + code + " " + cmp + " null";
- } else {
- code = "" + code + " " + (this.negated ? '==' : '!=') + " null";
- }
- return [this.makeCode(o.level <= LEVEL_COND ? code : "(" + code + ")")];
- };
-
- return Existence;
-
- })(Base);
-
- exports.Parens = Parens = (function(_super) {
- __extends(Parens, _super);
-
- function Parens(body) {
- this.body = body;
- }
-
- Parens.prototype.children = ['body'];
-
- Parens.prototype.unwrap = function() {
- return this.body;
- };
-
- Parens.prototype.isComplex = function() {
- return this.body.isComplex();
- };
-
- Parens.prototype.compileNode = function(o) {
- var bare, expr, fragments;
- expr = this.body.unwrap();
- if (expr instanceof Value && expr.isAtomic()) {
- expr.front = this.front;
- return expr.compileToFragments(o);
- }
- fragments = expr.compileToFragments(o, LEVEL_PAREN);
- bare = o.level < LEVEL_OP && (expr instanceof Op || expr instanceof Call || (expr instanceof For && expr.returns));
- if (bare) {
- return fragments;
- } else {
- return this.wrapInBraces(fragments);
- }
- };
-
- return Parens;
-
- })(Base);
-
- exports.For = For = (function(_super) {
- __extends(For, _super);
-
- function For(body, source) {
- var _ref2;
- this.source = source.source, this.guard = source.guard, this.step = source.step, this.name = source.name, this.index = source.index;
- this.body = Block.wrap([body]);
- this.own = !!source.own;
- this.object = !!source.object;
- if (this.object) {
- _ref2 = [this.index, this.name], this.name = _ref2[0], this.index = _ref2[1];
- }
- if (this.index instanceof Value) {
- this.index.error('index cannot be a pattern matching expression');
- }
- this.range = this.source instanceof Value && this.source.base instanceof Range && !this.source.properties.length;
- this.pattern = this.name instanceof Value;
- if (this.range && this.index) {
- this.index.error('indexes do not apply to range loops');
- }
- if (this.range && this.pattern) {
- this.name.error('cannot pattern match over range loops');
- }
- if (this.own && !this.object) {
- this.name.error('cannot use own with for-in');
- }
- this.returns = false;
- }
-
- For.prototype.children = ['body', 'source', 'guard', 'step'];
-
- For.prototype.compileNode = function(o) {
- var body, bodyFragments, compare, compareDown, declare, declareDown, defPart, defPartFragments, down, forPartFragments, guardPart, idt1, increment, index, ivar, kvar, kvarAssign, lastJumps, lvar, name, namePart, ref, resultPart, returnResult, rvar, scope, source, step, stepNum, stepVar, svar, varPart, _ref2, _ref3;
- body = Block.wrap([this.body]);
- lastJumps = (_ref2 = last(body.expressions)) != null ? _ref2.jumps() : void 0;
- if (lastJumps && lastJumps instanceof Return) {
- this.returns = false;
- }
- source = this.range ? this.source.base : this.source;
- scope = o.scope;
- if (!this.pattern) {
- name = this.name && (this.name.compile(o, LEVEL_LIST));
- }
- index = this.index && (this.index.compile(o, LEVEL_LIST));
- if (name && !this.pattern) {
- scope.find(name);
- }
- if (index) {
- scope.find(index);
- }
- if (this.returns) {
- rvar = scope.freeVariable('results');
- }
- ivar = (this.object && index) || scope.freeVariable('i');
- kvar = (this.range && name) || index || ivar;
- kvarAssign = kvar !== ivar ? "" + kvar + " = " : "";
- if (this.step && !this.range) {
- _ref3 = this.cacheToCodeFragments(this.step.cache(o, LEVEL_LIST)), step = _ref3[0], stepVar = _ref3[1];
- stepNum = stepVar.match(NUMBER);
- }
- if (this.pattern) {
- name = ivar;
- }
- varPart = '';
- guardPart = '';
- defPart = '';
- idt1 = this.tab + TAB;
- if (this.range) {
- forPartFragments = source.compileToFragments(merge(o, {
- index: ivar,
- name: name,
- step: this.step
- }));
- } else {
- svar = this.source.compile(o, LEVEL_LIST);
- if ((name || this.own) && !IDENTIFIER.test(svar)) {
- defPart += "" + this.tab + (ref = scope.freeVariable('ref')) + " = " + svar + ";\n";
- svar = ref;
- }
- if (name && !this.pattern) {
- namePart = "" + name + " = " + svar + "[" + kvar + "]";
- }
- if (!this.object) {
- if (step !== stepVar) {
- defPart += "" + this.tab + step + ";\n";
- }
- if (!(this.step && stepNum && (down = parseNum(stepNum[0]) < 0))) {
- lvar = scope.freeVariable('len');
- }
- declare = "" + kvarAssign + ivar + " = 0, " + lvar + " = " + svar + ".length";
- declareDown = "" + kvarAssign + ivar + " = " + svar + ".length - 1";
- compare = "" + ivar + " < " + lvar;
- compareDown = "" + ivar + " >= 0";
- if (this.step) {
- if (stepNum) {
- if (down) {
- compare = compareDown;
- declare = declareDown;
- }
- } else {
- compare = "" + stepVar + " > 0 ? " + compare + " : " + compareDown;
- declare = "(" + stepVar + " > 0 ? (" + declare + ") : " + declareDown + ")";
- }
- increment = "" + ivar + " += " + stepVar;
- } else {
- increment = "" + (kvar !== ivar ? "++" + ivar : "" + ivar + "++");
- }
- forPartFragments = [this.makeCode("" + declare + "; " + compare + "; " + kvarAssign + increment)];
- }
- }
- if (this.returns) {
- resultPart = "" + this.tab + rvar + " = [];\n";
- returnResult = "\n" + this.tab + "return " + rvar + ";";
- body.makeReturn(rvar);
- }
- if (this.guard) {
- if (body.expressions.length > 1) {
- body.expressions.unshift(new If((new Parens(this.guard)).invert(), new Literal("continue")));
- } else {
- if (this.guard) {
- body = Block.wrap([new If(this.guard, body)]);
- }
- }
- }
- if (this.pattern) {
- body.expressions.unshift(new Assign(this.name, new Literal("" + svar + "[" + kvar + "]")));
- }
- defPartFragments = [].concat(this.makeCode(defPart), this.pluckDirectCall(o, body));
- if (namePart) {
- varPart = "\n" + idt1 + namePart + ";";
- }
- if (this.object) {
- forPartFragments = [this.makeCode("" + kvar + " in " + svar)];
- if (this.own) {
- guardPart = "\n" + idt1 + "if (!" + (utility('hasProp')) + ".call(" + svar + ", " + kvar + ")) continue;";
- }
- }
- bodyFragments = body.compileToFragments(merge(o, {
- indent: idt1
- }), LEVEL_TOP);
- if (bodyFragments && (bodyFragments.length > 0)) {
- bodyFragments = [].concat(this.makeCode("\n"), bodyFragments, this.makeCode("\n"));
- }
- return [].concat(defPartFragments, this.makeCode("" + (resultPart || '') + this.tab + "for ("), forPartFragments, this.makeCode(") {" + guardPart + varPart), bodyFragments, this.makeCode("" + this.tab + "}" + (returnResult || '')));
- };
-
- For.prototype.pluckDirectCall = function(o, body) {
- var base, defs, expr, fn, idx, ref, val, _i, _len, _ref2, _ref3, _ref4, _ref5, _ref6, _ref7, _ref8;
- defs = [];
- _ref2 = body.expressions;
- for (idx = _i = 0, _len = _ref2.length; _i < _len; idx = ++_i) {
- expr = _ref2[idx];
- expr = expr.unwrapAll();
- if (!(expr instanceof Call)) {
- continue;
- }
- val = (_ref3 = expr.variable) != null ? _ref3.unwrapAll() : void 0;
- if (!((val instanceof Code) || (val instanceof Value && ((_ref4 = val.base) != null ? _ref4.unwrapAll() : void 0) instanceof Code && val.properties.length === 1 && ((_ref5 = (_ref6 = val.properties[0].name) != null ? _ref6.value : void 0) === 'call' || _ref5 === 'apply')))) {
- continue;
- }
- fn = ((_ref7 = val.base) != null ? _ref7.unwrapAll() : void 0) || val;
- ref = new Literal(o.scope.freeVariable('fn'));
- base = new Value(ref);
- if (val.base) {
- _ref8 = [base, val], val.base = _ref8[0], base = _ref8[1];
- }
- body.expressions[idx] = new Call(base, expr.args);
- defs = defs.concat(this.makeCode(this.tab), new Assign(ref, fn).compileToFragments(o, LEVEL_TOP), this.makeCode(';\n'));
- }
- return defs;
- };
-
- return For;
-
- })(While);
-
- exports.Switch = Switch = (function(_super) {
- __extends(Switch, _super);
-
- function Switch(subject, cases, otherwise) {
- this.subject = subject;
- this.cases = cases;
- this.otherwise = otherwise;
- }
-
- Switch.prototype.children = ['subject', 'cases', 'otherwise'];
-
- Switch.prototype.isStatement = YES;
-
- Switch.prototype.jumps = function(o) {
- var block, conds, jumpNode, _i, _len, _ref2, _ref3, _ref4;
- if (o == null) {
- o = {
- block: true
- };
- }
- _ref2 = this.cases;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- _ref3 = _ref2[_i], conds = _ref3[0], block = _ref3[1];
- if (jumpNode = block.jumps(o)) {
- return jumpNode;
- }
- }
- return (_ref4 = this.otherwise) != null ? _ref4.jumps(o) : void 0;
- };
-
- Switch.prototype.makeReturn = function(res) {
- var pair, _i, _len, _ref2, _ref3;
- _ref2 = this.cases;
- for (_i = 0, _len = _ref2.length; _i < _len; _i++) {
- pair = _ref2[_i];
- pair[1].makeReturn(res);
- }
- if (res) {
- this.otherwise || (this.otherwise = new Block([new Literal('void 0')]));
- }
- if ((_ref3 = this.otherwise) != null) {
- _ref3.makeReturn(res);
- }
- return this;
- };
-
- Switch.prototype.compileNode = function(o) {
- var block, body, cond, conditions, expr, fragments, i, idt1, idt2, _i, _j, _len, _len1, _ref2, _ref3, _ref4;
- idt1 = o.indent + TAB;
- idt2 = o.indent = idt1 + TAB;
- fragments = [].concat(this.makeCode(this.tab + "switch ("), (this.subject ? this.subject.compileToFragments(o, LEVEL_PAREN) : this.makeCode("false")), this.makeCode(") {\n"));
- _ref2 = this.cases;
- for (i = _i = 0, _len = _ref2.length; _i < _len; i = ++_i) {
- _ref3 = _ref2[i], conditions = _ref3[0], block = _ref3[1];
- _ref4 = flatten([conditions]);
- for (_j = 0, _len1 = _ref4.length; _j < _len1; _j++) {
- cond = _ref4[_j];
- if (!this.subject) {
- cond = cond.invert();
- }
- fragments = fragments.concat(this.makeCode(idt1 + "case "), cond.compileToFragments(o, LEVEL_PAREN), this.makeCode(":\n"));
- }
- if ((body = block.compileToFragments(o, LEVEL_TOP)).length > 0) {
- fragments = fragments.concat(body, this.makeCode('\n'));
- }
- if (i === this.cases.length - 1 && !this.otherwise) {
- break;
- }
- expr = this.lastNonComment(block.expressions);
- if (expr instanceof Return || (expr instanceof Literal && expr.jumps() && expr.value !== 'debugger')) {
- continue;
- }
- fragments.push(cond.makeCode(idt2 + 'break;\n'));
- }
- if (this.otherwise && this.otherwise.expressions.length) {
- fragments.push.apply(fragments, [this.makeCode(idt1 + "default:\n")].concat(__slice.call(this.otherwise.compileToFragments(o, LEVEL_TOP)), [this.makeCode("\n")]));
- }
- fragments.push(this.makeCode(this.tab + '}'));
- return fragments;
- };
-
- return Switch;
-
- })(Base);
-
- exports.If = If = (function(_super) {
- __extends(If, _super);
-
- function If(condition, body, options) {
- this.body = body;
- if (options == null) {
- options = {};
- }
- this.condition = options.type === 'unless' ? condition.invert() : condition;
- this.elseBody = null;
- this.isChain = false;
- this.soak = options.soak;
- }
-
- If.prototype.children = ['condition', 'body', 'elseBody'];
-
- If.prototype.bodyNode = function() {
- var _ref2;
- return (_ref2 = this.body) != null ? _ref2.unwrap() : void 0;
- };
-
- If.prototype.elseBodyNode = function() {
- var _ref2;
- return (_ref2 = this.elseBody) != null ? _ref2.unwrap() : void 0;
- };
-
- If.prototype.addElse = function(elseBody) {
- if (this.isChain) {
- this.elseBodyNode().addElse(elseBody);
- } else {
- this.isChain = elseBody instanceof If;
- this.elseBody = this.ensureBlock(elseBody);
- this.elseBody.updateLocationDataIfMissing(elseBody.locationData);
- }
- return this;
- };
-
- If.prototype.isStatement = function(o) {
- var _ref2;
- return (o != null ? o.level : void 0) === LEVEL_TOP || this.bodyNode().isStatement(o) || ((_ref2 = this.elseBodyNode()) != null ? _ref2.isStatement(o) : void 0);
- };
-
- If.prototype.jumps = function(o) {
- var _ref2;
- return this.body.jumps(o) || ((_ref2 = this.elseBody) != null ? _ref2.jumps(o) : void 0);
- };
-
- If.prototype.compileNode = function(o) {
- if (this.isStatement(o)) {
- return this.compileStatement(o);
- } else {
- return this.compileExpression(o);
- }
- };
-
- If.prototype.makeReturn = function(res) {
- if (res) {
- this.elseBody || (this.elseBody = new Block([new Literal('void 0')]));
- }
- this.body && (this.body = new Block([this.body.makeReturn(res)]));
- this.elseBody && (this.elseBody = new Block([this.elseBody.makeReturn(res)]));
- return this;
- };
-
- If.prototype.ensureBlock = function(node) {
- if (node instanceof Block) {
- return node;
- } else {
- return new Block([node]);
- }
- };
-
- If.prototype.compileStatement = function(o) {
- var answer, body, child, cond, exeq, ifPart, indent;
- child = del(o, 'chainChild');
- exeq = del(o, 'isExistentialEquals');
- if (exeq) {
- return new If(this.condition.invert(), this.elseBodyNode(), {
- type: 'if'
- }).compileToFragments(o);
- }
- indent = o.indent + TAB;
- cond = this.condition.compileToFragments(o, LEVEL_PAREN);
- body = this.ensureBlock(this.body).compileToFragments(merge(o, {
- indent: indent
- }));
- ifPart = [].concat(this.makeCode("if ("), cond, this.makeCode(") {\n"), body, this.makeCode("\n" + this.tab + "}"));
- if (!child) {
- ifPart.unshift(this.makeCode(this.tab));
- }
- if (!this.elseBody) {
- return ifPart;
- }
- answer = ifPart.concat(this.makeCode(' else '));
- if (this.isChain) {
- o.chainChild = true;
- answer = answer.concat(this.elseBody.unwrap().compileToFragments(o, LEVEL_TOP));
- } else {
- answer = answer.concat(this.makeCode("{\n"), this.elseBody.compileToFragments(merge(o, {
- indent: indent
- }), LEVEL_TOP), this.makeCode("\n" + this.tab + "}"));
- }
- return answer;
- };
-
- If.prototype.compileExpression = function(o) {
- var alt, body, cond, fragments;
- cond = this.condition.compileToFragments(o, LEVEL_COND);
- body = this.bodyNode().compileToFragments(o, LEVEL_LIST);
- alt = this.elseBodyNode() ? this.elseBodyNode().compileToFragments(o, LEVEL_LIST) : [this.makeCode('void 0')];
- fragments = cond.concat(this.makeCode(" ? "), body, this.makeCode(" : "), alt);
- if (o.level >= LEVEL_COND) {
- return this.wrapInBraces(fragments);
- } else {
- return fragments;
- }
- };
-
- If.prototype.unfoldSoak = function() {
- return this.soak && this;
- };
-
- return If;
-
- })(Base);
-
- UTILITIES = {
- "extends": function() {
- return "function(child, parent) { for (var key in parent) { if (" + (utility('hasProp')) + ".call(parent, key)) child[key] = parent[key]; } function ctor() { this.constructor = child; } ctor.prototype = parent.prototype; child.prototype = new ctor(); child.__super__ = parent.prototype; return child; }";
- },
- bind: function() {
- return 'function(fn, me){ return function(){ return fn.apply(me, arguments); }; }';
- },
- indexOf: function() {
- return "[].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; }";
- },
- modulo: function() {
- return "function(a, b) { return (+a % (b = +b) + b) % b; }";
- },
- hasProp: function() {
- return '{}.hasOwnProperty';
- },
- slice: function() {
- return '[].slice';
- }
- };
-
- LEVEL_TOP = 1;
-
- LEVEL_PAREN = 2;
-
- LEVEL_LIST = 3;
-
- LEVEL_COND = 4;
-
- LEVEL_OP = 5;
-
- LEVEL_ACCESS = 6;
-
- TAB = ' ';
-
- IDENTIFIER_STR = "[$A-Za-z_\\x7f-\\uffff][$\\w\\x7f-\\uffff]*";
-
- IDENTIFIER = RegExp("^" + IDENTIFIER_STR + "$");
-
- SIMPLENUM = /^[+-]?\d+$/;
-
- HEXNUM = /^[+-]?0x[\da-f]+/i;
-
- NUMBER = /^[+-]?(?:0x[\da-f]+|\d*\.?\d+(?:e[+-]?\d+)?)$/i;
-
- METHOD_DEF = RegExp("^(" + IDENTIFIER_STR + ")(\\.prototype)?(?:\\.(" + IDENTIFIER_STR + ")|\\[(\"(?:[^\\\\\"\\r\\n]|\\\\.)*\"|'(?:[^\\\\'\\r\\n]|\\\\.)*')\\]|\\[(0x[\\da-fA-F]+|\\d*\\.?\\d+(?:[eE][+-]?\\d+)?)\\])$");
-
- IS_STRING = /^['"]/;
-
- IS_REGEX = /^\//;
-
- utility = function(name) {
- var ref;
- ref = "__" + name;
- Scope.root.assign(ref, UTILITIES[name]());
- return ref;
- };
-
- multident = function(code, tab) {
- code = code.replace(/\n/g, '$&' + tab);
- return code.replace(/\s+$/, '');
- };
-
- parseNum = function(x) {
- if (x == null) {
- return 0;
- } else if (x.match(HEXNUM)) {
- return parseInt(x, 16);
- } else {
- return parseFloat(x);
- }
- };
-
- isLiteralArguments = function(node) {
- return node instanceof Literal && node.value === 'arguments' && !node.asKey;
- };
-
- isLiteralThis = function(node) {
- return (node instanceof Literal && node.value === 'this' && !node.asKey) || (node instanceof Code && node.bound) || (node instanceof Call && node.isSuper);
- };
-
- unfoldSoak = function(o, parent, name) {
- var ifn;
- if (!(ifn = parent[name].unfoldSoak(o))) {
- return;
- }
- parent[name] = ifn.body;
- ifn.body = new Value(parent);
- return ifn;
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/optparse.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/optparse.js
deleted file mode 100644
index 6ec3604..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/optparse.js
+++ /dev/null
@@ -1,139 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var LONG_FLAG, MULTI_FLAG, OPTIONAL, OptionParser, SHORT_FLAG, buildRule, buildRules, normalizeArguments, repeat;
-
- repeat = require('./helpers').repeat;
-
- exports.OptionParser = OptionParser = (function() {
- function OptionParser(rules, banner) {
- this.banner = banner;
- this.rules = buildRules(rules);
- }
-
- OptionParser.prototype.parse = function(args) {
- var arg, i, isOption, matchedRule, options, originalArgs, pos, rule, seenNonOptionArg, skippingArgument, value, _i, _j, _len, _len1, _ref;
- options = {
- "arguments": []
- };
- skippingArgument = false;
- originalArgs = args;
- args = normalizeArguments(args);
- for (i = _i = 0, _len = args.length; _i < _len; i = ++_i) {
- arg = args[i];
- if (skippingArgument) {
- skippingArgument = false;
- continue;
- }
- if (arg === '--') {
- pos = originalArgs.indexOf('--');
- options["arguments"] = options["arguments"].concat(originalArgs.slice(pos + 1));
- break;
- }
- isOption = !!(arg.match(LONG_FLAG) || arg.match(SHORT_FLAG));
- seenNonOptionArg = options["arguments"].length > 0;
- if (!seenNonOptionArg) {
- matchedRule = false;
- _ref = this.rules;
- for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) {
- rule = _ref[_j];
- if (rule.shortFlag === arg || rule.longFlag === arg) {
- value = true;
- if (rule.hasArgument) {
- skippingArgument = true;
- value = args[i + 1];
- }
- options[rule.name] = rule.isList ? (options[rule.name] || []).concat(value) : value;
- matchedRule = true;
- break;
- }
- }
- if (isOption && !matchedRule) {
- throw new Error("unrecognized option: " + arg);
- }
- }
- if (seenNonOptionArg || !isOption) {
- options["arguments"].push(arg);
- }
- }
- return options;
- };
-
- OptionParser.prototype.help = function() {
- var letPart, lines, rule, spaces, _i, _len, _ref;
- lines = [];
- if (this.banner) {
- lines.unshift("" + this.banner + "\n");
- }
- _ref = this.rules;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- rule = _ref[_i];
- spaces = 15 - rule.longFlag.length;
- spaces = spaces > 0 ? repeat(' ', spaces) : '';
- letPart = rule.shortFlag ? rule.shortFlag + ', ' : ' ';
- lines.push(' ' + letPart + rule.longFlag + spaces + rule.description);
- }
- return "\n" + (lines.join('\n')) + "\n";
- };
-
- return OptionParser;
-
- })();
-
- LONG_FLAG = /^(--\w[\w\-]*)/;
-
- SHORT_FLAG = /^(-\w)$/;
-
- MULTI_FLAG = /^-(\w{2,})/;
-
- OPTIONAL = /\[(\w+(\*?))\]/;
-
- buildRules = function(rules) {
- var tuple, _i, _len, _results;
- _results = [];
- for (_i = 0, _len = rules.length; _i < _len; _i++) {
- tuple = rules[_i];
- if (tuple.length < 3) {
- tuple.unshift(null);
- }
- _results.push(buildRule.apply(null, tuple));
- }
- return _results;
- };
-
- buildRule = function(shortFlag, longFlag, description, options) {
- var match;
- if (options == null) {
- options = {};
- }
- match = longFlag.match(OPTIONAL);
- longFlag = longFlag.match(LONG_FLAG)[1];
- return {
- name: longFlag.substr(2),
- shortFlag: shortFlag,
- longFlag: longFlag,
- description: description,
- hasArgument: !!(match && match[1]),
- isList: !!(match && match[2])
- };
- };
-
- normalizeArguments = function(args) {
- var arg, l, match, result, _i, _j, _len, _len1, _ref;
- args = args.slice(0);
- result = [];
- for (_i = 0, _len = args.length; _i < _len; _i++) {
- arg = args[_i];
- if (match = arg.match(MULTI_FLAG)) {
- _ref = match[1].split('');
- for (_j = 0, _len1 = _ref.length; _j < _len1; _j++) {
- l = _ref[_j];
- result.push('-' + l);
- }
- } else {
- result.push(arg);
- }
- }
- return result;
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/parser.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/parser.js
deleted file mode 100755
index 724636b..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/parser.js
+++ /dev/null
@@ -1,724 +0,0 @@
-/* parser generated by jison 0.4.13 */
-/*
- Returns a Parser object of the following structure:
-
- Parser: {
- yy: {}
- }
-
- Parser.prototype: {
- yy: {},
- trace: function(),
- symbols_: {associative list: name ==> number},
- terminals_: {associative list: number ==> name},
- productions_: [...],
- performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate, $$, _$),
- table: [...],
- defaultActions: {...},
- parseError: function(str, hash),
- parse: function(input),
-
- lexer: {
- EOF: 1,
- parseError: function(str, hash),
- setInput: function(input),
- input: function(),
- unput: function(str),
- more: function(),
- less: function(n),
- pastInput: function(),
- upcomingInput: function(),
- showPosition: function(),
- test_match: function(regex_match_array, rule_index),
- next: function(),
- lex: function(),
- begin: function(condition),
- popState: function(),
- _currentRules: function(),
- topState: function(),
- pushState: function(condition),
-
- options: {
- ranges: boolean (optional: true ==> token location info will include a .range[] member)
- flex: boolean (optional: true ==> flex-like lexing behaviour where the rules are tested exhaustively to find the longest match)
- backtrack_lexer: boolean (optional: true ==> lexer regexes are tested in order and for each matching regex the action code is invoked; the lexer terminates the scan when a token is returned by the action code)
- },
-
- performAction: function(yy, yy_, $avoiding_name_collisions, YY_START),
- rules: [...],
- conditions: {associative list: name ==> set},
- }
- }
-
-
- token location info (@$, _$, etc.): {
- first_line: n,
- last_line: n,
- first_column: n,
- last_column: n,
- range: [start_number, end_number] (where the numbers are indexes into the input string, regular zero-based)
- }
-
-
- the parseError function receives a 'hash' object with these members for lexer and parser errors: {
- text: (matched text)
- token: (the produced terminal token, if any)
- line: (yylineno)
- }
- while parser (grammar) errors will also provide these members, i.e. parser errors deliver a superset of attributes: {
- loc: (yylloc)
- expected: (string describing the set of expected tokens)
- recoverable: (boolean: TRUE when the parser has a error recovery rule available for this particular error)
- }
-*/
-var parser = (function(){
-var parser = {trace: function trace() { },
-yy: {},
-symbols_: {"error":2,"Root":3,"Body":4,"Line":5,"TERMINATOR":6,"Expression":7,"Statement":8,"Return":9,"Comment":10,"STATEMENT":11,"Value":12,"Invocation":13,"Code":14,"Operation":15,"Assign":16,"If":17,"Try":18,"While":19,"For":20,"Switch":21,"Class":22,"Throw":23,"Block":24,"INDENT":25,"OUTDENT":26,"Identifier":27,"IDENTIFIER":28,"AlphaNumeric":29,"NUMBER":30,"STRING":31,"Literal":32,"JS":33,"REGEX":34,"DEBUGGER":35,"UNDEFINED":36,"NULL":37,"BOOL":38,"Assignable":39,"=":40,"AssignObj":41,"ObjAssignable":42,":":43,"ThisProperty":44,"RETURN":45,"HERECOMMENT":46,"PARAM_START":47,"ParamList":48,"PARAM_END":49,"FuncGlyph":50,"->":51,"=>":52,"OptComma":53,",":54,"Param":55,"ParamVar":56,"...":57,"Array":58,"Object":59,"Splat":60,"SimpleAssignable":61,"Accessor":62,"Parenthetical":63,"Range":64,"This":65,".":66,"?.":67,"::":68,"?::":69,"Index":70,"INDEX_START":71,"IndexValue":72,"INDEX_END":73,"INDEX_SOAK":74,"Slice":75,"{":76,"AssignList":77,"}":78,"CLASS":79,"EXTENDS":80,"OptFuncExist":81,"Arguments":82,"SUPER":83,"FUNC_EXIST":84,"CALL_START":85,"CALL_END":86,"ArgList":87,"THIS":88,"@":89,"[":90,"]":91,"RangeDots":92,"..":93,"Arg":94,"SimpleArgs":95,"TRY":96,"Catch":97,"FINALLY":98,"CATCH":99,"THROW":100,"(":101,")":102,"WhileSource":103,"WHILE":104,"WHEN":105,"UNTIL":106,"Loop":107,"LOOP":108,"ForBody":109,"FOR":110,"ForStart":111,"ForSource":112,"ForVariables":113,"OWN":114,"ForValue":115,"FORIN":116,"FOROF":117,"BY":118,"SWITCH":119,"Whens":120,"ELSE":121,"When":122,"LEADING_WHEN":123,"IfBlock":124,"IF":125,"POST_IF":126,"UNARY":127,"UNARY_MATH":128,"-":129,"+":130,"--":131,"++":132,"?":133,"MATH":134,"**":135,"SHIFT":136,"COMPARE":137,"LOGIC":138,"RELATION":139,"COMPOUND_ASSIGN":140,"$accept":0,"$end":1},
-terminals_: {2:"error",6:"TERMINATOR",11:"STATEMENT",25:"INDENT",26:"OUTDENT",28:"IDENTIFIER",30:"NUMBER",31:"STRING",33:"JS",34:"REGEX",35:"DEBUGGER",36:"UNDEFINED",37:"NULL",38:"BOOL",40:"=",43:":",45:"RETURN",46:"HERECOMMENT",47:"PARAM_START",49:"PARAM_END",51:"->",52:"=>",54:",",57:"...",66:".",67:"?.",68:"::",69:"?::",71:"INDEX_START",73:"INDEX_END",74:"INDEX_SOAK",76:"{",78:"}",79:"CLASS",80:"EXTENDS",83:"SUPER",84:"FUNC_EXIST",85:"CALL_START",86:"CALL_END",88:"THIS",89:"@",90:"[",91:"]",93:"..",96:"TRY",98:"FINALLY",99:"CATCH",100:"THROW",101:"(",102:")",104:"WHILE",105:"WHEN",106:"UNTIL",108:"LOOP",110:"FOR",114:"OWN",116:"FORIN",117:"FOROF",118:"BY",119:"SWITCH",121:"ELSE",123:"LEADING_WHEN",125:"IF",126:"POST_IF",127:"UNARY",128:"UNARY_MATH",129:"-",130:"+",131:"--",132:"++",133:"?",134:"MATH",135:"**",136:"SHIFT",137:"COMPARE",138:"LOGIC",139:"RELATION",140:"COMPOUND_ASSIGN"},
-productions_: [0,[3,0],[3,1],[4,1],[4,3],[4,2],[5,1],[5,1],[8,1],[8,1],[8,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[7,1],[24,2],[24,3],[27,1],[29,1],[29,1],[32,1],[32,1],[32,1],[32,1],[32,1],[32,1],[32,1],[16,3],[16,4],[16,5],[41,1],[41,3],[41,5],[41,1],[42,1],[42,1],[42,1],[9,2],[9,1],[10,1],[14,5],[14,2],[50,1],[50,1],[53,0],[53,1],[48,0],[48,1],[48,3],[48,4],[48,6],[55,1],[55,2],[55,3],[55,1],[56,1],[56,1],[56,1],[56,1],[60,2],[61,1],[61,2],[61,2],[61,1],[39,1],[39,1],[39,1],[12,1],[12,1],[12,1],[12,1],[12,1],[62,2],[62,2],[62,2],[62,2],[62,1],[62,1],[70,3],[70,2],[72,1],[72,1],[59,4],[77,0],[77,1],[77,3],[77,4],[77,6],[22,1],[22,2],[22,3],[22,4],[22,2],[22,3],[22,4],[22,5],[13,3],[13,3],[13,1],[13,2],[81,0],[81,1],[82,2],[82,4],[65,1],[65,1],[44,2],[58,2],[58,4],[92,1],[92,1],[64,5],[75,3],[75,2],[75,2],[75,1],[87,1],[87,3],[87,4],[87,4],[87,6],[94,1],[94,1],[94,1],[95,1],[95,3],[18,2],[18,3],[18,4],[18,5],[97,3],[97,3],[97,2],[23,2],[63,3],[63,5],[103,2],[103,4],[103,2],[103,4],[19,2],[19,2],[19,2],[19,1],[107,2],[107,2],[20,2],[20,2],[20,2],[109,2],[109,2],[111,2],[111,3],[115,1],[115,1],[115,1],[115,1],[113,1],[113,3],[112,2],[112,2],[112,4],[112,4],[112,4],[112,6],[112,6],[21,5],[21,7],[21,4],[21,6],[120,1],[120,2],[122,3],[122,4],[124,3],[124,5],[17,1],[17,3],[17,3],[17,3],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,2],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,3],[15,5],[15,4],[15,3]],
-performAction: function anonymous(yytext, yyleng, yylineno, yy, yystate /* action[1] */, $$ /* vstack */, _$ /* lstack */) {
-/* this == yyval */
-
-var $0 = $$.length - 1;
-switch (yystate) {
-case 1:return this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Block);
-break;
-case 2:return this.$ = $$[$0];
-break;
-case 3:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(yy.Block.wrap([$$[$0]]));
-break;
-case 4:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].push($$[$0]));
-break;
-case 5:this.$ = $$[$0-1];
-break;
-case 6:this.$ = $$[$0];
-break;
-case 7:this.$ = $$[$0];
-break;
-case 8:this.$ = $$[$0];
-break;
-case 9:this.$ = $$[$0];
-break;
-case 10:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 11:this.$ = $$[$0];
-break;
-case 12:this.$ = $$[$0];
-break;
-case 13:this.$ = $$[$0];
-break;
-case 14:this.$ = $$[$0];
-break;
-case 15:this.$ = $$[$0];
-break;
-case 16:this.$ = $$[$0];
-break;
-case 17:this.$ = $$[$0];
-break;
-case 18:this.$ = $$[$0];
-break;
-case 19:this.$ = $$[$0];
-break;
-case 20:this.$ = $$[$0];
-break;
-case 21:this.$ = $$[$0];
-break;
-case 22:this.$ = $$[$0];
-break;
-case 23:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Block);
-break;
-case 24:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-1]);
-break;
-case 25:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 26:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 27:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 28:this.$ = $$[$0];
-break;
-case 29:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 30:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 31:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Literal($$[$0]));
-break;
-case 32:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Undefined);
-break;
-case 33:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Null);
-break;
-case 34:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Bool($$[$0]));
-break;
-case 35:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign($$[$0-2], $$[$0]));
-break;
-case 36:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Assign($$[$0-3], $$[$0]));
-break;
-case 37:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign($$[$0-4], $$[$0-1]));
-break;
-case 38:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 39:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign(yy.addLocationDataFn(_$[$0-2])(new yy.Value($$[$0-2])), $$[$0], 'object'));
-break;
-case 40:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign(yy.addLocationDataFn(_$[$0-4])(new yy.Value($$[$0-4])), $$[$0-1], 'object'));
-break;
-case 41:this.$ = $$[$0];
-break;
-case 42:this.$ = $$[$0];
-break;
-case 43:this.$ = $$[$0];
-break;
-case 44:this.$ = $$[$0];
-break;
-case 45:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Return($$[$0]));
-break;
-case 46:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Return);
-break;
-case 47:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Comment($$[$0]));
-break;
-case 48:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Code($$[$0-3], $$[$0], $$[$0-1]));
-break;
-case 49:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Code([], $$[$0], $$[$0-1]));
-break;
-case 50:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('func');
-break;
-case 51:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('boundfunc');
-break;
-case 52:this.$ = $$[$0];
-break;
-case 53:this.$ = $$[$0];
-break;
-case 54:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([]);
-break;
-case 55:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]);
-break;
-case 56:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0]));
-break;
-case 57:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0]));
-break;
-case 58:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2]));
-break;
-case 59:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Param($$[$0]));
-break;
-case 60:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Param($$[$0-1], null, true));
-break;
-case 61:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Param($$[$0-2], $$[$0]));
-break;
-case 62:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Expansion);
-break;
-case 63:this.$ = $$[$0];
-break;
-case 64:this.$ = $$[$0];
-break;
-case 65:this.$ = $$[$0];
-break;
-case 66:this.$ = $$[$0];
-break;
-case 67:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Splat($$[$0-1]));
-break;
-case 68:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 69:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].add($$[$0]));
-break;
-case 70:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Value($$[$0-1], [].concat($$[$0])));
-break;
-case 71:this.$ = $$[$0];
-break;
-case 72:this.$ = $$[$0];
-break;
-case 73:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 74:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 75:this.$ = $$[$0];
-break;
-case 76:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 77:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 78:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 79:this.$ = $$[$0];
-break;
-case 80:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Access($$[$0]));
-break;
-case 81:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Access($$[$0], 'soak'));
-break;
-case 82:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Access(new yy.Literal('prototype'))), yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))]);
-break;
-case 83:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Access(new yy.Literal('prototype'), 'soak')), yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))]);
-break;
-case 84:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Access(new yy.Literal('prototype')));
-break;
-case 85:this.$ = $$[$0];
-break;
-case 86:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-1]);
-break;
-case 87:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(yy.extend($$[$0], {
- soak: true
- }));
-break;
-case 88:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Index($$[$0]));
-break;
-case 89:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Slice($$[$0]));
-break;
-case 90:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Obj($$[$0-2], $$[$0-3].generated));
-break;
-case 91:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([]);
-break;
-case 92:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]);
-break;
-case 93:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0]));
-break;
-case 94:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0]));
-break;
-case 95:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2]));
-break;
-case 96:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Class);
-break;
-case 97:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Class(null, null, $$[$0]));
-break;
-case 98:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Class(null, $$[$0]));
-break;
-case 99:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Class(null, $$[$0-1], $$[$0]));
-break;
-case 100:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Class($$[$0]));
-break;
-case 101:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Class($$[$0-1], null, $$[$0]));
-break;
-case 102:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Class($$[$0-2], $$[$0]));
-break;
-case 103:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Class($$[$0-3], $$[$0-1], $$[$0]));
-break;
-case 104:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Call($$[$0-2], $$[$0], $$[$0-1]));
-break;
-case 105:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Call($$[$0-2], $$[$0], $$[$0-1]));
-break;
-case 106:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Call('super', [new yy.Splat(new yy.Literal('arguments'))]));
-break;
-case 107:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Call('super', $$[$0]));
-break;
-case 108:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(false);
-break;
-case 109:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(true);
-break;
-case 110:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([]);
-break;
-case 111:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-2]);
-break;
-case 112:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value(new yy.Literal('this')));
-break;
-case 113:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value(new yy.Literal('this')));
-break;
-case 114:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Value(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('this')), [yy.addLocationDataFn(_$[$0])(new yy.Access($$[$0]))], 'this'));
-break;
-case 115:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Arr([]));
-break;
-case 116:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Arr($$[$0-2]));
-break;
-case 117:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('inclusive');
-break;
-case 118:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])('exclusive');
-break;
-case 119:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Range($$[$0-3], $$[$0-1], $$[$0-2]));
-break;
-case 120:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Range($$[$0-2], $$[$0], $$[$0-1]));
-break;
-case 121:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Range($$[$0-1], null, $$[$0]));
-break;
-case 122:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Range(null, $$[$0], $$[$0-1]));
-break;
-case 123:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Range(null, null, $$[$0]));
-break;
-case 124:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]);
-break;
-case 125:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].concat($$[$0]));
-break;
-case 126:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-3].concat($$[$0]));
-break;
-case 127:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])($$[$0-2]);
-break;
-case 128:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])($$[$0-5].concat($$[$0-2]));
-break;
-case 129:this.$ = $$[$0];
-break;
-case 130:this.$ = $$[$0];
-break;
-case 131:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Expansion);
-break;
-case 132:this.$ = $$[$0];
-break;
-case 133:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([].concat($$[$0-2], $$[$0]));
-break;
-case 134:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Try($$[$0]));
-break;
-case 135:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Try($$[$0-1], $$[$0][0], $$[$0][1]));
-break;
-case 136:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Try($$[$0-2], null, null, $$[$0]));
-break;
-case 137:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Try($$[$0-3], $$[$0-2][0], $$[$0-2][1], $$[$0]));
-break;
-case 138:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([$$[$0-1], $$[$0]]);
-break;
-case 139:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([yy.addLocationDataFn(_$[$0-1])(new yy.Value($$[$0-1])), $$[$0]]);
-break;
-case 140:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])([null, $$[$0]]);
-break;
-case 141:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Throw($$[$0]));
-break;
-case 142:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Parens($$[$0-1]));
-break;
-case 143:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Parens($$[$0-2]));
-break;
-case 144:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While($$[$0]));
-break;
-case 145:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.While($$[$0-2], {
- guard: $$[$0]
- }));
-break;
-case 146:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While($$[$0], {
- invert: true
- }));
-break;
-case 147:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.While($$[$0-2], {
- invert: true,
- guard: $$[$0]
- }));
-break;
-case 148:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].addBody($$[$0]));
-break;
-case 149:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0].addBody(yy.addLocationDataFn(_$[$0-1])(yy.Block.wrap([$$[$0-1]]))));
-break;
-case 150:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0].addBody(yy.addLocationDataFn(_$[$0-1])(yy.Block.wrap([$$[$0-1]]))));
-break;
-case 151:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])($$[$0]);
-break;
-case 152:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('true'))).addBody($$[$0]));
-break;
-case 153:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.While(yy.addLocationDataFn(_$[$0-1])(new yy.Literal('true'))).addBody(yy.addLocationDataFn(_$[$0])(yy.Block.wrap([$$[$0]]))));
-break;
-case 154:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0-1], $$[$0]));
-break;
-case 155:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0-1], $$[$0]));
-break;
-case 156:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.For($$[$0], $$[$0-1]));
-break;
-case 157:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({
- source: yy.addLocationDataFn(_$[$0])(new yy.Value($$[$0]))
- });
-break;
-case 158:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])((function () {
- $$[$0].own = $$[$0-1].own;
- $$[$0].name = $$[$0-1][0];
- $$[$0].index = $$[$0-1][1];
- return $$[$0];
- }()));
-break;
-case 159:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0]);
-break;
-case 160:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])((function () {
- $$[$0].own = true;
- return $$[$0];
- }()));
-break;
-case 161:this.$ = $$[$0];
-break;
-case 162:this.$ = $$[$0];
-break;
-case 163:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 164:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])(new yy.Value($$[$0]));
-break;
-case 165:this.$ = yy.addLocationDataFn(_$[$0], _$[$0])([$$[$0]]);
-break;
-case 166:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([$$[$0-2], $$[$0]]);
-break;
-case 167:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({
- source: $$[$0]
- });
-break;
-case 168:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])({
- source: $$[$0],
- object: true
- });
-break;
-case 169:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({
- source: $$[$0-2],
- guard: $$[$0]
- });
-break;
-case 170:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({
- source: $$[$0-2],
- guard: $$[$0],
- object: true
- });
-break;
-case 171:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])({
- source: $$[$0-2],
- step: $$[$0]
- });
-break;
-case 172:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])({
- source: $$[$0-4],
- guard: $$[$0-2],
- step: $$[$0]
- });
-break;
-case 173:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])({
- source: $$[$0-4],
- step: $$[$0-2],
- guard: $$[$0]
- });
-break;
-case 174:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Switch($$[$0-3], $$[$0-1]));
-break;
-case 175:this.$ = yy.addLocationDataFn(_$[$0-6], _$[$0])(new yy.Switch($$[$0-5], $$[$0-3], $$[$0-1]));
-break;
-case 176:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Switch(null, $$[$0-1]));
-break;
-case 177:this.$ = yy.addLocationDataFn(_$[$0-5], _$[$0])(new yy.Switch(null, $$[$0-3], $$[$0-1]));
-break;
-case 178:this.$ = $$[$0];
-break;
-case 179:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])($$[$0-1].concat($$[$0]));
-break;
-case 180:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])([[$$[$0-1], $$[$0]]]);
-break;
-case 181:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])([[$$[$0-2], $$[$0-1]]]);
-break;
-case 182:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0-1], $$[$0], {
- type: $$[$0-2]
- }));
-break;
-case 183:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])($$[$0-4].addElse(yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0-1], $$[$0], {
- type: $$[$0-2]
- }))));
-break;
-case 184:this.$ = $$[$0];
-break;
-case 185:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])($$[$0-2].addElse($$[$0]));
-break;
-case 186:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0], yy.addLocationDataFn(_$[$0-2])(yy.Block.wrap([$$[$0-2]])), {
- type: $$[$0-1],
- statement: true
- }));
-break;
-case 187:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.If($$[$0], yy.addLocationDataFn(_$[$0-2])(yy.Block.wrap([$$[$0-2]])), {
- type: $$[$0-1],
- statement: true
- }));
-break;
-case 188:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op($$[$0-1], $$[$0]));
-break;
-case 189:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op($$[$0-1], $$[$0]));
-break;
-case 190:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('-', $$[$0]));
-break;
-case 191:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('+', $$[$0]));
-break;
-case 192:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('--', $$[$0]));
-break;
-case 193:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('++', $$[$0]));
-break;
-case 194:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('--', $$[$0-1], null, true));
-break;
-case 195:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Op('++', $$[$0-1], null, true));
-break;
-case 196:this.$ = yy.addLocationDataFn(_$[$0-1], _$[$0])(new yy.Existence($$[$0-1]));
-break;
-case 197:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op('+', $$[$0-2], $$[$0]));
-break;
-case 198:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op('-', $$[$0-2], $$[$0]));
-break;
-case 199:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0]));
-break;
-case 200:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0]));
-break;
-case 201:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0]));
-break;
-case 202:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0]));
-break;
-case 203:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Op($$[$0-1], $$[$0-2], $$[$0]));
-break;
-case 204:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])((function () {
- if ($$[$0-1].charAt(0) === '!') {
- return new yy.Op($$[$0-1].slice(1), $$[$0-2], $$[$0]).invert();
- } else {
- return new yy.Op($$[$0-1], $$[$0-2], $$[$0]);
- }
- }()));
-break;
-case 205:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Assign($$[$0-2], $$[$0], $$[$0-1]));
-break;
-case 206:this.$ = yy.addLocationDataFn(_$[$0-4], _$[$0])(new yy.Assign($$[$0-4], $$[$0-1], $$[$0-3]));
-break;
-case 207:this.$ = yy.addLocationDataFn(_$[$0-3], _$[$0])(new yy.Assign($$[$0-3], $$[$0], $$[$0-2]));
-break;
-case 208:this.$ = yy.addLocationDataFn(_$[$0-2], _$[$0])(new yy.Extends($$[$0-2], $$[$0]));
-break;
-}
-},
-table: [{1:[2,1],3:1,4:2,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[3]},{1:[2,2],6:[1,73]},{1:[2,3],6:[2,3],26:[2,3],102:[2,3]},{1:[2,6],6:[2,6],26:[2,6],102:[2,6],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,7],6:[2,7],26:[2,7],102:[2,7],103:87,104:[1,64],106:[1,65],109:88,110:[1,67],111:68,126:[1,86]},{1:[2,11],6:[2,11],25:[2,11],26:[2,11],49:[2,11],54:[2,11],57:[2,11],62:90,66:[1,92],67:[1,93],68:[1,94],69:[1,95],70:96,71:[1,97],73:[2,11],74:[1,98],78:[2,11],81:89,84:[1,91],85:[2,108],86:[2,11],91:[2,11],93:[2,11],102:[2,11],104:[2,11],105:[2,11],106:[2,11],110:[2,11],118:[2,11],126:[2,11],129:[2,11],130:[2,11],133:[2,11],134:[2,11],135:[2,11],136:[2,11],137:[2,11],138:[2,11],139:[2,11]},{1:[2,12],6:[2,12],25:[2,12],26:[2,12],49:[2,12],54:[2,12],57:[2,12],62:100,66:[1,92],67:[1,93],68:[1,94],69:[1,95],70:96,71:[1,97],73:[2,12],74:[1,98],78:[2,12],81:99,84:[1,91],85:[2,108],86:[2,12],91:[2,12],93:[2,12],102:[2,12],104:[2,12],105:[2,12],106:[2,12],110:[2,12],118:[2,12],126:[2,12],129:[2,12],130:[2,12],133:[2,12],134:[2,12],135:[2,12],136:[2,12],137:[2,12],138:[2,12],139:[2,12]},{1:[2,13],6:[2,13],25:[2,13],26:[2,13],49:[2,13],54:[2,13],57:[2,13],73:[2,13],78:[2,13],86:[2,13],91:[2,13],93:[2,13],102:[2,13],104:[2,13],105:[2,13],106:[2,13],110:[2,13],118:[2,13],126:[2,13],129:[2,13],130:[2,13],133:[2,13],134:[2,13],135:[2,13],136:[2,13],137:[2,13],138:[2,13],139:[2,13]},{1:[2,14],6:[2,14],25:[2,14],26:[2,14],49:[2,14],54:[2,14],57:[2,14],73:[2,14],78:[2,14],86:[2,14],91:[2,14],93:[2,14],102:[2,14],104:[2,14],105:[2,14],106:[2,14],110:[2,14],118:[2,14],126:[2,14],129:[2,14],130:[2,14],133:[2,14],134:[2,14],135:[2,14],136:[2,14],137:[2,14],138:[2,14],139:[2,14]},{1:[2,15],6:[2,15],25:[2,15],26:[2,15],49:[2,15],54:[2,15],57:[2,15],73:[2,15],78:[2,15],86:[2,15],91:[2,15],93:[2,15],102:[2,15],104:[2,15],105:[2,15],106:[2,15],110:[2,15],118:[2,15],126:[2,15],129:[2,15],130:[2,15],133:[2,15],134:[2,15],135:[2,15],136:[2,15],137:[2,15],138:[2,15],139:[2,15]},{1:[2,16],6:[2,16],25:[2,16],26:[2,16],49:[2,16],54:[2,16],57:[2,16],73:[2,16],78:[2,16],86:[2,16],91:[2,16],93:[2,16],102:[2,16],104:[2,16],105:[2,16],106:[2,16],110:[2,16],118:[2,16],126:[2,16],129:[2,16],130:[2,16],133:[2,16],134:[2,16],135:[2,16],136:[2,16],137:[2,16],138:[2,16],139:[2,16]},{1:[2,17],6:[2,17],25:[2,17],26:[2,17],49:[2,17],54:[2,17],57:[2,17],73:[2,17],78:[2,17],86:[2,17],91:[2,17],93:[2,17],102:[2,17],104:[2,17],105:[2,17],106:[2,17],110:[2,17],118:[2,17],126:[2,17],129:[2,17],130:[2,17],133:[2,17],134:[2,17],135:[2,17],136:[2,17],137:[2,17],138:[2,17],139:[2,17]},{1:[2,18],6:[2,18],25:[2,18],26:[2,18],49:[2,18],54:[2,18],57:[2,18],73:[2,18],78:[2,18],86:[2,18],91:[2,18],93:[2,18],102:[2,18],104:[2,18],105:[2,18],106:[2,18],110:[2,18],118:[2,18],126:[2,18],129:[2,18],130:[2,18],133:[2,18],134:[2,18],135:[2,18],136:[2,18],137:[2,18],138:[2,18],139:[2,18]},{1:[2,19],6:[2,19],25:[2,19],26:[2,19],49:[2,19],54:[2,19],57:[2,19],73:[2,19],78:[2,19],86:[2,19],91:[2,19],93:[2,19],102:[2,19],104:[2,19],105:[2,19],106:[2,19],110:[2,19],118:[2,19],126:[2,19],129:[2,19],130:[2,19],133:[2,19],134:[2,19],135:[2,19],136:[2,19],137:[2,19],138:[2,19],139:[2,19]},{1:[2,20],6:[2,20],25:[2,20],26:[2,20],49:[2,20],54:[2,20],57:[2,20],73:[2,20],78:[2,20],86:[2,20],91:[2,20],93:[2,20],102:[2,20],104:[2,20],105:[2,20],106:[2,20],110:[2,20],118:[2,20],126:[2,20],129:[2,20],130:[2,20],133:[2,20],134:[2,20],135:[2,20],136:[2,20],137:[2,20],138:[2,20],139:[2,20]},{1:[2,21],6:[2,21],25:[2,21],26:[2,21],49:[2,21],54:[2,21],57:[2,21],73:[2,21],78:[2,21],86:[2,21],91:[2,21],93:[2,21],102:[2,21],104:[2,21],105:[2,21],106:[2,21],110:[2,21],118:[2,21],126:[2,21],129:[2,21],130:[2,21],133:[2,21],134:[2,21],135:[2,21],136:[2,21],137:[2,21],138:[2,21],139:[2,21]},{1:[2,22],6:[2,22],25:[2,22],26:[2,22],49:[2,22],54:[2,22],57:[2,22],73:[2,22],78:[2,22],86:[2,22],91:[2,22],93:[2,22],102:[2,22],104:[2,22],105:[2,22],106:[2,22],110:[2,22],118:[2,22],126:[2,22],129:[2,22],130:[2,22],133:[2,22],134:[2,22],135:[2,22],136:[2,22],137:[2,22],138:[2,22],139:[2,22]},{1:[2,8],6:[2,8],26:[2,8],102:[2,8],104:[2,8],106:[2,8],110:[2,8],126:[2,8]},{1:[2,9],6:[2,9],26:[2,9],102:[2,9],104:[2,9],106:[2,9],110:[2,9],126:[2,9]},{1:[2,10],6:[2,10],26:[2,10],102:[2,10],104:[2,10],106:[2,10],110:[2,10],126:[2,10]},{1:[2,75],6:[2,75],25:[2,75],26:[2,75],40:[1,101],49:[2,75],54:[2,75],57:[2,75],66:[2,75],67:[2,75],68:[2,75],69:[2,75],71:[2,75],73:[2,75],74:[2,75],78:[2,75],84:[2,75],85:[2,75],86:[2,75],91:[2,75],93:[2,75],102:[2,75],104:[2,75],105:[2,75],106:[2,75],110:[2,75],118:[2,75],126:[2,75],129:[2,75],130:[2,75],133:[2,75],134:[2,75],135:[2,75],136:[2,75],137:[2,75],138:[2,75],139:[2,75]},{1:[2,76],6:[2,76],25:[2,76],26:[2,76],49:[2,76],54:[2,76],57:[2,76],66:[2,76],67:[2,76],68:[2,76],69:[2,76],71:[2,76],73:[2,76],74:[2,76],78:[2,76],84:[2,76],85:[2,76],86:[2,76],91:[2,76],93:[2,76],102:[2,76],104:[2,76],105:[2,76],106:[2,76],110:[2,76],118:[2,76],126:[2,76],129:[2,76],130:[2,76],133:[2,76],134:[2,76],135:[2,76],136:[2,76],137:[2,76],138:[2,76],139:[2,76]},{1:[2,77],6:[2,77],25:[2,77],26:[2,77],49:[2,77],54:[2,77],57:[2,77],66:[2,77],67:[2,77],68:[2,77],69:[2,77],71:[2,77],73:[2,77],74:[2,77],78:[2,77],84:[2,77],85:[2,77],86:[2,77],91:[2,77],93:[2,77],102:[2,77],104:[2,77],105:[2,77],106:[2,77],110:[2,77],118:[2,77],126:[2,77],129:[2,77],130:[2,77],133:[2,77],134:[2,77],135:[2,77],136:[2,77],137:[2,77],138:[2,77],139:[2,77]},{1:[2,78],6:[2,78],25:[2,78],26:[2,78],49:[2,78],54:[2,78],57:[2,78],66:[2,78],67:[2,78],68:[2,78],69:[2,78],71:[2,78],73:[2,78],74:[2,78],78:[2,78],84:[2,78],85:[2,78],86:[2,78],91:[2,78],93:[2,78],102:[2,78],104:[2,78],105:[2,78],106:[2,78],110:[2,78],118:[2,78],126:[2,78],129:[2,78],130:[2,78],133:[2,78],134:[2,78],135:[2,78],136:[2,78],137:[2,78],138:[2,78],139:[2,78]},{1:[2,79],6:[2,79],25:[2,79],26:[2,79],49:[2,79],54:[2,79],57:[2,79],66:[2,79],67:[2,79],68:[2,79],69:[2,79],71:[2,79],73:[2,79],74:[2,79],78:[2,79],84:[2,79],85:[2,79],86:[2,79],91:[2,79],93:[2,79],102:[2,79],104:[2,79],105:[2,79],106:[2,79],110:[2,79],118:[2,79],126:[2,79],129:[2,79],130:[2,79],133:[2,79],134:[2,79],135:[2,79],136:[2,79],137:[2,79],138:[2,79],139:[2,79]},{1:[2,106],6:[2,106],25:[2,106],26:[2,106],49:[2,106],54:[2,106],57:[2,106],66:[2,106],67:[2,106],68:[2,106],69:[2,106],71:[2,106],73:[2,106],74:[2,106],78:[2,106],82:102,84:[2,106],85:[1,103],86:[2,106],91:[2,106],93:[2,106],102:[2,106],104:[2,106],105:[2,106],106:[2,106],110:[2,106],118:[2,106],126:[2,106],129:[2,106],130:[2,106],133:[2,106],134:[2,106],135:[2,106],136:[2,106],137:[2,106],138:[2,106],139:[2,106]},{6:[2,54],25:[2,54],27:108,28:[1,72],44:109,48:104,49:[2,54],54:[2,54],55:105,56:106,57:[1,107],58:110,59:111,76:[1,69],89:[1,112],90:[1,113]},{24:114,25:[1,115]},{7:116,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:118,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:119,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:120,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{12:122,13:123,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:124,44:62,58:46,59:47,61:121,63:23,64:24,65:25,76:[1,69],83:[1,26],88:[1,57],89:[1,58],90:[1,56],101:[1,55]},{12:122,13:123,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:124,44:62,58:46,59:47,61:125,63:23,64:24,65:25,76:[1,69],83:[1,26],88:[1,57],89:[1,58],90:[1,56],101:[1,55]},{1:[2,72],6:[2,72],25:[2,72],26:[2,72],40:[2,72],49:[2,72],54:[2,72],57:[2,72],66:[2,72],67:[2,72],68:[2,72],69:[2,72],71:[2,72],73:[2,72],74:[2,72],78:[2,72],80:[1,129],84:[2,72],85:[2,72],86:[2,72],91:[2,72],93:[2,72],102:[2,72],104:[2,72],105:[2,72],106:[2,72],110:[2,72],118:[2,72],126:[2,72],129:[2,72],130:[2,72],131:[1,126],132:[1,127],133:[2,72],134:[2,72],135:[2,72],136:[2,72],137:[2,72],138:[2,72],139:[2,72],140:[1,128]},{1:[2,184],6:[2,184],25:[2,184],26:[2,184],49:[2,184],54:[2,184],57:[2,184],73:[2,184],78:[2,184],86:[2,184],91:[2,184],93:[2,184],102:[2,184],104:[2,184],105:[2,184],106:[2,184],110:[2,184],118:[2,184],121:[1,130],126:[2,184],129:[2,184],130:[2,184],133:[2,184],134:[2,184],135:[2,184],136:[2,184],137:[2,184],138:[2,184],139:[2,184]},{24:131,25:[1,115]},{24:132,25:[1,115]},{1:[2,151],6:[2,151],25:[2,151],26:[2,151],49:[2,151],54:[2,151],57:[2,151],73:[2,151],78:[2,151],86:[2,151],91:[2,151],93:[2,151],102:[2,151],104:[2,151],105:[2,151],106:[2,151],110:[2,151],118:[2,151],126:[2,151],129:[2,151],130:[2,151],133:[2,151],134:[2,151],135:[2,151],136:[2,151],137:[2,151],138:[2,151],139:[2,151]},{24:133,25:[1,115]},{7:134,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,135],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,96],6:[2,96],12:122,13:123,24:136,25:[1,115],26:[2,96],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:124,44:62,49:[2,96],54:[2,96],57:[2,96],58:46,59:47,61:138,63:23,64:24,65:25,73:[2,96],76:[1,69],78:[2,96],80:[1,137],83:[1,26],86:[2,96],88:[1,57],89:[1,58],90:[1,56],91:[2,96],93:[2,96],101:[1,55],102:[2,96],104:[2,96],105:[2,96],106:[2,96],110:[2,96],118:[2,96],126:[2,96],129:[2,96],130:[2,96],133:[2,96],134:[2,96],135:[2,96],136:[2,96],137:[2,96],138:[2,96],139:[2,96]},{7:139,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,46],6:[2,46],7:140,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[2,46],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],102:[2,46],103:38,104:[2,46],106:[2,46],107:39,108:[1,66],109:40,110:[2,46],111:68,119:[1,41],124:36,125:[1,63],126:[2,46],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,47],6:[2,47],25:[2,47],26:[2,47],54:[2,47],78:[2,47],102:[2,47],104:[2,47],106:[2,47],110:[2,47],126:[2,47]},{1:[2,73],6:[2,73],25:[2,73],26:[2,73],40:[2,73],49:[2,73],54:[2,73],57:[2,73],66:[2,73],67:[2,73],68:[2,73],69:[2,73],71:[2,73],73:[2,73],74:[2,73],78:[2,73],84:[2,73],85:[2,73],86:[2,73],91:[2,73],93:[2,73],102:[2,73],104:[2,73],105:[2,73],106:[2,73],110:[2,73],118:[2,73],126:[2,73],129:[2,73],130:[2,73],133:[2,73],134:[2,73],135:[2,73],136:[2,73],137:[2,73],138:[2,73],139:[2,73]},{1:[2,74],6:[2,74],25:[2,74],26:[2,74],40:[2,74],49:[2,74],54:[2,74],57:[2,74],66:[2,74],67:[2,74],68:[2,74],69:[2,74],71:[2,74],73:[2,74],74:[2,74],78:[2,74],84:[2,74],85:[2,74],86:[2,74],91:[2,74],93:[2,74],102:[2,74],104:[2,74],105:[2,74],106:[2,74],110:[2,74],118:[2,74],126:[2,74],129:[2,74],130:[2,74],133:[2,74],134:[2,74],135:[2,74],136:[2,74],137:[2,74],138:[2,74],139:[2,74]},{1:[2,28],6:[2,28],25:[2,28],26:[2,28],49:[2,28],54:[2,28],57:[2,28],66:[2,28],67:[2,28],68:[2,28],69:[2,28],71:[2,28],73:[2,28],74:[2,28],78:[2,28],84:[2,28],85:[2,28],86:[2,28],91:[2,28],93:[2,28],102:[2,28],104:[2,28],105:[2,28],106:[2,28],110:[2,28],118:[2,28],126:[2,28],129:[2,28],130:[2,28],133:[2,28],134:[2,28],135:[2,28],136:[2,28],137:[2,28],138:[2,28],139:[2,28]},{1:[2,29],6:[2,29],25:[2,29],26:[2,29],49:[2,29],54:[2,29],57:[2,29],66:[2,29],67:[2,29],68:[2,29],69:[2,29],71:[2,29],73:[2,29],74:[2,29],78:[2,29],84:[2,29],85:[2,29],86:[2,29],91:[2,29],93:[2,29],102:[2,29],104:[2,29],105:[2,29],106:[2,29],110:[2,29],118:[2,29],126:[2,29],129:[2,29],130:[2,29],133:[2,29],134:[2,29],135:[2,29],136:[2,29],137:[2,29],138:[2,29],139:[2,29]},{1:[2,30],6:[2,30],25:[2,30],26:[2,30],49:[2,30],54:[2,30],57:[2,30],66:[2,30],67:[2,30],68:[2,30],69:[2,30],71:[2,30],73:[2,30],74:[2,30],78:[2,30],84:[2,30],85:[2,30],86:[2,30],91:[2,30],93:[2,30],102:[2,30],104:[2,30],105:[2,30],106:[2,30],110:[2,30],118:[2,30],126:[2,30],129:[2,30],130:[2,30],133:[2,30],134:[2,30],135:[2,30],136:[2,30],137:[2,30],138:[2,30],139:[2,30]},{1:[2,31],6:[2,31],25:[2,31],26:[2,31],49:[2,31],54:[2,31],57:[2,31],66:[2,31],67:[2,31],68:[2,31],69:[2,31],71:[2,31],73:[2,31],74:[2,31],78:[2,31],84:[2,31],85:[2,31],86:[2,31],91:[2,31],93:[2,31],102:[2,31],104:[2,31],105:[2,31],106:[2,31],110:[2,31],118:[2,31],126:[2,31],129:[2,31],130:[2,31],133:[2,31],134:[2,31],135:[2,31],136:[2,31],137:[2,31],138:[2,31],139:[2,31]},{1:[2,32],6:[2,32],25:[2,32],26:[2,32],49:[2,32],54:[2,32],57:[2,32],66:[2,32],67:[2,32],68:[2,32],69:[2,32],71:[2,32],73:[2,32],74:[2,32],78:[2,32],84:[2,32],85:[2,32],86:[2,32],91:[2,32],93:[2,32],102:[2,32],104:[2,32],105:[2,32],106:[2,32],110:[2,32],118:[2,32],126:[2,32],129:[2,32],130:[2,32],133:[2,32],134:[2,32],135:[2,32],136:[2,32],137:[2,32],138:[2,32],139:[2,32]},{1:[2,33],6:[2,33],25:[2,33],26:[2,33],49:[2,33],54:[2,33],57:[2,33],66:[2,33],67:[2,33],68:[2,33],69:[2,33],71:[2,33],73:[2,33],74:[2,33],78:[2,33],84:[2,33],85:[2,33],86:[2,33],91:[2,33],93:[2,33],102:[2,33],104:[2,33],105:[2,33],106:[2,33],110:[2,33],118:[2,33],126:[2,33],129:[2,33],130:[2,33],133:[2,33],134:[2,33],135:[2,33],136:[2,33],137:[2,33],138:[2,33],139:[2,33]},{1:[2,34],6:[2,34],25:[2,34],26:[2,34],49:[2,34],54:[2,34],57:[2,34],66:[2,34],67:[2,34],68:[2,34],69:[2,34],71:[2,34],73:[2,34],74:[2,34],78:[2,34],84:[2,34],85:[2,34],86:[2,34],91:[2,34],93:[2,34],102:[2,34],104:[2,34],105:[2,34],106:[2,34],110:[2,34],118:[2,34],126:[2,34],129:[2,34],130:[2,34],133:[2,34],134:[2,34],135:[2,34],136:[2,34],137:[2,34],138:[2,34],139:[2,34]},{4:141,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,142],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:143,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,147],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],87:145,88:[1,57],89:[1,58],90:[1,56],91:[1,144],94:146,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,112],6:[2,112],25:[2,112],26:[2,112],49:[2,112],54:[2,112],57:[2,112],66:[2,112],67:[2,112],68:[2,112],69:[2,112],71:[2,112],73:[2,112],74:[2,112],78:[2,112],84:[2,112],85:[2,112],86:[2,112],91:[2,112],93:[2,112],102:[2,112],104:[2,112],105:[2,112],106:[2,112],110:[2,112],118:[2,112],126:[2,112],129:[2,112],130:[2,112],133:[2,112],134:[2,112],135:[2,112],136:[2,112],137:[2,112],138:[2,112],139:[2,112]},{1:[2,113],6:[2,113],25:[2,113],26:[2,113],27:150,28:[1,72],49:[2,113],54:[2,113],57:[2,113],66:[2,113],67:[2,113],68:[2,113],69:[2,113],71:[2,113],73:[2,113],74:[2,113],78:[2,113],84:[2,113],85:[2,113],86:[2,113],91:[2,113],93:[2,113],102:[2,113],104:[2,113],105:[2,113],106:[2,113],110:[2,113],118:[2,113],126:[2,113],129:[2,113],130:[2,113],133:[2,113],134:[2,113],135:[2,113],136:[2,113],137:[2,113],138:[2,113],139:[2,113]},{25:[2,50]},{25:[2,51]},{1:[2,68],6:[2,68],25:[2,68],26:[2,68],40:[2,68],49:[2,68],54:[2,68],57:[2,68],66:[2,68],67:[2,68],68:[2,68],69:[2,68],71:[2,68],73:[2,68],74:[2,68],78:[2,68],80:[2,68],84:[2,68],85:[2,68],86:[2,68],91:[2,68],93:[2,68],102:[2,68],104:[2,68],105:[2,68],106:[2,68],110:[2,68],118:[2,68],126:[2,68],129:[2,68],130:[2,68],131:[2,68],132:[2,68],133:[2,68],134:[2,68],135:[2,68],136:[2,68],137:[2,68],138:[2,68],139:[2,68],140:[2,68]},{1:[2,71],6:[2,71],25:[2,71],26:[2,71],40:[2,71],49:[2,71],54:[2,71],57:[2,71],66:[2,71],67:[2,71],68:[2,71],69:[2,71],71:[2,71],73:[2,71],74:[2,71],78:[2,71],80:[2,71],84:[2,71],85:[2,71],86:[2,71],91:[2,71],93:[2,71],102:[2,71],104:[2,71],105:[2,71],106:[2,71],110:[2,71],118:[2,71],126:[2,71],129:[2,71],130:[2,71],131:[2,71],132:[2,71],133:[2,71],134:[2,71],135:[2,71],136:[2,71],137:[2,71],138:[2,71],139:[2,71],140:[2,71]},{7:151,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:152,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:153,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:155,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,24:154,25:[1,115],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{27:160,28:[1,72],44:161,58:162,59:163,64:156,76:[1,69],89:[1,112],90:[1,56],113:157,114:[1,158],115:159},{112:164,116:[1,165],117:[1,166]},{6:[2,91],10:170,25:[2,91],27:171,28:[1,72],29:172,30:[1,70],31:[1,71],41:168,42:169,44:173,46:[1,45],54:[2,91],77:167,78:[2,91],89:[1,112]},{1:[2,26],6:[2,26],25:[2,26],26:[2,26],43:[2,26],49:[2,26],54:[2,26],57:[2,26],66:[2,26],67:[2,26],68:[2,26],69:[2,26],71:[2,26],73:[2,26],74:[2,26],78:[2,26],84:[2,26],85:[2,26],86:[2,26],91:[2,26],93:[2,26],102:[2,26],104:[2,26],105:[2,26],106:[2,26],110:[2,26],118:[2,26],126:[2,26],129:[2,26],130:[2,26],133:[2,26],134:[2,26],135:[2,26],136:[2,26],137:[2,26],138:[2,26],139:[2,26]},{1:[2,27],6:[2,27],25:[2,27],26:[2,27],43:[2,27],49:[2,27],54:[2,27],57:[2,27],66:[2,27],67:[2,27],68:[2,27],69:[2,27],71:[2,27],73:[2,27],74:[2,27],78:[2,27],84:[2,27],85:[2,27],86:[2,27],91:[2,27],93:[2,27],102:[2,27],104:[2,27],105:[2,27],106:[2,27],110:[2,27],118:[2,27],126:[2,27],129:[2,27],130:[2,27],133:[2,27],134:[2,27],135:[2,27],136:[2,27],137:[2,27],138:[2,27],139:[2,27]},{1:[2,25],6:[2,25],25:[2,25],26:[2,25],40:[2,25],43:[2,25],49:[2,25],54:[2,25],57:[2,25],66:[2,25],67:[2,25],68:[2,25],69:[2,25],71:[2,25],73:[2,25],74:[2,25],78:[2,25],80:[2,25],84:[2,25],85:[2,25],86:[2,25],91:[2,25],93:[2,25],102:[2,25],104:[2,25],105:[2,25],106:[2,25],110:[2,25],116:[2,25],117:[2,25],118:[2,25],126:[2,25],129:[2,25],130:[2,25],131:[2,25],132:[2,25],133:[2,25],134:[2,25],135:[2,25],136:[2,25],137:[2,25],138:[2,25],139:[2,25],140:[2,25]},{1:[2,5],5:174,6:[2,5],7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[2,5],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],102:[2,5],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,196],6:[2,196],25:[2,196],26:[2,196],49:[2,196],54:[2,196],57:[2,196],73:[2,196],78:[2,196],86:[2,196],91:[2,196],93:[2,196],102:[2,196],104:[2,196],105:[2,196],106:[2,196],110:[2,196],118:[2,196],126:[2,196],129:[2,196],130:[2,196],133:[2,196],134:[2,196],135:[2,196],136:[2,196],137:[2,196],138:[2,196],139:[2,196]},{7:175,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:176,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:177,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:178,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:179,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:180,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:181,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:182,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:183,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,150],6:[2,150],25:[2,150],26:[2,150],49:[2,150],54:[2,150],57:[2,150],73:[2,150],78:[2,150],86:[2,150],91:[2,150],93:[2,150],102:[2,150],104:[2,150],105:[2,150],106:[2,150],110:[2,150],118:[2,150],126:[2,150],129:[2,150],130:[2,150],133:[2,150],134:[2,150],135:[2,150],136:[2,150],137:[2,150],138:[2,150],139:[2,150]},{1:[2,155],6:[2,155],25:[2,155],26:[2,155],49:[2,155],54:[2,155],57:[2,155],73:[2,155],78:[2,155],86:[2,155],91:[2,155],93:[2,155],102:[2,155],104:[2,155],105:[2,155],106:[2,155],110:[2,155],118:[2,155],126:[2,155],129:[2,155],130:[2,155],133:[2,155],134:[2,155],135:[2,155],136:[2,155],137:[2,155],138:[2,155],139:[2,155]},{7:184,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,149],6:[2,149],25:[2,149],26:[2,149],49:[2,149],54:[2,149],57:[2,149],73:[2,149],78:[2,149],86:[2,149],91:[2,149],93:[2,149],102:[2,149],104:[2,149],105:[2,149],106:[2,149],110:[2,149],118:[2,149],126:[2,149],129:[2,149],130:[2,149],133:[2,149],134:[2,149],135:[2,149],136:[2,149],137:[2,149],138:[2,149],139:[2,149]},{1:[2,154],6:[2,154],25:[2,154],26:[2,154],49:[2,154],54:[2,154],57:[2,154],73:[2,154],78:[2,154],86:[2,154],91:[2,154],93:[2,154],102:[2,154],104:[2,154],105:[2,154],106:[2,154],110:[2,154],118:[2,154],126:[2,154],129:[2,154],130:[2,154],133:[2,154],134:[2,154],135:[2,154],136:[2,154],137:[2,154],138:[2,154],139:[2,154]},{82:185,85:[1,103]},{1:[2,69],6:[2,69],25:[2,69],26:[2,69],40:[2,69],49:[2,69],54:[2,69],57:[2,69],66:[2,69],67:[2,69],68:[2,69],69:[2,69],71:[2,69],73:[2,69],74:[2,69],78:[2,69],80:[2,69],84:[2,69],85:[2,69],86:[2,69],91:[2,69],93:[2,69],102:[2,69],104:[2,69],105:[2,69],106:[2,69],110:[2,69],118:[2,69],126:[2,69],129:[2,69],130:[2,69],131:[2,69],132:[2,69],133:[2,69],134:[2,69],135:[2,69],136:[2,69],137:[2,69],138:[2,69],139:[2,69],140:[2,69]},{85:[2,109]},{27:186,28:[1,72]},{27:187,28:[1,72]},{1:[2,84],6:[2,84],25:[2,84],26:[2,84],27:188,28:[1,72],40:[2,84],49:[2,84],54:[2,84],57:[2,84],66:[2,84],67:[2,84],68:[2,84],69:[2,84],71:[2,84],73:[2,84],74:[2,84],78:[2,84],80:[2,84],84:[2,84],85:[2,84],86:[2,84],91:[2,84],93:[2,84],102:[2,84],104:[2,84],105:[2,84],106:[2,84],110:[2,84],118:[2,84],126:[2,84],129:[2,84],130:[2,84],131:[2,84],132:[2,84],133:[2,84],134:[2,84],135:[2,84],136:[2,84],137:[2,84],138:[2,84],139:[2,84],140:[2,84]},{27:189,28:[1,72]},{1:[2,85],6:[2,85],25:[2,85],26:[2,85],40:[2,85],49:[2,85],54:[2,85],57:[2,85],66:[2,85],67:[2,85],68:[2,85],69:[2,85],71:[2,85],73:[2,85],74:[2,85],78:[2,85],80:[2,85],84:[2,85],85:[2,85],86:[2,85],91:[2,85],93:[2,85],102:[2,85],104:[2,85],105:[2,85],106:[2,85],110:[2,85],118:[2,85],126:[2,85],129:[2,85],130:[2,85],131:[2,85],132:[2,85],133:[2,85],134:[2,85],135:[2,85],136:[2,85],137:[2,85],138:[2,85],139:[2,85],140:[2,85]},{7:191,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,195],58:46,59:47,61:35,63:23,64:24,65:25,72:190,75:192,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],92:193,93:[1,194],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{70:196,71:[1,97],74:[1,98]},{82:197,85:[1,103]},{1:[2,70],6:[2,70],25:[2,70],26:[2,70],40:[2,70],49:[2,70],54:[2,70],57:[2,70],66:[2,70],67:[2,70],68:[2,70],69:[2,70],71:[2,70],73:[2,70],74:[2,70],78:[2,70],80:[2,70],84:[2,70],85:[2,70],86:[2,70],91:[2,70],93:[2,70],102:[2,70],104:[2,70],105:[2,70],106:[2,70],110:[2,70],118:[2,70],126:[2,70],129:[2,70],130:[2,70],131:[2,70],132:[2,70],133:[2,70],134:[2,70],135:[2,70],136:[2,70],137:[2,70],138:[2,70],139:[2,70],140:[2,70]},{6:[1,199],7:198,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,200],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,107],6:[2,107],25:[2,107],26:[2,107],49:[2,107],54:[2,107],57:[2,107],66:[2,107],67:[2,107],68:[2,107],69:[2,107],71:[2,107],73:[2,107],74:[2,107],78:[2,107],84:[2,107],85:[2,107],86:[2,107],91:[2,107],93:[2,107],102:[2,107],104:[2,107],105:[2,107],106:[2,107],110:[2,107],118:[2,107],126:[2,107],129:[2,107],130:[2,107],133:[2,107],134:[2,107],135:[2,107],136:[2,107],137:[2,107],138:[2,107],139:[2,107]},{7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,147],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],86:[1,201],87:202,88:[1,57],89:[1,58],90:[1,56],94:146,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,52],25:[2,52],49:[1,204],53:206,54:[1,205]},{6:[2,55],25:[2,55],26:[2,55],49:[2,55],54:[2,55]},{6:[2,59],25:[2,59],26:[2,59],40:[1,208],49:[2,59],54:[2,59],57:[1,207]},{6:[2,62],25:[2,62],26:[2,62],49:[2,62],54:[2,62]},{6:[2,63],25:[2,63],26:[2,63],40:[2,63],49:[2,63],54:[2,63],57:[2,63]},{6:[2,64],25:[2,64],26:[2,64],40:[2,64],49:[2,64],54:[2,64],57:[2,64]},{6:[2,65],25:[2,65],26:[2,65],40:[2,65],49:[2,65],54:[2,65],57:[2,65]},{6:[2,66],25:[2,66],26:[2,66],40:[2,66],49:[2,66],54:[2,66],57:[2,66]},{27:150,28:[1,72]},{7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,147],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],87:145,88:[1,57],89:[1,58],90:[1,56],91:[1,144],94:146,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,49],6:[2,49],25:[2,49],26:[2,49],49:[2,49],54:[2,49],57:[2,49],73:[2,49],78:[2,49],86:[2,49],91:[2,49],93:[2,49],102:[2,49],104:[2,49],105:[2,49],106:[2,49],110:[2,49],118:[2,49],126:[2,49],129:[2,49],130:[2,49],133:[2,49],134:[2,49],135:[2,49],136:[2,49],137:[2,49],138:[2,49],139:[2,49]},{4:210,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,26:[1,209],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,188],6:[2,188],25:[2,188],26:[2,188],49:[2,188],54:[2,188],57:[2,188],73:[2,188],78:[2,188],86:[2,188],91:[2,188],93:[2,188],102:[2,188],103:84,104:[2,188],105:[2,188],106:[2,188],109:85,110:[2,188],111:68,118:[2,188],126:[2,188],129:[2,188],130:[2,188],133:[1,74],134:[2,188],135:[2,188],136:[2,188],137:[2,188],138:[2,188],139:[2,188]},{103:87,104:[1,64],106:[1,65],109:88,110:[1,67],111:68,126:[1,86]},{1:[2,189],6:[2,189],25:[2,189],26:[2,189],49:[2,189],54:[2,189],57:[2,189],73:[2,189],78:[2,189],86:[2,189],91:[2,189],93:[2,189],102:[2,189],103:84,104:[2,189],105:[2,189],106:[2,189],109:85,110:[2,189],111:68,118:[2,189],126:[2,189],129:[2,189],130:[2,189],133:[1,74],134:[2,189],135:[1,78],136:[2,189],137:[2,189],138:[2,189],139:[2,189]},{1:[2,190],6:[2,190],25:[2,190],26:[2,190],49:[2,190],54:[2,190],57:[2,190],73:[2,190],78:[2,190],86:[2,190],91:[2,190],93:[2,190],102:[2,190],103:84,104:[2,190],105:[2,190],106:[2,190],109:85,110:[2,190],111:68,118:[2,190],126:[2,190],129:[2,190],130:[2,190],133:[1,74],134:[2,190],135:[1,78],136:[2,190],137:[2,190],138:[2,190],139:[2,190]},{1:[2,191],6:[2,191],25:[2,191],26:[2,191],49:[2,191],54:[2,191],57:[2,191],73:[2,191],78:[2,191],86:[2,191],91:[2,191],93:[2,191],102:[2,191],103:84,104:[2,191],105:[2,191],106:[2,191],109:85,110:[2,191],111:68,118:[2,191],126:[2,191],129:[2,191],130:[2,191],133:[1,74],134:[2,191],135:[1,78],136:[2,191],137:[2,191],138:[2,191],139:[2,191]},{1:[2,192],6:[2,192],25:[2,192],26:[2,192],49:[2,192],54:[2,192],57:[2,192],66:[2,72],67:[2,72],68:[2,72],69:[2,72],71:[2,72],73:[2,192],74:[2,72],78:[2,192],84:[2,72],85:[2,72],86:[2,192],91:[2,192],93:[2,192],102:[2,192],104:[2,192],105:[2,192],106:[2,192],110:[2,192],118:[2,192],126:[2,192],129:[2,192],130:[2,192],133:[2,192],134:[2,192],135:[2,192],136:[2,192],137:[2,192],138:[2,192],139:[2,192]},{62:90,66:[1,92],67:[1,93],68:[1,94],69:[1,95],70:96,71:[1,97],74:[1,98],81:89,84:[1,91],85:[2,108]},{62:100,66:[1,92],67:[1,93],68:[1,94],69:[1,95],70:96,71:[1,97],74:[1,98],81:99,84:[1,91],85:[2,108]},{66:[2,75],67:[2,75],68:[2,75],69:[2,75],71:[2,75],74:[2,75],84:[2,75],85:[2,75]},{1:[2,193],6:[2,193],25:[2,193],26:[2,193],49:[2,193],54:[2,193],57:[2,193],66:[2,72],67:[2,72],68:[2,72],69:[2,72],71:[2,72],73:[2,193],74:[2,72],78:[2,193],84:[2,72],85:[2,72],86:[2,193],91:[2,193],93:[2,193],102:[2,193],104:[2,193],105:[2,193],106:[2,193],110:[2,193],118:[2,193],126:[2,193],129:[2,193],130:[2,193],133:[2,193],134:[2,193],135:[2,193],136:[2,193],137:[2,193],138:[2,193],139:[2,193]},{1:[2,194],6:[2,194],25:[2,194],26:[2,194],49:[2,194],54:[2,194],57:[2,194],73:[2,194],78:[2,194],86:[2,194],91:[2,194],93:[2,194],102:[2,194],104:[2,194],105:[2,194],106:[2,194],110:[2,194],118:[2,194],126:[2,194],129:[2,194],130:[2,194],133:[2,194],134:[2,194],135:[2,194],136:[2,194],137:[2,194],138:[2,194],139:[2,194]},{1:[2,195],6:[2,195],25:[2,195],26:[2,195],49:[2,195],54:[2,195],57:[2,195],73:[2,195],78:[2,195],86:[2,195],91:[2,195],93:[2,195],102:[2,195],104:[2,195],105:[2,195],106:[2,195],110:[2,195],118:[2,195],126:[2,195],129:[2,195],130:[2,195],133:[2,195],134:[2,195],135:[2,195],136:[2,195],137:[2,195],138:[2,195],139:[2,195]},{6:[1,213],7:211,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,212],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:214,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{24:215,25:[1,115],125:[1,216]},{1:[2,134],6:[2,134],25:[2,134],26:[2,134],49:[2,134],54:[2,134],57:[2,134],73:[2,134],78:[2,134],86:[2,134],91:[2,134],93:[2,134],97:217,98:[1,218],99:[1,219],102:[2,134],104:[2,134],105:[2,134],106:[2,134],110:[2,134],118:[2,134],126:[2,134],129:[2,134],130:[2,134],133:[2,134],134:[2,134],135:[2,134],136:[2,134],137:[2,134],138:[2,134],139:[2,134]},{1:[2,148],6:[2,148],25:[2,148],26:[2,148],49:[2,148],54:[2,148],57:[2,148],73:[2,148],78:[2,148],86:[2,148],91:[2,148],93:[2,148],102:[2,148],104:[2,148],105:[2,148],106:[2,148],110:[2,148],118:[2,148],126:[2,148],129:[2,148],130:[2,148],133:[2,148],134:[2,148],135:[2,148],136:[2,148],137:[2,148],138:[2,148],139:[2,148]},{1:[2,156],6:[2,156],25:[2,156],26:[2,156],49:[2,156],54:[2,156],57:[2,156],73:[2,156],78:[2,156],86:[2,156],91:[2,156],93:[2,156],102:[2,156],104:[2,156],105:[2,156],106:[2,156],110:[2,156],118:[2,156],126:[2,156],129:[2,156],130:[2,156],133:[2,156],134:[2,156],135:[2,156],136:[2,156],137:[2,156],138:[2,156],139:[2,156]},{25:[1,220],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{120:221,122:222,123:[1,223]},{1:[2,97],6:[2,97],25:[2,97],26:[2,97],49:[2,97],54:[2,97],57:[2,97],73:[2,97],78:[2,97],86:[2,97],91:[2,97],93:[2,97],102:[2,97],104:[2,97],105:[2,97],106:[2,97],110:[2,97],118:[2,97],126:[2,97],129:[2,97],130:[2,97],133:[2,97],134:[2,97],135:[2,97],136:[2,97],137:[2,97],138:[2,97],139:[2,97]},{7:224,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,100],6:[2,100],24:225,25:[1,115],26:[2,100],49:[2,100],54:[2,100],57:[2,100],66:[2,72],67:[2,72],68:[2,72],69:[2,72],71:[2,72],73:[2,100],74:[2,72],78:[2,100],80:[1,226],84:[2,72],85:[2,72],86:[2,100],91:[2,100],93:[2,100],102:[2,100],104:[2,100],105:[2,100],106:[2,100],110:[2,100],118:[2,100],126:[2,100],129:[2,100],130:[2,100],133:[2,100],134:[2,100],135:[2,100],136:[2,100],137:[2,100],138:[2,100],139:[2,100]},{1:[2,141],6:[2,141],25:[2,141],26:[2,141],49:[2,141],54:[2,141],57:[2,141],73:[2,141],78:[2,141],86:[2,141],91:[2,141],93:[2,141],102:[2,141],103:84,104:[2,141],105:[2,141],106:[2,141],109:85,110:[2,141],111:68,118:[2,141],126:[2,141],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,45],6:[2,45],26:[2,45],102:[2,45],103:84,104:[2,45],106:[2,45],109:85,110:[2,45],111:68,126:[2,45],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[1,73],102:[1,227]},{4:228,5:3,7:4,8:5,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,129],25:[2,129],54:[2,129],57:[1,230],91:[2,129],92:229,93:[1,194],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,115],6:[2,115],25:[2,115],26:[2,115],40:[2,115],49:[2,115],54:[2,115],57:[2,115],66:[2,115],67:[2,115],68:[2,115],69:[2,115],71:[2,115],73:[2,115],74:[2,115],78:[2,115],84:[2,115],85:[2,115],86:[2,115],91:[2,115],93:[2,115],102:[2,115],104:[2,115],105:[2,115],106:[2,115],110:[2,115],116:[2,115],117:[2,115],118:[2,115],126:[2,115],129:[2,115],130:[2,115],133:[2,115],134:[2,115],135:[2,115],136:[2,115],137:[2,115],138:[2,115],139:[2,115]},{6:[2,52],25:[2,52],53:231,54:[1,232],91:[2,52]},{6:[2,124],25:[2,124],26:[2,124],54:[2,124],86:[2,124],91:[2,124]},{7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,147],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],87:233,88:[1,57],89:[1,58],90:[1,56],94:146,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,130],25:[2,130],26:[2,130],54:[2,130],86:[2,130],91:[2,130]},{6:[2,131],25:[2,131],26:[2,131],54:[2,131],86:[2,131],91:[2,131]},{1:[2,114],6:[2,114],25:[2,114],26:[2,114],40:[2,114],43:[2,114],49:[2,114],54:[2,114],57:[2,114],66:[2,114],67:[2,114],68:[2,114],69:[2,114],71:[2,114],73:[2,114],74:[2,114],78:[2,114],80:[2,114],84:[2,114],85:[2,114],86:[2,114],91:[2,114],93:[2,114],102:[2,114],104:[2,114],105:[2,114],106:[2,114],110:[2,114],116:[2,114],117:[2,114],118:[2,114],126:[2,114],129:[2,114],130:[2,114],131:[2,114],132:[2,114],133:[2,114],134:[2,114],135:[2,114],136:[2,114],137:[2,114],138:[2,114],139:[2,114],140:[2,114]},{24:234,25:[1,115],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,144],6:[2,144],25:[2,144],26:[2,144],49:[2,144],54:[2,144],57:[2,144],73:[2,144],78:[2,144],86:[2,144],91:[2,144],93:[2,144],102:[2,144],103:84,104:[1,64],105:[1,235],106:[1,65],109:85,110:[1,67],111:68,118:[2,144],126:[2,144],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,146],6:[2,146],25:[2,146],26:[2,146],49:[2,146],54:[2,146],57:[2,146],73:[2,146],78:[2,146],86:[2,146],91:[2,146],93:[2,146],102:[2,146],103:84,104:[1,64],105:[1,236],106:[1,65],109:85,110:[1,67],111:68,118:[2,146],126:[2,146],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,152],6:[2,152],25:[2,152],26:[2,152],49:[2,152],54:[2,152],57:[2,152],73:[2,152],78:[2,152],86:[2,152],91:[2,152],93:[2,152],102:[2,152],104:[2,152],105:[2,152],106:[2,152],110:[2,152],118:[2,152],126:[2,152],129:[2,152],130:[2,152],133:[2,152],134:[2,152],135:[2,152],136:[2,152],137:[2,152],138:[2,152],139:[2,152]},{1:[2,153],6:[2,153],25:[2,153],26:[2,153],49:[2,153],54:[2,153],57:[2,153],73:[2,153],78:[2,153],86:[2,153],91:[2,153],93:[2,153],102:[2,153],103:84,104:[1,64],105:[2,153],106:[1,65],109:85,110:[1,67],111:68,118:[2,153],126:[2,153],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,157],6:[2,157],25:[2,157],26:[2,157],49:[2,157],54:[2,157],57:[2,157],73:[2,157],78:[2,157],86:[2,157],91:[2,157],93:[2,157],102:[2,157],104:[2,157],105:[2,157],106:[2,157],110:[2,157],118:[2,157],126:[2,157],129:[2,157],130:[2,157],133:[2,157],134:[2,157],135:[2,157],136:[2,157],137:[2,157],138:[2,157],139:[2,157]},{116:[2,159],117:[2,159]},{27:160,28:[1,72],44:161,58:162,59:163,76:[1,69],89:[1,112],90:[1,113],113:237,115:159},{54:[1,238],116:[2,165],117:[2,165]},{54:[2,161],116:[2,161],117:[2,161]},{54:[2,162],116:[2,162],117:[2,162]},{54:[2,163],116:[2,163],117:[2,163]},{54:[2,164],116:[2,164],117:[2,164]},{1:[2,158],6:[2,158],25:[2,158],26:[2,158],49:[2,158],54:[2,158],57:[2,158],73:[2,158],78:[2,158],86:[2,158],91:[2,158],93:[2,158],102:[2,158],104:[2,158],105:[2,158],106:[2,158],110:[2,158],118:[2,158],126:[2,158],129:[2,158],130:[2,158],133:[2,158],134:[2,158],135:[2,158],136:[2,158],137:[2,158],138:[2,158],139:[2,158]},{7:239,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:240,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,52],25:[2,52],53:241,54:[1,242],78:[2,52]},{6:[2,92],25:[2,92],26:[2,92],54:[2,92],78:[2,92]},{6:[2,38],25:[2,38],26:[2,38],43:[1,243],54:[2,38],78:[2,38]},{6:[2,41],25:[2,41],26:[2,41],54:[2,41],78:[2,41]},{6:[2,42],25:[2,42],26:[2,42],43:[2,42],54:[2,42],78:[2,42]},{6:[2,43],25:[2,43],26:[2,43],43:[2,43],54:[2,43],78:[2,43]},{6:[2,44],25:[2,44],26:[2,44],43:[2,44],54:[2,44],78:[2,44]},{1:[2,4],6:[2,4],26:[2,4],102:[2,4]},{1:[2,197],6:[2,197],25:[2,197],26:[2,197],49:[2,197],54:[2,197],57:[2,197],73:[2,197],78:[2,197],86:[2,197],91:[2,197],93:[2,197],102:[2,197],103:84,104:[2,197],105:[2,197],106:[2,197],109:85,110:[2,197],111:68,118:[2,197],126:[2,197],129:[2,197],130:[2,197],133:[1,74],134:[1,77],135:[1,78],136:[2,197],137:[2,197],138:[2,197],139:[2,197]},{1:[2,198],6:[2,198],25:[2,198],26:[2,198],49:[2,198],54:[2,198],57:[2,198],73:[2,198],78:[2,198],86:[2,198],91:[2,198],93:[2,198],102:[2,198],103:84,104:[2,198],105:[2,198],106:[2,198],109:85,110:[2,198],111:68,118:[2,198],126:[2,198],129:[2,198],130:[2,198],133:[1,74],134:[1,77],135:[1,78],136:[2,198],137:[2,198],138:[2,198],139:[2,198]},{1:[2,199],6:[2,199],25:[2,199],26:[2,199],49:[2,199],54:[2,199],57:[2,199],73:[2,199],78:[2,199],86:[2,199],91:[2,199],93:[2,199],102:[2,199],103:84,104:[2,199],105:[2,199],106:[2,199],109:85,110:[2,199],111:68,118:[2,199],126:[2,199],129:[2,199],130:[2,199],133:[1,74],134:[2,199],135:[1,78],136:[2,199],137:[2,199],138:[2,199],139:[2,199]},{1:[2,200],6:[2,200],25:[2,200],26:[2,200],49:[2,200],54:[2,200],57:[2,200],73:[2,200],78:[2,200],86:[2,200],91:[2,200],93:[2,200],102:[2,200],103:84,104:[2,200],105:[2,200],106:[2,200],109:85,110:[2,200],111:68,118:[2,200],126:[2,200],129:[2,200],130:[2,200],133:[1,74],134:[2,200],135:[1,78],136:[2,200],137:[2,200],138:[2,200],139:[2,200]},{1:[2,201],6:[2,201],25:[2,201],26:[2,201],49:[2,201],54:[2,201],57:[2,201],73:[2,201],78:[2,201],86:[2,201],91:[2,201],93:[2,201],102:[2,201],103:84,104:[2,201],105:[2,201],106:[2,201],109:85,110:[2,201],111:68,118:[2,201],126:[2,201],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[2,201],137:[2,201],138:[2,201],139:[2,201]},{1:[2,202],6:[2,202],25:[2,202],26:[2,202],49:[2,202],54:[2,202],57:[2,202],73:[2,202],78:[2,202],86:[2,202],91:[2,202],93:[2,202],102:[2,202],103:84,104:[2,202],105:[2,202],106:[2,202],109:85,110:[2,202],111:68,118:[2,202],126:[2,202],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[2,202],138:[2,202],139:[1,82]},{1:[2,203],6:[2,203],25:[2,203],26:[2,203],49:[2,203],54:[2,203],57:[2,203],73:[2,203],78:[2,203],86:[2,203],91:[2,203],93:[2,203],102:[2,203],103:84,104:[2,203],105:[2,203],106:[2,203],109:85,110:[2,203],111:68,118:[2,203],126:[2,203],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[2,203],139:[1,82]},{1:[2,204],6:[2,204],25:[2,204],26:[2,204],49:[2,204],54:[2,204],57:[2,204],73:[2,204],78:[2,204],86:[2,204],91:[2,204],93:[2,204],102:[2,204],103:84,104:[2,204],105:[2,204],106:[2,204],109:85,110:[2,204],111:68,118:[2,204],126:[2,204],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[2,204],138:[2,204],139:[2,204]},{1:[2,187],6:[2,187],25:[2,187],26:[2,187],49:[2,187],54:[2,187],57:[2,187],73:[2,187],78:[2,187],86:[2,187],91:[2,187],93:[2,187],102:[2,187],103:84,104:[1,64],105:[2,187],106:[1,65],109:85,110:[1,67],111:68,118:[2,187],126:[2,187],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,186],6:[2,186],25:[2,186],26:[2,186],49:[2,186],54:[2,186],57:[2,186],73:[2,186],78:[2,186],86:[2,186],91:[2,186],93:[2,186],102:[2,186],103:84,104:[1,64],105:[2,186],106:[1,65],109:85,110:[1,67],111:68,118:[2,186],126:[2,186],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,104],6:[2,104],25:[2,104],26:[2,104],49:[2,104],54:[2,104],57:[2,104],66:[2,104],67:[2,104],68:[2,104],69:[2,104],71:[2,104],73:[2,104],74:[2,104],78:[2,104],84:[2,104],85:[2,104],86:[2,104],91:[2,104],93:[2,104],102:[2,104],104:[2,104],105:[2,104],106:[2,104],110:[2,104],118:[2,104],126:[2,104],129:[2,104],130:[2,104],133:[2,104],134:[2,104],135:[2,104],136:[2,104],137:[2,104],138:[2,104],139:[2,104]},{1:[2,80],6:[2,80],25:[2,80],26:[2,80],40:[2,80],49:[2,80],54:[2,80],57:[2,80],66:[2,80],67:[2,80],68:[2,80],69:[2,80],71:[2,80],73:[2,80],74:[2,80],78:[2,80],80:[2,80],84:[2,80],85:[2,80],86:[2,80],91:[2,80],93:[2,80],102:[2,80],104:[2,80],105:[2,80],106:[2,80],110:[2,80],118:[2,80],126:[2,80],129:[2,80],130:[2,80],131:[2,80],132:[2,80],133:[2,80],134:[2,80],135:[2,80],136:[2,80],137:[2,80],138:[2,80],139:[2,80],140:[2,80]},{1:[2,81],6:[2,81],25:[2,81],26:[2,81],40:[2,81],49:[2,81],54:[2,81],57:[2,81],66:[2,81],67:[2,81],68:[2,81],69:[2,81],71:[2,81],73:[2,81],74:[2,81],78:[2,81],80:[2,81],84:[2,81],85:[2,81],86:[2,81],91:[2,81],93:[2,81],102:[2,81],104:[2,81],105:[2,81],106:[2,81],110:[2,81],118:[2,81],126:[2,81],129:[2,81],130:[2,81],131:[2,81],132:[2,81],133:[2,81],134:[2,81],135:[2,81],136:[2,81],137:[2,81],138:[2,81],139:[2,81],140:[2,81]},{1:[2,82],6:[2,82],25:[2,82],26:[2,82],40:[2,82],49:[2,82],54:[2,82],57:[2,82],66:[2,82],67:[2,82],68:[2,82],69:[2,82],71:[2,82],73:[2,82],74:[2,82],78:[2,82],80:[2,82],84:[2,82],85:[2,82],86:[2,82],91:[2,82],93:[2,82],102:[2,82],104:[2,82],105:[2,82],106:[2,82],110:[2,82],118:[2,82],126:[2,82],129:[2,82],130:[2,82],131:[2,82],132:[2,82],133:[2,82],134:[2,82],135:[2,82],136:[2,82],137:[2,82],138:[2,82],139:[2,82],140:[2,82]},{1:[2,83],6:[2,83],25:[2,83],26:[2,83],40:[2,83],49:[2,83],54:[2,83],57:[2,83],66:[2,83],67:[2,83],68:[2,83],69:[2,83],71:[2,83],73:[2,83],74:[2,83],78:[2,83],80:[2,83],84:[2,83],85:[2,83],86:[2,83],91:[2,83],93:[2,83],102:[2,83],104:[2,83],105:[2,83],106:[2,83],110:[2,83],118:[2,83],126:[2,83],129:[2,83],130:[2,83],131:[2,83],132:[2,83],133:[2,83],134:[2,83],135:[2,83],136:[2,83],137:[2,83],138:[2,83],139:[2,83],140:[2,83]},{73:[1,244]},{57:[1,195],73:[2,88],92:245,93:[1,194],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{73:[2,89]},{7:246,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,73:[2,123],76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{11:[2,117],28:[2,117],30:[2,117],31:[2,117],33:[2,117],34:[2,117],35:[2,117],36:[2,117],37:[2,117],38:[2,117],45:[2,117],46:[2,117],47:[2,117],51:[2,117],52:[2,117],73:[2,117],76:[2,117],79:[2,117],83:[2,117],88:[2,117],89:[2,117],90:[2,117],96:[2,117],100:[2,117],101:[2,117],104:[2,117],106:[2,117],108:[2,117],110:[2,117],119:[2,117],125:[2,117],127:[2,117],128:[2,117],129:[2,117],130:[2,117],131:[2,117],132:[2,117]},{11:[2,118],28:[2,118],30:[2,118],31:[2,118],33:[2,118],34:[2,118],35:[2,118],36:[2,118],37:[2,118],38:[2,118],45:[2,118],46:[2,118],47:[2,118],51:[2,118],52:[2,118],73:[2,118],76:[2,118],79:[2,118],83:[2,118],88:[2,118],89:[2,118],90:[2,118],96:[2,118],100:[2,118],101:[2,118],104:[2,118],106:[2,118],108:[2,118],110:[2,118],119:[2,118],125:[2,118],127:[2,118],128:[2,118],129:[2,118],130:[2,118],131:[2,118],132:[2,118]},{1:[2,87],6:[2,87],25:[2,87],26:[2,87],40:[2,87],49:[2,87],54:[2,87],57:[2,87],66:[2,87],67:[2,87],68:[2,87],69:[2,87],71:[2,87],73:[2,87],74:[2,87],78:[2,87],80:[2,87],84:[2,87],85:[2,87],86:[2,87],91:[2,87],93:[2,87],102:[2,87],104:[2,87],105:[2,87],106:[2,87],110:[2,87],118:[2,87],126:[2,87],129:[2,87],130:[2,87],131:[2,87],132:[2,87],133:[2,87],134:[2,87],135:[2,87],136:[2,87],137:[2,87],138:[2,87],139:[2,87],140:[2,87]},{1:[2,105],6:[2,105],25:[2,105],26:[2,105],49:[2,105],54:[2,105],57:[2,105],66:[2,105],67:[2,105],68:[2,105],69:[2,105],71:[2,105],73:[2,105],74:[2,105],78:[2,105],84:[2,105],85:[2,105],86:[2,105],91:[2,105],93:[2,105],102:[2,105],104:[2,105],105:[2,105],106:[2,105],110:[2,105],118:[2,105],126:[2,105],129:[2,105],130:[2,105],133:[2,105],134:[2,105],135:[2,105],136:[2,105],137:[2,105],138:[2,105],139:[2,105]},{1:[2,35],6:[2,35],25:[2,35],26:[2,35],49:[2,35],54:[2,35],57:[2,35],73:[2,35],78:[2,35],86:[2,35],91:[2,35],93:[2,35],102:[2,35],103:84,104:[2,35],105:[2,35],106:[2,35],109:85,110:[2,35],111:68,118:[2,35],126:[2,35],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{7:247,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:248,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,110],6:[2,110],25:[2,110],26:[2,110],49:[2,110],54:[2,110],57:[2,110],66:[2,110],67:[2,110],68:[2,110],69:[2,110],71:[2,110],73:[2,110],74:[2,110],78:[2,110],84:[2,110],85:[2,110],86:[2,110],91:[2,110],93:[2,110],102:[2,110],104:[2,110],105:[2,110],106:[2,110],110:[2,110],118:[2,110],126:[2,110],129:[2,110],130:[2,110],133:[2,110],134:[2,110],135:[2,110],136:[2,110],137:[2,110],138:[2,110],139:[2,110]},{6:[2,52],25:[2,52],53:249,54:[1,232],86:[2,52]},{6:[2,129],25:[2,129],26:[2,129],54:[2,129],57:[1,250],86:[2,129],91:[2,129],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{50:251,51:[1,59],52:[1,60]},{6:[2,53],25:[2,53],26:[2,53],27:108,28:[1,72],44:109,55:252,56:106,57:[1,107],58:110,59:111,76:[1,69],89:[1,112],90:[1,113]},{6:[1,253],25:[1,254]},{6:[2,60],25:[2,60],26:[2,60],49:[2,60],54:[2,60]},{7:255,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,23],6:[2,23],25:[2,23],26:[2,23],49:[2,23],54:[2,23],57:[2,23],73:[2,23],78:[2,23],86:[2,23],91:[2,23],93:[2,23],98:[2,23],99:[2,23],102:[2,23],104:[2,23],105:[2,23],106:[2,23],110:[2,23],118:[2,23],121:[2,23],123:[2,23],126:[2,23],129:[2,23],130:[2,23],133:[2,23],134:[2,23],135:[2,23],136:[2,23],137:[2,23],138:[2,23],139:[2,23]},{6:[1,73],26:[1,256]},{1:[2,205],6:[2,205],25:[2,205],26:[2,205],49:[2,205],54:[2,205],57:[2,205],73:[2,205],78:[2,205],86:[2,205],91:[2,205],93:[2,205],102:[2,205],103:84,104:[2,205],105:[2,205],106:[2,205],109:85,110:[2,205],111:68,118:[2,205],126:[2,205],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{7:257,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:258,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,208],6:[2,208],25:[2,208],26:[2,208],49:[2,208],54:[2,208],57:[2,208],73:[2,208],78:[2,208],86:[2,208],91:[2,208],93:[2,208],102:[2,208],103:84,104:[2,208],105:[2,208],106:[2,208],109:85,110:[2,208],111:68,118:[2,208],126:[2,208],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,185],6:[2,185],25:[2,185],26:[2,185],49:[2,185],54:[2,185],57:[2,185],73:[2,185],78:[2,185],86:[2,185],91:[2,185],93:[2,185],102:[2,185],104:[2,185],105:[2,185],106:[2,185],110:[2,185],118:[2,185],126:[2,185],129:[2,185],130:[2,185],133:[2,185],134:[2,185],135:[2,185],136:[2,185],137:[2,185],138:[2,185],139:[2,185]},{7:259,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,135],6:[2,135],25:[2,135],26:[2,135],49:[2,135],54:[2,135],57:[2,135],73:[2,135],78:[2,135],86:[2,135],91:[2,135],93:[2,135],98:[1,260],102:[2,135],104:[2,135],105:[2,135],106:[2,135],110:[2,135],118:[2,135],126:[2,135],129:[2,135],130:[2,135],133:[2,135],134:[2,135],135:[2,135],136:[2,135],137:[2,135],138:[2,135],139:[2,135]},{24:261,25:[1,115]},{24:264,25:[1,115],27:262,28:[1,72],59:263,76:[1,69]},{120:265,122:222,123:[1,223]},{26:[1,266],121:[1,267],122:268,123:[1,223]},{26:[2,178],121:[2,178],123:[2,178]},{7:270,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],95:269,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,98],6:[2,98],24:271,25:[1,115],26:[2,98],49:[2,98],54:[2,98],57:[2,98],73:[2,98],78:[2,98],86:[2,98],91:[2,98],93:[2,98],102:[2,98],103:84,104:[1,64],105:[2,98],106:[1,65],109:85,110:[1,67],111:68,118:[2,98],126:[2,98],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,101],6:[2,101],25:[2,101],26:[2,101],49:[2,101],54:[2,101],57:[2,101],73:[2,101],78:[2,101],86:[2,101],91:[2,101],93:[2,101],102:[2,101],104:[2,101],105:[2,101],106:[2,101],110:[2,101],118:[2,101],126:[2,101],129:[2,101],130:[2,101],133:[2,101],134:[2,101],135:[2,101],136:[2,101],137:[2,101],138:[2,101],139:[2,101]},{7:272,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,142],6:[2,142],25:[2,142],26:[2,142],49:[2,142],54:[2,142],57:[2,142],66:[2,142],67:[2,142],68:[2,142],69:[2,142],71:[2,142],73:[2,142],74:[2,142],78:[2,142],84:[2,142],85:[2,142],86:[2,142],91:[2,142],93:[2,142],102:[2,142],104:[2,142],105:[2,142],106:[2,142],110:[2,142],118:[2,142],126:[2,142],129:[2,142],130:[2,142],133:[2,142],134:[2,142],135:[2,142],136:[2,142],137:[2,142],138:[2,142],139:[2,142]},{6:[1,73],26:[1,273]},{7:274,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,67],11:[2,118],25:[2,67],28:[2,118],30:[2,118],31:[2,118],33:[2,118],34:[2,118],35:[2,118],36:[2,118],37:[2,118],38:[2,118],45:[2,118],46:[2,118],47:[2,118],51:[2,118],52:[2,118],54:[2,67],76:[2,118],79:[2,118],83:[2,118],88:[2,118],89:[2,118],90:[2,118],91:[2,67],96:[2,118],100:[2,118],101:[2,118],104:[2,118],106:[2,118],108:[2,118],110:[2,118],119:[2,118],125:[2,118],127:[2,118],128:[2,118],129:[2,118],130:[2,118],131:[2,118],132:[2,118]},{6:[1,276],25:[1,277],91:[1,275]},{6:[2,53],7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[2,53],26:[2,53],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],86:[2,53],88:[1,57],89:[1,58],90:[1,56],91:[2,53],94:278,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,52],25:[2,52],26:[2,52],53:279,54:[1,232]},{1:[2,182],6:[2,182],25:[2,182],26:[2,182],49:[2,182],54:[2,182],57:[2,182],73:[2,182],78:[2,182],86:[2,182],91:[2,182],93:[2,182],102:[2,182],104:[2,182],105:[2,182],106:[2,182],110:[2,182],118:[2,182],121:[2,182],126:[2,182],129:[2,182],130:[2,182],133:[2,182],134:[2,182],135:[2,182],136:[2,182],137:[2,182],138:[2,182],139:[2,182]},{7:280,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:281,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{116:[2,160],117:[2,160]},{27:160,28:[1,72],44:161,58:162,59:163,76:[1,69],89:[1,112],90:[1,113],115:282},{1:[2,167],6:[2,167],25:[2,167],26:[2,167],49:[2,167],54:[2,167],57:[2,167],73:[2,167],78:[2,167],86:[2,167],91:[2,167],93:[2,167],102:[2,167],103:84,104:[2,167],105:[1,283],106:[2,167],109:85,110:[2,167],111:68,118:[1,284],126:[2,167],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,168],6:[2,168],25:[2,168],26:[2,168],49:[2,168],54:[2,168],57:[2,168],73:[2,168],78:[2,168],86:[2,168],91:[2,168],93:[2,168],102:[2,168],103:84,104:[2,168],105:[1,285],106:[2,168],109:85,110:[2,168],111:68,118:[2,168],126:[2,168],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[1,287],25:[1,288],78:[1,286]},{6:[2,53],10:170,25:[2,53],26:[2,53],27:171,28:[1,72],29:172,30:[1,70],31:[1,71],41:289,42:169,44:173,46:[1,45],78:[2,53],89:[1,112]},{7:290,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,291],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,86],6:[2,86],25:[2,86],26:[2,86],40:[2,86],49:[2,86],54:[2,86],57:[2,86],66:[2,86],67:[2,86],68:[2,86],69:[2,86],71:[2,86],73:[2,86],74:[2,86],78:[2,86],80:[2,86],84:[2,86],85:[2,86],86:[2,86],91:[2,86],93:[2,86],102:[2,86],104:[2,86],105:[2,86],106:[2,86],110:[2,86],118:[2,86],126:[2,86],129:[2,86],130:[2,86],131:[2,86],132:[2,86],133:[2,86],134:[2,86],135:[2,86],136:[2,86],137:[2,86],138:[2,86],139:[2,86],140:[2,86]},{7:292,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,73:[2,121],76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{73:[2,122],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,36],6:[2,36],25:[2,36],26:[2,36],49:[2,36],54:[2,36],57:[2,36],73:[2,36],78:[2,36],86:[2,36],91:[2,36],93:[2,36],102:[2,36],103:84,104:[2,36],105:[2,36],106:[2,36],109:85,110:[2,36],111:68,118:[2,36],126:[2,36],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{26:[1,293],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[1,276],25:[1,277],86:[1,294]},{6:[2,67],25:[2,67],26:[2,67],54:[2,67],86:[2,67],91:[2,67]},{24:295,25:[1,115]},{6:[2,56],25:[2,56],26:[2,56],49:[2,56],54:[2,56]},{27:108,28:[1,72],44:109,55:296,56:106,57:[1,107],58:110,59:111,76:[1,69],89:[1,112],90:[1,113]},{6:[2,54],25:[2,54],26:[2,54],27:108,28:[1,72],44:109,48:297,54:[2,54],55:105,56:106,57:[1,107],58:110,59:111,76:[1,69],89:[1,112],90:[1,113]},{6:[2,61],25:[2,61],26:[2,61],49:[2,61],54:[2,61],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,24],6:[2,24],25:[2,24],26:[2,24],49:[2,24],54:[2,24],57:[2,24],73:[2,24],78:[2,24],86:[2,24],91:[2,24],93:[2,24],98:[2,24],99:[2,24],102:[2,24],104:[2,24],105:[2,24],106:[2,24],110:[2,24],118:[2,24],121:[2,24],123:[2,24],126:[2,24],129:[2,24],130:[2,24],133:[2,24],134:[2,24],135:[2,24],136:[2,24],137:[2,24],138:[2,24],139:[2,24]},{26:[1,298],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,207],6:[2,207],25:[2,207],26:[2,207],49:[2,207],54:[2,207],57:[2,207],73:[2,207],78:[2,207],86:[2,207],91:[2,207],93:[2,207],102:[2,207],103:84,104:[2,207],105:[2,207],106:[2,207],109:85,110:[2,207],111:68,118:[2,207],126:[2,207],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{24:299,25:[1,115],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{24:300,25:[1,115]},{1:[2,136],6:[2,136],25:[2,136],26:[2,136],49:[2,136],54:[2,136],57:[2,136],73:[2,136],78:[2,136],86:[2,136],91:[2,136],93:[2,136],102:[2,136],104:[2,136],105:[2,136],106:[2,136],110:[2,136],118:[2,136],126:[2,136],129:[2,136],130:[2,136],133:[2,136],134:[2,136],135:[2,136],136:[2,136],137:[2,136],138:[2,136],139:[2,136]},{24:301,25:[1,115]},{24:302,25:[1,115]},{1:[2,140],6:[2,140],25:[2,140],26:[2,140],49:[2,140],54:[2,140],57:[2,140],73:[2,140],78:[2,140],86:[2,140],91:[2,140],93:[2,140],98:[2,140],102:[2,140],104:[2,140],105:[2,140],106:[2,140],110:[2,140],118:[2,140],126:[2,140],129:[2,140],130:[2,140],133:[2,140],134:[2,140],135:[2,140],136:[2,140],137:[2,140],138:[2,140],139:[2,140]},{26:[1,303],121:[1,304],122:268,123:[1,223]},{1:[2,176],6:[2,176],25:[2,176],26:[2,176],49:[2,176],54:[2,176],57:[2,176],73:[2,176],78:[2,176],86:[2,176],91:[2,176],93:[2,176],102:[2,176],104:[2,176],105:[2,176],106:[2,176],110:[2,176],118:[2,176],126:[2,176],129:[2,176],130:[2,176],133:[2,176],134:[2,176],135:[2,176],136:[2,176],137:[2,176],138:[2,176],139:[2,176]},{24:305,25:[1,115]},{26:[2,179],121:[2,179],123:[2,179]},{24:306,25:[1,115],54:[1,307]},{25:[2,132],54:[2,132],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,99],6:[2,99],25:[2,99],26:[2,99],49:[2,99],54:[2,99],57:[2,99],73:[2,99],78:[2,99],86:[2,99],91:[2,99],93:[2,99],102:[2,99],104:[2,99],105:[2,99],106:[2,99],110:[2,99],118:[2,99],126:[2,99],129:[2,99],130:[2,99],133:[2,99],134:[2,99],135:[2,99],136:[2,99],137:[2,99],138:[2,99],139:[2,99]},{1:[2,102],6:[2,102],24:308,25:[1,115],26:[2,102],49:[2,102],54:[2,102],57:[2,102],73:[2,102],78:[2,102],86:[2,102],91:[2,102],93:[2,102],102:[2,102],103:84,104:[1,64],105:[2,102],106:[1,65],109:85,110:[1,67],111:68,118:[2,102],126:[2,102],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{102:[1,309]},{91:[1,310],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,116],6:[2,116],25:[2,116],26:[2,116],40:[2,116],49:[2,116],54:[2,116],57:[2,116],66:[2,116],67:[2,116],68:[2,116],69:[2,116],71:[2,116],73:[2,116],74:[2,116],78:[2,116],84:[2,116],85:[2,116],86:[2,116],91:[2,116],93:[2,116],102:[2,116],104:[2,116],105:[2,116],106:[2,116],110:[2,116],116:[2,116],117:[2,116],118:[2,116],126:[2,116],129:[2,116],130:[2,116],133:[2,116],134:[2,116],135:[2,116],136:[2,116],137:[2,116],138:[2,116],139:[2,116]},{7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],94:311,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:203,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,25:[1,147],27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],57:[1,149],58:46,59:47,60:148,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],87:312,88:[1,57],89:[1,58],90:[1,56],94:146,96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[2,125],25:[2,125],26:[2,125],54:[2,125],86:[2,125],91:[2,125]},{6:[1,276],25:[1,277],26:[1,313]},{1:[2,145],6:[2,145],25:[2,145],26:[2,145],49:[2,145],54:[2,145],57:[2,145],73:[2,145],78:[2,145],86:[2,145],91:[2,145],93:[2,145],102:[2,145],103:84,104:[1,64],105:[2,145],106:[1,65],109:85,110:[1,67],111:68,118:[2,145],126:[2,145],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,147],6:[2,147],25:[2,147],26:[2,147],49:[2,147],54:[2,147],57:[2,147],73:[2,147],78:[2,147],86:[2,147],91:[2,147],93:[2,147],102:[2,147],103:84,104:[1,64],105:[2,147],106:[1,65],109:85,110:[1,67],111:68,118:[2,147],126:[2,147],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{116:[2,166],117:[2,166]},{7:314,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:315,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:316,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,90],6:[2,90],25:[2,90],26:[2,90],40:[2,90],49:[2,90],54:[2,90],57:[2,90],66:[2,90],67:[2,90],68:[2,90],69:[2,90],71:[2,90],73:[2,90],74:[2,90],78:[2,90],84:[2,90],85:[2,90],86:[2,90],91:[2,90],93:[2,90],102:[2,90],104:[2,90],105:[2,90],106:[2,90],110:[2,90],116:[2,90],117:[2,90],118:[2,90],126:[2,90],129:[2,90],130:[2,90],133:[2,90],134:[2,90],135:[2,90],136:[2,90],137:[2,90],138:[2,90],139:[2,90]},{10:170,27:171,28:[1,72],29:172,30:[1,70],31:[1,71],41:317,42:169,44:173,46:[1,45],89:[1,112]},{6:[2,91],10:170,25:[2,91],26:[2,91],27:171,28:[1,72],29:172,30:[1,70],31:[1,71],41:168,42:169,44:173,46:[1,45],54:[2,91],77:318,89:[1,112]},{6:[2,93],25:[2,93],26:[2,93],54:[2,93],78:[2,93]},{6:[2,39],25:[2,39],26:[2,39],54:[2,39],78:[2,39],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{7:319,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{73:[2,120],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,37],6:[2,37],25:[2,37],26:[2,37],49:[2,37],54:[2,37],57:[2,37],73:[2,37],78:[2,37],86:[2,37],91:[2,37],93:[2,37],102:[2,37],104:[2,37],105:[2,37],106:[2,37],110:[2,37],118:[2,37],126:[2,37],129:[2,37],130:[2,37],133:[2,37],134:[2,37],135:[2,37],136:[2,37],137:[2,37],138:[2,37],139:[2,37]},{1:[2,111],6:[2,111],25:[2,111],26:[2,111],49:[2,111],54:[2,111],57:[2,111],66:[2,111],67:[2,111],68:[2,111],69:[2,111],71:[2,111],73:[2,111],74:[2,111],78:[2,111],84:[2,111],85:[2,111],86:[2,111],91:[2,111],93:[2,111],102:[2,111],104:[2,111],105:[2,111],106:[2,111],110:[2,111],118:[2,111],126:[2,111],129:[2,111],130:[2,111],133:[2,111],134:[2,111],135:[2,111],136:[2,111],137:[2,111],138:[2,111],139:[2,111]},{1:[2,48],6:[2,48],25:[2,48],26:[2,48],49:[2,48],54:[2,48],57:[2,48],73:[2,48],78:[2,48],86:[2,48],91:[2,48],93:[2,48],102:[2,48],104:[2,48],105:[2,48],106:[2,48],110:[2,48],118:[2,48],126:[2,48],129:[2,48],130:[2,48],133:[2,48],134:[2,48],135:[2,48],136:[2,48],137:[2,48],138:[2,48],139:[2,48]},{6:[2,57],25:[2,57],26:[2,57],49:[2,57],54:[2,57]},{6:[2,52],25:[2,52],26:[2,52],53:320,54:[1,205]},{1:[2,206],6:[2,206],25:[2,206],26:[2,206],49:[2,206],54:[2,206],57:[2,206],73:[2,206],78:[2,206],86:[2,206],91:[2,206],93:[2,206],102:[2,206],104:[2,206],105:[2,206],106:[2,206],110:[2,206],118:[2,206],126:[2,206],129:[2,206],130:[2,206],133:[2,206],134:[2,206],135:[2,206],136:[2,206],137:[2,206],138:[2,206],139:[2,206]},{1:[2,183],6:[2,183],25:[2,183],26:[2,183],49:[2,183],54:[2,183],57:[2,183],73:[2,183],78:[2,183],86:[2,183],91:[2,183],93:[2,183],102:[2,183],104:[2,183],105:[2,183],106:[2,183],110:[2,183],118:[2,183],121:[2,183],126:[2,183],129:[2,183],130:[2,183],133:[2,183],134:[2,183],135:[2,183],136:[2,183],137:[2,183],138:[2,183],139:[2,183]},{1:[2,137],6:[2,137],25:[2,137],26:[2,137],49:[2,137],54:[2,137],57:[2,137],73:[2,137],78:[2,137],86:[2,137],91:[2,137],93:[2,137],102:[2,137],104:[2,137],105:[2,137],106:[2,137],110:[2,137],118:[2,137],126:[2,137],129:[2,137],130:[2,137],133:[2,137],134:[2,137],135:[2,137],136:[2,137],137:[2,137],138:[2,137],139:[2,137]},{1:[2,138],6:[2,138],25:[2,138],26:[2,138],49:[2,138],54:[2,138],57:[2,138],73:[2,138],78:[2,138],86:[2,138],91:[2,138],93:[2,138],98:[2,138],102:[2,138],104:[2,138],105:[2,138],106:[2,138],110:[2,138],118:[2,138],126:[2,138],129:[2,138],130:[2,138],133:[2,138],134:[2,138],135:[2,138],136:[2,138],137:[2,138],138:[2,138],139:[2,138]},{1:[2,139],6:[2,139],25:[2,139],26:[2,139],49:[2,139],54:[2,139],57:[2,139],73:[2,139],78:[2,139],86:[2,139],91:[2,139],93:[2,139],98:[2,139],102:[2,139],104:[2,139],105:[2,139],106:[2,139],110:[2,139],118:[2,139],126:[2,139],129:[2,139],130:[2,139],133:[2,139],134:[2,139],135:[2,139],136:[2,139],137:[2,139],138:[2,139],139:[2,139]},{1:[2,174],6:[2,174],25:[2,174],26:[2,174],49:[2,174],54:[2,174],57:[2,174],73:[2,174],78:[2,174],86:[2,174],91:[2,174],93:[2,174],102:[2,174],104:[2,174],105:[2,174],106:[2,174],110:[2,174],118:[2,174],126:[2,174],129:[2,174],130:[2,174],133:[2,174],134:[2,174],135:[2,174],136:[2,174],137:[2,174],138:[2,174],139:[2,174]},{24:321,25:[1,115]},{26:[1,322]},{6:[1,323],26:[2,180],121:[2,180],123:[2,180]},{7:324,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{1:[2,103],6:[2,103],25:[2,103],26:[2,103],49:[2,103],54:[2,103],57:[2,103],73:[2,103],78:[2,103],86:[2,103],91:[2,103],93:[2,103],102:[2,103],104:[2,103],105:[2,103],106:[2,103],110:[2,103],118:[2,103],126:[2,103],129:[2,103],130:[2,103],133:[2,103],134:[2,103],135:[2,103],136:[2,103],137:[2,103],138:[2,103],139:[2,103]},{1:[2,143],6:[2,143],25:[2,143],26:[2,143],49:[2,143],54:[2,143],57:[2,143],66:[2,143],67:[2,143],68:[2,143],69:[2,143],71:[2,143],73:[2,143],74:[2,143],78:[2,143],84:[2,143],85:[2,143],86:[2,143],91:[2,143],93:[2,143],102:[2,143],104:[2,143],105:[2,143],106:[2,143],110:[2,143],118:[2,143],126:[2,143],129:[2,143],130:[2,143],133:[2,143],134:[2,143],135:[2,143],136:[2,143],137:[2,143],138:[2,143],139:[2,143]},{1:[2,119],6:[2,119],25:[2,119],26:[2,119],49:[2,119],54:[2,119],57:[2,119],66:[2,119],67:[2,119],68:[2,119],69:[2,119],71:[2,119],73:[2,119],74:[2,119],78:[2,119],84:[2,119],85:[2,119],86:[2,119],91:[2,119],93:[2,119],102:[2,119],104:[2,119],105:[2,119],106:[2,119],110:[2,119],118:[2,119],126:[2,119],129:[2,119],130:[2,119],133:[2,119],134:[2,119],135:[2,119],136:[2,119],137:[2,119],138:[2,119],139:[2,119]},{6:[2,126],25:[2,126],26:[2,126],54:[2,126],86:[2,126],91:[2,126]},{6:[2,52],25:[2,52],26:[2,52],53:325,54:[1,232]},{6:[2,127],25:[2,127],26:[2,127],54:[2,127],86:[2,127],91:[2,127]},{1:[2,169],6:[2,169],25:[2,169],26:[2,169],49:[2,169],54:[2,169],57:[2,169],73:[2,169],78:[2,169],86:[2,169],91:[2,169],93:[2,169],102:[2,169],103:84,104:[2,169],105:[2,169],106:[2,169],109:85,110:[2,169],111:68,118:[1,326],126:[2,169],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,171],6:[2,171],25:[2,171],26:[2,171],49:[2,171],54:[2,171],57:[2,171],73:[2,171],78:[2,171],86:[2,171],91:[2,171],93:[2,171],102:[2,171],103:84,104:[2,171],105:[1,327],106:[2,171],109:85,110:[2,171],111:68,118:[2,171],126:[2,171],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,170],6:[2,170],25:[2,170],26:[2,170],49:[2,170],54:[2,170],57:[2,170],73:[2,170],78:[2,170],86:[2,170],91:[2,170],93:[2,170],102:[2,170],103:84,104:[2,170],105:[2,170],106:[2,170],109:85,110:[2,170],111:68,118:[2,170],126:[2,170],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[2,94],25:[2,94],26:[2,94],54:[2,94],78:[2,94]},{6:[2,52],25:[2,52],26:[2,52],53:328,54:[1,242]},{26:[1,329],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[1,253],25:[1,254],26:[1,330]},{26:[1,331]},{1:[2,177],6:[2,177],25:[2,177],26:[2,177],49:[2,177],54:[2,177],57:[2,177],73:[2,177],78:[2,177],86:[2,177],91:[2,177],93:[2,177],102:[2,177],104:[2,177],105:[2,177],106:[2,177],110:[2,177],118:[2,177],126:[2,177],129:[2,177],130:[2,177],133:[2,177],134:[2,177],135:[2,177],136:[2,177],137:[2,177],138:[2,177],139:[2,177]},{26:[2,181],121:[2,181],123:[2,181]},{25:[2,133],54:[2,133],103:84,104:[1,64],106:[1,65],109:85,110:[1,67],111:68,126:[1,83],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[1,276],25:[1,277],26:[1,332]},{7:333,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{7:334,8:117,9:18,10:19,11:[1,20],12:6,13:7,14:8,15:9,16:10,17:11,18:12,19:13,20:14,21:15,22:16,23:17,27:61,28:[1,72],29:48,30:[1,70],31:[1,71],32:22,33:[1,49],34:[1,50],35:[1,51],36:[1,52],37:[1,53],38:[1,54],39:21,44:62,45:[1,44],46:[1,45],47:[1,27],50:28,51:[1,59],52:[1,60],58:46,59:47,61:35,63:23,64:24,65:25,76:[1,69],79:[1,42],83:[1,26],88:[1,57],89:[1,58],90:[1,56],96:[1,37],100:[1,43],101:[1,55],103:38,104:[1,64],106:[1,65],107:39,108:[1,66],109:40,110:[1,67],111:68,119:[1,41],124:36,125:[1,63],127:[1,29],128:[1,30],129:[1,31],130:[1,32],131:[1,33],132:[1,34]},{6:[1,287],25:[1,288],26:[1,335]},{6:[2,40],25:[2,40],26:[2,40],54:[2,40],78:[2,40]},{6:[2,58],25:[2,58],26:[2,58],49:[2,58],54:[2,58]},{1:[2,175],6:[2,175],25:[2,175],26:[2,175],49:[2,175],54:[2,175],57:[2,175],73:[2,175],78:[2,175],86:[2,175],91:[2,175],93:[2,175],102:[2,175],104:[2,175],105:[2,175],106:[2,175],110:[2,175],118:[2,175],126:[2,175],129:[2,175],130:[2,175],133:[2,175],134:[2,175],135:[2,175],136:[2,175],137:[2,175],138:[2,175],139:[2,175]},{6:[2,128],25:[2,128],26:[2,128],54:[2,128],86:[2,128],91:[2,128]},{1:[2,172],6:[2,172],25:[2,172],26:[2,172],49:[2,172],54:[2,172],57:[2,172],73:[2,172],78:[2,172],86:[2,172],91:[2,172],93:[2,172],102:[2,172],103:84,104:[2,172],105:[2,172],106:[2,172],109:85,110:[2,172],111:68,118:[2,172],126:[2,172],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{1:[2,173],6:[2,173],25:[2,173],26:[2,173],49:[2,173],54:[2,173],57:[2,173],73:[2,173],78:[2,173],86:[2,173],91:[2,173],93:[2,173],102:[2,173],103:84,104:[2,173],105:[2,173],106:[2,173],109:85,110:[2,173],111:68,118:[2,173],126:[2,173],129:[1,76],130:[1,75],133:[1,74],134:[1,77],135:[1,78],136:[1,79],137:[1,80],138:[1,81],139:[1,82]},{6:[2,95],25:[2,95],26:[2,95],54:[2,95],78:[2,95]}],
-defaultActions: {59:[2,50],60:[2,51],91:[2,109],192:[2,89]},
-parseError: function parseError(str, hash) {
- if (hash.recoverable) {
- this.trace(str);
- } else {
- throw new Error(str);
- }
-},
-parse: function parse(input) {
- var self = this, stack = [0], vstack = [null], lstack = [], table = this.table, yytext = '', yylineno = 0, yyleng = 0, recovering = 0, TERROR = 2, EOF = 1;
- var args = lstack.slice.call(arguments, 1);
- this.lexer.setInput(input);
- this.lexer.yy = this.yy;
- this.yy.lexer = this.lexer;
- this.yy.parser = this;
- if (typeof this.lexer.yylloc == 'undefined') {
- this.lexer.yylloc = {};
- }
- var yyloc = this.lexer.yylloc;
- lstack.push(yyloc);
- var ranges = this.lexer.options && this.lexer.options.ranges;
- if (typeof this.yy.parseError === 'function') {
- this.parseError = this.yy.parseError;
- } else {
- this.parseError = Object.getPrototypeOf(this).parseError;
- }
- function popStack(n) {
- stack.length = stack.length - 2 * n;
- vstack.length = vstack.length - n;
- lstack.length = lstack.length - n;
- }
- function lex() {
- var token;
- token = self.lexer.lex() || EOF;
- if (typeof token !== 'number') {
- token = self.symbols_[token] || token;
- }
- return token;
- }
- var symbol, preErrorSymbol, state, action, a, r, yyval = {}, p, len, newState, expected;
- while (true) {
- state = stack[stack.length - 1];
- if (this.defaultActions[state]) {
- action = this.defaultActions[state];
- } else {
- if (symbol === null || typeof symbol == 'undefined') {
- symbol = lex();
- }
- action = table[state] && table[state][symbol];
- }
- if (typeof action === 'undefined' || !action.length || !action[0]) {
- var errStr = '';
- expected = [];
- for (p in table[state]) {
- if (this.terminals_[p] && p > TERROR) {
- expected.push('\'' + this.terminals_[p] + '\'');
- }
- }
- if (this.lexer.showPosition) {
- errStr = 'Parse error on line ' + (yylineno + 1) + ':\n' + this.lexer.showPosition() + '\nExpecting ' + expected.join(', ') + ', got \'' + (this.terminals_[symbol] || symbol) + '\'';
- } else {
- errStr = 'Parse error on line ' + (yylineno + 1) + ': Unexpected ' + (symbol == EOF ? 'end of input' : '\'' + (this.terminals_[symbol] || symbol) + '\'');
- }
- this.parseError(errStr, {
- text: this.lexer.match,
- token: this.terminals_[symbol] || symbol,
- line: this.lexer.yylineno,
- loc: yyloc,
- expected: expected
- });
- }
- if (action[0] instanceof Array && action.length > 1) {
- throw new Error('Parse Error: multiple actions possible at state: ' + state + ', token: ' + symbol);
- }
- switch (action[0]) {
- case 1:
- stack.push(symbol);
- vstack.push(this.lexer.yytext);
- lstack.push(this.lexer.yylloc);
- stack.push(action[1]);
- symbol = null;
- if (!preErrorSymbol) {
- yyleng = this.lexer.yyleng;
- yytext = this.lexer.yytext;
- yylineno = this.lexer.yylineno;
- yyloc = this.lexer.yylloc;
- if (recovering > 0) {
- recovering--;
- }
- } else {
- symbol = preErrorSymbol;
- preErrorSymbol = null;
- }
- break;
- case 2:
- len = this.productions_[action[1]][1];
- yyval.$ = vstack[vstack.length - len];
- yyval._$ = {
- first_line: lstack[lstack.length - (len || 1)].first_line,
- last_line: lstack[lstack.length - 1].last_line,
- first_column: lstack[lstack.length - (len || 1)].first_column,
- last_column: lstack[lstack.length - 1].last_column
- };
- if (ranges) {
- yyval._$.range = [
- lstack[lstack.length - (len || 1)].range[0],
- lstack[lstack.length - 1].range[1]
- ];
- }
- r = this.performAction.apply(yyval, [
- yytext,
- yyleng,
- yylineno,
- this.yy,
- action[1],
- vstack,
- lstack
- ].concat(args));
- if (typeof r !== 'undefined') {
- return r;
- }
- if (len) {
- stack = stack.slice(0, -1 * len * 2);
- vstack = vstack.slice(0, -1 * len);
- lstack = lstack.slice(0, -1 * len);
- }
- stack.push(this.productions_[action[1]][0]);
- vstack.push(yyval.$);
- lstack.push(yyval._$);
- newState = table[stack[stack.length - 2]][stack[stack.length - 1]];
- stack.push(newState);
- break;
- case 3:
- return true;
- }
- }
- return true;
-}};
-
-function Parser () {
- this.yy = {};
-}
-Parser.prototype = parser;parser.Parser = Parser;
-return new Parser;
-})();
-
-
-if (typeof require !== 'undefined' && typeof exports !== 'undefined') {
-exports.parser = parser;
-exports.Parser = parser.Parser;
-exports.parse = function () { return parser.parse.apply(parser, arguments); };
-exports.main = function commonjsMain(args) {
- if (!args[1]) {
- console.log('Usage: '+args[0]+' FILE');
- process.exit(1);
- }
- var source = require('fs').readFileSync(require('path').normalize(args[1]), "utf8");
- return exports.parser.parse(source);
-};
-if (typeof module !== 'undefined' && require.main === module) {
- exports.main(process.argv.slice(1));
-}
-} \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/register.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/register.js
deleted file mode 100644
index b1d75ca..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/register.js
+++ /dev/null
@@ -1,66 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var CoffeeScript, Module, binary, child_process, ext, findExtension, fork, helpers, loadFile, path, _i, _len, _ref;
-
- CoffeeScript = require('./coffee-script');
-
- child_process = require('child_process');
-
- helpers = require('./helpers');
-
- path = require('path');
-
- loadFile = function(module, filename) {
- var answer;
- answer = CoffeeScript._compileFile(filename, false);
- return module._compile(answer, filename);
- };
-
- if (require.extensions) {
- _ref = CoffeeScript.FILE_EXTENSIONS;
- for (_i = 0, _len = _ref.length; _i < _len; _i++) {
- ext = _ref[_i];
- require.extensions[ext] = loadFile;
- }
- Module = require('module');
- findExtension = function(filename) {
- var curExtension, extensions;
- extensions = path.basename(filename).split('.');
- if (extensions[0] === '') {
- extensions.shift();
- }
- while (extensions.shift()) {
- curExtension = '.' + extensions.join('.');
- if (Module._extensions[curExtension]) {
- return curExtension;
- }
- }
- return '.js';
- };
- Module.prototype.load = function(filename) {
- var extension;
- this.filename = filename;
- this.paths = Module._nodeModulePaths(path.dirname(filename));
- extension = findExtension(filename);
- Module._extensions[extension](this, filename);
- return this.loaded = true;
- };
- }
-
- if (child_process) {
- fork = child_process.fork;
- binary = require.resolve('../../bin/coffee');
- child_process.fork = function(path, args, options) {
- if (helpers.isCoffee(path)) {
- if (!Array.isArray(args)) {
- options = args || {};
- args = [];
- }
- args = [path].concat(args);
- path = binary;
- }
- return fork(path, args, options);
- };
- }
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/repl.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/repl.js
deleted file mode 100644
index 9f06977..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/repl.js
+++ /dev/null
@@ -1,176 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var CoffeeScript, addHistory, addMultilineHandler, fs, getCommandId, merge, nodeREPL, path, replDefaults, updateSyntaxError, vm, _ref;
-
- fs = require('fs');
-
- path = require('path');
-
- vm = require('vm');
-
- nodeREPL = require('repl');
-
- CoffeeScript = require('./coffee-script');
-
- _ref = require('./helpers'), merge = _ref.merge, updateSyntaxError = _ref.updateSyntaxError;
-
- replDefaults = {
- prompt: 'coffee> ',
- historyFile: process.env.HOME ? path.join(process.env.HOME, '.coffee_history') : void 0,
- historyMaxInputSize: 10240,
- "eval": function(input, context, filename, cb) {
- var Assign, Block, Literal, Value, ast, err, js, result, _ref1;
- input = input.replace(/\uFF00/g, '\n');
- input = input.replace(/^\(([\s\S]*)\n\)$/m, '$1');
- _ref1 = require('./nodes'), Block = _ref1.Block, Assign = _ref1.Assign, Value = _ref1.Value, Literal = _ref1.Literal;
- try {
- ast = CoffeeScript.nodes(input);
- ast = new Block([new Assign(new Value(new Literal('_')), ast, '=')]);
- js = ast.compile({
- bare: true,
- locals: Object.keys(context)
- });
- result = context === global ? vm.runInThisContext(js, filename) : vm.runInContext(js, context, filename);
- return cb(null, result);
- } catch (_error) {
- err = _error;
- updateSyntaxError(err, input);
- return cb(err);
- }
- }
- };
-
- addMultilineHandler = function(repl) {
- var inputStream, multiline, nodeLineListener, origPrompt, outputStream, rli, _ref1;
- rli = repl.rli, inputStream = repl.inputStream, outputStream = repl.outputStream;
- origPrompt = (_ref1 = repl._prompt) != null ? _ref1 : repl.prompt;
- multiline = {
- enabled: false,
- initialPrompt: origPrompt.replace(/^[^> ]*/, function(x) {
- return x.replace(/./g, '-');
- }),
- prompt: origPrompt.replace(/^[^> ]*>?/, function(x) {
- return x.replace(/./g, '.');
- }),
- buffer: ''
- };
- nodeLineListener = rli.listeners('line')[0];
- rli.removeListener('line', nodeLineListener);
- rli.on('line', function(cmd) {
- if (multiline.enabled) {
- multiline.buffer += "" + cmd + "\n";
- rli.setPrompt(multiline.prompt);
- rli.prompt(true);
- } else {
- rli.setPrompt(origPrompt);
- nodeLineListener(cmd);
- }
- });
- return inputStream.on('keypress', function(char, key) {
- if (!(key && key.ctrl && !key.meta && !key.shift && key.name === 'v')) {
- return;
- }
- if (multiline.enabled) {
- if (!multiline.buffer.match(/\n/)) {
- multiline.enabled = !multiline.enabled;
- rli.setPrompt(origPrompt);
- rli.prompt(true);
- return;
- }
- if ((rli.line != null) && !rli.line.match(/^\s*$/)) {
- return;
- }
- multiline.enabled = !multiline.enabled;
- rli.line = '';
- rli.cursor = 0;
- rli.output.cursorTo(0);
- rli.output.clearLine(1);
- multiline.buffer = multiline.buffer.replace(/\n/g, '\uFF00');
- rli.emit('line', multiline.buffer);
- multiline.buffer = '';
- } else {
- multiline.enabled = !multiline.enabled;
- rli.setPrompt(multiline.initialPrompt);
- rli.prompt(true);
- }
- });
- };
-
- addHistory = function(repl, filename, maxSize) {
- var buffer, fd, lastLine, readFd, size, stat;
- lastLine = null;
- try {
- stat = fs.statSync(filename);
- size = Math.min(maxSize, stat.size);
- readFd = fs.openSync(filename, 'r');
- buffer = new Buffer(size);
- fs.readSync(readFd, buffer, 0, size, stat.size - size);
- repl.rli.history = buffer.toString().split('\n').reverse();
- if (stat.size > maxSize) {
- repl.rli.history.pop();
- }
- if (repl.rli.history[0] === '') {
- repl.rli.history.shift();
- }
- repl.rli.historyIndex = -1;
- lastLine = repl.rli.history[0];
- } catch (_error) {}
- fd = fs.openSync(filename, 'a');
- repl.rli.addListener('line', function(code) {
- if (code && code.length && code !== '.history' && lastLine !== code) {
- fs.write(fd, "" + code + "\n");
- return lastLine = code;
- }
- });
- repl.rli.on('exit', function() {
- return fs.close(fd);
- });
- return repl.commands[getCommandId(repl, 'history')] = {
- help: 'Show command history',
- action: function() {
- repl.outputStream.write("" + (repl.rli.history.slice(0).reverse().join('\n')) + "\n");
- return repl.displayPrompt();
- }
- };
- };
-
- getCommandId = function(repl, commandName) {
- var commandsHaveLeadingDot;
- commandsHaveLeadingDot = repl.commands['.help'] != null;
- if (commandsHaveLeadingDot) {
- return "." + commandName;
- } else {
- return commandName;
- }
- };
-
- module.exports = {
- start: function(opts) {
- var build, major, minor, repl, _ref1;
- if (opts == null) {
- opts = {};
- }
- _ref1 = process.versions.node.split('.').map(function(n) {
- return parseInt(n);
- }), major = _ref1[0], minor = _ref1[1], build = _ref1[2];
- if (major === 0 && minor < 8) {
- console.warn("Node 0.8.0+ required for CoffeeScript REPL");
- process.exit(1);
- }
- CoffeeScript.register();
- process.argv = ['coffee'].concat(process.argv.slice(2));
- opts = merge(replDefaults, opts);
- repl = nodeREPL.start(opts);
- repl.on('exit', function() {
- return repl.outputStream.write('\n');
- });
- addMultilineHandler(repl);
- if (opts.historyFile) {
- addHistory(repl, opts.historyFile, opts.historyMaxInputSize);
- }
- repl.commands[getCommandId(repl, 'load')].help = 'Load code from a file into this REPL session';
- return repl;
- }
- };
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/rewriter.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/rewriter.js
deleted file mode 100644
index c5f228a..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/rewriter.js
+++ /dev/null
@@ -1,475 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var BALANCED_PAIRS, CALL_CLOSERS, EXPRESSION_CLOSE, EXPRESSION_END, EXPRESSION_START, IMPLICIT_CALL, IMPLICIT_END, IMPLICIT_FUNC, IMPLICIT_UNSPACED_CALL, INVERSES, LINEBREAKS, SINGLE_CLOSERS, SINGLE_LINERS, generate, left, rite, _i, _len, _ref,
- __indexOf = [].indexOf || function(item) { for (var i = 0, l = this.length; i < l; i++) { if (i in this && this[i] === item) return i; } return -1; },
- __slice = [].slice;
-
- generate = function(tag, value, origin) {
- var tok;
- tok = [tag, value];
- tok.generated = true;
- if (origin) {
- tok.origin = origin;
- }
- return tok;
- };
-
- exports.Rewriter = (function() {
- function Rewriter() {}
-
- Rewriter.prototype.rewrite = function(tokens) {
- this.tokens = tokens;
- this.removeLeadingNewlines();
- this.closeOpenCalls();
- this.closeOpenIndexes();
- this.normalizeLines();
- this.tagPostfixConditionals();
- this.addImplicitBracesAndParens();
- this.addLocationDataToGeneratedTokens();
- return this.tokens;
- };
-
- Rewriter.prototype.scanTokens = function(block) {
- var i, token, tokens;
- tokens = this.tokens;
- i = 0;
- while (token = tokens[i]) {
- i += block.call(this, token, i, tokens);
- }
- return true;
- };
-
- Rewriter.prototype.detectEnd = function(i, condition, action) {
- var levels, token, tokens, _ref, _ref1;
- tokens = this.tokens;
- levels = 0;
- while (token = tokens[i]) {
- if (levels === 0 && condition.call(this, token, i)) {
- return action.call(this, token, i);
- }
- if (!token || levels < 0) {
- return action.call(this, token, i - 1);
- }
- if (_ref = token[0], __indexOf.call(EXPRESSION_START, _ref) >= 0) {
- levels += 1;
- } else if (_ref1 = token[0], __indexOf.call(EXPRESSION_END, _ref1) >= 0) {
- levels -= 1;
- }
- i += 1;
- }
- return i - 1;
- };
-
- Rewriter.prototype.removeLeadingNewlines = function() {
- var i, tag, _i, _len, _ref;
- _ref = this.tokens;
- for (i = _i = 0, _len = _ref.length; _i < _len; i = ++_i) {
- tag = _ref[i][0];
- if (tag !== 'TERMINATOR') {
- break;
- }
- }
- if (i) {
- return this.tokens.splice(0, i);
- }
- };
-
- Rewriter.prototype.closeOpenCalls = function() {
- var action, condition;
- condition = function(token, i) {
- var _ref;
- return ((_ref = token[0]) === ')' || _ref === 'CALL_END') || token[0] === 'OUTDENT' && this.tag(i - 1) === ')';
- };
- action = function(token, i) {
- return this.tokens[token[0] === 'OUTDENT' ? i - 1 : i][0] = 'CALL_END';
- };
- return this.scanTokens(function(token, i) {
- if (token[0] === 'CALL_START') {
- this.detectEnd(i + 1, condition, action);
- }
- return 1;
- });
- };
-
- Rewriter.prototype.closeOpenIndexes = function() {
- var action, condition;
- condition = function(token, i) {
- var _ref;
- return (_ref = token[0]) === ']' || _ref === 'INDEX_END';
- };
- action = function(token, i) {
- return token[0] = 'INDEX_END';
- };
- return this.scanTokens(function(token, i) {
- if (token[0] === 'INDEX_START') {
- this.detectEnd(i + 1, condition, action);
- }
- return 1;
- });
- };
-
- Rewriter.prototype.matchTags = function() {
- var fuzz, i, j, pattern, _i, _ref, _ref1;
- i = arguments[0], pattern = 2 <= arguments.length ? __slice.call(arguments, 1) : [];
- fuzz = 0;
- for (j = _i = 0, _ref = pattern.length; 0 <= _ref ? _i < _ref : _i > _ref; j = 0 <= _ref ? ++_i : --_i) {
- while (this.tag(i + j + fuzz) === 'HERECOMMENT') {
- fuzz += 2;
- }
- if (pattern[j] == null) {
- continue;
- }
- if (typeof pattern[j] === 'string') {
- pattern[j] = [pattern[j]];
- }
- if (_ref1 = this.tag(i + j + fuzz), __indexOf.call(pattern[j], _ref1) < 0) {
- return false;
- }
- }
- return true;
- };
-
- Rewriter.prototype.looksObjectish = function(j) {
- return this.matchTags(j, '@', null, ':') || this.matchTags(j, null, ':');
- };
-
- Rewriter.prototype.findTagsBackwards = function(i, tags) {
- var backStack, _ref, _ref1, _ref2, _ref3, _ref4, _ref5;
- backStack = [];
- while (i >= 0 && (backStack.length || (_ref2 = this.tag(i), __indexOf.call(tags, _ref2) < 0) && ((_ref3 = this.tag(i), __indexOf.call(EXPRESSION_START, _ref3) < 0) || this.tokens[i].generated) && (_ref4 = this.tag(i), __indexOf.call(LINEBREAKS, _ref4) < 0))) {
- if (_ref = this.tag(i), __indexOf.call(EXPRESSION_END, _ref) >= 0) {
- backStack.push(this.tag(i));
- }
- if ((_ref1 = this.tag(i), __indexOf.call(EXPRESSION_START, _ref1) >= 0) && backStack.length) {
- backStack.pop();
- }
- i -= 1;
- }
- return _ref5 = this.tag(i), __indexOf.call(tags, _ref5) >= 0;
- };
-
- Rewriter.prototype.addImplicitBracesAndParens = function() {
- var stack;
- stack = [];
- return this.scanTokens(function(token, i, tokens) {
- var endImplicitCall, endImplicitObject, forward, inImplicit, inImplicitCall, inImplicitControl, inImplicitObject, newLine, nextTag, offset, prevTag, prevToken, s, sameLine, stackIdx, stackTag, stackTop, startIdx, startImplicitCall, startImplicitObject, startsLine, tag, _ref, _ref1, _ref2, _ref3, _ref4, _ref5;
- tag = token[0];
- prevTag = (prevToken = i > 0 ? tokens[i - 1] : [])[0];
- nextTag = (i < tokens.length - 1 ? tokens[i + 1] : [])[0];
- stackTop = function() {
- return stack[stack.length - 1];
- };
- startIdx = i;
- forward = function(n) {
- return i - startIdx + n;
- };
- inImplicit = function() {
- var _ref, _ref1;
- return (_ref = stackTop()) != null ? (_ref1 = _ref[2]) != null ? _ref1.ours : void 0 : void 0;
- };
- inImplicitCall = function() {
- var _ref;
- return inImplicit() && ((_ref = stackTop()) != null ? _ref[0] : void 0) === '(';
- };
- inImplicitObject = function() {
- var _ref;
- return inImplicit() && ((_ref = stackTop()) != null ? _ref[0] : void 0) === '{';
- };
- inImplicitControl = function() {
- var _ref;
- return inImplicit && ((_ref = stackTop()) != null ? _ref[0] : void 0) === 'CONTROL';
- };
- startImplicitCall = function(j) {
- var idx;
- idx = j != null ? j : i;
- stack.push([
- '(', idx, {
- ours: true
- }
- ]);
- tokens.splice(idx, 0, generate('CALL_START', '('));
- if (j == null) {
- return i += 1;
- }
- };
- endImplicitCall = function() {
- stack.pop();
- tokens.splice(i, 0, generate('CALL_END', ')'));
- return i += 1;
- };
- startImplicitObject = function(j, startsLine) {
- var idx;
- if (startsLine == null) {
- startsLine = true;
- }
- idx = j != null ? j : i;
- stack.push([
- '{', idx, {
- sameLine: true,
- startsLine: startsLine,
- ours: true
- }
- ]);
- tokens.splice(idx, 0, generate('{', generate(new String('{')), token));
- if (j == null) {
- return i += 1;
- }
- };
- endImplicitObject = function(j) {
- j = j != null ? j : i;
- stack.pop();
- tokens.splice(j, 0, generate('}', '}', token));
- return i += 1;
- };
- if (inImplicitCall() && (tag === 'IF' || tag === 'TRY' || tag === 'FINALLY' || tag === 'CATCH' || tag === 'CLASS' || tag === 'SWITCH')) {
- stack.push([
- 'CONTROL', i, {
- ours: true
- }
- ]);
- return forward(1);
- }
- if (tag === 'INDENT' && inImplicit()) {
- if (prevTag !== '=>' && prevTag !== '->' && prevTag !== '[' && prevTag !== '(' && prevTag !== ',' && prevTag !== '{' && prevTag !== 'TRY' && prevTag !== 'ELSE' && prevTag !== '=') {
- while (inImplicitCall()) {
- endImplicitCall();
- }
- }
- if (inImplicitControl()) {
- stack.pop();
- }
- stack.push([tag, i]);
- return forward(1);
- }
- if (__indexOf.call(EXPRESSION_START, tag) >= 0) {
- stack.push([tag, i]);
- return forward(1);
- }
- if (__indexOf.call(EXPRESSION_END, tag) >= 0) {
- while (inImplicit()) {
- if (inImplicitCall()) {
- endImplicitCall();
- } else if (inImplicitObject()) {
- endImplicitObject();
- } else {
- stack.pop();
- }
- }
- stack.pop();
- }
- if ((__indexOf.call(IMPLICIT_FUNC, tag) >= 0 && token.spaced && !token.stringEnd || tag === '?' && i > 0 && !tokens[i - 1].spaced) && (__indexOf.call(IMPLICIT_CALL, nextTag) >= 0 || __indexOf.call(IMPLICIT_UNSPACED_CALL, nextTag) >= 0 && !((_ref = tokens[i + 1]) != null ? _ref.spaced : void 0) && !((_ref1 = tokens[i + 1]) != null ? _ref1.newLine : void 0))) {
- if (tag === '?') {
- tag = token[0] = 'FUNC_EXIST';
- }
- startImplicitCall(i + 1);
- return forward(2);
- }
- if (__indexOf.call(IMPLICIT_FUNC, tag) >= 0 && this.matchTags(i + 1, 'INDENT', null, ':') && !this.findTagsBackwards(i, ['CLASS', 'EXTENDS', 'IF', 'CATCH', 'SWITCH', 'LEADING_WHEN', 'FOR', 'WHILE', 'UNTIL'])) {
- startImplicitCall(i + 1);
- stack.push(['INDENT', i + 2]);
- return forward(3);
- }
- if (tag === ':') {
- if (this.tag(i - 2) === '@') {
- s = i - 2;
- } else {
- s = i - 1;
- }
- while (this.tag(s - 2) === 'HERECOMMENT') {
- s -= 2;
- }
- this.insideForDeclaration = nextTag === 'FOR';
- startsLine = s === 0 || (_ref2 = this.tag(s - 1), __indexOf.call(LINEBREAKS, _ref2) >= 0) || tokens[s - 1].newLine;
- if (stackTop()) {
- _ref3 = stackTop(), stackTag = _ref3[0], stackIdx = _ref3[1];
- if ((stackTag === '{' || stackTag === 'INDENT' && this.tag(stackIdx - 1) === '{') && (startsLine || this.tag(s - 1) === ',' || this.tag(s - 1) === '{')) {
- return forward(1);
- }
- }
- startImplicitObject(s, !!startsLine);
- return forward(2);
- }
- if (inImplicitObject() && __indexOf.call(LINEBREAKS, tag) >= 0) {
- stackTop()[2].sameLine = false;
- }
- newLine = prevTag === 'OUTDENT' || prevToken.newLine;
- if (__indexOf.call(IMPLICIT_END, tag) >= 0 || __indexOf.call(CALL_CLOSERS, tag) >= 0 && newLine) {
- while (inImplicit()) {
- _ref4 = stackTop(), stackTag = _ref4[0], stackIdx = _ref4[1], (_ref5 = _ref4[2], sameLine = _ref5.sameLine, startsLine = _ref5.startsLine);
- if (inImplicitCall() && prevTag !== ',') {
- endImplicitCall();
- } else if (inImplicitObject() && !this.insideForDeclaration && sameLine && tag !== 'TERMINATOR' && prevTag !== ':' && endImplicitObject()) {
-
- } else if (inImplicitObject() && tag === 'TERMINATOR' && prevTag !== ',' && !(startsLine && this.looksObjectish(i + 1))) {
- endImplicitObject();
- } else {
- break;
- }
- }
- }
- if (tag === ',' && !this.looksObjectish(i + 1) && inImplicitObject() && !this.insideForDeclaration && (nextTag !== 'TERMINATOR' || !this.looksObjectish(i + 2))) {
- offset = nextTag === 'OUTDENT' ? 1 : 0;
- while (inImplicitObject()) {
- endImplicitObject(i + offset);
- }
- }
- return forward(1);
- });
- };
-
- Rewriter.prototype.addLocationDataToGeneratedTokens = function() {
- return this.scanTokens(function(token, i, tokens) {
- var column, line, nextLocation, prevLocation, _ref, _ref1;
- if (token[2]) {
- return 1;
- }
- if (!(token.generated || token.explicit)) {
- return 1;
- }
- if (token[0] === '{' && (nextLocation = (_ref = tokens[i + 1]) != null ? _ref[2] : void 0)) {
- line = nextLocation.first_line, column = nextLocation.first_column;
- } else if (prevLocation = (_ref1 = tokens[i - 1]) != null ? _ref1[2] : void 0) {
- line = prevLocation.last_line, column = prevLocation.last_column;
- } else {
- line = column = 0;
- }
- token[2] = {
- first_line: line,
- first_column: column,
- last_line: line,
- last_column: column
- };
- return 1;
- });
- };
-
- Rewriter.prototype.normalizeLines = function() {
- var action, condition, indent, outdent, starter;
- starter = indent = outdent = null;
- condition = function(token, i) {
- var _ref, _ref1, _ref2, _ref3;
- return token[1] !== ';' && (_ref = token[0], __indexOf.call(SINGLE_CLOSERS, _ref) >= 0) && !(token[0] === 'TERMINATOR' && (_ref1 = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref1) >= 0)) && !(token[0] === 'ELSE' && starter !== 'THEN') && !(((_ref2 = token[0]) === 'CATCH' || _ref2 === 'FINALLY') && (starter === '->' || starter === '=>')) || (_ref3 = token[0], __indexOf.call(CALL_CLOSERS, _ref3) >= 0) && this.tokens[i - 1].newLine;
- };
- action = function(token, i) {
- return this.tokens.splice((this.tag(i - 1) === ',' ? i - 1 : i), 0, outdent);
- };
- return this.scanTokens(function(token, i, tokens) {
- var j, tag, _i, _ref, _ref1, _ref2;
- tag = token[0];
- if (tag === 'TERMINATOR') {
- if (this.tag(i + 1) === 'ELSE' && this.tag(i - 1) !== 'OUTDENT') {
- tokens.splice.apply(tokens, [i, 1].concat(__slice.call(this.indentation())));
- return 1;
- }
- if (_ref = this.tag(i + 1), __indexOf.call(EXPRESSION_CLOSE, _ref) >= 0) {
- tokens.splice(i, 1);
- return 0;
- }
- }
- if (tag === 'CATCH') {
- for (j = _i = 1; _i <= 2; j = ++_i) {
- if (!((_ref1 = this.tag(i + j)) === 'OUTDENT' || _ref1 === 'TERMINATOR' || _ref1 === 'FINALLY')) {
- continue;
- }
- tokens.splice.apply(tokens, [i + j, 0].concat(__slice.call(this.indentation())));
- return 2 + j;
- }
- }
- if (__indexOf.call(SINGLE_LINERS, tag) >= 0 && this.tag(i + 1) !== 'INDENT' && !(tag === 'ELSE' && this.tag(i + 1) === 'IF')) {
- starter = tag;
- _ref2 = this.indentation(tokens[i]), indent = _ref2[0], outdent = _ref2[1];
- if (starter === 'THEN') {
- indent.fromThen = true;
- }
- tokens.splice(i + 1, 0, indent);
- this.detectEnd(i + 2, condition, action);
- if (tag === 'THEN') {
- tokens.splice(i, 1);
- }
- return 1;
- }
- return 1;
- });
- };
-
- Rewriter.prototype.tagPostfixConditionals = function() {
- var action, condition, original;
- original = null;
- condition = function(token, i) {
- var prevTag, tag;
- tag = token[0];
- prevTag = this.tokens[i - 1][0];
- return tag === 'TERMINATOR' || (tag === 'INDENT' && __indexOf.call(SINGLE_LINERS, prevTag) < 0);
- };
- action = function(token, i) {
- if (token[0] !== 'INDENT' || (token.generated && !token.fromThen)) {
- return original[0] = 'POST_' + original[0];
- }
- };
- return this.scanTokens(function(token, i) {
- if (token[0] !== 'IF') {
- return 1;
- }
- original = token;
- this.detectEnd(i + 1, condition, action);
- return 1;
- });
- };
-
- Rewriter.prototype.indentation = function(origin) {
- var indent, outdent;
- indent = ['INDENT', 2];
- outdent = ['OUTDENT', 2];
- if (origin) {
- indent.generated = outdent.generated = true;
- indent.origin = outdent.origin = origin;
- } else {
- indent.explicit = outdent.explicit = true;
- }
- return [indent, outdent];
- };
-
- Rewriter.prototype.generate = generate;
-
- Rewriter.prototype.tag = function(i) {
- var _ref;
- return (_ref = this.tokens[i]) != null ? _ref[0] : void 0;
- };
-
- return Rewriter;
-
- })();
-
- BALANCED_PAIRS = [['(', ')'], ['[', ']'], ['{', '}'], ['INDENT', 'OUTDENT'], ['CALL_START', 'CALL_END'], ['PARAM_START', 'PARAM_END'], ['INDEX_START', 'INDEX_END']];
-
- exports.INVERSES = INVERSES = {};
-
- EXPRESSION_START = [];
-
- EXPRESSION_END = [];
-
- for (_i = 0, _len = BALANCED_PAIRS.length; _i < _len; _i++) {
- _ref = BALANCED_PAIRS[_i], left = _ref[0], rite = _ref[1];
- EXPRESSION_START.push(INVERSES[rite] = left);
- EXPRESSION_END.push(INVERSES[left] = rite);
- }
-
- EXPRESSION_CLOSE = ['CATCH', 'THEN', 'ELSE', 'FINALLY'].concat(EXPRESSION_END);
-
- IMPLICIT_FUNC = ['IDENTIFIER', 'SUPER', ')', 'CALL_END', ']', 'INDEX_END', '@', 'THIS'];
-
- IMPLICIT_CALL = ['IDENTIFIER', 'NUMBER', 'STRING', 'JS', 'REGEX', 'NEW', 'PARAM_START', 'CLASS', 'IF', 'TRY', 'SWITCH', 'THIS', 'BOOL', 'NULL', 'UNDEFINED', 'UNARY', 'UNARY_MATH', 'SUPER', 'THROW', '@', '->', '=>', '[', '(', '{', '--', '++'];
-
- IMPLICIT_UNSPACED_CALL = ['+', '-'];
-
- IMPLICIT_END = ['POST_IF', 'FOR', 'WHILE', 'UNTIL', 'WHEN', 'BY', 'LOOP', 'TERMINATOR'];
-
- SINGLE_LINERS = ['ELSE', '->', '=>', 'TRY', 'FINALLY', 'THEN'];
-
- SINGLE_CLOSERS = ['TERMINATOR', 'CATCH', 'FINALLY', 'ELSE', 'OUTDENT', 'LEADING_WHEN'];
-
- LINEBREAKS = ['TERMINATOR', 'INDENT', 'OUTDENT'];
-
- CALL_CLOSERS = ['.', '?.', '::', '?::'];
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/scope.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/scope.js
deleted file mode 100644
index cb43b02..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/scope.js
+++ /dev/null
@@ -1,146 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var Scope, extend, last, _ref;
-
- _ref = require('./helpers'), extend = _ref.extend, last = _ref.last;
-
- exports.Scope = Scope = (function() {
- Scope.root = null;
-
- function Scope(parent, expressions, method) {
- this.parent = parent;
- this.expressions = expressions;
- this.method = method;
- this.variables = [
- {
- name: 'arguments',
- type: 'arguments'
- }
- ];
- this.positions = {};
- if (!this.parent) {
- Scope.root = this;
- }
- }
-
- Scope.prototype.add = function(name, type, immediate) {
- if (this.shared && !immediate) {
- return this.parent.add(name, type, immediate);
- }
- if (Object.prototype.hasOwnProperty.call(this.positions, name)) {
- return this.variables[this.positions[name]].type = type;
- } else {
- return this.positions[name] = this.variables.push({
- name: name,
- type: type
- }) - 1;
- }
- };
-
- Scope.prototype.namedMethod = function() {
- var _ref1;
- if (((_ref1 = this.method) != null ? _ref1.name : void 0) || !this.parent) {
- return this.method;
- }
- return this.parent.namedMethod();
- };
-
- Scope.prototype.find = function(name) {
- if (this.check(name)) {
- return true;
- }
- this.add(name, 'var');
- return false;
- };
-
- Scope.prototype.parameter = function(name) {
- if (this.shared && this.parent.check(name, true)) {
- return;
- }
- return this.add(name, 'param');
- };
-
- Scope.prototype.check = function(name) {
- var _ref1;
- return !!(this.type(name) || ((_ref1 = this.parent) != null ? _ref1.check(name) : void 0));
- };
-
- Scope.prototype.temporary = function(name, index) {
- if (name.length > 1) {
- return '_' + name + (index > 1 ? index - 1 : '');
- } else {
- return '_' + (index + parseInt(name, 36)).toString(36).replace(/\d/g, 'a');
- }
- };
-
- Scope.prototype.type = function(name) {
- var v, _i, _len, _ref1;
- _ref1 = this.variables;
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- v = _ref1[_i];
- if (v.name === name) {
- return v.type;
- }
- }
- return null;
- };
-
- Scope.prototype.freeVariable = function(name, reserve) {
- var index, temp;
- if (reserve == null) {
- reserve = true;
- }
- index = 0;
- while (this.check((temp = this.temporary(name, index)))) {
- index++;
- }
- if (reserve) {
- this.add(temp, 'var', true);
- }
- return temp;
- };
-
- Scope.prototype.assign = function(name, value) {
- this.add(name, {
- value: value,
- assigned: true
- }, true);
- return this.hasAssignments = true;
- };
-
- Scope.prototype.hasDeclarations = function() {
- return !!this.declaredVariables().length;
- };
-
- Scope.prototype.declaredVariables = function() {
- var realVars, tempVars, v, _i, _len, _ref1;
- realVars = [];
- tempVars = [];
- _ref1 = this.variables;
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- v = _ref1[_i];
- if (v.type === 'var') {
- (v.name.charAt(0) === '_' ? tempVars : realVars).push(v.name);
- }
- }
- return realVars.sort().concat(tempVars.sort());
- };
-
- Scope.prototype.assignedVariables = function() {
- var v, _i, _len, _ref1, _results;
- _ref1 = this.variables;
- _results = [];
- for (_i = 0, _len = _ref1.length; _i < _len; _i++) {
- v = _ref1[_i];
- if (v.type.assigned) {
- _results.push("" + v.name + " = " + v.type.value);
- }
- }
- return _results;
- };
-
- return Scope;
-
- })();
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/sourcemap.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/sourcemap.js
deleted file mode 100644
index c94ebd1..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/lib/coffee-script/sourcemap.js
+++ /dev/null
@@ -1,161 +0,0 @@
-// Generated by CoffeeScript 1.8.0
-(function() {
- var LineMap, SourceMap;
-
- LineMap = (function() {
- function LineMap(line) {
- this.line = line;
- this.columns = [];
- }
-
- LineMap.prototype.add = function(column, _arg, options) {
- var sourceColumn, sourceLine;
- sourceLine = _arg[0], sourceColumn = _arg[1];
- if (options == null) {
- options = {};
- }
- if (this.columns[column] && options.noReplace) {
- return;
- }
- return this.columns[column] = {
- line: this.line,
- column: column,
- sourceLine: sourceLine,
- sourceColumn: sourceColumn
- };
- };
-
- LineMap.prototype.sourceLocation = function(column) {
- var mapping;
- while (!((mapping = this.columns[column]) || (column <= 0))) {
- column--;
- }
- return mapping && [mapping.sourceLine, mapping.sourceColumn];
- };
-
- return LineMap;
-
- })();
-
- SourceMap = (function() {
- var BASE64_CHARS, VLQ_CONTINUATION_BIT, VLQ_SHIFT, VLQ_VALUE_MASK;
-
- function SourceMap() {
- this.lines = [];
- }
-
- SourceMap.prototype.add = function(sourceLocation, generatedLocation, options) {
- var column, line, lineMap, _base;
- if (options == null) {
- options = {};
- }
- line = generatedLocation[0], column = generatedLocation[1];
- lineMap = ((_base = this.lines)[line] || (_base[line] = new LineMap(line)));
- return lineMap.add(column, sourceLocation, options);
- };
-
- SourceMap.prototype.sourceLocation = function(_arg) {
- var column, line, lineMap;
- line = _arg[0], column = _arg[1];
- while (!((lineMap = this.lines[line]) || (line <= 0))) {
- line--;
- }
- return lineMap && lineMap.sourceLocation(column);
- };
-
- SourceMap.prototype.generate = function(options, code) {
- var buffer, lastColumn, lastSourceColumn, lastSourceLine, lineMap, lineNumber, mapping, needComma, v3, writingline, _i, _j, _len, _len1, _ref, _ref1;
- if (options == null) {
- options = {};
- }
- if (code == null) {
- code = null;
- }
- writingline = 0;
- lastColumn = 0;
- lastSourceLine = 0;
- lastSourceColumn = 0;
- needComma = false;
- buffer = "";
- _ref = this.lines;
- for (lineNumber = _i = 0, _len = _ref.length; _i < _len; lineNumber = ++_i) {
- lineMap = _ref[lineNumber];
- if (lineMap) {
- _ref1 = lineMap.columns;
- for (_j = 0, _len1 = _ref1.length; _j < _len1; _j++) {
- mapping = _ref1[_j];
- if (!(mapping)) {
- continue;
- }
- while (writingline < mapping.line) {
- lastColumn = 0;
- needComma = false;
- buffer += ";";
- writingline++;
- }
- if (needComma) {
- buffer += ",";
- needComma = false;
- }
- buffer += this.encodeVlq(mapping.column - lastColumn);
- lastColumn = mapping.column;
- buffer += this.encodeVlq(0);
- buffer += this.encodeVlq(mapping.sourceLine - lastSourceLine);
- lastSourceLine = mapping.sourceLine;
- buffer += this.encodeVlq(mapping.sourceColumn - lastSourceColumn);
- lastSourceColumn = mapping.sourceColumn;
- needComma = true;
- }
- }
- }
- v3 = {
- version: 3,
- file: options.generatedFile || '',
- sourceRoot: options.sourceRoot || '',
- sources: options.sourceFiles || [''],
- names: [],
- mappings: buffer
- };
- if (options.inline) {
- v3.sourcesContent = [code];
- }
- return JSON.stringify(v3, null, 2);
- };
-
- VLQ_SHIFT = 5;
-
- VLQ_CONTINUATION_BIT = 1 << VLQ_SHIFT;
-
- VLQ_VALUE_MASK = VLQ_CONTINUATION_BIT - 1;
-
- SourceMap.prototype.encodeVlq = function(value) {
- var answer, nextChunk, signBit, valueToEncode;
- answer = '';
- signBit = value < 0 ? 1 : 0;
- valueToEncode = (Math.abs(value) << 1) + signBit;
- while (valueToEncode || !answer) {
- nextChunk = valueToEncode & VLQ_VALUE_MASK;
- valueToEncode = valueToEncode >> VLQ_SHIFT;
- if (valueToEncode) {
- nextChunk |= VLQ_CONTINUATION_BIT;
- }
- answer += this.encodeBase64(nextChunk);
- }
- return answer;
- };
-
- BASE64_CHARS = 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/';
-
- SourceMap.prototype.encodeBase64 = function(value) {
- return BASE64_CHARS[value] || (function() {
- throw new Error("Cannot Base64 encode value: " + value);
- })();
- };
-
- return SourceMap;
-
- })();
-
- module.exports = SourceMap;
-
-}).call(this);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/package.json
deleted file mode 100644
index cc7b329..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/node_modules/mkdirp/package.json
+++ /dev/null
@@ -1,46 +0,0 @@
-{
- "name": "mkdirp",
- "description": "Recursively mkdir, like `mkdir -p`",
- "version": "0.3.5",
- "author": {
- "name": "James Halliday",
- "email": "mail@substack.net",
- "url": "http://substack.net"
- },
- "main": "./index",
- "keywords": [
- "mkdir",
- "directory"
- ],
- "repository": {
- "type": "git",
- "url": "http://github.com/substack/node-mkdirp.git"
- },
- "scripts": {
- "test": "tap test/*.js"
- },
- "devDependencies": {
- "tap": "~0.4.0"
- },
- "license": "MIT",
- "_id": "mkdirp@0.3.5",
- "dist": {
- "shasum": "de3e5f8961c88c787ee1368df849ac4413eca8d7",
- "tarball": "http://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz"
- },
- "_from": "mkdirp@>=0.3.5 <0.4.0",
- "_npmVersion": "1.2.2",
- "_npmUser": {
- "name": "substack",
- "email": "mail@substack.net"
- },
- "maintainers": [
- {
- "name": "substack",
- "email": "mail@substack.net"
- }
- ],
- "directories": {},
- "_shasum": "de3e5f8961c88c787ee1368df849ac4413eca8d7",
- "_resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.3.5.tgz"
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/package.json
deleted file mode 100644
index 9c43a2c..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/package.json
+++ /dev/null
@@ -1,71 +0,0 @@
-{
- "name": "coffee-script",
- "description": "Unfancy JavaScript",
- "keywords": [
- "javascript",
- "language",
- "coffeescript",
- "compiler"
- ],
- "author": {
- "name": "Jeremy Ashkenas"
- },
- "version": "1.8.0",
- "license": "MIT",
- "engines": {
- "node": ">=0.8.0"
- },
- "directories": {
- "lib": "./lib/coffee-script"
- },
- "main": "./lib/coffee-script/coffee-script",
- "bin": {
- "coffee": "./bin/coffee",
- "cake": "./bin/cake"
- },
- "preferGlobal": true,
- "scripts": {
- "test": "node ./bin/cake test"
- },
- "homepage": "http://coffeescript.org",
- "bugs": {
- "url": "https://github.com/jashkenas/coffeescript/issues"
- },
- "repository": {
- "type": "git",
- "url": "git://github.com/jashkenas/coffeescript.git"
- },
- "devDependencies": {
- "uglify-js": "~2.2",
- "jison": ">=0.2.0",
- "highlight.js": "~8.0.0",
- "underscore": "~1.5.2",
- "docco": "~0.6.2"
- },
- "dependencies": {
- "mkdirp": "~0.3.5"
- },
- "_id": "coffee-script@1.8.0",
- "dist": {
- "shasum": "9c9f1d2b4a52a000ded15b659791703648263c1d",
- "tarball": "http://registry.npmjs.org/coffee-script/-/coffee-script-1.8.0.tgz"
- },
- "_from": "coffee-script@>=1.8.0 <1.9.0",
- "_npmVersion": "1.3.21",
- "_npmUser": {
- "name": "jashkenas",
- "email": "jashkenas@gmail.com"
- },
- "maintainers": [
- {
- "name": "jashkenas",
- "email": "jashkenas@gmail.com"
- },
- {
- "name": "michaelficarra",
- "email": "npm@michael.ficarra.me"
- }
- ],
- "_shasum": "9c9f1d2b4a52a000ded15b659791703648263c1d",
- "_resolved": "https://registry.npmjs.org/coffee-script/-/coffee-script-1.8.0.tgz"
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/register.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/register.js
deleted file mode 100644
index 97b33d7..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/register.js
+++ /dev/null
@@ -1 +0,0 @@
-require('./lib/coffee-script/register');
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/repl.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/repl.js
deleted file mode 100644
index d2706a7..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/coffee-script/repl.js
+++ /dev/null
@@ -1 +0,0 @@
-module.exports = require('./lib/coffee-script/repl');
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.npmignore b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.npmignore
deleted file mode 100644
index 9303c34..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.npmignore
+++ /dev/null
@@ -1,2 +0,0 @@
-node_modules/
-npm-debug.log \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.travis.yml b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.travis.yml
deleted file mode 100644
index 84fd7ca..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/.travis.yml
+++ /dev/null
@@ -1,5 +0,0 @@
-language: node_js
-node_js:
- - 0.6
- - 0.8
- - 0.9
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/LICENSE b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/LICENSE
deleted file mode 100644
index 432d1ae..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/LICENSE
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js
deleted file mode 100644
index e692421..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/examples/pow.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/index.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/index.js
deleted file mode 100644
index fda6de8..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/index.js
+++ /dev/null
@@ -1,82 +0,0 @@
-var path = require('path');
-var fs = require('fs');
-
-module.exports = mkdirP.mkdirp = mkdirP.mkdirP = mkdirP;
-
-function mkdirP (p, mode, f, made) {
- if (typeof mode === 'function' || mode === undefined) {
- f = mode;
- mode = 0777 & (~process.umask());
- }
- if (!made) made = null;
-
- var cb = f || function () {};
- if (typeof mode === 'string') mode = parseInt(mode, 8);
- p = path.resolve(p);
-
- fs.mkdir(p, mode, function (er) {
- if (!er) {
- made = made || p;
- return cb(null, made);
- }
- switch (er.code) {
- case 'ENOENT':
- mkdirP(path.dirname(p), mode, function (er, made) {
- if (er) cb(er, made);
- else mkdirP(p, mode, 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:
- fs.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, mode, made) {
- if (mode === undefined) {
- mode = 0777 & (~process.umask());
- }
- if (!made) made = null;
-
- if (typeof mode === 'string') mode = parseInt(mode, 8);
- p = path.resolve(p);
-
- try {
- fs.mkdirSync(p, mode);
- made = made || p;
- }
- catch (err0) {
- switch (err0.code) {
- case 'ENOENT' :
- made = sync(path.dirname(p), mode, made);
- sync(p, mode, 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 = fs.statSync(p);
- }
- catch (err1) {
- throw err0;
- }
- if (!stat.isDirectory()) throw err0;
- break;
- }
- }
-
- return made;
-};
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/readme.markdown b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/readme.markdown
deleted file mode 100644
index 83b0216..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/readme.markdown
+++ /dev/null
@@ -1,63 +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, mode, cb)
-
-Create a new directory and any necessary subdirectories at `dir` with octal
-permission string `mode`.
-
-If `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.
-
-## mkdirp.sync(dir, mode)
-
-Synchronously create a new directory and any necessary subdirectories at `dir`
-with octal permission string `mode`.
-
-If `mode` isn't specified, it defaults to `0777 & (~process.umask())`.
-
-Returns the first directory that had to be created, if any.
-
-# install
-
-With [npm](http://npmjs.org) do:
-
-```
-npm install mkdirp
-```
-
-# license
-
-MIT
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js
deleted file mode 100644
index 520dcb8..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/chmod.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js
deleted file mode 100644
index 0eb7099..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/clobber.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js
deleted file mode 100644
index b07cd70..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/mkdirp.js
+++ /dev/null
@@ -1,28 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('woo', 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('/');
-
- mkdirp(file, 0755, function (err) {
- if (err) t.fail(err);
- else path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- })
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm.js
deleted file mode 100644
index 23a7abb..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('async perm', function (t) {
- t.plan(2);
- var file = '/tmp/' + (Math.random() * (1<<30)).toString(16);
-
- mkdirp(file, 0755, function (err) {
- if (err) t.fail(err);
- else path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- })
- });
-});
-
-test('async root perm', function (t) {
- mkdirp('/tmp', 0755, function (err) {
- if (err) t.fail(err);
- t.end();
- });
- t.end();
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js
deleted file mode 100644
index f685f60..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/perm_sync.js
+++ /dev/null
@@ -1,39 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('sync perm', function (t) {
- t.plan(2);
- var file = '/tmp/' + (Math.random() * (1<<30)).toString(16) + '.json';
-
- mkdirp.sync(file, 0755);
- path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- });
-});
-
-test('sync root perm', function (t) {
- t.plan(1);
-
- var file = '/tmp';
- mkdirp.sync(file, 0755);
- path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/race.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/race.js
deleted file mode 100644
index 96a0447..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/race.js
+++ /dev/null
@@ -1,41 +0,0 @@
-var mkdirp = require('../').mkdirp;
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('race', function (t) {
- t.plan(4);
- 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) {
- if (err) t.fail(err);
- else path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- if (cb) cb();
- }
- })
- })
- });
- }
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/rel.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/rel.js
deleted file mode 100644
index 7985824..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/rel.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('rel', 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 cwd = process.cwd();
- process.chdir('/tmp');
-
- var file = [x,y,z].join('/');
-
- mkdirp(file, 0755, function (err) {
- if (err) t.fail(err);
- else path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- process.chdir(cwd);
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- })
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return.js
deleted file mode 100644
index bce68e5..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js
deleted file mode 100644
index 7c222d3..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/return_sync.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/root.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/root.js
deleted file mode 100644
index 97ad7a2..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/root.js
+++ /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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/sync.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/sync.js
deleted file mode 100644
index 7530cad..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/sync.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('sync', 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('/');
-
- try {
- mkdirp.sync(file, 0755);
- } catch (err) {
- t.fail(err);
- return t.end();
- }
-
- path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0755);
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- });
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask.js
deleted file mode 100644
index 64ccafe..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask.js
+++ /dev/null
@@ -1,28 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('implicit mode from umask', 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('/');
-
- mkdirp(file, function (err) {
- if (err) t.fail(err);
- else path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, 0777 & (~process.umask()));
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- })
- })
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js
deleted file mode 100644
index 35bd5cb..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/fs-plus/node_modules/mkdirp/test/umask_sync.js
+++ /dev/null
@@ -1,32 +0,0 @@
-var mkdirp = require('../');
-var path = require('path');
-var fs = require('fs');
-var test = require('tap').test;
-
-test('umask sync modes', 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('/');
-
- try {
- mkdirp.sync(file);
- } catch (err) {
- t.fail(err);
- return t.end();
- }
-
- path.exists(file, function (ex) {
- if (!ex) t.fail('file not created')
- else fs.stat(file, function (err, stat) {
- if (err) t.fail(err)
- else {
- t.equal(stat.mode & 0777, (0777 & (~process.umask())));
- t.ok(stat.isDirectory(), 'target not a directory');
- t.end();
- }
- });
- });
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.npmignore b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.npmignore
deleted file mode 100644
index 3dddf3f..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.npmignore
+++ /dev/null
@@ -1,2 +0,0 @@
-dist/*
-node_modules/*
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.travis.yml b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.travis.yml
deleted file mode 100644
index ddc9c4f..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/.travis.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-language: node_js
-node_js:
- - 0.8
- - "0.10" \ No newline at end of file
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/CHANGELOG.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/CHANGELOG.md
deleted file mode 100644
index 2e7ca5d..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/CHANGELOG.md
+++ /dev/null
@@ -1,194 +0,0 @@
-# Change Log
-
-## 0.1.43
-
-* Performance improvements for `SourceMapGenerator` and `SourceNode`. See issue
- #148 for some discussion and issues #150, #151, and #152 for implementations.
-
-## 0.1.42
-
-* Fix an issue where `SourceNode`s from different versions of the source-map
- library couldn't be used in conjunction with each other. See issue #142.
-
-## 0.1.41
-
-* Fix a bug with getting the source content of relative sources with a "./"
- prefix. See issue #145 and [Bug 1090768](bugzil.la/1090768).
-
-* Add the `SourceMapConsumer.prototype.computeColumnSpans` method to compute the
- column span of each mapping.
-
-* Add the `SourceMapConsumer.prototype.allGeneratedPositionsFor` method to find
- all generated positions associated with a given original source and line.
-
-## 0.1.40
-
-* Performance improvements for parsing source maps in SourceMapConsumer.
-
-## 0.1.39
-
-* Fix a bug where setting a source's contents to null before any source content
- had been set before threw a TypeError. See issue #131.
-
-## 0.1.38
-
-* Fix a bug where finding relative paths from an empty path were creating
- absolute paths. See issue #129.
-
-## 0.1.37
-
-* Fix a bug where if the source root was an empty string, relative source paths
- would turn into absolute source paths. Issue #124.
-
-## 0.1.36
-
-* Allow the `names` mapping property to be an empty string. Issue #121.
-
-## 0.1.35
-
-* A third optional parameter was added to `SourceNode.fromStringWithSourceMap`
- to specify a path that relative sources in the second parameter should be
- relative to. Issue #105.
-
-* If no file property is given to a `SourceMapGenerator`, then the resulting
- source map will no longer have a `null` file property. The property will
- simply not exist. Issue #104.
-
-* Fixed a bug where consecutive newlines were ignored in `SourceNode`s.
- Issue #116.
-
-## 0.1.34
-
-* Make `SourceNode` work with windows style ("\r\n") newlines. Issue #103.
-
-* Fix bug involving source contents and the
- `SourceMapGenerator.prototype.applySourceMap`. Issue #100.
-
-## 0.1.33
-
-* Fix some edge cases surrounding path joining and URL resolution.
-
-* Add a third parameter for relative path to
- `SourceMapGenerator.prototype.applySourceMap`.
-
-* Fix issues with mappings and EOLs.
-
-## 0.1.32
-
-* Fixed a bug where SourceMapConsumer couldn't handle negative relative columns
- (issue 92).
-
-* Fixed test runner to actually report number of failed tests as its process
- exit code.
-
-* Fixed a typo when reporting bad mappings (issue 87).
-
-## 0.1.31
-
-* Delay parsing the mappings in SourceMapConsumer until queried for a source
- location.
-
-* Support Sass source maps (which at the time of writing deviate from the spec
- in small ways) in SourceMapConsumer.
-
-## 0.1.30
-
-* Do not join source root with a source, when the source is a data URI.
-
-* Extend the test runner to allow running single specific test files at a time.
-
-* Performance improvements in `SourceNode.prototype.walk` and
- `SourceMapConsumer.prototype.eachMapping`.
-
-* Source map browser builds will now work inside Workers.
-
-* Better error messages when attempting to add an invalid mapping to a
- `SourceMapGenerator`.
-
-## 0.1.29
-
-* Allow duplicate entries in the `names` and `sources` arrays of source maps
- (usually from TypeScript) we are parsing. Fixes github issue 72.
-
-## 0.1.28
-
-* Skip duplicate mappings when creating source maps from SourceNode; github
- issue 75.
-
-## 0.1.27
-
-* Don't throw an error when the `file` property is missing in SourceMapConsumer,
- we don't use it anyway.
-
-## 0.1.26
-
-* Fix SourceNode.fromStringWithSourceMap for empty maps. Fixes github issue 70.
-
-## 0.1.25
-
-* Make compatible with browserify
-
-## 0.1.24
-
-* Fix issue with absolute paths and `file://` URIs. See
- https://bugzilla.mozilla.org/show_bug.cgi?id=885597
-
-## 0.1.23
-
-* Fix issue with absolute paths and sourcesContent, github issue 64.
-
-## 0.1.22
-
-* Ignore duplicate mappings in SourceMapGenerator. Fixes github issue 21.
-
-## 0.1.21
-
-* Fixed handling of sources that start with a slash so that they are relative to
- the source root's host.
-
-## 0.1.20
-
-* Fixed github issue #43: absolute URLs aren't joined with the source root
- anymore.
-
-## 0.1.19
-
-* Using Travis CI to run tests.
-
-## 0.1.18
-
-* Fixed a bug in the handling of sourceRoot.
-
-## 0.1.17
-
-* Added SourceNode.fromStringWithSourceMap.
-
-## 0.1.16
-
-* Added missing documentation.
-
-* Fixed the generating of empty mappings in SourceNode.
-
-## 0.1.15
-
-* Added SourceMapGenerator.applySourceMap.
-
-## 0.1.14
-
-* The sourceRoot is now handled consistently.
-
-## 0.1.13
-
-* Added SourceMapGenerator.fromSourceMap.
-
-## 0.1.12
-
-* SourceNode now generates empty mappings too.
-
-## 0.1.11
-
-* Added name support to SourceNode.
-
-## 0.1.10
-
-* Added sourcesContent support to the customer and generator.
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/LICENSE b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/LICENSE
deleted file mode 100644
index ed1b7cf..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/LICENSE
+++ /dev/null
@@ -1,28 +0,0 @@
-
-Copyright (c) 2009-2011, Mozilla Foundation 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.
-
-* Neither the names of the Mozilla Foundation nor the names of project
- 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 COPYRIGHT HOLDER 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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/Makefile.dryice.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/Makefile.dryice.js
deleted file mode 100644
index d6fc26a..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/Makefile.dryice.js
+++ /dev/null
@@ -1,166 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-var path = require('path');
-var fs = require('fs');
-var copy = require('dryice').copy;
-
-function removeAmdefine(src) {
- src = String(src).replace(
- /if\s*\(typeof\s*define\s*!==\s*'function'\)\s*{\s*var\s*define\s*=\s*require\('amdefine'\)\(module,\s*require\);\s*}\s*/g,
- '');
- src = src.replace(
- /\b(define\(.*)('amdefine',?)/gm,
- '$1');
- return src;
-}
-removeAmdefine.onRead = true;
-
-function makeNonRelative(src) {
- return src
- .replace(/require\('.\//g, 'require(\'source-map/')
- .replace(/\.\.\/\.\.\/lib\//g, '');
-}
-makeNonRelative.onRead = true;
-
-function buildBrowser() {
- console.log('\nCreating dist/source-map.js');
-
- var project = copy.createCommonJsProject({
- roots: [ path.join(__dirname, 'lib') ]
- });
-
- copy({
- source: [
- 'build/mini-require.js',
- {
- project: project,
- require: [ 'source-map/source-map-generator',
- 'source-map/source-map-consumer',
- 'source-map/source-node']
- },
- 'build/suffix-browser.js'
- ],
- filter: [
- copy.filter.moduleDefines,
- removeAmdefine
- ],
- dest: 'dist/source-map.js'
- });
-}
-
-function buildBrowserMin() {
- console.log('\nCreating dist/source-map.min.js');
-
- copy({
- source: 'dist/source-map.js',
- filter: copy.filter.uglifyjs,
- dest: 'dist/source-map.min.js'
- });
-}
-
-function buildFirefox() {
- console.log('\nCreating dist/SourceMap.jsm');
-
- var project = copy.createCommonJsProject({
- roots: [ path.join(__dirname, 'lib') ]
- });
-
- copy({
- source: [
- 'build/prefix-source-map.jsm',
- {
- project: project,
- require: [ 'source-map/source-map-consumer',
- 'source-map/source-map-generator',
- 'source-map/source-node' ]
- },
- 'build/suffix-source-map.jsm'
- ],
- filter: [
- copy.filter.moduleDefines,
- removeAmdefine,
- makeNonRelative
- ],
- dest: 'dist/SourceMap.jsm'
- });
-
- // Create dist/test/Utils.jsm
- console.log('\nCreating dist/test/Utils.jsm');
-
- project = copy.createCommonJsProject({
- roots: [ __dirname, path.join(__dirname, 'lib') ]
- });
-
- copy({
- source: [
- 'build/prefix-utils.jsm',
- 'build/assert-shim.js',
- {
- project: project,
- require: [ 'test/source-map/util' ]
- },
- 'build/suffix-utils.jsm'
- ],
- filter: [
- copy.filter.moduleDefines,
- removeAmdefine,
- makeNonRelative
- ],
- dest: 'dist/test/Utils.jsm'
- });
-
- function isTestFile(f) {
- return /^test\-.*?\.js/.test(f);
- }
-
- var testFiles = fs.readdirSync(path.join(__dirname, 'test', 'source-map')).filter(isTestFile);
-
- testFiles.forEach(function (testFile) {
- console.log('\nCreating', path.join('dist', 'test', testFile.replace(/\-/g, '_')));
-
- copy({
- source: [
- 'build/test-prefix.js',
- path.join('test', 'source-map', testFile),
- 'build/test-suffix.js'
- ],
- filter: [
- removeAmdefine,
- makeNonRelative,
- function (input, source) {
- return input.replace('define(',
- 'define("'
- + path.join('test', 'source-map', testFile.replace(/\.js$/, ''))
- + '", ["require", "exports", "module"], ');
- },
- function (input, source) {
- return input.replace('{THIS_MODULE}', function () {
- return "test/source-map/" + testFile.replace(/\.js$/, '');
- });
- }
- ],
- dest: path.join('dist', 'test', testFile.replace(/\-/g, '_'))
- });
- });
-}
-
-function ensureDir(name) {
- var dirExists = false;
- try {
- dirExists = fs.statSync(name).isDirectory();
- } catch (err) {}
-
- if (!dirExists) {
- fs.mkdirSync(name, 0777);
- }
-}
-
-ensureDir("dist");
-ensureDir("dist/test");
-buildFirefox();
-buildBrowser();
-buildBrowserMin();
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/README.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/README.md
deleted file mode 100644
index 59767aa..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/README.md
+++ /dev/null
@@ -1,475 +0,0 @@
-# Source Map
-
-This is a library to generate and consume the source map format
-[described here][format].
-
-This library is written in the Asynchronous Module Definition format, and works
-in the following environments:
-
-* Modern Browsers supporting ECMAScript 5 (either after the build, or with an
- AMD loader such as RequireJS)
-
-* Inside Firefox (as a JSM file, after the build)
-
-* With NodeJS versions 0.8.X and higher
-
-## Node
-
- $ npm install source-map
-
-## Building from Source (for everywhere else)
-
-Install Node and then run
-
- $ git clone https://fitzgen@github.com/mozilla/source-map.git
- $ cd source-map
- $ npm link .
-
-Next, run
-
- $ node Makefile.dryice.js
-
-This should spew a bunch of stuff to stdout, and create the following files:
-
-* `dist/source-map.js` - The unminified browser version.
-
-* `dist/source-map.min.js` - The minified browser version.
-
-* `dist/SourceMap.jsm` - The JavaScript Module for inclusion in Firefox source.
-
-## Examples
-
-### Consuming a source map
-
- var rawSourceMap = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['one.js', 'two.js'],
- sourceRoot: 'http://example.com/www/js/',
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
-
- var smc = new SourceMapConsumer(rawSourceMap);
-
- console.log(smc.sources);
- // [ 'http://example.com/www/js/one.js',
- // 'http://example.com/www/js/two.js' ]
-
- console.log(smc.originalPositionFor({
- line: 2,
- column: 28
- }));
- // { source: 'http://example.com/www/js/two.js',
- // line: 2,
- // column: 10,
- // name: 'n' }
-
- console.log(smc.generatedPositionFor({
- source: 'http://example.com/www/js/two.js',
- line: 2,
- column: 10
- }));
- // { line: 2, column: 28 }
-
- smc.eachMapping(function (m) {
- // ...
- });
-
-### Generating a source map
-
-In depth guide:
-[**Compiling to JavaScript, and Debugging with Source Maps**](https://hacks.mozilla.org/2013/05/compiling-to-javascript-and-debugging-with-source-maps/)
-
-#### With SourceNode (high level API)
-
- function compile(ast) {
- switch (ast.type) {
- case 'BinaryExpression':
- return new SourceNode(
- ast.location.line,
- ast.location.column,
- ast.location.source,
- [compile(ast.left), " + ", compile(ast.right)]
- );
- case 'Literal':
- return new SourceNode(
- ast.location.line,
- ast.location.column,
- ast.location.source,
- String(ast.value)
- );
- // ...
- default:
- throw new Error("Bad AST");
- }
- }
-
- var ast = parse("40 + 2", "add.js");
- console.log(compile(ast).toStringWithSourceMap({
- file: 'add.js'
- }));
- // { code: '40 + 2',
- // map: [object SourceMapGenerator] }
-
-#### With SourceMapGenerator (low level API)
-
- var map = new SourceMapGenerator({
- file: "source-mapped.js"
- });
-
- map.addMapping({
- generated: {
- line: 10,
- column: 35
- },
- source: "foo.js",
- original: {
- line: 33,
- column: 2
- },
- name: "christopher"
- });
-
- console.log(map.toString());
- // '{"version":3,"file":"source-mapped.js","sources":["foo.js"],"names":["christopher"],"mappings":";;;;;;;;;mCAgCEA"}'
-
-## API
-
-Get a reference to the module:
-
- // NodeJS
- var sourceMap = require('source-map');
-
- // Browser builds
- var sourceMap = window.sourceMap;
-
- // Inside Firefox
- let sourceMap = {};
- Components.utils.import('resource:///modules/devtools/SourceMap.jsm', sourceMap);
-
-### SourceMapConsumer
-
-A SourceMapConsumer instance represents a parsed source map which we can query
-for information about the original file positions by giving it a file position
-in the generated source.
-
-#### new SourceMapConsumer(rawSourceMap)
-
-The only parameter is the raw source map (either as a string which can be
-`JSON.parse`'d, or an object). According to the spec, source maps have the
-following attributes:
-
-* `version`: Which version of the source map spec this map is following.
-
-* `sources`: An array of URLs to the original source files.
-
-* `names`: An array of identifiers which can be referrenced by individual
- mappings.
-
-* `sourceRoot`: Optional. The URL root from which all sources are relative.
-
-* `sourcesContent`: Optional. An array of contents of the original source files.
-
-* `mappings`: A string of base64 VLQs which contain the actual mappings.
-
-* `file`: Optional. The generated filename this source map is associated with.
-
-#### SourceMapConsumer.prototype.computeColumnSpans()
-
-Compute the last column for each generated mapping. The last column is
-inclusive.
-
-#### SourceMapConsumer.prototype.originalPositionFor(generatedPosition)
-
-Returns the original source, line, and column information for the generated
-source's line and column positions provided. The only argument is an object with
-the following properties:
-
-* `line`: The line number in the generated source.
-
-* `column`: The column number in the generated source.
-
-and an object is returned with the following properties:
-
-* `source`: The original source file, or null if this information is not
- available.
-
-* `line`: The line number in the original source, or null if this information is
- not available.
-
-* `column`: The column number in the original source, or null or null if this
- information is not available.
-
-* `name`: The original identifier, or null if this information is not available.
-
-#### SourceMapConsumer.prototype.generatedPositionFor(originalPosition)
-
-Returns the generated line and column information for the original source,
-line, and column positions provided. The only argument is an object with
-the following properties:
-
-* `source`: The filename of the original source.
-
-* `line`: The line number in the original source.
-
-* `column`: The column number in the original source.
-
-and an object is returned with the following properties:
-
-* `line`: The line number in the generated source, or null.
-
-* `column`: The column number in the generated source, or null.
-
-#### SourceMapConsumer.prototype.allGeneratedPositionsFor(originalPosition)
-
-Returns all generated line and column information for the original source
-and line provided. The only argument is an object with the following
-properties:
-
-* `source`: The filename of the original source.
-
-* `line`: The line number in the original source.
-
-and an array of objects is returned, each with the following properties:
-
-* `line`: The line number in the generated source, or null.
-
-* `column`: The column number in the generated source, or null.
-
-#### SourceMapConsumer.prototype.sourceContentFor(source)
-
-Returns the original source content for the source provided. The only
-argument is the URL of the original source file.
-
-#### SourceMapConsumer.prototype.eachMapping(callback, context, order)
-
-Iterate over each mapping between an original source/line/column and a
-generated line/column in this source map.
-
-* `callback`: The function that is called with each mapping. Mappings have the
- form `{ source, generatedLine, generatedColumn, originalLine, originalColumn,
- name }`
-
-* `context`: Optional. If specified, this object will be the value of `this`
- every time that `callback` is called.
-
-* `order`: Either `SourceMapConsumer.GENERATED_ORDER` or
- `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to iterate over
- the mappings sorted by the generated file's line/column order or the
- original's source/line/column order, respectively. Defaults to
- `SourceMapConsumer.GENERATED_ORDER`.
-
-### SourceMapGenerator
-
-An instance of the SourceMapGenerator represents a source map which is being
-built incrementally.
-
-#### new SourceMapGenerator([startOfSourceMap])
-
-You may pass an object with the following properties:
-
-* `file`: The filename of the generated source that this source map is
- associated with.
-
-* `sourceRoot`: A root for all relative URLs in this source map.
-
-* `skipValidation`: Optional. When `true`, disables validation of mappings as
- they are added. This can improve performance but should be used with
- discretion, as a last resort. Even then, one should avoid using this flag when
- running tests, if possible.
-
-#### SourceMapGenerator.fromSourceMap(sourceMapConsumer)
-
-Creates a new SourceMapGenerator based on a SourceMapConsumer
-
-* `sourceMapConsumer` The SourceMap.
-
-#### SourceMapGenerator.prototype.addMapping(mapping)
-
-Add a single mapping from original source line and column to the generated
-source's line and column for this source map being created. The mapping object
-should have the following properties:
-
-* `generated`: An object with the generated line and column positions.
-
-* `original`: An object with the original line and column positions.
-
-* `source`: The original source file (relative to the sourceRoot).
-
-* `name`: An optional original token name for this mapping.
-
-#### SourceMapGenerator.prototype.setSourceContent(sourceFile, sourceContent)
-
-Set the source content for an original source file.
-
-* `sourceFile` the URL of the original source file.
-
-* `sourceContent` the content of the source file.
-
-#### SourceMapGenerator.prototype.applySourceMap(sourceMapConsumer[, sourceFile[, sourceMapPath]])
-
-Applies a SourceMap for a source file to the SourceMap.
-Each mapping to the supplied source file is rewritten using the
-supplied SourceMap. Note: The resolution for the resulting mappings
-is the minimium of this map and the supplied map.
-
-* `sourceMapConsumer`: The SourceMap to be applied.
-
-* `sourceFile`: Optional. The filename of the source file.
- If omitted, sourceMapConsumer.file will be used, if it exists.
- Otherwise an error will be thrown.
-
-* `sourceMapPath`: Optional. The dirname of the path to the SourceMap
- to be applied. If relative, it is relative to the SourceMap.
-
- This parameter is needed when the two SourceMaps aren't in the same
- directory, and the SourceMap to be applied contains relative source
- paths. If so, those relative source paths need to be rewritten
- relative to the SourceMap.
-
- If omitted, it is assumed that both SourceMaps are in the same directory,
- thus not needing any rewriting. (Supplying `'.'` has the same effect.)
-
-#### SourceMapGenerator.prototype.toString()
-
-Renders the source map being generated to a string.
-
-### SourceNode
-
-SourceNodes provide a way to abstract over interpolating and/or concatenating
-snippets of generated JavaScript source code, while maintaining the line and
-column information associated between those snippets and the original source
-code. This is useful as the final intermediate representation a compiler might
-use before outputting the generated JS and source map.
-
-#### new SourceNode([line, column, source[, chunk[, name]]])
-
-* `line`: The original line number associated with this source node, or null if
- it isn't associated with an original line.
-
-* `column`: The original column number associated with this source node, or null
- if it isn't associated with an original column.
-
-* `source`: The original source's filename; null if no filename is provided.
-
-* `chunk`: Optional. Is immediately passed to `SourceNode.prototype.add`, see
- below.
-
-* `name`: Optional. The original identifier.
-
-#### SourceNode.fromStringWithSourceMap(code, sourceMapConsumer[, relativePath])
-
-Creates a SourceNode from generated code and a SourceMapConsumer.
-
-* `code`: The generated code
-
-* `sourceMapConsumer` The SourceMap for the generated code
-
-* `relativePath` The optional path that relative sources in `sourceMapConsumer`
- should be relative to.
-
-#### SourceNode.prototype.add(chunk)
-
-Add a chunk of generated JS to this source node.
-
-* `chunk`: A string snippet of generated JS code, another instance of
- `SourceNode`, or an array where each member is one of those things.
-
-#### SourceNode.prototype.prepend(chunk)
-
-Prepend a chunk of generated JS to this source node.
-
-* `chunk`: A string snippet of generated JS code, another instance of
- `SourceNode`, or an array where each member is one of those things.
-
-#### SourceNode.prototype.setSourceContent(sourceFile, sourceContent)
-
-Set the source content for a source file. This will be added to the
-`SourceMap` in the `sourcesContent` field.
-
-* `sourceFile`: The filename of the source file
-
-* `sourceContent`: The content of the source file
-
-#### SourceNode.prototype.walk(fn)
-
-Walk over the tree of JS snippets in this node and its children. The walking
-function is called once for each snippet of JS and is passed that snippet and
-the its original associated source's line/column location.
-
-* `fn`: The traversal function.
-
-#### SourceNode.prototype.walkSourceContents(fn)
-
-Walk over the tree of SourceNodes. The walking function is called for each
-source file content and is passed the filename and source content.
-
-* `fn`: The traversal function.
-
-#### SourceNode.prototype.join(sep)
-
-Like `Array.prototype.join` except for SourceNodes. Inserts the separator
-between each of this source node's children.
-
-* `sep`: The separator.
-
-#### SourceNode.prototype.replaceRight(pattern, replacement)
-
-Call `String.prototype.replace` on the very right-most source snippet. Useful
-for trimming whitespace from the end of a source node, etc.
-
-* `pattern`: The pattern to replace.
-
-* `replacement`: The thing to replace the pattern with.
-
-#### SourceNode.prototype.toString()
-
-Return the string representation of this source node. Walks over the tree and
-concatenates all the various snippets together to one string.
-
-#### SourceNode.prototype.toStringWithSourceMap([startOfSourceMap])
-
-Returns the string representation of this tree of source nodes, plus a
-SourceMapGenerator which contains all the mappings between the generated and
-original sources.
-
-The arguments are the same as those to `new SourceMapGenerator`.
-
-## Tests
-
-[![Build Status](https://travis-ci.org/mozilla/source-map.png?branch=master)](https://travis-ci.org/mozilla/source-map)
-
-Install NodeJS version 0.8.0 or greater, then run `node test/run-tests.js`.
-
-To add new tests, create a new file named `test/test-<your new test name>.js`
-and export your test functions with names that start with "test", for example
-
- exports["test doing the foo bar"] = function (assert, util) {
- ...
- };
-
-The new test will be located automatically when you run the suite.
-
-The `util` argument is the test utility module located at `test/source-map/util`.
-
-The `assert` argument is a cut down version of node's assert module. You have
-access to the following assertion functions:
-
-* `doesNotThrow`
-
-* `equal`
-
-* `ok`
-
-* `strictEqual`
-
-* `throws`
-
-(The reason for the restricted set of test functions is because we need the
-tests to run inside Firefox's test suite as well and so the assert module is
-shimmed in that environment. See `build/assert-shim.js`.)
-
-[format]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit
-[feature]: https://wiki.mozilla.org/DevTools/Features/SourceMap
-[Dryice]: https://github.com/mozilla/dryice
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/assert-shim.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/assert-shim.js
deleted file mode 100644
index daa1a62..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/assert-shim.js
+++ /dev/null
@@ -1,56 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-define('test/source-map/assert', ['exports'], function (exports) {
-
- let do_throw = function (msg) {
- throw new Error(msg);
- };
-
- exports.init = function (throw_fn) {
- do_throw = throw_fn;
- };
-
- exports.doesNotThrow = function (fn) {
- try {
- fn();
- }
- catch (e) {
- do_throw(e.message);
- }
- };
-
- exports.equal = function (actual, expected, msg) {
- msg = msg || String(actual) + ' != ' + String(expected);
- if (actual != expected) {
- do_throw(msg);
- }
- };
-
- exports.ok = function (val, msg) {
- msg = msg || String(val) + ' is falsey';
- if (!Boolean(val)) {
- do_throw(msg);
- }
- };
-
- exports.strictEqual = function (actual, expected, msg) {
- msg = msg || String(actual) + ' !== ' + String(expected);
- if (actual !== expected) {
- do_throw(msg);
- }
- };
-
- exports.throws = function (fn) {
- try {
- fn();
- do_throw('Expected an error to be thrown, but it wasn\'t.');
- }
- catch (e) {
- }
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/mini-require.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/mini-require.js
deleted file mode 100644
index 0daf453..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/mini-require.js
+++ /dev/null
@@ -1,152 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-
-/**
- * Define a module along with a payload.
- * @param {string} moduleName Name for the payload
- * @param {ignored} deps Ignored. For compatibility with CommonJS AMD Spec
- * @param {function} payload Function with (require, exports, module) params
- */
-function define(moduleName, deps, payload) {
- if (typeof moduleName != "string") {
- throw new TypeError('Expected string, got: ' + moduleName);
- }
-
- if (arguments.length == 2) {
- payload = deps;
- }
-
- if (moduleName in define.modules) {
- throw new Error("Module already defined: " + moduleName);
- }
- define.modules[moduleName] = payload;
-};
-
-/**
- * The global store of un-instantiated modules
- */
-define.modules = {};
-
-
-/**
- * We invoke require() in the context of a Domain so we can have multiple
- * sets of modules running separate from each other.
- * This contrasts with JSMs which are singletons, Domains allows us to
- * optionally load a CommonJS module twice with separate data each time.
- * Perhaps you want 2 command lines with a different set of commands in each,
- * for example.
- */
-function Domain() {
- this.modules = {};
- this._currentModule = null;
-}
-
-(function () {
-
- /**
- * Lookup module names and resolve them by calling the definition function if
- * needed.
- * There are 2 ways to call this, either with an array of dependencies and a
- * callback to call when the dependencies are found (which can happen
- * asynchronously in an in-page context) or with a single string an no callback
- * where the dependency is resolved synchronously and returned.
- * The API is designed to be compatible with the CommonJS AMD spec and
- * RequireJS.
- * @param {string[]|string} deps A name, or names for the payload
- * @param {function|undefined} callback Function to call when the dependencies
- * are resolved
- * @return {undefined|object} The module required or undefined for
- * array/callback method
- */
- Domain.prototype.require = function(deps, callback) {
- if (Array.isArray(deps)) {
- var params = deps.map(function(dep) {
- return this.lookup(dep);
- }, this);
- if (callback) {
- callback.apply(null, params);
- }
- return undefined;
- }
- else {
- return this.lookup(deps);
- }
- };
-
- function normalize(path) {
- var bits = path.split('/');
- var i = 1;
- while (i < bits.length) {
- if (bits[i] === '..') {
- bits.splice(i-1, 1);
- } else if (bits[i] === '.') {
- bits.splice(i, 1);
- } else {
- i++;
- }
- }
- return bits.join('/');
- }
-
- function join(a, b) {
- a = a.trim();
- b = b.trim();
- if (/^\//.test(b)) {
- return b;
- } else {
- return a.replace(/\/*$/, '/') + b;
- }
- }
-
- function dirname(path) {
- var bits = path.split('/');
- bits.pop();
- return bits.join('/');
- }
-
- /**
- * Lookup module names and resolve them by calling the definition function if
- * needed.
- * @param {string} moduleName A name for the payload to lookup
- * @return {object} The module specified by aModuleName or null if not found.
- */
- Domain.prototype.lookup = function(moduleName) {
- if (/^\./.test(moduleName)) {
- moduleName = normalize(join(dirname(this._currentModule), moduleName));
- }
-
- if (moduleName in this.modules) {
- var module = this.modules[moduleName];
- return module;
- }
-
- if (!(moduleName in define.modules)) {
- throw new Error("Module not defined: " + moduleName);
- }
-
- var module = define.modules[moduleName];
-
- if (typeof module == "function") {
- var exports = {};
- var previousModule = this._currentModule;
- this._currentModule = moduleName;
- module(this.require.bind(this), exports, { id: moduleName, uri: "" });
- this._currentModule = previousModule;
- module = exports;
- }
-
- // cache the resulting module object for next time
- this.modules[moduleName] = module;
-
- return module;
- };
-
-}());
-
-define.Domain = Domain;
-define.globalDomain = new Domain();
-var require = define.globalDomain.require.bind(define.globalDomain);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-source-map.jsm b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-source-map.jsm
deleted file mode 100644
index ee2539d..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-source-map.jsm
+++ /dev/null
@@ -1,20 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-
-/*
- * WARNING!
- *
- * Do not edit this file directly, it is built from the sources at
- * https://github.com/mozilla/source-map/
- */
-
-///////////////////////////////////////////////////////////////////////////////
-
-
-this.EXPORTED_SYMBOLS = [ "SourceMapConsumer", "SourceMapGenerator", "SourceNode" ];
-
-Components.utils.import('resource://gre/modules/devtools/Require.jsm');
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-utils.jsm b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-utils.jsm
deleted file mode 100644
index 80341d4..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/prefix-utils.jsm
+++ /dev/null
@@ -1,18 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-
-/*
- * WARNING!
- *
- * Do not edit this file directly, it is built from the sources at
- * https://github.com/mozilla/source-map/
- */
-
-Components.utils.import('resource://gre/modules/devtools/Require.jsm');
-Components.utils.import('resource://gre/modules/devtools/SourceMap.jsm');
-
-this.EXPORTED_SYMBOLS = [ "define", "runSourceMapTests" ];
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-browser.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-browser.js
deleted file mode 100644
index fb29ff5..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-browser.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-///////////////////////////////////////////////////////////////////////////////
-
-this.sourceMap = {
- SourceMapConsumer: require('source-map/source-map-consumer').SourceMapConsumer,
- SourceMapGenerator: require('source-map/source-map-generator').SourceMapGenerator,
- SourceNode: require('source-map/source-node').SourceNode
-};
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-source-map.jsm b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-source-map.jsm
deleted file mode 100644
index cf3c2d8..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-source-map.jsm
+++ /dev/null
@@ -1,6 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-///////////////////////////////////////////////////////////////////////////////
-
-this.SourceMapConsumer = require('source-map/source-map-consumer').SourceMapConsumer;
-this.SourceMapGenerator = require('source-map/source-map-generator').SourceMapGenerator;
-this.SourceNode = require('source-map/source-node').SourceNode;
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-utils.jsm b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-utils.jsm
deleted file mode 100644
index b31b84c..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/suffix-utils.jsm
+++ /dev/null
@@ -1,21 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-function runSourceMapTests(modName, do_throw) {
- let mod = require(modName);
- let assert = require('test/source-map/assert');
- let util = require('test/source-map/util');
-
- assert.init(do_throw);
-
- for (let k in mod) {
- if (/^test/.test(k)) {
- mod[k](assert, util);
- }
- }
-
-}
-this.runSourceMapTests = runSourceMapTests;
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-prefix.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-prefix.js
deleted file mode 100644
index 1b13f30..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-prefix.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- * WARNING!
- *
- * Do not edit this file directly, it is built from the sources at
- * https://github.com/mozilla/source-map/
- */
-
-Components.utils.import('resource://test/Utils.jsm');
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-suffix.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-suffix.js
deleted file mode 100644
index bec2de3..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/build/test-suffix.js
+++ /dev/null
@@ -1,3 +0,0 @@
-function run_test() {
- runSourceMapTests('{THIS_MODULE}', do_throw);
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map.js
deleted file mode 100644
index 121ad24..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map.js
+++ /dev/null
@@ -1,8 +0,0 @@
-/*
- * Copyright 2009-2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE.txt or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-exports.SourceMapGenerator = require('./source-map/source-map-generator').SourceMapGenerator;
-exports.SourceMapConsumer = require('./source-map/source-map-consumer').SourceMapConsumer;
-exports.SourceNode = require('./source-map/source-node').SourceNode;
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/array-set.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/array-set.js
deleted file mode 100644
index 40f9a18..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/array-set.js
+++ /dev/null
@@ -1,97 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var util = require('./util');
-
- /**
- * A data structure which is a combination of an array and a set. Adding a new
- * member is O(1), testing for membership is O(1), and finding the index of an
- * element is O(1). Removing elements from the set is not supported. Only
- * strings are supported for membership.
- */
- function ArraySet() {
- this._array = [];
- this._set = {};
- }
-
- /**
- * Static method for creating ArraySet instances from an existing array.
- */
- ArraySet.fromArray = function ArraySet_fromArray(aArray, aAllowDuplicates) {
- var set = new ArraySet();
- for (var i = 0, len = aArray.length; i < len; i++) {
- set.add(aArray[i], aAllowDuplicates);
- }
- return set;
- };
-
- /**
- * Add the given string to this set.
- *
- * @param String aStr
- */
- ArraySet.prototype.add = function ArraySet_add(aStr, aAllowDuplicates) {
- var isDuplicate = this.has(aStr);
- var idx = this._array.length;
- if (!isDuplicate || aAllowDuplicates) {
- this._array.push(aStr);
- }
- if (!isDuplicate) {
- this._set[util.toSetString(aStr)] = idx;
- }
- };
-
- /**
- * Is the given string a member of this set?
- *
- * @param String aStr
- */
- ArraySet.prototype.has = function ArraySet_has(aStr) {
- return Object.prototype.hasOwnProperty.call(this._set,
- util.toSetString(aStr));
- };
-
- /**
- * What is the index of the given string in the array?
- *
- * @param String aStr
- */
- ArraySet.prototype.indexOf = function ArraySet_indexOf(aStr) {
- if (this.has(aStr)) {
- return this._set[util.toSetString(aStr)];
- }
- throw new Error('"' + aStr + '" is not in the set.');
- };
-
- /**
- * What is the element at the given index?
- *
- * @param Number aIdx
- */
- ArraySet.prototype.at = function ArraySet_at(aIdx) {
- if (aIdx >= 0 && aIdx < this._array.length) {
- return this._array[aIdx];
- }
- throw new Error('No element indexed by ' + aIdx);
- };
-
- /**
- * Returns the array representation of this set (which has the proper indices
- * indicated by indexOf). Note that this is a copy of the internal array used
- * for storing the members so that no one can mess with internal state.
- */
- ArraySet.prototype.toArray = function ArraySet_toArray() {
- return this._array.slice();
- };
-
- exports.ArraySet = ArraySet;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64-vlq.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64-vlq.js
deleted file mode 100644
index e22dcae..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64-vlq.js
+++ /dev/null
@@ -1,142 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- *
- * Based on the Base 64 VLQ implementation in Closure Compiler:
- * https://code.google.com/p/closure-compiler/source/browse/trunk/src/com/google/debugging/sourcemap/Base64VLQ.java
- *
- * Copyright 2011 The Closure Compiler Authors. 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 Google Inc. 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 COPYRIGHT
- * OWNER 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.
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var base64 = require('./base64');
-
- // A single base 64 digit can contain 6 bits of data. For the base 64 variable
- // length quantities we use in the source map spec, the first bit is the sign,
- // the next four bits are the actual value, and the 6th bit is the
- // continuation bit. The continuation bit tells us whether there are more
- // digits in this value following this digit.
- //
- // Continuation
- // | Sign
- // | |
- // V V
- // 101011
-
- var VLQ_BASE_SHIFT = 5;
-
- // binary: 100000
- var VLQ_BASE = 1 << VLQ_BASE_SHIFT;
-
- // binary: 011111
- var VLQ_BASE_MASK = VLQ_BASE - 1;
-
- // binary: 100000
- var VLQ_CONTINUATION_BIT = VLQ_BASE;
-
- /**
- * Converts from a two-complement value to a value where the sign bit is
- * placed in the least significant bit. For example, as decimals:
- * 1 becomes 2 (10 binary), -1 becomes 3 (11 binary)
- * 2 becomes 4 (100 binary), -2 becomes 5 (101 binary)
- */
- function toVLQSigned(aValue) {
- return aValue < 0
- ? ((-aValue) << 1) + 1
- : (aValue << 1) + 0;
- }
-
- /**
- * Converts to a two-complement value from a value where the sign bit is
- * placed in the least significant bit. For example, as decimals:
- * 2 (10 binary) becomes 1, 3 (11 binary) becomes -1
- * 4 (100 binary) becomes 2, 5 (101 binary) becomes -2
- */
- function fromVLQSigned(aValue) {
- var isNegative = (aValue & 1) === 1;
- var shifted = aValue >> 1;
- return isNegative
- ? -shifted
- : shifted;
- }
-
- /**
- * Returns the base 64 VLQ encoded value.
- */
- exports.encode = function base64VLQ_encode(aValue) {
- var encoded = "";
- var digit;
-
- var vlq = toVLQSigned(aValue);
-
- do {
- digit = vlq & VLQ_BASE_MASK;
- vlq >>>= VLQ_BASE_SHIFT;
- if (vlq > 0) {
- // There are still more digits in this value, so we must make sure the
- // continuation bit is marked.
- digit |= VLQ_CONTINUATION_BIT;
- }
- encoded += base64.encode(digit);
- } while (vlq > 0);
-
- return encoded;
- };
-
- /**
- * Decodes the next base 64 VLQ value from the given string and returns the
- * value and the rest of the string via the out parameter.
- */
- exports.decode = function base64VLQ_decode(aStr, aOutParam) {
- var i = 0;
- var strLen = aStr.length;
- var result = 0;
- var shift = 0;
- var continuation, digit;
-
- do {
- if (i >= strLen) {
- throw new Error("Expected more digits in base 64 VLQ value.");
- }
- digit = base64.decode(aStr.charAt(i++));
- continuation = !!(digit & VLQ_CONTINUATION_BIT);
- digit &= VLQ_BASE_MASK;
- result = result + (digit << shift);
- shift += VLQ_BASE_SHIFT;
- } while (continuation);
-
- aOutParam.value = fromVLQSigned(result);
- aOutParam.rest = aStr.slice(i);
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64.js
deleted file mode 100644
index 863cc46..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/base64.js
+++ /dev/null
@@ -1,42 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var charToIntMap = {};
- var intToCharMap = {};
-
- 'ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/'
- .split('')
- .forEach(function (ch, index) {
- charToIntMap[ch] = index;
- intToCharMap[index] = ch;
- });
-
- /**
- * Encode an integer in the range of 0 to 63 to a single base 64 digit.
- */
- exports.encode = function base64_encode(aNumber) {
- if (aNumber in intToCharMap) {
- return intToCharMap[aNumber];
- }
- throw new TypeError("Must be between 0 and 63: " + aNumber);
- };
-
- /**
- * Decode a single base 64 digit to an integer.
- */
- exports.decode = function base64_decode(aChar) {
- if (aChar in charToIntMap) {
- return charToIntMap[aChar];
- }
- throw new TypeError("Not a valid base 64 digit: " + aChar);
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/binary-search.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/binary-search.js
deleted file mode 100644
index e085f81..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/binary-search.js
+++ /dev/null
@@ -1,80 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- /**
- * Recursive implementation of binary search.
- *
- * @param aLow Indices here and lower do not contain the needle.
- * @param aHigh Indices here and higher do not contain the needle.
- * @param aNeedle The element being searched for.
- * @param aHaystack The non-empty array being searched.
- * @param aCompare Function which takes two elements and returns -1, 0, or 1.
- */
- function recursiveSearch(aLow, aHigh, aNeedle, aHaystack, aCompare) {
- // This function terminates when one of the following is true:
- //
- // 1. We find the exact element we are looking for.
- //
- // 2. We did not find the exact element, but we can return the index of
- // the next closest element that is less than that element.
- //
- // 3. We did not find the exact element, and there is no next-closest
- // element which is less than the one we are searching for, so we
- // return -1.
- var mid = Math.floor((aHigh - aLow) / 2) + aLow;
- var cmp = aCompare(aNeedle, aHaystack[mid], true);
- if (cmp === 0) {
- // Found the element we are looking for.
- return mid;
- }
- else if (cmp > 0) {
- // aHaystack[mid] is greater than our needle.
- if (aHigh - mid > 1) {
- // The element is in the upper half.
- return recursiveSearch(mid, aHigh, aNeedle, aHaystack, aCompare);
- }
- // We did not find an exact match, return the next closest one
- // (termination case 2).
- return mid;
- }
- else {
- // aHaystack[mid] is less than our needle.
- if (mid - aLow > 1) {
- // The element is in the lower half.
- return recursiveSearch(aLow, mid, aNeedle, aHaystack, aCompare);
- }
- // The exact needle element was not found in this haystack. Determine if
- // we are in termination case (2) or (3) and return the appropriate thing.
- return aLow < 0 ? -1 : aLow;
- }
- }
-
- /**
- * This is an implementation of binary search which will always try and return
- * the index of next lowest value checked if there is no exact hit. This is
- * because mappings between original and generated line/col pairs are single
- * points, and there is an implicit region between each of them, so a miss
- * just means that you aren't on the very start of a region.
- *
- * @param aNeedle The element you are looking for.
- * @param aHaystack The array that is being searched.
- * @param aCompare A function which takes the needle and an element in the
- * array and returns -1, 0, or 1 depending on whether the needle is less
- * than, equal to, or greater than the element, respectively.
- */
- exports.search = function search(aNeedle, aHaystack, aCompare) {
- if (aHaystack.length === 0) {
- return -1;
- }
- return recursiveSearch(-1, aHaystack.length, aNeedle, aHaystack, aCompare)
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/mapping-list.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/mapping-list.js
deleted file mode 100644
index 2a4eb61..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/mapping-list.js
+++ /dev/null
@@ -1,86 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2014 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var util = require('./util');
-
- /**
- * Determine whether mappingB is after mappingA with respect to generated
- * position.
- */
- function generatedPositionAfter(mappingA, mappingB) {
- // Optimized for most common case
- var lineA = mappingA.generatedLine;
- var lineB = mappingB.generatedLine;
- var columnA = mappingA.generatedColumn;
- var columnB = mappingB.generatedColumn;
- return lineB > lineA || lineB == lineA && columnB >= columnA ||
- util.compareByGeneratedPositions(mappingA, mappingB) <= 0;
- }
-
- /**
- * A data structure to provide a sorted view of accumulated mappings in a
- * performance conscious manner. It trades a neglibable overhead in general
- * case for a large speedup in case of mappings being added in order.
- */
- function MappingList() {
- this._array = [];
- this._sorted = true;
- // Serves as infimum
- this._last = {generatedLine: -1, generatedColumn: 0};
- }
-
- /**
- * Iterate through internal items. This method takes the same arguments that
- * `Array.prototype.forEach` takes.
- *
- * NOTE: The order of the mappings is NOT guaranteed.
- */
- MappingList.prototype.unsortedForEach =
- function MappingList_forEach(aCallback, aThisArg) {
- this._array.forEach(aCallback, aThisArg);
- };
-
- /**
- * Add the given source mapping.
- *
- * @param Object aMapping
- */
- MappingList.prototype.add = function MappingList_add(aMapping) {
- var mapping;
- if (generatedPositionAfter(this._last, aMapping)) {
- this._last = aMapping;
- this._array.push(aMapping);
- } else {
- this._sorted = false;
- this._array.push(aMapping);
- }
- };
-
- /**
- * Returns the flat, sorted array of mappings. The mappings are sorted by
- * generated position.
- *
- * WARNING: This method returns internal data without copying, for
- * performance. The return value must NOT be mutated, and should be treated as
- * an immutable borrow. If you want to take ownership, you must make your own
- * copy.
- */
- MappingList.prototype.toArray = function MappingList_toArray() {
- if (!this._sorted) {
- this._array.sort(util.compareByGeneratedPositions);
- this._sorted = true;
- }
- return this._array;
- };
-
- exports.MappingList = MappingList;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-consumer.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-consumer.js
deleted file mode 100644
index cfaa299..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-consumer.js
+++ /dev/null
@@ -1,575 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var util = require('./util');
- var binarySearch = require('./binary-search');
- var ArraySet = require('./array-set').ArraySet;
- var base64VLQ = require('./base64-vlq');
-
- /**
- * A SourceMapConsumer instance represents a parsed source map which we can
- * query for information about the original file positions by giving it a file
- * position in the generated source.
- *
- * The only parameter is the raw source map (either as a JSON string, or
- * already parsed to an object). According to the spec, source maps have the
- * following attributes:
- *
- * - version: Which version of the source map spec this map is following.
- * - sources: An array of URLs to the original source files.
- * - names: An array of identifiers which can be referrenced by individual mappings.
- * - sourceRoot: Optional. The URL root from which all sources are relative.
- * - sourcesContent: Optional. An array of contents of the original source files.
- * - mappings: A string of base64 VLQs which contain the actual mappings.
- * - file: Optional. The generated file this source map is associated with.
- *
- * Here is an example source map, taken from the source map spec[0]:
- *
- * {
- * version : 3,
- * file: "out.js",
- * sourceRoot : "",
- * sources: ["foo.js", "bar.js"],
- * names: ["src", "maps", "are", "fun"],
- * mappings: "AA,AB;;ABCDE;"
- * }
- *
- * [0]: https://docs.google.com/document/d/1U1RGAehQwRypUTovF1KRlpiOFze0b-_2gc6fAH0KY0k/edit?pli=1#
- */
- function SourceMapConsumer(aSourceMap) {
- var sourceMap = aSourceMap;
- if (typeof aSourceMap === 'string') {
- sourceMap = JSON.parse(aSourceMap.replace(/^\)\]\}'/, ''));
- }
-
- var version = util.getArg(sourceMap, 'version');
- var sources = util.getArg(sourceMap, 'sources');
- // Sass 3.3 leaves out the 'names' array, so we deviate from the spec (which
- // requires the array) to play nice here.
- var names = util.getArg(sourceMap, 'names', []);
- var sourceRoot = util.getArg(sourceMap, 'sourceRoot', null);
- var sourcesContent = util.getArg(sourceMap, 'sourcesContent', null);
- var mappings = util.getArg(sourceMap, 'mappings');
- var file = util.getArg(sourceMap, 'file', null);
-
- // Once again, Sass deviates from the spec and supplies the version as a
- // string rather than a number, so we use loose equality checking here.
- if (version != this._version) {
- throw new Error('Unsupported version: ' + version);
- }
-
- // Some source maps produce relative source paths like "./foo.js" instead of
- // "foo.js". Normalize these first so that future comparisons will succeed.
- // See bugzil.la/1090768.
- sources = sources.map(util.normalize);
-
- // Pass `true` below to allow duplicate names and sources. While source maps
- // are intended to be compressed and deduplicated, the TypeScript compiler
- // sometimes generates source maps with duplicates in them. See Github issue
- // #72 and bugzil.la/889492.
- this._names = ArraySet.fromArray(names, true);
- this._sources = ArraySet.fromArray(sources, true);
-
- this.sourceRoot = sourceRoot;
- this.sourcesContent = sourcesContent;
- this._mappings = mappings;
- this.file = file;
- }
-
- /**
- * Create a SourceMapConsumer from a SourceMapGenerator.
- *
- * @param SourceMapGenerator aSourceMap
- * The source map that will be consumed.
- * @returns SourceMapConsumer
- */
- SourceMapConsumer.fromSourceMap =
- function SourceMapConsumer_fromSourceMap(aSourceMap) {
- var smc = Object.create(SourceMapConsumer.prototype);
-
- smc._names = ArraySet.fromArray(aSourceMap._names.toArray(), true);
- smc._sources = ArraySet.fromArray(aSourceMap._sources.toArray(), true);
- smc.sourceRoot = aSourceMap._sourceRoot;
- smc.sourcesContent = aSourceMap._generateSourcesContent(smc._sources.toArray(),
- smc.sourceRoot);
- smc.file = aSourceMap._file;
-
- smc.__generatedMappings = aSourceMap._mappings.toArray().slice();
- smc.__originalMappings = aSourceMap._mappings.toArray().slice()
- .sort(util.compareByOriginalPositions);
-
- return smc;
- };
-
- /**
- * The version of the source mapping spec that we are consuming.
- */
- SourceMapConsumer.prototype._version = 3;
-
- /**
- * The list of original sources.
- */
- Object.defineProperty(SourceMapConsumer.prototype, 'sources', {
- get: function () {
- return this._sources.toArray().map(function (s) {
- return this.sourceRoot != null ? util.join(this.sourceRoot, s) : s;
- }, this);
- }
- });
-
- // `__generatedMappings` and `__originalMappings` are arrays that hold the
- // parsed mapping coordinates from the source map's "mappings" attribute. They
- // are lazily instantiated, accessed via the `_generatedMappings` and
- // `_originalMappings` getters respectively, and we only parse the mappings
- // and create these arrays once queried for a source location. We jump through
- // these hoops because there can be many thousands of mappings, and parsing
- // them is expensive, so we only want to do it if we must.
- //
- // Each object in the arrays is of the form:
- //
- // {
- // generatedLine: The line number in the generated code,
- // generatedColumn: The column number in the generated code,
- // source: The path to the original source file that generated this
- // chunk of code,
- // originalLine: The line number in the original source that
- // corresponds to this chunk of generated code,
- // originalColumn: The column number in the original source that
- // corresponds to this chunk of generated code,
- // name: The name of the original symbol which generated this chunk of
- // code.
- // }
- //
- // All properties except for `generatedLine` and `generatedColumn` can be
- // `null`.
- //
- // `_generatedMappings` is ordered by the generated positions.
- //
- // `_originalMappings` is ordered by the original positions.
-
- SourceMapConsumer.prototype.__generatedMappings = null;
- Object.defineProperty(SourceMapConsumer.prototype, '_generatedMappings', {
- get: function () {
- if (!this.__generatedMappings) {
- this.__generatedMappings = [];
- this.__originalMappings = [];
- this._parseMappings(this._mappings, this.sourceRoot);
- }
-
- return this.__generatedMappings;
- }
- });
-
- SourceMapConsumer.prototype.__originalMappings = null;
- Object.defineProperty(SourceMapConsumer.prototype, '_originalMappings', {
- get: function () {
- if (!this.__originalMappings) {
- this.__generatedMappings = [];
- this.__originalMappings = [];
- this._parseMappings(this._mappings, this.sourceRoot);
- }
-
- return this.__originalMappings;
- }
- });
-
- SourceMapConsumer.prototype._nextCharIsMappingSeparator =
- function SourceMapConsumer_nextCharIsMappingSeparator(aStr) {
- var c = aStr.charAt(0);
- return c === ";" || c === ",";
- };
-
- /**
- * Parse the mappings in a string in to a data structure which we can easily
- * query (the ordered arrays in the `this.__generatedMappings` and
- * `this.__originalMappings` properties).
- */
- SourceMapConsumer.prototype._parseMappings =
- function SourceMapConsumer_parseMappings(aStr, aSourceRoot) {
- var generatedLine = 1;
- var previousGeneratedColumn = 0;
- var previousOriginalLine = 0;
- var previousOriginalColumn = 0;
- var previousSource = 0;
- var previousName = 0;
- var str = aStr;
- var temp = {};
- var mapping;
-
- while (str.length > 0) {
- if (str.charAt(0) === ';') {
- generatedLine++;
- str = str.slice(1);
- previousGeneratedColumn = 0;
- }
- else if (str.charAt(0) === ',') {
- str = str.slice(1);
- }
- else {
- mapping = {};
- mapping.generatedLine = generatedLine;
-
- // Generated column.
- base64VLQ.decode(str, temp);
- mapping.generatedColumn = previousGeneratedColumn + temp.value;
- previousGeneratedColumn = mapping.generatedColumn;
- str = temp.rest;
-
- if (str.length > 0 && !this._nextCharIsMappingSeparator(str)) {
- // Original source.
- base64VLQ.decode(str, temp);
- mapping.source = this._sources.at(previousSource + temp.value);
- previousSource += temp.value;
- str = temp.rest;
- if (str.length === 0 || this._nextCharIsMappingSeparator(str)) {
- throw new Error('Found a source, but no line and column');
- }
-
- // Original line.
- base64VLQ.decode(str, temp);
- mapping.originalLine = previousOriginalLine + temp.value;
- previousOriginalLine = mapping.originalLine;
- // Lines are stored 0-based
- mapping.originalLine += 1;
- str = temp.rest;
- if (str.length === 0 || this._nextCharIsMappingSeparator(str)) {
- throw new Error('Found a source and line, but no column');
- }
-
- // Original column.
- base64VLQ.decode(str, temp);
- mapping.originalColumn = previousOriginalColumn + temp.value;
- previousOriginalColumn = mapping.originalColumn;
- str = temp.rest;
-
- if (str.length > 0 && !this._nextCharIsMappingSeparator(str)) {
- // Original name.
- base64VLQ.decode(str, temp);
- mapping.name = this._names.at(previousName + temp.value);
- previousName += temp.value;
- str = temp.rest;
- }
- }
-
- this.__generatedMappings.push(mapping);
- if (typeof mapping.originalLine === 'number') {
- this.__originalMappings.push(mapping);
- }
- }
- }
-
- this.__generatedMappings.sort(util.compareByGeneratedPositions);
- this.__originalMappings.sort(util.compareByOriginalPositions);
- };
-
- /**
- * Find the mapping that best matches the hypothetical "needle" mapping that
- * we are searching for in the given "haystack" of mappings.
- */
- SourceMapConsumer.prototype._findMapping =
- function SourceMapConsumer_findMapping(aNeedle, aMappings, aLineName,
- aColumnName, aComparator) {
- // To return the position we are searching for, we must first find the
- // mapping for the given position and then return the opposite position it
- // points to. Because the mappings are sorted, we can use binary search to
- // find the best mapping.
-
- if (aNeedle[aLineName] <= 0) {
- throw new TypeError('Line must be greater than or equal to 1, got '
- + aNeedle[aLineName]);
- }
- if (aNeedle[aColumnName] < 0) {
- throw new TypeError('Column must be greater than or equal to 0, got '
- + aNeedle[aColumnName]);
- }
-
- return binarySearch.search(aNeedle, aMappings, aComparator);
- };
-
- /**
- * Compute the last column for each generated mapping. The last column is
- * inclusive.
- */
- SourceMapConsumer.prototype.computeColumnSpans =
- function SourceMapConsumer_computeColumnSpans() {
- for (var index = 0; index < this._generatedMappings.length; ++index) {
- var mapping = this._generatedMappings[index];
-
- // Mappings do not contain a field for the last generated columnt. We
- // can come up with an optimistic estimate, however, by assuming that
- // mappings are contiguous (i.e. given two consecutive mappings, the
- // first mapping ends where the second one starts).
- if (index + 1 < this._generatedMappings.length) {
- var nextMapping = this._generatedMappings[index + 1];
-
- if (mapping.generatedLine === nextMapping.generatedLine) {
- mapping.lastGeneratedColumn = nextMapping.generatedColumn - 1;
- continue;
- }
- }
-
- // The last mapping for each line spans the entire line.
- mapping.lastGeneratedColumn = Infinity;
- }
- };
-
- /**
- * Returns the original source, line, and column information for the generated
- * source's line and column positions provided. The only argument is an object
- * with the following properties:
- *
- * - line: The line number in the generated source.
- * - column: The column number in the generated source.
- *
- * and an object is returned with the following properties:
- *
- * - source: The original source file, or null.
- * - line: The line number in the original source, or null.
- * - column: The column number in the original source, or null.
- * - name: The original identifier, or null.
- */
- SourceMapConsumer.prototype.originalPositionFor =
- function SourceMapConsumer_originalPositionFor(aArgs) {
- var needle = {
- generatedLine: util.getArg(aArgs, 'line'),
- generatedColumn: util.getArg(aArgs, 'column')
- };
-
- var index = this._findMapping(needle,
- this._generatedMappings,
- "generatedLine",
- "generatedColumn",
- util.compareByGeneratedPositions);
-
- if (index >= 0) {
- var mapping = this._generatedMappings[index];
-
- if (mapping.generatedLine === needle.generatedLine) {
- var source = util.getArg(mapping, 'source', null);
- if (source != null && this.sourceRoot != null) {
- source = util.join(this.sourceRoot, source);
- }
- return {
- source: source,
- line: util.getArg(mapping, 'originalLine', null),
- column: util.getArg(mapping, 'originalColumn', null),
- name: util.getArg(mapping, 'name', null)
- };
- }
- }
-
- return {
- source: null,
- line: null,
- column: null,
- name: null
- };
- };
-
- /**
- * Returns the original source content. The only argument is the url of the
- * original source file. Returns null if no original source content is
- * availible.
- */
- SourceMapConsumer.prototype.sourceContentFor =
- function SourceMapConsumer_sourceContentFor(aSource) {
- if (!this.sourcesContent) {
- return null;
- }
-
- if (this.sourceRoot != null) {
- aSource = util.relative(this.sourceRoot, aSource);
- }
-
- if (this._sources.has(aSource)) {
- return this.sourcesContent[this._sources.indexOf(aSource)];
- }
-
- var url;
- if (this.sourceRoot != null
- && (url = util.urlParse(this.sourceRoot))) {
- // XXX: file:// URIs and absolute paths lead to unexpected behavior for
- // many users. We can help them out when they expect file:// URIs to
- // behave like it would if they were running a local HTTP server. See
- // https://bugzilla.mozilla.org/show_bug.cgi?id=885597.
- var fileUriAbsPath = aSource.replace(/^file:\/\//, "");
- if (url.scheme == "file"
- && this._sources.has(fileUriAbsPath)) {
- return this.sourcesContent[this._sources.indexOf(fileUriAbsPath)]
- }
-
- if ((!url.path || url.path == "/")
- && this._sources.has("/" + aSource)) {
- return this.sourcesContent[this._sources.indexOf("/" + aSource)];
- }
- }
-
- throw new Error('"' + aSource + '" is not in the SourceMap.');
- };
-
- /**
- * Returns the generated line and column information for the original source,
- * line, and column positions provided. The only argument is an object with
- * the following properties:
- *
- * - source: The filename of the original source.
- * - line: The line number in the original source.
- * - column: The column number in the original source.
- *
- * and an object is returned with the following properties:
- *
- * - line: The line number in the generated source, or null.
- * - column: The column number in the generated source, or null.
- */
- SourceMapConsumer.prototype.generatedPositionFor =
- function SourceMapConsumer_generatedPositionFor(aArgs) {
- var needle = {
- source: util.getArg(aArgs, 'source'),
- originalLine: util.getArg(aArgs, 'line'),
- originalColumn: util.getArg(aArgs, 'column')
- };
-
- if (this.sourceRoot != null) {
- needle.source = util.relative(this.sourceRoot, needle.source);
- }
-
- var index = this._findMapping(needle,
- this._originalMappings,
- "originalLine",
- "originalColumn",
- util.compareByOriginalPositions);
-
- if (index >= 0) {
- var mapping = this._originalMappings[index];
-
- return {
- line: util.getArg(mapping, 'generatedLine', null),
- column: util.getArg(mapping, 'generatedColumn', null),
- lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null)
- };
- }
-
- return {
- line: null,
- column: null,
- lastColumn: null
- };
- };
-
- /**
- * Returns all generated line and column information for the original source
- * and line provided. The only argument is an object with the following
- * properties:
- *
- * - source: The filename of the original source.
- * - line: The line number in the original source.
- *
- * and an array of objects is returned, each with the following properties:
- *
- * - line: The line number in the generated source, or null.
- * - column: The column number in the generated source, or null.
- */
- SourceMapConsumer.prototype.allGeneratedPositionsFor =
- function SourceMapConsumer_allGeneratedPositionsFor(aArgs) {
- // When there is no exact match, SourceMapConsumer.prototype._findMapping
- // returns the index of the closest mapping less than the needle. By
- // setting needle.originalColumn to Infinity, we thus find the last
- // mapping for the given line, provided such a mapping exists.
- var needle = {
- source: util.getArg(aArgs, 'source'),
- originalLine: util.getArg(aArgs, 'line'),
- originalColumn: Infinity
- };
-
- if (this.sourceRoot != null) {
- needle.source = util.relative(this.sourceRoot, needle.source);
- }
-
- var mappings = [];
-
- var index = this._findMapping(needle,
- this._originalMappings,
- "originalLine",
- "originalColumn",
- util.compareByOriginalPositions);
- if (index >= 0) {
- var mapping = this._originalMappings[index];
-
- while (mapping && mapping.originalLine === needle.originalLine) {
- mappings.push({
- line: util.getArg(mapping, 'generatedLine', null),
- column: util.getArg(mapping, 'generatedColumn', null),
- lastColumn: util.getArg(mapping, 'lastGeneratedColumn', null)
- });
-
- mapping = this._originalMappings[--index];
- }
- }
-
- return mappings.reverse();
- };
-
- SourceMapConsumer.GENERATED_ORDER = 1;
- SourceMapConsumer.ORIGINAL_ORDER = 2;
-
- /**
- * Iterate over each mapping between an original source/line/column and a
- * generated line/column in this source map.
- *
- * @param Function aCallback
- * The function that is called with each mapping.
- * @param Object aContext
- * Optional. If specified, this object will be the value of `this` every
- * time that `aCallback` is called.
- * @param aOrder
- * Either `SourceMapConsumer.GENERATED_ORDER` or
- * `SourceMapConsumer.ORIGINAL_ORDER`. Specifies whether you want to
- * iterate over the mappings sorted by the generated file's line/column
- * order or the original's source/line/column order, respectively. Defaults to
- * `SourceMapConsumer.GENERATED_ORDER`.
- */
- SourceMapConsumer.prototype.eachMapping =
- function SourceMapConsumer_eachMapping(aCallback, aContext, aOrder) {
- var context = aContext || null;
- var order = aOrder || SourceMapConsumer.GENERATED_ORDER;
-
- var mappings;
- switch (order) {
- case SourceMapConsumer.GENERATED_ORDER:
- mappings = this._generatedMappings;
- break;
- case SourceMapConsumer.ORIGINAL_ORDER:
- mappings = this._originalMappings;
- break;
- default:
- throw new Error("Unknown order of iteration.");
- }
-
- var sourceRoot = this.sourceRoot;
- mappings.map(function (mapping) {
- var source = mapping.source;
- if (source != null && sourceRoot != null) {
- source = util.join(sourceRoot, source);
- }
- return {
- source: source,
- generatedLine: mapping.generatedLine,
- generatedColumn: mapping.generatedColumn,
- originalLine: mapping.originalLine,
- originalColumn: mapping.originalColumn,
- name: mapping.name
- };
- }).forEach(aCallback, context);
- };
-
- exports.SourceMapConsumer = SourceMapConsumer;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-generator.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-generator.js
deleted file mode 100644
index 1ab7a47..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-map-generator.js
+++ /dev/null
@@ -1,400 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var base64VLQ = require('./base64-vlq');
- var util = require('./util');
- var ArraySet = require('./array-set').ArraySet;
- var MappingList = require('./mapping-list').MappingList;
-
- /**
- * An instance of the SourceMapGenerator represents a source map which is
- * being built incrementally. You may pass an object with the following
- * properties:
- *
- * - file: The filename of the generated source.
- * - sourceRoot: A root for all relative URLs in this source map.
- */
- function SourceMapGenerator(aArgs) {
- if (!aArgs) {
- aArgs = {};
- }
- this._file = util.getArg(aArgs, 'file', null);
- this._sourceRoot = util.getArg(aArgs, 'sourceRoot', null);
- this._skipValidation = util.getArg(aArgs, 'skipValidation', false);
- this._sources = new ArraySet();
- this._names = new ArraySet();
- this._mappings = new MappingList();
- this._sourcesContents = null;
- }
-
- SourceMapGenerator.prototype._version = 3;
-
- /**
- * Creates a new SourceMapGenerator based on a SourceMapConsumer
- *
- * @param aSourceMapConsumer The SourceMap.
- */
- SourceMapGenerator.fromSourceMap =
- function SourceMapGenerator_fromSourceMap(aSourceMapConsumer) {
- var sourceRoot = aSourceMapConsumer.sourceRoot;
- var generator = new SourceMapGenerator({
- file: aSourceMapConsumer.file,
- sourceRoot: sourceRoot
- });
- aSourceMapConsumer.eachMapping(function (mapping) {
- var newMapping = {
- generated: {
- line: mapping.generatedLine,
- column: mapping.generatedColumn
- }
- };
-
- if (mapping.source != null) {
- newMapping.source = mapping.source;
- if (sourceRoot != null) {
- newMapping.source = util.relative(sourceRoot, newMapping.source);
- }
-
- newMapping.original = {
- line: mapping.originalLine,
- column: mapping.originalColumn
- };
-
- if (mapping.name != null) {
- newMapping.name = mapping.name;
- }
- }
-
- generator.addMapping(newMapping);
- });
- aSourceMapConsumer.sources.forEach(function (sourceFile) {
- var content = aSourceMapConsumer.sourceContentFor(sourceFile);
- if (content != null) {
- generator.setSourceContent(sourceFile, content);
- }
- });
- return generator;
- };
-
- /**
- * Add a single mapping from original source line and column to the generated
- * source's line and column for this source map being created. The mapping
- * object should have the following properties:
- *
- * - generated: An object with the generated line and column positions.
- * - original: An object with the original line and column positions.
- * - source: The original source file (relative to the sourceRoot).
- * - name: An optional original token name for this mapping.
- */
- SourceMapGenerator.prototype.addMapping =
- function SourceMapGenerator_addMapping(aArgs) {
- var generated = util.getArg(aArgs, 'generated');
- var original = util.getArg(aArgs, 'original', null);
- var source = util.getArg(aArgs, 'source', null);
- var name = util.getArg(aArgs, 'name', null);
-
- if (!this._skipValidation) {
- this._validateMapping(generated, original, source, name);
- }
-
- if (source != null && !this._sources.has(source)) {
- this._sources.add(source);
- }
-
- if (name != null && !this._names.has(name)) {
- this._names.add(name);
- }
-
- this._mappings.add({
- generatedLine: generated.line,
- generatedColumn: generated.column,
- originalLine: original != null && original.line,
- originalColumn: original != null && original.column,
- source: source,
- name: name
- });
- };
-
- /**
- * Set the source content for a source file.
- */
- SourceMapGenerator.prototype.setSourceContent =
- function SourceMapGenerator_setSourceContent(aSourceFile, aSourceContent) {
- var source = aSourceFile;
- if (this._sourceRoot != null) {
- source = util.relative(this._sourceRoot, source);
- }
-
- if (aSourceContent != null) {
- // Add the source content to the _sourcesContents map.
- // Create a new _sourcesContents map if the property is null.
- if (!this._sourcesContents) {
- this._sourcesContents = {};
- }
- this._sourcesContents[util.toSetString(source)] = aSourceContent;
- } else if (this._sourcesContents) {
- // Remove the source file from the _sourcesContents map.
- // If the _sourcesContents map is empty, set the property to null.
- delete this._sourcesContents[util.toSetString(source)];
- if (Object.keys(this._sourcesContents).length === 0) {
- this._sourcesContents = null;
- }
- }
- };
-
- /**
- * Applies the mappings of a sub-source-map for a specific source file to the
- * source map being generated. Each mapping to the supplied source file is
- * rewritten using the supplied source map. Note: The resolution for the
- * resulting mappings is the minimium of this map and the supplied map.
- *
- * @param aSourceMapConsumer The source map to be applied.
- * @param aSourceFile Optional. The filename of the source file.
- * If omitted, SourceMapConsumer's file property will be used.
- * @param aSourceMapPath Optional. The dirname of the path to the source map
- * to be applied. If relative, it is relative to the SourceMapConsumer.
- * This parameter is needed when the two source maps aren't in the same
- * directory, and the source map to be applied contains relative source
- * paths. If so, those relative source paths need to be rewritten
- * relative to the SourceMapGenerator.
- */
- SourceMapGenerator.prototype.applySourceMap =
- function SourceMapGenerator_applySourceMap(aSourceMapConsumer, aSourceFile, aSourceMapPath) {
- var sourceFile = aSourceFile;
- // If aSourceFile is omitted, we will use the file property of the SourceMap
- if (aSourceFile == null) {
- if (aSourceMapConsumer.file == null) {
- throw new Error(
- 'SourceMapGenerator.prototype.applySourceMap requires either an explicit source file, ' +
- 'or the source map\'s "file" property. Both were omitted.'
- );
- }
- sourceFile = aSourceMapConsumer.file;
- }
- var sourceRoot = this._sourceRoot;
- // Make "sourceFile" relative if an absolute Url is passed.
- if (sourceRoot != null) {
- sourceFile = util.relative(sourceRoot, sourceFile);
- }
- // Applying the SourceMap can add and remove items from the sources and
- // the names array.
- var newSources = new ArraySet();
- var newNames = new ArraySet();
-
- // Find mappings for the "sourceFile"
- this._mappings.unsortedForEach(function (mapping) {
- if (mapping.source === sourceFile && mapping.originalLine != null) {
- // Check if it can be mapped by the source map, then update the mapping.
- var original = aSourceMapConsumer.originalPositionFor({
- line: mapping.originalLine,
- column: mapping.originalColumn
- });
- if (original.source != null) {
- // Copy mapping
- mapping.source = original.source;
- if (aSourceMapPath != null) {
- mapping.source = util.join(aSourceMapPath, mapping.source)
- }
- if (sourceRoot != null) {
- mapping.source = util.relative(sourceRoot, mapping.source);
- }
- mapping.originalLine = original.line;
- mapping.originalColumn = original.column;
- if (original.name != null) {
- mapping.name = original.name;
- }
- }
- }
-
- var source = mapping.source;
- if (source != null && !newSources.has(source)) {
- newSources.add(source);
- }
-
- var name = mapping.name;
- if (name != null && !newNames.has(name)) {
- newNames.add(name);
- }
-
- }, this);
- this._sources = newSources;
- this._names = newNames;
-
- // Copy sourcesContents of applied map.
- aSourceMapConsumer.sources.forEach(function (sourceFile) {
- var content = aSourceMapConsumer.sourceContentFor(sourceFile);
- if (content != null) {
- if (aSourceMapPath != null) {
- sourceFile = util.join(aSourceMapPath, sourceFile);
- }
- if (sourceRoot != null) {
- sourceFile = util.relative(sourceRoot, sourceFile);
- }
- this.setSourceContent(sourceFile, content);
- }
- }, this);
- };
-
- /**
- * A mapping can have one of the three levels of data:
- *
- * 1. Just the generated position.
- * 2. The Generated position, original position, and original source.
- * 3. Generated and original position, original source, as well as a name
- * token.
- *
- * To maintain consistency, we validate that any new mapping being added falls
- * in to one of these categories.
- */
- SourceMapGenerator.prototype._validateMapping =
- function SourceMapGenerator_validateMapping(aGenerated, aOriginal, aSource,
- aName) {
- if (aGenerated && 'line' in aGenerated && 'column' in aGenerated
- && aGenerated.line > 0 && aGenerated.column >= 0
- && !aOriginal && !aSource && !aName) {
- // Case 1.
- return;
- }
- else if (aGenerated && 'line' in aGenerated && 'column' in aGenerated
- && aOriginal && 'line' in aOriginal && 'column' in aOriginal
- && aGenerated.line > 0 && aGenerated.column >= 0
- && aOriginal.line > 0 && aOriginal.column >= 0
- && aSource) {
- // Cases 2 and 3.
- return;
- }
- else {
- throw new Error('Invalid mapping: ' + JSON.stringify({
- generated: aGenerated,
- source: aSource,
- original: aOriginal,
- name: aName
- }));
- }
- };
-
- /**
- * Serialize the accumulated mappings in to the stream of base 64 VLQs
- * specified by the source map format.
- */
- SourceMapGenerator.prototype._serializeMappings =
- function SourceMapGenerator_serializeMappings() {
- var previousGeneratedColumn = 0;
- var previousGeneratedLine = 1;
- var previousOriginalColumn = 0;
- var previousOriginalLine = 0;
- var previousName = 0;
- var previousSource = 0;
- var result = '';
- var mapping;
-
- var mappings = this._mappings.toArray();
-
- for (var i = 0, len = mappings.length; i < len; i++) {
- mapping = mappings[i];
-
- if (mapping.generatedLine !== previousGeneratedLine) {
- previousGeneratedColumn = 0;
- while (mapping.generatedLine !== previousGeneratedLine) {
- result += ';';
- previousGeneratedLine++;
- }
- }
- else {
- if (i > 0) {
- if (!util.compareByGeneratedPositions(mapping, mappings[i - 1])) {
- continue;
- }
- result += ',';
- }
- }
-
- result += base64VLQ.encode(mapping.generatedColumn
- - previousGeneratedColumn);
- previousGeneratedColumn = mapping.generatedColumn;
-
- if (mapping.source != null) {
- result += base64VLQ.encode(this._sources.indexOf(mapping.source)
- - previousSource);
- previousSource = this._sources.indexOf(mapping.source);
-
- // lines are stored 0-based in SourceMap spec version 3
- result += base64VLQ.encode(mapping.originalLine - 1
- - previousOriginalLine);
- previousOriginalLine = mapping.originalLine - 1;
-
- result += base64VLQ.encode(mapping.originalColumn
- - previousOriginalColumn);
- previousOriginalColumn = mapping.originalColumn;
-
- if (mapping.name != null) {
- result += base64VLQ.encode(this._names.indexOf(mapping.name)
- - previousName);
- previousName = this._names.indexOf(mapping.name);
- }
- }
- }
-
- return result;
- };
-
- SourceMapGenerator.prototype._generateSourcesContent =
- function SourceMapGenerator_generateSourcesContent(aSources, aSourceRoot) {
- return aSources.map(function (source) {
- if (!this._sourcesContents) {
- return null;
- }
- if (aSourceRoot != null) {
- source = util.relative(aSourceRoot, source);
- }
- var key = util.toSetString(source);
- return Object.prototype.hasOwnProperty.call(this._sourcesContents,
- key)
- ? this._sourcesContents[key]
- : null;
- }, this);
- };
-
- /**
- * Externalize the source map.
- */
- SourceMapGenerator.prototype.toJSON =
- function SourceMapGenerator_toJSON() {
- var map = {
- version: this._version,
- sources: this._sources.toArray(),
- names: this._names.toArray(),
- mappings: this._serializeMappings()
- };
- if (this._file != null) {
- map.file = this._file;
- }
- if (this._sourceRoot != null) {
- map.sourceRoot = this._sourceRoot;
- }
- if (this._sourcesContents) {
- map.sourcesContent = this._generateSourcesContent(map.sources, map.sourceRoot);
- }
-
- return map;
- };
-
- /**
- * Render the source map being generated to a string.
- */
- SourceMapGenerator.prototype.toString =
- function SourceMapGenerator_toString() {
- return JSON.stringify(this);
- };
-
- exports.SourceMapGenerator = SourceMapGenerator;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-node.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-node.js
deleted file mode 100644
index 9ee90bd..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/source-node.js
+++ /dev/null
@@ -1,414 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var SourceMapGenerator = require('./source-map-generator').SourceMapGenerator;
- var util = require('./util');
-
- // Matches a Windows-style `\r\n` newline or a `\n` newline used by all other
- // operating systems these days (capturing the result).
- var REGEX_NEWLINE = /(\r?\n)/;
-
- // Newline character code for charCodeAt() comparisons
- var NEWLINE_CODE = 10;
-
- // Private symbol for identifying `SourceNode`s when multiple versions of
- // the source-map library are loaded. This MUST NOT CHANGE across
- // versions!
- var isSourceNode = "$$$isSourceNode$$$";
-
- /**
- * SourceNodes provide a way to abstract over interpolating/concatenating
- * snippets of generated JavaScript source code while maintaining the line and
- * column information associated with the original source code.
- *
- * @param aLine The original line number.
- * @param aColumn The original column number.
- * @param aSource The original source's filename.
- * @param aChunks Optional. An array of strings which are snippets of
- * generated JS, or other SourceNodes.
- * @param aName The original identifier.
- */
- function SourceNode(aLine, aColumn, aSource, aChunks, aName) {
- this.children = [];
- this.sourceContents = {};
- this.line = aLine == null ? null : aLine;
- this.column = aColumn == null ? null : aColumn;
- this.source = aSource == null ? null : aSource;
- this.name = aName == null ? null : aName;
- this[isSourceNode] = true;
- if (aChunks != null) this.add(aChunks);
- }
-
- /**
- * Creates a SourceNode from generated code and a SourceMapConsumer.
- *
- * @param aGeneratedCode The generated code
- * @param aSourceMapConsumer The SourceMap for the generated code
- * @param aRelativePath Optional. The path that relative sources in the
- * SourceMapConsumer should be relative to.
- */
- SourceNode.fromStringWithSourceMap =
- function SourceNode_fromStringWithSourceMap(aGeneratedCode, aSourceMapConsumer, aRelativePath) {
- // The SourceNode we want to fill with the generated code
- // and the SourceMap
- var node = new SourceNode();
-
- // All even indices of this array are one line of the generated code,
- // while all odd indices are the newlines between two adjacent lines
- // (since `REGEX_NEWLINE` captures its match).
- // Processed fragments are removed from this array, by calling `shiftNextLine`.
- var remainingLines = aGeneratedCode.split(REGEX_NEWLINE);
- var shiftNextLine = function() {
- var lineContents = remainingLines.shift();
- // The last line of a file might not have a newline.
- var newLine = remainingLines.shift() || "";
- return lineContents + newLine;
- };
-
- // We need to remember the position of "remainingLines"
- var lastGeneratedLine = 1, lastGeneratedColumn = 0;
-
- // The generate SourceNodes we need a code range.
- // To extract it current and last mapping is used.
- // Here we store the last mapping.
- var lastMapping = null;
-
- aSourceMapConsumer.eachMapping(function (mapping) {
- if (lastMapping !== null) {
- // We add the code from "lastMapping" to "mapping":
- // First check if there is a new line in between.
- if (lastGeneratedLine < mapping.generatedLine) {
- var code = "";
- // Associate first line with "lastMapping"
- addMappingWithCode(lastMapping, shiftNextLine());
- lastGeneratedLine++;
- lastGeneratedColumn = 0;
- // The remaining code is added without mapping
- } else {
- // There is no new line in between.
- // Associate the code between "lastGeneratedColumn" and
- // "mapping.generatedColumn" with "lastMapping"
- var nextLine = remainingLines[0];
- var code = nextLine.substr(0, mapping.generatedColumn -
- lastGeneratedColumn);
- remainingLines[0] = nextLine.substr(mapping.generatedColumn -
- lastGeneratedColumn);
- lastGeneratedColumn = mapping.generatedColumn;
- addMappingWithCode(lastMapping, code);
- // No more remaining code, continue
- lastMapping = mapping;
- return;
- }
- }
- // We add the generated code until the first mapping
- // to the SourceNode without any mapping.
- // Each line is added as separate string.
- while (lastGeneratedLine < mapping.generatedLine) {
- node.add(shiftNextLine());
- lastGeneratedLine++;
- }
- if (lastGeneratedColumn < mapping.generatedColumn) {
- var nextLine = remainingLines[0];
- node.add(nextLine.substr(0, mapping.generatedColumn));
- remainingLines[0] = nextLine.substr(mapping.generatedColumn);
- lastGeneratedColumn = mapping.generatedColumn;
- }
- lastMapping = mapping;
- }, this);
- // We have processed all mappings.
- if (remainingLines.length > 0) {
- if (lastMapping) {
- // Associate the remaining code in the current line with "lastMapping"
- addMappingWithCode(lastMapping, shiftNextLine());
- }
- // and add the remaining lines without any mapping
- node.add(remainingLines.join(""));
- }
-
- // Copy sourcesContent into SourceNode
- aSourceMapConsumer.sources.forEach(function (sourceFile) {
- var content = aSourceMapConsumer.sourceContentFor(sourceFile);
- if (content != null) {
- if (aRelativePath != null) {
- sourceFile = util.join(aRelativePath, sourceFile);
- }
- node.setSourceContent(sourceFile, content);
- }
- });
-
- return node;
-
- function addMappingWithCode(mapping, code) {
- if (mapping === null || mapping.source === undefined) {
- node.add(code);
- } else {
- var source = aRelativePath
- ? util.join(aRelativePath, mapping.source)
- : mapping.source;
- node.add(new SourceNode(mapping.originalLine,
- mapping.originalColumn,
- source,
- code,
- mapping.name));
- }
- }
- };
-
- /**
- * Add a chunk of generated JS to this source node.
- *
- * @param aChunk A string snippet of generated JS code, another instance of
- * SourceNode, or an array where each member is one of those things.
- */
- SourceNode.prototype.add = function SourceNode_add(aChunk) {
- if (Array.isArray(aChunk)) {
- aChunk.forEach(function (chunk) {
- this.add(chunk);
- }, this);
- }
- else if (aChunk[isSourceNode] || typeof aChunk === "string") {
- if (aChunk) {
- this.children.push(aChunk);
- }
- }
- else {
- throw new TypeError(
- "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
- );
- }
- return this;
- };
-
- /**
- * Add a chunk of generated JS to the beginning of this source node.
- *
- * @param aChunk A string snippet of generated JS code, another instance of
- * SourceNode, or an array where each member is one of those things.
- */
- SourceNode.prototype.prepend = function SourceNode_prepend(aChunk) {
- if (Array.isArray(aChunk)) {
- for (var i = aChunk.length-1; i >= 0; i--) {
- this.prepend(aChunk[i]);
- }
- }
- else if (aChunk[isSourceNode] || typeof aChunk === "string") {
- this.children.unshift(aChunk);
- }
- else {
- throw new TypeError(
- "Expected a SourceNode, string, or an array of SourceNodes and strings. Got " + aChunk
- );
- }
- return this;
- };
-
- /**
- * Walk over the tree of JS snippets in this node and its children. The
- * walking function is called once for each snippet of JS and is passed that
- * snippet and the its original associated source's line/column location.
- *
- * @param aFn The traversal function.
- */
- SourceNode.prototype.walk = function SourceNode_walk(aFn) {
- var chunk;
- for (var i = 0, len = this.children.length; i < len; i++) {
- chunk = this.children[i];
- if (chunk[isSourceNode]) {
- chunk.walk(aFn);
- }
- else {
- if (chunk !== '') {
- aFn(chunk, { source: this.source,
- line: this.line,
- column: this.column,
- name: this.name });
- }
- }
- }
- };
-
- /**
- * Like `String.prototype.join` except for SourceNodes. Inserts `aStr` between
- * each of `this.children`.
- *
- * @param aSep The separator.
- */
- SourceNode.prototype.join = function SourceNode_join(aSep) {
- var newChildren;
- var i;
- var len = this.children.length;
- if (len > 0) {
- newChildren = [];
- for (i = 0; i < len-1; i++) {
- newChildren.push(this.children[i]);
- newChildren.push(aSep);
- }
- newChildren.push(this.children[i]);
- this.children = newChildren;
- }
- return this;
- };
-
- /**
- * Call String.prototype.replace on the very right-most source snippet. Useful
- * for trimming whitespace from the end of a source node, etc.
- *
- * @param aPattern The pattern to replace.
- * @param aReplacement The thing to replace the pattern with.
- */
- SourceNode.prototype.replaceRight = function SourceNode_replaceRight(aPattern, aReplacement) {
- var lastChild = this.children[this.children.length - 1];
- if (lastChild[isSourceNode]) {
- lastChild.replaceRight(aPattern, aReplacement);
- }
- else if (typeof lastChild === 'string') {
- this.children[this.children.length - 1] = lastChild.replace(aPattern, aReplacement);
- }
- else {
- this.children.push(''.replace(aPattern, aReplacement));
- }
- return this;
- };
-
- /**
- * Set the source content for a source file. This will be added to the SourceMapGenerator
- * in the sourcesContent field.
- *
- * @param aSourceFile The filename of the source file
- * @param aSourceContent The content of the source file
- */
- SourceNode.prototype.setSourceContent =
- function SourceNode_setSourceContent(aSourceFile, aSourceContent) {
- this.sourceContents[util.toSetString(aSourceFile)] = aSourceContent;
- };
-
- /**
- * Walk over the tree of SourceNodes. The walking function is called for each
- * source file content and is passed the filename and source content.
- *
- * @param aFn The traversal function.
- */
- SourceNode.prototype.walkSourceContents =
- function SourceNode_walkSourceContents(aFn) {
- for (var i = 0, len = this.children.length; i < len; i++) {
- if (this.children[i][isSourceNode]) {
- this.children[i].walkSourceContents(aFn);
- }
- }
-
- var sources = Object.keys(this.sourceContents);
- for (var i = 0, len = sources.length; i < len; i++) {
- aFn(util.fromSetString(sources[i]), this.sourceContents[sources[i]]);
- }
- };
-
- /**
- * Return the string representation of this source node. Walks over the tree
- * and concatenates all the various snippets together to one string.
- */
- SourceNode.prototype.toString = function SourceNode_toString() {
- var str = "";
- this.walk(function (chunk) {
- str += chunk;
- });
- return str;
- };
-
- /**
- * Returns the string representation of this source node along with a source
- * map.
- */
- SourceNode.prototype.toStringWithSourceMap = function SourceNode_toStringWithSourceMap(aArgs) {
- var generated = {
- code: "",
- line: 1,
- column: 0
- };
- var map = new SourceMapGenerator(aArgs);
- var sourceMappingActive = false;
- var lastOriginalSource = null;
- var lastOriginalLine = null;
- var lastOriginalColumn = null;
- var lastOriginalName = null;
- this.walk(function (chunk, original) {
- generated.code += chunk;
- if (original.source !== null
- && original.line !== null
- && original.column !== null) {
- if(lastOriginalSource !== original.source
- || lastOriginalLine !== original.line
- || lastOriginalColumn !== original.column
- || lastOriginalName !== original.name) {
- map.addMapping({
- source: original.source,
- original: {
- line: original.line,
- column: original.column
- },
- generated: {
- line: generated.line,
- column: generated.column
- },
- name: original.name
- });
- }
- lastOriginalSource = original.source;
- lastOriginalLine = original.line;
- lastOriginalColumn = original.column;
- lastOriginalName = original.name;
- sourceMappingActive = true;
- } else if (sourceMappingActive) {
- map.addMapping({
- generated: {
- line: generated.line,
- column: generated.column
- }
- });
- lastOriginalSource = null;
- sourceMappingActive = false;
- }
- for (var idx = 0, length = chunk.length; idx < length; idx++) {
- if (chunk.charCodeAt(idx) === NEWLINE_CODE) {
- generated.line++;
- generated.column = 0;
- // Mappings end at eol
- if (idx + 1 === length) {
- lastOriginalSource = null;
- sourceMappingActive = false;
- } else if (sourceMappingActive) {
- map.addMapping({
- source: original.source,
- original: {
- line: original.line,
- column: original.column
- },
- generated: {
- line: generated.line,
- column: generated.column
- },
- name: original.name
- });
- }
- } else {
- generated.column++;
- }
- }
- });
- this.walkSourceContents(function (sourceFile, sourceContent) {
- map.setSourceContent(sourceFile, sourceContent);
- });
-
- return { code: generated.code, map: map };
- };
-
- exports.SourceNode = SourceNode;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/util.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/util.js
deleted file mode 100644
index 976f6ca..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/lib/source-map/util.js
+++ /dev/null
@@ -1,319 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- /**
- * This is a helper function for getting values from parameter/options
- * objects.
- *
- * @param args The object we are extracting values from
- * @param name The name of the property we are getting.
- * @param defaultValue An optional value to return if the property is missing
- * from the object. If this is not specified and the property is missing, an
- * error will be thrown.
- */
- function getArg(aArgs, aName, aDefaultValue) {
- if (aName in aArgs) {
- return aArgs[aName];
- } else if (arguments.length === 3) {
- return aDefaultValue;
- } else {
- throw new Error('"' + aName + '" is a required argument.');
- }
- }
- exports.getArg = getArg;
-
- var urlRegexp = /^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/;
- var dataUrlRegexp = /^data:.+\,.+$/;
-
- function urlParse(aUrl) {
- var match = aUrl.match(urlRegexp);
- if (!match) {
- return null;
- }
- return {
- scheme: match[1],
- auth: match[2],
- host: match[3],
- port: match[4],
- path: match[5]
- };
- }
- exports.urlParse = urlParse;
-
- function urlGenerate(aParsedUrl) {
- var url = '';
- if (aParsedUrl.scheme) {
- url += aParsedUrl.scheme + ':';
- }
- url += '//';
- if (aParsedUrl.auth) {
- url += aParsedUrl.auth + '@';
- }
- if (aParsedUrl.host) {
- url += aParsedUrl.host;
- }
- if (aParsedUrl.port) {
- url += ":" + aParsedUrl.port
- }
- if (aParsedUrl.path) {
- url += aParsedUrl.path;
- }
- return url;
- }
- exports.urlGenerate = urlGenerate;
-
- /**
- * Normalizes a path, or the path portion of a URL:
- *
- * - Replaces consequtive slashes with one slash.
- * - Removes unnecessary '.' parts.
- * - Removes unnecessary '<dir>/..' parts.
- *
- * Based on code in the Node.js 'path' core module.
- *
- * @param aPath The path or url to normalize.
- */
- function normalize(aPath) {
- var path = aPath;
- var url = urlParse(aPath);
- if (url) {
- if (!url.path) {
- return aPath;
- }
- path = url.path;
- }
- var isAbsolute = (path.charAt(0) === '/');
-
- var parts = path.split(/\/+/);
- for (var part, up = 0, i = parts.length - 1; i >= 0; i--) {
- part = parts[i];
- if (part === '.') {
- parts.splice(i, 1);
- } else if (part === '..') {
- up++;
- } else if (up > 0) {
- if (part === '') {
- // The first part is blank if the path is absolute. Trying to go
- // above the root is a no-op. Therefore we can remove all '..' parts
- // directly after the root.
- parts.splice(i + 1, up);
- up = 0;
- } else {
- parts.splice(i, 2);
- up--;
- }
- }
- }
- path = parts.join('/');
-
- if (path === '') {
- path = isAbsolute ? '/' : '.';
- }
-
- if (url) {
- url.path = path;
- return urlGenerate(url);
- }
- return path;
- }
- exports.normalize = normalize;
-
- /**
- * Joins two paths/URLs.
- *
- * @param aRoot The root path or URL.
- * @param aPath The path or URL to be joined with the root.
- *
- * - If aPath is a URL or a data URI, aPath is returned, unless aPath is a
- * scheme-relative URL: Then the scheme of aRoot, if any, is prepended
- * first.
- * - Otherwise aPath is a path. If aRoot is a URL, then its path portion
- * is updated with the result and aRoot is returned. Otherwise the result
- * is returned.
- * - If aPath is absolute, the result is aPath.
- * - Otherwise the two paths are joined with a slash.
- * - Joining for example 'http://' and 'www.example.com' is also supported.
- */
- function join(aRoot, aPath) {
- if (aRoot === "") {
- aRoot = ".";
- }
- if (aPath === "") {
- aPath = ".";
- }
- var aPathUrl = urlParse(aPath);
- var aRootUrl = urlParse(aRoot);
- if (aRootUrl) {
- aRoot = aRootUrl.path || '/';
- }
-
- // `join(foo, '//www.example.org')`
- if (aPathUrl && !aPathUrl.scheme) {
- if (aRootUrl) {
- aPathUrl.scheme = aRootUrl.scheme;
- }
- return urlGenerate(aPathUrl);
- }
-
- if (aPathUrl || aPath.match(dataUrlRegexp)) {
- return aPath;
- }
-
- // `join('http://', 'www.example.com')`
- if (aRootUrl && !aRootUrl.host && !aRootUrl.path) {
- aRootUrl.host = aPath;
- return urlGenerate(aRootUrl);
- }
-
- var joined = aPath.charAt(0) === '/'
- ? aPath
- : normalize(aRoot.replace(/\/+$/, '') + '/' + aPath);
-
- if (aRootUrl) {
- aRootUrl.path = joined;
- return urlGenerate(aRootUrl);
- }
- return joined;
- }
- exports.join = join;
-
- /**
- * Make a path relative to a URL or another path.
- *
- * @param aRoot The root path or URL.
- * @param aPath The path or URL to be made relative to aRoot.
- */
- function relative(aRoot, aPath) {
- if (aRoot === "") {
- aRoot = ".";
- }
-
- aRoot = aRoot.replace(/\/$/, '');
-
- // XXX: It is possible to remove this block, and the tests still pass!
- var url = urlParse(aRoot);
- if (aPath.charAt(0) == "/" && url && url.path == "/") {
- return aPath.slice(1);
- }
-
- return aPath.indexOf(aRoot + '/') === 0
- ? aPath.substr(aRoot.length + 1)
- : aPath;
- }
- exports.relative = relative;
-
- /**
- * Because behavior goes wacky when you set `__proto__` on objects, we
- * have to prefix all the strings in our set with an arbitrary character.
- *
- * See https://github.com/mozilla/source-map/pull/31 and
- * https://github.com/mozilla/source-map/issues/30
- *
- * @param String aStr
- */
- function toSetString(aStr) {
- return '$' + aStr;
- }
- exports.toSetString = toSetString;
-
- function fromSetString(aStr) {
- return aStr.substr(1);
- }
- exports.fromSetString = fromSetString;
-
- function strcmp(aStr1, aStr2) {
- var s1 = aStr1 || "";
- var s2 = aStr2 || "";
- return (s1 > s2) - (s1 < s2);
- }
-
- /**
- * Comparator between two mappings where the original positions are compared.
- *
- * Optionally pass in `true` as `onlyCompareGenerated` to consider two
- * mappings with the same original source/line/column, but different generated
- * line and column the same. Useful when searching for a mapping with a
- * stubbed out mapping.
- */
- function compareByOriginalPositions(mappingA, mappingB, onlyCompareOriginal) {
- var cmp;
-
- cmp = strcmp(mappingA.source, mappingB.source);
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.originalLine - mappingB.originalLine;
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.originalColumn - mappingB.originalColumn;
- if (cmp || onlyCompareOriginal) {
- return cmp;
- }
-
- cmp = strcmp(mappingA.name, mappingB.name);
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.generatedLine - mappingB.generatedLine;
- if (cmp) {
- return cmp;
- }
-
- return mappingA.generatedColumn - mappingB.generatedColumn;
- };
- exports.compareByOriginalPositions = compareByOriginalPositions;
-
- /**
- * Comparator between two mappings where the generated positions are
- * compared.
- *
- * Optionally pass in `true` as `onlyCompareGenerated` to consider two
- * mappings with the same generated line and column, but different
- * source/name/original line and column the same. Useful when searching for a
- * mapping with a stubbed out mapping.
- */
- function compareByGeneratedPositions(mappingA, mappingB, onlyCompareGenerated) {
- var cmp;
-
- cmp = mappingA.generatedLine - mappingB.generatedLine;
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.generatedColumn - mappingB.generatedColumn;
- if (cmp || onlyCompareGenerated) {
- return cmp;
- }
-
- cmp = strcmp(mappingA.source, mappingB.source);
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.originalLine - mappingB.originalLine;
- if (cmp) {
- return cmp;
- }
-
- cmp = mappingA.originalColumn - mappingB.originalColumn;
- if (cmp) {
- return cmp;
- }
-
- return strcmp(mappingA.name, mappingB.name);
- };
- exports.compareByGeneratedPositions = compareByGeneratedPositions;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/LICENSE b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/LICENSE
deleted file mode 100644
index f33d665..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/LICENSE
+++ /dev/null
@@ -1,58 +0,0 @@
-amdefine is released under two licenses: new BSD, and MIT. You may pick the
-license that best suits your development needs. The text of both licenses are
-provided below.
-
-
-The "New" BSD License:
-----------------------
-
-Copyright (c) 2011, The Dojo Foundation
-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 the Dojo Foundation 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 COPYRIGHT OWNER 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.
-
-
-
-MIT License
------------
-
-Copyright (c) 2011, The Dojo Foundation
-
-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/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/README.md b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/README.md
deleted file mode 100644
index 037a6e8..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/README.md
+++ /dev/null
@@ -1,171 +0,0 @@
-# amdefine
-
-A module that can be used to implement AMD's define() in Node. This allows you
-to code to the AMD API and have the module work in node programs without
-requiring those other programs to use AMD.
-
-## Usage
-
-**1)** Update your package.json to indicate amdefine as a dependency:
-
-```javascript
- "dependencies": {
- "amdefine": ">=0.1.0"
- }
-```
-
-Then run `npm install` to get amdefine into your project.
-
-**2)** At the top of each module that uses define(), place this code:
-
-```javascript
-if (typeof define !== 'function') { var define = require('amdefine')(module) }
-```
-
-**Only use these snippets** when loading amdefine. If you preserve the basic structure,
-with the braces, it will be stripped out when using the [RequireJS optimizer](#optimizer).
-
-You can add spaces, line breaks and even require amdefine with a local path, but
-keep the rest of the structure to get the stripping behavior.
-
-As you may know, because `if` statements in JavaScript don't have their own scope, the var
-declaration in the above snippet is made whether the `if` expression is truthy or not. If
-RequireJS is loaded then the declaration is superfluous because `define` is already already
-declared in the same scope in RequireJS. Fortunately JavaScript handles multiple `var`
-declarations of the same variable in the same scope gracefully.
-
-If you want to deliver amdefine.js with your code rather than specifying it as a dependency
-with npm, then just download the latest release and refer to it using a relative path:
-
-[Latest Version](https://github.com/jrburke/amdefine/raw/latest/amdefine.js)
-
-### amdefine/intercept
-
-Consider this very experimental.
-
-Instead of pasting the piece of text for the amdefine setup of a `define`
-variable in each module you create or consume, you can use `amdefine/intercept`
-instead. It will automatically insert the above snippet in each .js file loaded
-by Node.
-
-**Warning**: you should only use this if you are creating an application that
-is consuming AMD style defined()'d modules that are distributed via npm and want
-to run that code in Node.
-
-For library code where you are not sure if it will be used by others in Node or
-in the browser, then explicitly depending on amdefine and placing the code
-snippet above is suggested path, instead of using `amdefine/intercept`. The
-intercept module affects all .js files loaded in the Node app, and it is
-inconsiderate to modify global state like that unless you are also controlling
-the top level app.
-
-#### Why distribute AMD-style modules via npm?
-
-npm has a lot of weaknesses for front-end use (installed layout is not great,
-should have better support for the `baseUrl + moduleID + '.js' style of loading,
-single file JS installs), but some people want a JS package manager and are
-willing to live with those constraints. If that is you, but still want to author
-in AMD style modules to get dynamic require([]), better direct source usage and
-powerful loader plugin support in the browser, then this tool can help.
-
-#### amdefine/intercept usage
-
-Just require it in your top level app module (for example index.js, server.js):
-
-```javascript
-require('amdefine/intercept');
-```
-
-The module does not return a value, so no need to assign the result to a local
-variable.
-
-Then just require() code as you normally would with Node's require(). Any .js
-loaded after the intercept require will have the amdefine check injected in
-the .js source as it is loaded. It does not modify the source on disk, just
-prepends some content to the text of the module as it is loaded by Node.
-
-#### How amdefine/intercept works
-
-It overrides the `Module._extensions['.js']` in Node to automatically prepend
-the amdefine snippet above. So, it will affect any .js file loaded by your
-app.
-
-## define() usage
-
-It is best if you use the anonymous forms of define() in your module:
-
-```javascript
-define(function (require) {
- var dependency = require('dependency');
-});
-```
-
-or
-
-```javascript
-define(['dependency'], function (dependency) {
-
-});
-```
-
-## RequireJS optimizer integration. <a name="optimizer"></name>
-
-Version 1.0.3 of the [RequireJS optimizer](http://requirejs.org/docs/optimization.html)
-will have support for stripping the `if (typeof define !== 'function')` check
-mentioned above, so you can include this snippet for code that runs in the
-browser, but avoid taking the cost of the if() statement once the code is
-optimized for deployment.
-
-## Node 0.4 Support
-
-If you want to support Node 0.4, then add `require` as the second parameter to amdefine:
-
-```javascript
-//Only if you want Node 0.4. If using 0.5 or later, use the above snippet.
-if (typeof define !== 'function') { var define = require('amdefine')(module, require) }
-```
-
-## Limitations
-
-### Synchronous vs Asynchronous
-
-amdefine creates a define() function that is callable by your code. It will
-execute and trace dependencies and call the factory function *synchronously*,
-to keep the behavior in line with Node's synchronous dependency tracing.
-
-The exception: calling AMD's callback-style require() from inside a factory
-function. The require callback is called on process.nextTick():
-
-```javascript
-define(function (require) {
- require(['a'], function(a) {
- //'a' is loaded synchronously, but
- //this callback is called on process.nextTick().
- });
-});
-```
-
-### Loader Plugins
-
-Loader plugins are supported as long as they call their load() callbacks
-synchronously. So ones that do network requests will not work. However plugins
-like [text](http://requirejs.org/docs/api.html#text) can load text files locally.
-
-The plugin API's `load.fromText()` is **not supported** in amdefine, so this means
-transpiler plugins like the [CoffeeScript loader plugin](https://github.com/jrburke/require-cs)
-will not work. This may be fixable, but it is a bit complex, and I do not have
-enough node-fu to figure it out yet. See the source for amdefine.js if you want
-to get an idea of the issues involved.
-
-## Tests
-
-To run the tests, cd to **tests** and run:
-
-```
-node all.js
-node all-intercept.js
-```
-
-## License
-
-New BSD and MIT. Check the LICENSE file for all the details.
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/amdefine.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/amdefine.js
deleted file mode 100644
index 93f140e..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/amdefine.js
+++ /dev/null
@@ -1,301 +0,0 @@
-/** vim: et:ts=4:sw=4:sts=4
- * @license amdefine 0.1.0 Copyright (c) 2011, The Dojo Foundation All Rights Reserved.
- * Available via the MIT or new BSD license.
- * see: http://github.com/jrburke/amdefine for details
- */
-
-/*jslint node: true */
-/*global module, process */
-'use strict';
-
-/**
- * Creates a define for node.
- * @param {Object} module the "module" object that is defined by Node for the
- * current module.
- * @param {Function} [requireFn]. Node's require function for the current module.
- * It only needs to be passed in Node versions before 0.5, when module.require
- * did not exist.
- * @returns {Function} a define function that is usable for the current node
- * module.
- */
-function amdefine(module, requireFn) {
- 'use strict';
- var defineCache = {},
- loaderCache = {},
- alreadyCalled = false,
- path = require('path'),
- makeRequire, stringRequire;
-
- /**
- * Trims the . and .. from an array of path segments.
- * It will keep a leading path segment if a .. will become
- * the first path segment, to help with module name lookups,
- * which act like paths, but can be remapped. But the end result,
- * all paths that use this function should look normalized.
- * NOTE: this method MODIFIES the input array.
- * @param {Array} ary the array of path segments.
- */
- function trimDots(ary) {
- var i, part;
- for (i = 0; ary[i]; i+= 1) {
- part = ary[i];
- if (part === '.') {
- ary.splice(i, 1);
- i -= 1;
- } else if (part === '..') {
- if (i === 1 && (ary[2] === '..' || ary[0] === '..')) {
- //End of the line. Keep at least one non-dot
- //path segment at the front so it can be mapped
- //correctly to disk. Otherwise, there is likely
- //no path mapping for a path starting with '..'.
- //This can still fail, but catches the most reasonable
- //uses of ..
- break;
- } else if (i > 0) {
- ary.splice(i - 1, 2);
- i -= 2;
- }
- }
- }
- }
-
- function normalize(name, baseName) {
- var baseParts;
-
- //Adjust any relative paths.
- if (name && name.charAt(0) === '.') {
- //If have a base name, try to normalize against it,
- //otherwise, assume it is a top-level require that will
- //be relative to baseUrl in the end.
- if (baseName) {
- baseParts = baseName.split('/');
- baseParts = baseParts.slice(0, baseParts.length - 1);
- baseParts = baseParts.concat(name.split('/'));
- trimDots(baseParts);
- name = baseParts.join('/');
- }
- }
-
- return name;
- }
-
- /**
- * Create the normalize() function passed to a loader plugin's
- * normalize method.
- */
- function makeNormalize(relName) {
- return function (name) {
- return normalize(name, relName);
- };
- }
-
- function makeLoad(id) {
- function load(value) {
- loaderCache[id] = value;
- }
-
- load.fromText = function (id, text) {
- //This one is difficult because the text can/probably uses
- //define, and any relative paths and requires should be relative
- //to that id was it would be found on disk. But this would require
- //bootstrapping a module/require fairly deeply from node core.
- //Not sure how best to go about that yet.
- throw new Error('amdefine does not implement load.fromText');
- };
-
- return load;
- }
-
- makeRequire = function (systemRequire, exports, module, relId) {
- function amdRequire(deps, callback) {
- if (typeof deps === 'string') {
- //Synchronous, single module require('')
- return stringRequire(systemRequire, exports, module, deps, relId);
- } else {
- //Array of dependencies with a callback.
-
- //Convert the dependencies to modules.
- deps = deps.map(function (depName) {
- return stringRequire(systemRequire, exports, module, depName, relId);
- });
-
- //Wait for next tick to call back the require call.
- if (callback) {
- process.nextTick(function () {
- callback.apply(null, deps);
- });
- }
- }
- }
-
- amdRequire.toUrl = function (filePath) {
- if (filePath.indexOf('.') === 0) {
- return normalize(filePath, path.dirname(module.filename));
- } else {
- return filePath;
- }
- };
-
- return amdRequire;
- };
-
- //Favor explicit value, passed in if the module wants to support Node 0.4.
- requireFn = requireFn || function req() {
- return module.require.apply(module, arguments);
- };
-
- function runFactory(id, deps, factory) {
- var r, e, m, result;
-
- if (id) {
- e = loaderCache[id] = {};
- m = {
- id: id,
- uri: __filename,
- exports: e
- };
- r = makeRequire(requireFn, e, m, id);
- } else {
- //Only support one define call per file
- if (alreadyCalled) {
- throw new Error('amdefine with no module ID cannot be called more than once per file.');
- }
- alreadyCalled = true;
-
- //Use the real variables from node
- //Use module.exports for exports, since
- //the exports in here is amdefine exports.
- e = module.exports;
- m = module;
- r = makeRequire(requireFn, e, m, module.id);
- }
-
- //If there are dependencies, they are strings, so need
- //to convert them to dependency values.
- if (deps) {
- deps = deps.map(function (depName) {
- return r(depName);
- });
- }
-
- //Call the factory with the right dependencies.
- if (typeof factory === 'function') {
- result = factory.apply(m.exports, deps);
- } else {
- result = factory;
- }
-
- if (result !== undefined) {
- m.exports = result;
- if (id) {
- loaderCache[id] = m.exports;
- }
- }
- }
-
- stringRequire = function (systemRequire, exports, module, id, relId) {
- //Split the ID by a ! so that
- var index = id.indexOf('!'),
- originalId = id,
- prefix, plugin;
-
- if (index === -1) {
- id = normalize(id, relId);
-
- //Straight module lookup. If it is one of the special dependencies,
- //deal with it, otherwise, delegate to node.
- if (id === 'require') {
- return makeRequire(systemRequire, exports, module, relId);
- } else if (id === 'exports') {
- return exports;
- } else if (id === 'module') {
- return module;
- } else if (loaderCache.hasOwnProperty(id)) {
- return loaderCache[id];
- } else if (defineCache[id]) {
- runFactory.apply(null, defineCache[id]);
- return loaderCache[id];
- } else {
- if(systemRequire) {
- return systemRequire(originalId);
- } else {
- throw new Error('No module with ID: ' + id);
- }
- }
- } else {
- //There is a plugin in play.
- prefix = id.substring(0, index);
- id = id.substring(index + 1, id.length);
-
- plugin = stringRequire(systemRequire, exports, module, prefix, relId);
-
- if (plugin.normalize) {
- id = plugin.normalize(id, makeNormalize(relId));
- } else {
- //Normalize the ID normally.
- id = normalize(id, relId);
- }
-
- if (loaderCache[id]) {
- return loaderCache[id];
- } else {
- plugin.load(id, makeRequire(systemRequire, exports, module, relId), makeLoad(id), {});
-
- return loaderCache[id];
- }
- }
- };
-
- //Create a define function specific to the module asking for amdefine.
- function define(id, deps, factory) {
- if (Array.isArray(id)) {
- factory = deps;
- deps = id;
- id = undefined;
- } else if (typeof id !== 'string') {
- factory = id;
- id = deps = undefined;
- }
-
- if (deps && !Array.isArray(deps)) {
- factory = deps;
- deps = undefined;
- }
-
- if (!deps) {
- deps = ['require', 'exports', 'module'];
- }
-
- //Set up properties for this module. If an ID, then use
- //internal cache. If no ID, then use the external variables
- //for this node module.
- if (id) {
- //Put the module in deep freeze until there is a
- //require call for it.
- defineCache[id] = [id, deps, factory];
- } else {
- runFactory(id, deps, factory);
- }
- }
-
- //define.require, which has access to all the values in the
- //cache. Useful for AMD modules that all have IDs in the file,
- //but need to finally export a value to node based on one of those
- //IDs.
- define.require = function (id) {
- if (loaderCache[id]) {
- return loaderCache[id];
- }
-
- if (defineCache[id]) {
- runFactory.apply(null, defineCache[id]);
- return loaderCache[id];
- }
- };
-
- define.amd = {};
-
- return define;
-}
-
-module.exports = amdefine;
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/intercept.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/intercept.js
deleted file mode 100644
index 771a983..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/intercept.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/*jshint node: true */
-var inserted,
- Module = require('module'),
- fs = require('fs'),
- existingExtFn = Module._extensions['.js'],
- amdefineRegExp = /amdefine\.js/;
-
-inserted = "if (typeof define !== 'function') {var define = require('amdefine')(module)}";
-
-//From the node/lib/module.js source:
-function stripBOM(content) {
- // Remove byte order marker. This catches EF BB BF (the UTF-8 BOM)
- // because the buffer-to-string conversion in `fs.readFileSync()`
- // translates it to FEFF, the UTF-16 BOM.
- if (content.charCodeAt(0) === 0xFEFF) {
- content = content.slice(1);
- }
- return content;
-}
-
-//Also adapted from the node/lib/module.js source:
-function intercept(module, filename) {
- var content = stripBOM(fs.readFileSync(filename, 'utf8'));
-
- if (!amdefineRegExp.test(module.id)) {
- content = inserted + content;
- }
-
- module._compile(content, filename);
-}
-
-intercept._id = 'amdefine/intercept';
-
-if (!existingExtFn._id || existingExtFn._id !== intercept._id) {
- Module._extensions['.js'] = intercept;
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/package.json
deleted file mode 100644
index d7fead3..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/node_modules/amdefine/package.json
+++ /dev/null
@@ -1,45 +0,0 @@
-{
- "name": "amdefine",
- "description": "Provide AMD's define() API for declaring modules in the AMD format",
- "version": "0.1.1",
- "homepage": "http://github.com/jrburke/amdefine",
- "author": {
- "name": "James Burke",
- "email": "jrburke@gmail.com",
- "url": "http://github.com/jrburke"
- },
- "license": "BSD-3-Clause AND MIT",
- "repository": {
- "type": "git",
- "url": "https://github.com/jrburke/amdefine.git"
- },
- "main": "./amdefine.js",
- "engines": {
- "node": ">=0.4.2"
- },
- "gitHead": "fcadcc8080f47084b973bac3b3c4b3dd3e0f957d",
- "bugs": {
- "url": "https://github.com/jrburke/amdefine/issues"
- },
- "_id": "amdefine@0.1.1",
- "scripts": {},
- "_shasum": "b5c75c532052dccd6a39c0064c772c8d57a06cd2",
- "_from": "amdefine@>=0.0.4",
- "_npmVersion": "1.4.28",
- "_npmUser": {
- "name": "jrburke",
- "email": "jrburke@gmail.com"
- },
- "maintainers": [
- {
- "name": "jrburke",
- "email": "jrburke@gmail.com"
- }
- ],
- "dist": {
- "shasum": "b5c75c532052dccd6a39c0064c772c8d57a06cd2",
- "tarball": "http://registry.npmjs.org/amdefine/-/amdefine-0.1.1.tgz"
- },
- "directories": {},
- "_resolved": "https://registry.npmjs.org/amdefine/-/amdefine-0.1.1.tgz"
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/package.json
deleted file mode 100644
index b840ac5..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/package.json
+++ /dev/null
@@ -1,185 +0,0 @@
-{
- "name": "source-map",
- "description": "Generates and consumes source maps",
- "version": "0.1.43",
- "homepage": "https://github.com/mozilla/source-map",
- "author": {
- "name": "Nick Fitzgerald",
- "email": "nfitzgerald@mozilla.com"
- },
- "contributors": [
- {
- "name": "Tobias Koppers",
- "email": "tobias.koppers@googlemail.com"
- },
- {
- "name": "Duncan Beevers",
- "email": "duncan@dweebd.com"
- },
- {
- "name": "Stephen Crane",
- "email": "scrane@mozilla.com"
- },
- {
- "name": "Ryan Seddon",
- "email": "seddon.ryan@gmail.com"
- },
- {
- "name": "Miles Elam",
- "email": "miles.elam@deem.com"
- },
- {
- "name": "Mihai Bazon",
- "email": "mihai.bazon@gmail.com"
- },
- {
- "name": "Michael Ficarra",
- "email": "github.public.email@michael.ficarra.me"
- },
- {
- "name": "Todd Wolfson",
- "email": "todd@twolfson.com"
- },
- {
- "name": "Alexander Solovyov",
- "email": "alexander@solovyov.net"
- },
- {
- "name": "Felix Gnass",
- "email": "fgnass@gmail.com"
- },
- {
- "name": "Conrad Irwin",
- "email": "conrad.irwin@gmail.com"
- },
- {
- "name": "usrbincc",
- "email": "usrbincc@yahoo.com"
- },
- {
- "name": "David Glasser",
- "email": "glasser@davidglasser.net"
- },
- {
- "name": "Chase Douglas",
- "email": "chase@newrelic.com"
- },
- {
- "name": "Evan Wallace",
- "email": "evan.exe@gmail.com"
- },
- {
- "name": "Heather Arthur",
- "email": "fayearthur@gmail.com"
- },
- {
- "name": "Hugh Kennedy",
- "email": "hughskennedy@gmail.com"
- },
- {
- "name": "David Glasser",
- "email": "glasser@davidglasser.net"
- },
- {
- "name": "Simon Lydell",
- "email": "simon.lydell@gmail.com"
- },
- {
- "name": "Jmeas Smith",
- "email": "jellyes2@gmail.com"
- },
- {
- "name": "Michael Z Goddard",
- "email": "mzgoddard@gmail.com"
- },
- {
- "name": "azu",
- "email": "azu@users.noreply.github.com"
- },
- {
- "name": "John Gozde",
- "email": "john@gozde.ca"
- },
- {
- "name": "Adam Kirkton",
- "email": "akirkton@truefitinnovation.com"
- },
- {
- "name": "Chris Montgomery",
- "email": "christopher.montgomery@dowjones.com"
- },
- {
- "name": "J. Ryan Stinnett",
- "email": "jryans@gmail.com"
- },
- {
- "name": "Jack Herrington",
- "email": "jherrington@walmartlabs.com"
- },
- {
- "name": "Chris Truter",
- "email": "jeffpalentine@gmail.com"
- },
- {
- "name": "Daniel Espeset",
- "email": "daniel@danielespeset.com"
- }
- ],
- "repository": {
- "type": "git",
- "url": "http://github.com/mozilla/source-map.git"
- },
- "directories": {
- "lib": "./lib"
- },
- "main": "./lib/source-map.js",
- "engines": {
- "node": ">=0.8.0"
- },
- "licenses": [
- {
- "type": "BSD",
- "url": "http://opensource.org/licenses/BSD-3-Clause"
- }
- ],
- "dependencies": {
- "amdefine": ">=0.0.4"
- },
- "devDependencies": {
- "dryice": ">=0.4.8"
- },
- "scripts": {
- "test": "node test/run-tests.js",
- "build": "node Makefile.dryice.js"
- },
- "bugs": {
- "url": "https://github.com/mozilla/source-map/issues"
- },
- "_id": "source-map@0.1.43",
- "_shasum": "c24bc146ca517c1471f5dacbe2571b2b7f9e3346",
- "_from": "source-map@>=0.1.43 <0.2.0",
- "_npmVersion": "1.4.9",
- "_npmUser": {
- "name": "nickfitzgerald",
- "email": "fitzgen@gmail.com"
- },
- "maintainers": [
- {
- "name": "mozilla-devtools",
- "email": "mozilla-developer-tools@googlegroups.com"
- },
- {
- "name": "mozilla",
- "email": "dherman@mozilla.com"
- },
- {
- "name": "nickfitzgerald",
- "email": "fitzgen@gmail.com"
- }
- ],
- "dist": {
- "shasum": "c24bc146ca517c1471f5dacbe2571b2b7f9e3346",
- "tarball": "http://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz"
- },
- "_resolved": "https://registry.npmjs.org/source-map/-/source-map-0.1.43.tgz"
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/run-tests.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/run-tests.js
deleted file mode 100755
index 64a7c3a..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/run-tests.js
+++ /dev/null
@@ -1,62 +0,0 @@
-#!/usr/bin/env node
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-var assert = require('assert');
-var fs = require('fs');
-var path = require('path');
-var util = require('./source-map/util');
-
-function run(tests) {
- var total = 0;
- var passed = 0;
-
- for (var i = 0; i < tests.length; i++) {
- for (var k in tests[i].testCase) {
- if (/^test/.test(k)) {
- total++;
- try {
- tests[i].testCase[k](assert, util);
- passed++;
- }
- catch (e) {
- console.log('FAILED ' + tests[i].name + ': ' + k + '!');
- console.log(e.stack);
- }
- }
- }
- }
-
- console.log('');
- console.log(passed + ' / ' + total + ' tests passed.');
- console.log('');
-
- return total - passed;
-}
-
-function isTestFile(f) {
- var testToRun = process.argv[2];
- return testToRun
- ? path.basename(testToRun) === f
- : /^test\-.*?\.js/.test(f);
-}
-
-function toModule(f) {
- return './source-map/' + f.replace(/\.js$/, '');
-}
-
-var requires = fs.readdirSync(path.join(__dirname, 'source-map'))
- .filter(isTestFile)
- .map(toModule);
-
-var code = run(requires.map(require).map(function (mod, i) {
- return {
- name: requires[i],
- testCase: mod
- };
-}));
-
-process.exit(code);
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-api.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-api.js
deleted file mode 100644
index 3801233..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-api.js
+++ /dev/null
@@ -1,26 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2012 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var sourceMap;
- try {
- sourceMap = require('../../lib/source-map');
- } catch (e) {
- sourceMap = {};
- Components.utils.import('resource:///modules/devtools/SourceMap.jsm', sourceMap);
- }
-
- exports['test that the api is properly exposed in the top level'] = function (assert, util) {
- assert.equal(typeof sourceMap.SourceMapGenerator, "function");
- assert.equal(typeof sourceMap.SourceMapConsumer, "function");
- assert.equal(typeof sourceMap.SourceNode, "function");
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-array-set.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-array-set.js
deleted file mode 100644
index b5797ed..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-array-set.js
+++ /dev/null
@@ -1,104 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var ArraySet = require('../../lib/source-map/array-set').ArraySet;
-
- function makeTestSet() {
- var set = new ArraySet();
- for (var i = 0; i < 100; i++) {
- set.add(String(i));
- }
- return set;
- }
-
- exports['test .has() membership'] = function (assert, util) {
- var set = makeTestSet();
- for (var i = 0; i < 100; i++) {
- assert.ok(set.has(String(i)));
- }
- };
-
- exports['test .indexOf() elements'] = function (assert, util) {
- var set = makeTestSet();
- for (var i = 0; i < 100; i++) {
- assert.strictEqual(set.indexOf(String(i)), i);
- }
- };
-
- exports['test .at() indexing'] = function (assert, util) {
- var set = makeTestSet();
- for (var i = 0; i < 100; i++) {
- assert.strictEqual(set.at(i), String(i));
- }
- };
-
- exports['test creating from an array'] = function (assert, util) {
- var set = ArraySet.fromArray(['foo', 'bar', 'baz', 'quux', 'hasOwnProperty']);
-
- assert.ok(set.has('foo'));
- assert.ok(set.has('bar'));
- assert.ok(set.has('baz'));
- assert.ok(set.has('quux'));
- assert.ok(set.has('hasOwnProperty'));
-
- assert.strictEqual(set.indexOf('foo'), 0);
- assert.strictEqual(set.indexOf('bar'), 1);
- assert.strictEqual(set.indexOf('baz'), 2);
- assert.strictEqual(set.indexOf('quux'), 3);
-
- assert.strictEqual(set.at(0), 'foo');
- assert.strictEqual(set.at(1), 'bar');
- assert.strictEqual(set.at(2), 'baz');
- assert.strictEqual(set.at(3), 'quux');
- };
-
- exports['test that you can add __proto__; see github issue #30'] = function (assert, util) {
- var set = new ArraySet();
- set.add('__proto__');
- assert.ok(set.has('__proto__'));
- assert.strictEqual(set.at(0), '__proto__');
- assert.strictEqual(set.indexOf('__proto__'), 0);
- };
-
- exports['test .fromArray() with duplicates'] = function (assert, util) {
- var set = ArraySet.fromArray(['foo', 'foo']);
- assert.ok(set.has('foo'));
- assert.strictEqual(set.at(0), 'foo');
- assert.strictEqual(set.indexOf('foo'), 0);
- assert.strictEqual(set.toArray().length, 1);
-
- set = ArraySet.fromArray(['foo', 'foo'], true);
- assert.ok(set.has('foo'));
- assert.strictEqual(set.at(0), 'foo');
- assert.strictEqual(set.at(1), 'foo');
- assert.strictEqual(set.indexOf('foo'), 0);
- assert.strictEqual(set.toArray().length, 2);
- };
-
- exports['test .add() with duplicates'] = function (assert, util) {
- var set = new ArraySet();
- set.add('foo');
-
- set.add('foo');
- assert.ok(set.has('foo'));
- assert.strictEqual(set.at(0), 'foo');
- assert.strictEqual(set.indexOf('foo'), 0);
- assert.strictEqual(set.toArray().length, 1);
-
- set.add('foo', true);
- assert.ok(set.has('foo'));
- assert.strictEqual(set.at(0), 'foo');
- assert.strictEqual(set.at(1), 'foo');
- assert.strictEqual(set.indexOf('foo'), 0);
- assert.strictEqual(set.toArray().length, 2);
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64-vlq.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64-vlq.js
deleted file mode 100644
index 6fd0d99..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64-vlq.js
+++ /dev/null
@@ -1,23 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var base64VLQ = require('../../lib/source-map/base64-vlq');
-
- exports['test normal encoding and decoding'] = function (assert, util) {
- var result = {};
- for (var i = -255; i < 256; i++) {
- base64VLQ.decode(base64VLQ.encode(i), result);
- assert.equal(result.value, i);
- assert.equal(result.rest, "");
- }
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64.js
deleted file mode 100644
index ff3a244..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-base64.js
+++ /dev/null
@@ -1,35 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var base64 = require('../../lib/source-map/base64');
-
- exports['test out of range encoding'] = function (assert, util) {
- assert.throws(function () {
- base64.encode(-1);
- });
- assert.throws(function () {
- base64.encode(64);
- });
- };
-
- exports['test out of range decoding'] = function (assert, util) {
- assert.throws(function () {
- base64.decode('=');
- });
- };
-
- exports['test normal encoding and decoding'] = function (assert, util) {
- for (var i = 0; i < 64; i++) {
- assert.equal(base64.decode(base64.encode(i)), i);
- }
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-binary-search.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-binary-search.js
deleted file mode 100644
index f1c9e0f..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-binary-search.js
+++ /dev/null
@@ -1,54 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var binarySearch = require('../../lib/source-map/binary-search');
-
- function numberCompare(a, b) {
- return a - b;
- }
-
- exports['test too high'] = function (assert, util) {
- var needle = 30;
- var haystack = [2,4,6,8,10,12,14,16,18,20];
-
- assert.doesNotThrow(function () {
- binarySearch.search(needle, haystack, numberCompare);
- });
-
- assert.equal(haystack[binarySearch.search(needle, haystack, numberCompare)], 20);
- };
-
- exports['test too low'] = function (assert, util) {
- var needle = 1;
- var haystack = [2,4,6,8,10,12,14,16,18,20];
-
- assert.doesNotThrow(function () {
- binarySearch.search(needle, haystack, numberCompare);
- });
-
- assert.equal(binarySearch.search(needle, haystack, numberCompare), -1);
- };
-
- exports['test exact search'] = function (assert, util) {
- var needle = 4;
- var haystack = [2,4,6,8,10,12,14,16,18,20];
-
- assert.equal(haystack[binarySearch.search(needle, haystack, numberCompare)], 4);
- };
-
- exports['test fuzzy search'] = function (assert, util) {
- var needle = 19;
- var haystack = [2,4,6,8,10,12,14,16,18,20];
-
- assert.equal(haystack[binarySearch.search(needle, haystack, numberCompare)], 18);
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-dog-fooding.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-dog-fooding.js
deleted file mode 100644
index 26757b2..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-dog-fooding.js
+++ /dev/null
@@ -1,84 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var SourceMapConsumer = require('../../lib/source-map/source-map-consumer').SourceMapConsumer;
- var SourceMapGenerator = require('../../lib/source-map/source-map-generator').SourceMapGenerator;
-
- exports['test eating our own dog food'] = function (assert, util) {
- var smg = new SourceMapGenerator({
- file: 'testing.js',
- sourceRoot: '/wu/tang'
- });
-
- smg.addMapping({
- source: 'gza.coffee',
- original: { line: 1, column: 0 },
- generated: { line: 2, column: 2 }
- });
-
- smg.addMapping({
- source: 'gza.coffee',
- original: { line: 2, column: 0 },
- generated: { line: 3, column: 2 }
- });
-
- smg.addMapping({
- source: 'gza.coffee',
- original: { line: 3, column: 0 },
- generated: { line: 4, column: 2 }
- });
-
- smg.addMapping({
- source: 'gza.coffee',
- original: { line: 4, column: 0 },
- generated: { line: 5, column: 2 }
- });
-
- smg.addMapping({
- source: 'gza.coffee',
- original: { line: 5, column: 10 },
- generated: { line: 6, column: 12 }
- });
-
- var smc = new SourceMapConsumer(smg.toString());
-
- // Exact
- util.assertMapping(2, 2, '/wu/tang/gza.coffee', 1, 0, null, smc, assert);
- util.assertMapping(3, 2, '/wu/tang/gza.coffee', 2, 0, null, smc, assert);
- util.assertMapping(4, 2, '/wu/tang/gza.coffee', 3, 0, null, smc, assert);
- util.assertMapping(5, 2, '/wu/tang/gza.coffee', 4, 0, null, smc, assert);
- util.assertMapping(6, 12, '/wu/tang/gza.coffee', 5, 10, null, smc, assert);
-
- // Fuzzy
-
- // Generated to original
- util.assertMapping(2, 0, null, null, null, null, smc, assert, true);
- util.assertMapping(2, 9, '/wu/tang/gza.coffee', 1, 0, null, smc, assert, true);
- util.assertMapping(3, 0, null, null, null, null, smc, assert, true);
- util.assertMapping(3, 9, '/wu/tang/gza.coffee', 2, 0, null, smc, assert, true);
- util.assertMapping(4, 0, null, null, null, null, smc, assert, true);
- util.assertMapping(4, 9, '/wu/tang/gza.coffee', 3, 0, null, smc, assert, true);
- util.assertMapping(5, 0, null, null, null, null, smc, assert, true);
- util.assertMapping(5, 9, '/wu/tang/gza.coffee', 4, 0, null, smc, assert, true);
- util.assertMapping(6, 0, null, null, null, null, smc, assert, true);
- util.assertMapping(6, 9, null, null, null, null, smc, assert, true);
- util.assertMapping(6, 13, '/wu/tang/gza.coffee', 5, 10, null, smc, assert, true);
-
- // Original to generated
- util.assertMapping(2, 2, '/wu/tang/gza.coffee', 1, 1, null, smc, assert, null, true);
- util.assertMapping(3, 2, '/wu/tang/gza.coffee', 2, 3, null, smc, assert, null, true);
- util.assertMapping(4, 2, '/wu/tang/gza.coffee', 3, 6, null, smc, assert, null, true);
- util.assertMapping(5, 2, '/wu/tang/gza.coffee', 4, 9, null, smc, assert, null, true);
- util.assertMapping(5, 2, '/wu/tang/gza.coffee', 5, 9, null, smc, assert, null, true);
- util.assertMapping(6, 12, '/wu/tang/gza.coffee', 6, 19, null, smc, assert, null, true);
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-consumer.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-consumer.js
deleted file mode 100644
index c714943..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-consumer.js
+++ /dev/null
@@ -1,702 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var SourceMapConsumer = require('../../lib/source-map/source-map-consumer').SourceMapConsumer;
- var SourceMapGenerator = require('../../lib/source-map/source-map-generator').SourceMapGenerator;
-
- exports['test that we can instantiate with a string or an object'] = function (assert, util) {
- assert.doesNotThrow(function () {
- var map = new SourceMapConsumer(util.testMap);
- });
- assert.doesNotThrow(function () {
- var map = new SourceMapConsumer(JSON.stringify(util.testMap));
- });
- };
-
- exports['test that the `sources` field has the original sources'] = function (assert, util) {
- var map;
- var sources;
-
- map = new SourceMapConsumer(util.testMap);
- sources = map.sources;
- assert.equal(sources[0], '/the/root/one.js');
- assert.equal(sources[1], '/the/root/two.js');
- assert.equal(sources.length, 2);
-
- map = new SourceMapConsumer(util.testMapNoSourceRoot);
- sources = map.sources;
- assert.equal(sources[0], 'one.js');
- assert.equal(sources[1], 'two.js');
- assert.equal(sources.length, 2);
-
- map = new SourceMapConsumer(util.testMapEmptySourceRoot);
- sources = map.sources;
- assert.equal(sources[0], 'one.js');
- assert.equal(sources[1], 'two.js');
- assert.equal(sources.length, 2);
- };
-
- exports['test that the source root is reflected in a mapping\'s source field'] = function (assert, util) {
- var map;
- var mapping;
-
- map = new SourceMapConsumer(util.testMap);
-
- mapping = map.originalPositionFor({
- line: 2,
- column: 1
- });
- assert.equal(mapping.source, '/the/root/two.js');
-
- mapping = map.originalPositionFor({
- line: 1,
- column: 1
- });
- assert.equal(mapping.source, '/the/root/one.js');
-
-
- map = new SourceMapConsumer(util.testMapNoSourceRoot);
-
- mapping = map.originalPositionFor({
- line: 2,
- column: 1
- });
- assert.equal(mapping.source, 'two.js');
-
- mapping = map.originalPositionFor({
- line: 1,
- column: 1
- });
- assert.equal(mapping.source, 'one.js');
-
-
- map = new SourceMapConsumer(util.testMapEmptySourceRoot);
-
- mapping = map.originalPositionFor({
- line: 2,
- column: 1
- });
- assert.equal(mapping.source, 'two.js');
-
- mapping = map.originalPositionFor({
- line: 1,
- column: 1
- });
- assert.equal(mapping.source, 'one.js');
- };
-
- exports['test mapping tokens back exactly'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMap);
-
- util.assertMapping(1, 1, '/the/root/one.js', 1, 1, null, map, assert);
- util.assertMapping(1, 5, '/the/root/one.js', 1, 5, null, map, assert);
- util.assertMapping(1, 9, '/the/root/one.js', 1, 11, null, map, assert);
- util.assertMapping(1, 18, '/the/root/one.js', 1, 21, 'bar', map, assert);
- util.assertMapping(1, 21, '/the/root/one.js', 2, 3, null, map, assert);
- util.assertMapping(1, 28, '/the/root/one.js', 2, 10, 'baz', map, assert);
- util.assertMapping(1, 32, '/the/root/one.js', 2, 14, 'bar', map, assert);
-
- util.assertMapping(2, 1, '/the/root/two.js', 1, 1, null, map, assert);
- util.assertMapping(2, 5, '/the/root/two.js', 1, 5, null, map, assert);
- util.assertMapping(2, 9, '/the/root/two.js', 1, 11, null, map, assert);
- util.assertMapping(2, 18, '/the/root/two.js', 1, 21, 'n', map, assert);
- util.assertMapping(2, 21, '/the/root/two.js', 2, 3, null, map, assert);
- util.assertMapping(2, 28, '/the/root/two.js', 2, 10, 'n', map, assert);
- };
-
- exports['test mapping tokens fuzzy'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMap);
-
- // Finding original positions
- util.assertMapping(1, 20, '/the/root/one.js', 1, 21, 'bar', map, assert, true);
- util.assertMapping(1, 30, '/the/root/one.js', 2, 10, 'baz', map, assert, true);
- util.assertMapping(2, 12, '/the/root/two.js', 1, 11, null, map, assert, true);
-
- // Finding generated positions
- util.assertMapping(1, 18, '/the/root/one.js', 1, 22, 'bar', map, assert, null, true);
- util.assertMapping(1, 28, '/the/root/one.js', 2, 13, 'baz', map, assert, null, true);
- util.assertMapping(2, 9, '/the/root/two.js', 1, 16, null, map, assert, null, true);
- };
-
- exports['test mappings and end of lines'] = function (assert, util) {
- var smg = new SourceMapGenerator({
- file: 'foo.js'
- });
- smg.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 1, column: 1 },
- source: 'bar.js'
- });
- smg.addMapping({
- original: { line: 2, column: 2 },
- generated: { line: 2, column: 2 },
- source: 'bar.js'
- });
-
- var map = SourceMapConsumer.fromSourceMap(smg);
-
- // When finding original positions, mappings end at the end of the line.
- util.assertMapping(2, 1, null, null, null, null, map, assert, true)
-
- // When finding generated positions, mappings do not end at the end of the line.
- util.assertMapping(1, 1, 'bar.js', 2, 1, null, map, assert, null, true);
- };
-
- exports['test creating source map consumers with )]}\' prefix'] = function (assert, util) {
- assert.doesNotThrow(function () {
- var map = new SourceMapConsumer(")]}'" + JSON.stringify(util.testMap));
- });
- };
-
- exports['test eachMapping'] = function (assert, util) {
- var map;
-
- map = new SourceMapConsumer(util.testMap);
- var previousLine = -Infinity;
- var previousColumn = -Infinity;
- map.eachMapping(function (mapping) {
- assert.ok(mapping.generatedLine >= previousLine);
-
- assert.ok(mapping.source === '/the/root/one.js' || mapping.source === '/the/root/two.js');
-
- if (mapping.generatedLine === previousLine) {
- assert.ok(mapping.generatedColumn >= previousColumn);
- previousColumn = mapping.generatedColumn;
- }
- else {
- previousLine = mapping.generatedLine;
- previousColumn = -Infinity;
- }
- });
-
- map = new SourceMapConsumer(util.testMapNoSourceRoot);
- map.eachMapping(function (mapping) {
- assert.ok(mapping.source === 'one.js' || mapping.source === 'two.js');
- });
-
- map = new SourceMapConsumer(util.testMapEmptySourceRoot);
- map.eachMapping(function (mapping) {
- assert.ok(mapping.source === 'one.js' || mapping.source === 'two.js');
- });
- };
-
- exports['test iterating over mappings in a different order'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMap);
- var previousLine = -Infinity;
- var previousColumn = -Infinity;
- var previousSource = "";
- map.eachMapping(function (mapping) {
- assert.ok(mapping.source >= previousSource);
-
- if (mapping.source === previousSource) {
- assert.ok(mapping.originalLine >= previousLine);
-
- if (mapping.originalLine === previousLine) {
- assert.ok(mapping.originalColumn >= previousColumn);
- previousColumn = mapping.originalColumn;
- }
- else {
- previousLine = mapping.originalLine;
- previousColumn = -Infinity;
- }
- }
- else {
- previousSource = mapping.source;
- previousLine = -Infinity;
- previousColumn = -Infinity;
- }
- }, null, SourceMapConsumer.ORIGINAL_ORDER);
- };
-
- exports['test that we can set the context for `this` in eachMapping'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMap);
- var context = {};
- map.eachMapping(function () {
- assert.equal(this, context);
- }, context);
- };
-
- exports['test that the `sourcesContent` field has the original sources'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMapWithSourcesContent);
- var sourcesContent = map.sourcesContent;
-
- assert.equal(sourcesContent[0], ' ONE.foo = function (bar) {\n return baz(bar);\n };');
- assert.equal(sourcesContent[1], ' TWO.inc = function (n) {\n return n + 1;\n };');
- assert.equal(sourcesContent.length, 2);
- };
-
- exports['test that we can get the original sources for the sources'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMapWithSourcesContent);
- var sources = map.sources;
-
- assert.equal(map.sourceContentFor(sources[0]), ' ONE.foo = function (bar) {\n return baz(bar);\n };');
- assert.equal(map.sourceContentFor(sources[1]), ' TWO.inc = function (n) {\n return n + 1;\n };');
- assert.equal(map.sourceContentFor("one.js"), ' ONE.foo = function (bar) {\n return baz(bar);\n };');
- assert.equal(map.sourceContentFor("two.js"), ' TWO.inc = function (n) {\n return n + 1;\n };');
- assert.throws(function () {
- map.sourceContentFor("");
- }, Error);
- assert.throws(function () {
- map.sourceContentFor("/the/root/three.js");
- }, Error);
- assert.throws(function () {
- map.sourceContentFor("three.js");
- }, Error);
- };
-
- exports['test that we can get the original source content with relative source paths'] = function (assert, util) {
- var map = new SourceMapConsumer(util.testMapRelativeSources);
- var sources = map.sources;
-
- assert.equal(map.sourceContentFor(sources[0]), ' ONE.foo = function (bar) {\n return baz(bar);\n };');
- assert.equal(map.sourceContentFor(sources[1]), ' TWO.inc = function (n) {\n return n + 1;\n };');
- assert.equal(map.sourceContentFor("one.js"), ' ONE.foo = function (bar) {\n return baz(bar);\n };');
- assert.equal(map.sourceContentFor("two.js"), ' TWO.inc = function (n) {\n return n + 1;\n };');
- assert.throws(function () {
- map.sourceContentFor("");
- }, Error);
- assert.throws(function () {
- map.sourceContentFor("/the/root/three.js");
- }, Error);
- assert.throws(function () {
- map.sourceContentFor("three.js");
- }, Error);
- };
-
- exports['test sourceRoot + generatedPositionFor'] = function (assert, util) {
- var map = new SourceMapGenerator({
- sourceRoot: 'foo/bar',
- file: 'baz.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'bang.coffee'
- });
- map.addMapping({
- original: { line: 5, column: 5 },
- generated: { line: 6, column: 6 },
- source: 'bang.coffee'
- });
- map = new SourceMapConsumer(map.toString());
-
- // Should handle without sourceRoot.
- var pos = map.generatedPositionFor({
- line: 1,
- column: 1,
- source: 'bang.coffee'
- });
-
- assert.equal(pos.line, 2);
- assert.equal(pos.column, 2);
-
- // Should handle with sourceRoot.
- var pos = map.generatedPositionFor({
- line: 1,
- column: 1,
- source: 'foo/bar/bang.coffee'
- });
-
- assert.equal(pos.line, 2);
- assert.equal(pos.column, 2);
- };
-
- exports['test allGeneratedPositionsFor'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'bar.coffee'
- });
- map.addMapping({
- original: { line: 2, column: 1 },
- generated: { line: 3, column: 2 },
- source: 'bar.coffee'
- });
- map.addMapping({
- original: { line: 2, column: 2 },
- generated: { line: 3, column: 3 },
- source: 'bar.coffee'
- });
- map.addMapping({
- original: { line: 3, column: 1 },
- generated: { line: 4, column: 2 },
- source: 'bar.coffee'
- });
- map = new SourceMapConsumer(map.toString());
-
- var mappings = map.allGeneratedPositionsFor({
- line: 2,
- source: 'bar.coffee'
- });
-
- assert.equal(mappings.length, 2);
- assert.equal(mappings[0].line, 3);
- assert.equal(mappings[0].column, 2);
- assert.equal(mappings[1].line, 3);
- assert.equal(mappings[1].column, 3);
- };
-
- exports['test allGeneratedPositionsFor for line with no mappings'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'bar.coffee'
- });
- map.addMapping({
- original: { line: 3, column: 1 },
- generated: { line: 4, column: 2 },
- source: 'bar.coffee'
- });
- map = new SourceMapConsumer(map.toString());
-
- var mappings = map.allGeneratedPositionsFor({
- line: 2,
- source: 'bar.coffee'
- });
-
- assert.equal(mappings.length, 0);
- };
-
- exports['test allGeneratedPositionsFor source map with no mappings'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated.js'
- });
- map = new SourceMapConsumer(map.toString());
-
- var mappings = map.allGeneratedPositionsFor({
- line: 2,
- source: 'bar.coffee'
- });
-
- assert.equal(mappings.length, 0);
- };
-
- exports['test computeColumnSpans'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 1, column: 1 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 2, column: 1 },
- generated: { line: 2, column: 1 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 2, column: 2 },
- generated: { line: 2, column: 10 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 2, column: 3 },
- generated: { line: 2, column: 20 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 3, column: 1 },
- generated: { line: 3, column: 1 },
- source: 'foo.coffee'
- });
- map.addMapping({
- original: { line: 3, column: 2 },
- generated: { line: 3, column: 2 },
- source: 'foo.coffee'
- });
- map = new SourceMapConsumer(map.toString());
-
- map.computeColumnSpans();
-
- var mappings = map.allGeneratedPositionsFor({
- line: 1,
- source: 'foo.coffee'
- });
-
- assert.equal(mappings.length, 1);
- assert.equal(mappings[0].lastColumn, Infinity);
-
- var mappings = map.allGeneratedPositionsFor({
- line: 2,
- source: 'foo.coffee'
- });
-
- assert.equal(mappings.length, 3);
- assert.equal(mappings[0].lastColumn, 9);
- assert.equal(mappings[1].lastColumn, 19);
- assert.equal(mappings[2].lastColumn, Infinity);
-
- var mappings = map.allGeneratedPositionsFor({
- line: 3,
- source: 'foo.coffee'
- });
-
- assert.equal(mappings.length, 2);
- assert.equal(mappings[0].lastColumn, 1);
- assert.equal(mappings[1].lastColumn, Infinity);
- };
-
- exports['test sourceRoot + originalPositionFor'] = function (assert, util) {
- var map = new SourceMapGenerator({
- sourceRoot: 'foo/bar',
- file: 'baz.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'bang.coffee'
- });
- map = new SourceMapConsumer(map.toString());
-
- var pos = map.originalPositionFor({
- line: 2,
- column: 2,
- });
-
- // Should always have the prepended source root
- assert.equal(pos.source, 'foo/bar/bang.coffee');
- assert.equal(pos.line, 1);
- assert.equal(pos.column, 1);
- };
-
- exports['test github issue #56'] = function (assert, util) {
- var map = new SourceMapGenerator({
- sourceRoot: 'http://',
- file: 'www.example.com/foo.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'www.example.com/original.js'
- });
- map = new SourceMapConsumer(map.toString());
-
- var sources = map.sources;
- assert.equal(sources.length, 1);
- assert.equal(sources[0], 'http://www.example.com/original.js');
- };
-
- exports['test github issue #43'] = function (assert, util) {
- var map = new SourceMapGenerator({
- sourceRoot: 'http://example.com',
- file: 'foo.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'http://cdn.example.com/original.js'
- });
- map = new SourceMapConsumer(map.toString());
-
- var sources = map.sources;
- assert.equal(sources.length, 1,
- 'Should only be one source.');
- assert.equal(sources[0], 'http://cdn.example.com/original.js',
- 'Should not be joined with the sourceRoot.');
- };
-
- exports['test absolute path, but same host sources'] = function (assert, util) {
- var map = new SourceMapGenerator({
- sourceRoot: 'http://example.com/foo/bar',
- file: 'foo.js'
- });
- map.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: '/original.js'
- });
- map = new SourceMapConsumer(map.toString());
-
- var sources = map.sources;
- assert.equal(sources.length, 1,
- 'Should only be one source.');
- assert.equal(sources[0], 'http://example.com/original.js',
- 'Source should be relative the host of the source root.');
- };
-
- exports['test github issue #64'] = function (assert, util) {
- var map = new SourceMapConsumer({
- "version": 3,
- "file": "foo.js",
- "sourceRoot": "http://example.com/",
- "sources": ["/a"],
- "names": [],
- "mappings": "AACA",
- "sourcesContent": ["foo"]
- });
-
- assert.equal(map.sourceContentFor("a"), "foo");
- assert.equal(map.sourceContentFor("/a"), "foo");
- };
-
- exports['test bug 885597'] = function (assert, util) {
- var map = new SourceMapConsumer({
- "version": 3,
- "file": "foo.js",
- "sourceRoot": "file:///Users/AlGore/Invented/The/Internet/",
- "sources": ["/a"],
- "names": [],
- "mappings": "AACA",
- "sourcesContent": ["foo"]
- });
-
- var s = map.sources[0];
- assert.equal(map.sourceContentFor(s), "foo");
- };
-
- exports['test github issue #72, duplicate sources'] = function (assert, util) {
- var map = new SourceMapConsumer({
- "version": 3,
- "file": "foo.js",
- "sources": ["source1.js", "source1.js", "source3.js"],
- "names": [],
- "mappings": ";EAAC;;IAEE;;MEEE",
- "sourceRoot": "http://example.com"
- });
-
- var pos = map.originalPositionFor({
- line: 2,
- column: 2
- });
- assert.equal(pos.source, 'http://example.com/source1.js');
- assert.equal(pos.line, 1);
- assert.equal(pos.column, 1);
-
- var pos = map.originalPositionFor({
- line: 4,
- column: 4
- });
- assert.equal(pos.source, 'http://example.com/source1.js');
- assert.equal(pos.line, 3);
- assert.equal(pos.column, 3);
-
- var pos = map.originalPositionFor({
- line: 6,
- column: 6
- });
- assert.equal(pos.source, 'http://example.com/source3.js');
- assert.equal(pos.line, 5);
- assert.equal(pos.column, 5);
- };
-
- exports['test github issue #72, duplicate names'] = function (assert, util) {
- var map = new SourceMapConsumer({
- "version": 3,
- "file": "foo.js",
- "sources": ["source.js"],
- "names": ["name1", "name1", "name3"],
- "mappings": ";EAACA;;IAEEA;;MAEEE",
- "sourceRoot": "http://example.com"
- });
-
- var pos = map.originalPositionFor({
- line: 2,
- column: 2
- });
- assert.equal(pos.name, 'name1');
- assert.equal(pos.line, 1);
- assert.equal(pos.column, 1);
-
- var pos = map.originalPositionFor({
- line: 4,
- column: 4
- });
- assert.equal(pos.name, 'name1');
- assert.equal(pos.line, 3);
- assert.equal(pos.column, 3);
-
- var pos = map.originalPositionFor({
- line: 6,
- column: 6
- });
- assert.equal(pos.name, 'name3');
- assert.equal(pos.line, 5);
- assert.equal(pos.column, 5);
- };
-
- exports['test SourceMapConsumer.fromSourceMap'] = function (assert, util) {
- var smg = new SourceMapGenerator({
- sourceRoot: 'http://example.com/',
- file: 'foo.js'
- });
- smg.addMapping({
- original: { line: 1, column: 1 },
- generated: { line: 2, column: 2 },
- source: 'bar.js'
- });
- smg.addMapping({
- original: { line: 2, column: 2 },
- generated: { line: 4, column: 4 },
- source: 'baz.js',
- name: 'dirtMcGirt'
- });
- smg.setSourceContent('baz.js', 'baz.js content');
-
- var smc = SourceMapConsumer.fromSourceMap(smg);
- assert.equal(smc.file, 'foo.js');
- assert.equal(smc.sourceRoot, 'http://example.com/');
- assert.equal(smc.sources.length, 2);
- assert.equal(smc.sources[0], 'http://example.com/bar.js');
- assert.equal(smc.sources[1], 'http://example.com/baz.js');
- assert.equal(smc.sourceContentFor('baz.js'), 'baz.js content');
-
- var pos = smc.originalPositionFor({
- line: 2,
- column: 2
- });
- assert.equal(pos.line, 1);
- assert.equal(pos.column, 1);
- assert.equal(pos.source, 'http://example.com/bar.js');
- assert.equal(pos.name, null);
-
- pos = smc.generatedPositionFor({
- line: 1,
- column: 1,
- source: 'http://example.com/bar.js'
- });
- assert.equal(pos.line, 2);
- assert.equal(pos.column, 2);
-
- pos = smc.originalPositionFor({
- line: 4,
- column: 4
- });
- assert.equal(pos.line, 2);
- assert.equal(pos.column, 2);
- assert.equal(pos.source, 'http://example.com/baz.js');
- assert.equal(pos.name, 'dirtMcGirt');
-
- pos = smc.generatedPositionFor({
- line: 2,
- column: 2,
- source: 'http://example.com/baz.js'
- });
- assert.equal(pos.line, 4);
- assert.equal(pos.column, 4);
- };
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-generator.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-generator.js
deleted file mode 100644
index d748bb1..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-map-generator.js
+++ /dev/null
@@ -1,679 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var SourceMapGenerator = require('../../lib/source-map/source-map-generator').SourceMapGenerator;
- var SourceMapConsumer = require('../../lib/source-map/source-map-consumer').SourceMapConsumer;
- var SourceNode = require('../../lib/source-map/source-node').SourceNode;
- var util = require('./util');
-
- exports['test some simple stuff'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'foo.js',
- sourceRoot: '.'
- });
- assert.ok(true);
-
- var map = new SourceMapGenerator().toJSON();
- assert.ok(!('file' in map));
- assert.ok(!('sourceRoot' in map));
- };
-
- exports['test JSON serialization'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'foo.js',
- sourceRoot: '.'
- });
- assert.equal(map.toString(), JSON.stringify(map));
- };
-
- exports['test adding mappings (case 1)'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.'
- });
-
- assert.doesNotThrow(function () {
- map.addMapping({
- generated: { line: 1, column: 1 }
- });
- });
- };
-
- exports['test adding mappings (case 2)'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.'
- });
-
- assert.doesNotThrow(function () {
- map.addMapping({
- generated: { line: 1, column: 1 },
- source: 'bar.js',
- original: { line: 1, column: 1 }
- });
- });
- };
-
- exports['test adding mappings (case 3)'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.'
- });
-
- assert.doesNotThrow(function () {
- map.addMapping({
- generated: { line: 1, column: 1 },
- source: 'bar.js',
- original: { line: 1, column: 1 },
- name: 'someToken'
- });
- });
- };
-
- exports['test adding mappings (invalid)'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.'
- });
-
- // Not enough info.
- assert.throws(function () {
- map.addMapping({});
- });
-
- // Original file position, but no source.
- assert.throws(function () {
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 1, column: 1 }
- });
- });
- };
-
- exports['test adding mappings with skipValidation'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.',
- skipValidation: true
- });
-
- // Not enough info, caught by `util.getArgs`
- assert.throws(function () {
- map.addMapping({});
- });
-
- // Original file position, but no source. Not checked.
- assert.doesNotThrow(function () {
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 1, column: 1 }
- });
- });
- };
-
- exports['test that the correct mappings are being generated'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'min.js',
- sourceRoot: '/the/root'
- });
-
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 1, column: 1 },
- source: 'one.js'
- });
- map.addMapping({
- generated: { line: 1, column: 5 },
- original: { line: 1, column: 5 },
- source: 'one.js'
- });
- map.addMapping({
- generated: { line: 1, column: 9 },
- original: { line: 1, column: 11 },
- source: 'one.js'
- });
- map.addMapping({
- generated: { line: 1, column: 18 },
- original: { line: 1, column: 21 },
- source: 'one.js',
- name: 'bar'
- });
- map.addMapping({
- generated: { line: 1, column: 21 },
- original: { line: 2, column: 3 },
- source: 'one.js'
- });
- map.addMapping({
- generated: { line: 1, column: 28 },
- original: { line: 2, column: 10 },
- source: 'one.js',
- name: 'baz'
- });
- map.addMapping({
- generated: { line: 1, column: 32 },
- original: { line: 2, column: 14 },
- source: 'one.js',
- name: 'bar'
- });
-
- map.addMapping({
- generated: { line: 2, column: 1 },
- original: { line: 1, column: 1 },
- source: 'two.js'
- });
- map.addMapping({
- generated: { line: 2, column: 5 },
- original: { line: 1, column: 5 },
- source: 'two.js'
- });
- map.addMapping({
- generated: { line: 2, column: 9 },
- original: { line: 1, column: 11 },
- source: 'two.js'
- });
- map.addMapping({
- generated: { line: 2, column: 18 },
- original: { line: 1, column: 21 },
- source: 'two.js',
- name: 'n'
- });
- map.addMapping({
- generated: { line: 2, column: 21 },
- original: { line: 2, column: 3 },
- source: 'two.js'
- });
- map.addMapping({
- generated: { line: 2, column: 28 },
- original: { line: 2, column: 10 },
- source: 'two.js',
- name: 'n'
- });
-
- map = JSON.parse(map.toString());
-
- util.assertEqualMaps(assert, map, util.testMap);
- };
-
- exports['test that adding a mapping with an empty string name does not break generation'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'generated-foo.js',
- sourceRoot: '.'
- });
-
- map.addMapping({
- generated: { line: 1, column: 1 },
- source: 'bar.js',
- original: { line: 1, column: 1 },
- name: ''
- });
-
- assert.doesNotThrow(function () {
- JSON.parse(map.toString());
- });
- };
-
- exports['test that source content can be set'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'min.js',
- sourceRoot: '/the/root'
- });
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 1, column: 1 },
- source: 'one.js'
- });
- map.addMapping({
- generated: { line: 2, column: 1 },
- original: { line: 1, column: 1 },
- source: 'two.js'
- });
- map.setSourceContent('one.js', 'one file content');
-
- map = JSON.parse(map.toString());
- assert.equal(map.sources[0], 'one.js');
- assert.equal(map.sources[1], 'two.js');
- assert.equal(map.sourcesContent[0], 'one file content');
- assert.equal(map.sourcesContent[1], null);
- };
-
- exports['test .fromSourceMap'] = function (assert, util) {
- var map = SourceMapGenerator.fromSourceMap(new SourceMapConsumer(util.testMap));
- util.assertEqualMaps(assert, map.toJSON(), util.testMap);
- };
-
- exports['test .fromSourceMap with sourcesContent'] = function (assert, util) {
- var map = SourceMapGenerator.fromSourceMap(
- new SourceMapConsumer(util.testMapWithSourcesContent));
- util.assertEqualMaps(assert, map.toJSON(), util.testMapWithSourcesContent);
- };
-
- exports['test applySourceMap'] = function (assert, util) {
- var node = new SourceNode(null, null, null, [
- new SourceNode(2, 0, 'fileX', 'lineX2\n'),
- 'genA1\n',
- new SourceNode(2, 0, 'fileY', 'lineY2\n'),
- 'genA2\n',
- new SourceNode(1, 0, 'fileX', 'lineX1\n'),
- 'genA3\n',
- new SourceNode(1, 0, 'fileY', 'lineY1\n')
- ]);
- var mapStep1 = node.toStringWithSourceMap({
- file: 'fileA'
- }).map;
- mapStep1.setSourceContent('fileX', 'lineX1\nlineX2\n');
- mapStep1 = mapStep1.toJSON();
-
- node = new SourceNode(null, null, null, [
- 'gen1\n',
- new SourceNode(1, 0, 'fileA', 'lineA1\n'),
- new SourceNode(2, 0, 'fileA', 'lineA2\n'),
- new SourceNode(3, 0, 'fileA', 'lineA3\n'),
- new SourceNode(4, 0, 'fileA', 'lineA4\n'),
- new SourceNode(1, 0, 'fileB', 'lineB1\n'),
- new SourceNode(2, 0, 'fileB', 'lineB2\n'),
- 'gen2\n'
- ]);
- var mapStep2 = node.toStringWithSourceMap({
- file: 'fileGen'
- }).map;
- mapStep2.setSourceContent('fileB', 'lineB1\nlineB2\n');
- mapStep2 = mapStep2.toJSON();
-
- node = new SourceNode(null, null, null, [
- 'gen1\n',
- new SourceNode(2, 0, 'fileX', 'lineA1\n'),
- new SourceNode(2, 0, 'fileA', 'lineA2\n'),
- new SourceNode(2, 0, 'fileY', 'lineA3\n'),
- new SourceNode(4, 0, 'fileA', 'lineA4\n'),
- new SourceNode(1, 0, 'fileB', 'lineB1\n'),
- new SourceNode(2, 0, 'fileB', 'lineB2\n'),
- 'gen2\n'
- ]);
- var expectedMap = node.toStringWithSourceMap({
- file: 'fileGen'
- }).map;
- expectedMap.setSourceContent('fileX', 'lineX1\nlineX2\n');
- expectedMap.setSourceContent('fileB', 'lineB1\nlineB2\n');
- expectedMap = expectedMap.toJSON();
-
- // apply source map "mapStep1" to "mapStep2"
- var generator = SourceMapGenerator.fromSourceMap(new SourceMapConsumer(mapStep2));
- generator.applySourceMap(new SourceMapConsumer(mapStep1));
- var actualMap = generator.toJSON();
-
- util.assertEqualMaps(assert, actualMap, expectedMap);
- };
-
- exports['test applySourceMap throws when file is missing'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'test.js'
- });
- var map2 = new SourceMapGenerator();
- assert.throws(function() {
- map.applySourceMap(new SourceMapConsumer(map2.toJSON()));
- });
- };
-
- exports['test the two additional parameters of applySourceMap'] = function (assert, util) {
- // Assume the following directory structure:
- //
- // http://foo.org/
- // bar.coffee
- // app/
- // coffee/
- // foo.coffee
- // temp/
- // bundle.js
- // temp_maps/
- // bundle.js.map
- // public/
- // bundle.min.js
- // bundle.min.js.map
- //
- // http://www.example.com/
- // baz.coffee
-
- var bundleMap = new SourceMapGenerator({
- file: 'bundle.js'
- });
- bundleMap.addMapping({
- generated: { line: 3, column: 3 },
- original: { line: 2, column: 2 },
- source: '../../coffee/foo.coffee'
- });
- bundleMap.setSourceContent('../../coffee/foo.coffee', 'foo coffee');
- bundleMap.addMapping({
- generated: { line: 13, column: 13 },
- original: { line: 12, column: 12 },
- source: '/bar.coffee'
- });
- bundleMap.setSourceContent('/bar.coffee', 'bar coffee');
- bundleMap.addMapping({
- generated: { line: 23, column: 23 },
- original: { line: 22, column: 22 },
- source: 'http://www.example.com/baz.coffee'
- });
- bundleMap.setSourceContent(
- 'http://www.example.com/baz.coffee',
- 'baz coffee'
- );
- bundleMap = new SourceMapConsumer(bundleMap.toJSON());
-
- var minifiedMap = new SourceMapGenerator({
- file: 'bundle.min.js',
- sourceRoot: '..'
- });
- minifiedMap.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 3, column: 3 },
- source: 'temp/bundle.js'
- });
- minifiedMap.addMapping({
- generated: { line: 11, column: 11 },
- original: { line: 13, column: 13 },
- source: 'temp/bundle.js'
- });
- minifiedMap.addMapping({
- generated: { line: 21, column: 21 },
- original: { line: 23, column: 23 },
- source: 'temp/bundle.js'
- });
- minifiedMap = new SourceMapConsumer(minifiedMap.toJSON());
-
- var expectedMap = function (sources) {
- var map = new SourceMapGenerator({
- file: 'bundle.min.js',
- sourceRoot: '..'
- });
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 2, column: 2 },
- source: sources[0]
- });
- map.setSourceContent(sources[0], 'foo coffee');
- map.addMapping({
- generated: { line: 11, column: 11 },
- original: { line: 12, column: 12 },
- source: sources[1]
- });
- map.setSourceContent(sources[1], 'bar coffee');
- map.addMapping({
- generated: { line: 21, column: 21 },
- original: { line: 22, column: 22 },
- source: sources[2]
- });
- map.setSourceContent(sources[2], 'baz coffee');
- return map.toJSON();
- }
-
- var actualMap = function (aSourceMapPath) {
- var map = SourceMapGenerator.fromSourceMap(minifiedMap);
- // Note that relying on `bundleMap.file` (which is simply 'bundle.js')
- // instead of supplying the second parameter wouldn't work here.
- map.applySourceMap(bundleMap, '../temp/bundle.js', aSourceMapPath);
- return map.toJSON();
- }
-
- util.assertEqualMaps(assert, actualMap('../temp/temp_maps'), expectedMap([
- 'coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- util.assertEqualMaps(assert, actualMap('/app/temp/temp_maps'), expectedMap([
- '/app/coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- util.assertEqualMaps(assert, actualMap('http://foo.org/app/temp/temp_maps'), expectedMap([
- 'http://foo.org/app/coffee/foo.coffee',
- 'http://foo.org/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- // If the third parameter is omitted or set to the current working
- // directory we get incorrect source paths:
-
- util.assertEqualMaps(assert, actualMap(), expectedMap([
- '../coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- util.assertEqualMaps(assert, actualMap(''), expectedMap([
- '../coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- util.assertEqualMaps(assert, actualMap('.'), expectedMap([
- '../coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
-
- util.assertEqualMaps(assert, actualMap('./'), expectedMap([
- '../coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee'
- ]));
- };
-
- exports['test applySourceMap name handling'] = function (assert, util) {
- // Imagine some CoffeeScript code being compiled into JavaScript and then
- // minified.
-
- var assertName = function(coffeeName, jsName, expectedName) {
- var minifiedMap = new SourceMapGenerator({
- file: 'test.js.min'
- });
- minifiedMap.addMapping({
- generated: { line: 1, column: 4 },
- original: { line: 1, column: 4 },
- source: 'test.js',
- name: jsName
- });
-
- var coffeeMap = new SourceMapGenerator({
- file: 'test.js'
- });
- coffeeMap.addMapping({
- generated: { line: 1, column: 4 },
- original: { line: 1, column: 0 },
- source: 'test.coffee',
- name: coffeeName
- });
-
- minifiedMap.applySourceMap(new SourceMapConsumer(coffeeMap.toJSON()));
-
- new SourceMapConsumer(minifiedMap.toJSON()).eachMapping(function(mapping) {
- assert.equal(mapping.name, expectedName);
- });
- };
-
- // `foo = 1` -> `var foo = 1;` -> `var a=1`
- // CoffeeScript doesn’t rename variables, so there’s no need for it to
- // provide names in its source maps. Minifiers do rename variables and
- // therefore do provide names in their source maps. So that name should be
- // retained if the original map lacks names.
- assertName(null, 'foo', 'foo');
-
- // `foo = 1` -> `var coffee$foo = 1;` -> `var a=1`
- // Imagine that CoffeeScript prefixed all variables with `coffee$`. Even
- // though the minifier then also provides a name, the original name is
- // what corresponds to the source.
- assertName('foo', 'coffee$foo', 'foo');
-
- // `foo = 1` -> `var coffee$foo = 1;` -> `var coffee$foo=1`
- // Minifiers can turn off variable mangling. Then there’s no need to
- // provide names in the source map, but the names from the original map are
- // still needed.
- assertName('foo', null, 'foo');
-
- // `foo = 1` -> `var foo = 1;` -> `var foo=1`
- // No renaming at all.
- assertName(null, null, null);
- };
-
- exports['test sorting with duplicate generated mappings'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'test.js'
- });
- map.addMapping({
- generated: { line: 3, column: 0 },
- original: { line: 2, column: 0 },
- source: 'a.js'
- });
- map.addMapping({
- generated: { line: 2, column: 0 }
- });
- map.addMapping({
- generated: { line: 2, column: 0 }
- });
- map.addMapping({
- generated: { line: 1, column: 0 },
- original: { line: 1, column: 0 },
- source: 'a.js'
- });
-
- util.assertEqualMaps(assert, map.toJSON(), {
- version: 3,
- file: 'test.js',
- sources: ['a.js'],
- names: [],
- mappings: 'AAAA;A;AACA'
- });
- };
-
- exports['test ignore duplicate mappings.'] = function (assert, util) {
- var init = { file: 'min.js', sourceRoot: '/the/root' };
- var map1, map2;
-
- // null original source location
- var nullMapping1 = {
- generated: { line: 1, column: 0 }
- };
- var nullMapping2 = {
- generated: { line: 2, column: 2 }
- };
-
- map1 = new SourceMapGenerator(init);
- map2 = new SourceMapGenerator(init);
-
- map1.addMapping(nullMapping1);
- map1.addMapping(nullMapping1);
-
- map2.addMapping(nullMapping1);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
-
- map1.addMapping(nullMapping2);
- map1.addMapping(nullMapping1);
-
- map2.addMapping(nullMapping2);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
-
- // original source location
- var srcMapping1 = {
- generated: { line: 1, column: 0 },
- original: { line: 11, column: 0 },
- source: 'srcMapping1.js'
- };
- var srcMapping2 = {
- generated: { line: 2, column: 2 },
- original: { line: 11, column: 0 },
- source: 'srcMapping2.js'
- };
-
- map1 = new SourceMapGenerator(init);
- map2 = new SourceMapGenerator(init);
-
- map1.addMapping(srcMapping1);
- map1.addMapping(srcMapping1);
-
- map2.addMapping(srcMapping1);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
-
- map1.addMapping(srcMapping2);
- map1.addMapping(srcMapping1);
-
- map2.addMapping(srcMapping2);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
-
- // full original source and name information
- var fullMapping1 = {
- generated: { line: 1, column: 0 },
- original: { line: 11, column: 0 },
- source: 'fullMapping1.js',
- name: 'fullMapping1'
- };
- var fullMapping2 = {
- generated: { line: 2, column: 2 },
- original: { line: 11, column: 0 },
- source: 'fullMapping2.js',
- name: 'fullMapping2'
- };
-
- map1 = new SourceMapGenerator(init);
- map2 = new SourceMapGenerator(init);
-
- map1.addMapping(fullMapping1);
- map1.addMapping(fullMapping1);
-
- map2.addMapping(fullMapping1);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
-
- map1.addMapping(fullMapping2);
- map1.addMapping(fullMapping1);
-
- map2.addMapping(fullMapping2);
-
- util.assertEqualMaps(assert, map1.toJSON(), map2.toJSON());
- };
-
- exports['test github issue #72, check for duplicate names or sources'] = function (assert, util) {
- var map = new SourceMapGenerator({
- file: 'test.js'
- });
- map.addMapping({
- generated: { line: 1, column: 1 },
- original: { line: 2, column: 2 },
- source: 'a.js',
- name: 'foo'
- });
- map.addMapping({
- generated: { line: 3, column: 3 },
- original: { line: 4, column: 4 },
- source: 'a.js',
- name: 'foo'
- });
- util.assertEqualMaps(assert, map.toJSON(), {
- version: 3,
- file: 'test.js',
- sources: ['a.js'],
- names: ['foo'],
- mappings: 'CACEA;;GAEEA'
- });
- };
-
- exports['test setting sourcesContent to null when already null'] = function (assert, util) {
- var smg = new SourceMapGenerator({ file: "foo.js" });
- assert.doesNotThrow(function() {
- smg.setSourceContent("bar.js", null);
- });
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-node.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-node.js
deleted file mode 100644
index 139af4e..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-source-node.js
+++ /dev/null
@@ -1,612 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var SourceMapGenerator = require('../../lib/source-map/source-map-generator').SourceMapGenerator;
- var SourceMapConsumer = require('../../lib/source-map/source-map-consumer').SourceMapConsumer;
- var SourceNode = require('../../lib/source-map/source-node').SourceNode;
-
- function forEachNewline(fn) {
- return function (assert, util) {
- ['\n', '\r\n'].forEach(fn.bind(null, assert, util));
- }
- }
-
- exports['test .add()'] = function (assert, util) {
- var node = new SourceNode(null, null, null);
-
- // Adding a string works.
- node.add('function noop() {}');
-
- // Adding another source node works.
- node.add(new SourceNode(null, null, null));
-
- // Adding an array works.
- node.add(['function foo() {',
- new SourceNode(null, null, null,
- 'return 10;'),
- '}']);
-
- // Adding other stuff doesn't.
- assert.throws(function () {
- node.add({});
- });
- assert.throws(function () {
- node.add(function () {});
- });
- };
-
- exports['test .prepend()'] = function (assert, util) {
- var node = new SourceNode(null, null, null);
-
- // Prepending a string works.
- node.prepend('function noop() {}');
- assert.equal(node.children[0], 'function noop() {}');
- assert.equal(node.children.length, 1);
-
- // Prepending another source node works.
- node.prepend(new SourceNode(null, null, null));
- assert.equal(node.children[0], '');
- assert.equal(node.children[1], 'function noop() {}');
- assert.equal(node.children.length, 2);
-
- // Prepending an array works.
- node.prepend(['function foo() {',
- new SourceNode(null, null, null,
- 'return 10;'),
- '}']);
- assert.equal(node.children[0], 'function foo() {');
- assert.equal(node.children[1], 'return 10;');
- assert.equal(node.children[2], '}');
- assert.equal(node.children[3], '');
- assert.equal(node.children[4], 'function noop() {}');
- assert.equal(node.children.length, 5);
-
- // Prepending other stuff doesn't.
- assert.throws(function () {
- node.prepend({});
- });
- assert.throws(function () {
- node.prepend(function () {});
- });
- };
-
- exports['test .toString()'] = function (assert, util) {
- assert.equal((new SourceNode(null, null, null,
- ['function foo() {',
- new SourceNode(null, null, null, 'return 10;'),
- '}'])).toString(),
- 'function foo() {return 10;}');
- };
-
- exports['test .join()'] = function (assert, util) {
- assert.equal((new SourceNode(null, null, null,
- ['a', 'b', 'c', 'd'])).join(', ').toString(),
- 'a, b, c, d');
- };
-
- exports['test .walk()'] = function (assert, util) {
- var node = new SourceNode(null, null, null,
- ['(function () {\n',
- ' ', new SourceNode(1, 0, 'a.js', ['someCall()']), ';\n',
- ' ', new SourceNode(2, 0, 'b.js', ['if (foo) bar()']), ';\n',
- '}());']);
- var expected = [
- { str: '(function () {\n', source: null, line: null, column: null },
- { str: ' ', source: null, line: null, column: null },
- { str: 'someCall()', source: 'a.js', line: 1, column: 0 },
- { str: ';\n', source: null, line: null, column: null },
- { str: ' ', source: null, line: null, column: null },
- { str: 'if (foo) bar()', source: 'b.js', line: 2, column: 0 },
- { str: ';\n', source: null, line: null, column: null },
- { str: '}());', source: null, line: null, column: null },
- ];
- var i = 0;
- node.walk(function (chunk, loc) {
- assert.equal(expected[i].str, chunk);
- assert.equal(expected[i].source, loc.source);
- assert.equal(expected[i].line, loc.line);
- assert.equal(expected[i].column, loc.column);
- i++;
- });
- };
-
- exports['test .replaceRight'] = function (assert, util) {
- var node;
-
- // Not nested
- node = new SourceNode(null, null, null, 'hello world');
- node.replaceRight(/world/, 'universe');
- assert.equal(node.toString(), 'hello universe');
-
- // Nested
- node = new SourceNode(null, null, null,
- [new SourceNode(null, null, null, 'hey sexy mama, '),
- new SourceNode(null, null, null, 'want to kill all humans?')]);
- node.replaceRight(/kill all humans/, 'watch Futurama');
- assert.equal(node.toString(), 'hey sexy mama, want to watch Futurama?');
- };
-
- exports['test .toStringWithSourceMap()'] = forEachNewline(function (assert, util, nl) {
- var node = new SourceNode(null, null, null,
- ['(function () {' + nl,
- ' ',
- new SourceNode(1, 0, 'a.js', 'someCall', 'originalCall'),
- new SourceNode(1, 8, 'a.js', '()'),
- ';' + nl,
- ' ', new SourceNode(2, 0, 'b.js', ['if (foo) bar()']), ';' + nl,
- '}());']);
- var result = node.toStringWithSourceMap({
- file: 'foo.js'
- });
-
- assert.equal(result.code, [
- '(function () {',
- ' someCall();',
- ' if (foo) bar();',
- '}());'
- ].join(nl));
-
- var map = result.map;
- var mapWithoutOptions = node.toStringWithSourceMap().map;
-
- assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
- assert.ok(mapWithoutOptions instanceof SourceMapGenerator, 'mapWithoutOptions instanceof SourceMapGenerator');
- assert.ok(!('file' in mapWithoutOptions));
- mapWithoutOptions._file = 'foo.js';
- util.assertEqualMaps(assert, map.toJSON(), mapWithoutOptions.toJSON());
-
- map = new SourceMapConsumer(map.toString());
-
- var actual;
-
- actual = map.originalPositionFor({
- line: 1,
- column: 4
- });
- assert.equal(actual.source, null);
- assert.equal(actual.line, null);
- assert.equal(actual.column, null);
-
- actual = map.originalPositionFor({
- line: 2,
- column: 2
- });
- assert.equal(actual.source, 'a.js');
- assert.equal(actual.line, 1);
- assert.equal(actual.column, 0);
- assert.equal(actual.name, 'originalCall');
-
- actual = map.originalPositionFor({
- line: 3,
- column: 2
- });
- assert.equal(actual.source, 'b.js');
- assert.equal(actual.line, 2);
- assert.equal(actual.column, 0);
-
- actual = map.originalPositionFor({
- line: 3,
- column: 16
- });
- assert.equal(actual.source, null);
- assert.equal(actual.line, null);
- assert.equal(actual.column, null);
-
- actual = map.originalPositionFor({
- line: 4,
- column: 2
- });
- assert.equal(actual.source, null);
- assert.equal(actual.line, null);
- assert.equal(actual.column, null);
- });
-
- exports['test .fromStringWithSourceMap()'] = forEachNewline(function (assert, util, nl) {
- var testCode = util.testGeneratedCode.replace(/\n/g, nl);
- var node = SourceNode.fromStringWithSourceMap(
- testCode,
- new SourceMapConsumer(util.testMap));
-
- var result = node.toStringWithSourceMap({
- file: 'min.js'
- });
- var map = result.map;
- var code = result.code;
-
- assert.equal(code, testCode);
- assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
- map = map.toJSON();
- assert.equal(map.version, util.testMap.version);
- assert.equal(map.file, util.testMap.file);
- assert.equal(map.mappings, util.testMap.mappings);
- });
-
- exports['test .fromStringWithSourceMap() empty map'] = forEachNewline(function (assert, util, nl) {
- var node = SourceNode.fromStringWithSourceMap(
- util.testGeneratedCode.replace(/\n/g, nl),
- new SourceMapConsumer(util.emptyMap));
- var result = node.toStringWithSourceMap({
- file: 'min.js'
- });
- var map = result.map;
- var code = result.code;
-
- assert.equal(code, util.testGeneratedCode.replace(/\n/g, nl));
- assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
- map = map.toJSON();
- assert.equal(map.version, util.emptyMap.version);
- assert.equal(map.file, util.emptyMap.file);
- assert.equal(map.mappings.length, util.emptyMap.mappings.length);
- assert.equal(map.mappings, util.emptyMap.mappings);
- });
-
- exports['test .fromStringWithSourceMap() complex version'] = forEachNewline(function (assert, util, nl) {
- var input = new SourceNode(null, null, null, [
- "(function() {" + nl,
- " var Test = {};" + nl,
- " ", new SourceNode(1, 0, "a.js", "Test.A = { value: 1234 };" + nl),
- " ", new SourceNode(2, 0, "a.js", "Test.A.x = 'xyz';"), nl,
- "}());" + nl,
- "/* Generated Source */"]);
- input = input.toStringWithSourceMap({
- file: 'foo.js'
- });
-
- var node = SourceNode.fromStringWithSourceMap(
- input.code,
- new SourceMapConsumer(input.map.toString()));
-
- var result = node.toStringWithSourceMap({
- file: 'foo.js'
- });
- var map = result.map;
- var code = result.code;
-
- assert.equal(code, input.code);
- assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
- map = map.toJSON();
- var inputMap = input.map.toJSON();
- util.assertEqualMaps(assert, map, inputMap);
- });
-
- exports['test .fromStringWithSourceMap() third argument'] = function (assert, util) {
- // Assume the following directory structure:
- //
- // http://foo.org/
- // bar.coffee
- // app/
- // coffee/
- // foo.coffee
- // coffeeBundle.js # Made from {foo,bar,baz}.coffee
- // maps/
- // coffeeBundle.js.map
- // js/
- // foo.js
- // public/
- // app.js # Made from {foo,coffeeBundle}.js
- // app.js.map
- //
- // http://www.example.com/
- // baz.coffee
-
- var coffeeBundle = new SourceNode(1, 0, 'foo.coffee', 'foo(coffee);\n');
- coffeeBundle.setSourceContent('foo.coffee', 'foo coffee');
- coffeeBundle.add(new SourceNode(2, 0, '/bar.coffee', 'bar(coffee);\n'));
- coffeeBundle.add(new SourceNode(3, 0, 'http://www.example.com/baz.coffee', 'baz(coffee);'));
- coffeeBundle = coffeeBundle.toStringWithSourceMap({
- file: 'foo.js',
- sourceRoot: '..'
- });
-
- var foo = new SourceNode(1, 0, 'foo.js', 'foo(js);');
-
- var test = function(relativePath, expectedSources) {
- var app = new SourceNode();
- app.add(SourceNode.fromStringWithSourceMap(
- coffeeBundle.code,
- new SourceMapConsumer(coffeeBundle.map.toString()),
- relativePath));
- app.add(foo);
- var i = 0;
- app.walk(function (chunk, loc) {
- assert.equal(loc.source, expectedSources[i]);
- i++;
- });
- app.walkSourceContents(function (sourceFile, sourceContent) {
- assert.equal(sourceFile, expectedSources[0]);
- assert.equal(sourceContent, 'foo coffee');
- })
- };
-
- test('../coffee/maps', [
- '../coffee/foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee',
- 'foo.js'
- ]);
-
- // If the third parameter is omitted or set to the current working
- // directory we get incorrect source paths:
-
- test(undefined, [
- '../foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee',
- 'foo.js'
- ]);
-
- test('', [
- '../foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee',
- 'foo.js'
- ]);
-
- test('.', [
- '../foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee',
- 'foo.js'
- ]);
-
- test('./', [
- '../foo.coffee',
- '/bar.coffee',
- 'http://www.example.com/baz.coffee',
- 'foo.js'
- ]);
- };
-
- exports['test .toStringWithSourceMap() merging duplicate mappings'] = forEachNewline(function (assert, util, nl) {
- var input = new SourceNode(null, null, null, [
- new SourceNode(1, 0, "a.js", "(function"),
- new SourceNode(1, 0, "a.js", "() {" + nl),
- " ",
- new SourceNode(1, 0, "a.js", "var Test = "),
- new SourceNode(1, 0, "b.js", "{};" + nl),
- new SourceNode(2, 0, "b.js", "Test"),
- new SourceNode(2, 0, "b.js", ".A", "A"),
- new SourceNode(2, 20, "b.js", " = { value: ", "A"),
- "1234",
- new SourceNode(2, 40, "b.js", " };" + nl, "A"),
- "}());" + nl,
- "/* Generated Source */"
- ]);
- input = input.toStringWithSourceMap({
- file: 'foo.js'
- });
-
- assert.equal(input.code, [
- "(function() {",
- " var Test = {};",
- "Test.A = { value: 1234 };",
- "}());",
- "/* Generated Source */"
- ].join(nl))
-
- var correctMap = new SourceMapGenerator({
- file: 'foo.js'
- });
- correctMap.addMapping({
- generated: { line: 1, column: 0 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- // Here is no need for a empty mapping,
- // because mappings ends at eol
- correctMap.addMapping({
- generated: { line: 2, column: 2 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 2, column: 13 },
- source: 'b.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 3, column: 0 },
- source: 'b.js',
- original: { line: 2, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 3, column: 4 },
- source: 'b.js',
- name: 'A',
- original: { line: 2, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 3, column: 6 },
- source: 'b.js',
- name: 'A',
- original: { line: 2, column: 20 }
- });
- // This empty mapping is required,
- // because there is a hole in the middle of the line
- correctMap.addMapping({
- generated: { line: 3, column: 18 }
- });
- correctMap.addMapping({
- generated: { line: 3, column: 22 },
- source: 'b.js',
- name: 'A',
- original: { line: 2, column: 40 }
- });
- // Here is no need for a empty mapping,
- // because mappings ends at eol
-
- var inputMap = input.map.toJSON();
- correctMap = correctMap.toJSON();
- util.assertEqualMaps(assert, inputMap, correctMap);
- });
-
- exports['test .toStringWithSourceMap() multi-line SourceNodes'] = forEachNewline(function (assert, util, nl) {
- var input = new SourceNode(null, null, null, [
- new SourceNode(1, 0, "a.js", "(function() {" + nl + "var nextLine = 1;" + nl + "anotherLine();" + nl),
- new SourceNode(2, 2, "b.js", "Test.call(this, 123);" + nl),
- new SourceNode(2, 2, "b.js", "this['stuff'] = 'v';" + nl),
- new SourceNode(2, 2, "b.js", "anotherLine();" + nl),
- "/*" + nl + "Generated" + nl + "Source" + nl + "*/" + nl,
- new SourceNode(3, 4, "c.js", "anotherLine();" + nl),
- "/*" + nl + "Generated" + nl + "Source" + nl + "*/"
- ]);
- input = input.toStringWithSourceMap({
- file: 'foo.js'
- });
-
- assert.equal(input.code, [
- "(function() {",
- "var nextLine = 1;",
- "anotherLine();",
- "Test.call(this, 123);",
- "this['stuff'] = 'v';",
- "anotherLine();",
- "/*",
- "Generated",
- "Source",
- "*/",
- "anotherLine();",
- "/*",
- "Generated",
- "Source",
- "*/"
- ].join(nl));
-
- var correctMap = new SourceMapGenerator({
- file: 'foo.js'
- });
- correctMap.addMapping({
- generated: { line: 1, column: 0 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 2, column: 0 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 3, column: 0 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 4, column: 0 },
- source: 'b.js',
- original: { line: 2, column: 2 }
- });
- correctMap.addMapping({
- generated: { line: 5, column: 0 },
- source: 'b.js',
- original: { line: 2, column: 2 }
- });
- correctMap.addMapping({
- generated: { line: 6, column: 0 },
- source: 'b.js',
- original: { line: 2, column: 2 }
- });
- correctMap.addMapping({
- generated: { line: 11, column: 0 },
- source: 'c.js',
- original: { line: 3, column: 4 }
- });
-
- var inputMap = input.map.toJSON();
- correctMap = correctMap.toJSON();
- util.assertEqualMaps(assert, inputMap, correctMap);
- });
-
- exports['test .toStringWithSourceMap() with empty string'] = function (assert, util) {
- var node = new SourceNode(1, 0, 'empty.js', '');
- var result = node.toStringWithSourceMap();
- assert.equal(result.code, '');
- };
-
- exports['test .toStringWithSourceMap() with consecutive newlines'] = forEachNewline(function (assert, util, nl) {
- var input = new SourceNode(null, null, null, [
- "/***/" + nl + nl,
- new SourceNode(1, 0, "a.js", "'use strict';" + nl),
- new SourceNode(2, 0, "a.js", "a();"),
- ]);
- input = input.toStringWithSourceMap({
- file: 'foo.js'
- });
-
- assert.equal(input.code, [
- "/***/",
- "",
- "'use strict';",
- "a();",
- ].join(nl));
-
- var correctMap = new SourceMapGenerator({
- file: 'foo.js'
- });
- correctMap.addMapping({
- generated: { line: 3, column: 0 },
- source: 'a.js',
- original: { line: 1, column: 0 }
- });
- correctMap.addMapping({
- generated: { line: 4, column: 0 },
- source: 'a.js',
- original: { line: 2, column: 0 }
- });
-
- var inputMap = input.map.toJSON();
- correctMap = correctMap.toJSON();
- util.assertEqualMaps(assert, inputMap, correctMap);
- });
-
- exports['test setSourceContent with toStringWithSourceMap'] = function (assert, util) {
- var aNode = new SourceNode(1, 1, 'a.js', 'a');
- aNode.setSourceContent('a.js', 'someContent');
- var node = new SourceNode(null, null, null,
- ['(function () {\n',
- ' ', aNode,
- ' ', new SourceNode(1, 1, 'b.js', 'b'),
- '}());']);
- node.setSourceContent('b.js', 'otherContent');
- var map = node.toStringWithSourceMap({
- file: 'foo.js'
- }).map;
-
- assert.ok(map instanceof SourceMapGenerator, 'map instanceof SourceMapGenerator');
- map = new SourceMapConsumer(map.toString());
-
- assert.equal(map.sources.length, 2);
- assert.equal(map.sources[0], 'a.js');
- assert.equal(map.sources[1], 'b.js');
- assert.equal(map.sourcesContent.length, 2);
- assert.equal(map.sourcesContent[0], 'someContent');
- assert.equal(map.sourcesContent[1], 'otherContent');
- };
-
- exports['test walkSourceContents'] = function (assert, util) {
- var aNode = new SourceNode(1, 1, 'a.js', 'a');
- aNode.setSourceContent('a.js', 'someContent');
- var node = new SourceNode(null, null, null,
- ['(function () {\n',
- ' ', aNode,
- ' ', new SourceNode(1, 1, 'b.js', 'b'),
- '}());']);
- node.setSourceContent('b.js', 'otherContent');
- var results = [];
- node.walkSourceContents(function (sourceFile, sourceContent) {
- results.push([sourceFile, sourceContent]);
- });
- assert.equal(results.length, 2);
- assert.equal(results[0][0], 'a.js');
- assert.equal(results[0][1], 'someContent');
- assert.equal(results[1][0], 'b.js');
- assert.equal(results[1][1], 'otherContent');
- };
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-util.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-util.js
deleted file mode 100644
index 997d1a2..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/test-util.js
+++ /dev/null
@@ -1,216 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2014 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var libUtil = require('../../lib/source-map/util');
-
- exports['test urls'] = function (assert, util) {
- var assertUrl = function (url) {
- assert.equal(url, libUtil.urlGenerate(libUtil.urlParse(url)));
- };
- assertUrl('http://');
- assertUrl('http://www.example.com');
- assertUrl('http://user:pass@www.example.com');
- assertUrl('http://www.example.com:80');
- assertUrl('http://www.example.com/');
- assertUrl('http://www.example.com/foo/bar');
- assertUrl('http://www.example.com/foo/bar/');
- assertUrl('http://user:pass@www.example.com:80/foo/bar/');
-
- assertUrl('//');
- assertUrl('//www.example.com');
- assertUrl('file:///www.example.com');
-
- assert.equal(libUtil.urlParse(''), null);
- assert.equal(libUtil.urlParse('.'), null);
- assert.equal(libUtil.urlParse('..'), null);
- assert.equal(libUtil.urlParse('a'), null);
- assert.equal(libUtil.urlParse('a/b'), null);
- assert.equal(libUtil.urlParse('a//b'), null);
- assert.equal(libUtil.urlParse('/a'), null);
- assert.equal(libUtil.urlParse('data:foo,bar'), null);
- };
-
- exports['test normalize()'] = function (assert, util) {
- assert.equal(libUtil.normalize('/..'), '/');
- assert.equal(libUtil.normalize('/../'), '/');
- assert.equal(libUtil.normalize('/../../../..'), '/');
- assert.equal(libUtil.normalize('/../../../../a/b/c'), '/a/b/c');
- assert.equal(libUtil.normalize('/a/b/c/../../../d/../../e'), '/e');
-
- assert.equal(libUtil.normalize('..'), '..');
- assert.equal(libUtil.normalize('../'), '../');
- assert.equal(libUtil.normalize('../../a/'), '../../a/');
- assert.equal(libUtil.normalize('a/..'), '.');
- assert.equal(libUtil.normalize('a/../../..'), '../..');
-
- assert.equal(libUtil.normalize('/.'), '/');
- assert.equal(libUtil.normalize('/./'), '/');
- assert.equal(libUtil.normalize('/./././.'), '/');
- assert.equal(libUtil.normalize('/././././a/b/c'), '/a/b/c');
- assert.equal(libUtil.normalize('/a/b/c/./././d/././e'), '/a/b/c/d/e');
-
- assert.equal(libUtil.normalize(''), '.');
- assert.equal(libUtil.normalize('.'), '.');
- assert.equal(libUtil.normalize('./'), '.');
- assert.equal(libUtil.normalize('././a'), 'a');
- assert.equal(libUtil.normalize('a/./'), 'a/');
- assert.equal(libUtil.normalize('a/././.'), 'a');
-
- assert.equal(libUtil.normalize('/a/b//c////d/////'), '/a/b/c/d/');
- assert.equal(libUtil.normalize('///a/b//c////d/////'), '///a/b/c/d/');
- assert.equal(libUtil.normalize('a/b//c////d'), 'a/b/c/d');
-
- assert.equal(libUtil.normalize('.///.././../a/b//./..'), '../../a')
-
- assert.equal(libUtil.normalize('http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.normalize('http://www.example.com/'), 'http://www.example.com/');
- assert.equal(libUtil.normalize('http://www.example.com/./..//a/b/c/.././d//'), 'http://www.example.com/a/b/d/');
- };
-
- exports['test join()'] = function (assert, util) {
- assert.equal(libUtil.join('a', 'b'), 'a/b');
- assert.equal(libUtil.join('a/', 'b'), 'a/b');
- assert.equal(libUtil.join('a//', 'b'), 'a/b');
- assert.equal(libUtil.join('a', 'b/'), 'a/b/');
- assert.equal(libUtil.join('a', 'b//'), 'a/b/');
- assert.equal(libUtil.join('a/', '/b'), '/b');
- assert.equal(libUtil.join('a//', '//b'), '//b');
-
- assert.equal(libUtil.join('a', '..'), '.');
- assert.equal(libUtil.join('a', '../b'), 'b');
- assert.equal(libUtil.join('a/b', '../c'), 'a/c');
-
- assert.equal(libUtil.join('a', '.'), 'a');
- assert.equal(libUtil.join('a', './b'), 'a/b');
- assert.equal(libUtil.join('a/b', './c'), 'a/b/c');
-
- assert.equal(libUtil.join('a', 'http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('a', 'data:foo,bar'), 'data:foo,bar');
-
-
- assert.equal(libUtil.join('', 'b'), 'b');
- assert.equal(libUtil.join('.', 'b'), 'b');
- assert.equal(libUtil.join('', 'b/'), 'b/');
- assert.equal(libUtil.join('.', 'b/'), 'b/');
- assert.equal(libUtil.join('', 'b//'), 'b/');
- assert.equal(libUtil.join('.', 'b//'), 'b/');
-
- assert.equal(libUtil.join('', '..'), '..');
- assert.equal(libUtil.join('.', '..'), '..');
- assert.equal(libUtil.join('', '../b'), '../b');
- assert.equal(libUtil.join('.', '../b'), '../b');
-
- assert.equal(libUtil.join('', '.'), '.');
- assert.equal(libUtil.join('.', '.'), '.');
- assert.equal(libUtil.join('', './b'), 'b');
- assert.equal(libUtil.join('.', './b'), 'b');
-
- assert.equal(libUtil.join('', 'http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('.', 'http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('', 'data:foo,bar'), 'data:foo,bar');
- assert.equal(libUtil.join('.', 'data:foo,bar'), 'data:foo,bar');
-
-
- assert.equal(libUtil.join('..', 'b'), '../b');
- assert.equal(libUtil.join('..', 'b/'), '../b/');
- assert.equal(libUtil.join('..', 'b//'), '../b/');
-
- assert.equal(libUtil.join('..', '..'), '../..');
- assert.equal(libUtil.join('..', '../b'), '../../b');
-
- assert.equal(libUtil.join('..', '.'), '..');
- assert.equal(libUtil.join('..', './b'), '../b');
-
- assert.equal(libUtil.join('..', 'http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('..', 'data:foo,bar'), 'data:foo,bar');
-
-
- assert.equal(libUtil.join('a', ''), 'a');
- assert.equal(libUtil.join('a', '.'), 'a');
- assert.equal(libUtil.join('a/', ''), 'a');
- assert.equal(libUtil.join('a/', '.'), 'a');
- assert.equal(libUtil.join('a//', ''), 'a');
- assert.equal(libUtil.join('a//', '.'), 'a');
- assert.equal(libUtil.join('/a', ''), '/a');
- assert.equal(libUtil.join('/a', '.'), '/a');
- assert.equal(libUtil.join('', ''), '.');
- assert.equal(libUtil.join('.', ''), '.');
- assert.equal(libUtil.join('.', ''), '.');
- assert.equal(libUtil.join('.', '.'), '.');
- assert.equal(libUtil.join('..', ''), '..');
- assert.equal(libUtil.join('..', '.'), '..');
- assert.equal(libUtil.join('http://foo.org/a', ''), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a', '.'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a/', ''), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a/', '.'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a//', ''), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a//', '.'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org', ''), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org', '.'), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org/', ''), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org/', '.'), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org//', ''), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org//', '.'), 'http://foo.org/');
- assert.equal(libUtil.join('//www.example.com', ''), '//www.example.com/');
- assert.equal(libUtil.join('//www.example.com', '.'), '//www.example.com/');
-
-
- assert.equal(libUtil.join('http://foo.org/a', 'b'), 'http://foo.org/a/b');
- assert.equal(libUtil.join('http://foo.org/a/', 'b'), 'http://foo.org/a/b');
- assert.equal(libUtil.join('http://foo.org/a//', 'b'), 'http://foo.org/a/b');
- assert.equal(libUtil.join('http://foo.org/a', 'b/'), 'http://foo.org/a/b/');
- assert.equal(libUtil.join('http://foo.org/a', 'b//'), 'http://foo.org/a/b/');
- assert.equal(libUtil.join('http://foo.org/a/', '/b'), 'http://foo.org/b');
- assert.equal(libUtil.join('http://foo.org/a//', '//b'), 'http://b');
-
- assert.equal(libUtil.join('http://foo.org/a', '..'), 'http://foo.org/');
- assert.equal(libUtil.join('http://foo.org/a', '../b'), 'http://foo.org/b');
- assert.equal(libUtil.join('http://foo.org/a/b', '../c'), 'http://foo.org/a/c');
-
- assert.equal(libUtil.join('http://foo.org/a', '.'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/a', './b'), 'http://foo.org/a/b');
- assert.equal(libUtil.join('http://foo.org/a/b', './c'), 'http://foo.org/a/b/c');
-
- assert.equal(libUtil.join('http://foo.org/a', 'http://www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('http://foo.org/a', 'data:foo,bar'), 'data:foo,bar');
-
-
- assert.equal(libUtil.join('http://foo.org', 'a'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/', 'a'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org//', 'a'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org', '/a'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org/', '/a'), 'http://foo.org/a');
- assert.equal(libUtil.join('http://foo.org//', '/a'), 'http://foo.org/a');
-
-
- assert.equal(libUtil.join('http://', 'www.example.com'), 'http://www.example.com');
- assert.equal(libUtil.join('file:///', 'www.example.com'), 'file:///www.example.com');
- assert.equal(libUtil.join('http://', 'ftp://example.com'), 'ftp://example.com');
-
- assert.equal(libUtil.join('http://www.example.com', '//foo.org/bar'), 'http://foo.org/bar');
- assert.equal(libUtil.join('//www.example.com', '//foo.org/bar'), '//foo.org/bar');
- };
-
- // TODO Issue #128: Define and test this function properly.
- exports['test relative()'] = function (assert, util) {
- assert.equal(libUtil.relative('/the/root', '/the/root/one.js'), 'one.js');
- assert.equal(libUtil.relative('/the/root', '/the/rootone.js'), '/the/rootone.js');
-
- assert.equal(libUtil.relative('', '/the/root/one.js'), '/the/root/one.js');
- assert.equal(libUtil.relative('.', '/the/root/one.js'), '/the/root/one.js');
- assert.equal(libUtil.relative('', 'the/root/one.js'), 'the/root/one.js');
- assert.equal(libUtil.relative('.', 'the/root/one.js'), 'the/root/one.js');
-
- assert.equal(libUtil.relative('/', '/the/root/one.js'), 'the/root/one.js');
- assert.equal(libUtil.relative('/', 'the/root/one.js'), 'the/root/one.js');
- };
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/util.js b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/util.js
deleted file mode 100644
index 56bbe2c..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/node_modules/source-map/test/source-map/util.js
+++ /dev/null
@@ -1,192 +0,0 @@
-/* -*- Mode: js; js-indent-level: 2; -*- */
-/*
- * Copyright 2011 Mozilla Foundation and contributors
- * Licensed under the New BSD license. See LICENSE or:
- * http://opensource.org/licenses/BSD-3-Clause
- */
-if (typeof define !== 'function') {
- var define = require('amdefine')(module, require);
-}
-define(function (require, exports, module) {
-
- var util = require('../../lib/source-map/util');
-
- // This is a test mapping which maps functions from two different files
- // (one.js and two.js) to a minified generated source.
- //
- // Here is one.js:
- //
- // ONE.foo = function (bar) {
- // return baz(bar);
- // };
- //
- // Here is two.js:
- //
- // TWO.inc = function (n) {
- // return n + 1;
- // };
- //
- // And here is the generated code (min.js):
- //
- // ONE.foo=function(a){return baz(a);};
- // TWO.inc=function(a){return a+1;};
- exports.testGeneratedCode = " ONE.foo=function(a){return baz(a);};\n"+
- " TWO.inc=function(a){return a+1;};";
- exports.testMap = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['one.js', 'two.js'],
- sourceRoot: '/the/root',
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
- exports.testMapNoSourceRoot = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['one.js', 'two.js'],
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
- exports.testMapEmptySourceRoot = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['one.js', 'two.js'],
- sourceRoot: '',
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
- exports.testMapWithSourcesContent = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['one.js', 'two.js'],
- sourcesContent: [
- ' ONE.foo = function (bar) {\n' +
- ' return baz(bar);\n' +
- ' };',
- ' TWO.inc = function (n) {\n' +
- ' return n + 1;\n' +
- ' };'
- ],
- sourceRoot: '/the/root',
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
- exports.testMapRelativeSources = {
- version: 3,
- file: 'min.js',
- names: ['bar', 'baz', 'n'],
- sources: ['./one.js', './two.js'],
- sourcesContent: [
- ' ONE.foo = function (bar) {\n' +
- ' return baz(bar);\n' +
- ' };',
- ' TWO.inc = function (n) {\n' +
- ' return n + 1;\n' +
- ' };'
- ],
- sourceRoot: '/the/root',
- mappings: 'CAAC,IAAI,IAAM,SAAUA,GAClB,OAAOC,IAAID;CCDb,IAAI,IAAM,SAAUE,GAClB,OAAOA'
- };
- exports.emptyMap = {
- version: 3,
- file: 'min.js',
- names: [],
- sources: [],
- mappings: ''
- };
-
-
- function assertMapping(generatedLine, generatedColumn, originalSource,
- originalLine, originalColumn, name, map, assert,
- dontTestGenerated, dontTestOriginal) {
- if (!dontTestOriginal) {
- var origMapping = map.originalPositionFor({
- line: generatedLine,
- column: generatedColumn
- });
- assert.equal(origMapping.name, name,
- 'Incorrect name, expected ' + JSON.stringify(name)
- + ', got ' + JSON.stringify(origMapping.name));
- assert.equal(origMapping.line, originalLine,
- 'Incorrect line, expected ' + JSON.stringify(originalLine)
- + ', got ' + JSON.stringify(origMapping.line));
- assert.equal(origMapping.column, originalColumn,
- 'Incorrect column, expected ' + JSON.stringify(originalColumn)
- + ', got ' + JSON.stringify(origMapping.column));
-
- var expectedSource;
-
- if (originalSource && map.sourceRoot && originalSource.indexOf(map.sourceRoot) === 0) {
- expectedSource = originalSource;
- } else if (originalSource) {
- expectedSource = map.sourceRoot
- ? util.join(map.sourceRoot, originalSource)
- : originalSource;
- } else {
- expectedSource = null;
- }
-
- assert.equal(origMapping.source, expectedSource,
- 'Incorrect source, expected ' + JSON.stringify(expectedSource)
- + ', got ' + JSON.stringify(origMapping.source));
- }
-
- if (!dontTestGenerated) {
- var genMapping = map.generatedPositionFor({
- source: originalSource,
- line: originalLine,
- column: originalColumn
- });
- assert.equal(genMapping.line, generatedLine,
- 'Incorrect line, expected ' + JSON.stringify(generatedLine)
- + ', got ' + JSON.stringify(genMapping.line));
- assert.equal(genMapping.column, generatedColumn,
- 'Incorrect column, expected ' + JSON.stringify(generatedColumn)
- + ', got ' + JSON.stringify(genMapping.column));
- }
- }
- exports.assertMapping = assertMapping;
-
- function assertEqualMaps(assert, actualMap, expectedMap) {
- assert.equal(actualMap.version, expectedMap.version, "version mismatch");
- assert.equal(actualMap.file, expectedMap.file, "file mismatch");
- assert.equal(actualMap.names.length,
- expectedMap.names.length,
- "names length mismatch: " +
- actualMap.names.join(", ") + " != " + expectedMap.names.join(", "));
- for (var i = 0; i < actualMap.names.length; i++) {
- assert.equal(actualMap.names[i],
- expectedMap.names[i],
- "names[" + i + "] mismatch: " +
- actualMap.names.join(", ") + " != " + expectedMap.names.join(", "));
- }
- assert.equal(actualMap.sources.length,
- expectedMap.sources.length,
- "sources length mismatch: " +
- actualMap.sources.join(", ") + " != " + expectedMap.sources.join(", "));
- for (var i = 0; i < actualMap.sources.length; i++) {
- assert.equal(actualMap.sources[i],
- expectedMap.sources[i],
- "sources[" + i + "] length mismatch: " +
- actualMap.sources.join(", ") + " != " + expectedMap.sources.join(", "));
- }
- assert.equal(actualMap.sourceRoot,
- expectedMap.sourceRoot,
- "sourceRoot mismatch: " +
- actualMap.sourceRoot + " != " + expectedMap.sourceRoot);
- assert.equal(actualMap.mappings, expectedMap.mappings,
- "mappings mismatch:\nActual: " + actualMap.mappings + "\nExpected: " + expectedMap.mappings);
- if (actualMap.sourcesContent) {
- assert.equal(actualMap.sourcesContent.length,
- expectedMap.sourcesContent.length,
- "sourcesContent length mismatch");
- for (var i = 0; i < actualMap.sourcesContent.length; i++) {
- assert.equal(actualMap.sourcesContent[i],
- expectedMap.sourcesContent[i],
- "sourcesContent[" + i + "] mismatch");
- }
- }
- }
- exports.assertEqualMaps = assertEqualMaps;
-
-});
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/package.json
deleted file mode 100644
index 82a9de4..0000000
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/coffeestack/package.json
+++ /dev/null
@@ -1,67 +0,0 @@
-{
- "name": "coffeestack",
- "version": "1.1.2",
- "description": "CoffeeScript stack trace converter",
- "main": "./index.js",
- "scripts": {
- "prepublish": "grunt clean lint coffee",
- "test": "grunt test"
- },
- "repository": {
- "type": "git",
- "url": "https://github.com/kevinsawicki/coffeestack.git"
- },
- "keywords": [
- "CoffeeScript",
- "JavaScript",
- "stack",
- "stacktrace",
- "trace",
- "source maps"
- ],
- "author": {
- "name": "Kevin Sawicki",
- "email": "kevinsawicki@gmail.com"
- },
- "license": "BSD",
- "bugs": {
- "url": "https://github.com/kevinsawicki/coffeestack/issues"
- },
- "dependencies": {
- "coffee-script": "~1.8.0",
- "fs-plus": "^2.5.0",
- "source-map": "~0.1.43"
- },
- "devDependencies": {
- "grunt": "~0.4.1",
- "grunt-cli": "~0.1.9",
- "grunt-coffeelint": "0.0.7",
- "grunt-contrib-coffee": "~0.7.0",
- "grunt-shell": "~0.3.0",
- "jasmine-focused": "1.x",
- "rimraf": "~2.2.0",
- "temp": "^0.8.1"
- },
- "gitHead": "8484218a00e59526d9f064b64441df788526fa04",
- "homepage": "https://github.com/kevinsawicki/coffeestack",
- "_id": "coffeestack@1.1.2",
- "_shasum": "35278f3beb9ce6f5d0ada1fb6e087852b657ce98",
- "_from": "coffeestack@>=1.0.0 <2.0.0",
- "_npmVersion": "1.4.28",
- "_npmUser": {
- "name": "kevinsawicki",
- "email": "kevinsawicki@gmail.com"
- },
- "maintainers": [
- {
- "name": "kevinsawicki",
- "email": "kevinsawicki@gmail.com"
- }
- ],
- "dist": {
- "shasum": "35278f3beb9ce6f5d0ada1fb6e087852b657ce98",
- "tarball": "http://registry.npmjs.org/coffeestack/-/coffeestack-1.1.2.tgz"
- },
- "directories": {},
- "_resolved": "https://registry.npmjs.org/coffeestack/-/coffeestack-1.1.2.tgz"
-}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
index 1eace4a..be85e24 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/mixto/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/mixto"
+ "url": "git+https://github.com/atom/mixto.git"
},
"keywords": [
"mixin",
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
index 7c7f365..66179a4 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/node_modules/property-accessors/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/property-accessors"
+ "url": "git+https://github.com/atom/property-accessors.git"
},
"keywords": [
"property",
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/package.json
index ccd6522..53b6b8a 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/node_modules/emissary/package.json
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "http://github.com/atom/emissary.git"
+ "url": "git+ssh://git@github.com/atom/emissary.git"
},
"bugs": {
"url": "https://github.com/atom/emissary/issues"
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/package.json
index ffbe7dc..6fcdc12 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/grim/package.json
@@ -1,6 +1,6 @@
{
"name": "grim",
- "version": "1.4.1",
+ "version": "1.4.2",
"description": "Log usage of deprecated methods",
"main": "./lib/grim",
"scripts": {
@@ -9,7 +9,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/grim.git"
+ "url": "git+https://github.com/atom/grim.git"
},
"bugs": {
"url": "https://github.com/atom/grim/issues"
@@ -21,7 +21,6 @@
}
],
"dependencies": {
- "coffeestack": "^1",
"emissary": "^1.2.0"
},
"devDependencies": {
@@ -36,15 +35,16 @@
"coffee-cache": "^0.2.0",
"temp": "^0.6.0"
},
- "gitHead": "dbcb234a130aaef6af1458bfa686f65c5b97690a",
- "homepage": "https://github.com/atom/grim",
- "_id": "grim@1.4.1",
- "_shasum": "bd47bf11823bbfb1fc731914fab51016bea9e677",
+ "gitHead": "82c45ef794ce93e4455c29365441c62bf94b90a8",
+ "homepage": "https://github.com/atom/grim#readme",
+ "_id": "grim@1.4.2",
+ "_shasum": "b33abee33ec351bab8695818d511a049ca62ef04",
"_from": "grim@>=1.0.0 <2.0.0",
- "_npmVersion": "1.4.28",
+ "_npmVersion": "2.11.3",
+ "_nodeVersion": "0.12.7",
"_npmUser": {
- "name": "kevinsawicki",
- "email": "kevinsawicki@gmail.com"
+ "name": "nathansobo",
+ "email": "nathan@github.com"
},
"maintainers": [
{
@@ -65,9 +65,9 @@
}
],
"dist": {
- "shasum": "bd47bf11823bbfb1fc731914fab51016bea9e677",
- "tarball": "http://registry.npmjs.org/grim/-/grim-1.4.1.tgz"
+ "shasum": "b33abee33ec351bab8695818d511a049ca62ef04",
+ "tarball": "http://registry.npmjs.org/grim/-/grim-1.4.2.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/grim/-/grim-1.4.1.tgz"
+ "_resolved": "https://registry.npmjs.org/grim/-/grim-1.4.2.tgz"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/node_modules/jquery/package.json b/atom/packages/ex-mode/node_modules/space-pen/node_modules/jquery/package.json
index 6303854..ff2ec47 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/node_modules/jquery/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/node_modules/jquery/package.json
@@ -11,7 +11,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/jquery/jquery.git"
+ "url": "git+https://github.com/jquery/jquery.git"
},
"keywords": [
"jquery",
@@ -85,5 +85,6 @@
"tarball": "http://registry.npmjs.org/jquery/-/jquery-2.1.4.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/jquery/-/jquery-2.1.4.tgz"
+ "_resolved": "https://registry.npmjs.org/jquery/-/jquery-2.1.4.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/atom/packages/ex-mode/node_modules/space-pen/package.json b/atom/packages/ex-mode/node_modules/space-pen/package.json
index e2c70fb..4d89c10 100644
--- a/atom/packages/ex-mode/node_modules/space-pen/package.json
+++ b/atom/packages/ex-mode/node_modules/space-pen/package.json
@@ -16,7 +16,7 @@
],
"repository": {
"type": "git",
- "url": "https://github.com/atom/space-pen.git"
+ "url": "git+https://github.com/atom/space-pen.git"
},
"bugs": {
"url": "https://github.com/atom/space-pen/issues"
@@ -69,5 +69,6 @@
"tarball": "http://registry.npmjs.org/space-pen/-/space-pen-5.1.1.tgz"
},
"directories": {},
- "_resolved": "https://registry.npmjs.org/space-pen/-/space-pen-5.1.1.tgz"
+ "_resolved": "https://registry.npmjs.org/space-pen/-/space-pen-5.1.1.tgz",
+ "readme": "ERROR: No README data found!"
}
diff --git a/atom/packages/ex-mode/node_modules/underscore-plus/package.json b/atom/packages/ex-mode/node_modules/underscore-plus/package.json
index 8bdcd9d..98add9f 100644
--- a/atom/packages/ex-mode/node_modules/underscore-plus/package.json
+++ b/atom/packages/ex-mode/node_modules/underscore-plus/package.json
@@ -15,7 +15,7 @@
},
"repository": {
"type": "git",
- "url": "https://github.com/atom/underscore-plus.git"
+ "url": "git+https://github.com/atom/underscore-plus.git"
},
"bugs": {
"url": "https://github.com/atom/underscore-plus/issues"