Commit 405ca697 authored by Sam Saccone's avatar Sam Saccone

Merge pull request #1545 from mhoyer/aurelia-update-0.2.0

Update todomvc-aurelia 0.2.0 (using Aurelia 1.0.0.beta-1)
parents 336c5bbb 77fec436
...@@ -29,6 +29,9 @@ ...@@ -29,6 +29,9 @@
"**/generated/**", "**/generated/**",
"examples/ampersand/todomvc.bundle.js", "examples/ampersand/todomvc.bundle.js",
"examples/angular2/**/*.js", "examples/angular2/**/*.js",
"examples/aurelia/config.js",
"examples/aurelia/dist/*.js",
"examples/aurelia/jspm_packages/**/*.js",
"examples/duel/www/**", "examples/duel/www/**",
"examples/duel/src/main/webapp/js/lib/**", "examples/duel/src/main/webapp/js/lib/**",
"examples/humble/js/**", "examples/humble/js/**",
......
import {Router} from 'aurelia-router';
import {Todos} from './todos';
export class App {
static inject() { return [Router]; }
constructor(router) {
this.router = router;
this.router.configure(this.configureRoutes);
}
configureRoutes(cfg) {
cfg.title = 'TodoMVC';
cfg.map([
{ route: ['', ':filter'], moduleId: 'todos' }
]);
}
}
import {Behavior} from 'aurelia-templating';
export class Focus {
static metadata() {
return Behavior
.attachedBehavior('focus')
.withProperty('value', 'valueChanged', 'focus');
}
static inject() { return [Element]; }
constructor(element) {
this.element = element;
}
valueChanged(value) {
if (value) {
this.element.focus();
}
}
}
System.config({ System.config({
"defaultJSExtensions": true,
"transpiler": "babel",
"babelOptions": {
"optional": [
"runtime"
]
},
"paths": { "paths": {
"*": "*.js", "*": "dist/*",
"github:*": "jspm_packages/github/*.js", "github:*": "jspm_packages/github/*",
"npm:*": "jspm_packages/npm/*.js", "npm:*": "jspm_packages/npm/*"
"todomvc-aurelia/*": "lib/*.js"
}, },
"bundles": {
"dist\\bundled": [
"npm:process@0.10.0/browser",
"github:aurelia/metadata@0.3.1/system/origin",
"github:aurelia/metadata@0.3.1/system/resource-type",
"github:aurelia/metadata@0.3.1/system/metadata",
"github:aurelia/loader@0.3.3/system/index",
"github:aurelia/path@0.4.3/system/index",
"github:aurelia/logging@0.2.2/system/index",
"github:aurelia/dependency-injection@0.4.2/system/metadata",
"github:aurelia/dependency-injection@0.4.2/system/util",
"github:aurelia/templating@0.8.10/system/util",
"github:aurelia/binding@0.3.4/system/value-converter",
"github:aurelia/binding@0.3.4/system/event-manager",
"github:aurelia/task-queue@0.2.3/system/index",
"github:aurelia/binding@0.3.4/system/array-change-records",
"github:aurelia/binding@0.3.4/system/dirty-checking",
"github:aurelia/binding@0.3.4/system/property-observation",
"github:aurelia/binding@0.3.4/system/binding-modes",
"github:aurelia/binding@0.3.4/system/lexer",
"github:aurelia/binding@0.3.4/system/path-observer",
"github:aurelia/binding@0.3.4/system/composite-observer",
"github:aurelia/binding@0.3.4/system/binding-expression",
"github:aurelia/binding@0.3.4/system/listener-expression",
"github:aurelia/binding@0.3.4/system/name-expression",
"github:aurelia/binding@0.3.4/system/call-expression",
"github:aurelia/templating@0.8.10/system/behavior-instance",
"github:aurelia/templating@0.8.10/system/children",
"github:aurelia/templating@0.8.10/system/content-selector",
"github:aurelia/templating@0.8.10/system/resource-registry",
"github:aurelia/templating@0.8.10/system/view",
"github:aurelia/templating@0.8.10/system/view-slot",
"github:aurelia/templating@0.8.10/system/binding-language",
"github:aurelia/templating@0.8.10/system/view-strategy",
"github:aurelia/templating@0.8.10/system/element-config",
"github:aurelia/templating@0.8.10/system/template-controller",
"github:aurelia/templating@0.8.10/system/resource-coordinator",
"github:aurelia/templating@0.8.10/system/composition-engine",
"github:aurelia/framework@0.8.6/system/plugins",
"github:aurelia/logging-console@0.2.2/system/index",
"github:aurelia/templating-binding@0.8.4/system/syntax-interpreter",
"github:aurelia/route-recognizer@0.2.2/system/dsl",
"github:aurelia/router@0.5.5/system/navigation-plan",
"github:aurelia/router@0.5.5/system/navigation-instruction",
"github:aurelia/router@0.5.5/system/router-configuration",
"github:aurelia/router@0.5.5/system/util",
"github:aurelia/history@0.2.2/system/index",
"github:aurelia/router@0.5.5/system/pipeline",
"github:aurelia/router@0.5.5/system/model-binding",
"github:aurelia/router@0.5.5/system/route-loading",
"github:aurelia/router@0.5.5/system/navigation-commands",
"github:aurelia/templating-router@0.9.2/system/route-loader",
"github:aurelia/templating-router@0.9.2/system/router-view",
"github:aurelia/templating-resources@0.8.7/system/compose",
"github:aurelia/templating-resources@0.8.7/system/if",
"github:aurelia/templating-resources@0.8.7/system/repeat",
"github:aurelia/templating-resources@0.8.7/system/show",
"github:aurelia/templating-resources@0.8.7/system/selected-item",
"github:aurelia/templating-resources@0.8.7/system/global-behavior",
"github:aurelia/event-aggregator@0.2.2/system/index",
"github:aurelia/history-browser@0.2.3/system/index",
"dist/behaviors/focus",
"dist/todo-item",
"npm:underscore@1.7.0/underscore",
"dist/app",
"npm:process@0.10.0",
"github:aurelia/metadata@0.3.1/system/index",
"github:aurelia/loader@0.3.3",
"github:aurelia/path@0.4.3",
"github:aurelia/logging@0.2.2",
"github:aurelia/dependency-injection@0.4.2/system/container",
"github:aurelia/task-queue@0.2.3",
"github:aurelia/binding@0.3.4/system/array-observation",
"github:aurelia/binding@0.3.4/system/ast",
"github:aurelia/templating@0.8.10/system/behaviors",
"github:aurelia/templating@0.8.10/system/view-factory",
"github:aurelia/logging-console@0.2.2",
"github:aurelia/templating-binding@0.8.4/system/binding-language",
"github:aurelia/route-recognizer@0.2.2/system/index",
"github:aurelia/router@0.5.5/system/navigation-context",
"github:aurelia/history@0.2.2",
"github:aurelia/router@0.5.5/system/activation",
"github:aurelia/templating-resources@0.8.7/system/index",
"github:aurelia/event-aggregator@0.2.2",
"github:aurelia/history-browser@0.2.3",
"npm:underscore@1.7.0",
"github:jspm/nodelibs-process@0.1.1/index",
"github:aurelia/metadata@0.3.1",
"github:aurelia/dependency-injection@0.4.2/system/index",
"github:aurelia/binding@0.3.4/system/observer-locator",
"github:aurelia/binding@0.3.4/system/parser",
"github:aurelia/templating@0.8.10/system/attached-behavior",
"github:aurelia/templating@0.8.10/system/view-compiler",
"github:aurelia/templating-binding@0.8.4/system/index",
"github:aurelia/route-recognizer@0.2.2",
"github:aurelia/router@0.5.5/system/pipeline-provider",
"github:aurelia/templating-resources@0.8.7",
"dist/todos",
"github:jspm/nodelibs-process@0.1.1",
"github:aurelia/loader-default@0.4.1/system/index",
"github:aurelia/dependency-injection@0.4.2",
"github:aurelia/binding@0.3.4/system/index",
"github:aurelia/templating@0.8.10/system/view-engine",
"github:aurelia/templating-binding@0.8.4",
"github:aurelia/router@0.5.5/system/router",
"github:aurelia/router@0.5.5/system/app-router",
"npm:core-js@0.4.10/index",
"github:aurelia/loader-default@0.4.1",
"github:aurelia/binding@0.3.4",
"github:aurelia/templating@0.8.10/system/custom-element",
"github:aurelia/router@0.5.5/system/index",
"npm:core-js@0.4.10",
"github:aurelia/templating@0.8.10/system/property",
"github:aurelia/router@0.5.5",
"github:aurelia/templating@0.8.10/system/index",
"github:aurelia/templating-router@0.9.2/system/index",
"github:aurelia/templating@0.8.10",
"github:aurelia/templating-router@0.9.2",
"github:aurelia/framework@0.8.6/system/aurelia",
"github:aurelia/framework@0.8.6/system/index",
"github:aurelia/framework@0.8.6",
"github:aurelia/bootstrapper@0.9.3/system/index",
"github:aurelia/bootstrapper@0.9.3",
"dist/bundle",
"dist/main"
]
}
});
System.config({
"map": { "map": {
"aurelia-bootstrapper": "github:aurelia/bootstrapper@0.9.3", "aurelia-animator-css": "npm:aurelia-animator-css@1.0.0-beta.1.0.3",
"aurelia-event-aggregator": "github:aurelia/event-aggregator@0.2.2", "aurelia-binding": "npm:aurelia-binding@1.0.0-beta.1.0.5",
"aurelia-framework": "github:aurelia/framework@0.8.6", "aurelia-bootstrapper": "npm:aurelia-bootstrapper@1.0.0-beta.1.0.2",
"aurelia-history-browser": "github:aurelia/history-browser@0.2.3", "aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-http-client": "github:aurelia/http-client@0.4.4", "aurelia-event-aggregator": "npm:aurelia-event-aggregator@1.0.0-beta.1",
"aurelia-logging-console": "github:aurelia/logging-console@0.2.2", "aurelia-fetch-client": "npm:aurelia-fetch-client@1.0.0-beta.1.0.2",
"aurelia-router": "github:aurelia/router@0.5.5", "aurelia-framework": "npm:aurelia-framework@1.0.0-beta.1.0.8",
"aurelia-templating": "github:aurelia/templating@0.8.10", "aurelia-history": "npm:aurelia-history@1.0.0-beta.1",
"aurelia-templating-binding": "github:aurelia/templating-binding@0.8.4", "aurelia-history-browser": "npm:aurelia-history-browser@1.0.0-beta.1.0.1",
"aurelia-templating-resources": "github:aurelia/templating-resources@0.8.7", "aurelia-loader": "npm:aurelia-loader@1.0.0-beta.1.0.1",
"aurelia-templating-router": "github:aurelia/templating-router@0.9.2", "aurelia-loader-default": "npm:aurelia-loader-default@1.0.0-beta.1.0.2",
"bootstrap": "github:twbs/bootstrap@3.3.2", "aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"core-js": "npm:core-js@0.4.10", "aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"font-awesome": "npm:font-awesome@4.3.0", "aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"nodelibs-process": "github:jspm/nodelibs-process@0.1.1", "aurelia-pal-browser": "npm:aurelia-pal-browser@1.0.0-beta.1.0.3",
"todomvc-app-css": "npm:todomvc-app-css@1.0.1", "aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"todomvc-common": "npm:todomvc-common@1.0.1", "aurelia-route-recognizer": "npm:aurelia-route-recognizer@1.0.0-beta.1",
"underscore": "npm:underscore@1.7.0", "aurelia-router": "npm:aurelia-router@1.0.0-beta.1.0.1",
"github:aurelia/binding@0.3.4": { "aurelia-task-queue": "npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2", "aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3",
"aurelia-metadata": "github:aurelia/metadata@0.3.1", "aurelia-templating-binding": "npm:aurelia-templating-binding@1.0.0-beta.1.0.2",
"aurelia-task-queue": "github:aurelia/task-queue@0.2.3" "aurelia-templating-resources": "npm:aurelia-templating-resources@1.0.0-beta.1.0.4",
}, "aurelia-templating-router": "npm:aurelia-templating-router@1.0.0-beta.1.0.5",
"github:aurelia/bootstrapper@0.9.3": { "babel": "npm:babel-core@5.8.34",
"aurelia-event-aggregator": "github:aurelia/event-aggregator@0.2.2", "babel-runtime": "npm:babel-runtime@5.8.34",
"aurelia-framework": "github:aurelia/framework@0.8.6", "core-js": "npm:core-js@1.2.6",
"aurelia-history": "github:aurelia/history@0.2.2", "css": "github:systemjs/plugin-css@0.1.10",
"aurelia-history-browser": "github:aurelia/history-browser@0.2.3", "fetch": "github:github/fetch@0.9.0",
"aurelia-loader-default": "github:aurelia/loader-default@0.4.1", "nodelibs-process": "github:jspm/nodelibs-process@0.1.2",
"aurelia-logging-console": "github:aurelia/logging-console@0.2.2", "text": "github:systemjs/plugin-text@0.0.2",
"aurelia-router": "github:aurelia/router@0.5.5", "todomvc-app-css": "npm:todomvc-app-css@2.0.4",
"aurelia-templating": "github:aurelia/templating@0.8.10", "todomvc-common": "npm:todomvc-common@1.0.2",
"aurelia-templating-binding": "github:aurelia/templating-binding@0.8.4", "underscore": "npm:underscore@1.8.3",
"aurelia-templating-resources": "github:aurelia/templating-resources@0.8.7",
"aurelia-templating-router": "github:aurelia/templating-router@0.9.2"
},
"github:aurelia/dependency-injection@0.4.2": {
"aurelia-metadata": "github:aurelia/metadata@0.3.1",
"core-js": "npm:core-js@0.4.10"
},
"github:aurelia/framework@0.8.6": {
"aurelia-binding": "github:aurelia/binding@0.3.4",
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2",
"aurelia-loader": "github:aurelia/loader@0.3.3",
"aurelia-logging": "github:aurelia/logging@0.2.2",
"aurelia-metadata": "github:aurelia/metadata@0.3.1",
"aurelia-task-queue": "github:aurelia/task-queue@0.2.3",
"aurelia-templating": "github:aurelia/templating@0.8.10"
},
"github:aurelia/history-browser@0.2.3": {
"aurelia-history": "github:aurelia/history@0.2.2",
"core-js": "npm:core-js@0.4.10"
},
"github:aurelia/http-client@0.4.4": {
"aurelia-path": "github:aurelia/path@0.4.3",
"core-js": "npm:core-js@0.4.10"
},
"github:aurelia/loader-default@0.4.1": {
"aurelia-loader": "github:aurelia/loader@0.3.3",
"aurelia-metadata": "github:aurelia/metadata@0.3.1",
"aurelia-path": "github:aurelia/path@0.4.3"
},
"github:aurelia/loader@0.3.3": {
"aurelia-html-template-element": "github:aurelia/html-template-element@0.1.2",
"core-js": "npm:core-js@0.4.10",
"webcomponentsjs": "github:webcomponents/webcomponentsjs@0.5.4"
},
"github:aurelia/router@0.5.5": {
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2",
"aurelia-history": "github:aurelia/history@0.2.2",
"aurelia-path": "github:aurelia/path@0.4.3",
"aurelia-route-recognizer": "github:aurelia/route-recognizer@0.2.2",
"core-js": "npm:core-js@0.4.10"
},
"github:aurelia/templating-binding@0.8.4": {
"aurelia-binding": "github:aurelia/binding@0.3.4",
"aurelia-templating": "github:aurelia/templating@0.8.10"
},
"github:aurelia/templating-resources@0.8.7": {
"aurelia-binding": "github:aurelia/binding@0.3.4",
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2",
"aurelia-templating": "github:aurelia/templating@0.8.10",
"core-js": "npm:core-js@0.4.10"
},
"github:aurelia/templating-router@0.9.2": {
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2",
"aurelia-metadata": "github:aurelia/metadata@0.3.1",
"aurelia-path": "github:aurelia/path@0.4.3",
"aurelia-router": "github:aurelia/router@0.5.5",
"aurelia-templating": "github:aurelia/templating@0.8.10"
},
"github:aurelia/templating@0.8.10": {
"aurelia-binding": "github:aurelia/binding@0.3.4",
"aurelia-dependency-injection": "github:aurelia/dependency-injection@0.4.2",
"aurelia-html-template-element": "github:aurelia/html-template-element@0.1.2",
"aurelia-loader": "github:aurelia/loader@0.3.3",
"aurelia-logging": "github:aurelia/logging@0.2.2",
"aurelia-metadata": "github:aurelia/metadata@0.3.1",
"aurelia-path": "github:aurelia/path@0.4.3",
"aurelia-task-queue": "github:aurelia/task-queue@0.2.3",
"core-js": "npm:core-js@0.4.10"
},
"github:jspm/nodelibs-assert@0.1.0": { "github:jspm/nodelibs-assert@0.1.0": {
"assert": "npm:assert@1.3.0" "assert": "npm:assert@1.3.0"
}, },
...@@ -249,10 +56,8 @@ System.config({ ...@@ -249,10 +56,8 @@ System.config({
}, },
"github:jspm/nodelibs-http@1.7.0": { "github:jspm/nodelibs-http@1.7.0": {
"Base64": "npm:Base64@0.2.1", "Base64": "npm:Base64@0.2.1",
"events": "github:jspm/nodelibs-events@0.1.0",
"inherits": "npm:inherits@2.0.1", "inherits": "npm:inherits@2.0.1",
"stream": "github:jspm/nodelibs-stream@0.1.0", "stream": "github:jspm/nodelibs-stream@0.1.0",
"url": "github:jspm/nodelibs-url@0.1.0",
"util": "github:jspm/nodelibs-util@0.1.0" "util": "github:jspm/nodelibs-util@0.1.0"
}, },
"github:jspm/nodelibs-https@0.1.0": { "github:jspm/nodelibs-https@0.1.0": {
...@@ -264,8 +69,8 @@ System.config({ ...@@ -264,8 +69,8 @@ System.config({
"github:jspm/nodelibs-path@0.1.0": { "github:jspm/nodelibs-path@0.1.0": {
"path-browserify": "npm:path-browserify@0.0.0" "path-browserify": "npm:path-browserify@0.0.0"
}, },
"github:jspm/nodelibs-process@0.1.1": { "github:jspm/nodelibs-process@0.1.2": {
"process": "npm:process@0.10.0" "process": "npm:process@0.11.2"
}, },
"github:jspm/nodelibs-querystring@0.1.0": { "github:jspm/nodelibs-querystring@0.1.0": {
"querystring": "npm:querystring@0.2.0" "querystring": "npm:querystring@0.2.0"
...@@ -279,55 +84,187 @@ System.config({ ...@@ -279,55 +84,187 @@ System.config({
"github:jspm/nodelibs-util@0.1.0": { "github:jspm/nodelibs-util@0.1.0": {
"util": "npm:util@0.10.3" "util": "npm:util@0.10.3"
}, },
"github:systemjs/plugin-css@0.1.5": { "github:systemjs/plugin-css@0.1.10": {
"clean-css": "npm:clean-css@3.0.10", "clean-css": "npm:clean-css@3.1.9",
"fs": "github:jspm/nodelibs-fs@0.1.1" "fs": "github:jspm/nodelibs-fs@0.1.2",
}, "path": "github:jspm/nodelibs-path@0.1.0"
"github:twbs/bootstrap@3.3.2": {
"css": "github:systemjs/plugin-css@0.1.5",
"jquery": "github:components/jquery@2.1.3"
}, },
"npm:amdefine@0.1.0": { "npm:amdefine@0.1.0": {
"fs": "github:jspm/nodelibs-fs@0.1.1", "fs": "github:jspm/nodelibs-fs@0.1.2",
"module": "github:jspm/nodelibs-module@0.1.0", "module": "github:jspm/nodelibs-module@0.1.0",
"path": "github:jspm/nodelibs-path@0.1.0", "path": "github:jspm/nodelibs-path@0.1.0",
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
}, },
"npm:assert@1.3.0": { "npm:assert@1.3.0": {
"util": "npm:util@0.10.3" "util": "npm:util@0.10.3"
}, },
"npm:aurelia-animator-css@1.0.0-beta.1.0.3": {
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3"
},
"npm:aurelia-binding@1.0.0-beta.1.0.5": {
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-task-queue": "npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-bootstrapper@1.0.0-beta.1.0.2": {
"aurelia-event-aggregator": "npm:aurelia-event-aggregator@1.0.0-beta.1",
"aurelia-framework": "npm:aurelia-framework@1.0.0-beta.1.0.8",
"aurelia-history": "npm:aurelia-history@1.0.0-beta.1",
"aurelia-history-browser": "npm:aurelia-history-browser@1.0.0-beta.1.0.1",
"aurelia-loader-default": "npm:aurelia-loader-default@1.0.0-beta.1.0.2",
"aurelia-logging-console": "npm:aurelia-logging-console@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-pal-browser": "npm:aurelia-pal-browser@1.0.0-beta.1.0.3",
"aurelia-router": "npm:aurelia-router@1.0.0-beta.1.0.1",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3",
"aurelia-templating-binding": "npm:aurelia-templating-binding@1.0.0-beta.1.0.2",
"aurelia-templating-resources": "npm:aurelia-templating-resources@1.0.0-beta.1.0.4",
"aurelia-templating-router": "npm:aurelia-templating-router@1.0.0-beta.1.0.5",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-dependency-injection@1.0.0-beta.1.0.1": {
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-event-aggregator@1.0.0-beta.1": {
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1"
},
"npm:aurelia-fetch-client@1.0.0-beta.1.0.2": {
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-framework@1.0.0-beta.1.0.8": {
"aurelia-binding": "npm:aurelia-binding@1.0.0-beta.1.0.5",
"aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-loader": "npm:aurelia-loader@1.0.0-beta.1.0.1",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"aurelia-task-queue": "npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-history-browser@1.0.0-beta.1.0.1": {
"aurelia-history": "npm:aurelia-history@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-loader-default@1.0.0-beta.1.0.2": {
"aurelia-loader": "npm:aurelia-loader@1.0.0-beta.1.0.1",
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2"
},
"npm:aurelia-loader@1.0.0-beta.1.0.1": {
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1"
},
"npm:aurelia-logging-console@1.0.0-beta.1": {
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2"
},
"npm:aurelia-metadata@1.0.0-beta.1": {
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-pal-browser@1.0.0-beta.1.0.3": {
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-route-recognizer@1.0.0-beta.1": {
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-router@1.0.0-beta.1.0.1": {
"aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-event-aggregator": "npm:aurelia-event-aggregator@1.0.0-beta.1",
"aurelia-history": "npm:aurelia-history@1.0.0-beta.1",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"aurelia-route-recognizer": "npm:aurelia-route-recognizer@1.0.0-beta.1",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-task-queue@1.0.0-beta.1.0.1": {
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2"
},
"npm:aurelia-templating-binding@1.0.0-beta.1.0.2": {
"aurelia-binding": "npm:aurelia-binding@1.0.0-beta.1.0.5",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3"
},
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4": {
"aurelia-binding": "npm:aurelia-binding@1.0.0-beta.1.0.5",
"aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-loader": "npm:aurelia-loader@1.0.0-beta.1.0.1",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"aurelia-task-queue": "npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3",
"core-js": "npm:core-js@1.2.6"
},
"npm:aurelia-templating-router@1.0.0-beta.1.0.5": {
"aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"aurelia-router": "npm:aurelia-router@1.0.0-beta.1.0.1",
"aurelia-templating": "npm:aurelia-templating@1.0.0-beta.1.0.3"
},
"npm:aurelia-templating@1.0.0-beta.1.0.3": {
"aurelia-binding": "npm:aurelia-binding@1.0.0-beta.1.0.5",
"aurelia-dependency-injection": "npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"aurelia-loader": "npm:aurelia-loader@1.0.0-beta.1.0.1",
"aurelia-logging": "npm:aurelia-logging@1.0.0-beta.1",
"aurelia-metadata": "npm:aurelia-metadata@1.0.0-beta.1",
"aurelia-pal": "npm:aurelia-pal@1.0.0-beta.1.0.2",
"aurelia-path": "npm:aurelia-path@1.0.0-beta.1",
"aurelia-task-queue": "npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"core-js": "npm:core-js@1.2.6"
},
"npm:babel-runtime@5.8.34": {
"process": "github:jspm/nodelibs-process@0.1.2"
},
"npm:buffer@3.0.2": { "npm:buffer@3.0.2": {
"base64-js": "npm:base64-js@0.0.8", "base64-js": "npm:base64-js@0.0.8",
"ieee754": "npm:ieee754@1.1.4", "ieee754": "npm:ieee754@1.1.4",
"is-array": "npm:is-array@1.0.1" "is-array": "npm:is-array@1.0.1"
}, },
"npm:clean-css@3.0.10": { "npm:clean-css@3.1.9": {
"buffer": "github:jspm/nodelibs-buffer@0.1.0", "buffer": "github:jspm/nodelibs-buffer@0.1.0",
"commander": "npm:commander@2.5.1", "commander": "npm:commander@2.6.0",
"fs": "github:jspm/nodelibs-fs@0.1.1", "fs": "github:jspm/nodelibs-fs@0.1.2",
"http": "github:jspm/nodelibs-http@1.7.0", "http": "github:jspm/nodelibs-http@1.7.0",
"https": "github:jspm/nodelibs-https@0.1.0", "https": "github:jspm/nodelibs-https@0.1.0",
"os": "github:jspm/nodelibs-os@0.1.0", "os": "github:jspm/nodelibs-os@0.1.0",
"path": "github:jspm/nodelibs-path@0.1.0", "path": "github:jspm/nodelibs-path@0.1.0",
"process": "github:jspm/nodelibs-process@0.1.1", "process": "github:jspm/nodelibs-process@0.1.2",
"source-map": "npm:source-map@0.1.43", "source-map": "npm:source-map@0.1.43",
"url": "github:jspm/nodelibs-url@0.1.0", "url": "github:jspm/nodelibs-url@0.1.0",
"util": "github:jspm/nodelibs-util@0.1.0" "util": "github:jspm/nodelibs-util@0.1.0"
}, },
"npm:commander@2.5.1": { "npm:commander@2.6.0": {
"child_process": "github:jspm/nodelibs-child_process@0.1.0", "child_process": "github:jspm/nodelibs-child_process@0.1.0",
"events": "github:jspm/nodelibs-events@0.1.0", "events": "github:jspm/nodelibs-events@0.1.0",
"path": "github:jspm/nodelibs-path@0.1.0", "path": "github:jspm/nodelibs-path@0.1.0",
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
}, },
"npm:core-js@0.4.10": { "npm:core-js@1.2.6": {
"process": "github:jspm/nodelibs-process@0.1.1" "fs": "github:jspm/nodelibs-fs@0.1.2",
"path": "github:jspm/nodelibs-path@0.1.0",
"process": "github:jspm/nodelibs-process@0.1.2",
"systemjs-json": "github:systemjs/plugin-json@0.1.0"
}, },
"npm:core-util-is@1.0.1": { "npm:core-util-is@1.0.1": {
"buffer": "github:jspm/nodelibs-buffer@0.1.0" "buffer": "github:jspm/nodelibs-buffer@0.1.0"
}, },
"npm:events-browserify@0.0.1": { "npm:events-browserify@0.0.1": {
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
}, },
"npm:https-browserify@0.0.0": { "npm:https-browserify@0.0.0": {
"http": "github:jspm/nodelibs-http@1.7.0" "http": "github:jspm/nodelibs-http@1.7.0"
...@@ -339,10 +276,13 @@ System.config({ ...@@ -339,10 +276,13 @@ System.config({
"os": "github:jspm/nodelibs-os@0.1.0" "os": "github:jspm/nodelibs-os@0.1.0"
}, },
"npm:path-browserify@0.0.0": { "npm:path-browserify@0.0.0": {
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
},
"npm:process@0.11.2": {
"assert": "github:jspm/nodelibs-assert@0.1.0"
}, },
"npm:punycode@1.3.2": { "npm:punycode@1.3.2": {
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
}, },
"npm:readable-stream@1.1.13": { "npm:readable-stream@1.1.13": {
"buffer": "github:jspm/nodelibs-buffer@0.1.0", "buffer": "github:jspm/nodelibs-buffer@0.1.0",
...@@ -350,16 +290,17 @@ System.config({ ...@@ -350,16 +290,17 @@ System.config({
"events": "github:jspm/nodelibs-events@0.1.0", "events": "github:jspm/nodelibs-events@0.1.0",
"inherits": "npm:inherits@2.0.1", "inherits": "npm:inherits@2.0.1",
"isarray": "npm:isarray@0.0.1", "isarray": "npm:isarray@0.0.1",
"process": "github:jspm/nodelibs-process@0.1.1", "process": "github:jspm/nodelibs-process@0.1.2",
"stream": "npm:stream-browserify@1.0.0", "stream": "npm:stream-browserify@1.0.0",
"stream-browserify": "npm:stream-browserify@1.0.0",
"string_decoder": "npm:string_decoder@0.10.31", "string_decoder": "npm:string_decoder@0.10.31",
"util": "github:jspm/nodelibs-util@0.1.0" "util": "github:jspm/nodelibs-util@0.1.0"
}, },
"npm:source-map@0.1.43": { "npm:source-map@0.1.43": {
"amdefine": "npm:amdefine@0.1.0", "amdefine": "npm:amdefine@0.1.0",
"fs": "github:jspm/nodelibs-fs@0.1.1", "fs": "github:jspm/nodelibs-fs@0.1.2",
"path": "github:jspm/nodelibs-path@0.1.0", "path": "github:jspm/nodelibs-path@0.1.0",
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
}, },
"npm:stream-browserify@1.0.0": { "npm:stream-browserify@1.0.0": {
"events": "github:jspm/nodelibs-events@0.1.0", "events": "github:jspm/nodelibs-events@0.1.0",
...@@ -377,8 +318,296 @@ System.config({ ...@@ -377,8 +318,296 @@ System.config({
}, },
"npm:util@0.10.3": { "npm:util@0.10.3": {
"inherits": "npm:inherits@2.0.1", "inherits": "npm:inherits@2.0.1",
"process": "github:jspm/nodelibs-process@0.1.1" "process": "github:jspm/nodelibs-process@0.1.2"
} }
},
"bundles": {
"aurelia": [
"github:jspm/nodelibs-process@0.1.2",
"github:jspm/nodelibs-process@0.1.2/index",
"github:systemjs/plugin-text@0.0.2",
"github:systemjs/plugin-text@0.0.2/text",
"npm:aurelia-binding@1.0.0-beta.1.0.5",
"npm:aurelia-binding@1.0.0-beta.1.0.5/aurelia-binding",
"npm:aurelia-bootstrapper@1.0.0-beta.1.0.2",
"npm:aurelia-bootstrapper@1.0.0-beta.1.0.2/aurelia-bootstrapper",
"npm:aurelia-dependency-injection@1.0.0-beta.1.0.1",
"npm:aurelia-dependency-injection@1.0.0-beta.1.0.1/aurelia-dependency-injection",
"npm:aurelia-event-aggregator@1.0.0-beta.1",
"npm:aurelia-event-aggregator@1.0.0-beta.1/aurelia-event-aggregator",
"npm:aurelia-framework@1.0.0-beta.1.0.8",
"npm:aurelia-framework@1.0.0-beta.1.0.8/aurelia-framework",
"npm:aurelia-history-browser@1.0.0-beta.1.0.1",
"npm:aurelia-history-browser@1.0.0-beta.1.0.1/aurelia-history-browser",
"npm:aurelia-history@1.0.0-beta.1",
"npm:aurelia-history@1.0.0-beta.1/aurelia-history",
"npm:aurelia-loader-default@1.0.0-beta.1.0.2",
"npm:aurelia-loader-default@1.0.0-beta.1.0.2/aurelia-loader-default",
"npm:aurelia-loader@1.0.0-beta.1.0.1",
"npm:aurelia-loader@1.0.0-beta.1.0.1/aurelia-loader",
"npm:aurelia-logging-console@1.0.0-beta.1",
"npm:aurelia-logging-console@1.0.0-beta.1/aurelia-logging-console",
"npm:aurelia-logging@1.0.0-beta.1",
"npm:aurelia-logging@1.0.0-beta.1/aurelia-logging",
"npm:aurelia-metadata@1.0.0-beta.1",
"npm:aurelia-metadata@1.0.0-beta.1/aurelia-metadata",
"npm:aurelia-pal-browser@1.0.0-beta.1.0.3",
"npm:aurelia-pal-browser@1.0.0-beta.1.0.3/aurelia-pal-browser",
"npm:aurelia-pal@1.0.0-beta.1.0.2",
"npm:aurelia-pal@1.0.0-beta.1.0.2/aurelia-pal",
"npm:aurelia-path@1.0.0-beta.1",
"npm:aurelia-path@1.0.0-beta.1/aurelia-path",
"npm:aurelia-route-recognizer@1.0.0-beta.1",
"npm:aurelia-route-recognizer@1.0.0-beta.1/aurelia-route-recognizer",
"npm:aurelia-router@1.0.0-beta.1.0.1",
"npm:aurelia-router@1.0.0-beta.1.0.1/aurelia-router",
"npm:aurelia-task-queue@1.0.0-beta.1.0.1",
"npm:aurelia-task-queue@1.0.0-beta.1.0.1/aurelia-task-queue",
"npm:aurelia-templating-binding@1.0.0-beta.1.0.2",
"npm:aurelia-templating-binding@1.0.0-beta.1.0.2/aurelia-templating-binding",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/analyze-view-factory",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/array-repeat-strategy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/aurelia-templating-resources",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/binding-mode-behaviors",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/binding-signaler",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/compile-spy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/compose",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/css-resource",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/debounce-binding-behavior",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/dynamic-element",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/focus",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/html-sanitizer",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/if",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/map-repeat-strategy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/null-repeat-strategy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/number-repeat-strategy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/repeat",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/repeat-strategy-locator",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/repeat-utilities",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/replaceable",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/sanitize-html",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/set-repeat-strategy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/show",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/signal-binding-behavior",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/throttle-binding-behavior",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/update-trigger-binding-behavior",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/view-spy",
"npm:aurelia-templating-resources@1.0.0-beta.1.0.4/with",
"npm:aurelia-templating-router@1.0.0-beta.1.0.5",
"npm:aurelia-templating-router@1.0.0-beta.1.0.5/aurelia-templating-router",
"npm:aurelia-templating-router@1.0.0-beta.1.0.5/route-href",
"npm:aurelia-templating-router@1.0.0-beta.1.0.5/route-loader",
"npm:aurelia-templating-router@1.0.0-beta.1.0.5/router-view",
"npm:aurelia-templating@1.0.0-beta.1.0.3",
"npm:aurelia-templating@1.0.0-beta.1.0.3/aurelia-templating",
"npm:core-js@1.2.6",
"npm:core-js@1.2.6/index",
"npm:core-js@1.2.6/modules/$",
"npm:core-js@1.2.6/modules/$.a-function",
"npm:core-js@1.2.6/modules/$.add-to-unscopables",
"npm:core-js@1.2.6/modules/$.an-object",
"npm:core-js@1.2.6/modules/$.array-copy-within",
"npm:core-js@1.2.6/modules/$.array-fill",
"npm:core-js@1.2.6/modules/$.array-includes",
"npm:core-js@1.2.6/modules/$.array-methods",
"npm:core-js@1.2.6/modules/$.array-species-create",
"npm:core-js@1.2.6/modules/$.classof",
"npm:core-js@1.2.6/modules/$.cof",
"npm:core-js@1.2.6/modules/$.collection",
"npm:core-js@1.2.6/modules/$.collection-strong",
"npm:core-js@1.2.6/modules/$.collection-to-json",
"npm:core-js@1.2.6/modules/$.collection-weak",
"npm:core-js@1.2.6/modules/$.core",
"npm:core-js@1.2.6/modules/$.ctx",
"npm:core-js@1.2.6/modules/$.defined",
"npm:core-js@1.2.6/modules/$.descriptors",
"npm:core-js@1.2.6/modules/$.dom-create",
"npm:core-js@1.2.6/modules/$.enum-keys",
"npm:core-js@1.2.6/modules/$.export",
"npm:core-js@1.2.6/modules/$.fails",
"npm:core-js@1.2.6/modules/$.fails-is-regexp",
"npm:core-js@1.2.6/modules/$.fix-re-wks",
"npm:core-js@1.2.6/modules/$.flags",
"npm:core-js@1.2.6/modules/$.for-of",
"npm:core-js@1.2.6/modules/$.get-names",
"npm:core-js@1.2.6/modules/$.global",
"npm:core-js@1.2.6/modules/$.has",
"npm:core-js@1.2.6/modules/$.hide",
"npm:core-js@1.2.6/modules/$.html",
"npm:core-js@1.2.6/modules/$.invoke",
"npm:core-js@1.2.6/modules/$.iobject",
"npm:core-js@1.2.6/modules/$.is-array",
"npm:core-js@1.2.6/modules/$.is-array-iter",
"npm:core-js@1.2.6/modules/$.is-integer",
"npm:core-js@1.2.6/modules/$.is-object",
"npm:core-js@1.2.6/modules/$.is-regexp",
"npm:core-js@1.2.6/modules/$.iter-call",
"npm:core-js@1.2.6/modules/$.iter-create",
"npm:core-js@1.2.6/modules/$.iter-define",
"npm:core-js@1.2.6/modules/$.iter-detect",
"npm:core-js@1.2.6/modules/$.iter-step",
"npm:core-js@1.2.6/modules/$.iterators",
"npm:core-js@1.2.6/modules/$.keyof",
"npm:core-js@1.2.6/modules/$.library",
"npm:core-js@1.2.6/modules/$.math-expm1",
"npm:core-js@1.2.6/modules/$.math-log1p",
"npm:core-js@1.2.6/modules/$.math-sign",
"npm:core-js@1.2.6/modules/$.microtask",
"npm:core-js@1.2.6/modules/$.object-assign",
"npm:core-js@1.2.6/modules/$.object-define",
"npm:core-js@1.2.6/modules/$.object-sap",
"npm:core-js@1.2.6/modules/$.object-to-array",
"npm:core-js@1.2.6/modules/$.own-keys",
"npm:core-js@1.2.6/modules/$.partial",
"npm:core-js@1.2.6/modules/$.path",
"npm:core-js@1.2.6/modules/$.property-desc",
"npm:core-js@1.2.6/modules/$.redefine",
"npm:core-js@1.2.6/modules/$.redefine-all",
"npm:core-js@1.2.6/modules/$.replacer",
"npm:core-js@1.2.6/modules/$.same-value",
"npm:core-js@1.2.6/modules/$.set-proto",
"npm:core-js@1.2.6/modules/$.set-species",
"npm:core-js@1.2.6/modules/$.set-to-string-tag",
"npm:core-js@1.2.6/modules/$.shared",
"npm:core-js@1.2.6/modules/$.species-constructor",
"npm:core-js@1.2.6/modules/$.strict-new",
"npm:core-js@1.2.6/modules/$.string-at",
"npm:core-js@1.2.6/modules/$.string-context",
"npm:core-js@1.2.6/modules/$.string-pad",
"npm:core-js@1.2.6/modules/$.string-repeat",
"npm:core-js@1.2.6/modules/$.string-trim",
"npm:core-js@1.2.6/modules/$.task",
"npm:core-js@1.2.6/modules/$.to-index",
"npm:core-js@1.2.6/modules/$.to-integer",
"npm:core-js@1.2.6/modules/$.to-iobject",
"npm:core-js@1.2.6/modules/$.to-length",
"npm:core-js@1.2.6/modules/$.to-object",
"npm:core-js@1.2.6/modules/$.to-primitive",
"npm:core-js@1.2.6/modules/$.uid",
"npm:core-js@1.2.6/modules/$.wks",
"npm:core-js@1.2.6/modules/core.delay",
"npm:core-js@1.2.6/modules/core.dict",
"npm:core-js@1.2.6/modules/core.function.part",
"npm:core-js@1.2.6/modules/core.get-iterator",
"npm:core-js@1.2.6/modules/core.get-iterator-method",
"npm:core-js@1.2.6/modules/core.is-iterable",
"npm:core-js@1.2.6/modules/core.log",
"npm:core-js@1.2.6/modules/core.number.iterator",
"npm:core-js@1.2.6/modules/core.object.classof",
"npm:core-js@1.2.6/modules/core.object.define",
"npm:core-js@1.2.6/modules/core.object.is-object",
"npm:core-js@1.2.6/modules/core.object.make",
"npm:core-js@1.2.6/modules/core.string.escape-html",
"npm:core-js@1.2.6/modules/core.string.unescape-html",
"npm:core-js@1.2.6/modules/es5",
"npm:core-js@1.2.6/modules/es6.array.copy-within",
"npm:core-js@1.2.6/modules/es6.array.fill",
"npm:core-js@1.2.6/modules/es6.array.find",
"npm:core-js@1.2.6/modules/es6.array.find-index",
"npm:core-js@1.2.6/modules/es6.array.from",
"npm:core-js@1.2.6/modules/es6.array.iterator",
"npm:core-js@1.2.6/modules/es6.array.of",
"npm:core-js@1.2.6/modules/es6.array.species",
"npm:core-js@1.2.6/modules/es6.function.has-instance",
"npm:core-js@1.2.6/modules/es6.function.name",
"npm:core-js@1.2.6/modules/es6.map",
"npm:core-js@1.2.6/modules/es6.math.acosh",
"npm:core-js@1.2.6/modules/es6.math.asinh",
"npm:core-js@1.2.6/modules/es6.math.atanh",
"npm:core-js@1.2.6/modules/es6.math.cbrt",
"npm:core-js@1.2.6/modules/es6.math.clz32",
"npm:core-js@1.2.6/modules/es6.math.cosh",
"npm:core-js@1.2.6/modules/es6.math.expm1",
"npm:core-js@1.2.6/modules/es6.math.fround",
"npm:core-js@1.2.6/modules/es6.math.hypot",
"npm:core-js@1.2.6/modules/es6.math.imul",
"npm:core-js@1.2.6/modules/es6.math.log10",
"npm:core-js@1.2.6/modules/es6.math.log1p",
"npm:core-js@1.2.6/modules/es6.math.log2",
"npm:core-js@1.2.6/modules/es6.math.sign",
"npm:core-js@1.2.6/modules/es6.math.sinh",
"npm:core-js@1.2.6/modules/es6.math.tanh",
"npm:core-js@1.2.6/modules/es6.math.trunc",
"npm:core-js@1.2.6/modules/es6.number.constructor",
"npm:core-js@1.2.6/modules/es6.number.epsilon",
"npm:core-js@1.2.6/modules/es6.number.is-finite",
"npm:core-js@1.2.6/modules/es6.number.is-integer",
"npm:core-js@1.2.6/modules/es6.number.is-nan",
"npm:core-js@1.2.6/modules/es6.number.is-safe-integer",
"npm:core-js@1.2.6/modules/es6.number.max-safe-integer",
"npm:core-js@1.2.6/modules/es6.number.min-safe-integer",
"npm:core-js@1.2.6/modules/es6.number.parse-float",
"npm:core-js@1.2.6/modules/es6.number.parse-int",
"npm:core-js@1.2.6/modules/es6.object.assign",
"npm:core-js@1.2.6/modules/es6.object.freeze",
"npm:core-js@1.2.6/modules/es6.object.get-own-property-descriptor",
"npm:core-js@1.2.6/modules/es6.object.get-own-property-names",
"npm:core-js@1.2.6/modules/es6.object.get-prototype-of",
"npm:core-js@1.2.6/modules/es6.object.is",
"npm:core-js@1.2.6/modules/es6.object.is-extensible",
"npm:core-js@1.2.6/modules/es6.object.is-frozen",
"npm:core-js@1.2.6/modules/es6.object.is-sealed",
"npm:core-js@1.2.6/modules/es6.object.keys",
"npm:core-js@1.2.6/modules/es6.object.prevent-extensions",
"npm:core-js@1.2.6/modules/es6.object.seal",
"npm:core-js@1.2.6/modules/es6.object.set-prototype-of",
"npm:core-js@1.2.6/modules/es6.object.to-string",
"npm:core-js@1.2.6/modules/es6.promise",
"npm:core-js@1.2.6/modules/es6.reflect.apply",
"npm:core-js@1.2.6/modules/es6.reflect.construct",
"npm:core-js@1.2.6/modules/es6.reflect.define-property",
"npm:core-js@1.2.6/modules/es6.reflect.delete-property",
"npm:core-js@1.2.6/modules/es6.reflect.enumerate",
"npm:core-js@1.2.6/modules/es6.reflect.get",
"npm:core-js@1.2.6/modules/es6.reflect.get-own-property-descriptor",
"npm:core-js@1.2.6/modules/es6.reflect.get-prototype-of",
"npm:core-js@1.2.6/modules/es6.reflect.has",
"npm:core-js@1.2.6/modules/es6.reflect.is-extensible",
"npm:core-js@1.2.6/modules/es6.reflect.own-keys",
"npm:core-js@1.2.6/modules/es6.reflect.prevent-extensions",
"npm:core-js@1.2.6/modules/es6.reflect.set",
"npm:core-js@1.2.6/modules/es6.reflect.set-prototype-of",
"npm:core-js@1.2.6/modules/es6.regexp.constructor",
"npm:core-js@1.2.6/modules/es6.regexp.flags",
"npm:core-js@1.2.6/modules/es6.regexp.match",
"npm:core-js@1.2.6/modules/es6.regexp.replace",
"npm:core-js@1.2.6/modules/es6.regexp.search",
"npm:core-js@1.2.6/modules/es6.regexp.split",
"npm:core-js@1.2.6/modules/es6.set",
"npm:core-js@1.2.6/modules/es6.string.code-point-at",
"npm:core-js@1.2.6/modules/es6.string.ends-with",
"npm:core-js@1.2.6/modules/es6.string.from-code-point",
"npm:core-js@1.2.6/modules/es6.string.includes",
"npm:core-js@1.2.6/modules/es6.string.iterator",
"npm:core-js@1.2.6/modules/es6.string.raw",
"npm:core-js@1.2.6/modules/es6.string.repeat",
"npm:core-js@1.2.6/modules/es6.string.starts-with",
"npm:core-js@1.2.6/modules/es6.string.trim",
"npm:core-js@1.2.6/modules/es6.symbol",
"npm:core-js@1.2.6/modules/es6.weak-map",
"npm:core-js@1.2.6/modules/es6.weak-set",
"npm:core-js@1.2.6/modules/es7.array.includes",
"npm:core-js@1.2.6/modules/es7.map.to-json",
"npm:core-js@1.2.6/modules/es7.object.entries",
"npm:core-js@1.2.6/modules/es7.object.get-own-property-descriptors",
"npm:core-js@1.2.6/modules/es7.object.values",
"npm:core-js@1.2.6/modules/es7.regexp.escape",
"npm:core-js@1.2.6/modules/es7.set.to-json",
"npm:core-js@1.2.6/modules/es7.string.at",
"npm:core-js@1.2.6/modules/es7.string.pad-left",
"npm:core-js@1.2.6/modules/es7.string.pad-right",
"npm:core-js@1.2.6/modules/es7.string.trim-left",
"npm:core-js@1.2.6/modules/es7.string.trim-right",
"npm:core-js@1.2.6/modules/js.array.statics",
"npm:core-js@1.2.6/modules/web.dom.iterable",
"npm:core-js@1.2.6/modules/web.immediate",
"npm:core-js@1.2.6/modules/web.timers",
"npm:core-js@1.2.6/shim",
"npm:process@0.11.2",
"npm:process@0.11.2/browser",
"npm:underscore@1.8.3",
"npm:underscore@1.8.3/underscore"
]
} }
}); })
\ No newline at end of file
System.register(['aurelia-router', './todos'], function (_export) {
'use strict';
var Router, Todos, App;
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
return {
setters: [function (_aureliaRouter) {
Router = _aureliaRouter.Router;
}, function (_todos) {
Todos = _todos.Todos;
}],
execute: function () {
App = (function () {
_createClass(App, null, [{
key: 'inject',
value: function inject() {
return [Router];
}
}]);
function App(router) {
_classCallCheck(this, App);
this.router = router;
this.router.configure(this.configureRoutes);
}
_createClass(App, [{
key: 'configureRoutes',
value: function configureRoutes(cfg) {
cfg.title = 'TodoMVC';
cfg.map([{ route: ['', ':filter'], moduleId: 'todos' }]);
}
}]);
return App;
})();
_export('App', App);
}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7b0JBR2EsR0FBRzs7Ozs7Ozs7MkJBSFIsTUFBTTs7a0JBQ04sS0FBSzs7O0FBRUEsTUFBRztpQkFBSCxHQUFHOztZQUNGLGtCQUFHO0FBQUUsYUFBTyxDQUFDLE1BQU0sQ0FBQyxDQUFDO01BQUU7OztBQUV6QixhQUhDLEdBQUcsQ0FHSCxNQUFNLEVBQUU7MkJBSFIsR0FBRzs7QUFJZCxTQUFJLENBQUMsTUFBTSxHQUFHLE1BQU0sQ0FBQztBQUNyQixTQUFJLENBQUMsTUFBTSxDQUFDLFNBQVMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLENBQUM7S0FDNUM7O2lCQU5XLEdBQUc7O1lBUUEseUJBQUMsR0FBRyxFQUFFO0FBQ3BCLFNBQUcsQ0FBQyxLQUFLLEdBQUcsU0FBUyxDQUFDO0FBQ3RCLFNBQUcsQ0FBQyxHQUFHLENBQUMsQ0FDUCxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRSxTQUFTLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxFQUFFLENBQzdDLENBQUMsQ0FBQztNQUNIOzs7V0FiVyxHQUFHIiwiZmlsZSI6ImFwcC5qcyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7Um91dGVyfSBmcm9tICdhdXJlbGlhLXJvdXRlcic7XG5pbXBvcnQge1RvZG9zfSBmcm9tICcuL3RvZG9zJztcblxuZXhwb3J0IGNsYXNzIEFwcCB7XG5cdHN0YXRpYyBpbmplY3QoKSB7IHJldHVybiBbUm91dGVyXTsgfVxuXG5cdGNvbnN0cnVjdG9yKHJvdXRlcikge1xuXHRcdHRoaXMucm91dGVyID0gcm91dGVyO1xuXHRcdHRoaXMucm91dGVyLmNvbmZpZ3VyZSh0aGlzLmNvbmZpZ3VyZVJvdXRlcyk7XG5cdH1cblxuXHRjb25maWd1cmVSb3V0ZXMoY2ZnKSB7XG5cdFx0Y2ZnLnRpdGxlID0gJ1RvZG9NVkMnO1xuXHRcdGNmZy5tYXAoW1xuXHRcdFx0eyByb3V0ZTogWycnLCAnOmZpbHRlciddLCBtb2R1bGVJZDogJ3RvZG9zJyB9XG5cdFx0XSk7XG5cdH1cbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
System.register([], function (_export) {
"use strict";
_export("configure", configure);
function configure(aurelia) {
aurelia.use.standardConfiguration();
aurelia.start().then(function (a) {
return a.setRoot();
});
}
return {
setters: [],
execute: function () {}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIm1haW4uanMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7QUFBTyxVQUFTLFNBQVMsQ0FBQyxPQUFPLEVBQUU7QUFDbEMsU0FBTyxDQUFDLEdBQUcsQ0FDVCxxQkFBcUIsRUFBRSxDQUFDOztBQUUxQixTQUFPLENBQUMsS0FBSyxFQUFFLENBQUMsSUFBSSxDQUFDLFVBQUEsQ0FBQztVQUFJLENBQUMsQ0FBQyxPQUFPLEVBQUU7R0FBQSxDQUFDLENBQUM7RUFDdkMiLCJmaWxlIjoibWFpbi5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBmdW5jdGlvbiBjb25maWd1cmUoYXVyZWxpYSkge1xuXHRhdXJlbGlhLnVzZVxuXHRcdC5zdGFuZGFyZENvbmZpZ3VyYXRpb24oKTtcblxuXHRhdXJlbGlhLnN0YXJ0KCkudGhlbihhID0+IGEuc2V0Um9vdCgpKTtcbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
System.register([], function (_export) {
"use strict";
var ENTER_KEY, ESC_KEY, TodoItem;
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
return {
setters: [],
execute: function () {
ENTER_KEY = 13;
ESC_KEY = 27;
TodoItem = (function () {
function TodoItem(title) {
_classCallCheck(this, TodoItem);
this.isCompleted = false;
this.isEditing = false;
this.title = title.trim();
this.editTitle = null;
}
_createClass(TodoItem, [{
key: "labelDoubleClicked",
value: function labelDoubleClicked() {
this.editTitle = this.title;
this.isEditing = true;
}
}, {
key: "finishEditing",
value: function finishEditing() {
this.title = this.editTitle.trim();
this.isEditing = false;
}
}, {
key: "onKeyUp",
value: function onKeyUp(ev) {
if (ev.keyCode === ENTER_KEY) {
return this.finishEditing();
}
if (ev.keyCode === ESC_KEY) {
this.editTitle = this.title;
this.isEditing = false;
}
}
}]);
return TodoItem;
})();
_export("TodoItem", TodoItem);
}
};
});
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbInRvZG8taXRlbS5qcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7S0FBTSxTQUFTLEVBQ1QsT0FBTyxFQUVBLFFBQVE7Ozs7Ozs7OztBQUhmLFlBQVMsR0FBRyxFQUFFO0FBQ2QsVUFBTyxHQUFHLEVBQUU7O0FBRUwsV0FBUTtBQUNULGFBREMsUUFBUSxDQUNSLEtBQUssRUFBRTsyQkFEUCxRQUFROztBQUVuQixTQUFJLENBQUMsV0FBVyxHQUFHLEtBQUssQ0FBQztBQUN6QixTQUFJLENBQUMsU0FBUyxHQUFHLEtBQUssQ0FBQztBQUN2QixTQUFJLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQyxJQUFJLEVBQUUsQ0FBQztBQUMxQixTQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQztLQUN0Qjs7aUJBTlcsUUFBUTs7WUFRRiw4QkFBRztBQUNwQixVQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7QUFDNUIsVUFBSSxDQUFDLFNBQVMsR0FBRyxJQUFJLENBQUM7TUFDdEI7OztZQUVZLHlCQUFHO0FBQ2YsVUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsU0FBUyxDQUFDLElBQUksRUFBRSxDQUFDO0FBQ25DLFVBQUksQ0FBQyxTQUFTLEdBQUcsS0FBSyxDQUFDO01BQ3ZCOzs7WUFFTSxpQkFBQyxFQUFFLEVBQUU7QUFDWCxVQUFJLEVBQUUsQ0FBQyxPQUFPLEtBQUssU0FBUyxFQUFFO0FBQzdCLGNBQU8sSUFBSSxDQUFDLGFBQWEsRUFBRSxDQUFDO09BQzVCO0FBQ0QsVUFBSSxFQUFFLENBQUMsT0FBTyxLQUFLLE9BQU8sRUFBRTtBQUMzQixXQUFJLENBQUMsU0FBUyxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUM7QUFDNUIsV0FBSSxDQUFDLFNBQVMsR0FBRyxLQUFLLENBQUM7T0FDdkI7TUFDRDs7O1dBMUJXLFFBQVEiLCJmaWxlIjoidG9kby1pdGVtLmpzIiwic291cmNlc0NvbnRlbnQiOlsiY29uc3QgRU5URVJfS0VZID0gMTM7XG5jb25zdCBFU0NfS0VZID0gMjc7XG5cbmV4cG9ydCBjbGFzcyBUb2RvSXRlbSB7XG5cdGNvbnN0cnVjdG9yKHRpdGxlKSB7XG5cdFx0dGhpcy5pc0NvbXBsZXRlZCA9IGZhbHNlO1xuXHRcdHRoaXMuaXNFZGl0aW5nID0gZmFsc2U7XG5cdFx0dGhpcy50aXRsZSA9IHRpdGxlLnRyaW0oKTtcblx0XHR0aGlzLmVkaXRUaXRsZSA9IG51bGw7XG5cdH1cblxuXHRsYWJlbERvdWJsZUNsaWNrZWQoKSB7XG5cdFx0dGhpcy5lZGl0VGl0bGUgPSB0aGlzLnRpdGxlO1xuXHRcdHRoaXMuaXNFZGl0aW5nID0gdHJ1ZTtcblx0fVxuXG5cdGZpbmlzaEVkaXRpbmcoKSB7XG5cdFx0dGhpcy50aXRsZSA9IHRoaXMuZWRpdFRpdGxlLnRyaW0oKTtcblx0XHR0aGlzLmlzRWRpdGluZyA9IGZhbHNlO1xuXHR9XG5cblx0b25LZXlVcChldikge1xuXHRcdGlmIChldi5rZXlDb2RlID09PSBFTlRFUl9LRVkpIHtcblx0XHRcdHJldHVybiB0aGlzLmZpbmlzaEVkaXRpbmcoKTtcblx0XHR9XG5cdFx0aWYgKGV2LmtleUNvZGUgPT09IEVTQ19LRVkpIHtcblx0XHRcdHRoaXMuZWRpdFRpdGxlID0gdGhpcy50aXRsZTtcblx0XHRcdHRoaXMuaXNFZGl0aW5nID0gZmFsc2U7XG5cdFx0fVxuXHR9XG59XG4iXSwic291cmNlUm9vdCI6Ii9zb3VyY2UvIn0=
<template> <template>
<import from="behaviors/focus"></import> <import from="behaviors/focus"></import>
<header id="header">
<header class="header">
<h1>todos</h1> <h1>todos</h1>
<form role="form" submit.delegate="addNewTodo(newTodoTitle)"> <input class="new-todo" placeholder="What needs to be done?" autofocus
<input id="new-todo" value.bind="newTodoTitle" placeholder="What needs to be done?" autofocus> keyup.delegate="onKeyUp($event)"
</form> value.bind="newTodoTitle">
</header> </header>
<section id="main" show.bind="items.length">
<input id="toggle-all" type="checkbox" checked.bind="areAllChecked" change.delegate="areAllCheckedChanged()"> <section class="main" show.bind="items.length">
<input class="toggle-all" type="checkbox" checked.bind="areAllChecked" change.delegate="onToggleAllChanged()">
<label for="toggle-all">Mark all as complete</label> <label for="toggle-all">Mark all as complete</label>
<ul id="todo-list"> <ul class="todo-list">
<li repeat.for="todoItem of filteredItems" class="${todoItem.isCompleted ? 'completed' : ''} ${todoItem.isEditing ? 'editing' : ''}"> <li repeat.for="todoItem of filteredItems" class="${todoItem.isCompleted ? 'completed' : ''} ${todoItem.isEditing ? 'editing' : ''}">
<div class="view"> <div class="view">
<input class="toggle" type="checkbox" checked.bind="todoItem.isCompleted"> <input class="toggle" type="checkbox" checked.bind="todoItem.isCompleted">
<label click.delegate="todoItem.labelClicked()">${todoItem.title}</label> <label dblclick.delegate="todoItem.labelDoubleClicked()">${todoItem.title}</label>
<button click.delegate="$parent.deleteTodo(todoItem)" class="destroy"></button> <button click.delegate="$parent.deleteTodo(todoItem)" class="destroy"></button>
</div> </div>
<form role="form" submit.delegate="todoItem.finishEditing()"> <input class="edit"
<input class="edit" value.bind="todoItem.editTitle" value.bind="todoItem.editTitle"
blur.delegate="todoItem.finishEditing()" focus.bind="todoItem.isEditing"
keyup.delegate="todoItem.onKeyUp($event)" focusout.delegate="todoItem.finishEditing($event)"
focus.bind="todoItem.isEditing"> keyup.delegate="todoItem.onKeyUp($event)">
</form>
</li> </li>
</ul> </ul>
</section> </section>
<footer id="footer" show.bind="items.length">
<span id="todo-count"> <footer class="footer" show.bind="items.length">
<span class="todo-count">
<strong>${countTodosLeft}</strong> <strong>${countTodosLeft}</strong>
${countTodosLeft == 1 ? 'item' : 'items'} left</span> ${countTodosLeft == 1 ? 'item' : 'items'} left</span>
<ul id="filters"> <ul class="filters">
<li> <li>
<a class="${filter == '!' ? 'selected' : ''}" href="#!/">All</a> <a class="${filter == '!' ? 'selected' : ''}" href="#!/">All</a>
</li> </li>
...@@ -40,6 +42,6 @@ ...@@ -40,6 +42,6 @@
<a class="${filter == 'completed' ? 'selected' : ''}" href="#/completed">Completed</a> <a class="${filter == 'completed' ? 'selected' : ''}" href="#/completed">Completed</a>
</li> </li>
</ul> </ul>
<button id="clear-completed" click.delegate="clearCompletedTodos()" show.bind="countTodosLeft < items.length"></button> <button class="clear-completed" click.delegate="clearCompletedTodos()" show.bind="countTodosLeft < items.length">Clear completed</button>
</footer> </footer>
</template> </template>
System.register(['aurelia-binding', './todo-item', 'underscore'], function (_export) {
'use strict';
var ObserverLocator, TodoItem, _, STORAGE_NAME, ENTER_KEY, Todos;
var _createClass = (function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ('value' in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; })();
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError('Cannot call a class as a function'); } }
return {
setters: [function (_aureliaBinding) {
ObserverLocator = _aureliaBinding.ObserverLocator;
}, function (_todoItem) {
TodoItem = _todoItem.TodoItem;
}, function (_underscore) {
_ = _underscore['default'];
}],
execute: function () {
STORAGE_NAME = 'todomvc-aurelia';
ENTER_KEY = 13;
Todos = (function () {
_createClass(Todos, null, [{
key: 'inject',
value: function inject() {
return [ObserverLocator];
}
}]);
function Todos(observerLocator) {
var storage = arguments.length <= 1 || arguments[1] === undefined ? null : arguments[1];
_classCallCheck(this, Todos);
this.items = [];
this.filteredItems = [];
this.filter = '';
this.newTodoTitle = null;
this.areAllChecked = false;
this.observerLocator = observerLocator;
this.storage = storage || localStorage;
this.load();
}
_createClass(Todos, [{
key: 'activate',
value: function activate(params) {
this.updateFilteredItems(params.filter);
}
}, {
key: 'onKeyUp',
value: function onKeyUp(ev) {
if (ev.keyCode === ENTER_KEY) {
this.addNewTodo(this.newTodoTitle);
}
}
}, {
key: 'addNewTodo',
value: function addNewTodo() {
var title = arguments.length <= 0 || arguments[0] === undefined ? this.newTodoTitle : arguments[0];
if (title == undefined) {
return;
}
title = title.trim();
if (title.length === 0) {
return;
}
var newTodoItem = new TodoItem(title);
this.observeItem(newTodoItem);
this.items.push(newTodoItem);
this.newTodoTitle = null;
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
}, {
key: 'observeItem',
value: function observeItem(todoItem) {
var _this = this;
this.observerLocator.getObserver(todoItem, 'title').subscribe(function (o, n) {
return _this.onTitleChanged(todoItem);
});
this.observerLocator.getObserver(todoItem, 'isCompleted').subscribe(function () {
return _this.onIsCompletedChanged();
});
}
}, {
key: 'onTitleChanged',
value: function onTitleChanged(todoItem) {
if (todoItem.title === '') {
this.deleteTodo(todoItem);
this.updateAreAllCheckedState();
}
this.save();
}
}, {
key: 'onIsCompletedChanged',
value: function onIsCompletedChanged() {
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
}, {
key: 'deleteTodo',
value: function deleteTodo(todoItem) {
this.items = _(this.items).without(todoItem);
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
}, {
key: 'onToggleAllChanged',
value: function onToggleAllChanged() {
var _this2 = this;
this.items = _.map(this.items, function (item) {
item.isCompleted = _this2.areAllChecked;
return item;
});
this.updateFilteredItems(this.filter);
}
}, {
key: 'clearCompletedTodos',
value: function clearCompletedTodos() {
this.items = _(this.items).filter(function (i) {
return !i.isCompleted;
});
this.areAllChecked = false;
this.updateFilteredItems(this.filter);
this.save();
}
}, {
key: 'updateAreAllCheckedState',
value: function updateAreAllCheckedState() {
this.areAllChecked = _(this.items).all(function (i) {
return i.isCompleted;
});
}
}, {
key: 'updateFilteredItems',
value: function updateFilteredItems(filter) {
this.filter = filter || '!';
switch (filter) {
case 'active':
this.filteredItems = _(this.items).filter(function (i) {
return !i.isCompleted;
});
break;
case 'completed':
this.filteredItems = _(this.items).filter(function (i) {
return i.isCompleted;
});
break;
default:
this.filteredItems = this.items;
break;
}
}
}, {
key: 'load',
value: function load() {
var _this3 = this;
var storageContent = this.storage.getItem(STORAGE_NAME);
if (storageContent == undefined) {
return;
}
var simpleItems = JSON.parse(storageContent);
this.items = _.map(simpleItems, function (item) {
var todoItem = new TodoItem(item.title);
todoItem.isCompleted = item.completed;
_this3.observeItem(todoItem);
return todoItem;
});
this.updateAreAllCheckedState();
}
}, {
key: 'save',
value: function save() {
var simpleItems = _.map(this.items, function (item) {
return {
title: item.title,
completed: item.isCompleted
};
});
this.storage.setItem(STORAGE_NAME, JSON.stringify(simpleItems));
}
}, {
key: 'countTodosLeft',
get: function get() {
return _(this.items).filter(function (i) {
return !i.isCompleted;
}).length;
}
}]);
return Todos;
})();
_export('Todos', Todos);
}
};
});
//# sourceMappingURL=data:application/json;base64,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QUFFdEMsY0FBSyxXQUFXLENBQUMsUUFBUSxDQUFDLENBQUM7O0FBRTNCLGNBQU8sUUFBUSxDQUFDO09BQ2hCLENBQUMsQ0FBQztBQUNILFVBQUksQ0FBQyx3QkFBd0IsRUFBRSxDQUFDO01BQ2hDOzs7WUFFRyxnQkFBRztBQUNOLFVBQU0sV0FBVyxHQUFHLENBQUMsQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxVQUFBLElBQUksRUFBSTtBQUFFLGNBQU87QUFDdEQsYUFBSyxFQUFFLElBQUksQ0FBQyxLQUFLO0FBQ2pCLGlCQUFTLEVBQUUsSUFBSSxDQUFDLFdBQVc7UUFDM0IsQ0FBQTtPQUFDLENBQUMsQ0FBQzs7QUFFSixVQUFJLENBQUMsT0FBTyxDQUFDLE9BQU8sQ0FBQyxZQUFZLEVBQUUsSUFBSSxDQUFDLFNBQVMsQ0FBQyxXQUFXLENBQUMsQ0FBQyxDQUFDO01BQ2hFOzs7VUEvQ2lCLGVBQUc7QUFDcEIsYUFBTyxDQUFDLENBQUMsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLE1BQU0sQ0FBQyxVQUFBLENBQUM7Y0FBSSxDQUFDLENBQUMsQ0FBQyxXQUFXO09BQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQztNQUN4RDs7O1dBMUZXLEtBQUsiLCJmaWxlIjoidG9kb3MuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQge09ic2VydmVyTG9jYXRvcn0gZnJvbSAnYXVyZWxpYS1iaW5kaW5nJztcbmltcG9ydCB7VG9kb0l0ZW19IGZyb20gJy4vdG9kby1pdGVtJztcbmltcG9ydCBfIGZyb20gJ3VuZGVyc2NvcmUnO1xuXG5jb25zdCBTVE9SQUdFX05BTUUgPSAndG9kb212Yy1hdXJlbGlhJztcbmNvbnN0IEVOVEVSX0tFWSA9IDEzO1xuXG5leHBvcnQgY2xhc3MgVG9kb3Mge1xuXHRzdGF0aWMgaW5qZWN0KCkgeyByZXR1cm4gW09ic2VydmVyTG9jYXRvcl07IH1cblx0Y29uc3RydWN0b3Iob2JzZXJ2ZXJMb2NhdG9yLCBzdG9yYWdlID0gbnVsbCkge1xuXHRcdHRoaXMuaXRlbXMgPSBbXTtcblx0XHR0aGlzLmZpbHRlcmVkSXRlbXMgPSBbXTtcblx0XHR0aGlzLmZpbHRlciA9ICcnO1xuXHRcdHRoaXMubmV3VG9kb1RpdGxlID0gbnVsbDtcblx0XHR0aGlzLmFyZUFsbENoZWNrZWQgPSBmYWxzZTtcblxuXHRcdHRoaXMub2JzZXJ2ZXJMb2NhdG9yID0gb2JzZXJ2ZXJMb2NhdG9yO1xuXHRcdHRoaXMuc3RvcmFnZSA9IHN0b3JhZ2UgfHwgbG9jYWxTdG9yYWdlO1xuXHRcdHRoaXMubG9hZCgpO1xuXHR9XG5cblx0YWN0aXZhdGUocGFyYW1zKSB7XG5cdFx0dGhpcy51cGRhdGVGaWx0ZXJlZEl0ZW1zKHBhcmFtcy5maWx0ZXIpO1xuXHR9XG5cblx0b25LZXlVcChldikge1xuXHRcdGlmIChldi5rZXlDb2RlID09PSBFTlRFUl9LRVkpIHtcblx0XHRcdHRoaXMuYWRkTmV3VG9kbyh0aGlzLm5ld1RvZG9UaXRsZSk7XG5cdFx0fVxuXHR9XG5cblx0YWRkTmV3VG9kbyh0aXRsZSA9IHRoaXMubmV3VG9kb1RpdGxlKSB7XG5cdFx0aWYgKHRpdGxlID09IHVuZGVmaW5lZCkgeyByZXR1cm47IH1cblxuXHRcdHRpdGxlID0gdGl0bGUudHJpbSgpO1xuXHRcdGlmICh0aXRsZS5sZW5ndGggPT09IDApIHsgcmV0dXJuOyB9XG5cblx0XHRjb25zdCBuZXdUb2RvSXRlbSA9IG5ldyBUb2RvSXRlbSh0aXRsZSk7XG5cdFx0dGhpcy5vYnNlcnZlSXRlbShuZXdUb2RvSXRlbSk7XG5cdFx0dGhpcy5pdGVtcy5wdXNoKG5ld1RvZG9JdGVtKTtcblx0XHR0aGlzLm5ld1RvZG9UaXRsZSA9IG51bGw7XG5cdFx0dGhpcy51cGRhdGVBcmVBbGxDaGVja2VkU3RhdGUoKTtcblx0XHR0aGlzLnVwZGF0ZUZpbHRlcmVkSXRlbXModGhpcy5maWx0ZXIpO1xuXHRcdHRoaXMuc2F2ZSgpO1xuXHR9XG5cblx0b2JzZXJ2ZUl0ZW0odG9kb0l0ZW0pIHtcblx0XHR0aGlzLm9ic2VydmVyTG9jYXRvclxuXHRcdFx0LmdldE9ic2VydmVyKHRvZG9JdGVtLCAndGl0bGUnKVxuXHRcdFx0LnN1YnNjcmliZSgobywgbikgPT4gdGhpcy5vblRpdGxlQ2hhbmdlZCh0b2RvSXRlbSkpO1xuXG5cdFx0dGhpcy5vYnNlcnZlckxvY2F0b3Jcblx0XHRcdC5nZXRPYnNlcnZlcih0b2RvSXRlbSwgJ2lzQ29tcGxldGVkJylcblx0XHRcdC5zdWJzY3JpYmUoKCkgPT4gdGhpcy5vbklzQ29tcGxldGVkQ2hhbmdlZCgpKTtcblx0fVxuXG5cdG9uVGl0bGVDaGFuZ2VkKHRvZG9JdGVtKSB7XG5cdFx0aWYgKHRvZG9JdGVtLnRpdGxlID09PSAnJykge1xuXHRcdFx0dGhpcy5kZWxldGVUb2RvKHRvZG9JdGVtKTtcblx0XHRcdHRoaXMudXBkYXRlQXJlQWxsQ2hlY2tlZFN0YXRlKCk7XG5cdFx0fVxuXG5cdFx0dGhpcy5zYXZlKCk7XG5cdH1cblxuXHRvbklzQ29tcGxldGVkQ2hhbmdlZCgpIHtcblx0XHR0aGlzLnVwZGF0ZUFyZUFsbENoZWNrZWRTdGF0ZSgpO1xuXHRcdHRoaXMudXBkYXRlRmlsdGVyZWRJdGVtcyh0aGlzLmZpbHRlcik7XG5cblx0XHR0aGlzLnNhdmUoKTtcblx0fVxuXG5cdGRlbGV0ZVRvZG8odG9kb0l0ZW0pIHtcblx0XHR0aGlzLml0ZW1zID0gXyh0aGlzLml0ZW1zKS53aXRob3V0KHRvZG9JdGVtKTtcblx0XHR0aGlzLnVwZGF0ZUFyZUFsbENoZWNrZWRTdGF0ZSgpO1xuXHRcdHRoaXMudXBkYXRlRmlsdGVyZWRJdGVtcyh0aGlzLmZpbHRlcik7XG5cdFx0dGhpcy5zYXZlKCk7XG5cdH1cblxuXHRvblRvZ2dsZUFsbENoYW5nZWQoKSB7XG5cdFx0dGhpcy5pdGVtcyA9IF8ubWFwKHRoaXMuaXRlbXMsIGl0ZW0gPT4ge1xuXHRcdFx0aXRlbS5pc0NvbXBsZXRlZCA9IHRoaXMuYXJlQWxsQ2hlY2tlZDtcblx0XHRcdHJldHVybiBpdGVtO1xuXHRcdH0pO1xuXG5cdFx0dGhpcy51cGRhdGVGaWx0ZXJlZEl0ZW1zKHRoaXMuZmlsdGVyKTtcblx0fVxuXG5cdGNsZWFyQ29tcGxldGVkVG9kb3MoKSB7XG5cdFx0dGhpcy5pdGVtcyA9IF8odGhpcy5pdGVtcykuZmlsdGVyKGkgPT4gIWkuaXNDb21wbGV0ZWQpO1xuXHRcdHRoaXMuYXJlQWxsQ2hlY2tlZCA9IGZhbHNlO1xuXHRcdHRoaXMudXBkYXRlRmlsdGVyZWRJdGVtcyh0aGlzLmZpbHRlcik7XG5cdFx0dGhpcy5zYXZlKCk7XG5cdH1cblxuXHRnZXQgY291bnRUb2Rvc0xlZnQoKSB7XG5cdFx0cmV0dXJuIF8odGhpcy5pdGVtcykuZmlsdGVyKGkgPT4gIWkuaXNDb21wbGV0ZWQpLmxlbmd0aDtcblx0fVxuXG5cdHVwZGF0ZUFyZUFsbENoZWNrZWRTdGF0ZSgpIHtcblx0XHR0aGlzLmFyZUFsbENoZWNrZWQgPSBfKHRoaXMuaXRlbXMpLmFsbChpID0+IGkuaXNDb21wbGV0ZWQpO1xuXHR9XG5cblx0dXBkYXRlRmlsdGVyZWRJdGVtcyhmaWx0ZXIpIHtcblx0XHR0aGlzLmZpbHRlciA9IGZpbHRlciB8fCAnISc7XG5cblx0XHRzd2l0Y2ggKGZpbHRlcikge1xuXHRcdFx0Y2FzZSAnYWN0aXZlJzpcblx0XHRcdFx0dGhpcy5maWx0ZXJlZEl0ZW1zID0gXyh0aGlzLml0ZW1zKS5maWx0ZXIoaSA9PiAhaS5pc0NvbXBsZXRlZCk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0Y2FzZSAnY29tcGxldGVkJzpcblx0XHRcdFx0dGhpcy5maWx0ZXJlZEl0ZW1zID0gXyh0aGlzLml0ZW1zKS5maWx0ZXIoaSA9Plx0aS5pc0NvbXBsZXRlZCk7XG5cdFx0XHRcdGJyZWFrO1xuXHRcdFx0ZGVmYXVsdDpcblx0XHRcdFx0dGhpcy5maWx0ZXJlZEl0ZW1zID0gdGhpcy5pdGVtcztcblx0XHRcdFx0YnJlYWs7XG5cdFx0fVxuXHR9XG5cblx0bG9hZCgpIHtcblx0XHRjb25zdCBzdG9yYWdlQ29udGVudCA9IHRoaXMuc3RvcmFnZS5nZXRJdGVtKFNUT1JBR0VfTkFNRSk7XG5cdFx0aWYgKHN0b3JhZ2VDb250ZW50ID09IHVuZGVmaW5lZCkgeyByZXR1cm47IH1cblxuXHRcdGNvbnN0IHNpbXBsZUl0ZW1zID0gSlNPTi5wYXJzZShzdG9yYWdlQ29udGVudCk7XG5cdFx0dGhpcy5pdGVtcyA9IF8ubWFwKHNpbXBsZUl0ZW1zLCBpdGVtID0+IHtcblx0XHRcdGNvbnN0IHRvZG9JdGVtID0gbmV3IFRvZG9JdGVtKGl0ZW0udGl0bGUpO1xuXHRcdFx0dG9kb0l0ZW0uaXNDb21wbGV0ZWQgPSBpdGVtLmNvbXBsZXRlZDtcblxuXHRcdFx0dGhpcy5vYnNlcnZlSXRlbSh0b2RvSXRlbSk7XG5cblx0XHRcdHJldHVybiB0b2RvSXRlbTtcblx0XHR9KTtcblx0XHR0aGlzLnVwZGF0ZUFyZUFsbENoZWNrZWRTdGF0ZSgpO1xuXHR9XG5cblx0c2F2ZSgpIHtcblx0XHRjb25zdCBzaW1wbGVJdGVtcyA9IF8ubWFwKHRoaXMuaXRlbXMsIGl0ZW0gPT4geyByZXR1cm4ge1xuXHRcdFx0dGl0bGU6IGl0ZW0udGl0bGUsXG5cdFx0XHRjb21wbGV0ZWQ6IGl0ZW0uaXNDb21wbGV0ZWRcblx0XHR9fSk7XG5cblx0XHR0aGlzLnN0b3JhZ2Uuc2V0SXRlbShTVE9SQUdFX05BTUUsIEpTT04uc3RyaW5naWZ5KHNpbXBsZUl0ZW1zKSk7XG5cdH1cbn1cbiJdLCJzb3VyY2VSb290IjoiL3NvdXJjZS8ifQ==
<!doctype html> <!doctype html>
<html lang="en" data-framework="aurelia"> <html lang="en" data-framework="aurelia">
<head> <head>
<meta charset="utf-8"> <meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1"> <meta name="viewport" content="width=device-width, initial-scale=1">
<title>Aurelia • TodoMVC</title> <title>Aurelia • TodoMVC</title>
<link rel="stylesheet" href="jspm_packages/npm/todomvc-common@1.0.1/base.css"> <link rel="stylesheet" type="text/css" href="jspm_packages/npm/todomvc-common@1.0.2/base.css">
<link rel="stylesheet" href="jspm_packages/npm/todomvc-app-css@1.0.1/index.css"> <link rel="stylesheet" type="text/css" href="jspm_packages/npm/todomvc-app-css@2.0.4/index.css">
</head> </head>
<body> <body>
<section id="todoapp" aurelia-app> <section class="todoapp" aurelia-app="main">
<!-- this is where Aurelia will fill out the content --> <!-- this is where Aurelia will fill out the content -->
</section> </section>
<footer id="info">
<footer class="info">
<p>Double-click to edit a todo</p> <p>Double-click to edit a todo</p>
<p>Created by <a href="http://marcelhoyer.de">Marcel Hoyer</a></p> <p>Created by <a href="http://marcelhoyer.de">Marcel Hoyer</a></p>
<p>Part of <a href="http://todomvc.com">TodoMVC</a></p> <p>Part of <a href="http://todomvc.com">TodoMVC</a></p>
</footer> </footer>
<script src="jspm_packages/npm/todomvc-common@1.0.1/base.js"></script>
<!-- Scripts here. Don't remove ↓ -->
<script src="jspm_packages/npm/todomvc-common@1.0.2/base.js"></script>
<script src="jspm_packages/system.js"></script> <script src="jspm_packages/system.js"></script>
<script src="config.js"></script> <script src="config.js"></script>
<script> <script>
System.baseUrl = 'dist';
System.import('aurelia-bootstrapper'); System.import('aurelia-bootstrapper');
</script> </script>
</body> </body>
</html> </html>
/*
* es6-module-loader v0.12.0
* https://github.com/ModuleLoader/es6-module-loader
* Copyright (c) 2015 Guy Bedford, Luke Hoban, Addy Osmani; Licensed MIT
*/
!function(a){"object"==typeof exports?module.exports=a():"function"==typeof define&&define.amd?define(a):"undefined"!=typeof window?window.Promise=a():"undefined"!=typeof global?global.Promise=a():"undefined"!=typeof self&&(self.Promise=a())}(function(){var a;return function b(a,c,d){function e(g,h){if(!c[g]){if(!a[g]){var i="function"==typeof require&&require;if(!h&&i)return i(g,!0);if(f)return f(g,!0);throw new Error("Cannot find module '"+g+"'")}var j=c[g]={exports:{}};a[g][0].call(j.exports,function(b){var c=a[g][1][b];return e(c?c:b)},j,j.exports,b,a,c,d)}return c[g].exports}for(var f="function"==typeof require&&require,g=0;g<d.length;g++)e(d[g]);return e}({1:[function(a,b){var c=a("../lib/decorators/unhandledRejection"),d=c(a("../lib/Promise"));b.exports="undefined"!=typeof global?global.Promise=d:"undefined"!=typeof self?self.Promise=d:d},{"../lib/Promise":2,"../lib/decorators/unhandledRejection":4}],2:[function(b,c){!function(a){"use strict";a(function(a){var b=a("./makePromise"),c=a("./Scheduler"),d=a("./env").asap;return b({scheduler:new c(d)})})}("function"==typeof a&&a.amd?a:function(a){c.exports=a(b)})},{"./Scheduler":3,"./env":5,"./makePromise":7}],3:[function(b,c){!function(a){"use strict";a(function(){function a(a){this._async=a,this._running=!1,this._queue=new Array(65536),this._queueLen=0,this._afterQueue=new Array(16),this._afterQueueLen=0;var b=this;this.drain=function(){b._drain()}}return a.prototype.enqueue=function(a){this._queue[this._queueLen++]=a,this.run()},a.prototype.afterQueue=function(a){this._afterQueue[this._afterQueueLen++]=a,this.run()},a.prototype.run=function(){this._running||(this._running=!0,this._async(this.drain))},a.prototype._drain=function(){for(var a=0;a<this._queueLen;++a)this._queue[a].run(),this._queue[a]=void 0;for(this._queueLen=0,this._running=!1,a=0;a<this._afterQueueLen;++a)this._afterQueue[a].run(),this._afterQueue[a]=void 0;this._afterQueueLen=0},a})}("function"==typeof a&&a.amd?a:function(a){c.exports=a()})},{}],4:[function(b,c){!function(a){"use strict";a(function(a){function b(a){throw a}function c(){}var d=a("../env").setTimer,e=a("../format");return function(a){function f(a){a.handled||(n.push(a),k("Potentially unhandled rejection ["+a.id+"] "+e.formatError(a.value)))}function g(a){var b=n.indexOf(a);b>=0&&(n.splice(b,1),l("Handled previous rejection ["+a.id+"] "+e.formatObject(a.value)))}function h(a,b){m.push(a,b),null===o&&(o=d(i,0))}function i(){for(o=null;m.length>0;)m.shift()(m.shift())}var j,k=c,l=c;"undefined"!=typeof console&&(j=console,k="undefined"!=typeof j.error?function(a){j.error(a)}:function(a){j.log(a)},l="undefined"!=typeof j.info?function(a){j.info(a)}:function(a){j.log(a)}),a.onPotentiallyUnhandledRejection=function(a){h(f,a)},a.onPotentiallyUnhandledRejectionHandled=function(a){h(g,a)},a.onFatalRejection=function(a){h(b,a.value)};var m=[],n=[],o=null;return a}})}("function"==typeof a&&a.amd?a:function(a){c.exports=a(b)})},{"../env":5,"../format":6}],5:[function(b,c){!function(a){"use strict";a(function(a){function b(){return"undefined"!=typeof process&&null!==process&&"function"==typeof process.nextTick}function c(){return"function"==typeof MutationObserver&&MutationObserver||"function"==typeof WebKitMutationObserver&&WebKitMutationObserver}function d(a){function b(){var a=c;c=void 0,a()}var c,d=document.createTextNode(""),e=new a(b);e.observe(d,{characterData:!0});var f=0;return function(a){c=a,d.data=f^=1}}var e,f="undefined"!=typeof setTimeout&&setTimeout,g=function(a,b){return setTimeout(a,b)},h=function(a){return clearTimeout(a)},i=function(a){return f(a,0)};if(b())i=function(a){return process.nextTick(a)};else if(e=c())i=d(e);else if(!f){var j=a,k=j("vertx");g=function(a,b){return k.setTimer(b,a)},h=k.cancelTimer,i=k.runOnLoop||k.runOnContext}return{setTimer:g,clearTimer:h,asap:i}})}("function"==typeof a&&a.amd?a:function(a){c.exports=a(b)})},{}],6:[function(b,c){!function(a){"use strict";a(function(){function a(a){var c="object"==typeof a&&null!==a&&a.stack?a.stack:b(a);return a instanceof Error?c:c+" (WARNING: non-Error used)"}function b(a){var b=String(a);return"[object Object]"===b&&"undefined"!=typeof JSON&&(b=c(a,b)),b}function c(a,b){try{return JSON.stringify(a)}catch(c){return b}}return{formatError:a,formatObject:b,tryStringify:c}})}("function"==typeof a&&a.amd?a:function(a){c.exports=a()})},{}],7:[function(b,c){!function(a){"use strict";a(function(){return function(a){function b(a,b){this._handler=a===t?b:c(a)}function c(a){function b(a){e.resolve(a)}function c(a){e.reject(a)}function d(a){e.notify(a)}var e=new v;try{a(b,c,d)}catch(f){c(f)}return e}function d(a){return I(a)?a:new b(t,new w(q(a)))}function e(a){return new b(t,new w(new z(a)))}function f(){return Z}function g(){return new b(t,new v)}function h(a,b){var c=new v(a.receiver,a.join().context);return new b(t,c)}function i(a){return k(S,null,a)}function j(a,b){return k(N,a,b)}function k(a,c,d){function e(b,e,g){g.resolved||l(d,f,b,a(c,e,b),g)}function f(a,b,c){k[a]=b,0===--j&&c.become(new y(k))}for(var g,h="function"==typeof c?e:f,i=new v,j=d.length>>>0,k=new Array(j),m=0;m<d.length&&!i.resolved;++m)g=d[m],void 0!==g||m in d?l(d,h,m,g,i):--j;return 0===j&&i.become(new y(k)),new b(t,i)}function l(a,b,c,d,e){if(J(d)){var f=r(d),g=f.state();0===g?f.fold(b,c,void 0,e):g>0?b(c,f.value,e):(e.become(f),m(a,c+1,f))}else b(c,d,e)}function m(a,b,c){for(var d=b;d<a.length;++d)n(q(a[d]),c)}function n(a,b){if(a!==b){var c=a.state();0===c?a.visit(a,void 0,a._unreport):0>c&&a._unreport()}}function o(a){return"object"!=typeof a||null===a?e(new TypeError("non-iterable passed to race()")):0===a.length?f():1===a.length?d(a[0]):p(a)}function p(a){var c,d,e,f=new v;for(c=0;c<a.length;++c)if(d=a[c],void 0!==d||c in a){if(e=q(d),0!==e.state()){f.become(e),m(a,c+1,e);break}e.visit(f,f.resolve,f.reject)}return new b(t,f)}function q(a){return I(a)?a._handler.join():J(a)?s(a):new y(a)}function r(a){return I(a)?a._handler.join():s(a)}function s(a){try{var b=a.then;return"function"==typeof b?new x(b,a):new y(a)}catch(c){return new z(c)}}function t(){}function u(){}function v(a,c){b.createContext(this,c),this.consumers=void 0,this.receiver=a,this.handler=void 0,this.resolved=!1}function w(a){this.handler=a}function x(a,b){v.call(this),U.enqueue(new F(a,b,this))}function y(a){b.createContext(this),this.value=a}function z(a){b.createContext(this),this.id=++X,this.value=a,this.handled=!1,this.reported=!1,this._report()}function A(a,b){this.rejection=a,this.context=b}function B(a){this.rejection=a}function C(){return new z(new TypeError("Promise cycle"))}function D(a,b){this.continuation=a,this.handler=b}function E(a,b){this.handler=b,this.value=a}function F(a,b,c){this._then=a,this.thenable=b,this.resolver=c}function G(a,b,c,d,e){try{a.call(b,c,d,e)}catch(f){d(f)}}function H(a,b,c,d){this.f=a,this.z=b,this.c=c,this.to=d,this.resolver=W,this.receiver=this}function I(a){return a instanceof b}function J(a){return("object"==typeof a||"function"==typeof a)&&null!==a}function K(a,c,d,e){return"function"!=typeof a?e.become(c):(b.enterContext(c),O(a,c.value,d,e),void b.exitContext())}function L(a,c,d,e,f){return"function"!=typeof a?f.become(d):(b.enterContext(d),P(a,c,d.value,e,f),void b.exitContext())}function M(a,c,d,e,f){return"function"!=typeof a?f.notify(c):(b.enterContext(d),Q(a,c,e,f),void b.exitContext())}function N(a,b,c){try{return a(b,c)}catch(d){return e(d)}}function O(a,b,c,d){try{d.become(q(a.call(c,b)))}catch(e){d.become(new z(e))}}function P(a,b,c,d,e){try{a.call(d,b,c,e)}catch(f){e.become(new z(f))}}function Q(a,b,c,d){try{d.notify(a.call(c,b))}catch(e){d.notify(e)}}function R(a,b){b.prototype=V(a.prototype),b.prototype.constructor=b}function S(a,b){return b}function T(){}var U=a.scheduler,V=Object.create||function(a){function b(){}return b.prototype=a,new b};b.resolve=d,b.reject=e,b.never=f,b._defer=g,b._handler=q,b.prototype.then=function(a,b,c){var d=this._handler,e=d.join().state();if("function"!=typeof a&&e>0||"function"!=typeof b&&0>e)return new this.constructor(t,d);var f=this._beget(),g=f._handler;return d.chain(g,d.receiver,a,b,c),f},b.prototype["catch"]=function(a){return this.then(void 0,a)},b.prototype._beget=function(){return h(this._handler,this.constructor)},b.all=i,b.race=o,b._traverse=j,b._visitRemaining=m,t.prototype.when=t.prototype.become=t.prototype.notify=t.prototype.fail=t.prototype._unreport=t.prototype._report=T,t.prototype._state=0,t.prototype.state=function(){return this._state},t.prototype.join=function(){for(var a=this;void 0!==a.handler;)a=a.handler;return a},t.prototype.chain=function(a,b,c,d,e){this.when({resolver:a,receiver:b,fulfilled:c,rejected:d,progress:e})},t.prototype.visit=function(a,b,c,d){this.chain(W,a,b,c,d)},t.prototype.fold=function(a,b,c,d){this.when(new H(a,b,c,d))},R(t,u),u.prototype.become=function(a){a.fail()};var W=new u;R(t,v),v.prototype._state=0,v.prototype.resolve=function(a){this.become(q(a))},v.prototype.reject=function(a){this.resolved||this.become(new z(a))},v.prototype.join=function(){if(!this.resolved)return this;for(var a=this;void 0!==a.handler;)if(a=a.handler,a===this)return this.handler=C();return a},v.prototype.run=function(){var a=this.consumers,b=this.join();this.consumers=void 0;for(var c=0;c<a.length;++c)b.when(a[c])},v.prototype.become=function(a){this.resolved||(this.resolved=!0,this.handler=a,void 0!==this.consumers&&U.enqueue(this),void 0!==this.context&&a._report(this.context))},v.prototype.when=function(a){this.resolved?U.enqueue(new D(a,this.handler)):void 0===this.consumers?this.consumers=[a]:this.consumers.push(a)},v.prototype.notify=function(a){this.resolved||U.enqueue(new E(a,this))},v.prototype.fail=function(a){var b="undefined"==typeof a?this.context:a;this.resolved&&this.handler.join().fail(b)},v.prototype._report=function(a){this.resolved&&this.handler.join()._report(a)},v.prototype._unreport=function(){this.resolved&&this.handler.join()._unreport()},R(t,w),w.prototype.when=function(a){U.enqueue(new D(a,this))},w.prototype._report=function(a){this.join()._report(a)},w.prototype._unreport=function(){this.join()._unreport()},R(v,x),R(t,y),y.prototype._state=1,y.prototype.fold=function(a,b,c,d){L(a,b,this,c,d)},y.prototype.when=function(a){K(a.fulfilled,this,a.receiver,a.resolver)};var X=0;R(t,z),z.prototype._state=-1,z.prototype.fold=function(a,b,c,d){d.become(this)},z.prototype.when=function(a){"function"==typeof a.rejected&&this._unreport(),K(a.rejected,this,a.receiver,a.resolver)},z.prototype._report=function(a){U.afterQueue(new A(this,a))},z.prototype._unreport=function(){this.handled||(this.handled=!0,U.afterQueue(new B(this)))},z.prototype.fail=function(a){b.onFatalRejection(this,void 0===a?this.context:a)},A.prototype.run=function(){this.rejection.handled||(this.rejection.reported=!0,b.onPotentiallyUnhandledRejection(this.rejection,this.context))},B.prototype.run=function(){this.rejection.reported&&b.onPotentiallyUnhandledRejectionHandled(this.rejection)},b.createContext=b.enterContext=b.exitContext=b.onPotentiallyUnhandledRejection=b.onPotentiallyUnhandledRejectionHandled=b.onFatalRejection=T;var Y=new t,Z=new b(t,Y);return D.prototype.run=function(){this.handler.join().when(this.continuation)},E.prototype.run=function(){var a=this.handler.consumers;if(void 0!==a)for(var b,c=0;c<a.length;++c)b=a[c],M(b.progress,this.value,this.handler,b.receiver,b.resolver)},F.prototype.run=function(){function a(a){d.resolve(a)}function b(a){d.reject(a)}function c(a){d.notify(a)}var d=this.resolver;G(this._then,this.thenable,a,b,c)},H.prototype.fulfilled=function(a){this.f.call(this.c,this.z,a,this.to)},H.prototype.rejected=function(a){this.to.reject(a)},H.prototype.progress=function(a){this.to.notify(a)},b}})}("function"==typeof a&&a.amd?a:function(a){c.exports=a()})},{}]},{},[1])(1)}),function(__global){function __eval(__source,__global,load){var __curRegister=System.register;System.register=function(a,b,c){"string"!=typeof a&&(c=b,b=a),load.declare=c,load.depsList=b};try{eval('(function() { var __moduleName = "'+(load.name||"").replace('"','"')+'"; '+__source+" \n }).call(__global);")}catch(e){throw("SyntaxError"==e.name||"TypeError"==e.name)&&(e.message="Evaluating "+(load.name||load.address)+"\n "+e.message),e}System.register=__curRegister}$__Object$getPrototypeOf=Object.getPrototypeOf||function(a){return a.__proto__};var $__Object$defineProperty;!function(){try{Object.defineProperty({},"a",{})&&($__Object$defineProperty=Object.defineProperty)}catch(a){$__Object$defineProperty=function(a,b,c){try{a[b]=c.value||c.get.call(a)}catch(d){}}}}(),$__Object$create=Object.create||function(a,b){function c(){}if(c.prototype=a,"object"==typeof b)for(prop in b)b.hasOwnProperty(prop)&&(c[prop]=b[prop]);return new c},function(){function a(a){return{status:"loading",name:a,linkSets:[],dependencies:[],metadata:{}}}function b(a,b,c){return new A(g({step:c.address?"fetch":"locate",loader:a,moduleName:b,moduleMetadata:c&&c.metadata||{},moduleSource:c.source,moduleAddress:c.address}))}function c(b,c,e,f){return new A(function(a){a(b.loaderObj.normalize(c,e,f))}).then(function(c){var e;if(b.modules[c])return e=a(c),e.status="linked",e.module=b.modules[c],e;for(var f=0,g=b.loads.length;g>f;f++)if(e=b.loads[f],e.name==c)return e;return e=a(c),b.loads.push(e),d(b,e),e})}function d(a,b){e(a,b,A.resolve().then(function(){return a.loaderObj.locate({name:b.name,metadata:b.metadata})}))}function e(a,b,c){f(a,b,c.then(function(c){return"loading"==b.status?(b.address=c,a.loaderObj.fetch({name:b.name,metadata:b.metadata,address:c})):void 0}))}function f(a,b,d){d.then(function(c){return"loading"==b.status?a.loaderObj.translate({name:b.name,metadata:b.metadata,address:b.address,source:c}):void 0}).then(function(c){return"loading"==b.status?(b.source=c,a.loaderObj.instantiate({name:b.name,metadata:b.metadata,address:b.address,source:c})):void 0}).then(function(d){if("loading"==b.status){if(void 0===d)b.address=b.address||"<Anonymous Module "+ ++D+">",b.isDeclarative=!0,a.loaderObj.parse(b);else{if("object"!=typeof d)throw TypeError("Invalid instantiate return value");b.depsList=d.deps||[],b.execute=d.execute,b.isDeclarative=!1}b.dependencies=[];for(var e=b.depsList,f=[],g=0,h=e.length;h>g;g++)(function(d,e){f.push(c(a,d,b.name,b.address).then(function(a){if(b.dependencies[e]={key:d,value:a.name},"linked"!=a.status)for(var c=b.linkSets.concat([]),f=0,g=c.length;g>f;f++)i(c[f],a)}))})(e[g],g);return A.all(f)}}).then(function(){b.status="loaded";for(var a=b.linkSets.concat([]),c=0,d=a.length;d>c;c++)k(a[c],b)})["catch"](function(a){b.status="failed",b.exception=a;for(var c=b.linkSets.concat([]),d=0,e=c.length;e>d;d++)l(c[d],b,a)})}function g(b){return function(c){var g=b.loader,i=b.moduleName,j=b.step;if(g.modules[i])throw new TypeError('"'+i+'" already exists in the module table');for(var k,l=0,m=g.loads.length;m>l;l++)if(g.loads[l].name==i)return k=g.loads[l],k.linkSets[0].done.then(function(){c(k)});var n=a(i);n.metadata=b.moduleMetadata;var o=h(g,n);g.loads.push(n),c(o.done),"locate"==j?d(g,n):"fetch"==j?e(g,n,A.resolve(b.moduleAddress)):(n.address=b.moduleAddress,f(g,n,A.resolve(b.moduleSource)))}}function h(a,b){var c={loader:a,loads:[],startingLoad:b,loadingCount:0};return c.done=new A(function(a,b){c.resolve=a,c.reject=b}),i(c,b),c}function i(a,b){for(var c=0,d=a.loads.length;d>c;c++)if(a.loads[c]==b)return;a.loads.push(b),b.linkSets.push(a),"loaded"!=b.status&&a.loadingCount++;for(var e=a.loader,c=0,d=b.dependencies.length;d>c;c++){var f=b.dependencies[c].value;if(!e.modules[f])for(var g=0,h=e.loads.length;h>g;g++)if(e.loads[g].name==f){i(a,e.loads[g]);break}}}function j(a){var b=!1;try{p(a,function(c,d){l(a,c,d),b=!0})}catch(c){l(a,null,c),b=!0}return b}function k(a,b){if(a.loadingCount--,!(a.loadingCount>0)){var c=a.startingLoad;if(a.loader.loaderObj.execute===!1){for(var d=[].concat(a.loads),e=0,f=d.length;f>e;e++){var b=d[e];b.module=b.isDeclarative?{name:b.name,module:E({}),evaluated:!0}:{module:E({})},b.status="linked",m(a.loader,b)}return a.resolve(c)}var g=j(a);g||a.resolve(c)}}function l(a,b,c){var d=a.loader;a.loads[0].name!=b.name&&(c=w(c,'Error loading "'+b.name+'" from "'+a.loads[0].name+'" at '+(a.loads[0].address||"<unknown>")+"\n")),c=w(c,'Error loading "'+b.name+'" at '+(b.address||"<unknown>")+"\n");for(var e=a.loads.concat([]),f=0,g=e.length;g>f;f++){var b=e[f];d.loaderObj.failed=d.loaderObj.failed||[],-1==B.call(d.loaderObj.failed,b)&&d.loaderObj.failed.push(b);var h=B.call(b.linkSets,a);if(b.linkSets.splice(h,1),0==b.linkSets.length){var i=B.call(a.loader.loads,b);-1!=i&&a.loader.loads.splice(i,1)}}a.reject(c)}function m(a,b){if(a.loaderObj.trace){a.loaderObj.loads||(a.loaderObj.loads={});var c={};b.dependencies.forEach(function(a){c[a.key]=a.value}),a.loaderObj.loads[b.name]={name:b.name,deps:b.dependencies.map(function(a){return a.key}),depMap:c,address:b.address,metadata:b.metadata,source:b.source,kind:b.isDeclarative?"declarative":"dynamic"}}b.name&&(a.modules[b.name]=b.module);var d=B.call(a.loads,b);-1!=d&&a.loads.splice(d,1);for(var e=0,f=b.linkSets.length;f>e;e++)d=B.call(b.linkSets[e].loads,b),-1!=d&&b.linkSets[e].loads.splice(d,1);b.linkSets.splice(0,b.linkSets.length)}function n(a,b,c){if(c[a.groupIndex]=c[a.groupIndex]||[],-1==B.call(c[a.groupIndex],a)){c[a.groupIndex].push(a);for(var d=0,e=b.length;e>d;d++)for(var f=b[d],g=0;g<a.dependencies.length;g++)if(f.name==a.dependencies[g].value){var h=a.groupIndex+(f.isDeclarative!=a.isDeclarative);if(void 0===f.groupIndex||f.groupIndex<h){if(void 0!==f.groupIndex&&(c[f.groupIndex].splice(B.call(c[f.groupIndex],f),1),0==c[f.groupIndex].length))throw new TypeError("Mixed dependency cycle detected");f.groupIndex=h}n(f,b,c)}}}function o(a,b,c){try{var d=b.execute()}catch(e){return void c(b,e)}return d&&d instanceof y?d:void c(b,new TypeError("Execution must define a Module instance"))}function p(a,b){var c=a.loader;if(a.loads.length){var d=[],e=a.loads[0];e.groupIndex=0,n(e,a.loads,d);for(var f=e.isDeclarative==d.length%2,g=d.length-1;g>=0;g--){for(var h=d[g],i=0;i<h.length;i++){var j=h[i];if(f)r(j,a.loads,c);else{var k=o(a,j,b);if(!k)return;j.module={name:j.name,module:k},j.status="linked"}m(c,j)}f=!f}}}function q(a,b){var c=b.moduleRecords;return c[a]||(c[a]={name:a,dependencies:[],module:new y,importers:[]})}function r(a,b,c){if(!a.module){var d=a.module=q(a.name,c),e=a.module.module,f=a.declare.call(__global,function(a,b){d.locked=!0,e[a]=b;for(var c=0,f=d.importers.length;f>c;c++){var g=d.importers[c];if(!g.locked){var h=B.call(g.dependencies,d);g.setters[h](e)}}return d.locked=!1,b});d.setters=f.setters,d.execute=f.execute;for(var g=0,h=a.dependencies.length;h>g;g++){var i=a.dependencies[g].value,j=c.modules[i];if(!j)for(var k=0;k<b.length;k++)b[k].name==i&&(b[k].module?j=q(i,c):(r(b[k],b,c),j=b[k].module));j.importers?(d.dependencies.push(j),j.importers.push(d)):d.dependencies.push(null),d.setters[g]&&d.setters[g](j.module)}a.status="linked"}}function s(a,b){return u(b.module,[],a),b.module.module}function t(a){try{a.execute.call(__global)}catch(b){return b}}function u(a,b,c){var d=v(a,b,c);if(d)throw d}function v(a,b,c){if(!a.evaluated&&a.dependencies){b.push(a);for(var d,e=a.dependencies,f=0,g=e.length;g>f;f++){var h=e[f];if(h&&-1==B.call(b,h)&&(d=v(h,b,c)))return d=w(d,"Error evaluating "+h.name+"\n")}if(a.failed)return new Error("Module failed execution.");if(!a.evaluated)return a.evaluated=!0,d=t(a),d?a.failed=!0:Object.preventExtensions&&Object.preventExtensions(a.module),a.execute=void 0,d}}function w(a,b){return a instanceof Error?a.message=b+a.message:a=b+a,a}function x(a){if("object"!=typeof a)throw new TypeError("Options must be an object");a.normalize&&(this.normalize=a.normalize),a.locate&&(this.locate=a.locate),a.fetch&&(this.fetch=a.fetch),a.translate&&(this.translate=a.translate),a.instantiate&&(this.instantiate=a.instantiate),this._loader={loaderObj:this,loads:[],modules:{},importPromises:{},moduleRecords:{}},C(this,"global",{get:function(){return __global}})}function y(){}function z(a,b,c){var d=a._loader.importPromises;return d[b]=c.then(function(a){return d[b]=void 0,a},function(a){throw d[b]=void 0,a})}var A=__global.Promise||require("when/es6-shim/Promise");__global.console&&(console.assert=console.assert||function(){});var B=Array.prototype.indexOf||function(a){for(var b=0,c=this.length;c>b;b++)if(this[b]===a)return b;return-1},C=$__Object$defineProperty,D=0;x.prototype={constructor:x,define:function(a,b,c){if(this._loader.importPromises[a])throw new TypeError("Module is already loading.");return z(this,a,new A(g({step:"translate",loader:this._loader,moduleName:a,moduleMetadata:c&&c.metadata||{},moduleSource:b,moduleAddress:c&&c.address})))},"delete":function(a){return this._loader.modules[a]?delete this._loader.modules[a]:!1},get:function(a){return this._loader.modules[a]?(u(this._loader.modules[a],[],this),this._loader.modules[a].module):void 0},has:function(a){return!!this._loader.modules[a]},"import":function(a,c){var d=this;return A.resolve(d.normalize(a,c&&c.name,c&&c.address)).then(function(a){var e=d._loader;return e.modules[a]?(u(e.modules[a],[],e._loader),e.modules[a].module):e.importPromises[a]||z(d,a,b(e,a,c||{}).then(function(b){return delete e.importPromises[a],s(e,b)}))})},load:function(a){return this._loader.modules[a]?(u(this._loader.modules[a],[],this._loader),A.resolve(this._loader.modules[a].module)):this._loader.importPromises[a]||z(this,a,b(this._loader,a,{}))},module:function(b,c){var d=a();d.address=c&&c.address;var e=h(this._loader,d),g=A.resolve(b),i=this._loader,j=e.done.then(function(){return s(i,d)});return f(i,d,g),j},newModule:function(a){if("object"!=typeof a)throw new TypeError("Expected object");var b=new y;for(var c in a)!function(c){C(b,c,{configurable:!1,enumerable:!0,get:function(){return a[c]}})}(c);return Object.preventExtensions&&Object.preventExtensions(b),b},set:function(a,b){if(!(b instanceof y))throw new TypeError("Loader.set("+a+", module) must be a module");this._loader.modules[a]={module:b}},normalize:function(a){return a},locate:function(a){return a.name},fetch:function(){throw new TypeError("Fetch not implemented")},translate:function(a){return a.source},parse:function(){throw new TypeError("Loader.parse is not implemented")},instantiate:function(){}};var E=x.prototype.newModule;"object"==typeof exports&&(module.exports=x),__global.Reflect=__global.Reflect||{},__global.Reflect.Loader=__global.Reflect.Loader||x,__global.Reflect.global=__global.Reflect.global||__global,__global.LoaderPolyfill=x}(),function(a){function b(a){var b=this.traceurOptions||{};b.modules="instantiate",b.script=!1,b.sourceMaps="inline",b.filename=a.address;var d=new f.Compiler(b),e=c(a.source,d,b.filename);return e+="!eval"}function c(a,b,c){try{return b.compile(a,c)}catch(d){throw d[0]}}function d(a){var b=this.to5Options||{};b.modules="system",b.sourceMap="inline",b.filename=a.address,b.code=!0,b.ast=!1;var c=f.transform(a.source,b).code;return c+"\n//# sourceURL="+a.address+"!eval"}var e,f,g;a.prototype.parser="traceur",a.prototype.parse=function(a){if(!e){if(g="6to5"==this.parser?"to5":this.parser,f="undefined"==typeof window&&"undefined"==typeof WorkerGlobalScope?require(this.parser):__global[g],!f)throw new TypeError("Include Traceur or 6to5 for module syntax support");e="6to5"==this.parser?d:b}var c=e.call(this,a);c='var __moduleAddress = "'+a.address+'";'+c,__eval(c,__global,a)}}(__global.LoaderPolyfill),function(){function a(a){var b=String(a).replace(/^\s+|\s+$/g,"").match(/^([^:\/?#]+:)?(\/\/(?:[^:@\/?#]*(?::[^:@\/?#]*)?@)?(([^:\/?#]*)(?::(\d*))?))?([^?#]*)(\?[^#]*)?(#[\s\S]*)?/);return b?{href:b[0]||"",protocol:b[1]||"",authority:b[2]||"",host:b[3]||"",hostname:b[4]||"",port:b[5]||"",pathname:b[6]||"",search:b[7]||"",hash:b[8]||""}:null}function b(a){var b=[];return a.replace(/^(\.\.?(\/|$))+/,"").replace(/\/(\.(\/|$))+/g,"/").replace(/\/\.\.$/,"/../").replace(/\/?[^\/]*/g,function(a){"/.."===a?b.pop():b.push(a)}),b.join("").replace(/^\//,"/"===a.charAt(0)?"/":"")}function c(c,d){return d=a(d||""),c=a(c||""),d&&c?(d.protocol||c.protocol)+(d.protocol||d.authority?d.authority:c.authority)+b(d.protocol||d.authority||"/"===d.pathname.charAt(0)?d.pathname:d.pathname?(c.authority&&!c.pathname?"/":"")+c.pathname.slice(0,c.pathname.lastIndexOf("/")+1)+d.pathname:c.pathname)+(d.protocol||d.authority||d.pathname?d.search:d.search||c.search)+d.hash:null}function d(){document.removeEventListener("DOMContentLoaded",d,!1),window.removeEventListener("load",d,!1),e()}function e(){for(var a=document.getElementsByTagName("script"),b=0;b<a.length;b++){var c=a[b];if("module"==c.type){var d=c.innerHTML.substr(1);__global.System.module(d)["catch"](function(a){setTimeout(function(){throw a})})}}}var f,g="undefined"!=typeof self&&"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,h="undefined"!=typeof window&&!g,i="undefined"!=typeof process&&!!process.platform.match(/^win/),j=__global.Promise||require("when/es6-shim/Promise");if("undefined"!=typeof XMLHttpRequest)f=function(a,b,c){function d(){b(f.responseText)}function e(){c(f.statusText+": "+a||"XHR error")}var f=new XMLHttpRequest,g=!0,h=!1;if(!("withCredentials"in f)){var i=/^(\w+:)?\/\/([^\/]+)/.exec(a);i&&(g=i[2]===window.location.host,i[1]&&(g&=i[1]===window.location.protocol))}g||"undefined"==typeof XDomainRequest||(f=new XDomainRequest,f.onload=d,f.onerror=e,f.ontimeout=e,f.onprogress=function(){},f.timeout=0,h=!0),f.onreadystatechange=function(){4===f.readyState&&(200===f.status||0==f.status&&f.responseText?d():e())},f.open("GET",a,!0),h&&setTimeout(function(){f.send()},0),f.send(null)};else{if("undefined"==typeof require)throw new TypeError("No environment fetch API available.");var k;f=function(a,b,c){if("file:"!=a.substr(0,5))throw"Only file URLs of the form file: allowed running in Node.";return k=k||require("fs"),a=a.substr(5),i&&(a=a.replace(/\//g,"\\")),k.readFile(a,function(a,d){return a?c(a):void b(d+"")})}}var l=function(a){function b(b){if(a.call(this,b||{}),"undefined"!=typeof location&&location.href){var c=__global.location.href.split("#")[0].split("?")[0];this.baseURL=c.substring(0,c.lastIndexOf("/")+1)}else{if("undefined"==typeof process||!process.cwd)throw new TypeError("No environment baseURL");this.baseURL="file:"+process.cwd()+"/",i&&(this.baseURL=this.baseURL.replace(/\\/g,"/"))}this.paths={"*":"*.js"}}return b.__proto__=null!==a?a:Function.prototype,b.prototype=$__Object$create(null!==a?a.prototype:null),$__Object$defineProperty(b.prototype,"constructor",{value:b}),$__Object$defineProperty(b.prototype,"global",{get:function(){return h?window:g?self:__global},enumerable:!1}),$__Object$defineProperty(b.prototype,"strict",{get:function(){return!0},enumerable:!1}),$__Object$defineProperty(b.prototype,"normalize",{value:function(a,b){if("string"!=typeof a)throw new TypeError("Module name must be a string");var c=a.split("/");if(0==c.length)throw new TypeError("No module name provided");var d=0,e=!1,f=0;if("."==c[0]){if(d++,d==c.length)throw new TypeError('Illegal module name "'+a+'"');e=!0}else{for(;".."==c[d];)if(d++,d==c.length)throw new TypeError('Illegal module name "'+a+'"');d&&(e=!0),f=d}for(var g=d;g<c.length;g++){var h=c[g];if(""==h||"."==h||".."==h)throw new TypeError('Illegal module name "'+a+'"')}if(!e)return a;{var i=[],j=(b||"").split("/");j.length-1-f}return i=i.concat(j.splice(0,j.length-1-f)),i=i.concat(c.splice(d,c.length-d)),i.join("/")},enumerable:!1,writable:!0}),$__Object$defineProperty(b.prototype,"locate",{value:function(a){var b,d=a.name,e="";for(var f in this.paths){var g=f.split("*");if(g.length>2)throw new TypeError("Only one wildcard in a path is permitted");if(1==g.length){if(d==f&&f.length>e.length){e=f;break}}else d.substr(0,g[0].length)==g[0]&&d.substr(d.length-g[1].length)==g[1]&&(e=f,b=d.substr(g[0].length,d.length-g[1].length-g[0].length))}var i=this.paths[e];return b&&(i=i.replace("*",b)),h&&(i=i.replace(/#/g,"%23")),c(this.baseURL,i)},enumerable:!1,writable:!0}),$__Object$defineProperty(b.prototype,"fetch",{value:function(a){var b=this;return new j(function(d,e){f(c(b.baseURL,a.address),function(a){d(a)},e)})},enumerable:!1,writable:!0}),b}(__global.LoaderPolyfill),m=new l;if("object"==typeof exports&&(module.exports=m),__global.System=m,h&&"undefined"!=typeof document.getElementsByTagName){var n=document.getElementsByTagName("script");n=n[n.length-1],"complete"===document.readyState?setTimeout(e):document.addEventListener&&(document.addEventListener("DOMContentLoaded",d,!1),window.addEventListener("load",d,!1)),n.getAttribute("data-init")&&window[n.getAttribute("data-init")]()}}()}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope?self:global);
//# sourceMappingURL=es6-module-loader.js.map
\ No newline at end of file
{"version":3,"file":"es6-module-loader.js","sources":["es6-module-loader.src.js"],"names":["e","exports","module","define","amd","window","Promise","global","self","t","n","r","s","o","u","a","require","i","Error","f","call","length",1,"unhandledRejections","PromiseConstructor","../lib/Promise","../lib/decorators/unhandledRejection",2,"makePromise","Scheduler","async","asap","scheduler","factory","./Scheduler","./env","./makePromise",3,"this","_async","_running","_queue","Array","_queueLen","_afterQueue","_afterQueueLen","drain","_drain","prototype","enqueue","task","run","afterQueue",4,"throwit","noop","setTimer","format","report","handled","reported","push","logError","id","formatError","value","unreport","indexOf","splice","logInfo","formatObject","x","tasks","running","flush","shift","localConsole","console","error","log","info","onPotentiallyUnhandledRejection","rejection","onPotentiallyUnhandledRejectionHandled","onFatalRejection","../env","../format",5,"isNode","process","nextTick","hasMutationObserver","MutationObserver","WebKitMutationObserver","initMutationObserver","scheduled","node","document","createTextNode","observe","characterData","data","MutationObs","capturedSetTimeout","setTimeout","ms","clearTimer","clearTimeout","vertxRequire","vertx","cancelTimer","runOnLoop","runOnContext",6,"stack","String","JSON","tryStringify","defaultValue","stringify",7,"environment","resolver","handler","_handler","Handler","init","promiseResolve","resolve","promiseReject","reason","reject","promiseNotify","notify","Pending","isPromise","Async","getHandler","Rejected","never","foreverPendingPromise","defer","begetFrom","parent","child","receiver","join","context","all","promises","traverseWith","snd","traverse","tryCatch2","tryMap","mapAt","resolved","traverseAt","settleAt","results","pending","become","Fulfilled","maybeThenable","h","getHandlerMaybeThenable","state","fold","visitRemaining","start","markAsHandled","visit","_unreport","race","TypeError","runRace","getHandlerUntrusted","untrustedThen","then","Thenable","FailIfRejected","inheritedContext","createContext","consumers","thenable","AssimilateTask","errorId","_report","ReportTask","UnreportTask","cycle","ContinuationTask","continuation","ProgressTask","_then","tryAssimilate","Fold","z","c","to","failIfRejected","runContinuation1","next","enterContext","tryCatchReject","exitContext","runContinuation3","tryCatchReject3","runNotify","tryCatchReturn","b","thisArg","y","inherit","Parent","Child","objectCreate","constructor","Object","create","proto","_defer","onFulfilled","onRejected","onProgress","p","_beget","chain","_traverse","_visitRemaining","when","fail","_state","fulfilled","rejected","progress","q","cont","foreverPendingHandler","_resolve","_reject","_notify","__global","__eval","__source","load","__curRegister","System","register","name","deps","declare","depsList","eval","replace","message","address","$__Object$getPrototypeOf","getPrototypeOf","obj","__proto__","$__Object$defineProperty","defineProperty","prop","opt","get","$__Object$create","props","F","hasOwnProperty","createLoad","status","linkSets","dependencies","metadata","loadModule","loader","options","asyncStartLoadPartwayThrough","step","moduleName","moduleMetadata","moduleSource","source","moduleAddress","requestLoad","request","refererName","refererAddress","loaderObj","normalize","modules","l","loads","proceedToLocate","proceedToFetch","locate","proceedToTranslate","fetch","translate","instantiate","instantiateResult","undefined","anonCnt","isDeclarative","parse","execute","loadPromises","index","depLoad","key","concat","addLoadToLinkSet","updateLinkSetOnLoad","exc","exception","linkSetFailed","stepState","existingLoad","done","linkSet","createLinkSet","startingLoad","loadingCount","j","d","doLink","link","_newModule","evaluated","finishLoad","abrupt","addToError","failed","linkIndex","globalLoadsIndex","trace","depMap","forEach","dep","map","kind","loadIndex","buildLinkageGroups","groups","groupIndex","loadDep","loadDepGroupIndex","doDynamicExecute","linkError","Module","curGroupDeclarative","group","linkDeclarativeModule","getOrCreateModuleRecord","moduleRecords","importers","moduleObj","registryEntry","locked","importerModule","importerIndex","setters","depName","depModule","evaluateLoadedModule","doEnsureEvaluated","doExecute","seen","err","ensureEvaluated","preventExtensions","msg","Loader","_loader","importPromises","createImportPromise","promise","m","assert","item","thisLen","delete","has","import","sourcePromise","newModule","configurable","enumerable","set","Reflect","LoaderPolyfill","traceurParse","traceurOptions","script","sourceMaps","filename","compiler","parserModule","Compiler","doTraceurCompile","compile","to5Parse","to5Options","sourceMap","code","ast","transform","parser","parserName","WorkerGlobalScope","parseURI","url","match","href","protocol","authority","host","hostname","port","pathname","search","hash","removeDotSegments","input","output","pop","charAt","toAbsoluteURL","base","slice","lastIndexOf","completed","removeEventListener","ready","scripts","getElementsByTagName","type","innerHTML","substr","fetchTextFromURL","isWorker","isBrowser","isWindows","platform","XMLHttpRequest","fulfill","xhr","responseText","statusText","sameDomain","doTimeout","domainCheck","exec","location","XDomainRequest","onload","onerror","ontimeout","onprogress","timeout","onreadystatechange","readyState","open","send","fs","readFile","SystemLoader","$__super","split","baseURL","substring","cwd","paths","*","Function","parentName","segments","rel","dotdots","segment","normalizedParts","parentParts","writable","wildcard","pathMatch","pathParts","outPath","curScript","addEventListener","getAttribute"],"mappings":"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"}
\ No newline at end of file
...@@ -15,12 +15,9 @@ button { ...@@ -15,12 +15,9 @@ button {
font-weight: inherit; font-weight: inherit;
color: inherit; color: inherit;
-webkit-appearance: none; -webkit-appearance: none;
-ms-appearance: none;
appearance: none; appearance: none;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
-ms-font-smoothing: antialiased;
font-smoothing: antialiased;
} }
body { body {
...@@ -32,9 +29,7 @@ body { ...@@ -32,9 +29,7 @@ body {
max-width: 550px; max-width: 550px;
margin: 0 auto; margin: 0 auto;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
-ms-font-smoothing: antialiased;
font-smoothing: antialiased;
font-weight: 300; font-weight: 300;
} }
...@@ -47,7 +42,7 @@ input[type="checkbox"] { ...@@ -47,7 +42,7 @@ input[type="checkbox"] {
display: none; display: none;
} }
#todoapp { .todoapp {
background: #fff; background: #fff;
margin: 130px 0 40px 0; margin: 130px 0 40px 0;
position: relative; position: relative;
...@@ -55,25 +50,25 @@ input[type="checkbox"] { ...@@ -55,25 +50,25 @@ input[type="checkbox"] {
0 25px 50px 0 rgba(0, 0, 0, 0.1); 0 25px 50px 0 rgba(0, 0, 0, 0.1);
} }
#todoapp input::-webkit-input-placeholder { .todoapp input::-webkit-input-placeholder {
font-style: italic; font-style: italic;
font-weight: 300; font-weight: 300;
color: #e6e6e6; color: #e6e6e6;
} }
#todoapp input::-moz-placeholder { .todoapp input::-moz-placeholder {
font-style: italic; font-style: italic;
font-weight: 300; font-weight: 300;
color: #e6e6e6; color: #e6e6e6;
} }
#todoapp input::input-placeholder { .todoapp input::input-placeholder {
font-style: italic; font-style: italic;
font-weight: 300; font-weight: 300;
color: #e6e6e6; color: #e6e6e6;
} }
#todoapp h1 { .todoapp h1 {
position: absolute; position: absolute;
top: -155px; top: -155px;
width: 100%; width: 100%;
...@@ -83,11 +78,10 @@ input[type="checkbox"] { ...@@ -83,11 +78,10 @@ input[type="checkbox"] {
color: rgba(175, 47, 47, 0.15); color: rgba(175, 47, 47, 0.15);
-webkit-text-rendering: optimizeLegibility; -webkit-text-rendering: optimizeLegibility;
-moz-text-rendering: optimizeLegibility; -moz-text-rendering: optimizeLegibility;
-ms-text-rendering: optimizeLegibility;
text-rendering: optimizeLegibility; text-rendering: optimizeLegibility;
} }
#new-todo, .new-todo,
.edit { .edit {
position: relative; position: relative;
margin: 0; margin: 0;
...@@ -102,22 +96,19 @@ input[type="checkbox"] { ...@@ -102,22 +96,19 @@ input[type="checkbox"] {
padding: 6px; padding: 6px;
border: 1px solid #999; border: 1px solid #999;
box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2); box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
-ms-box-sizing: border-box;
box-sizing: border-box; box-sizing: border-box;
-webkit-font-smoothing: antialiased; -webkit-font-smoothing: antialiased;
-moz-font-smoothing: antialiased; -moz-osx-font-smoothing: grayscale;
-ms-font-smoothing: antialiased;
font-smoothing: antialiased;
} }
#new-todo { .new-todo {
padding: 16px 16px 16px 60px; padding: 16px 16px 16px 60px;
border: none; border: none;
background: rgba(0, 0, 0, 0.003); background: rgba(0, 0, 0, 0.003);
box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03); box-shadow: inset 0 -2px 1px rgba(0,0,0,0.03);
} }
#main { .main {
position: relative; position: relative;
z-index: 2; z-index: 2;
border-top: 1px solid #e6e6e6; border-top: 1px solid #e6e6e6;
...@@ -127,7 +118,7 @@ label[for='toggle-all'] { ...@@ -127,7 +118,7 @@ label[for='toggle-all'] {
display: none; display: none;
} }
#toggle-all { .toggle-all {
position: absolute; position: absolute;
top: -55px; top: -55px;
left: -12px; left: -12px;
...@@ -137,50 +128,50 @@ label[for='toggle-all'] { ...@@ -137,50 +128,50 @@ label[for='toggle-all'] {
border: none; /* Mobile Safari */ border: none; /* Mobile Safari */
} }
#toggle-all:before { .toggle-all:before {
content: '❯'; content: '❯';
font-size: 22px; font-size: 22px;
color: #e6e6e6; color: #e6e6e6;
padding: 10px 27px 10px 27px; padding: 10px 27px 10px 27px;
} }
#toggle-all:checked:before { .toggle-all:checked:before {
color: #737373; color: #737373;
} }
#todo-list { .todo-list {
margin: 0; margin: 0;
padding: 0; padding: 0;
list-style: none; list-style: none;
} }
#todo-list li { .todo-list li {
position: relative; position: relative;
font-size: 24px; font-size: 24px;
border-bottom: 1px solid #ededed; border-bottom: 1px solid #ededed;
} }
#todo-list li:last-child { .todo-list li:last-child {
border-bottom: none; border-bottom: none;
} }
#todo-list li.editing { .todo-list li.editing {
border-bottom: none; border-bottom: none;
padding: 0; padding: 0;
} }
#todo-list li.editing .edit { .todo-list li.editing .edit {
display: block; display: block;
width: 506px; width: 506px;
padding: 13px 17px 12px 17px; padding: 13px 17px 12px 17px;
margin: 0 0 0 43px; margin: 0 0 0 43px;
} }
#todo-list li.editing .view { .todo-list li.editing .view {
display: none; display: none;
} }
#todo-list li .toggle { .todo-list li .toggle {
text-align: center; text-align: center;
width: 40px; width: 40px;
/* auto, since non-WebKit browsers doesn't support input styling */ /* auto, since non-WebKit browsers doesn't support input styling */
...@@ -191,21 +182,20 @@ label[for='toggle-all'] { ...@@ -191,21 +182,20 @@ label[for='toggle-all'] {
margin: auto 0; margin: auto 0;
border: none; /* Mobile Safari */ border: none; /* Mobile Safari */
-webkit-appearance: none; -webkit-appearance: none;
-ms-appearance: none;
appearance: none; appearance: none;
} }
#todo-list li .toggle:after { .todo-list li .toggle:after {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#ededed" stroke-width="3"/></svg>'); content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#ededed" stroke-width="3"/></svg>');
} }
#todo-list li .toggle:checked:after { .todo-list li .toggle:checked:after {
content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#bddad5" stroke-width="3"/><path fill="#5dc2af" d="M72 25L42 71 27 56l-4 4 20 20 34-52z"/></svg>'); content: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="40" height="40" viewBox="-10 -18 100 135"><circle cx="50" cy="50" r="50" fill="none" stroke="#bddad5" stroke-width="3"/><path fill="#5dc2af" d="M72 25L42 71 27 56l-4 4 20 20 34-52z"/></svg>');
} }
#todo-list li label { .todo-list li label {
white-space: pre; white-space: pre-line;
word-break: break-word; word-break: break-all;
padding: 15px 60px 15px 15px; padding: 15px 60px 15px 15px;
margin-left: 45px; margin-left: 45px;
display: block; display: block;
...@@ -213,12 +203,12 @@ label[for='toggle-all'] { ...@@ -213,12 +203,12 @@ label[for='toggle-all'] {
transition: color 0.4s; transition: color 0.4s;
} }
#todo-list li.completed label { .todo-list li.completed label {
color: #d9d9d9; color: #d9d9d9;
text-decoration: line-through; text-decoration: line-through;
} }
#todo-list li .destroy { .todo-list li .destroy {
display: none; display: none;
position: absolute; position: absolute;
top: 0; top: 0;
...@@ -233,27 +223,27 @@ label[for='toggle-all'] { ...@@ -233,27 +223,27 @@ label[for='toggle-all'] {
transition: color 0.2s ease-out; transition: color 0.2s ease-out;
} }
#todo-list li .destroy:hover { .todo-list li .destroy:hover {
color: #af5b5e; color: #af5b5e;
} }
#todo-list li .destroy:after { .todo-list li .destroy:after {
content: '×'; content: '×';
} }
#todo-list li:hover .destroy { .todo-list li:hover .destroy {
display: block; display: block;
} }
#todo-list li .edit { .todo-list li .edit {
display: none; display: none;
} }
#todo-list li.editing:last-child { .todo-list li.editing:last-child {
margin-bottom: -1px; margin-bottom: -1px;
} }
#footer { .footer {
color: #777; color: #777;
padding: 10px 15px; padding: 10px 15px;
height: 20px; height: 20px;
...@@ -261,7 +251,7 @@ label[for='toggle-all'] { ...@@ -261,7 +251,7 @@ label[for='toggle-all'] {
border-top: 1px solid #e6e6e6; border-top: 1px solid #e6e6e6;
} }
#footer:before { .footer:before {
content: ''; content: '';
position: absolute; position: absolute;
right: 0; right: 0;
...@@ -276,16 +266,16 @@ label[for='toggle-all'] { ...@@ -276,16 +266,16 @@ label[for='toggle-all'] {
0 17px 2px -6px rgba(0, 0, 0, 0.2); 0 17px 2px -6px rgba(0, 0, 0, 0.2);
} }
#todo-count { .todo-count {
float: left; float: left;
text-align: left; text-align: left;
} }
#todo-count strong { .todo-count strong {
font-weight: 300; font-weight: 300;
} }
#filters { .filters {
margin: 0; margin: 0;
padding: 0; padding: 0;
list-style: none; list-style: none;
...@@ -294,11 +284,11 @@ label[for='toggle-all'] { ...@@ -294,11 +284,11 @@ label[for='toggle-all'] {
left: 0; left: 0;
} }
#filters li { .filters li {
display: inline; display: inline;
} }
#filters li a { .filters li a {
color: inherit; color: inherit;
margin: 3px; margin: 3px;
padding: 3px 7px; padding: 3px 7px;
...@@ -307,39 +297,29 @@ label[for='toggle-all'] { ...@@ -307,39 +297,29 @@ label[for='toggle-all'] {
border-radius: 3px; border-radius: 3px;
} }
#filters li a.selected, .filters li a.selected,
#filters li a:hover { .filters li a:hover {
border-color: rgba(175, 47, 47, 0.1); border-color: rgba(175, 47, 47, 0.1);
} }
#filters li a.selected { .filters li a.selected {
border-color: rgba(175, 47, 47, 0.2); border-color: rgba(175, 47, 47, 0.2);
} }
#clear-completed, .clear-completed,
html #clear-completed:active { html .clear-completed:active {
float: right; float: right;
position: relative; position: relative;
line-height: 20px; line-height: 20px;
text-decoration: none; text-decoration: none;
cursor: pointer; cursor: pointer;
visibility: hidden;
position: relative;
}
#clear-completed::after {
visibility: visible;
content: 'Clear completed';
position: absolute;
right: 0;
white-space: nowrap;
} }
#clear-completed:hover::after { .clear-completed:hover {
text-decoration: underline; text-decoration: underline;
} }
#info { .info {
margin: 65px auto 0; margin: 65px auto 0;
color: #bfbfbf; color: #bfbfbf;
font-size: 10px; font-size: 10px;
...@@ -347,17 +327,17 @@ html #clear-completed:active { ...@@ -347,17 +327,17 @@ html #clear-completed:active {
text-align: center; text-align: center;
} }
#info p { .info p {
line-height: 1; line-height: 1;
} }
#info a { .info a {
color: inherit; color: inherit;
text-decoration: none; text-decoration: none;
font-weight: 400; font-weight: 400;
} }
#info a:hover { .info a:hover {
text-decoration: underline; text-decoration: underline;
} }
...@@ -366,16 +346,16 @@ html #clear-completed:active { ...@@ -366,16 +346,16 @@ html #clear-completed:active {
Can't use it globally since it destroys checkboxes in Firefox Can't use it globally since it destroys checkboxes in Firefox
*/ */
@media screen and (-webkit-min-device-pixel-ratio:0) { @media screen and (-webkit-min-device-pixel-ratio:0) {
#toggle-all, .toggle-all,
#todo-list li .toggle { .todo-list li .toggle {
background: none; background: none;
} }
#todo-list li .toggle { .todo-list li .toggle {
height: 40px; height: 40px;
} }
#toggle-all { .toggle-all {
-webkit-transform: rotate(90deg); -webkit-transform: rotate(90deg);
transform: rotate(90deg); transform: rotate(90deg);
-webkit-appearance: none; -webkit-appearance: none;
...@@ -384,11 +364,11 @@ html #clear-completed:active { ...@@ -384,11 +364,11 @@ html #clear-completed:active {
} }
@media (max-width: 430px) { @media (max-width: 430px) {
#footer { .footer {
height: 50px; height: 50px;
} }
#filters { .filters {
bottom: 10px; bottom: 10px;
} }
} }
...@@ -116,7 +116,12 @@ ...@@ -116,7 +116,12 @@
})({}); })({});
if (location.hostname === 'todomvc.com') { if (location.hostname === 'todomvc.com') {
window._gaq = [['_setAccount','UA-31081062-1'],['_trackPageview']];(function(d,t){var g=d.createElement(t),s=d.getElementsByTagName(t)[0];g.src='//www.google-analytics.com/ga.js';s.parentNode.insertBefore(g,s)}(document,'script')); (function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-31081062-1', 'auto');
ga('send', 'pageview');
} }
/* jshint ignore:end */ /* jshint ignore:end */
...@@ -230,7 +235,7 @@ ...@@ -230,7 +235,7 @@
xhr.onload = function (e) { xhr.onload = function (e) {
var parsedResponse = JSON.parse(e.target.responseText); var parsedResponse = JSON.parse(e.target.responseText);
if (parsedResponse instanceof Array) { if (parsedResponse instanceof Array) {
var count = parsedResponse.length var count = parsedResponse.length;
if (count !== 0) { if (count !== 0) {
issueLink.innerHTML = 'This app has ' + count + ' open issues'; issueLink.innerHTML = 'This app has ' + count + ' open issues';
document.getElementById('issue-count').style.display = 'inline'; document.getElementById('issue-count').style.display = 'inline';
......
/*
* SystemJS Polyfills for URL and Promise providing IE8+ Support
*/
!function(t){!function(t){function e(t,n){if("string"!=typeof t)throw new TypeError("URL must be a string");var o=String(t).replace(/^\s+|\s+$/g,"").match(/^([^:\/?#]+:)?(?:\/\/(?:([^:@\/?#]*)(?::([^:@\/?#]*))?@)?(([^:\/?#]*)(?::(\d*))?))?([^?#]*)(\?[^#]*)?(#[\s\S]*)?/);if(!o)throw new RangeError;var r=o[1]||"",i=o[2]||"",u=o[3]||"",c=o[4]||"",s=o[5]||"",f=o[6]||"",a=o[7]||"",h=o[8]||"",p=o[9]||"";if(void 0!==n){var l=n instanceof e?n:new e(n),d=""===r&&""===c&&""===i;d&&""===a&&""===h&&(h=l.search),d&&"/"!==a.charAt(0)&&(a=""!==a?(""===l.host&&""===l.username||""!==l.pathname?"":"/")+l.pathname.slice(0,l.pathname.lastIndexOf("/")+1)+a:l.pathname);var y=[];a.replace(/^(\.\.?(\/|$))+/,"").replace(/\/(\.(\/|$))+/g,"/").replace(/\/\.\.$/,"/../").replace(/\/?[^\/]*/g,function(t){"/.."===t?y.pop():y.push(t)}),a=y.join("").replace(/^\//,"/"===a.charAt(0)?"/":""),d&&(f=l.port,s=l.hostname,c=l.host,u=l.password,i=l.username),""===r&&(r=l.protocol)}"file:"==r&&(a=a.replace(/\\/g,"/")),this.origin=r+(""!==r||""!==c?"//":"")+c,this.href=r+(""!==r||""!==c?"//":"")+(""!==i?i+(""!==u?":"+u:"")+"@":"")+c+a+h+p,this.protocol=r,this.username=i,this.password=u,this.host=c,this.hostname=s,this.port=f,this.pathname=a,this.search=h,this.hash=p}t.URLPolyfill=e}("undefined"!=typeof self?self:global),!function(e){"object"==typeof exports?module.exports=e():"function"==typeof t&&t.amd?t(e):"undefined"!=typeof window?window.Promise=e():"undefined"!=typeof global?global.Promise=e():"undefined"!=typeof self&&(self.Promise=e())}(function(){var t;return function e(t,n,o){function r(u,c){if(!n[u]){if(!t[u]){var s="function"==typeof require&&require;if(!c&&s)return s(u,!0);if(i)return i(u,!0);throw new Error("Cannot find module '"+u+"'")}var f=n[u]={exports:{}};t[u][0].call(f.exports,function(e){var n=t[u][1][e];return r(n?n:e)},f,f.exports,e,t,n,o)}return n[u].exports}for(var i="function"==typeof require&&require,u=0;u<o.length;u++)r(o[u]);return r}({1:[function(t,e,n){var o=t("../lib/decorators/unhandledRejection"),r=o(t("../lib/Promise"));e.exports="undefined"!=typeof global?global.Promise=r:"undefined"!=typeof self?self.Promise=r:r},{"../lib/Promise":2,"../lib/decorators/unhandledRejection":4}],2:[function(e,n,o){!function(t){"use strict";t(function(t){var e=t("./makePromise"),n=t("./Scheduler"),o=t("./env").asap;return e({scheduler:new n(o)})})}("function"==typeof t&&t.amd?t:function(t){n.exports=t(e)})},{"./Scheduler":3,"./env":5,"./makePromise":7}],3:[function(e,n,o){!function(t){"use strict";t(function(){function t(t){this._async=t,this._running=!1,this._queue=this,this._queueLen=0,this._afterQueue={},this._afterQueueLen=0;var e=this;this.drain=function(){e._drain()}}return t.prototype.enqueue=function(t){this._queue[this._queueLen++]=t,this.run()},t.prototype.afterQueue=function(t){this._afterQueue[this._afterQueueLen++]=t,this.run()},t.prototype.run=function(){this._running||(this._running=!0,this._async(this.drain))},t.prototype._drain=function(){for(var t=0;t<this._queueLen;++t)this._queue[t].run(),this._queue[t]=void 0;for(this._queueLen=0,this._running=!1,t=0;t<this._afterQueueLen;++t)this._afterQueue[t].run(),this._afterQueue[t]=void 0;this._afterQueueLen=0},t})}("function"==typeof t&&t.amd?t:function(t){n.exports=t()})},{}],4:[function(e,n,o){!function(t){"use strict";t(function(t){function e(t){throw t}function n(){}var o=t("../env").setTimer,r=t("../format");return function(t){function i(t){t.handled||(l.push(t),a("Potentially unhandled rejection ["+t.id+"] "+r.formatError(t.value)))}function u(t){var e=l.indexOf(t);e>=0&&(l.splice(e,1),h("Handled previous rejection ["+t.id+"] "+r.formatObject(t.value)))}function c(t,e){p.push(t,e),null===d&&(d=o(s,0))}function s(){for(d=null;p.length>0;)p.shift()(p.shift())}var f,a=n,h=n;"undefined"!=typeof console&&(f=console,a="undefined"!=typeof f.error?function(t){f.error(t)}:function(t){f.log(t)},h="undefined"!=typeof f.info?function(t){f.info(t)}:function(t){f.log(t)}),t.onPotentiallyUnhandledRejection=function(t){c(i,t)},t.onPotentiallyUnhandledRejectionHandled=function(t){c(u,t)},t.onFatalRejection=function(t){c(e,t.value)};var p=[],l=[],d=null;return t}})}("function"==typeof t&&t.amd?t:function(t){n.exports=t(e)})},{"../env":5,"../format":6}],5:[function(e,n,o){!function(t){"use strict";t(function(t){function e(){return"undefined"!=typeof process&&null!==process&&"function"==typeof process.nextTick}function n(){return"function"==typeof MutationObserver&&MutationObserver||"function"==typeof WebKitMutationObserver&&WebKitMutationObserver}function o(t){function e(){var t=n;n=void 0,t()}var n,o=document.createTextNode(""),r=new t(e);r.observe(o,{characterData:!0});var i=0;return function(t){n=t,o.data=i^=1}}var r,i="undefined"!=typeof setTimeout&&setTimeout,u=function(t,e){return setTimeout(t,e)},c=function(t){return clearTimeout(t)},s=function(t){return i(t,0)};if(e())s=function(t){return process.nextTick(t)};else if(r=n())s=o(r);else if(!i){var f=t,a=f("vertx");u=function(t,e){return a.setTimer(e,t)},c=a.cancelTimer,s=a.runOnLoop||a.runOnContext}return{setTimer:u,clearTimer:c,asap:s}})}("function"==typeof t&&t.amd?t:function(t){n.exports=t(e)})},{}],6:[function(e,n,o){!function(t){"use strict";t(function(){function t(t){var n="object"==typeof t&&null!==t&&t.stack?t.stack:e(t);return t instanceof Error?n:n+" (WARNING: non-Error used)"}function e(t){var e=String(t);return"[object Object]"===e&&"undefined"!=typeof JSON&&(e=n(t,e)),e}function n(t,e){try{return JSON.stringify(t)}catch(n){return e}}return{formatError:t,formatObject:e,tryStringify:n}})}("function"==typeof t&&t.amd?t:function(t){n.exports=t()})},{}],7:[function(e,n,o){!function(t){"use strict";t(function(){return function(t){function e(t,e){this._handler=t===j?e:n(t)}function n(t){function e(t){r.resolve(t)}function n(t){r.reject(t)}function o(t){r.notify(t)}var r=new b;try{t(e,n,o)}catch(i){n(i)}return r}function o(t){return k(t)?t:new e(j,new x(v(t)))}function r(t){return new e(j,new x(new q(t)))}function i(){return Z}function u(){return new e(j,new b)}function c(t,e){var n=new b(t.receiver,t.join().context);return new e(j,n)}function s(t){return a(z,null,t)}function f(t,e){return a(J,t,e)}function a(t,n,o){function r(e,r,u){u.resolved||h(o,i,e,t(n,r,e),u)}function i(t,e,n){a[t]=e,0===--f&&n.become(new R(a))}for(var u,c="function"==typeof n?r:i,s=new b,f=o.length>>>0,a=new Array(f),p=0;p<o.length&&!s.resolved;++p)u=o[p],void 0!==u||p in o?h(o,c,p,u,s):--f;return 0===f&&s.become(new R(a)),new e(j,s)}function h(t,e,n,o,r){if(U(o)){var i=m(o),u=i.state();0===u?i.fold(e,n,void 0,r):u>0?e(n,i.value,r):(r.become(i),p(t,n+1,i))}else e(n,o,r)}function p(t,e,n){for(var o=e;o<t.length;++o)l(v(t[o]),n)}function l(t,e){if(t!==e){var n=t.state();0===n?t.visit(t,void 0,t._unreport):0>n&&t._unreport()}}function d(t){return"object"!=typeof t||null===t?r(new TypeError("non-iterable passed to race()")):0===t.length?i():1===t.length?o(t[0]):y(t)}function y(t){var n,o,r,i=new b;for(n=0;n<t.length;++n)if(o=t[n],void 0!==o||n in t){if(r=v(o),0!==r.state()){i.become(r),p(t,n+1,r);break}r.visit(i,i.resolve,i.reject)}return new e(j,i)}function v(t){return k(t)?t._handler.join():U(t)?w(t):new R(t)}function m(t){return k(t)?t._handler.join():w(t)}function w(t){try{var e=t.then;return"function"==typeof e?new g(e,t):new R(t)}catch(n){return new q(n)}}function j(){}function _(){}function b(t,n){e.createContext(this,n),this.consumers=void 0,this.receiver=t,this.handler=void 0,this.resolved=!1}function x(t){this.handler=t}function g(t,e){b.call(this),K.enqueue(new L(t,e,this))}function R(t){e.createContext(this),this.value=t}function q(t){e.createContext(this),this.id=++X,this.value=t,this.handled=!1,this.reported=!1,this._report()}function P(t,e){this.rejection=t,this.context=e}function C(t){this.rejection=t}function T(){return new q(new TypeError("Promise cycle"))}function O(t,e){this.continuation=t,this.handler=e}function E(t,e){this.handler=e,this.value=t}function L(t,e,n){this._then=t,this.thenable=e,this.resolver=n}function Q(t,e,n,o,r){try{t.call(e,n,o,r)}catch(i){o(i)}}function S(t,e,n,o){this.f=t,this.z=e,this.c=n,this.to=o,this.resolver=V,this.receiver=this}function k(t){return t instanceof e}function U(t){return("object"==typeof t||"function"==typeof t)&&null!==t}function H(t,n,o,r){return"function"!=typeof t?r.become(n):(e.enterContext(n),M(t,n.value,o,r),void e.exitContext())}function N(t,n,o,r,i){return"function"!=typeof t?i.become(o):(e.enterContext(o),$(t,n,o.value,r,i),void e.exitContext())}function A(t,n,o,r,i){return"function"!=typeof t?i.notify(n):(e.enterContext(o),F(t,n,r,i),void e.exitContext())}function J(t,e,n){try{return t(e,n)}catch(o){return r(o)}}function M(t,e,n,o){try{o.become(v(t.call(n,e)))}catch(r){o.become(new q(r))}}function $(t,e,n,o,r){try{t.call(o,e,n,r)}catch(i){r.become(new q(i))}}function F(t,e,n,o){try{o.notify(t.call(n,e))}catch(r){o.notify(r)}}function W(t,e){e.prototype=G(t.prototype),e.prototype.constructor=e}function z(t,e){return e}function B(){}function I(){return"undefined"!=typeof process&&null!==process&&"function"==typeof process.emit?function(t,e){return"unhandledRejection"===t?process.emit(t,e.value,e):process.emit(t,e)}:"undefined"!=typeof self&&"function"==typeof CustomEvent?function(t,e,n){var o=!1;try{var r=new n("unhandledRejection");o=r instanceof n}catch(i){}return o?function(t,o){var r=new n(t,{detail:{reason:o.value,key:o},bubbles:!1,cancelable:!0});return!e.dispatchEvent(r)}:t}(B,self,CustomEvent):B}var K=t.scheduler,D=I(),G=Object.create||function(t){function e(){}return e.prototype=t,new e};e.resolve=o,e.reject=r,e.never=i,e._defer=u,e._handler=v,e.prototype.then=function(t,e,n){var o=this._handler,r=o.join().state();if("function"!=typeof t&&r>0||"function"!=typeof e&&0>r)return new this.constructor(j,o);var i=this._beget(),u=i._handler;return o.chain(u,o.receiver,t,e,n),i},e.prototype["catch"]=function(t){return this.then(void 0,t)},e.prototype._beget=function(){return c(this._handler,this.constructor)},e.all=s,e.race=d,e._traverse=f,e._visitRemaining=p,j.prototype.when=j.prototype.become=j.prototype.notify=j.prototype.fail=j.prototype._unreport=j.prototype._report=B,j.prototype._state=0,j.prototype.state=function(){return this._state},j.prototype.join=function(){for(var t=this;void 0!==t.handler;)t=t.handler;return t},j.prototype.chain=function(t,e,n,o,r){this.when({resolver:t,receiver:e,fulfilled:n,rejected:o,progress:r})},j.prototype.visit=function(t,e,n,o){this.chain(V,t,e,n,o)},j.prototype.fold=function(t,e,n,o){this.when(new S(t,e,n,o))},W(j,_),_.prototype.become=function(t){t.fail()};var V=new _;W(j,b),b.prototype._state=0,b.prototype.resolve=function(t){this.become(v(t))},b.prototype.reject=function(t){this.resolved||this.become(new q(t))},b.prototype.join=function(){if(!this.resolved)return this;for(var t=this;void 0!==t.handler;)if(t=t.handler,t===this)return this.handler=T();return t},b.prototype.run=function(){var t=this.consumers,e=this.handler;this.handler=this.handler.join(),this.consumers=void 0;for(var n=0;n<t.length;++n)e.when(t[n])},b.prototype.become=function(t){this.resolved||(this.resolved=!0,this.handler=t,void 0!==this.consumers&&K.enqueue(this),void 0!==this.context&&t._report(this.context))},b.prototype.when=function(t){this.resolved?K.enqueue(new O(t,this.handler)):void 0===this.consumers?this.consumers=[t]:this.consumers.push(t)},b.prototype.notify=function(t){this.resolved||K.enqueue(new E(t,this))},b.prototype.fail=function(t){var e="undefined"==typeof t?this.context:t;this.resolved&&this.handler.join().fail(e)},b.prototype._report=function(t){this.resolved&&this.handler.join()._report(t)},b.prototype._unreport=function(){this.resolved&&this.handler.join()._unreport()},W(j,x),x.prototype.when=function(t){K.enqueue(new O(t,this))},x.prototype._report=function(t){this.join()._report(t)},x.prototype._unreport=function(){this.join()._unreport()},W(b,g),W(j,R),R.prototype._state=1,R.prototype.fold=function(t,e,n,o){N(t,e,this,n,o)},R.prototype.when=function(t){H(t.fulfilled,this,t.receiver,t.resolver)};var X=0;W(j,q),q.prototype._state=-1,q.prototype.fold=function(t,e,n,o){o.become(this)},q.prototype.when=function(t){"function"==typeof t.rejected&&this._unreport(),H(t.rejected,this,t.receiver,t.resolver)},q.prototype._report=function(t){K.afterQueue(new P(this,t))},q.prototype._unreport=function(){this.handled||(this.handled=!0,K.afterQueue(new C(this)))},q.prototype.fail=function(t){this.reported=!0,D("unhandledRejection",this),e.onFatalRejection(this,void 0===t?this.context:t)},P.prototype.run=function(){this.rejection.handled||this.rejection.reported||(this.rejection.reported=!0,D("unhandledRejection",this.rejection)||e.onPotentiallyUnhandledRejection(this.rejection,this.context))},C.prototype.run=function(){this.rejection.reported&&(D("rejectionHandled",this.rejection)||e.onPotentiallyUnhandledRejectionHandled(this.rejection))},e.createContext=e.enterContext=e.exitContext=e.onPotentiallyUnhandledRejection=e.onPotentiallyUnhandledRejectionHandled=e.onFatalRejection=B;var Y=new j,Z=new e(j,Y);return O.prototype.run=function(){this.handler.join().when(this.continuation)},E.prototype.run=function(){var t=this.handler.consumers;if(void 0!==t)for(var e,n=0;n<t.length;++n)e=t[n],A(e.progress,this.value,this.handler,e.receiver,e.resolver)},L.prototype.run=function(){function t(t){o.resolve(t)}function e(t){o.reject(t)}function n(t){o.notify(t)}var o=this.resolver;Q(this._then,this.thenable,t,e,n)},S.prototype.fulfilled=function(t){this.f.call(this.c,this.z,t,this.to)},S.prototype.rejected=function(t){this.to.reject(t)},S.prototype.progress=function(t){this.to.notify(t)},e}})}("function"==typeof t&&t.amd?t:function(t){n.exports=t()})},{}]},{},[1])(1)}),"undefined"!=typeof systemJSBootstrap&&systemJSBootstrap()}();
//# sourceMappingURL=system-polyfills.js.map
!function($__global){$__global.upgradeSystemLoader=function(){function e(e){var t=String(e).replace(/^\s+|\s+$/g,"").match(/^([^:\/?#]+:)?(\/\/(?:[^:@\/?#]*(?::[^:@\/?#]*)?@)?(([^:\/?#]*)(?::(\d*))?))?([^?#]*)(\?[^#]*)?(#[\s\S]*)?/);return t?{href:t[0]||"",protocol:t[1]||"",authority:t[2]||"",host:t[3]||"",hostname:t[4]||"",port:t[5]||"",pathname:t[6]||"",search:t[7]||"",hash:t[8]||""}:null}function t(t,a){function r(e){var t=[];return e.replace(/^(\.\.?(\/|$))+/,"").replace(/\/(\.(\/|$))+/g,"/").replace(/\/\.\.$/,"/../").replace(/\/?[^\/]*/g,function(e){"/.."===e?t.pop():t.push(e)}),t.join("").replace(/^\//,"/"===e.charAt(0)?"/":"")}return a=e(a||""),t=e(t||""),a&&t?(a.protocol||t.protocol)+(a.protocol||a.authority?a.authority:t.authority)+r(a.protocol||a.authority||"/"===a.pathname.charAt(0)?a.pathname:a.pathname?(t.authority&&!t.pathname?"/":"")+t.pathname.slice(0,t.pathname.lastIndexOf("/")+1)+a.pathname:t.pathname)+(a.protocol||a.authority||a.pathname?a.search:a.search||t.search)+a.hash:null}function a(e){function r(e,t){t._extensions=[];for(var a=0,r=e.length;r>a;a++)e[a](t)}var n=e["import"];e["import"]=function(e,t){return n.call(this,e,t).then(function(e){return e.__useDefault?e["default"]:e})},e.set("@empty",e.newModule({})),"undefined"!=typeof require&&(e._nodeRequire=require),e.config=function(e){for(var t in e){var a=e[t];if("object"!=typeof a||a instanceof Array)this[t]=a;else{this[t]=this[t]||{};for(var r in a)this[t][r]=a[r]}}};var o;if("undefined"==typeof window&&"undefined"==typeof WorkerGlobalScope)o="file:"+process.cwd()+"/";else if("undefined"==typeof window)o=e.global.location.href;else if(o=document.baseURI,!o){var s=document.getElementsByTagName("base");o=s[0]&&s[0].href||window.location.href}var i,l=e.locate;e.locate=function(e){return this.baseURL!=i&&(i=t(o,this.baseURL),"/"!=i.substr(i.length-1,1)&&(i+="/"),this.baseURL=i),Promise.resolve(l.call(this,e))},e._extensions=e._extensions||[],e._extensions.push(a),e.clone=function(){var e=this,t=new LoaderPolyfill(g);return t.baseURL=e.baseURL,t.paths={"*":"*.js"},r(e._extensions,t),t}}function r(e){function t(e,t){var a=e.meta&&e.meta[t.name];if(a)for(var r in a)t.metadata[r]=t.metadata[r]||a[r]}var a=/^(\s*\/\*.*\*\/|\s*\/\/[^\n]*|\s*"[^"]+"\s*;?|\s*'[^']+'\s*;?)+/,n=/\/\*.*\*\/|\/\/[^\n]*|"[^"]+"\s*;?|'[^']+'\s*;?/g;e.meta={},e._extensions=e._extensions||[],e._extensions.push(r);var o=e.locate;e.locate=function(e){return t(this,e),o.call(this,e)};var s=e.translate;e.translate=function(e){var r=e.source.match(a);if(r)for(var o=r[0].match(n),i=0;i<o.length;i++){var l=o[i].length,u=o[i].substr(0,1);if(";"==o[i].substr(l-1,1)&&l--,'"'==u||"'"==u){var d=o[i].substr(1,o[i].length-3),c=d.substr(0,d.indexOf(" "));if(c){var f=d.substr(c.length+1,d.length-c.length-1);e.metadata[c]instanceof Array?e.metadata[c].push(f):e.metadata[c]||(e.metadata[c]=f)}}}return t(this,e),s.call(this,e)}}function n(e){function a(e){var a=this;"@traceur"==e.name&&(g=m);var r,n=e.source.lastIndexOf("\n");-1!=n&&"//# sourceMappingURL="==e.source.substr(n+1,21)&&(r=e.source.substr(n+22,e.source.length-n-22),"undefined"!=typeof t&&(r=t(e.address,r))),__eval(e.source,e.address,r),"@traceur"==e.name&&(a.global.traceurSystem=a.global.System,a.global.System=g)}function r(e){for(var t=[],a=0,r=e.length;r>a;a++)-1==h.call(t,e[a])&&t.push(e[a]);return t}function o(t,a,r,n){"string"!=typeof t&&(n=r,r=a,a=t,t=null),b=!0;var o;if(o="boolean"==typeof r?{declarative:!1,deps:a,execute:n,executingRequire:r}:{declarative:!0,deps:a,declare:r},t)o.name=t,t in e.defined||(e.defined[t]=o);else if(o.declarative){if(v)throw new TypeError("Multiple anonymous System.register calls in the same module file.");v=o}}function s(e){if(!e.register){e.register=o,e.defined||(e.defined={});var t=e.onScriptLoad;e.onScriptLoad=function(e){t(e),v&&(e.metadata.entry=v),b&&(e.metadata.format=e.metadata.format||"register",e.metadata.registered=!0)}}}function i(e,t,a){if(a[e.groupIndex]=a[e.groupIndex]||[],-1==h.call(a[e.groupIndex],e)){a[e.groupIndex].push(e);for(var r=0,n=e.normalizedDeps.length;n>r;r++){var o=e.normalizedDeps[r],s=t.defined[o];if(s&&!s.evaluated){var l=e.groupIndex+(s.declarative!=e.declarative);if(void 0===s.groupIndex||s.groupIndex<l){if(void 0!==s.groupIndex&&(a[s.groupIndex].splice(h.call(a[s.groupIndex],s),1),0==a[s.groupIndex].length))throw new TypeError("Mixed dependency cycle detected");s.groupIndex=l}i(s,t,a)}}}}function l(e,t){var a=t.defined[e];if(!a.module){a.groupIndex=0;var r=[];i(a,t,r);for(var n=!!a.declarative==r.length%2,o=r.length-1;o>=0;o--){for(var s=r[o],l=0;l<s.length;l++){var u=s[l];n?d(u,t):f(u,t)}n=!n}}}function u(e){return x[e]||(x[e]={name:e,dependencies:[],exports:{},importers:[]})}function d(e,t){if(!e.module){var a=e.module=u(e.name),r=e.module.exports,n=e.declare.call(t.global,function(e,t){a.locked=!0,r[e]=t;for(var n=0,o=a.importers.length;o>n;n++){var s=a.importers[n];if(!s.locked){var i=h.call(s.dependencies,a);s.setters[i](r)}}return a.locked=!1,t});if(a.setters=n.setters,a.execute=n.execute,!a.setters||!a.execute)throw new TypeError("Invalid System.register form for "+e.name);for(var o=0,s=e.normalizedDeps.length;s>o;o++){var i,l=e.normalizedDeps[o],c=t.defined[l],f=x[l];f?i=f.exports:c&&!c.declarative?i={"default":c.module.exports,__useDefault:!0}:c?(d(c,t),f=c.module,i=f.exports):i=t.get(l),f&&f.importers?(f.importers.push(a),a.dependencies.push(f)):a.dependencies.push(null),a.setters[o]&&a.setters[o](i)}}}function c(e,t){var a,r=t.defined[e];if(r)r.declarative?p(e,[],t):r.evaluated||f(r,t),a=r.module.exports;else if(a=t.get(e),!a)throw new Error("Unable to load dependency "+e+".");return(!r||r.declarative)&&a&&a.__useDefault?a["default"]:a}function f(e,t){if(!e.module){var a={},r=e.module={exports:a,id:e.name};if(!e.executingRequire)for(var n=0,o=e.normalizedDeps.length;o>n;n++){var s=e.normalizedDeps[n],i=t.defined[s];i&&f(i,t)}e.evaluated=!0;var l=e.execute.call(t.global,function(a){for(var r=0,n=e.deps.length;n>r;r++)if(e.deps[r]==a)return c(e.normalizedDeps[r],t);throw new TypeError("Module "+a+" not declared as a dependency.")},a,r);l&&(r.exports=l)}}function p(e,t,a){var r=a.defined[e];if(r&&!r.evaluated&&r.declarative){t.push(e);for(var n=0,o=r.normalizedDeps.length;o>n;n++){var s=r.normalizedDeps[n];-1==h.call(t,s)&&(a.defined[s]?p(s,t,a):a.get(s))}r.evaluated||(r.evaluated=!0,r.module.execute.call(a.global))}}"undefined"==typeof h&&(h=Array.prototype.indexOf),"undefined"==typeof __eval&&(__eval=0||eval),e._extensions=e._extensions||[],e._extensions.push(n);var g;e.__exec=a;var v,b;s(e);var x={},_=/System\.register/,y=e.fetch;e.fetch=function(e){var t=this;return s(t),t.defined[e.name]?(e.metadata.format="defined",""):(v=null,b=!1,y.call(t,e))};var w=e.translate;e.translate=function(e){return this.register=o,this.__exec=a,e.metadata.deps=e.metadata.deps||[],Promise.resolve(w.call(this,e)).then(function(t){return(e.metadata.init||e.metadata.exports)&&(e.metadata.format=e.metadata.format||"global"),("register"==e.metadata.format||!e.metadata.format&&e.source.match(_))&&(e.metadata.format="register"),t})};var S=e.instantiate;e.instantiate=function(e){var t,a=this;if(a.defined[e.name])t=a.defined[e.name],t.deps=t.deps.concat(e.metadata.deps);else if(e.metadata.entry)t=e.metadata.entry;else if(e.metadata.execute)t={declarative:!1,deps:e.metadata.deps||[],execute:e.metadata.execute,executingRequire:e.metadata.executingRequire};else if("register"==e.metadata.format){v=null,b=!1;var n=a.global.System;if(a.global.System=a,a.__exec(e),a.global.System=n,v&&(t=v),!t&&m.defined[e.name]&&(t=m.defined[e.name]),!b&&!e.metadata.registered)throw new TypeError(e.name+" detected as System.register but didn't execute.")}if(!t&&"es6"!=e.metadata.format)return{deps:[],execute:function(){return a.newModule({})}};if(!t)return S.call(this,e);a.defined[e.name]=t,t.deps=r(t.deps),t.name=e.name;for(var o=[],s=0,i=t.deps.length;i>s;s++)o.push(Promise.resolve(a.normalize(t.deps[s],e.name)));return Promise.all(o).then(function(r){return t.normalizedDeps=r,{deps:t.deps,execute:function(){l(e.name,a),p(e.name,[],a),a.defined[e.name]=void 0;var r=a.newModule(t.declarative?t.module.exports:{"default":t.module.exports,__useDefault:!0});return r}}})}}function o(e){function t(t){a=t,r="6to5"==this.parser?"to5":a,n="@"+a,"traceur"==r&&(s="@"+a+"-runtime",i="$"+r+"Runtime"),"undefined"!=typeof $__curScript&&(e.paths[n]||(e.paths[n]=$__curScript.getAttribute("data-"+e.parser+"-src")||($__curScript.src?$__curScript.src.substr(0,$__curScript.src.lastIndexOf("/")+1):e.baseURL+(e.baseURL.lastIndexOf("/")==e.baseURL.length-1?"":"/"))+e.parser+".js"),s&&!e.paths[s]&&(e.paths[s]=$__curScript.getAttribute("data-"+e.parser+"-runtime-src")||e.paths[n].replace(/\.js$/,"-runtime.js")))}e._extensions.push(o);var a,r,n,s,i,l="undefined"!=typeof window,u=/(^\s*|[}\);\n]\s*)(import\s+(['"]|(\*\s+as\s+)?[^"'\(\)\n;]+\s+from\s+['"]|\{)|export\s+\*\s+from\s+["']|export\s+(\{|default|function|class|var|const|let|async\s+function))/,d=e.translate;e.translate=function(e){this.parser!==a&&t(this.parser);var o=this;if(e.name==n||e.name==s)return d.call(o,e);if(("es6"==e.metadata.format||!e.metadata.format&&e.source.match(u))&&(e.metadata.format="es6",l&&!o.global[r]))return o["import"](n).then(function(){return d.call(o,e)});if(l&&i&&!o.global[i]&&-1!=e.source.indexOf(i)){var c=$__global.System;return o["import"](s).then(function(){return $__global.System=c,d.call(o,e)})}return d.call(o,e)};var c=e.instantiate;e.instantiate=function(e){var t=this;return!l||e.name!=n&&e.name!=s?c.call(t,e):(t.__exec(e),{deps:[],execute:function(){return t.newModule({})}})}}function s(e){function t(e,t){for(var a=e.split(".");a.length;)t=t[a.shift()];return t}function a(e){if(!e.has("@@global-helpers")){var a,r,n=e.global.hasOwnProperty,o={};e.set("@@global-helpers",e.newModule({prepareGlobal:function(t,s){for(var i=0;i<s.length;i++){var l=o[s[i]];if(l)for(var u in l)e.global[u]=l[u]}a={},r=["indexedDB","sessionStorage","localStorage","clipboardData","frames","webkitStorageInfo","toolbar","statusbar","scrollbars","personalbar","menubar","locationbar","webkitIndexedDB"];for(var d in e.global)if(-1==h.call(r,d)&&(!n||e.global.hasOwnProperty(d)))try{a[d]=e.global[d]}catch(c){r.push(d)}},retrieveGlobal:function(s,i,l){var u,d,c={};if(l){for(var f=[],p=0;p<deps.length;p++)f.push(require(deps[p]));u=l.apply(e.global,f)}else if(i){var m=i.split(".")[0];u=t(i,e.global),c[m]=e.global[m]}else for(var g in e.global)-1==h.call(r,g)&&(n&&!e.global.hasOwnProperty(g)||g==e.global||a[g]==e.global[g]||(c[g]=e.global[g],u?u!==e.global[g]&&(d=!0):u!==!1&&(u=e.global[g])));return o[s]=c,d?c:u}}))}}e._extensions.push(s),a(e);var r=e.instantiate;e.instantiate=function(e){var t=this;a(t);var n=e.metadata.exports;return e.metadata.format||(e.metadata.format="global"),"global"==e.metadata.format&&(e.metadata.execute=function(a,r,o){t.get("@@global-helpers").prepareGlobal(o.id,e.metadata.deps),n&&(e.source+='\nthis["'+n+'"] = '+n+";");var s=t.global.define;return t.global.define=void 0,t.global.module=void 0,t.global.exports=void 0,t.__exec(e),t.global.define=s,t.get("@@global-helpers").retrieveGlobal(o.id,n,e.metadata.init)}),r.call(t,e)}}function i(e){function t(e){r.lastIndex=0;var t=[];e.length/e.split("\n").length<200&&(e=e.replace(n,""));for(var a;a=r.exec(e);)t.push(a[1].substr(1,a[1].length-2));return t}e._extensions.push(i);var a=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.]|module\.)(exports\s*\[['"]|\exports\s*\.)|(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.])module\.exports\s*\=/,r=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF."'])require\s*\(\s*("[^"\\]*(?:\\.[^"\\]*)*"|'[^'\\]*(?:\\.[^'\\]*)*')\s*\)/g,n=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,o=e.instantiate;e.instantiate=function(n){return n.metadata.format||(a.lastIndex=0,r.lastIndex=0,(r.exec(n.source)||a.exec(n.source))&&(n.metadata.format="cjs")),"cjs"==n.metadata.format&&(n.metadata.deps=n.metadata.deps?n.metadata.deps.concat(t(n.source)):t(n.source),n.metadata.executingRequire=!0,n.metadata.execute=function(t,a,r){var o=(n.address||"").split("/");o.pop(),o=o.join("/"),m._nodeRequire&&(o=o.substr(5)),e.global._g={global:e.global,exports:a,module:r,require:t,__filename:m._nodeRequire?n.address.substr(5):n.address,__dirname:o};var s="(function(global, exports, module, require, __filename, __dirname) { "+n.source+"\n}).call(_g.exports, _g.global, _g.exports, _g.module, _g.require, _g.__filename, _g.__dirname);",i=e.global.define;e.global.define=void 0,e.__exec({name:n.name,address:n.address,source:s}),e.global.define=i,e.global._g=void 0}),o.call(this,n)}}function l(e){function t(e,t){e=e.replace(c,"");var a=e.match(m),r=(a[1].split(",")[t]||"require").replace(g,""),n=v[r]||(v[r]=new RegExp(f+r+p,"g"));n.lastIndex=0;for(var o,s=[];o=n.exec(e);)s.push(o[2]||o[3]);return s}function a(e,t,r,n){var o=this;if("object"==typeof e&&!(e instanceof Array))return a.apply(null,Array.prototype.splice.call(arguments,1,arguments.length-1));if(!(e instanceof Array)){if("string"==typeof e){var s=o.get(e);return s.__useDefault?s["default"]:s}throw new TypeError("Invalid require")}Promise.all(e.map(function(e){return o["import"](e,n)})).then(function(e){t&&t.apply(null,e)},r)}function r(e,t,r){return function(n,o,s){return"string"==typeof n?t(n):a.call(r,n,o,s,{name:e})}}function n(e){function a(a,n,o){"string"!=typeof a&&(o=n,n=a,a=null),n instanceof Array||(o=n,n=["require","exports","module"]),"function"!=typeof o&&(o=function(e){return function(){return e}}(o)),void 0===n[n.length-1]&&n.pop();var i,l,u;if(-1!=(i=h.call(n,"require"))){n.splice(i,1);var d=o.toString();n=n.concat(t(d,i))}-1!=(l=h.call(n,"exports"))&&n.splice(l,1),-1!=(u=h.call(n,"module"))&&n.splice(u,1);var c={deps:n,execute:function(t,a,d){for(var c=[],f=0;f<n.length;f++)c.push(t(n[f]));d.uri=e.baseURL+d.id,d.config=function(){},-1!=u&&c.splice(u,0,d),-1!=l&&c.splice(l,0,a),-1!=i&&c.splice(i,0,r(d.id,t,e));var p=o.apply(s,c);return"undefined"==typeof p&&d&&(p=d.exports),"undefined"!=typeof p?p:void 0}};if(a)b=0!=n.length||b||x?null:c,x=!0,e.register(a,c.deps,!1,c.execute);else{if(b)throw new TypeError("Multiple defines for anonymous module");b=c}}var n=e.onScriptLoad;e.onScriptLoad=function(e){n(e),(b||x)&&(e.metadata.format="defined",e.metadata.registered=!0),b&&(e.metadata.deps=e.metadata.deps?e.metadata.deps.concat(b.deps):b.deps,e.metadata.execute=b.execute)},a.amd={},e.amdDefine=a}function o(e){e.amdDefine||n(e),b=null,x=null;var t=e.global;_=t.module,y=t.exports,w=t.define,t.module=void 0,t.exports=void 0,t.define&&t.define===e.amdDefine||(t.define=e.amdDefine)}function i(e){var t=e.global;t.define=w,t.module=_,t.exports=y}var u="undefined"!=typeof module&&module.exports;e._extensions.push(l);var d=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.])define\s*\(\s*("[^"]+"\s*,\s*|'[^']+'\s*,\s*)?\s*(\[(\s*(("[^"]+"|'[^']+')\s*,|\/\/.*\r?\n|\/\*(.|\s)*?\*\/))*(\s*("[^"]+"|'[^']+')\s*,?)?(\s*(\/\/.*\r?\n|\/\*(.|\s)*?\*\/))*\s*\]|function\s*|{|[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*\))/,c=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,f="(?:^|[^$_a-zA-Z\\xA0-\\uFFFF.])",p="\\s*\\(\\s*(\"([^\"]+)\"|'([^']+)')\\s*\\)",m=/\(([^\)]*)\)/,g=/^\s+|\s+$/g,v={};e.amdRequire=a;var b,x,_,y,w;if(n(e),e.scriptLoader){var S=e.fetch;e.fetch=function(e){return o(this),S.call(this,e)}}var z=e.instantiate;e.instantiate=function(e){var t=this;if("amd"==e.metadata.format||!e.metadata.format&&e.source.match(d)){if(e.metadata.format="amd",t.execute!==!1&&(o(t),t.__exec(e),i(t),!b&&!x&&!u))throw new TypeError("AMD module "+e.name+" did not define");b&&(e.metadata.deps=e.metadata.deps?e.metadata.deps.concat(b.deps):b.deps,e.metadata.execute=b.execute)}return z.call(t,e)}}function u(e){function t(e,t){return e.length<t.length?!1:e.substr(0,t.length)!=t?!1:e[t.length]&&"/"!=e[t.length]?!1:!0}function a(e){for(var t=1,a=0,r=e.length;r>a;a++)"/"===e[a]&&t++;return t}function r(e,t,a){return a+e.substr(t)}function n(e,n,o){var s,i,l,u,d=0,c=0;if(n)for(var f in o.map){var p=o.map[f];if("object"==typeof p&&t(n,f)&&(l=a(f),!(c>=l)))for(var m in p)t(e,m)&&(u=a(m),d>=u||(s=m,d=u,i=f,c=l))}if(s)return r(e,s.length,o.map[i][s]);for(var f in o.map){var p=o.map[f];if("string"==typeof p&&t(e,f)){var u=a(f);d>=u||(s=f,d=u)}}return s?r(e,s.length,o.map[s]):e}e.map=e.map||{},e._extensions.push(u);var o=e.normalize;e.normalize=function(e,t,a){var r=this;r.map||(r.map={});var s=!1;return"/"==e.substr(e.length-1,1)&&(s=!0,e+="#"),Promise.resolve(o.call(r,e,t,a)).then(function(e){if(e=n(e,t,r),s){var a=e.split("/");a.pop();var o=a.pop();a.push(o),a.push(o),e=a.join("/")}return e})}}function d(e){"undefined"==typeof h&&(h=Array.prototype.indexOf),e._extensions.push(d);var t=e.normalize;e.normalize=function(e,a,r){var n,o=this;return a&&-1!=(n=a.indexOf("!"))&&(a=a.substr(0,n)),Promise.resolve(t.call(o,e,a,r)).then(function(e){var t=e.lastIndexOf("!");if(-1!=t){var n=e.substr(0,t),s=e.substr(t+1)||n.substr(n.lastIndexOf(".")+1);return new Promise(function(e){e(o.normalize(s,a,r))}).then(function(e){return s=e,o.normalize(n,a,r)}).then(function(e){return e+"!"+s})}return e})};var a=e.locate;e.locate=function(e){var t=this,r=e.name;if(this.defined&&this.defined[r])return a.call(this,e);var n=r.lastIndexOf("!");if(-1!=n){var o=r.substr(n+1);e.name=r.substr(0,n);var s=t.pluginLoader||t;return s["import"](o).then(function(){var a=s.get(o);return a=a["default"]||a,a.build===!1&&t.pluginLoader&&(e.metadata.build=!1),e.metadata.plugin=a,e.metadata.pluginName=o,e.metadata.pluginArgument=e.name,a.locate?a.locate.call(t,e):Promise.resolve(t.locate(e)).then(function(e){return e.substr(0,e.length-3)})})}return a.call(this,e)};var r=e.fetch;e.fetch=function(e){var t=this;return e.metadata.build===!1?"":e.metadata.plugin&&e.metadata.plugin.fetch&&!e.metadata.pluginFetchCalled?(e.metadata.pluginFetchCalled=!0,e.metadata.plugin.fetch.call(t,e,r)):r.call(t,e)};var n=e.translate;e.translate=function(e){var t=this;return e.metadata.plugin&&e.metadata.plugin.translate?Promise.resolve(e.metadata.plugin.translate.call(t,e)).then(function(a){return a&&(e.source=a),n.call(t,e)}):n.call(t,e)};var o=e.instantiate;e.instantiate=function(e){var t=this;return e.metadata.plugin&&e.metadata.plugin.instantiate?Promise.resolve(e.metadata.plugin.instantiate.call(t,e)).then(function(a){return e.metadata.format="defined",e.metadata.execute=function(){return a},o.call(t,e)}):e.metadata.plugin&&e.metadata.plugin.build===!1?(e.metadata.format="defined",e.metadata.deps.push(e.metadata.pluginName),e.metadata.execute=function(){return t.newModule({})},o.call(t,e)):o.call(t,e)}}function c(e){"undefined"==typeof h&&(h=Array.prototype.indexOf),e._extensions.push(c),e.bundles=e.bundles||{};var t=e.fetch;e.fetch=function(e){var a=this;if(a.trace)return t.call(this,e);a.bundles||(a.bundles={});for(var r in a.bundles)if(-1!=h.call(a.bundles[r],e.name))return Promise.resolve(a.normalize(r)).then(function(e){return a.bundles[e]=a.bundles[e]||a.bundles[r],a.meta=a.meta||{},a.meta[e]=a.meta[e]||{},a.meta[e].bundle=!0,a.load(e)}).then(function(){return""});return t.call(this,e)}}function f(e){function t(e){return parseInt(e,10)}function a(e){var a=e.match(i);return a?{major:t(a[1]),minor:t(a[2]),patch:t(a[3]),pre:a[4]&&a[4].split(".")}:{tag:e}}function r(e,a){if(e.tag&&a.tag)return 0;if(e.tag)return-1;if(a.tag)return 1;for(var r=0;r<u.length;r++){var n=u[r],o=e[n],s=a[n];if(o!=s)return isNaN(o)?-1:isNaN(s)?1:o>s?1:-1}if(!e.pre&&!a.pre)return 0;if(!e.pre)return 1;if(!a.pre)return-1;for(var r=0,i=Math.min(e.pre.length,a.pre.length);i>r;r++)if(e.pre[r]!=a.pre[r]){var d=e.pre[r].match(l),c=a.pre[r].match(l);return d&&!c?-1:c&&!d?1:d&&c?t(e.pre[r])>t(a.pre[r])?1:-1:e.pre[r]>a.pre[r]?1:-1}return e.pre.length==a.pre.length?0:e.pre.length>a.pre.length?1:-1}function n(e,t){var a=e.version;return a.tag?a.tag==t.tag:1==r(a,t)?!1:isNaN(t.minor)||isNaN(t.patch)?!1:t.pre?a.major!=t.major||a.minor!=t.minor||a.patch!=t.patch?!1:e.semver||e.fuzzy||a.pre.join(".")==t.pre.join("."):e.semver?0==a.major&&isNaN(a.minor)?t.major<1:a.major>=1?a.major==t.major:a.minor>=1?a.minor==t.minor:(a.patch||0)==t.patch:e.fuzzy?t.major==a.major&&t.minor<(a.minor||0)+1:!a.pre&&a.major==t.major&&a.minor==t.minor&&a.patch==t.patch}function o(e){var t={};((t.semver="^"==e.substr(0,1))||(t.fuzzy="~"==e.substr(0,1)))&&(e=e.substr(1));var r=t.version=a(e);return r.tag?t:(t.fuzzy||t.semver||!isNaN(r.minor)&&!isNaN(r.patch)||(t.fuzzy=!0),t.fuzzy&&isNaN(r.minor)&&(t.semver=!0,t.fuzzy=!1),t.semver&&!isNaN(r.minor)&&isNaN(r.patch)&&(t.semver=!1,t.fuzzy=!0),t)}function s(e,t){return r(a(e),a(t))}"undefined"==typeof h&&(h=Array.prototype.indexOf),e._extensions.push(f);var i=/^(\d+)(?:\.(\d+)(?:\.(\d+)(?:-([\da-z-]+(?:\.[\da-z-]+)*)(?:\+([\da-z-]+(?:\.[\da-z-]+)*))?)?)?)?$/i,l=/^\d+$/,u=["major","minor","patch"];e.versions=e.versions||{};var d=e.normalize;e.normalize=function(e,t,r){this.versions||(this.versions={});var i,l,u=this.versions,c=e.lastIndexOf("!"),f=(-1==c?e:e.substr(0,c)).lastIndexOf("@");if(f>0){var p=e.substr(f+1,e.length-f-1).split("/");i=p[0],l=p.length,e=e.substr(0,f)+e.substr(f+i.length+1,e.length-f-i.length-1)}return Promise.resolve(d.call(this,e,t,r)).then(function(e){var t=e.indexOf("@");if(i&&(-1==t||0==t)){var r=e.split("/");r[r.length-l]+="@"+i,e=r.join("/"),t=e.indexOf("@")}var d,c;if(-1==t||0==t){for(var f in u)if(c=u[f],e.substr(0,f.length)==f&&(d=e.substr(f.length,1),!d||"/"==d))return f+"@"+("string"==typeof c?c:c[c.length-1])+e.substr(f.length);return e}var p=e.substr(0,t),m=e.substr(t+1).split("/")[0],h=m.length,g=o(e.substr(t+1).split("/")[0]);c=u[e.substr(0,t)]||[],"string"==typeof c&&(c=[c]);for(var v=c.length-1;v>=0;v--)if(n(g,a(c[v])))return p+"@"+c[v]+e.substr(t+h+1);var b;return g.semver?b=0!=g.version.major||isNaN(g.version.minor)?g.version.major:"0."+g.version.minor:g.fuzzy?b=g.version.major+"."+g.version.minor:(b=m,c.push(m),c.sort(s),u[p]=1==c.length?c[0]:c),p+"@"+b+e.substr(t+h+1)})}}function p(e){e.depCache=e.depCache||{},e._extensions.push(p),loaderLocate=e.locate,e.locate=function(e){var t=this;t.depCache||(t.depCache={});var a=t.depCache[e.name];if(a)for(var r=0;r<a.length;r++)t.load(a[r]);return loaderLocate.call(t,e)}}$__global.upgradeSystemLoader=void 0;var m,h=Array.prototype.indexOf||function(e){for(var t=0,a=this.length;a>t;t++)if(this[t]===e)return t;return-1};!function(){var e=$__global.System;m=$__global.System=new LoaderPolyfill(e),m.baseURL=e.baseURL,m.paths={"*":"*.js"},m.originalSystem=e}(),m.noConflict=function(){$__global.SystemJS=m,$__global.System=m.originalSystem};var g=$__global.System.originalSystem;a(m),r(m),n(m),o(m),s(m),i(m),l(m),u(m),d(m),c(m),f(m),p(m)};var $__curScript,__eval;!function(){var doEval;__eval=function(e,t,a){e+="\n//# sourceURL="+t+(a?"\n//# sourceMappingURL="+a:"");try{doEval(e)}catch(r){var n="Error evaluating "+t+"\n";throw r instanceof Error?r.message=n+r.message:r=n+r,r}};var isWorker="undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope,isBrowser="undefined"!=typeof window;if(isBrowser){var head,scripts=document.getElementsByTagName("script");if($__curScript=scripts[scripts.length-1],doEval=function(e){head||(head=document.head||document.body||document.documentElement);var t=document.createElement("script");t.text=e;var a,r=window.onerror;if(window.onerror=function(e){a=e},head.appendChild(t),head.removeChild(t),window.onerror=r,a)throw a},$__global.System&&$__global.LoaderPolyfill)$__global.upgradeSystemLoader();else{var curPath=$__curScript.src,basePath=curPath.substr(0,curPath.lastIndexOf("/")+1);document.write('<script type="text/javascript" src="'+basePath+'es6-module-loader.js" data-init="upgradeSystemLoader">'+"<"+"/script>")}}else if(isWorker)if(doEval=function(source){try{eval(source)}catch(e){throw e}},$__global.System&&$__global.LoaderPolyfill)$__global.upgradeSystemLoader();else{var basePath="";try{throw new TypeError("Unable to get Worker base path.")}catch(err){var idx=err.stack.indexOf("at ")+3,withSystem=err.stack.substr(idx,err.stack.substr(idx).indexOf("\n"));basePath=withSystem.substr(0,withSystem.lastIndexOf("/")+1)}importScripts(basePath+"es6-module-loader.js")}else{var es6ModuleLoader=require("es6-module-loader");$__global.System=es6ModuleLoader.System,$__global.Loader=es6ModuleLoader.Loader,$__global.upgradeSystemLoader(),module.exports=$__global.System;var vm=require("vm");doEval=function(e){vm.runInThisContext(e)}}}()}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope?self:global); /*
* SystemJS v0.19.6
*/
!function(){function e(){!function(e){function t(e,t){var n;if(e instanceof Error){var n=new Error(e.message,e.fileName,e.lineNumber);P?(n.message=e.message+"\n "+t,n.stack=e.stack):(n.message=e.message,n.stack=e.stack+"\n "+t)}else n=e+"\n "+t;return n}function n(e,n,r){try{new Function(e).call(r)}catch(a){throw t(a,"Evaluating "+n)}}function r(){}function a(t){this._loader={loaderObj:this,loads:[],modules:{},importPromises:{},moduleRecords:{}},M(this,"global",{get:function(){return e}})}function o(){a.call(this),this.paths={}}function s(e,t){var n,r="",a=0;for(var o in e){var s=o.split("*");if(s.length>2)throw new TypeError("Only one wildcard in a path is permitted");if(1==s.length){if(t==o){r=o;break}}else{var i=s[0].length;i>=a&&t.substr(0,s[0].length)==s[0]&&t.substr(t.length-s[1].length)==s[1]&&(a=i,r=o,n=t.substr(s[0].length,t.length-s[1].length-s[0].length))}}var l=e[r]||t;return"string"==typeof n&&(l=l.replace("*",n)),l}function i(){}function l(){o.call(this),N.call(this)}function u(){}function d(e,t){l.prototype[e]=t(l.prototype[e]||function(){})}function c(e){N=e(N||function(){})}function f(e){for(var t=[],n=[],r=0,a=e.length;a>r;r++){var o=O.call(t,e[r]);-1===o?(t.push(e[r]),n.push([r])):n[o].push(r)}return{names:t,indices:n}}function m(e){var t={};if("object"==typeof e||"function"==typeof e)if(q){var n;for(var r in e)(n=Object.getOwnPropertyDescriptor(e,r))&&M(t,r,n)}else{var a=e&&e.hasOwnProperty;for(var r in e)(!a||e.hasOwnProperty(r))&&(t[r]=e[r])}return t["default"]=e,M(t,"__useDefault",{value:!0}),t}function p(e,t,n){for(var r in t)n&&r in e||(e[r]=t[r]);return e}function h(e,t,n){for(var r in t){var a=t[r];r in e?a instanceof Array&&e[r]instanceof Array?e[r]=[].concat(n?a:e[r]).concat(n?e[r]:a):"object"==typeof a&&"object"==typeof e[r]?e[r]=p(p({},e[r]),a,n):n||(e[r]=a):e[r]=a}}function g(e){this.warnings&&"undefined"!=typeof console&&console.warn}function v(e,t){for(var n=e.split(".");n.length;)t=t[n.shift()];return t}function y(){if(B[this.baseURL])return B[this.baseURL];"/"!=this.baseURL[this.baseURL.length-1]&&(this.baseURL+="/");var e=new L(this.baseURL,z);return this.baseURL=e.href,B[this.baseURL]=e}function b(){return{name:null,deps:null,declare:null,execute:null,executingRequire:!1,declarative:!1,normalizedDeps:null,groupIndex:null,evaluated:!1,module:null,esModule:null,esmExports:!1}}function w(e){var t,n,r,r="~"==e[0],a=e.lastIndexOf("|");return-1!=a?(t=e.substr(a+1),n=e.substr(r,a-r)||"@system-env"):(t=null,n=e.substr(r)),{module:n,prop:t,negate:r}}function x(e){return(e.negate?"~":"")+e.module+(e.prop?"|"+e.prop:"")}function S(e,t,n){return this["import"](e.module,t).then(function(t){return e.prop?t=v(e.prop,t):"object"==typeof t&&t+""=="Module"&&(t=t["default"]),e.negate?!t:t})}function E(e,t){var n=e.match(X);if(!n)return Promise.resolve(e);var r=w(n[0].substr(2,n[0].length-3));return this.builder?this.normalize(r.module,t).then(function(t){return r.module=t,e.replace(X,"#{"+x(r)+"}")}):S.call(this,r,t,!1).then(function(n){if("string"!=typeof n)throw new TypeError("The condition value for "+e+" doesn't resolve to a string.");if(-1!=n.indexOf("/"))throw new TypeError("Unabled to interpolate conditional "+e+(t?" in "+t:"")+"\n The condition value "+n+' cannot contain a "/" separator.');return e.replace(X,n)})}function k(e,t){var n=e.lastIndexOf("#?");if(-1==n)return Promise.resolve(e);var r=w(e.substr(n+2));return this.builder?this.normalize(r.module,t).then(function(t){return r.module=t,e.substr(0,n)+"#?"+x(r)}):S.call(this,r,t,!0).then(function(t){return t?e.substr(0,n):"@empty"})}function _(e,t){for(var n in e.loadedBundles_)if(-1!=O.call(e.bundles[n],t))return Promise.resolve(n);for(var n in e.bundles)if(-1!=O.call(e.bundles[n],t))return e.normalize(n).then(function(t){return e.bundles[t]=e.bundles[n],e.loadedBundles_[t]=!0,t});return Promise.resolve()}var R="undefined"==typeof window&&"undefined"!=typeof self&&"undefined"!=typeof importScripts,P="undefined"!=typeof window&&"undefined"!=typeof document,j="undefined"!=typeof process&&!!process.platform.match(/^win/);e.console||(e.console={assert:function(){}});var M,O=Array.prototype.indexOf||function(e){for(var t=0,n=this.length;n>t;t++)if(this[t]===e)return t;return-1};!function(){try{Object.defineProperty({},"a",{})&&(M=Object.defineProperty)}catch(e){M=function(e,t,n){try{e[t]=n.value||n.get.call(e)}catch(r){}}}}();var z;if("undefined"!=typeof document&&document.getElementsByTagName){if(z=document.baseURI,!z){var T=document.getElementsByTagName("base");z=T[0]&&T[0].href||window.location.href}z=z.split("#")[0].split("?")[0],z=z.substr(0,z.lastIndexOf("/")+1)}else if("undefined"!=typeof process&&process.cwd)z="file://"+(j?"/":"")+process.cwd()+"/",j&&(z=z.replace(/\\/g,"/"));else{if("undefined"==typeof location)throw new TypeError("No environment baseURI");z=e.location.href}var L=e.URLPolyfill||e.URL;M(r.prototype,"toString",{value:function(){return"Module"}}),function(){function o(e){return{status:"loading",name:e,linkSets:[],dependencies:[],metadata:{}}}function s(e,t,n){return new Promise(c({step:n.address?"fetch":"locate",loader:e,moduleName:t,moduleMetadata:n&&n.metadata||{},moduleSource:n.source,moduleAddress:n.address}))}function i(e,t,n,r){return new Promise(function(a,o){a(e.loaderObj.normalize(t,n,r))}).then(function(t){var n;if(e.modules[t])return n=o(t),n.status="linked",n.module=e.modules[t],n;for(var r=0,a=e.loads.length;a>r;r++)if(n=e.loads[r],n.name==t)return n;return n=o(t),e.loads.push(n),l(e,n),n})}function l(e,t){u(e,t,Promise.resolve().then(function(){return e.loaderObj.locate({name:t.name,metadata:t.metadata})}))}function u(e,t,n){d(e,t,n.then(function(n){return"loading"==t.status?(t.address=n,e.loaderObj.fetch({name:t.name,metadata:t.metadata,address:n})):void 0}))}function d(t,r,a){a.then(function(a){return"loading"==r.status?Promise.resolve(t.loaderObj.translate({name:r.name,metadata:r.metadata,address:r.address,source:a})).then(function(e){return r.source=e,t.loaderObj.instantiate({name:r.name,metadata:r.metadata,address:r.address,source:e})}).then(function(a){if(void 0===a)return r.address=r.address||"<Anonymous Module "+ ++k+">",r.isDeclarative=!0,E.call(t.loaderObj,r).then(function(t){var a=e.System,o=a.register;a.register=function(e,t,n){"string"!=typeof e&&(n=t,t=e),r.declare=n,r.depsList=t},n(t,r.address,{}),a.register=o});if("object"!=typeof a)throw TypeError("Invalid instantiate return value");r.depsList=a.deps||[],r.execute=a.execute,r.isDeclarative=!1}).then(function(){r.dependencies=[];for(var e=r.depsList,n=[],a=0,o=e.length;o>a;a++)(function(e,a){n.push(i(t,e,r.name,r.address).then(function(t){if(r.dependencies[a]={key:e,value:t.name},"linked"!=t.status)for(var n=r.linkSets.concat([]),o=0,s=n.length;s>o;o++)m(n[o],t)}))})(e[a],a);return Promise.all(n)}).then(function(){r.status="loaded";for(var e=r.linkSets.concat([]),t=0,n=e.length;n>t;t++)h(e[t],r)}):void 0})["catch"](function(e){r.status="failed",r.exception=e;for(var t=r.linkSets.concat([]),n=0,a=t.length;a>n;n++)g(t[n],r,e)})}function c(e){return function(t,n){var r=e.loader,a=e.moduleName,s=e.step;if(r.modules[a])throw new TypeError('"'+a+'" already exists in the module table');for(var i,c=0,m=r.loads.length;m>c;c++)if(r.loads[c].name==a&&(i=r.loads[c],"translate"!=s||i.source||(i.address=e.moduleAddress,d(r,i,Promise.resolve(e.moduleSource))),i.linkSets.length))return i.linkSets[0].done.then(function(){t(i)});var p=i||o(a);p.metadata=e.moduleMetadata;var h=f(r,p);r.loads.push(p),t(h.done),"locate"==s?l(r,p):"fetch"==s?u(r,p,Promise.resolve(e.moduleAddress)):(p.address=e.moduleAddress,d(r,p,Promise.resolve(e.moduleSource)))}}function f(e,t){var n={loader:e,loads:[],startingLoad:t,loadingCount:0};return n.done=new Promise(function(e,t){n.resolve=e,n.reject=t}),m(n,t),n}function m(e,t){if("failed"!=t.status){for(var n=0,r=e.loads.length;r>n;n++)if(e.loads[n]==t)return;e.loads.push(t),t.linkSets.push(e),"loaded"!=t.status&&e.loadingCount++;for(var a=e.loader,n=0,r=t.dependencies.length;r>n;n++)if(t.dependencies[n]){var o=t.dependencies[n].value;if(!a.modules[o])for(var s=0,i=a.loads.length;i>s;s++)if(a.loads[s].name==o){m(e,a.loads[s]);break}}}}function p(e){var t=!1;try{w(e,function(n,r){g(e,n,r),t=!0})}catch(n){g(e,null,n),t=!0}return t}function h(e,t){if(e.loadingCount--,!(e.loadingCount>0)){var n=e.startingLoad;if(e.loader.loaderObj.execute===!1){for(var r=[].concat(e.loads),a=0,o=r.length;o>a;a++){var t=r[a];t.module=t.isDeclarative?{name:t.name,module:_({}),evaluated:!0}:{module:_({})},t.status="linked",v(e.loader,t)}return e.resolve(n)}var s=p(e);s||e.resolve(n)}}function g(e,n,r){var a=e.loader;e:if(n)if(e.loads[0].name==n.name)r=t(r,"Error loading "+n.name);else{for(var o=0;o<e.loads.length;o++)for(var s=e.loads[o],i=0;i<s.dependencies.length;i++){var l=s.dependencies[i];if(l.value==n.name){r=t(r,"Error loading "+n.name+' as "'+l.key+'" from '+s.name);break e}}r=t(r,"Error loading "+n.name+" from "+e.loads[0].name)}else r=t(r,"Error linking "+e.loads[0].name);for(var u=e.loads.concat([]),o=0,d=u.length;d>o;o++){var n=u[o];a.loaderObj.failed=a.loaderObj.failed||[],-1==O.call(a.loaderObj.failed,n)&&a.loaderObj.failed.push(n);var c=O.call(n.linkSets,e);if(n.linkSets.splice(c,1),0==n.linkSets.length){var f=O.call(e.loader.loads,n);-1!=f&&e.loader.loads.splice(f,1)}}e.reject(r)}function v(e,t){if(e.loaderObj.trace){e.loaderObj.loads||(e.loaderObj.loads={});var n={};t.dependencies.forEach(function(e){n[e.key]=e.value}),e.loaderObj.loads[t.name]={name:t.name,deps:t.dependencies.map(function(e){return e.key}),depMap:n,address:t.address,metadata:t.metadata,source:t.source,kind:t.isDeclarative?"declarative":"dynamic"}}t.name&&(e.modules[t.name]=t.module);var r=O.call(e.loads,t);-1!=r&&e.loads.splice(r,1);for(var a=0,o=t.linkSets.length;o>a;a++)r=O.call(t.linkSets[a].loads,t),-1!=r&&t.linkSets[a].loads.splice(r,1);t.linkSets.splice(0,t.linkSets.length)}function y(e,t,n){try{var a=t.execute()}catch(o){return void n(t,o)}return a&&a instanceof r?a:void n(t,new TypeError("Execution must define a Module instance"))}function b(e,t,n){var r=e._loader.importPromises;return r[t]=n.then(function(e){return r[t]=void 0,e},function(e){throw r[t]=void 0,e})}function w(e,t){var n=e.loader;if(e.loads.length)for(var r=e.loads.concat([]),a=0;a<r.length;a++){var o=r[a],s=y(e,o,t);if(!s)return;o.module={name:o.name,module:s},o.status="linked",v(n,o)}}function x(e,t){return t.module.module}function S(){}function E(){throw new TypeError("ES6 transpilation is only provided in the dev module loader build.")}var k=0;a.prototype={constructor:a,define:function(e,t,n){if(this._loader.importPromises[e])throw new TypeError("Module is already loading.");return b(this,e,new Promise(c({step:"translate",loader:this._loader,moduleName:e,moduleMetadata:n&&n.metadata||{},moduleSource:t,moduleAddress:n&&n.address})))},"delete":function(e){var t=this._loader;return delete t.importPromises[e],delete t.moduleRecords[e],t.modules[e]?delete t.modules[e]:!1},get:function(e){return this._loader.modules[e]?(S(this._loader.modules[e],[],this),this._loader.modules[e].module):void 0},has:function(e){return!!this._loader.modules[e]},"import":function(e,t,n){"object"==typeof t&&(t=t.name);var r=this;return Promise.resolve(r.normalize(e,t)).then(function(e){var t=r._loader;return t.modules[e]?(S(t.modules[e],[],t._loader),t.modules[e].module):t.importPromises[e]||b(r,e,s(t,e,{}).then(function(n){return delete t.importPromises[e],x(t,n)}))})},load:function(e,t){var n=this._loader;return n.modules[e]?(S(n.modules[e],[],n),Promise.resolve(n.modules[e].module)):n.importPromises[e]||b(this,e,s(n,e,{}).then(function(t){return delete n.importPromises[e],x(n,t)}))},module:function(e,t){var n=o();n.address=t&&t.address;var r=f(this._loader,n),a=Promise.resolve(e),s=this._loader,i=r.done.then(function(){return x(s,n)});return d(s,n,a),i},newModule:function(e){if("object"!=typeof e)throw new TypeError("Expected object");var t=new r,n=[];if(Object.getOwnPropertyNames&&null!=e)n=Object.getOwnPropertyNames(e);else for(var a in e)n.push(a);for(var o=0;o<n.length;o++)(function(n){M(t,n,{configurable:!1,enumerable:!0,get:function(){return e[n]}})})(n[o]);return t},set:function(e,t){if(!(t instanceof r))throw new TypeError("Loader.set("+e+", module) must be a module");this._loader.modules[e]={module:t}},normalize:function(e,t,n){return e},locate:function(e){return e.name},fetch:function(e){},translate:function(e){return e.source},instantiate:function(e){}};var _=a.prototype.newModule}();var F;i.prototype=a.prototype,o.prototype=new i;var I;if("undefined"!=typeof XMLHttpRequest)I=function(e,t,n,r){function a(){n(s.responseText)}function o(){r(new Error("XHR error"+(s.status?" ("+s.status+(s.statusText?" "+s.statusText:"")+")":"")+" loading "+e))}var s=new XMLHttpRequest,i=!0,l=!1;if(!("withCredentials"in s)){var u=/^(\w+:)?\/\/([^\/]+)/.exec(e);u&&(i=u[2]===window.location.host,u[1]&&(i&=u[1]===window.location.protocol))}i||"undefined"==typeof XDomainRequest||(s=new XDomainRequest,s.onload=a,s.onerror=o,s.ontimeout=o,s.onprogress=function(){},s.timeout=0,l=!0),s.onreadystatechange=function(){4===s.readyState&&(200===s.status||0==s.status&&s.responseText?a():o())},s.open("GET",e,!0),s.setRequestHeader&&(s.setRequestHeader("Accept","application/x-es-module, */*"),t&&("string"==typeof t&&s.setRequestHeader("Authorization",t),s.withCredentials=!0)),l?setTimeout(function(){s.send()},0):s.send(null)};else{if("undefined"==typeof require)throw new TypeError("No environment fetch API available.");var A;I=function(e,t,n,r){if("file:///"!=e.substr(0,8))throw new Error('Unable to fetch "'+e+'". Only file URLs of the form file:/// allowed running in Node.');return A=A||require("fs"),e=j?e.replace(/\//g,"\\").substr(8):e.substr(7),A.readFile(e,function(e,t){if(e)return r(e);var a=t+"";"\ufeff"===a[0]&&(a=a.substr(1)),n(a)})}}o.prototype.fetch=function(e){return new Promise(function(t,n){I(e.address,void 0,t,n)})};var C=function(){function t(t){var r=this;return Promise.resolve(e["typescript"==r.transpiler?"ts":r.transpiler]||(r.pluginLoader||r)["import"](r.transpiler)).then(function(e){e.__useDefault&&(e=e["default"]);var a;return a=e.Compiler?n:e.createLanguageService?s:o,"(function(__moduleName){"+a.call(r,t,e)+'\n})("'+t.name+'");\n//# sourceURL='+t.address+"!transpiled"})}function n(e,t){var n=this.traceurOptions||{};n.modules="instantiate",n.script=!1,void 0===n.sourceMaps&&(n.sourceMaps="inline"),n.filename=e.address,n.inputSourceMap=e.metadata.sourceMap,n.moduleName=!1;var a=new t.Compiler(n);return r(e.source,a,n.filename)}function r(e,t,n){try{return t.compile(e,n)}catch(r){throw r[0]}}function o(e,t){var n=this.babelOptions||{};return n.modules="system",void 0===n.sourceMap&&(n.sourceMap="inline"),n.inputSourceMap=e.metadata.sourceMap,n.filename=e.address,n.code=!0,n.ast=!1,t.transform(e.source,n).code}function s(e,t){var n=this.typescriptOptions||{};return n.target=n.target||t.ScriptTarget.ES5,void 0===n.sourceMap&&(n.sourceMap=!0),n.sourceMap&&(n.inlineSourceMap=!0),n.module=t.ModuleKind.System,t.transpile(e.source,n,e.address)}return a.prototype.transpiler="traceur",t}();u.prototype=o.prototype,l.prototype=new u,l.prototype.constructor=l;var N,q=!0;try{Object.getOwnPropertyDescriptor({a:0},"a")}catch(D){q=!1}var U,J=["main","format","defaultExtension","modules","map","basePath","depCache"];!function(){function n(t,n){0==l++&&(s=e.System),e.System=t,i=n}function r(){0==--l&&(e.System=s),i=void 0}function a(e){var t=e.source.lastIndexOf("\n"),n="esm"==e.metadata.format||"register"==e.metadata.format||e.metadata.bundle;return(n?"(function(System) {":"")+e.source+(n?"\n})(System);":"")+("\n//# sourceURL="!=e.source.substr(t,15)?"\n//# sourceURL="+e.address+(e.metadata.sourceMap?"!transpiled":""):"")+(e.metadata.sourceMap&&u&&"\n//# sourceMappingURL=data:application/json;base64,"+btoa(unescape(encodeURIComponent(e.metadata.sourceMap)))||"")}function o(o){if(o.metadata.integrity)throw new TypeError("Subresource integrity checking is not supported in Web Workers or Chrome Extensions.");try{n(this,o),new Function(a(o)).call(e),r()}catch(s){throw r(),t(s,"Evaluating "+o.address)}}var s,i,l=0;d("pushRegister_",function(){return function(e){return i?(this.reduceRegister_(i,e),!0):!1}});var u="undefined"!=typeof btoa;if("undefined"!=typeof document&&document.getElementsByTagName){var c,f=document.getElementsByTagName("script");$__curScript=f[f.length-1],U=function(e){if(!this.globalEvaluationScope)return o.call(this,e);c||(c=document.head||document.body||document.documentElement);var s=document.createElement("script");s.text=a(e);var i,l=window.onerror;if(window.onerror=function(n){i=t(n,"Evaluating "+e.address)},n(this,e),e.metadata.integrity&&s.setAttribute("integrity",e.metadata.integrity),e.metadata.nonce&&s.setAttribute("nonce",e.metadata.nonce),c.appendChild(s),c.removeChild(s),r(),window.onerror=l,i)throw i}}else if("undefined"!=typeof require){var m="vm",p=require(m);U=function(e){if(!this.globalEvaluationScope)return o.call(this,e);if(e.metadata.integrity)throw new TypeError("Subresource integrity checking is unavailable in Node.");try{n(this,e),p.runInThisContext(a(e)),r()}catch(s){throw r(),t(s.toString(),"Evaluating "+e.address)}}}else U=o}(),c(function(e){return function(){e.call(this),this.map={}}}),d("normalize",function(){return function(e,t){if("."!=e.substr(0,1)&&"/"!=e.substr(0,1)&&!e.match($)){var n,r=0;for(var a in this.map)if(e.substr(0,a.length)==a&&(e.length==a.length||"/"==e[a.length])){var o=a.split("/").length;if(r>=o)continue;n=a,r=o}n&&(e=this.map[n]+e.substr(n.length))}return e}});var $=/^[^\/]+:\/\//,B={},H=new L(z);c(function(e){return function(){e.call(this),this.baseURL=z.substr(0,z.lastIndexOf("/")+1),this.warnings=!1,this.defaultJSExtensions=!1,this.globalEvaluationScope=!0,this.pluginFirst=!1,(R||P&&window.chrome&&window.chrome.extension||P&&navigator.userAgent.match(/^Node\.js/))&&(this.globalEvaluationScope=!1),this.set("@empty",this.newModule({}))}}),d("normalize",function(e){return function(t,n){return t=e.apply(this,arguments),"."==t[0]||"/"==t[0]?n?new L(t,n.replace(/#/g,"%05")).href.replace(/%05/g,"#"):new L(t,H).href:t}});var Z="undefined"!=typeof XMLHttpRequest;d("locate",function(e){return function(t){return Promise.resolve(e.call(this,t)).then(function(e){return Z?e.replace(/#/g,"%23"):e})}}),d("fetch",function(){return function(e){return new Promise(function(t,n){I(e.address,e.metadata.authorization,t,n)})}}),d("import",function(e){return function(t,n,r){return n&&n.name&&g.call(this,"System.import(name, { name: parentName }) is deprecated for System.import(name, parentName), while importing "+t+" from "+n.name),e.call(this,t,n,r).then(function(e){return e.__useDefault?e["default"]:e})}}),l.prototype.config=function(e){function t(e){for(var t in e)return!0}if("warnings"in e&&(this.warnings=e.warnings),e.baseURL){if(t(this.packages)||t(this.meta)||t(this.depCache)||t(this.bundles)||t(this.packageConfigPaths))throw new TypeError("baseURL should only be configured once and must be configured first.");this.baseURL=e.baseURL,y.call(this)}if(e.defaultJSExtensions&&(this.defaultJSExtensions=e.defaultJSExtensions,g.call(this,"The defaultJSExtensions configuration option is deprecated, use packages configuration instead.")),e.pluginFirst&&(this.pluginFirst=e.pluginFirst),e.paths)for(var n in e.paths)this.paths[n]=e.paths[n];if(e.map){var r="";for(var n in e.map){var a=e.map[n];if("string"!=typeof a){r+=(r.length?", ":"")+'"'+n+'"';var o=this.normalizeSync(n);this.defaultJSExtensions&&".js"!=n.substr(n.length-3,3)&&(o=o.substr(0,o.length-3));var s="";for(var i in this.packages)o.substr(0,i.length)==i&&(!o[i.length]||"/"==o[i.length])&&s.split("/").length<i.split("/").length&&(s=i);s&&this.packages[s].main&&(o=o.substr(0,o.length-this.packages[s].main.length-1));var i=this.packages[o]=this.packages[o]||{};i.map=a}else this.map[n]=a}r&&g.call(this,"The map configuration for "+r+' uses object submaps, which is deprecated in global map.\nUpdate this to use package contextual map with configs like System.config({ packages: { "'+n+'": { map: {...} } } }).')}if(e.packageConfigPaths){for(var l=[],u=0;u<e.packageConfigPaths.length;u++){var d=e.packageConfigPaths[u],c=Math.max(d.lastIndexOf("*")+1,d.lastIndexOf("/")),o=this.normalizeSync(d.substr(0,c)+"/");this.defaultJSExtensions&&".js"!=d.substr(d.length-3,3)&&(o=o.substr(0,o.length-3)),l[u]=o.substr(0,o.length-1)+d.substr(c)}this.packageConfigPaths=l}if(e.packages)for(var n in e.packages){if(n.match(/^([^\/]+:)?\/\/$/))throw new TypeError('"'+n+'" is not a valid package name.');var f=this.normalizeSync(n+("/"!=n[n.length-1]?"/":""));f=f.substr(0,f.length-1),!this.packages[f]&&this.defaultJSExtensions&&".js"!=n.substr(n.length-3,3)&&(f=f.substr(0,f.length-3)),this.packages[f]=this.packages[f]||{},e.packages[n].meta&&(g.call(this,"Package "+n+" is configured with meta, which is deprecated as it has been renamed to modules."),e.packages[n].modules=e.packages[n].meta,delete e.packages[n].meta);for(var m in e.packages[n])-1==O.call(J,m)&&g.call(this,'"'+m+'" is not a valid package configuration option in package '+n);h(this.packages[f],e.packages[n])}if(e.bundles)for(var n in e.bundles){for(var p=[],u=0;u<e.bundles[n].length;u++)p.push(this.normalizeSync(e.bundles[n][u]));this.bundles[n]=p}for(var v in e){var a=e[v],b=!1;if("baseURL"!=v&&"map"!=v&&"packages"!=v&&"bundles"!=v&&"paths"!=v&&"warnings"!=v&&"packageConfigPaths"!=v)if("object"!=typeof a||a instanceof Array)this[v]=a;else{this[v]=this[v]||{},("meta"==v||"depCache"==v)&&(b=!0);for(var n in a)"meta"==v&&"*"==n[0]?this[v][n]=a[n]:b?this[v][this.normalizeSync(n)]=a[n]:this[v][n]=a[n]}}},d("normalize",function(e){return function(t,n){var r=e.apply(this,arguments);return this.has(r)?r:r.match($)?(this.defaultJSExtensions&&".js"!=r.substr(r.length-3,3)&&(r+=".js"),r):(r=s(this.paths,r)||r,this.defaultJSExtensions&&".js"!=r.substr(r.length-3,3)&&(r+=".js"),"."==r[0]||"/"==r[0]?new L(r,H).href:new L(r,y.call(this)).href)}}),function(){function e(e){var t,n,r=0;for(var a in this.packages)e.substr(0,a.length)!==a||e.length!==a.length&&"/"!==e[a.length]||(n=a.split("/").length,n>r&&(t=a,r=n));return t}function t(e,t){var n,r=0;for(var a in e)if(t.substr(0,a.length)==a&&(t.length==a.length||"/"==t[a.length])){var o=a.split("/").length;if(r>=o)continue;n=a,r=o}return n}function n(e){var t=e.basePath&&"."!=e.basePath?e.basePath:"";return t&&("./"==t.substr(0,2)&&(t=t.substr(2)),"/"!=t[t.length-1]&&(t+="/")),t}function r(e,t,n,r,o,s,i){var l=!(!i&&-1==o.indexOf("#?")&&!o.match(X));!l&&n.modules&&f(n.modules,t,o,function(e,t,n){(0==n||e.lastIndexOf("*")!=e.length-1)&&(l=!0)});var u=t+"/"+r+o+(l?"":a(n,o));return s?u:k.call(e,u,t+"/").then(function(n){return E.call(e,n,t+"/")})}function a(e,t){if("/"!=t[t.length-1]&&e.defaultExtension!==!1){var n="."+(e.defaultExtension||"js");if(t.substr(t.length-n.length)!=n)return n}return""}function o(e,o,s,i,l){function u(e){return"."==e?o:"./"==e.substr(0,2)?r(d,o,s,c,e.substr(2),i,l):(i?d.normalizeSync:d.normalize).call(d,e)}var d=this,c=n(s);if(o===e&&s.main&&(e+="/"+("./"==s.main.substr(0,2)?s.main.substr(2):s.main)),e.length==o.length+1&&"/"==e[o.length])return e;if(e.length==o.length)return e+(d.defaultJSExtensions&&".js"!=e.substr(e.length-3,3)?".js":"");if(s.map)var f="."+e.substr(o.length),m=t(s.map,f)||!l&&t(s.map,f+=a(s,f.substr(2))),p=s.map[m];return"string"==typeof p?u(p+f.substr(m.length)):i||!p?r(d,o,s,c,e.substr(o.length+1),i,l):d.builder?o+"#:"+m.substr(2):d["import"](s.map["@env"]||"@system-env",o).then(function(e){for(var t in p){var n="~"==t[0],r=v(n?t.substr(1):t,e);if(!n&&r||n&&!r)return p[t]+f.substr(m.length)}}).then(function(t){return t?u(t):r(d,o,s,c,e.substr(o.length+1),i,l)})}function s(r,a){return function(s,l,d){function c(t,n,r){n=n||e.call(b,t);var r=r||n&&b.packages[n];return r?o.call(b,t,n,r,a,d):t+(v?".js":"")}if(d=d===!0,l)var f=e.call(this,l)||this.defaultJSExtensions&&".js"==l.substr(l.length-3,3)&&e.call(this,l.substr(0,l.length-3));if(f){var p=n(this.packages[f]);if(p&&l.substr(f.length+1,p.length)==p&&(l=f+l.substr(f.length+p.length)),"."!==s[0]){var h=this.packages[f].map;if(h){var g=t(h,s);g&&(s=h[g]+s.substr(g.length),"."===s[0]&&(l=f+"/"))}}}var v=this.defaultJSExtensions&&".js"!=s.substr(s.length-3,3),y=r.call(this,s,l);v&&".js"!=y.substr(y.length-3,3)&&(v=!1),v&&(y=y.substr(0,y.length-3)),f&&"."==s[0]&&y==f+"/"&&(y=f);var b=this;if(a)return c(y);var w=e.call(this,y),x=w&&this.packages[w];if(x&&x.configured)return c(y,w,x);var S=i(b,y);return S.pkgName?Promise.resolve(_(b,y)).then(function(e){if(e||m[S.pkgName]){var t=m[S.pkgName]=m[S.pkgName]||{bundles:[],promise:Promise.resolve()};return e&&-1==O.call(t.bundles,e)&&(t.bundles.push(e),t.promise=Promise.all([t.promise,b.load(e)])),t.promise}}).then(function(){return c(y,S.pkgName)}).then(function(e){return e in b.defined?e:u(b,S).then(function(){return c(y)})}):c(y,w,x)}}function i(e,t){for(var n,r=[],a=0;a<e.packageConfigPaths.length;a++){var o=e.packageConfigPaths[a],s=Math.max(o.lastIndexOf("*")+1,o.lastIndexOf("/")),i=t.match(p[o]||(p[o]=new RegExp("^("+o.substr(0,s).replace(/\*/g,"[^\\/]+")+")(/|$)")));!i||n&&n!=i[1]||(n=i[1],r.push(n+o.substr(s)))}return{pkgName:n,configPaths:r}}function u(e,t){var n=e.packages[t.pkgName];return n&&n.configured?Promise.resolve():y[t.pkgName]||(y[t.pkgName]=Promise.resolve().then(function(){for(var r=[],a=0;a<t.configPaths.length;a++)(function(a){r.push(e.fetch({name:a,address:a,metadata:{}}).then(function(e){try{return JSON.parse(e)}catch(t){throw new Error("Invalid JSON in package configuration file "+a)}}).then(function(r){r.systemjs&&(r=r.systemjs),r.meta&&(r.modules=r.meta,g.call(e,"Package config file "+a+" is configured with meta, which is deprecated as it has been renamed to modules."));for(var o in r)-1==O.call(J,o)&&delete r[o];if(r.main instanceof Array&&(r.main=r.main[0]),n&&h(r,n),r.depCache)for(var s in r.depCache)if("./"!=s.substr(0,2)){var i=e.normalizeSync(s);e.depCache[i]=(e.depCache[i]||[]).concat(r.depCache[s])}n=e.packages[t.pkgName]=r}))})(t.configPaths[a]);return Promise.all(r)}))}function f(e,t,n,r){var a;for(var o in e){var s="./"==o.substr(0,2)?"./":"";s&&(o=o.substr(2)),a=o.indexOf("*"),-1!==a&&o.substr(0,a)==n.substr(0,a)&&o.substr(a+1)==n.substr(n.length-o.length+a+1)&&r(o,e[s+o],o.split("/").length)}var i=e[n]||e["./"+n];i&&r(i,i,0)}c(function(e){return function(){e.call(this),this.packages={},this.packageConfigPaths={}}});var m={},p={},y={};l.prototype.normalizeSync=l.prototype.normalize,d("normalizeSync",function(e){return s(e,!0)}),d("normalize",function(e){return s(e,!1)}),d("locate",function(t){return function(r){var a=this;return Promise.resolve(t.call(this,r)).then(function(t){var o=e.call(a,r.name);if(o){var s=a.packages[o],i=n(s),l=r.name.substr(o.length+i.length+1);if(s.format&&(r.metadata.format=r.metadata.format||s.format),s.depCache)for(var u in s.depCache)if(u=="./"+l)for(var d=s.depCache[u],c=0;c<d.length;c++)a["import"](d[c],o+"/");var m={};if(s.modules){var p=0;f(s.modules,o,l,function(e,t,n){n>p&&(p=n),h(m,t,n&&p>n)}),m.alias&&"./"==m.alias.substr(0,2)&&(m.alias=o+m.alias.substr(1)),m.loader&&"./"==m.loader.substr(0,2)&&(m.loader=o+m.loader.substr(1)),h(r.metadata,m)}}return t})}})}(),function(){function t(){if(o&&"interactive"===o.script.readyState)return o.load;for(var e=0;e<l.length;e++)if("interactive"==l[e].script.readyState)return o=l[e],o.load}function n(e,t){return new Promise(function(e,n){t.metadata.integrity&&n(new Error("Subresource integrity checking is not supported in web workers.")),s=t;try{importScripts(t.address)}catch(r){s=null,n(r)}s=null,t.metadata.entry||n(new Error(t.address+" did not call System.register or AMD define")),e("")})}if("undefined"!=typeof document)var r=document.getElementsByTagName("head")[0];var a,o,s=null,i=r&&function(){var e=document.createElement("script"),t="undefined"!=typeof opera&&"[object Opera]"===opera.toString();return e.attachEvent&&!(e.attachEvent.toString&&e.attachEvent.toString().indexOf("[native code")<0)&&!t}(),l=[],u=0,c=[];d("pushRegister_",function(e){return function(n){return e.call(this,n)?!1:(s?this.reduceRegister_(s,n):i?this.reduceRegister_(t(),n):u?c.push(n):this.reduceRegister_(null,n),!0)}}),d("fetch",function(t){return function(s){var d=this;return s.metadata.scriptLoad&&(P||R)?R?n(d,s):new Promise(function(t,n){function f(e){if(!h.readyState||"loaded"==h.readyState||"complete"==h.readyState){if(u--,s.metadata.entry||c.length){if(!i){for(var r=0;r<c.length;r++)d.reduceRegister_(s,c[r]);c=[]}}else d.reduceRegister_(s);p(),s.metadata.entry||s.metadata.bundle||n(new Error(s.name+" did not call System.register or AMD define")),t("")}}function m(e){p(),n(new Error("Unable to load script "+s.address))}function p(){if(e.System=a,h.detachEvent){h.detachEvent("onreadystatechange",f);for(var t=0;t<l.length;t++)l[t].script==h&&(o&&o.script==h&&(o=null),l.splice(t,1))}else h.removeEventListener("load",f,!1),h.removeEventListener("error",m,!1);r.removeChild(h)}var h=document.createElement("script");h.async=!0,s.metadata.integrity&&h.setAttribute("integrity",s.metadata.integrity),i?(h.attachEvent("onreadystatechange",f),l.push({script:h,load:s})):(h.addEventListener("load",f,!1),h.addEventListener("error",m,!1)),u++,a=e.System,h.src=s.address,r.appendChild(h)}):t.call(this,s)}})}(),function(){function t(e,n,r){if(r[e.groupIndex]=r[e.groupIndex]||[],-1==O.call(r[e.groupIndex],e)){r[e.groupIndex].push(e);for(var a=0,o=e.normalizedDeps.length;o>a;a++){var s=e.normalizedDeps[a],i=n.defined[s];if(i&&!i.evaluated){var l=e.groupIndex+(i.declarative!=e.declarative);if(null===i.groupIndex||i.groupIndex<l){if(null!==i.groupIndex&&(r[i.groupIndex].splice(O.call(r[i.groupIndex],i),1),0==r[i.groupIndex].length))throw new Error("Mixed dependency cycle detected");i.groupIndex=l}t(i,n,r)}}}}function n(e,n){var r=n.defined[e];if(!r.module){r.groupIndex=0;var a=[];t(r,n,a);for(var s=!!r.declarative==a.length%2,l=a.length-1;l>=0;l--){for(var u=a[l],d=0;d<u.length;d++){var c=u[d];s?o(c,n):i(c,n)}s=!s}}}function r(){}function a(e,t){return t[e]||(t[e]={name:e,dependencies:[],exports:new r,importers:[]})}function o(t,n){if(!t.module){var r=n._loader.moduleRecords,s=t.module=a(t.name,r),i=t.module.exports,l=t.declare.call(e,function(e,t){if(s.locked=!0,"object"==typeof e)for(var n in e)i[n]=e[n];else i[e]=t;for(var r=0,a=s.importers.length;a>r;r++){var o=s.importers[r];if(!o.locked){var l=O.call(o.dependencies,s);o.setters[l](i)}}return s.locked=!1,t});if(s.setters=l.setters,s.execute=l.execute,!s.setters||!s.execute)throw new TypeError("Invalid System.register form for "+t.name);for(var u=0,d=t.normalizedDeps.length;d>u;u++){var c,f=t.normalizedDeps[u],m=n.defined[f],p=r[f];p?c=p.exports:m&&!m.declarative?c=m.esModule:m?(o(m,n),p=m.module,c=p.exports):c=n.get(f),p&&p.importers?(p.importers.push(s),s.dependencies.push(p)):s.dependencies.push(null);for(var h=t.originalIndices[u],g=0,v=h.length;v>g;++g){var y=h[g];s.setters[y]&&s.setters[y](c)}}}}function s(e,t){var n,r=t.defined[e];if(r)r.declarative?u(e,[],t):r.evaluated||i(r,t),n=r.module.exports;else if(n=t.get(e),!n)throw new Error("Unable to load dependency "+e+".");return(!r||r.declarative)&&n&&n.__useDefault?n["default"]:n}function i(t,n){if(!t.module){var r={},a=t.module={exports:r,id:t.name};if(!t.executingRequire)for(var o=0,l=t.normalizedDeps.length;l>o;o++){var u=t.normalizedDeps[o],d=n.defined[u];d&&i(d,n)}t.evaluated=!0;var c=t.execute.call(e,function(e){for(var r=0,a=t.deps.length;a>r;r++)if(t.deps[r]==e)return s(t.normalizedDeps[r],n);throw new Error("Module "+e+" not declared as a dependency.")},r,a);c&&(a.exports=c),r=a.exports,r&&r.__esModule?t.esModule=r:t.esmExports&&r!==e?t.esModule=m(r):t.esModule={"default":r}}}function u(t,n,r){var a=r.defined[t];if(a&&!a.evaluated&&a.declarative){n.push(t);for(var o=0,s=a.normalizedDeps.length;s>o;o++){var i=a.normalizedDeps[o];
-1==O.call(n,i)&&(r.defined[i]?u(i,n,r):r.get(i))}a.evaluated||(a.evaluated=!0,a.module.execute.call(e))}}function p(e){var t=e.match(h);return t&&"System.register"==e.substr(t[0].length,15)}l.prototype.register=function(e,t,n){if("string"!=typeof e&&(n=t,t=e,e=null),"boolean"==typeof n)return this.registerDynamic.apply(this,arguments);var r=b();r.name=e&&(this.normalizeSync||this.normalize).call(this,e),r.declarative=!0,r.deps=t,r.declare=n,this.pushRegister_({amd:!1,entry:r})},l.prototype.registerDynamic=function(e,t,n,r){"string"!=typeof e&&(r=n,n=t,t=e,e=null);var a=b();a.name=e&&(this.normalizeSync||this.normalize).call(this,e),a.deps=t,a.execute=r,a.executingRequire=n,this.pushRegister_({amd:!1,entry:a})},d("reduceRegister_",function(){return function(e,t){if(t){var n=t.entry,r=e&&e.metadata;if(n.name&&(n.name in this.defined||(this.defined[n.name]=n),r&&(r.bundle=!0)),!n.name||e&&n.name==e.name){if(!r)throw new TypeError("Unexpected anonymous System.register call.");if(r.entry)throw"register"==r.format?new Error("Multiple anonymous System.register calls in module "+e.name+". If loading a bundle, ensure all the System.register calls are named."):new Error("Module "+e.name+" interpreted as "+r.format+" module format, but called System.register.");r.format||(r.format="register"),r.entry=n}}}}),c(function(e){return function(){e.call(this),this.defined={},this._loader.moduleRecords={}}}),M(r,"toString",{value:function(){return"Module"}}),d("delete",function(e){return function(t){return delete this._loader.moduleRecords[t],delete this.defined[t],e.call(this,t)}});var h=/^\s*(\/\*[^\*]*(\*(?!\/)[^\*]*)*\*\/|\s*\/\/[^\n]*|\s*"[^"]+"\s*;?|\s*'[^']+'\s*;?)*\s*/;d("fetch",function(e){return function(t){return this.defined[t.name]?(t.metadata.format="defined",""):("register"!=t.metadata.format||t.metadata.authorization||t.metadata.scriptLoad===!1||(t.metadata.scriptLoad=!0),t.metadata.deps=t.metadata.deps||[],e.call(this,t))}}),d("translate",function(e){return function(t){return t.metadata.deps=t.metadata.deps||[],Promise.resolve(e.call(this,t)).then(function(e){return("register"==t.metadata.format||!t.metadata.format&&p(t.source))&&(t.metadata.format="register"),e})}}),d("instantiate",function(e){return function(e){var t,r=this;if(r.defined[e.name])t=r.defined[e.name],t.deps=t.deps.concat(e.metadata.deps);else if(e.metadata.entry)t=e.metadata.entry,t.deps=t.deps.concat(e.metadata.deps);else if(!(r.builder&&e.metadata.bundle||"register"!=e.metadata.format&&"esm"!=e.metadata.format&&"es6"!=e.metadata.format)){if("undefined"!=typeof U&&U.call(r,e),!e.metadata.entry&&!e.metadata.bundle)throw new Error(e.name+" detected as "+e.metadata.format+" but didn't execute.");t=e.metadata.entry,t&&e.metadata.deps&&(t.deps=t.deps.concat(e.metadata.deps))}t||(t=b(),t.deps=e.metadata.deps,t.execute=function(){}),r.defined[e.name]=t;var a=f(t.deps);t.deps=a.names,t.originalIndices=a.indices,t.name=e.name,t.esmExports=e.metadata.esmExports!==!1;for(var o=[],s=0,i=t.deps.length;i>s;s++)o.push(Promise.resolve(r.normalize(t.deps[s],e.name)));return Promise.all(o).then(function(a){return t.normalizedDeps=a,{deps:t.deps,execute:function(){return n(e.name,r),u(e.name,[],r),r.defined[e.name]=void 0,r.newModule(t.declarative?t.module.exports:t.esModule)}}})}})}(),function(){var t=/(^\s*|[}\);\n]\s*)(import\s+(['"]|(\*\s+as\s+)?[^"'\(\)\n;]+\s+from\s+['"]|\{)|export\s+\*\s+from\s+["']|export\s+(\{|default|function|class|var|const|let|async\s+function))/,n=/\$traceurRuntime\s*\./,r=/babelHelpers\s*\./;d("translate",function(a){return function(o){var s=this;return a.call(s,o).then(function(a){if("esm"==o.metadata.format||"es6"==o.metadata.format||!o.metadata.format&&a.match(t)){if("es6"==o.metadata.format&&g.call(s,"Module "+o.name+' has metadata setting its format to "es6", which is deprecated.\nThis should be updated to "esm".'),o.metadata.format="esm",s.transpiler===!1)throw new TypeError("Unable to dynamically transpile ES module as System.transpiler set to false.");return s.loadedTranspiler_=s.loadedTranspiler_||!1,s.pluginLoader&&(s.pluginLoader.loadedTranspiler_=s.loadedTranspiler_||!1),s.builder&&(o.metadata.originalSource=o.source),C.call(s,o).then(function(e){return o.metadata.sourceMap=void 0,e})}if(s.loadedTranspiler_===!1&&o.name==s.normalizeSync(s.transpiler)&&(g.call(s,"Note that internal transpilation via System.transpiler has been deprecated for transpiler plugins."),a.length>100&&(o.metadata.format=o.metadata.format||"global","traceur"===s.transpiler&&(o.metadata.exports="traceur"),"typescript"===s.transpiler&&(o.metadata.exports="ts")),s.loadedTranspiler_=!0),s.loadedTranspilerRuntime_===!1&&(o.name==s.normalizeSync("traceur-runtime")||o.name==s.normalizeSync("babel/external-helpers*"))&&(a.length>100&&(o.metadata.format=o.metadata.format||"global"),s.loadedTranspilerRuntime_=!0),("register"==o.metadata.format||o.metadata.bundle)&&s.loadedTranspilerRuntime_!==!0){if(!e.$traceurRuntime&&o.source.match(n))return s.loadedTranspilerRuntime_=s.loadedTranspilerRuntime_||!1,s["import"]("traceur-runtime").then(function(){return a});if(!e.babelHelpers&&o.source.match(r))return s.loadedTranspilerRuntime_=s.loadedTranspilerRuntime_||!1,s["import"]("babel/external-helpers").then(function(){return a})}return a})}})}();var W="undefined"!=typeof self?"self":"global";d("reduceRegister_",function(t){return function(n,r){if(r)return t.call(this,n,r);n.metadata.format="global";var a=n.metadata.entry=b(),o=v(n.metadata.exports,e);a.execute=function(){return o}}}),d("fetch",function(e){return function(t){return t.metadata.exports&&!t.metadata.format&&(t.metadata.format="global"),"global"!=t.metadata.format||t.metadata.authorization||!t.metadata.exports||t.metadata.globals||t.metadata.deps&&0!=t.metadata.deps.length||t.metadata.scriptLoad===!1||(t.metadata.scriptLoad=!0),e.call(this,t)}}),d("instantiate",function(e){return function(t){var n=this;if(t.metadata.format||(t.metadata.format="global"),t.metadata.globals&&t.metadata.globals instanceof Array){for(var r={},a=0;a<t.metadata.globals.length;a++)r[t.metadata.globals[a]]=t.metadata.globals[a];t.metadata.globals=r}if("global"==t.metadata.format&&!t.metadata.registered){var o=b();t.metadata.entry=o,o.deps=[];for(var s in t.metadata.globals)o.deps.push(t.metadata.globals[s]);o.execute=function(e,r,a){var o;if(t.metadata.globals){o={};for(var s in t.metadata.globals)o[s]=e(t.metadata.globals[s])}var i=t.metadata.exports;i&&(t.source+="\n"+W+'["'+i+'"] = '+i+";");var l=n.get("@@global-helpers").prepareGlobal(a.id,i,o);return U.call(n,t),l()}}return e.call(this,t)}}),c(function(t){return function(){function n(t){if(Object.keys)Object.keys(e).forEach(t);else for(var n in e)s.call(e,n)&&t(n)}function r(t){n(function(n){if(-1==O.call(i,n)){try{var r=e[n]}catch(a){i.push(n)}t(n,r)}})}var a=this;t.call(a);var o,s=Object.prototype.hasOwnProperty,i=["_g","sessionStorage","localStorage","clipboardData","frames","frameElement","external","mozAnimationStartTime","webkitStorageInfo","webkitIndexedDB"];a.set("@@global-helpers",a.newModule({prepareGlobal:function(t,n,a){var s=e.define;e.define=void 0,e.exports=void 0,e.module&&e.module.exports&&(e.module=void 0);var i;if(a){i={};for(var l in a)i[l]=e[l],e[l]=a[l]}return n||(o={},r(function(e,t){o[e]=t})),function(){var t;if(n)t=v(n,e);else{var a,l,u={};r(function(e,t){o[e]!==t&&"undefined"!=typeof t&&(u[e]=t,"undefined"!=typeof a?l||a===t||(l=!0):a=t)}),t=l?u:a}if(i)for(var d in i)e[d]=i[d];return e.define=s,t}}}))}}),function(){function t(e){function t(e,t,n){for(var r=0;r<e.length;r++)if(e[r][0]<t.index&&e[r][1]>t.index+(n?0:t[0].length))return!0;return!1}r.lastIndex=a.lastIndex=o.lastIndex=0;var n,s=[],i=[],l=[];if(e.length/e.split("\n").length<200){for(;n=o.exec(e);)i.push([n.index,n.index+n[0].length]);for(;n=a.exec(e);)t(i,n,!0)||l.push([n.index,n.index+n[0].length])}for(;n=r.exec(e);)t(i,n)||t(l,n)||s.push(n[1].substr(1,n[1].length-2));return s}var n=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.]|module\.)exports\s*(\[['"]|\.)|(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.])module\.exports\s*[=,]/,r=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF."'])require\s*\(\s*("[^"\\]*(?:\\.[^"\\]*)*"|'[^'\\]*(?:\\.[^'\\]*)*')\s*\)/g,a=/(^|[^\\])(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,o=/(?:"[^"\\\n\r]*(?:\\.[^"\\\n\r]*)*"|'[^'\\\n\r]*(?:\\.[^'\\\n\r]*)*')/g;if("undefined"!=typeof window&&"undefined"!=typeof document&&window.location)var s=location.protocol+"//"+location.hostname+(location.port?":"+location.port:"");"undefined"!=typeof require&&require.resolve&&"undefined"!=typeof process&&(l.prototype._nodeRequire=require);var i=["assert","buffer","child_process","cluster","console","constants","crypto","dgram","dns","domain","events","fs","http","https","module","net","os","path","process","punycode","querystring","readline","repl","stream","string_decoder","sys","timers","tls","tty","url","util","vm","zlib"];d("normalize",function(e){return function(t,n){if("@node/"==t.substr(0,6)&&-1!=i.indexOf(t.substr(6))){if(!this._nodeRequire)throw new TypeError("Can only load node core modules in Node.");this.set(t,this.newModule(m(this._nodeRequire(t.substr(6)))))}return e.apply(this,arguments)}}),d("instantiate",function(a){return function(o){var i=this;if(o.metadata.format||(n.lastIndex=0,r.lastIndex=0,(r.exec(o.source)||n.exec(o.source))&&(o.metadata.format="cjs")),"cjs"==o.metadata.format){var l=o.metadata.deps,u=t(o.source);for(var d in o.metadata.globals)u.push(o.metadata.globals[d]);var c=b();o.metadata.entry=c,c.deps=u,c.executingRequire=!0,c.execute=function(t,n,r){for(var a=0;a<l.length;a++)t(l[a]);var u=o.address||"",d=u.split("/");d.pop(),d=d.join("/"),"file:///"==u.substr(0,8)?(u=u.substr(7),d=d.substr(7),j&&(u=u.substr(1),d=d.substr(1))):s&&u.substr(0,s.length)===s&&(u=u.substr(s.length),d=d.substr(s.length));var c=e.define;e.define=void 0,e.__cjsWrapper={exports:n,args:[t,n,r,u,d,e,e]};var f="";if(o.metadata.globals)for(var m in o.metadata.globals)f+="var "+m+' = require("'+o.metadata.globals[m]+'");';o.source="(function(require, exports, module, __filename, __dirname, global, GLOBAL) {"+f+o.source+"\n}).apply(__cjsWrapper.exports, __cjsWrapper.args);",U.call(i,o),e.__cjsWrapper=void 0,e.define=c}}return a.call(i,o)}})}(),c(function(t){return function(){function n(e,t){e=e.replace(i,"");var n=e.match(c),r=(n[1].split(",")[t]||"require").replace(f,""),a=m[r]||(m[r]=new RegExp(l+r+u,"g"));a.lastIndex=0;for(var o,s=[];o=a.exec(e);)s.push(o[2]||o[3]);return s}function r(e,t,n,a){if("object"==typeof e&&!(e instanceof Array))return r.apply(null,Array.prototype.splice.call(arguments,1,arguments.length-1));if("string"==typeof e&&"function"==typeof t&&(e=[e]),!(e instanceof Array)){if("string"==typeof e){var o=s.get(s.normalizeSync(e,a));if(!o)throw new Error('Module not already loaded loading "'+e+'" from "'+a+'".');return o.__useDefault?o["default"]:o}throw new TypeError("Invalid require")}for(var i=[],l=0;l<e.length;l++)i.push(s["import"](e[l],a));Promise.all(i).then(function(e){t&&t.apply(null,e)},n)}function a(t,a,o){function i(t,n,i){function c(e,n,a){return"string"==typeof e&&"function"!=typeof n?t(e):r.call(s,e,n,a,i.id)}for(var f=[],m=0;m<a.length;m++)f.push(t(a[m]));i.uri=i.id,i.config=function(){},-1!=d&&f.splice(d,0,i),-1!=u&&f.splice(u,0,n),-1!=l&&(c.toUrl=function(e){var t=s.defaultJSExtensions&&".js"!=e.substr(e.length-3,3),n=s.normalizeSync(e,i.id);return t&&".js"==n.substr(n.length-3,3)&&(n=n.substr(0,n.length-3)),n},f.splice(l,0,c));var p=e.require;e.require=r;var h=o.apply(-1==u?e:n,f);return e.require=p,"undefined"==typeof h&&i&&(h=i.exports),"undefined"!=typeof h?h:void 0}"string"!=typeof t&&(o=a,a=t,t=null),a instanceof Array||(o=a,a=["require","exports","module"].splice(0,o.length)),"function"!=typeof o&&(o=function(e){return function(){return e}}(o)),void 0===a[a.length-1]&&a.pop();var l,u,d;-1!=(l=O.call(a,"require"))&&(a.splice(l,1),t||(a=a.concat(n(o.toString(),l)))),-1!=(u=O.call(a,"exports"))&&a.splice(u,1),-1!=(d=O.call(a,"module"))&&a.splice(d,1);var c=b();c.name=t&&(s.normalizeSync||s.normalize).call(s,t),c.deps=a,c.execute=i,s.pushRegister_({amd:!0,entry:c})}function o(){var t=e.module,n=e.exports,r=e.define;return e.module=void 0,e.exports=void 0,e.define=a,function(){e.define=r,e.module=t,e.exports=n}}var s=this;t.call(this);var i=/(\/\*([\s\S]*?)\*\/|([^:]|^)\/\/(.*)$)/gm,l="(?:^|[^$_a-zA-Z\\xA0-\\uFFFF.])",u="\\s*\\(\\s*(\"([^\"]+)\"|'([^']+)')\\s*\\)",c=/\(([^\)]*)\)/,f=/^\s+|\s+$/g,m={};a.amd={},d("reduceRegister_",function(e){return function(t,n){if(!n||!n.amd)return e.call(this,t,n);var r=t&&t.metadata,a=n.entry;if(r&&(r.format="amd"),a.name)r&&(r.entry||r.bundle?r.entry=void 0:r.entry=a,r.bundle=!0),a.name in this.defined||(this.defined[a.name]=a);else{if(!r)throw new TypeError("Unexpected anonymous AMD define.");if(r.entry)throw new TypeError("Multiple defines for anonymous module "+t.name);r.entry=a}}}),s.set("@@amd-helpers",s.newModule({createDefine:o,require:r,define:a})),s.amdDefine=a,s.amdRequire=r}}),function(){var e=/(?:^\uFEFF?|[^$_a-zA-Z\xA0-\uFFFF.])define\s*\(\s*("[^"]+"\s*,\s*|'[^']+'\s*,\s*)?\s*(\[(\s*(("[^"]+"|'[^']+')\s*,|\/\/.*\r?\n|\/\*(.|\s)*?\*\/))*(\s*("[^"]+"|'[^']+')\s*,?)?(\s*(\/\/.*\r?\n|\/\*(.|\s)*?\*\/))*\s*\]|function\s*|{|[_$a-zA-Z\xA0-\uFFFF][_$a-zA-Z0-9\xA0-\uFFFF]*\))/;d("fetch",function(e){return function(t){return"amd"!==t.metadata.format||t.metadata.authorization||t.metadata.scriptLoad===!1||(t.metadata.scriptLoad=!0),t.metadata.scriptLoad&&P&&this.get("@@amd-helpers").createDefine(),e.call(this,t)}}),d("instantiate",function(t){return function(n){var r=this;if("amd"==n.metadata.format||!n.metadata.format&&n.source.match(e))if(n.metadata.format="amd",r.builder||r.execute===!1)n.metadata.execute=function(){return n.metadata.builderExecute.apply(this,arguments)};else{var a=this.get("@@amd-helpers").createDefine();try{U.call(r,n)}finally{a()}if(!n.metadata.entry&&!n.metadata.bundle)throw new TypeError("AMD module "+n.name+" did not define")}return t.call(r,n)}})}(),function(){function e(e,t,n,r,a){function o(e,t){return c&&".js"==e.substr(e.length-3,3)&&(e=e.substr(0,e.length-3)),s.pluginFirst?t+"!"+e:e+"!"+t}var s=this;if(n){var i;s.pluginFirst?-1!=(i=n.lastIndexOf("!"))&&(n=n.substr(i+1)):-1!=(i=n.indexOf("!"))&&(n=n.substr(0,i))}var l=t.lastIndexOf("!");if(-1!=l){var u,d;s.pluginFirst?(u=t.substr(l+1),d=t.substr(0,l)):(u=t.substr(0,l),d=t.substr(l+1)||u.substr(u.lastIndexOf(".")+1));var c=s.defaultJSExtensions&&".js"!=u.substr(u.length-3,3);return a?(u=s.normalizeSync(u,n),d=s.normalizeSync(d,n),o(u,d)):Promise.all([s.normalize(u,n,!0),s.normalize(d,n,!0)]).then(function(e){return o(e[0],e[1])})}return e.call(s,t,n,r)}d("normalize",function(t){return function(n,r,a){return e.call(this,t,n,r,a,!1)}}),d("normalizeSync",function(t){return function(n,r,a){return e.call(this,t,n,r,a,!0)}}),d("locate",function(e){return function(t){var n,r=this,a=t.name;return r.pluginFirst?-1!=(n=a.indexOf("!"))&&(t.metadata.loader=a.substr(0,n),t.name=a.substr(n+1)):-1!=(n=a.lastIndexOf("!"))&&(t.metadata.loader=a.substr(n+1),t.name=a.substr(0,n)),e.call(r,t).then(function(e){var n=t.metadata.loader;if(!n)return e;if(r.defined&&r.defined[a])return e;var o=r.pluginLoader||r;return o["import"](n).then(function(n){return t.metadata.loaderModule=n,t.address=e,n.locate?n.locate.call(r,t):e})})}}),d("fetch",function(e){return function(t){var n=this;return t.metadata.loaderModule&&t.metadata.loaderModule.fetch?(t.metadata.scriptLoad=!1,t.metadata.loaderModule.fetch.call(n,t,function(t){return e.call(n,t)})):e.call(n,t)}}),d("translate",function(e){return function(t){var n=this;return t.metadata.loaderModule&&t.metadata.loaderModule.translate?Promise.resolve(t.metadata.loaderModule.translate.call(n,t)).then(function(r){return"string"==typeof r&&(t.source=r),e.call(n,t)}):e.call(n,t)}}),d("instantiate",function(e){return function(t){var n=this,r=t.metadata.sourceMap;if(r&&"object"==typeof r){var a=t.name.split("!")[0];r.file=a+"!transpiled",r.sources&&1!=r.sources.length||(r.sources=[a]),t.metadata.sourceMap=JSON.stringify(r)}return t.metadata.loaderModule&&t.metadata.loaderModule.instantiate?Promise.resolve(t.metadata.loaderModule.instantiate.call(n,t)).then(function(r){return t.metadata.entry=b(),t.metadata.entry.execute=function(){return r},t.metadata.entry.deps=t.metadata.deps,t.metadata.format="defined",e.call(n,t)}):e.call(n,t)}})}();var X=/#\{[^\}]+\}/;c(function(e){return function(){e.call(this),this.set("@system-env",this.newModule({browser:P,node:!!this._nodeRequire}))}}),d("normalize",function(e){return function(t,n,r){var a=this;return k.call(a,t,n).then(function(t){return e.call(a,t,n,r)}).then(function(e){return E.call(a,e,n)})}}),function(){d("fetch",function(e){return function(t){var n=t.metadata.alias,r=t.metadata.deps||[];return n?(t.metadata.format="defined",this.defined[t.name]={declarative:!0,deps:r.concat([n]),declare:function(e){return{setters:[function(t){for(var n in t)e(n,t[n])}],execute:function(){}}}},""):e.call(this,t)}})}(),function(){function e(e,t,n){for(var r,a=t.split(".");a.length>1;)r=a.shift(),e=e[r]=e[r]||{};r=a.shift(),r in e||(e[r]=n)}c(function(e){return function(){this.meta={},e.call(this)}}),d("locate",function(e){return function(t){var n,r=this.meta,a=t.name,o=0;for(var s in r)if(n=s.indexOf("*"),-1!==n&&s.substr(0,n)===a.substr(0,n)&&s.substr(n+1)===a.substr(a.length-s.length+n+1)){var i=s.split("/").length;i>o&&(o=i),h(t.metadata,r[s],o!=i)}return r[a]&&h(t.metadata,r[a]),e.call(this,t)}});var t=/^(\s*\/\*[^\*]*(\*(?!\/)[^\*]*)*\*\/|\s*\/\/[^\n]*|\s*"[^"]+"\s*;?|\s*'[^']+'\s*;?)+/,n=/\/\*[^\*]*(\*(?!\/)[^\*]*)*\*\/|\/\/[^\n]*|"[^"]+"\s*;?|'[^']+'\s*;?/g;d("translate",function(r){return function(a){var o=a.source.match(t);if(o)for(var s=o[0].match(n),i=0;i<s.length;i++){var l=s[i],u=l.length,d=l.substr(0,1);if(";"==l.substr(u-1,1)&&u--,'"'==d||"'"==d){var c=l.substr(1,l.length-3),f=c.substr(0,c.indexOf(" "));if(f){var m=c.substr(f.length+1,c.length-f.length-1);"[]"==f.substr(f.length-2,2)?(f=f.substr(0,f.length-2),a.metadata[f]=a.metadata[f]||[],a.metadata[f].push(m)):a.metadata[f]instanceof Array?(g.call(this,"Module "+a.name+' contains deprecated "deps '+m+'" meta syntax.\nThis should be updated to "deps[] '+m+'" for pushing to array meta.'),a.metadata[f].push(m)):e(a.metadata,f,m)}else a.metadata[c]=!0}}return r.call(this,a)}})}(),function(){c(function(e){return function(){e.call(this),this.bundles={},this.loadedBundles_={}}}),d("locate",function(e){return function(t){var n=this;return(t.name in n.loadedBundles_||t.name in n.bundles)&&(t.metadata.bundle=!0),t.name in n.defined?e.call(this,t):_(n,t.name).then(function(e){return e?n.load(e):void 0}).then(function(){return e.call(n,t)})}})}(),function(){c(function(e){return function(){e.call(this),this.depCache={}}}),d("locate",function(e){return function(t){var n=this,r=n.depCache[t.name];if(r)for(var a=0;a<r.length;a++)n["import"](r[a]);return e.call(n,t)}})}(),F=new l,F.version="0.19.6 Standard","object"==typeof exports&&(module.exports=a),e.Reflect=e.Reflect||{},e.Reflect.Loader=e.Reflect.Loader||a,e.Reflect.global=e.Reflect.global||e,e.LoaderPolyfill=a,F||(F=new o,F.constructor=o),"object"==typeof exports&&(module.exports=F),e.System=F}("undefined"!=typeof self?self:global)}try{var t="undefined"!=typeof URLPolyfill||"test:"==new URL("test:///").protocol}catch(n){}if("undefined"!=typeof Promise&&t)e();else if("undefined"!=typeof document){var r=document.getElementsByTagName("script");$__curScript=r[r.length-1];var a=$__curScript.src,o=a.substr(0,a.lastIndexOf("/")+1);window.systemJSBootstrap=e,document.write('<script type="text/javascript" src="'+o+'system-polyfills.js"></script>')}else if("undefined"!=typeof importScripts){var o="";try{throw new Error("_")}catch(n){n.stack.replace(/(?:at|@).*(http.+):[\d]+:[\d]+/,function(e,t){o=t.replace(/\/[^\/]*$/,"/")})}importScripts(o+"system-polyfills.js"),e()}else e()}();
//# sourceMappingURL=system.js.map //# sourceMappingURL=system.js.map
{"version":3,"sources":["system.src.js"],"names":["$__global","upgradeSystemLoader","parseURI","url","m","String","replace","match","href","protocol","authority","host","hostname","port","pathname","search","hash","toAbsoluteURL","base","removeDotSegments","input","output","p","pop","push","join","charAt","slice","lastIndexOf","core","loader","applyExtensions","extensions","_extensions","i","len","length","loaderImport","name","options","call","this","then","module","__useDefault","set","newModule","require","_nodeRequire","config","cfg","c","v","Array","baseURI","window","WorkerGlobalScope","process","cwd","global","location","document","bases","getElementsByTagName","normalizedBaseURL","loaderLocate","locate","load","baseURL","substr","Promise","resolve","clone","originalLoader","LoaderPolyfill","originalSystem","paths","*","meta","setConfigMeta","metadata","metaRegEx","metaPartRegEx","loaderTranslate","translate","source","metaParts","firstChar","metaString","metaName","indexOf","metaValue","register","exec","curSystem","System","sourceMappingURL","lastLineIndex","address","__eval","traceurSystem","dedupe","deps","newDeps","l","registerModule","declare","execute","calledRegister","declarative","executingRequire","defined","anonRegister","TypeError","defineRegister","onScriptLoad","entry","format","registered","buildGroups","groups","groupIndex","normalizedDeps","depName","depEntry","evaluated","depGroupIndex","undefined","splice","link","startEntry","curGroupDeclarative","group","j","linkDeclarativeModule","linkDynamicModule","getOrCreateModuleRecord","moduleRecords","dependencies","exports","importers","declaration","value","locked","importerModule","importerIndex","setters","depExports","depModule","default","get","getModule","ensureEvaluated","Error","id","moduleName","seen","prototype","eval","__exec","registerRegEx","loaderFetch","fetch","init","loaderInstantiate","instantiate","concat","normalizePromises","normalize","all","es6","setParser","parser","parserName","parserModule","parserRuntimeModule","parserRuntimeGlobal","$__curScript","getAttribute","src","isBrowser","es6RegEx","readGlobalProperty","pParts","split","shift","createHelpers","has","curGlobalObj","ignoredGlobalProps","hasOwnProperty","moduleGlobals","prepareGlobal","moduleGlobal","g","e","retrieveGlobal","exportName","singleGlobal","multipleExports","depModules","apply","firstPart","define","cjs","getCJSDeps","cjsRequireRegEx","lastIndex","commentRegEx","cjsExportsRegEx","dirname","_g","__filename","__dirname","amd","requireIndex","params","fnBracketRegEx","requireAlias","wsRegEx","requireRegEx","requireRegExs","RegExp","cjsRequirePre","cjsRequirePost","names","callback","errback","referer","arguments","map","modules","makeRequire","parentName","staticRequire","generateDefine","factory","exportsIndex","moduleIndex","factoryText","toString","depValues","uri","anonDefine","defineBundle","amdDefine","createDefine","oldModule","oldExports","oldDefine","removeDefine","isNode","amdRegEx","amdRequire","scriptLoader","prefixMatch","prefix","pathLen","doMap","matchLen","applyMap","curMatch","curParent","tmpParentLength","tmpPrefixLength","curMatchLength","curParentMatchLength","curMap","q","loaderNormalize","parentAddress","isPackage","nameParts","pkgName","plugins","parentPluginIndex","pluginIndex","argumentName","pluginName","_pluginName","pluginLoader","plugin","build","pluginArgument","pluginFetchCalled","result","bundles","trace","b","normalized","bundle","versions","toInt","num","parseInt","parseSemver","semver","semverRegEx","major","minor","patch","pre","tag","semverCompareParsed","v1","v2","parts","part","part1","part2","isNaN","Math","min","isNum1","numRegEx","isNum2","matchParsed","range","version","rangeVersion","fuzzy","parseRange","rangeObj","semverCompare","stripVersion","stripSubPathLength","packageVersions","versionIndex","index","nextChar","packageName","rangeLength","parsedRange","versionRequest","sort","depCache","item","noConflict","SystemJS","doEval","sourceMap","msg","message","isWorker","self","head","scripts","body","documentElement","script","createElement","text","onerror","_e","appendChild","removeChild","curPath","basePath","write","err","idx","stack","withSystem","importScripts","es6ModuleLoader","Loader","vm","runInThisContext"],"mappings":"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"}
\ No newline at end of file
!function(a){"use strict";function b(a){return{configurable:!0,enumerable:!1,value:a,writable:!0}}function c(){return"__$"+Math.floor(1e9*Math.random())+"$"+ ++S+"$__"}function d(a){return X[a]}function e(){var a=c();return X[a]=!0,a}function f(a){return"object"==typeof a&&a instanceof i}function g(a){return f(a)?"symbol":typeof a}function h(a){var b=new i(a);if(!(this instanceof h))return b;throw new TypeError("Symbol cannot be new'ed")}function i(a){var b=c();I(this,V,{value:this}),I(this,T,{value:b}),I(this,U,{value:a}),k(this),W[b]=this}function j(a){var b=a[Y];return b&&b.self===a?b:Q(a)?($.hash.value=_++,$.self.value=a,Z.value=G(null,$),I(a,Y,Z),Z.value):void 0}function k(a){return j(a),J.apply(this,arguments)}function l(a){return j(a),O.apply(this,arguments)}function m(a){return j(a),P.apply(this,arguments)}function n(a){return W[a]||X[a]}function o(a){return f(a)?a[T]:a}function p(a){for(var b=[],c=0;c<a.length;c++)n(a[c])||b.push(a[c]);return b}function q(a){return p(L(a))}function r(a){return p(M(a))}function s(a){for(var b=[],c=L(a),d=0;d<c.length;d++){var e=W[c[d]];e&&b.push(e)}return b}function t(a,b){return K(a,o(b))}function u(a){return N.call(this,o(a))}function v(b){return a.$traceurRuntime.options[b]}function w(a,b,c){return f(b)&&(b=b[T]),I(a,b,c),a}function x(a){I(a,"defineProperty",{value:w}),I(a,"getOwnPropertyNames",{value:q}),I(a,"getOwnPropertyDescriptor",{value:t}),I(a.prototype,"hasOwnProperty",{value:u}),I(a,"freeze",{value:k}),I(a,"preventExtensions",{value:l}),I(a,"seal",{value:m}),I(a,"keys",{value:r})}function y(a){for(var b=1;b<arguments.length;b++)for(var c=L(arguments[b]),d=0;d<c.length;d++){var e=c[d];n(e)||!function(b,c){I(a,c,{get:function(){return b[c]},enumerable:!0})}(arguments[b],c[d])}return a}function z(a){return null!=a&&("object"==typeof a||"function"==typeof a)}function A(a){if(null==a)throw F();return E(a)}function B(a){if(null==a)throw new TypeError("Value cannot be converted to an Object");return a}function C(a,b){a.Symbol||(a.Symbol=b,Object.getOwnPropertySymbols=s),a.Symbol.iterator||(a.Symbol.iterator=b("Symbol.iterator"))}function D(a){C(a,h),a.Reflect=a.Reflect||{},a.Reflect.global=a.Reflect.global||a,x(a.Object)}if(!a.$traceurRuntime){var E=Object,F=TypeError,G=E.create,H=E.defineProperties,I=E.defineProperty,J=E.freeze,K=E.getOwnPropertyDescriptor,L=E.getOwnPropertyNames,M=E.keys,N=E.prototype.hasOwnProperty,O=(E.prototype.toString,Object.preventExtensions),P=Object.seal,Q=Object.isExtensible,R=b,S=0,T=c(),U=c(),V=c(),W=G(null),X=G(null);I(h.prototype,"constructor",b(h)),I(h.prototype,"toString",R(function(){var a=this[V];if(!v("symbols"))return a[T];if(!a)throw TypeError("Conversion from symbol to string");var b=a[U];return void 0===b&&(b=""),"Symbol("+b+")"})),I(h.prototype,"valueOf",R(function(){var a=this[V];if(!a)throw TypeError("Conversion from symbol to string");return v("symbols")?a:a[T]})),I(i.prototype,"constructor",b(h)),I(i.prototype,"toString",{value:h.prototype.toString,enumerable:!1}),I(i.prototype,"valueOf",{value:h.prototype.valueOf,enumerable:!1});var Y=e(),Z={value:void 0},$={hash:{value:void 0},self:{value:void 0}},_=0;k(i.prototype),D(a),a.$traceurRuntime={checkObjectCoercible:B,createPrivateName:e,defineProperties:H,defineProperty:I,exportStar:y,getOwnHashObject:j,getOwnPropertyDescriptor:K,getOwnPropertyNames:L,isObject:z,isPrivateName:d,isSymbolString:n,keys:M,options:{},setupGlobals:D,toObject:A,toProperty:o,"typeof":g}}}("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this),function(){"use strict";function a(a,c){function d(a){return"/"===a.slice(-1)}function e(a){return"/"===a[0]}function f(a){return"."===a[0]}return b=b||"undefined"!=typeof require&&require("path"),d(c)||e(c)?void 0:require(f(c)?b.resolve(b.dirname(a),c):c)}var b;$traceurRuntime.require=a}(),function(){"use strict";function a(){for(var a,b=[],c=0,d=0;d<arguments.length;d++){var e=$traceurRuntime.checkObjectCoercible(arguments[d]);if("function"!=typeof e[$traceurRuntime.toProperty(Symbol.iterator)])throw new TypeError("Cannot spread non-iterable object.");for(var f=e[$traceurRuntime.toProperty(Symbol.iterator)]();!(a=f.next()).done;)b[c++]=a.value}return b}$traceurRuntime.spread=a}(),function(){"use strict";function a(a){for(var b,c=[],d=0;!(b=a.next()).done;)c[d++]=b.value;return c}$traceurRuntime.iteratorToArray=a}(),function(){"use strict";function a(a,b){var c=n(a);do{var d=m(c,b);if(d)return d;c=n(c)}while(c);return void 0}function b(a){return a.__proto__}function c(b,c,d){var e=a(c,d);return e?e.get?e.get.call(b):e.value:void 0}function d(b,c,d,e){var f=a(c,d);if(f&&f.set)return f.set.call(b,e),e;throw i("super has no setter '"+d+"'.")}function e(a){for(var b={},c=p(a),d=0;d<c.length;d++){var e=c[d];b[e]=m(a,e)}for(var f=q(a),d=0;d<f.length;d++){var g=f[d];b[$traceurRuntime.toProperty(g)]=m(a,$traceurRuntime.toProperty(g))}return b}function f(a,b,c,d){return l(b,"constructor",{value:a,configurable:!0,enumerable:!1,writable:!0}),arguments.length>3?("function"==typeof d&&(a.__proto__=d),a.prototype=j(g(d),e(b))):a.prototype=b,l(a,"prototype",{configurable:!1,writable:!1}),k(a,e(c))}function g(a){if("function"==typeof a){var b=a.prototype;if(h(b)===b||null===b)return a.prototype;throw new i("super prototype must be an Object or null")}if(null===a)return null;throw new i("Super expression must either be null or a function, not "+typeof a+".")}var h=Object,i=TypeError,j=h.create,k=$traceurRuntime.defineProperties,l=$traceurRuntime.defineProperty,m=$traceurRuntime.getOwnPropertyDescriptor,n=($traceurRuntime.getOwnPropertyNames,Object.getPrototypeOf),o=Object,p=o.getOwnPropertyNames,q=o.getOwnPropertySymbols;$traceurRuntime.createClass=f,$traceurRuntime.superConstructor=b,$traceurRuntime.superGet=c,$traceurRuntime.superSet=d}(),function(){"use strict";function a(a){return{configurable:!0,enumerable:!1,value:a,writable:!0}}function b(a){return new Error("Traceur compiler bug: invalid state in state machine: "+a)}function c(){this.state=0,this.GState=r,this.storedException=void 0,this.finallyFallThrough=void 0,this.sent_=void 0,this.returnValue=void 0,this.tryStack_=[]}function d(a,b,c,d){switch(a.GState){case s:throw new Error('"'+c+'" on executing generator');case u:if("next"==c)return{value:void 0,done:!0};throw d;case r:if("throw"===c)throw a.GState=u,d;if(void 0!==d)throw q("Sent value to newborn generator");case t:a.GState=s,a.action=c,a.sent=d;var e=b(a),f=e===a;return f&&(e=a.returnValue),a.GState=f?u:t,{value:e,done:f}}}function e(){}function f(){}function g(a,b,d){var e=k(a,d),f=new c,g=p(b.prototype);return g[x]=f,g[y]=e,g}function h(a){return a.prototype=p(f.prototype),a.__proto__=f,a}function i(){c.call(this),this.err=void 0;var a=this;a.result=new Promise(function(b,c){a.resolve=b,a.reject=c})}function j(a,b){var c=k(a,b),d=new i;return d.createCallback=function(a){return function(b){d.state=a,d.value=b,c(d)}},d.errback=function(a){l(d,a),c(d)},c(d),d.result}function k(a,b){return function(c){for(;;)try{return a.call(b,c)}catch(d){l(c,d)}}}function l(a,b){a.storedException=b;var c=a.tryStack_[a.tryStack_.length-1];return c?(a.state=void 0!==c["catch"]?c["catch"]:c["finally"],void(void 0!==c.finallyFallThrough&&(a.finallyFallThrough=c.finallyFallThrough))):void a.handleException(b)}if("object"!=typeof $traceurRuntime)throw new Error("traceur runtime not found.");var m=$traceurRuntime.createPrivateName,n=$traceurRuntime.defineProperties,o=$traceurRuntime.defineProperty,p=Object.create,q=TypeError,r=0,s=1,t=2,u=3,v=-2,w=-3;c.prototype={pushTry:function(a,b){if(null!==b){for(var c=null,d=this.tryStack_.length-1;d>=0;d--)if(void 0!==this.tryStack_[d]["catch"]){c=this.tryStack_[d]["catch"];break}null===c&&(c=w),this.tryStack_.push({"finally":b,finallyFallThrough:c})}null!==a&&this.tryStack_.push({"catch":a})},popTry:function(){this.tryStack_.pop()},get sent(){return this.maybeThrow(),this.sent_},set sent(a){this.sent_=a},get sentIgnoreThrow(){return this.sent_},maybeThrow:function(){if("throw"===this.action)throw this.action="next",this.sent_},end:function(){switch(this.state){case v:return this;case w:throw this.storedException;default:throw b(this.state)}},handleException:function(a){throw this.GState=u,this.state=v,a}};var x=m(),y=m();e.prototype=f,o(f,"constructor",a(e)),f.prototype={constructor:f,next:function(a){return d(this[x],this[y],"next",a)},"throw":function(a){return d(this[x],this[y],"throw",a)}},n(f.prototype,{constructor:{enumerable:!1},next:{enumerable:!1},"throw":{enumerable:!1}}),Object.defineProperty(f.prototype,Symbol.iterator,a(function(){return this})),i.prototype=p(c.prototype),i.prototype.end=function(){switch(this.state){case v:this.resolve(this.returnValue);break;case w:this.reject(this.storedException);break;default:this.reject(b(this.state))}},i.prototype.handleException=function(){this.state=w},$traceurRuntime.asyncWrap=j,$traceurRuntime.initGeneratorFunction=h,$traceurRuntime.createGeneratorInstance=g}(),function(){function a(a,b,c,d,e,f,g){var h=[];return a&&h.push(a,":"),c&&(h.push("//"),b&&h.push(b,"@"),h.push(c),d&&h.push(":",d)),e&&h.push(e),f&&h.push("?",f),g&&h.push("#",g),h.join("")}function b(a){return a.match(h)}function c(a){if("/"===a)return"/";for(var b="/"===a[0]?"/":"",c="/"===a.slice(-1)?"/":"",d=a.split("/"),e=[],f=0,g=0;g<d.length;g++){var h=d[g];switch(h){case"":case".":break;case"..":e.length?e.pop():f++;break;default:e.push(h)}}if(!b){for(;f-->0;)e.unshift("..");0===e.length&&e.push(".")}return b+e.join("/")+c}function d(b){var d=b[i.PATH]||"";return d=c(d),b[i.PATH]=d,a(b[i.SCHEME],b[i.USER_INFO],b[i.DOMAIN],b[i.PORT],b[i.PATH],b[i.QUERY_DATA],b[i.FRAGMENT])}function e(a){var c=b(a);return d(c)}function f(a,c){var e=b(c),f=b(a);if(e[i.SCHEME])return d(e);e[i.SCHEME]=f[i.SCHEME];for(var g=i.SCHEME;g<=i.PORT;g++)e[g]||(e[g]=f[g]);if("/"==e[i.PATH][0])return d(e);var h=f[i.PATH],j=h.lastIndexOf("/");return h=h.slice(0,j+1)+e[i.PATH],e[i.PATH]=h,d(e)}function g(a){if(!a)return!1;if("/"===a[0])return!0;var c=b(a);return c[i.SCHEME]?!0:!1}var h=new RegExp("^(?:([^:/?#.]+):)?(?://(?:([^/?#]*)@)?([\\w\\d\\-\\u0100-\\uffff.%]*)(?::([0-9]+))?)?([^?#]+)?(?:\\?([^#]*))?(?:#(.*))?$"),i={SCHEME:1,USER_INFO:2,DOMAIN:3,PORT:4,PATH:5,QUERY_DATA:6,FRAGMENT:7};$traceurRuntime.canonicalizeUrl=e,$traceurRuntime.isAbsolute=g,$traceurRuntime.removeDotSegments=c,$traceurRuntime.resolveUrl=f}(),function(){"use strict";function a(a){for(var b=[],e=1;e<arguments.length;e++)b[e-1]=arguments[e];var f=d,g=$traceurRuntime.getOwnHashObject(a).hash;f[g]||(f[g]=Object.create(null)),f=f[g];for(var h=0;h<b.length-1;h++)g=$traceurRuntime.getOwnHashObject(b[h]).hash,f[g]||(f[g]=Object.create(null)),f=f[g];var i=b[b.length-1];return g=$traceurRuntime.getOwnHashObject(i).hash,f[g]||(f[g]=new c(a,b)),f[g]}var b={any:{name:"any"},"boolean":{name:"boolean"},number:{name:"number"},string:{name:"string"},symbol:{name:"symbol"},"void":{name:"void"}},c=function(a,b){this.type=a,this.argumentTypes=b};$traceurRuntime.createClass(c,{},{});var d=Object.create(null);$traceurRuntime.GenericType=c,$traceurRuntime.genericType=a,$traceurRuntime.type=b}(),function(a){"use strict";function b(a,b){var c=[],d=b-3;0>d&&(d=0);for(var e=d;b>e;e++)c.push(a[e]);return c}function c(a,b){var c=b+1;c>a.length-1&&(c=a.length-1);for(var d=[],e=b;c>=e;e++)d.push(a[e]);return d}function d(a){for(var b="",c=0;a-1>c;c++)b+="-";return b}function e(a){if(a){var b=t.normalize(a);return l[b]}}function f(a){var b=arguments[1],c=Object.create(null);return Object.getOwnPropertyNames(a).forEach(function(d){var e,f;if(b===s){var g=Object.getOwnPropertyDescriptor(a,d);g.get&&(e=g.get)}e||(f=a[d],e=function(){return f}),Object.defineProperty(c,d,{get:e,enumerable:!0})}),Object.preventExtensions(c),c}var g,h=$traceurRuntime,i=h.canonicalizeUrl,j=h.resolveUrl,k=h.isAbsolute,l=Object.create(null);g=a.location&&a.location.href?j(a.location.href,"./"):"";var m=function(a,b){this.url=a,this.value_=b};$traceurRuntime.createClass(m,{},{});var n=function(a,b){this.message=this.constructor.name+": "+this.stripCause(b)+" in "+a,this.stack=b instanceof o||!b.stack?"":this.stripStack(b.stack)},o=n;$traceurRuntime.createClass(n,{stripError:function(a){return a.replace(/.*Error:/,this.constructor.name+":")},stripCause:function(a){return a?a.message?this.stripError(a.message):a+"":""},loadedBy:function(a){this.stack+="\n loaded by "+a},stripStack:function(a){var b=[];return a.split("\n").some(function(a){return/UncoatedModuleInstantiator/.test(a)?!0:void b.push(a)}),b[0]=this.stripError(b[0]),b.join("\n")}},{},Error);var p=function(a,b){$traceurRuntime.superConstructor(q).call(this,a,null),this.func=b},q=p;$traceurRuntime.createClass(p,{getUncoatedModule:function(){if(this.value_)return this.value_;try{var e;return void 0!==typeof $traceurRuntime&&(e=$traceurRuntime.require.bind(null,this.url)),this.value_=this.func.call(a,e)}catch(f){if(f instanceof n)throw f.loadedBy(this.url),f;if(f.stack){var g=this.func.toString().split("\n"),h=[];f.stack.split("\n").some(function(a){if(a.indexOf("UncoatedModuleInstantiator.getUncoatedModule")>0)return!0;var e=/(at\s[^\s]*\s).*>:(\d*):(\d*)\)/.exec(a);if(e){var f=parseInt(e[2],10);h=h.concat(b(g,f)),h.push(d(e[3])+"^"),h=h.concat(c(g,f)),h.push("= = = = = = = = =")}else h.push(a)}),f.stack=h.join("\n")}throw new n(this.url,f)}}},{},m);var r=Object.create(null),s={},t={normalize:function(a,b){if("string"!=typeof a)throw new TypeError("module name must be a string, not "+typeof a);if(k(a))return i(a);if(/[^\.]\/\.\.\//.test(a))throw new Error("module name embeds /../: "+a);return"."===a[0]&&b?j(b,a):i(a)},get:function(a){var b=e(a);if(!b)return void 0;var c=r[b.url];return c?c:(c=f(b.getUncoatedModule(),s),r[b.url]=c)},set:function(a,b){a=String(a),l[a]=new p(a,function(){return b}),r[a]=b},get baseURL(){return g},set baseURL(a){g=String(a)},registerModule:function(a,b,c){var d=t.normalize(a);if(l[d])throw new Error("duplicate module named "+d);l[d]=new p(d,c)},bundleStore:Object.create(null),register:function(a,b,c){b&&(b.length||c.length)?this.bundleStore[a]={deps:b,execute:function(){var a=arguments,d={};b.forEach(function(b,c){return d[b]=a[c]});var e=c.call(this,d);return e.execute.call(this),e.exports}}:this.registerModule(a,b,c)},getAnonymousModule:function(b){return new f(b.call(a),s)},getForTesting:function(a){var b=this;return this.testingPrefix_||Object.keys(r).some(function(a){var c=/(traceur@[^\/]*\/)/.exec(a);return c?(b.testingPrefix_=c[1],!0):void 0}),this.get(this.testingPrefix_+a)}},u=new f({ModuleStore:t});t.set("@traceur/src/runtime/ModuleStore",u),t.set("@traceur/src/runtime/ModuleStore.js",u);var v=$traceurRuntime.setupGlobals;$traceurRuntime.setupGlobals=function(a){v(a)},$traceurRuntime.ModuleStore=t,a.System={register:t.register.bind(t),registerModule:t.registerModule.bind(t),get:t.get,set:t.set,normalize:t.normalize},$traceurRuntime.getModuleImpl=function(a){var b=e(a);return b&&b.getUncoatedModule()}}("undefined"!=typeof window?window:"undefined"!=typeof global?global:"undefined"!=typeof self?self:this),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js",[],function(){"use strict";function a(a){return a>>>0}function b(a){return a&&("object"==typeof a||"function"==typeof a)}function c(a){return"function"==typeof a}function d(a){return"number"==typeof a}function e(a){return a=+a,u(a)?0:0!==a&&t(a)?a>0?s(a):r(a):a}function f(a){var b=e(a);return 0>b?0:w(b,y)}function g(a){return b(a)?a[Symbol.iterator]:void 0}function h(a){return c(a)}function i(a,b){return{value:a,done:b}}function j(a,b,c){b in a||Object.defineProperty(a,b,c)}function k(a,b,c){j(a,b,{value:c,configurable:!0,enumerable:!1,writable:!0})}function l(a,b,c){j(a,b,{value:c,configurable:!1,enumerable:!1,writable:!1})}function m(a,b){for(var c=0;c<b.length;c+=2){var d=b[c],e=b[c+1];k(a,d,e)}}function n(a,b){for(var c=0;c<b.length;c+=2){var d=b[c],e=b[c+1];l(a,d,e)}}function o(a,b,c){c&&c.iterator&&!a[c.iterator]&&(a["@@iterator"]&&(b=a["@@iterator"]),Object.defineProperty(a,c.iterator,{value:b,configurable:!0,enumerable:!1,writable:!0}))}function p(a){z.push(a)}function q(a){z.forEach(function(b){return b(a)})}var r=Math.ceil,s=Math.floor,t=isFinite,u=isNaN,v=Math.pow,w=Math.min,x=$traceurRuntime.toObject,y=v(2,53)-1,z=[];return{get toObject(){return x},get toUint32(){return a},get isObject(){return b},get isCallable(){return c},get isNumber(){return d},get toInteger(){return e},get toLength(){return f},get checkIterable(){return g},get isConstructor(){return h},get createIteratorResultObject(){return i},get maybeDefine(){return j},get maybeDefineMethod(){return k},get maybeDefineConst(){return l},get maybeAddFunctions(){return m},get maybeAddConsts(){return n},get maybeAddIterator(){return o},get registerPolyfill(){return p},get polyfillAll(){return q}}}),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Map.js",[],function(){"use strict";function a(a,b){if(e(b)){var c=h(b);return c&&a.objectIndex_[c.hash]}return"string"==typeof b?a.stringIndex_[b]:a.primitiveIndex_[b]}function b(a){a.entries_=[],a.objectIndex_=Object.create(null),a.stringIndex_=Object.create(null),a.primitiveIndex_=Object.create(null),a.deletedCount_=0}function c(a){var b=a,c=b.Object,d=b.Symbol;a.Map||(a.Map=k);var e=a.Map.prototype;void 0===e.entries&&(a.Map=k),e.entries&&(f(e,e.entries,d),f(c.getPrototypeOf((new a.Map).entries()),function(){return this},d))}var d=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),e=d.isObject,f=d.maybeAddIterator,g=d.registerPolyfill,h=$traceurRuntime.getOwnHashObject,i=Object.prototype.hasOwnProperty,j={},k=function(){var a,c,d=arguments[0];if(!e(this))throw new TypeError("Map called on incompatible type");if(i.call(this,"entries_"))throw new TypeError("Map can not be reentrantly initialised");if(b(this),null!==d&&void 0!==d)for(var f=d[$traceurRuntime.toProperty(Symbol.iterator)](),g=void 0;!(g=f.next()).done;){var h=g.value,j=(a=h[$traceurRuntime.toProperty(Symbol.iterator)](),(c=a.next()).done?void 0:c.value),k=(c=a.next()).done?void 0:c.value;this.set(j,k)}};return $traceurRuntime.createClass(k,{get size(){return this.entries_.length/2-this.deletedCount_},get:function(b){var c=a(this,b);return void 0!==c?this.entries_[c+1]:void 0},set:function(b,c){var d=e(b),f="string"==typeof b,g=a(this,b);if(void 0!==g)this.entries_[g+1]=c;else if(g=this.entries_.length,this.entries_[g]=b,this.entries_[g+1]=c,d){var i=h(b),j=i.hash;this.objectIndex_[j]=g}else f?this.stringIndex_[b]=g:this.primitiveIndex_[b]=g;return this},has:function(b){return void 0!==a(this,b)},"delete":function(a){var b,c,d=e(a),f="string"==typeof a;if(d){var g=h(a);g&&(b=this.objectIndex_[c=g.hash],delete this.objectIndex_[c])}else f?(b=this.stringIndex_[a],delete this.stringIndex_[a]):(b=this.primitiveIndex_[a],delete this.primitiveIndex_[a]);return void 0!==b?(this.entries_[b]=j,this.entries_[b+1]=void 0,this.deletedCount_++,!0):!1},clear:function(){b(this)},forEach:function(a){for(var b=arguments[1],c=0;c<this.entries_.length;c+=2){var d=this.entries_[c],e=this.entries_[c+1];d!==j&&a.call(b,e,d,this)}},entries:$traceurRuntime.initGeneratorFunction(function l(){var a,b,c;return $traceurRuntime.createGeneratorInstance(function(d){for(;;)switch(d.state){case 0:a=0,d.state=12;break;case 12:d.state=a<this.entries_.length?8:-2;break;case 4:a+=2,d.state=12;break;case 8:b=this.entries_[a],c=this.entries_[a+1],d.state=9;break;case 9:d.state=b===j?4:6;break;case 6:return d.state=2,[b,c];case 2:d.maybeThrow(),d.state=4;break;default:return d.end()}},l,this)}),keys:$traceurRuntime.initGeneratorFunction(function m(){var a,b,c;return $traceurRuntime.createGeneratorInstance(function(d){for(;;)switch(d.state){case 0:a=0,d.state=12;break;case 12:d.state=a<this.entries_.length?8:-2;break;case 4:a+=2,d.state=12;break;case 8:b=this.entries_[a],c=this.entries_[a+1],d.state=9;break;case 9:d.state=b===j?4:6;break;case 6:return d.state=2,b;case 2:d.maybeThrow(),d.state=4;break;default:return d.end()}},m,this)}),values:$traceurRuntime.initGeneratorFunction(function n(){var a,b,c;return $traceurRuntime.createGeneratorInstance(function(d){for(;;)switch(d.state){case 0:a=0,d.state=12;break;case 12:d.state=a<this.entries_.length?8:-2;break;case 4:a+=2,d.state=12;break;case 8:b=this.entries_[a],c=this.entries_[a+1],d.state=9;break;case 9:d.state=b===j?4:6;break;case 6:return d.state=2,c;case 2:d.maybeThrow(),d.state=4;break;default:return d.end()}},n,this)})},{}),Object.defineProperty(k.prototype,Symbol.iterator,{configurable:!0,writable:!0,value:k.prototype.entries}),g(c),{get Map(){return k},get polyfillMap(){return c}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Map.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Set.js",[],function(){"use strict";function a(a){a.map_=new g}function b(a){var b=a,c=b.Object,d=b.Symbol;a.Set||(a.Set=i);var f=a.Set.prototype;f.values&&(e(f,f.values,d),e(c.getPrototypeOf((new a.Set).values()),function(){return this},d))}var c=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),d=c.isObject,e=c.maybeAddIterator,f=c.registerPolyfill,g=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Map.js").Map,h=($traceurRuntime.getOwnHashObject,Object.prototype.hasOwnProperty),i=function(){var b=arguments[0];if(!d(this))throw new TypeError("Set called on incompatible type");if(h.call(this,"map_"))throw new TypeError("Set can not be reentrantly initialised");if(a(this),null!==b&&void 0!==b)for(var c=b[$traceurRuntime.toProperty(Symbol.iterator)](),e=void 0;!(e=c.next()).done;){var f=e.value;this.add(f)}};return $traceurRuntime.createClass(i,{get size(){return this.map_.size},has:function(a){return this.map_.has(a)},add:function(a){return this.map_.set(a,a),this},"delete":function(a){return this.map_["delete"](a)},clear:function(){return this.map_.clear()},forEach:function(a){var b=arguments[1],c=this;return this.map_.forEach(function(d,e){a.call(b,e,e,c)})},values:$traceurRuntime.initGeneratorFunction(function j(){var a,b;return $traceurRuntime.createGeneratorInstance(function(c){for(;;)switch(c.state){case 0:a=this.map_.keys()[Symbol.iterator](),c.sent=void 0,c.action="next",c.state=12;break;case 12:b=a[c.action](c.sentIgnoreThrow),c.state=9;break;case 9:c.state=b.done?3:2;break;case 3:c.sent=b.value,c.state=-2;break;case 2:return c.state=12,b.value;default:return c.end()}},j,this)}),entries:$traceurRuntime.initGeneratorFunction(function k(){var a,b;return $traceurRuntime.createGeneratorInstance(function(c){for(;;)switch(c.state){case 0:a=this.map_.entries()[Symbol.iterator](),c.sent=void 0,c.action="next",c.state=12;break;case 12:b=a[c.action](c.sentIgnoreThrow),c.state=9;break;case 9:c.state=b.done?3:2;break;case 3:c.sent=b.value,c.state=-2;break;case 2:return c.state=12,b.value;default:return c.end()}},k,this)})},{}),Object.defineProperty(i.prototype,Symbol.iterator,{configurable:!0,writable:!0,value:i.prototype.values}),Object.defineProperty(i.prototype,"keys",{configurable:!0,writable:!0,value:i.prototype.values}),f(b),{get Set(){return i},get polyfillSet(){return b}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Set.js"),System.registerModule("traceur-runtime@0.0.82/node_modules/rsvp/lib/rsvp/asap.js",[],function(){"use strict";function a(a,b){m[h]=a,m[h+1]=b,h+=2,2===h&&g()}function b(){return function(){process.nextTick(f)}}function c(){var a=0,b=new k(f),c=document.createTextNode("");return b.observe(c,{characterData:!0}),function(){c.data=a=++a%2}}function d(){var a=new MessageChannel;return a.port1.onmessage=f,function(){a.port2.postMessage(0)}}function e(){return function(){setTimeout(f,1)}}function f(){for(var a=0;h>a;a+=2){var b=m[a],c=m[a+1];b(c),m[a]=void 0,m[a+1]=void 0}h=0}var g,h=0,i=a,j="undefined"!=typeof window?window:{},k=j.MutationObserver||j.WebKitMutationObserver,l="undefined"!=typeof Uint8ClampedArray&&"undefined"!=typeof importScripts&&"undefined"!=typeof MessageChannel,m=new Array(1e3);return g="undefined"!=typeof process&&"[object process]"==={}.toString.call(process)?b():k?c():l?d():e(),{get default(){return i}}}),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Promise.js",[],function(){"use strict";function a(a){return a&&"object"==typeof a&&void 0!==a.status_}function b(a){return a}function c(a){throw a}function d(a){var d=void 0!==arguments[1]?arguments[1]:b,f=void 0!==arguments[2]?arguments[2]:c,g=e(a.constructor);switch(a.status_){case void 0:throw TypeError;case 0:a.onResolve_.push(d,g),a.onReject_.push(f,g);break;case 1:k(a.value_,[d,g]);break;case-1:k(a.value_,[f,g])}return g.promise}function e(a){if(this===t){var b=g(new t(r));return{promise:b,resolve:function(a){h(b,a)},reject:function(a){i(b,a)}}}var c={};return c.promise=new a(function(a,b){c.resolve=a,c.reject=b}),c}function f(a,b,c,d,e){return a.status_=b,a.value_=c,a.onResolve_=d,a.onReject_=e,a}function g(a){return f(a,0,void 0,[],[])}function h(a,b){j(a,1,b,a.onResolve_)}function i(a,b){j(a,-1,b,a.onReject_)}function j(a,b,c,d){0===a.status_&&(k(c,d),f(a,b,c))}function k(a,b){p(function(){for(var c=0;c<b.length;c+=2)l(a,b[c],b[c+1])})}function l(b,c,e){try{var f=c(b);if(f===e.promise)throw new TypeError;a(f)?d(f,e.resolve,e.reject):e.resolve(f)}catch(g){try{e.reject(g)}catch(g){}}}function m(a){return a&&("object"==typeof a||"function"==typeof a)}function n(b,c){if(!a(c)&&m(c)){var d;try{d=c.then}catch(f){var g=u.call(b,f);return c[v]=g,g}if("function"==typeof d){var h=c[v];if(h)return h;var i=e(b);c[v]=i.promise;try{d.call(c,i.resolve,i.reject)}catch(f){i.reject(f)}return i.promise}}return c}function o(a){a.Promise||(a.Promise=s)}var p=System.get("traceur-runtime@0.0.82/node_modules/rsvp/lib/rsvp/asap.js")["default"],q=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js").registerPolyfill,r={},s=function(a){if(a!==r){if("function"!=typeof a)throw new TypeError;var b=g(this);try{a(function(a){h(b,a)},function(a){i(b,a)})}catch(c){i(b,c)}}};$traceurRuntime.createClass(s,{"catch":function(a){return this.then(void 0,a)},then:function(e,f){"function"!=typeof e&&(e=b),"function"!=typeof f&&(f=c);var g=this,h=this.constructor;return d(this,function(b){return b=n(h,b),b===g?f(new TypeError):a(b)?b.then(e,f):e(b)},f)}},{resolve:function(b){return this===t?a(b)?b:f(new t(r),1,b):new this(function(a){a(b)})},reject:function(a){return this===t?f(new t(r),-1,a):new this(function(b,c){c(a)})},all:function(a){var b=e(this),c=[];try{for(var d=function(a){return function(d){c[a]=d,0===--f&&b.resolve(c)}},f=0,g=0,h=a[$traceurRuntime.toProperty(Symbol.iterator)](),i=void 0;!(i=h.next()).done;){var j=i.value,k=d(g);this.resolve(j).then(k,function(a){b.reject(a)}),++g,++f}0===f&&b.resolve(c)}catch(l){b.reject(l)}return b.promise},race:function(a){var b=e(this);try{for(var c=0;c<a.length;c++)this.resolve(a[c]).then(function(a){b.resolve(a)},function(a){b.reject(a)})}catch(d){b.reject(d)}return b.promise}});var t=s,u=t.reject,v="@@thenable";return q(o),{get Promise(){return s},get polyfillPromise(){return o}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Promise.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/StringIterator.js",[],function(){"use strict";function a(a){var b=String(a),c=Object.create(j.prototype);return c[f(h)]=b,c[f(i)]=0,c}var b,c=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),d=c.createIteratorResultObject,e=c.isObject,f=$traceurRuntime.toProperty,g=Object.prototype.hasOwnProperty,h=Symbol("iteratedString"),i=Symbol("stringIteratorNextIndex"),j=function(){};return $traceurRuntime.createClass(j,(b={},Object.defineProperty(b,"next",{value:function(){var a=this;if(!e(a)||!g.call(a,h))throw new TypeError("this must be a StringIterator object");var b=a[f(h)];if(void 0===b)return d(void 0,!0);var c=a[f(i)],j=b.length;if(c>=j)return a[f(h)]=void 0,d(void 0,!0);var k,l=b.charCodeAt(c);if(55296>l||l>56319||c+1===j)k=String.fromCharCode(l);else{var m=b.charCodeAt(c+1);k=56320>m||m>57343?String.fromCharCode(l):String.fromCharCode(l)+String.fromCharCode(m)}return a[f(i)]=c+k.length,d(k,!1)},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(b,Symbol.iterator,{value:function(){return this},configurable:!0,enumerable:!0,writable:!0}),b),{}),{get createStringIterator(){return a}}}),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/String.js",[],function(){"use strict";function a(a){var b=String(this);if(null==this||"[object RegExp]"==o.call(a))throw TypeError();var c=b.length,d=String(a),e=(d.length,arguments.length>1?arguments[1]:void 0),f=e?Number(e):0;isNaN(f)&&(f=0);var g=Math.min(Math.max(f,0),c);return p.call(b,d,f)==g}function b(a){var b=String(this);if(null==this||"[object RegExp]"==o.call(a))throw TypeError();var c=b.length,d=String(a),e=d.length,f=c;if(arguments.length>1){var g=arguments[1];void 0!==g&&(f=g?Number(g):0,isNaN(f)&&(f=0))}var h=Math.min(Math.max(f,0),c),i=h-e;return 0>i?!1:q.call(b,d,i)==i}function c(a){if(null==this)throw TypeError();var b=String(this);if(a&&"[object RegExp]"==o.call(a))throw TypeError();var c=b.length,d=String(a),e=d.length,f=arguments.length>1?arguments[1]:void 0,g=f?Number(f):0;g!=g&&(g=0);var h=Math.min(Math.max(g,0),c);return e+h>c?!1:-1!=p.call(b,d,g)}function d(a){if(null==this)throw TypeError();var b=String(this),c=a?Number(a):0;if(isNaN(c)&&(c=0),0>c||1/0==c)throw RangeError();if(0==c)return"";for(var d="";c--;)d+=b;return d}function e(a){if(null==this)throw TypeError();var b=String(this),c=b.length,d=a?Number(a):0;if(isNaN(d)&&(d=0),0>d||d>=c)return void 0;var e,f=b.charCodeAt(d);return f>=55296&&56319>=f&&c>d+1&&(e=b.charCodeAt(d+1),e>=56320&&57343>=e)?1024*(f-55296)+e-56320+65536:f}function f(a){var b=a.raw,c=b.length>>>0;if(0===c)return"";for(var d="",e=0;;){if(d+=b[e],e+1===c)return d;d+=arguments[++e]}}function g(){var a,b,c=[],d=Math.floor,e=-1,f=arguments.length;if(!f)return"";for(;++e<f;){var g=Number(arguments[e]);if(!isFinite(g)||0>g||g>1114111||d(g)!=g)throw RangeError("Invalid code point: "+g);65535>=g?c.push(g):(g-=65536,a=(g>>10)+55296,b=g%1024+56320,c.push(a,b))}return String.fromCharCode.apply(null,c)}function h(){var a=$traceurRuntime.checkObjectCoercible(this),b=String(a);return j(b)}function i(i){var j=i.String;l(j.prototype,["codePointAt",e,"endsWith",b,"includes",c,"repeat",d,"startsWith",a]),l(j,["fromCodePoint",g,"raw",f]),m(j.prototype,h,Symbol)}var j=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/StringIterator.js").createStringIterator,k=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),l=k.maybeAddFunctions,m=k.maybeAddIterator,n=k.registerPolyfill,o=Object.prototype.toString,p=String.prototype.indexOf,q=String.prototype.lastIndexOf;return n(i),{get startsWith(){return a},get endsWith(){return b},get includes(){return c},get repeat(){return d},get codePointAt(){return e},get raw(){return f},get fromCodePoint(){return g},get stringPrototypeIterator(){return h},get polyfillString(){return i}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/String.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/ArrayIterator.js",[],function(){"use strict";function a(a,b){var c=g(a),d=new m;return d.iteratorObject_=c,d.arrayIteratorNextIndex_=0,d.arrayIterationKind_=b,d}function b(){return a(this,l)}function c(){return a(this,j)}function d(){return a(this,k)}var e,f=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),g=f.toObject,h=f.toUint32,i=f.createIteratorResultObject,j=1,k=2,l=3,m=function(){};return $traceurRuntime.createClass(m,(e={},Object.defineProperty(e,"next",{value:function(){var a=g(this),b=a.iteratorObject_;if(!b)throw new TypeError("Object is not an ArrayIterator");var c=a.arrayIteratorNextIndex_,d=a.arrayIterationKind_,e=h(b.length);return c>=e?(a.arrayIteratorNextIndex_=1/0,i(void 0,!0)):(a.arrayIteratorNextIndex_=c+1,d==k?i(b[c],!1):d==l?i([c,b[c]],!1):i(c,!1))
},configurable:!0,enumerable:!0,writable:!0}),Object.defineProperty(e,Symbol.iterator,{value:function(){return this},configurable:!0,enumerable:!0,writable:!0}),e),{}),{get entries(){return b},get keys(){return c},get values(){return d}}}),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Array.js",[],function(){"use strict";function a(a){var b,c,d=arguments[1],e=arguments[2],f=this,g=u(a),h=void 0!==d,i=0;if(h&&!n(d))throw TypeError();if(m(g)){b=o(f)?new f:[];for(var j=g[$traceurRuntime.toProperty(Symbol.iterator)](),k=void 0;!(k=j.next()).done;){var l=k.value;b[i]=h?d.call(e,l,i):l,i++}return b.length=i,b}for(c=t(g.length),b=o(f)?new f(c):new Array(c);c>i;i++)b[i]=h?"undefined"==typeof e?d(g[i],i):d.call(e,g[i],i):g[i];return b.length=c,b}function b(){for(var a=[],b=0;b<arguments.length;b++)a[b]=arguments[b];for(var c=this,d=a.length,e=o(c)?new c(d):new Array(d),f=0;d>f;f++)e[f]=a[f];return e.length=d,e}function c(a){var b=void 0!==arguments[1]?arguments[1]:0,c=arguments[2],d=u(this),e=t(d.length),f=s(b),g=void 0!==c?s(c):e;for(f=0>f?Math.max(e+f,0):Math.min(f,e),g=0>g?Math.max(e+g,0):Math.min(g,e);g>f;)d[f]=a,f++;return d}function d(a){var b=arguments[1];return f(this,a,b)}function e(a){var b=arguments[1];return f(this,a,b,!0)}function f(a,b){var c=arguments[2],d=void 0!==arguments[3]?arguments[3]:!1,e=u(a),f=t(e.length);if(!n(b))throw TypeError();for(var g=0;f>g;g++){var h=e[g];if(b.call(c,h,g,e))return d?g:h}return d?-1:void 0}function g(f){var g=f,h=g.Array,l=g.Object,m=g.Symbol;p(h.prototype,["entries",i,"keys",j,"values",k,"fill",c,"find",d,"findIndex",e]),p(h,["from",a,"of",b]),q(h.prototype,k,m),q(l.getPrototypeOf([].values()),function(){return this},m)}var h=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/ArrayIterator.js"),i=h.entries,j=h.keys,k=h.values,l=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),m=l.checkIterable,n=l.isCallable,o=l.isConstructor,p=l.maybeAddFunctions,q=l.maybeAddIterator,r=l.registerPolyfill,s=l.toInteger,t=l.toLength,u=l.toObject;return r(g),{get from(){return a},get of(){return b},get fill(){return c},get find(){return d},get findIndex(){return e},get polyfillArray(){return g}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Array.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Object.js",[],function(){"use strict";function a(a,b){return a===b?0!==a||1/a===1/b:a!==a&&b!==b}function b(a){for(var b=1;b<arguments.length;b++){var c=arguments[b],d=null==c?[]:m(c),e=void 0,f=d.length;for(e=0;f>e;e++){var g=d[e];l(g)||(a[g]=c[g])}}return a}function c(a,b){var c,d,e=k(b),f=e.length;for(c=0;f>c;c++){var g=e[c];l(g)||(d=j(b,e[c]),i(a,e[c],d))}return a}function d(d){var e=d.Object;f(e,["assign",b,"is",a,"mixin",c])}var e=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),f=e.maybeAddFunctions,g=e.registerPolyfill,h=$traceurRuntime,i=h.defineProperty,j=h.getOwnPropertyDescriptor,k=h.getOwnPropertyNames,l=h.isPrivateName,m=h.keys;return g(d),{get is(){return a},get assign(){return b},get mixin(){return c},get polyfillObject(){return d}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Object.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Number.js",[],function(){"use strict";function a(a){return g(a)&&m(a)}function b(b){return a(b)&&k(b)===b}function c(a){return g(a)&&n(a)}function d(b){if(a(b)){var c=k(b);if(c===b)return l(c)<=o}return!1}function e(e){var f=e.Number;h(f,["MAX_SAFE_INTEGER",o,"MIN_SAFE_INTEGER",p,"EPSILON",q]),i(f,["isFinite",a,"isInteger",b,"isNaN",c,"isSafeInteger",d])}var f=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),g=f.isNumber,h=f.maybeAddConsts,i=f.maybeAddFunctions,j=f.registerPolyfill,k=f.toInteger,l=Math.abs,m=isFinite,n=isNaN,o=Math.pow(2,53)-1,p=-Math.pow(2,53)+1,q=Math.pow(2,-52);return j(e),{get MAX_SAFE_INTEGER(){return o},get MIN_SAFE_INTEGER(){return p},get EPSILON(){return q},get isFinite(){return a},get isInteger(){return b},get isNaN(){return c},get isSafeInteger(){return d},get polyfillNumber(){return e}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Number.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/Math.js",[],function(){"use strict";function a(a){if(a=v(+a),0==a)return 32;var b=0;return 0===(4294901760&a)&&(a<<=16,b+=16),0===(4278190080&a)&&(a<<=8,b+=8),0===(4026531840&a)&&(a<<=4,b+=4),0===(3221225472&a)&&(a<<=2,b+=2),0===(2147483648&a)&&(a<<=1,b+=1),b}function b(a,b){a=v(+a),b=v(+b);var c=a>>>16&65535,d=65535&a,e=b>>>16&65535,f=65535&b;return d*f+(c*f+d*e<<16>>>0)|0}function c(a){return a=+a,a>0?1:0>a?-1:a}function d(a){return.4342944819032518*D(a)}function e(a){return 1.4426950408889634*D(a)}function f(a){if(a=+a,-1>a||x(a))return 0/0;if(0===a||1/0===a)return a;if(-1===a)return-1/0;var b=0,c=50;if(0>a||a>1)return D(1+a);for(var d=1;c>d;d++)d%2===0?b-=E(a,d)/d:b+=E(a,d)/d;return b}function g(a){return a=+a,a===-1/0?-1:w(a)&&0!==a?B(a)-1:a}function h(a){return a=+a,0===a?1:x(a)?0/0:w(a)?(0>a&&(a=-a),a>21?B(a)/2:(B(a)+B(-a))/2):1/0}function i(a){return a=+a,w(a)&&0!==a?(B(a)-B(-a))/2:a}function j(a){if(a=+a,0===a)return a;if(!w(a))return c(a);var b=B(a),d=B(-a);return(b-d)/(b+d)}function k(a){return a=+a,1>a?0/0:w(a)?D(a+F(a+1)*F(a-1)):a}function l(a){return a=+a,0!==a&&w(a)?a>0?D(a+F(a*a+1)):-D(-a+F(a*a+1)):a}function m(a){return a=+a,-1===a?-1/0:1===a?1/0:0===a?a:x(a)||-1>a||a>1?0/0:.5*D((1+a)/(1-a))}function n(){for(var a=arguments.length,b=new Array(a),c=0,d=0;a>d;d++){var e=arguments[d];if(e=+e,1/0===e||e===-1/0)return 1/0;e=z(e),e>c&&(c=e),b[d]=e}0===c&&(c=1);for(var f=0,g=0,d=0;a>d;d++){var e=b[d]/c,h=e*e-g,i=f+h;g=i-f-h,f=i}return F(f)*c}function o(a){return a=+a,a>0?C(a):0>a?A(a):a}function p(a){return G[0]=+a,G[0]}function q(a){if(a=+a,0===a)return a;var b=0>a;b&&(a=-a);var c=E(a,1/3);return b?-c:c}function r(r){var s=r.Math;t(s,["acosh",k,"asinh",l,"atanh",m,"cbrt",q,"clz32",a,"cosh",h,"expm1",g,"fround",p,"hypot",n,"imul",b,"log10",d,"log1p",f,"log2",e,"sign",c,"sinh",i,"tanh",j,"trunc",o])}var s=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js"),t=s.maybeAddFunctions,u=s.registerPolyfill,v=s.toUint32,w=isFinite,x=isNaN,y=Math,z=y.abs,A=y.ceil,B=y.exp,C=y.floor,D=y.log,E=y.pow,F=y.sqrt,G=new Float32Array(1);return u(r),{get clz32(){return a},get imul(){return b},get sign(){return c},get log10(){return d},get log2(){return e},get log1p(){return f},get expm1(){return g},get cosh(){return h},get sinh(){return i},get tanh(){return j},get acosh(){return k},get asinh(){return l},get atanh(){return m},get hypot(){return n},get trunc(){return o},get fround(){return p},get cbrt(){return q},get polyfillMath(){return r}}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/Math.js"),System.registerModule("traceur-runtime@0.0.82/src/runtime/polyfills/polyfills.js",[],function(){"use strict";var a=System.get("traceur-runtime@0.0.82/src/runtime/polyfills/utils.js").polyfillAll;a(Reflect.global);var b=$traceurRuntime.setupGlobals;return $traceurRuntime.setupGlobals=function(c){b(c),a(c)},{}}),System.get("traceur-runtime@0.0.82/src/runtime/polyfills/polyfills.js");
//# sourceMappingURL=traceur-runtime.js.map
\ No newline at end of file
{"version":3,"file":"traceur-runtime.js","sources":["traceur-runtime.src.js"],"names":["global","nonEnum","value","configurable","enumerable","writable","newUniqueString","Math","floor","random","counter","isPrivateName","s","privateNames","createPrivateName","isShimSymbol","symbol","SymbolValue","typeOf","v","Symbol","description","this","TypeError","key","$defineProperty","symbolDataProperty","symbolInternalProperty","symbolDescriptionProperty","freeze","symbolValues","getOwnHashObject","object","hashObject","hashProperty","self","$isExtensible","hashObjectProperties","hash","hashCounter","hashPropertyDescriptor","$create","undefined","$freeze","apply","arguments","preventExtensions","$preventExtensions","seal","$seal","isSymbolString","toProperty","name","removeSymbolKeys","array","rv","i","length","push","getOwnPropertyNames","$getOwnPropertyNames","keys","$keys","getOwnPropertySymbols","names","getOwnPropertyDescriptor","$getOwnPropertyDescriptor","hasOwnProperty","$hasOwnProperty","call","getOption","$traceurRuntime","options","defineProperty","descriptor","polyfillObject","Object","prototype","exportStar","j","mod","get","isObject","x","toObject","$TypeError","$Object","checkObjectCoercible","argument","polyfillSymbol","iterator","setupGlobals","Reflect","create","$defineProperties","defineProperties","toString","isExtensible","method","symbolValue","desc","valueOf","typeof","window","relativeRequire","callerPath","requiredPath","isDirectory","path","slice","isAbsolute","isRelative","require","resolve","dirname","spread","iterResult","valueToSpread","iter","next","done","iteratorToArray","tmp","superDescriptor","homeObject","proto","$getPrototypeOf","result","superConstructor","ctor","__proto__","superGet","superSet","set","getDescriptors","descriptors","symbols","createClass","staticObject","superClass","getProtoParent","getPrototypeOf","$__0","getInternalError","state","Error","GeneratorContext","GState","ST_NEWBORN","storedException","finallyFallThrough","sent_","returnValue","tryStack_","nextOrThrow","ctx","moveNext","action","ST_EXECUTING","ST_CLOSED","ST_SUSPENDED","sent","GeneratorFunction","GeneratorFunctionPrototype","createGeneratorInstance","innerFunction","functionObject","getMoveNext","ctxName","moveNextName","initGeneratorFunction","AsyncFunctionContext","err","Promise","reject","asyncWrap","createCallback","newState","errback","handleCatch","ex","last","handleException","END_STATE","RETHROW_STATE","pushTry","catchState","finallyState","finally","catch","popTry","pop",{"end":{"file":"traceur-runtime.js","comments_before":[],"nlb":false,"endpos":15001,"pos":14997,"col":8,"line":465,"value":"sent","type":"name"},"start":{"file":"traceur-runtime.js","comments_before":[],"nlb":false,"endpos":15001,"pos":14997,"col":8,"line":465,"value":"sent","type":"name"},"name":"sent"},"maybeThrow","sentIgnoreThrow","end","constructor","throw","buildFromEncodedParts","opt_scheme","opt_userInfo","opt_domain","opt_port","opt_path","opt_queryData","opt_fragment","out","join","split","uri","match","splitRe","removeDotSegments","leadingSlash","trailingSlash","segments","up","pos","segment","unshift","joinAndCanonicalizePath","parts","ComponentIndex","PATH","SCHEME","USER_INFO","DOMAIN","PORT","QUERY_DATA","FRAGMENT","canonicalizeUrl","url","resolveUrl","base","baseParts","index","lastIndexOf","RegExp","genericType","type","argumentTypes","$__1","typeMap","typeRegister","tail","GenericType","types","any","boolean","number","string","void","beforeLines","lines","first","afterLines","columnSpacing","columns","getUncoatedModuleInstantiator","ModuleStore","normalize","moduleInstantiators","Module","uncoatedModule","isLive","coatedModule","forEach","getter","liveModuleSentinel","descr","baseURL","$__2","location","href","UncoatedModuleEntry","value_","ModuleEvaluationError","erroneousModuleName","cause","message","stripCause","stack","$ModuleEvaluationError","stripStack","stripError","replace","loadedBy","moduleName","causeStack","some","frame","test","UncoatedModuleInstantiator","func","$UncoatedModuleInstantiator","getUncoatedModule","bind","evaled","indexOf","m","exec","line","parseInt","concat","moduleInstances","refererName","normalizedName","moduleInstance","module","String","registerModule","deps","bundleStore","register","execute","depMap","dep","registryEntry","exports","getAnonymousModule","getForTesting","testingPrefix_","moduleStoreModule","System","getModuleImpl","instantiator","toUint32","isCallable","isNumber","toInteger","$isNaN","$isFinite","$floor","$ceil","toLength","len","$min","MAX_SAFE_LENGTH","checkIterable","isConstructor","createIteratorResultObject","maybeDefine","maybeDefineMethod","maybeDefineConst","maybeAddFunctions","functions","maybeAddConsts","consts","maybeAddIterator","registerPolyfill","polyfills","polyfillAll","f","ceil","isFinite","isNaN","$pow","pow","min","lookupIndex","map","objectIndex_","stringIndex_","primitiveIndex_","initMap","entries_","deletedCount_","polyfillMap","$__4","Map","mapPrototype","entries","deletedSentinel","$__5","$__6","iterable","$__3","size","objectMode","stringMode","has","delete","clear","callbackFn","thisArg","$__7","$ctx","$__8","values","$__9","initSet","map_","polyfillSet","Set","setPrototype","item","add","$__10","$__11","$__12","asap","callback","arg","queue","scheduleFlush","useNextTick","process","nextTick","flush","useMutationObserver","iterations","observer","BrowserMutationObserver","node","document","createTextNode","observe","characterData","data","useMessageChannel","channel","MessageChannel","port1","onmessage","port2","postMessage","useSetTimeout","setTimeout","$__default","browserGlobal","MutationObserver","WebKitMutationObserver","isWorker","Uint8ClampedArray","importScripts","Array","isPromise","status_","idResolveHandler","idRejectHandler","chain","promise","onResolve","onReject","deferred","getDeferred","onResolve_","onReject_","promiseEnqueue","C","$Promise","promiseInit","promiseRaw","promiseResolve","r","promiseReject","promiseSet","status","promiseDone","reactions","tasks","async","promiseHandle","handler","e","promiseCoerce","then","$PromiseReject","thenableSymbol","p","polyfillPromise","resolver","that","all","resolutions","makeCountdownFunction","count","countdownFunction","race","createStringIterator","StringIterator","iteratedString","stringIteratorNextIndex","o","position","resultString","charCodeAt","fromCharCode","second","startsWith","search","$toString","stringLength","searchString","Number","start","max","$indexOf","endsWith","searchLength","$lastIndexOf","includes","repeat","n","Infinity","RangeError","codePointAt","raw","callsite","fromCodePoint","highSurrogate","lowSurrogate","codeUnits","codePoint","stringPrototypeIterator","polyfillString","createArrayIterator","kind","ArrayIterator","iteratorObject_","arrayIteratorNextIndex_","arrayIterationKind_","ARRAY_ITERATOR_KIND_ENTRIES","ARRAY_ITERATOR_KIND_KEYS","ARRAY_ITERATOR_KIND_VALUES","itemKind","from","arrLike","arr","mapFn","items","mapping","k","of","fill","fillStart","fillEnd","find","predicate","findHelper","findIndex","returnIndex","polyfillArray","is","left","right","assign","target","source","props","mixin","NumberIsFinite","isInteger","NumberIsNaN","isSafeInteger","integral","$abs","MAX_SAFE_INTEGER","polyfillNumber","MIN_SAFE_INTEGER","EPSILON","abs","clz32","imul","y","xh","xl","yh","yl","sign","log10","log","log2","log1p","NaN","expm1","exp","cosh","sinh","tanh","exp1","exp2","acosh","sqrt","asinh","atanh","hypot","args","sum","compensation","summand","preliminary","trunc","fround","f32","cbrt","negate","polyfillMath","Float32Array"],"mappings":"CAAA,SAAUA,GACR,YAkBA,SAASC,GAAQC,GACf,OACEC,cAAc,EACdC,YAAY,EACZF,MAAOA,EACPG,UAAU,GAKd,QAASC,KACP,MAAO,MAAQC,KAAKC,MAAsB,IAAhBD,KAAKE,UAAkB,OAAQC,EAAU,MAOrE,QAASC,GAAcC,GACrB,MAAOC,GAAaD,GAEtB,QAASE,KACP,GAAIF,GAAIN,GAER,OADAO,GAAaD,IAAK,EACXA,EAET,QAASG,GAAaC,GACpB,MAAyB,gBAAXA,IAAuBA,YAAkBC,GAEzD,QAASC,GAAOC,GACd,MAAIJ,GAAaI,GACR,eACKA,GAEhB,QAASC,GAAOC,GACd,GAAInB,GAAQ,GAAIe,GAAYI,EAC5B,MAAMC,eAAgBF,IACpB,MAAOlB,EACT,MAAM,IAAIqB,WAAU,2BAsBtB,QAASN,GAAYI,GACnB,GAAIG,GAAMlB,GACVmB,GAAgBH,KAAMI,GAAqBxB,MAAOoB,OAClDG,EAAgBH,KAAMK,GAAyBzB,MAAOsB,IACtDC,EAAgBH,KAAMM,GAA4B1B,MAAOmB,IACzDQ,EAAOP,MACPQ,EAAaN,GAAOF,KAkBtB,QAASS,GAAiBC,GACxB,GAAIC,GAAaD,EAAOE,EACxB,OAAID,IAAcA,EAAWE,OAASH,EAC7BC,EACLG,EAAcJ,IAChBK,EAAqBC,KAAKpC,MAAQqC,IAClCF,EAAqBF,KAAKjC,MAAQ8B,EAClCQ,EAAuBtC,MAAQuC,EAAQ,KAAMJ,GAC7CZ,EAAgBO,EAAQE,EAAcM,GAC/BA,EAAuBtC,OAEzBwC,OAET,QAASb,GAAOG,GAEd,MADAD,GAAiBC,GACVW,EAAQC,MAAMtB,KAAMuB,WAE7B,QAASC,GAAkBd,GAEzB,MADAD,GAAiBC,GACVe,EAAmBH,MAAMtB,KAAMuB,WAExC,QAASG,GAAKhB,GAEZ,MADAD,GAAiBC,GACViB,EAAML,MAAMtB,KAAMuB,WAG3B,QAASK,GAAetC,GACtB,MAAOkB,GAAalB,IAAMC,EAAaD,GAEzC,QAASuC,GAAWC,GAClB,MAAIrC,GAAaqC,GACRA,EAAKzB,GACPyB,EAET,QAASC,GAAiBC,GAExB,IAAK,GADDC,MACKC,EAAI,EAAGA,EAAIF,EAAMG,OAAQD,IAC3BN,EAAeI,EAAME,KACxBD,EAAGG,KAAKJ,EAAME,GAGlB,OAAOD,GAET,QAASI,GAAoB3B,GAC3B,MAAOqB,GAAiBO,EAAqB5B,IAE/C,QAAS6B,GAAK7B,GACZ,MAAOqB,GAAiBS,EAAM9B,IAEhC,QAAS+B,GAAsB/B,GAG7B,IAAK,GAFDuB,MACAS,EAAQJ,EAAqB5B,GACxBwB,EAAI,EAAGA,EAAIQ,EAAMP,OAAQD,IAAK,CACrC,GAAIxC,GAASc,EAAakC,EAAMR,GAC5BxC,IACFuC,EAAGG,KAAK1C,GAGZ,MAAOuC,GAET,QAASU,GAAyBjC,EAAQoB,GACxC,MAAOc,GAA0BlC,EAAQmB,EAAWC,IAEtD,QAASe,GAAef,GACtB,MAAOgB,GAAgBC,KAAK/C,KAAM6B,EAAWC,IAE/C,QAASkB,GAAUlB,GACjB,MAAOpD,GAAOuE,gBAAgBC,QAAQpB,GAExC,QAASqB,GAAezC,EAAQoB,EAAMsB,GAKpC,MAJI3D,GAAaqC,KACfA,EAAOA,EAAKzB,IAEdF,EAAgBO,EAAQoB,EAAMsB,GACvB1C,EAET,QAAS2C,GAAeC,GACtBnD,EAAgBmD,EAAQ,kBAAmB1E,MAAOuE,IAClDhD,EAAgBmD,EAAQ,uBAAwB1E,MAAOyD,IACvDlC,EAAgBmD,EAAQ,4BAA6B1E,MAAO+D,IAC5DxC,EAAgBmD,EAAOC,UAAW,kBAAmB3E,MAAOiE,IAC5D1C,EAAgBmD,EAAQ,UAAW1E,MAAO2B,IAC1CJ,EAAgBmD,EAAQ,qBAAsB1E,MAAO4C,IACrDrB,EAAgBmD,EAAQ,QAAS1E,MAAO8C,IACxCvB,EAAgBmD,EAAQ,QAAS1E,MAAO2D,IAE1C,QAASiB,GAAW9C,GAClB,IAAK,GAAIwB,GAAI,EAAGA,EAAIX,UAAUY,OAAQD,IAEpC,IAAK,GADDQ,GAAQJ,EAAqBf,UAAUW,IAClCuB,EAAI,EAAGA,EAAIf,EAAMP,OAAQsB,IAAK,CACrC,GAAI3B,GAAOY,EAAMe,EACb7B,GAAeE,KAEnB,SAAU4B,EAAK5B,GACb3B,EAAgBO,EAAQoB,GACtB6B,IAAK,WACH,MAAOD,GAAI5B,IAEbhD,YAAY,KAEbyC,UAAUW,GAAIQ,EAAMe,IAG3B,MAAO/C,GAET,QAASkD,GAASC,GAChB,MAAY,OAALA,IAA2B,gBAANA,IAA+B,kBAANA,IAEvD,QAASC,GAASD,GAChB,GAAS,MAALA,EACF,KAAME,IACR,OAAOC,GAAQH,GAEjB,QAASI,GAAqBC,GAC5B,GAAgB,MAAZA,EACF,KAAM,IAAIjE,WAAU,yCAEtB,OAAOiE,GAET,QAASC,GAAezF,EAAQoB,GACzBpB,EAAOoB,SACVpB,EAAOoB,OAASA,EAChBwD,OAAOb,sBAAwBA,GAE5B/D,EAAOoB,OAAOsE,WACjB1F,EAAOoB,OAAOsE,SAAWtE,EAAO,oBAGpC,QAASuE,GAAa3F,GACpByF,EAAezF,EAAQoB,GACvBpB,EAAO4F,QAAU5F,EAAO4F,YACxB5F,EAAO4F,QAAQ5F,OAASA,EAAO4F,QAAQ5F,QAAUA,EACjD2E,EAAe3E,EAAO4E,QAzOxB,IAAI5E,EAAOuE,gBAAX,CAGA,GAAIe,GAAUV,OACVS,EAAa9D,UACbkB,EAAU6C,EAAQO,OAClBC,EAAoBR,EAAQS,iBAC5BtE,EAAkB6D,EAAQb,eAC1B9B,EAAU2C,EAAQzD,OAClBqC,EAA4BoB,EAAQrB,yBACpCL,EAAuB0B,EAAQ3B,oBAC/BG,EAAQwB,EAAQzB,KAChBO,EAAkBkB,EAAQT,UAAUV,eAEpCpB,GADYuC,EAAQT,UAAUmB,SACTpB,OAAO9B,mBAC5BG,EAAQ2B,OAAO5B,KACfZ,EAAgBwC,OAAOqB,aASvBC,EAASjG,EACTS,EAAU,EAIViB,EAAyBrB,IACzBsB,EAA4BtB,IAC5BoB,EAAqBpB,IACrBwB,EAAeW,EAAQ,MACvB5B,EAAe4B,EAAQ,KAuB3BhB,GAAgBL,EAAOyD,UAAW,cAAe5E,EAAQmB,IACzDK,EAAgBL,EAAOyD,UAAW,WAAYqB,EAAO,WACnD,GAAIC,GAAc7E,KAAKI,EACvB,KAAK4C,EAAU,WACb,MAAO6B,GAAYxE,EACrB,KAAKwE,EACH,KAAM5E,WAAU,mCAClB,IAAI6E,GAAOD,EAAYvE,EAGvB,OAFac,UAAT0D,IACFA,EAAO,IACF,UAAYA,EAAO,OAE5B3E,EAAgBL,EAAOyD,UAAW,UAAWqB,EAAO,WAClD,GAAIC,GAAc7E,KAAKI,EACvB,KAAKyE,EACH,KAAM5E,WAAU,mCAClB,OAAK+C,GAAU,WAER6B,EADEA,EAAYxE,MAWvBF,EAAgBR,EAAY4D,UAAW,cAAe5E,EAAQmB,IAC9DK,EAAgBR,EAAY4D,UAAW,YACrC3E,MAAOkB,EAAOyD,UAAUmB,SACxB5F,YAAY,IAEdqB,EAAgBR,EAAY4D,UAAW,WACrC3E,MAAOkB,EAAOyD,UAAUwB,QACxBjG,YAAY,GAEd,IAAI8B,GAAepB,IACf0B,GAA0BtC,MAAOwC,QACjCL,GACFC,MAAOpC,MAAOwC,QACdP,MAAOjC,MAAOwC,SAEZH,EAAc,CA0BlBV,GAAOZ,EAAY4D,WA6GnBc,EAAa3F,GACbA,EAAOuE,iBACLgB,qBAAsBA,EACtBzE,kBAAmBA,EACnBiF,iBAAkBD,EAClBrB,eAAgBhD,EAChBqD,WAAYA,EACZ/C,iBAAkBA,EAClBkC,yBAA0BC,EAC1BP,oBAAqBC,EACrBsB,SAAUA,EACVvE,cAAeA,EACfuC,eAAgBA,EAChBW,KAAMC,EACNU,WACAmB,aAAcA,EACdP,SAAUA,EACVjC,WAAYA,EACZmD,SAAQpF,KAES,mBAAXqF,QAAyBA,OAA2B,mBAAXvG,QAAyBA,OAAyB,mBAATmC,MAAuBA,KAAOb,MAC1H,WACE,YAEA,SAASkF,GAAgBC,EAAYC,GAEnC,QAASC,GAAYC,GACnB,MAA0B,MAAnBA,EAAKC,MAAM,IAEpB,QAASC,GAAWF,GAClB,MAAmB,MAAZA,EAAK,GAEd,QAASG,GAAWH,GAClB,MAAmB,MAAZA,EAAK,GAEd,MAVAA,GAAOA,GAA2B,mBAAZI,UAA2BA,QAAQ,QAUrDL,EAAYD,IAAiBI,EAAWJ,GAA5C,OAEkCM,QAA3BD,EAAWL,GAAwBE,EAAKK,QAAQL,EAAKM,QAAQT,GAAaC,GAAyBA,GAd5G,GAAIE,EAgBJrC,iBAAgByC,QAAUR,KAE5B,WACE,YACA,SAASW,KAIP,IAAK,GADDC,GAFA7D,KACAwB,EAAI,EAECvB,EAAI,EAAGA,EAAIX,UAAUY,OAAQD,IAAK,CACzC,GAAI6D,GAAgB9C,gBAAgBgB,qBAAqB1C,UAAUW,GACnE,IAA0E,kBAA/D6D,GAAc9C,gBAAgBpB,WAAW/B,OAAOsE,WACzD,KAAM,IAAInE,WAAU,qCAGtB,KADA,GAAI+F,GAAOD,EAAc9C,gBAAgBpB,WAAW/B,OAAOsE,eAClD0B,EAAaE,EAAKC,QAAQC,MACjCjE,EAAGwB,KAAOqC,EAAWlH,MAGzB,MAAOqD,GAETgB,gBAAgB4C,OAASA,KAE3B,WACE,YACA,SAASM,GAAgBH,GAIvB,IAHA,GAEII,GAFAnE,KACAC,EAAI,IAECkE,EAAMJ,EAAKC,QAAQC,MAC1BjE,EAAGC,KAAOkE,EAAIxH,KAEhB,OAAOqD,GAETgB,gBAAgBkD,gBAAkBA,KAEpC,WACE,YAYA,SAASE,GAAgBC,EAAYxE,GACnC,GAAIyE,GAAQC,EAAgBF,EAC5B,GAAG,CACD,GAAIG,GAAS7D,EAA0B2D,EAAOzE,EAC9C,IAAI2E,EACF,MAAOA,EACTF,GAAQC,EAAgBD,SACjBA,EACT,OAAOnF,QAET,QAASsF,GAAiBC,GACxB,MAAOA,GAAKC,UAEd,QAASC,GAAShG,EAAMyF,EAAYxE,GAClC,GAAIsB,GAAaiD,EAAgBC,EAAYxE,EAC7C,OAAIsB,GACGA,EAAWO,IAETP,EAAWO,IAAIZ,KAAKlC,GADlBuC,EAAWxE,MAGfwC,OAET,QAAS0F,GAASjG,EAAMyF,EAAYxE,EAAMlD,GACxC,GAAIwE,GAAaiD,EAAgBC,EAAYxE,EAC7C,IAAIsB,GAAcA,EAAW2D,IAE3B,MADA3D,GAAW2D,IAAIhE,KAAKlC,EAAMjC,GACnBA,CAET,MAAMmF,GAAY,wBAA0BjC,EAAO,MAErD,QAASkF,GAAetG,GAGtB,IAAK,GAFDuG,MACAvE,EAAQL,EAAoB3B,GACvBwB,EAAI,EAAGA,EAAIQ,EAAMP,OAAQD,IAAK,CACrC,GAAIJ,GAAOY,EAAMR,EACjB+E,GAAYnF,GAAQc,EAA0BlC,EAAQoB,GAGxD,IAAK,GADDoF,GAAUzE,EAAsB/B,GAC3BwB,EAAI,EAAGA,EAAIgF,EAAQ/E,OAAQD,IAAK,CACvC,GAAIxC,GAASwH,EAAQhF,EACrB+E,GAAYhE,gBAAgBpB,WAAWnC,IAAWkD,EAA0BlC,EAAQuC,gBAAgBpB,WAAWnC,IAEjH,MAAOuH,GAET,QAASE,GAAYR,EAAMjG,EAAQ0G,EAAcC,GAkB/C,MAjBAlH,GAAgBO,EAAQ,eACtB9B,MAAO+H,EACP9H,cAAc,EACdC,YAAY,EACZC,UAAU,IAERwC,UAAUY,OAAS,GACK,kBAAfkF,KACTV,EAAKC,UAAYS,GACnBV,EAAKpD,UAAYpC,EAAQmG,EAAeD,GAAaL,EAAetG,KAEpEiG,EAAKpD,UAAY7C,EAEnBP,EAAgBwG,EAAM,aACpB9H,cAAc,EACdE,UAAU,IAELyF,EAAkBmC,EAAMK,EAAeI,IAEhD,QAASE,GAAeD,GACtB,GAA0B,kBAAfA,GAA2B,CACpC,GAAI9D,GAAY8D,EAAW9D,SAC3B,IAAIS,EAAQT,KAAeA,GAA2B,OAAdA,EACtC,MAAO8D,GAAW9D,SACpB,MAAM,IAAIQ,GAAW,6CAEvB,GAAmB,OAAfsD,EACF,MAAO,KACT,MAAM,IAAItD,GAAY,iEAAoEsD,GAAa,KApFzG,GAAIrD,GAAUV,OACVS,EAAa9D,UACbkB,EAAU6C,EAAQO,OAClBC,EAAoBvB,gBAAgBwB,iBACpCtE,EAAkB8C,gBAAgBE,eAClCP,EAA4BK,gBAAgBN,yBAE5C6D,GADuBvD,gBAAgBZ,oBACrBiB,OAAOiE,gBACzBC,EAAOlE,OACPjB,EAAsBmF,EAAKnF,oBAC3BI,EAAwB+E,EAAK/E,qBA4EjCQ,iBAAgBkE,YAAcA,EAC9BlE,gBAAgByD,iBAAmBA,EACnCzD,gBAAgB4D,SAAWA,EAC3B5D,gBAAgB6D,SAAWA,KAE7B,WACE,YASA,SAASnI,GAAQC,GACf,OACEC,cAAc,EACdC,YAAY,EACZF,MAAOA,EACPG,UAAU,GASd,QAAS0I,GAAiBC,GACxB,MAAO,IAAIC,OAAM,yDAA2DD,GAE9E,QAASE,KACP5H,KAAK0H,MAAQ,EACb1H,KAAK6H,OAASC,EACd9H,KAAK+H,gBAAkB3G,OACvBpB,KAAKgI,mBAAqB5G,OAC1BpB,KAAKiI,MAAQ7G,OACbpB,KAAKkI,YAAc9G,OACnBpB,KAAKmI,aA0DP,QAASC,GAAYC,EAAKC,EAAUC,EAAQ1E,GAC1C,OAAQwE,EAAIR,QACV,IAAKW,GACH,KAAM,IAAIb,OAAO,IAAOY,EAAS,2BACnC,KAAKE,GACH,GAAc,QAAVF,EACF,OACE3J,MAAOwC,OACP8E,MAAM,EAGV,MAAMrC,EACR,KAAKiE,GACH,GAAe,UAAXS,EAEF,KADAF,GAAIR,OAASY,EACP5E,CAER,IAAUzC,SAANyC,EACF,KAAME,GAAW,kCACrB,KAAK2E,GACHL,EAAIR,OAASW,EACbH,EAAIE,OAASA,EACbF,EAAIM,KAAO9E,CACX,IAAIjF,GAAQ0J,EAASD,GACjBnC,EAAOtH,IAAUyJ,CAIrB,OAHInC,KACFtH,EAAQyJ,EAAIH,aACdG,EAAIR,OAAS3B,EAAOuC,EAAYC,GAE9B9J,MAAOA,EACPsH,KAAMA,IAMd,QAAS0C,MACT,QAASC,MAoBT,QAASC,GAAwBC,EAAeC,EAAgBnI,GAC9D,GAAIyH,GAAWW,EAAYF,EAAelI,GACtCwH,EAAM,GAAIT,GACVlH,EAASS,EAAQ6H,EAAezF,UAGpC,OAFA7C,GAAOwI,GAAWb,EAClB3H,EAAOyI,GAAgBb,EAChB5H,EAET,QAAS0I,GAAsBJ,GAG7B,MAFAA,GAAezF,UAAYpC,EAAQ0H,EAA2BtF,WAC9DyF,EAAepC,UAAYiC,EACpBG,EAET,QAASK,KACPzB,EAAiB7E,KAAK/C,MACtBA,KAAKsJ,IAAMlI,MACX,IAAIiH,GAAMrI,IACVqI,GAAI5B,OAAS,GAAI8C,SAAQ,SAAS5D,EAAS6D,GACzCnB,EAAI1C,QAAUA,EACd0C,EAAImB,OAASA,IAmBjB,QAASC,GAAUV,EAAelI,GAChC,GAAIyH,GAAWW,EAAYF,EAAelI,GACtCwH,EAAM,GAAIgB,EAad,OAZAhB,GAAIqB,eAAiB,SAASC,GAC5B,MAAO,UAAS/K,GACdyJ,EAAIX,MAAQiC,EACZtB,EAAIzJ,MAAQA,EACZ0J,EAASD,KAGbA,EAAIuB,QAAU,SAASN,GACrBO,EAAYxB,EAAKiB,GACjBhB,EAASD,IAEXC,EAASD,GACFA,EAAI5B,OAEb,QAASwC,GAAYF,EAAelI,GAClC,MAAO,UAASwH,GACd,OACE,IACE,MAAOU,GAAchG,KAAKlC,EAAMwH,GAChC,MAAOyB,GACPD,EAAYxB,EAAKyB,KAKzB,QAASD,GAAYxB,EAAKyB,GACxBzB,EAAIN,gBAAkB+B,CACtB,IAAIC,GAAO1B,EAAIF,UAAUE,EAAIF,UAAUhG,OAAS,EAChD,OAAK4H,IAIL1B,EAAIX,MAAuBtG,SAAf2I,EAAAA,SAA2BA,EAAAA,SAAaA,EAAAA,gBACpB3I,SAA5B2I,EAAK/B,qBACPK,EAAIL,mBAAqB+B,EAAK/B,0BAL9BK,GAAI2B,gBAAgBF,GAzNxB,GAA+B,gBAApB7G,iBACT,KAAM,IAAI0E,OAAM,6BAElB,IAAInI,GAAoByD,gBAAgBzD,kBACpCgF,EAAoBvB,gBAAgBwB,iBACpCtE,EAAkB8C,gBAAgBE,eAClChC,EAAUmC,OAAOiB,OACjBR,EAAa9D,UASb6H,EAAa,EACbU,EAAe,EACfE,EAAe,EACfD,EAAY,EACZwB,EAAY,GACZC,EAAgB,EAapBtC,GAAiBrE,WACf4G,QAAS,SAASC,EAAYC,GAC5B,GAAqB,OAAjBA,EAAuB,CAEzB,IAAK,GADDrC,GAAqB,KAChB9F,EAAIlC,KAAKmI,UAAUhG,OAAS,EAAGD,GAAK,EAAGA,IAC9C,GAAgCd,SAA5BpB,KAAKmI,UAAUjG,GAAflC,SAAuC,CACzCgI,EAAqBhI,KAAKmI,UAAUjG,GAAflC,QACrB,OAGuB,OAAvBgI,IACFA,EAAqBkC,GACvBlK,KAAKmI,UAAU/F,MACbkI,UAASD,EACTrC,mBAAoBA,IAGL,OAAfoC,GACFpK,KAAKmI,UAAU/F,MAAMmI,QAAOH,KAGhCI,OAAQ,WACNxK,KAAKmI,UAAUsC,OAEjBC,GAAI/B,QAEF,MADA3I,MAAK2K,aACE3K,KAAKiI,OAEdyC,GAAI/B,MAAK9I,GACPG,KAAKiI,MAAQpI,GAEf6K,GAAIE,mBACF,MAAO5K,MAAKiI,OAEd0C,WAAY,WACV,GAAoB,UAAhB3K,KAAKuI,OAEP,KADAvI,MAAKuI,OAAS,OACRvI,KAAKiI,OAGf4C,IAAK,WACH,OAAQ7K,KAAK0H,OACX,IAAKuC,GACH,MAAOjK,KACT,KAAKkK,GACH,KAAMlK,MAAK+H,eACb,SACE,KAAMN,GAAiBzH,KAAK0H,SAGlCsC,gBAAiB,SAASF,GAGxB,KAFA9J,MAAK6H,OAASY,EACdzI,KAAK0H,MAAQuC,EACPH,GAqCV,IAAIZ,GAAU1J,IACV2J,EAAe3J,GAGnBoJ,GAAkBrF,UAAYsF,EAC9B1I,EAAgB0I,EAA4B,cAAelK,EAAQiK,IACnEC,EAA2BtF,WACzBuH,YAAajC,EACb5C,KAAM,SAASpG,GACb,MAAOuI,GAAYpI,KAAKkJ,GAAUlJ,KAAKmJ,GAAe,OAAQtJ,IAEhEkL,QAAO,SAASlL,GACd,MAAOuI,GAAYpI,KAAKkJ,GAAUlJ,KAAKmJ,GAAe,QAAStJ,KAGnE2E,EAAkBqE,EAA2BtF,WAC3CuH,aAAchM,YAAY,GAC1BmH,MAAOnH,YAAY,GACnBiM,SAAQjM,YAAY,KAEtBwE,OAAOH,eAAe0F,EAA2BtF,UAAWzD,OAAOsE,SAAUzF,EAAQ,WACnF,MAAOqB,SAwBTqJ,EAAqB9F,UAAYpC,EAAQyG,EAAiBrE,WAC1D8F,EAAqB9F,UAAUsH,IAAM,WACnC,OAAQ7K,KAAK0H,OACX,IAAKuC,GACHjK,KAAK2F,QAAQ3F,KAAKkI,YAClB,MACF,KAAKgC,GACHlK,KAAKwJ,OAAOxJ,KAAK+H,gBACjB,MACF,SACE/H,KAAKwJ,OAAO/B,EAAiBzH,KAAK0H,UAGxC2B,EAAqB9F,UAAUyG,gBAAkB,WAC/ChK,KAAK0H,MAAQwC,GAyCfjH,gBAAgBwG,UAAYA,EAC5BxG,gBAAgBmG,sBAAwBA,EACxCnG,gBAAgB6F,wBAA0BA,KAE5C,WACE,QAASkC,GAAsBC,EAAYC,EAAcC,EAAYC,EAAUC,EAAUC,EAAeC,GACtG,GAAIC,KAuBJ,OAtBIP,IACFO,EAAIpJ,KAAK6I,EAAY,KAEnBE,IACFK,EAAIpJ,KAAK,MACL8I,GACFM,EAAIpJ,KAAK8I,EAAc,KAEzBM,EAAIpJ,KAAK+I,GACLC,GACFI,EAAIpJ,KAAK,IAAKgJ,IAGdC,GACFG,EAAIpJ,KAAKiJ,GAEPC,GACFE,EAAIpJ,KAAK,IAAKkJ,GAEZC,GACFC,EAAIpJ,KAAK,IAAKmJ,GAETC,EAAIC,KAAK,IAalB,QAASC,GAAMC,GACb,MAAQA,GAAIC,MAAMC,GAEpB,QAASC,GAAkBxG,GACzB,GAAa,MAATA,EACF,MAAO,GAMT,KAAK,GALDyG,GAA2B,MAAZzG,EAAK,GAAa,IAAM,GACvC0G,EAAmC,MAAnB1G,EAAKC,MAAM,IAAc,IAAM,GAC/C0G,EAAW3G,EAAKoG,MAAM,KACtBF,KACAU,EAAK,EACAC,EAAM,EAAGA,EAAMF,EAAS9J,OAAQgK,IAAO,CAC9C,GAAIC,GAAUH,EAASE,EACvB,QAAQC,GACN,IAAK,GACL,IAAK,IACH,KACF,KAAK,KACCZ,EAAIrJ,OACNqJ,EAAIf,MAEJyB,GACF,MACF,SACEV,EAAIpJ,KAAKgK,IAGf,IAAKL,EAAc,CACjB,KAAOG,IAAO,GACZV,EAAIa,QAAQ,KAEK,KAAfb,EAAIrJ,QACNqJ,EAAIpJ,KAAK,KAEb,MAAO2J,GAAeP,EAAIC,KAAK,KAAOO,EAExC,QAASM,GAAwBC,GAC/B,GAAIjH,GAAOiH,EAAMC,EAAeC,OAAS,EAGzC,OAFAnH,GAAOwG,EAAkBxG,GACzBiH,EAAMC,EAAeC,MAAQnH,EACtB0F,EAAsBuB,EAAMC,EAAeE,QAASH,EAAMC,EAAeG,WAAYJ,EAAMC,EAAeI,QAASL,EAAMC,EAAeK,MAAON,EAAMC,EAAeC,MAAOF,EAAMC,EAAeM,YAAaP,EAAMC,EAAeO,WAE3O,QAASC,GAAgBC,GACvB,GAAIV,GAAQb,EAAMuB,EAClB,OAAOX,GAAwBC,GAEjC,QAASW,GAAWC,EAAMF,GACxB,GAAIV,GAAQb,EAAMuB,GACdG,EAAY1B,EAAMyB,EACtB,IAAIZ,EAAMC,EAAeE,QACvB,MAAOJ,GAAwBC,EAE/BA,GAAMC,EAAeE,QAAUU,EAAUZ,EAAeE,OAE1D,KAAK,GAAIxK,GAAIsK,EAAeE,OAAQxK,GAAKsK,EAAeK,KAAM3K,IACvDqK,EAAMrK,KACTqK,EAAMrK,GAAKkL,EAAUlL,GAGzB,IAAqC,KAAjCqK,EAAMC,EAAeC,MAAM,GAC7B,MAAOH,GAAwBC,EAEjC,IAAIjH,GAAO8H,EAAUZ,EAAeC,MAChCY,EAAQ/H,EAAKgI,YAAY,IAG7B,OAFAhI,GAAOA,EAAKC,MAAM,EAAG8H,EAAQ,GAAKd,EAAMC,EAAeC,MACvDF,EAAMC,EAAeC,MAAQnH,EACtBgH,EAAwBC,GAEjC,QAAS/G,GAAW1D,GAClB,IAAKA,EACH,OAAO,CACT,IAAgB,MAAZA,EAAK,GACP,OAAO,CACT,IAAIyK,GAAQb,EAAM5J,EAClB,OAAIyK,GAAMC,EAAeE,SAChB,GACF,EAtFT,GAAIb,GAAU,GAAI0B,QAAO,4HACrBf,GACFE,OAAQ,EACRC,UAAW,EACXC,OAAQ,EACRC,KAAM,EACNJ,KAAM,EACNK,WAAY,EACZC,SAAU,EAgFZ9J,iBAAgB+J,gBAAkBA,EAClC/J,gBAAgBuC,WAAaA,EAC7BvC,gBAAgB6I,kBAAoBA,EACpC7I,gBAAgBiK,WAAaA,KAE/B,WACE,YAeA,SAASM,GAAYC,GACnB,IAAK,GAAIC,MACLC,EAAO,EAAGA,EAAOpM,UAAUY,OAAQwL,IACrCD,EAAcC,EAAO,GAAKpM,UAAUoM,EACtC,IAAIC,GAAUC,EACV3N,EAAM+C,gBAAgBxC,iBAAiBgN,GAAMzM,IAC5C4M,GAAQ1N,KACX0N,EAAQ1N,GAAOoD,OAAOiB,OAAO,OAE/BqJ,EAAUA,EAAQ1N,EAClB,KAAK,GAAIgC,GAAI,EAAGA,EAAIwL,EAAcvL,OAAS,EAAGD,IAC5ChC,EAAM+C,gBAAgBxC,iBAAiBiN,EAAcxL,IAAIlB,KACpD4M,EAAQ1N,KACX0N,EAAQ1N,GAAOoD,OAAOiB,OAAO,OAE/BqJ,EAAUA,EAAQ1N,EAEpB,IAAI4N,GAAOJ,EAAcA,EAAcvL,OAAS,EAKhD,OAJAjC,GAAM+C,gBAAgBxC,iBAAiBqN,GAAM9M,KACxC4M,EAAQ1N,KACX0N,EAAQ1N,GAAO,GAAI6N,GAAYN,EAAMC,IAEhCE,EAAQ1N,GApCjB,GAAI8N,IACFC,KAAMnM,KAAM,OACZoM,WAAUpM,KAAM,WAChBqM,QAASrM,KAAM,UACfsM,QAAStM,KAAM,UACfpC,QAASoC,KAAM,UACfuM,QAAOvM,KAAM,SAEXiM,EAAc,SAAqBN,EAAMC,GAC3C1N,KAAKyN,KAAOA,EACZzN,KAAK0N,cAAgBA,EAEtBzK,iBAA2B,YAAE8K,QAC9B,IAAIF,GAAevK,OAAOiB,OAAO,KAyBjCtB,iBAAgB8K,YAAcA,EAC9B9K,gBAAgBuK,YAAcA,EAC9BvK,gBAAgBwK,KAAOO,KAEzB,SAAUtP,GACR,YAiDA,SAAS4P,GAAYC,EAAOJ,GAC1B,GAAI1H,MACA+H,EAAQL,EAAS,CACT,GAARK,IACFA,EAAQ,EACV,KAAK,GAAItM,GAAIsM,EAAWL,EAAJjM,EAAYA,IAC9BuE,EAAOrE,KAAKmM,EAAMrM,GAEpB,OAAOuE,GAET,QAASgI,GAAWF,EAAOJ,GACzB,GAAIpE,GAAOoE,EAAS,CAChBpE,GAAOwE,EAAMpM,OAAS,IACxB4H,EAAOwE,EAAMpM,OAAS,EAExB,KAAK,GADDsE,MACKvE,EAAIiM,EAAapE,GAAL7H,EAAWA,IAC9BuE,EAAOrE,KAAKmM,EAAMrM,GAEpB,OAAOuE,GAET,QAASiI,GAAcC,GAErB,IAAK,GADDlI,GAAS,GACJvE,EAAI,EAAOyM,EAAU,EAAdzM,EAAiBA,IAC/BuE,GAAU,GAEZ,OAAOA,GA2CT,QAASmI,GAA8B9M,GACrC,GAAKA,EAAL,CAEA,GAAImL,GAAM4B,EAAYC,UAAUhN,EAChC,OAAOiN,GAAoB9B,IAK7B,QAAS+B,GAAOC,GACd,GAAIC,GAAS3N,UAAU,GACnB4N,EAAe7L,OAAOiB,OAAO,KAqBjC,OApBAjB,QAAOjB,oBAAoB4M,GAAgBG,QAAQ,SAAUtN,GAC3D,GAAIuN,GACAzQ,CACJ,IAAIsQ,IAAWI,EAAoB,CACjC,GAAIC,GAAQjM,OAAOX,yBAAyBsM,EAAgBnN,EACxDyN,GAAM5L,MACR0L,EAASE,EAAM5L,KAEd0L,IACHzQ,EAAQqQ,EAAenN,GACvBuN,EAAS,WACP,MAAOzQ,KAGX0E,OAAOH,eAAegM,EAAcrN,GAClC6B,IAAK0L,EACLvQ,YAAY,MAGhBwE,OAAO9B,kBAAkB2N,GAClBA,EApJT,GAKIK,GALAC,EAAOxM,gBACP+J,EAAkByC,EAAKzC,gBACvBE,EAAauC,EAAKvC,WAClB1H,EAAaiK,EAAKjK,WAClBuJ,EAAsBzL,OAAOiB,OAAO,KAGtCiL,GADE9Q,EAAOgR,UAAYhR,EAAOgR,SAASC,KAC3BzC,EAAWxO,EAAOgR,SAASC,KAAM,MAEjC,EACZ,IAAIC,GAAsB,SAA6B3C,EAAKgC,GAC1DjP,KAAKiN,IAAMA,EACXjN,KAAK6P,OAASZ,EAEfhM,iBAA2B,YAAE2M,QAC9B,IAAIE,GAAwB,SAA+BC,EAAqBC,GAC9EhQ,KAAKiQ,QAAUjQ,KAAK8K,YAAYhJ,KAAO,KAAO9B,KAAKkQ,WAAWF,GAAS,OAASD,EAI9E/P,KAAKmQ,MAHDH,YAAiBI,KAA2BJ,EAAMG,MAGzC,GAFAnQ,KAAKqQ,WAAWL,EAAMG,QAInCC,EAAyBN,CAC5B7M,iBAA2B,YAAE6M,GAC5BQ,WAAY,SAASL,GACnB,MAAOA,GAAQM,QAAQ,WAAYvQ,KAAK8K,YAAYhJ,KAAO,MAE7DoO,WAAY,SAASF,GACnB,MAAKA,GAEAA,EAAMC,QAEJjQ,KAAKsQ,WAAWN,EAAMC,SADpBD,EAAQ,GAFR,IAKXQ,SAAU,SAASC,GACjBzQ,KAAKmQ,OAAS,gBAAkBM,GAElCJ,WAAY,SAASK,GACnB,GAAIP,KAOJ,OANAO,GAAWhF,MAAM,MAAMiF,KAAK,SAAUC,GACpC,MAAI,6BAA6BC,KAAKD,IAC7B,MACTT,GAAM/N,KAAKwO,KAEbT,EAAM,GAAKnQ,KAAKsQ,WAAWH,EAAM,IAC1BA,EAAM1E,KAAK,WAEf9D,MA4BP,IAAImJ,GAA6B,SAAoC7D,EAAK8D,GACxE9N,gBAAgByD,iBAAiBsK,GAA6BjO,KAAK/C,KAAMiN,EAAK,MAC9EjN,KAAK+Q,KAAOA,GAEVC,EAA8BF,CACjC7N,iBAA2B,YAAE6N,GAA6BG,kBAAmB,WAC1E,GAAIjR,KAAK6P,OACP,MAAO7P,MAAK6P,MACd,KACE,GAAI3K,EAIJ,OAH+B9D,gBAApB6B,mBACTiC,EAAkBjC,gBAAgByC,QAAQwL,KAAK,KAAMlR,KAAKiN,MAErDjN,KAAK6P,OAAS7P,KAAK+Q,KAAKhO,KAAKrE,EAAQwG,GAC5C,MAAO4E,GACP,GAAIA,YAAcgG,GAEhB,KADAhG,GAAG0G,SAASxQ,KAAKiN,KACXnD,CAER,IAAIA,EAAGqG,MAAO,CACZ,GAAI5B,GAAQvO,KAAK+Q,KAAKrM,WAAWgH,MAAM,MACnCyF,IACJrH,GAAGqG,MAAMzE,MAAM,MAAMiF,KAAK,SAASC,GACjC,GAAIA,EAAMQ,QAAQ,gDAAkD,EAClE,OAAO,CACT,IAAIC,GAAI,kCAAkCC,KAAKV,EAC/C,IAAIS,EAAG,CACL,GAAIE,GAAOC,SAASH,EAAE,GAAI,GAC1BF,GAASA,EAAOM,OAAOnD,EAAYC,EAAOgD,IAC1CJ,EAAO/O,KAAKsM,EAAc2C,EAAE,IAAM,KAClCF,EAASA,EAAOM,OAAOhD,EAAWF,EAAOgD,IACzCJ,EAAO/O,KAAK,yBAEZ+O,GAAO/O,KAAKwO,KAGhB9G,EAAGqG,MAAQgB,EAAO1F,KAAK,MAEzB,KAAM,IAAIqE,GAAsB9P,KAAKiN,IAAKnD,SAEtC8F,EAQV,IAAI8B,GAAkBpO,OAAOiB,OAAO,MAChC+K,KA0BAT,GACFC,UAAW,SAAShN,EAAM6P,GACxB,GAAoB,gBAAT7P,GACT,KAAM,IAAI7B,WAAU,2CAA8C6B,GACpE,IAAI0D,EAAW1D,GACb,MAAOkL,GAAgBlL,EACzB,IAAI,gBAAgB+O,KAAK/O,GACvB,KAAM,IAAI6F,OAAM,4BAA8B7F,EAEhD,OAAgB,MAAZA,EAAK,IAAc6P,EACdzE,EAAWyE,EAAa7P,GAC1BkL,EAAgBlL,IAEzB6B,IAAK,SAASiO,GACZ,GAAIP,GAAIzC,EAA8BgD,EACtC,KAAKP,EACH,MAAOjQ,OACT,IAAIyQ,GAAiBH,EAAgBL,EAAEpE,IACvC,OAAI4E,GACKA,GACTA,EAAiB7C,EAAOqC,EAAEJ,oBAAqB3B,GACxCoC,EAAgBL,EAAEpE,KAAO4E,IAElC9K,IAAK,SAAS6K,EAAgBE,GAC5BF,EAAiBG,OAAOH,GACxB7C,EAAoB6C,GAAkB,GAAId,GAA2Bc,EAAgB,WACnF,MAAOE,KAETJ,EAAgBE,GAAkBE,GAEpCpH,GAAI8E,WACF,MAAOA,IAET9E,GAAI8E,SAAQ3P,GACV2P,EAAUuC,OAAOlS,IAEnBmS,eAAgB,SAASlQ,EAAMmQ,EAAMlB,GACnC,GAAIa,GAAiB/C,EAAYC,UAAUhN,EAC3C,IAAIiN,EAAoB6C,GACtB,KAAM,IAAIjK,OAAM,0BAA4BiK,EAC9C7C,GAAoB6C,GAAkB,GAAId,GAA2Bc,EAAgBb,IAEvFmB,YAAa5O,OAAOiB,OAAO,MAC3B4N,SAAU,SAASrQ,EAAMmQ,EAAMlB,GACxBkB,IAASA,EAAK9P,QAAW4O,EAAK5O,QAGjCnC,KAAKkS,YAAYpQ,IACfmQ,KAAMA,EACNG,QAAS,WACP,GAAI5K,GAAOjG,UACP8Q,IACJJ,GAAK7C,QAAQ,SAAUkD,EAAKjF,GAC1B,MAAOgF,GAAOC,GAAO9K,EAAK6F,IAE5B,IAAIkF,GAAgBxB,EAAKhO,KAAK/C,KAAMqS,EAEpC,OADAE,GAAcH,QAAQrP,KAAK/C,MACpBuS,EAAcC,UAZzBxS,KAAKgS,eAAelQ,EAAMmQ,EAAMlB,IAiBpC0B,mBAAoB,SAAS1B,GAC3B,MAAO,IAAI/B,GAAO+B,EAAKhO,KAAKrE,GAAS4Q,IAEvCoD,cAAe,SAAS5Q,GACtB,GAAI0F,GAAOxH,IAUX,OATKA,MAAK2S,gBACRrP,OAAOf,KAAKmP,GAAiBf,KAAK,SAAUzQ,GAC1C,GAAImR,GAAI,qBAAqBC,KAAKpR,EAClC,OAAImR,IACF7J,EAAKmL,eAAiBtB,EAAE,IACjB,GAFT,SAMGrR,KAAK2D,IAAI3D,KAAK2S,eAAiB7Q,KAGtC8Q,EAAoB,GAAI5D,IAAQH,YAAaA,GACjDA,GAAY9H,IAAI,mCAAoC6L,GACpD/D,EAAY9H,IAAI,sCAAuC6L,EACvD,IAAIvO,GAAepB,gBAAgBoB,YACnCpB,iBAAgBoB,aAAe,SAAS3F,GACtC2F,EAAa3F,IAEfuE,gBAAgB4L,YAAcA,EAC9BnQ,EAAOmU,QACLV,SAAUtD,EAAYsD,SAASjB,KAAKrC,GACpCmD,eAAgBnD,EAAYmD,eAAed,KAAKrC,GAChDlL,IAAKkL,EAAYlL,IACjBoD,IAAK8H,EAAY9H,IACjB+H,UAAWD,EAAYC,WAEzB7L,gBAAgB6P,cAAgB,SAAShR,GACvC,GAAIiR,GAAenE,EAA8B9M,EACjD,OAAOiR,IAAgBA,EAAa9B,sBAEnB,mBAAXhM,QAAyBA,OAA2B,mBAAXvG,QAAyBA,OAAyB,mBAATmC,MAAuBA,KAAOb,MAC1H6S,OAAOb,eAAe,2DAA6D,WACjF,YASA,SAASgB,GAASnP,GAChB,MAAOA,KAAM,EAEf,QAASD,GAASC,GAChB,MAAOA,KAAmB,gBAANA,IAA+B,kBAANA,IAE/C,QAASoP,GAAWpP,GAClB,MAAoB,kBAANA,GAEhB,QAASqP,GAASrP,GAChB,MAAoB,gBAANA,GAEhB,QAASsP,GAAUtP,GAEjB,MADAA,IAAKA,EACDuP,EAAOvP,GACF,EACC,IAANA,GAAYwP,EAAUxP,GAEnBA,EAAI,EAAIyP,EAAOzP,GAAK0P,EAAM1P,GADxBA,EAIX,QAAS2P,GAAS3P,GAChB,GAAI4P,GAAMN,EAAUtP,EACpB,OAAa,GAAN4P,EAAU,EAAIC,EAAKD,EAAKE,GAEjC,QAASC,GAAc/P,GACrB,MAAQD,GAASC,GAAiBA,EAAE/D,OAAOsE,UAArBhD,OAExB,QAASyS,GAAchQ,GACrB,MAAOoP,GAAWpP,GAEpB,QAASiQ,GAA2BlV,EAAOsH,GACzC,OACEtH,MAAOA,EACPsH,KAAMA,GAGV,QAAS6N,GAAYrT,EAAQoB,EAAMyN,GAC3BzN,IAAQpB,IACZ4C,OAAOH,eAAezC,EAAQoB,EAAMyN,GAGxC,QAASyE,GAAkBtT,EAAQoB,EAAMlD,GACvCmV,EAAYrT,EAAQoB,GAClBlD,MAAOA,EACPC,cAAc,EACdC,YAAY,EACZC,UAAU,IAGd,QAASkV,GAAiBvT,EAAQoB,EAAMlD,GACtCmV,EAAYrT,EAAQoB,GAClBlD,MAAOA,EACPC,cAAc,EACdC,YAAY,EACZC,UAAU,IAGd,QAASmV,GAAkBxT,EAAQyT,GACjC,IAAK,GAAIjS,GAAI,EAAGA,EAAIiS,EAAUhS,OAAQD,GAAK,EAAG,CAC5C,GAAIJ,GAAOqS,EAAUjS,GACjBtD,EAAQuV,EAAUjS,EAAI,EAC1B8R,GAAkBtT,EAAQoB,EAAMlD,IAGpC,QAASwV,GAAe1T,EAAQ2T,GAC9B,IAAK,GAAInS,GAAI,EAAGA,EAAImS,EAAOlS,OAAQD,GAAK,EAAG,CACzC,GAAIJ,GAAOuS,EAAOnS,GACdtD,EAAQyV,EAAOnS,EAAI,EACvB+R,GAAiBvT,EAAQoB,EAAMlD,IAGnC,QAAS0V,GAAiB5T,EAAQqQ,EAAMjR,GACjCA,GAAWA,EAAOsE,WAAY1D,EAAOZ,EAAOsE,YAE7C1D,EAAO,gBACTqQ,EAAOrQ,EAAO,eAChB4C,OAAOH,eAAezC,EAAQZ,EAAOsE,UACnCxF,MAAOmS,EACPlS,cAAc,EACdC,YAAY,EACZC,UAAU,KAId,QAASwV,GAAiBxD,GACxByD,EAAUpS,KAAK2O,GAEjB,QAAS0D,GAAY/V,GACnB8V,EAAUpF,QAAQ,SAAUsF,GAC1B,MAAOA,GAAEhW,KAlGb,GACI6U,GAAQtU,KAAK0V,KACbrB,EAASrU,KAAKC,MACdmU,EAAYuB,SACZxB,EAASyB,MACTC,EAAO7V,KAAK8V,IACZrB,EAAOzU,KAAK+V,IACZlR,EAAWb,gBAAgBa,SAqB3B6P,EAAkBmB,EAAK,EAAG,IAAM,EAgEhCN,IASJ,QACE9J,GAAI5G,YACF,MAAOA,IAET4G,GAAIsI,YACF,MAAOA,IAETtI,GAAI9G,YACF,MAAOA,IAET8G,GAAIuI,cACF,MAAOA,IAETvI,GAAIwI,YACF,MAAOA,IAETxI,GAAIyI,aACF,MAAOA,IAETzI,GAAI8I,YACF,MAAOA,IAET9I,GAAIkJ,iBACF,MAAOA,IAETlJ,GAAImJ,iBACF,MAAOA,IAETnJ,GAAIoJ,8BACF,MAAOA,IAETpJ,GAAIqJ,eACF,MAAOA,IAETrJ,GAAIsJ,qBACF,MAAOA,IAETtJ,GAAIuJ,oBACF,MAAOA,IAETvJ,GAAIwJ,qBACF,MAAOA,IAETxJ,GAAI0J,kBACF,MAAOA,IAET1J,GAAI4J,oBACF,MAAOA,IAET5J,GAAI6J,oBACF,MAAOA,IAET7J,GAAI+J,eACF,MAAOA,OAIb5B,OAAOb,eAAe,yDAA2D,WAC/E,YASA,SAASiD,GAAYC,EAAKhV,GACxB,GAAI0D,EAAS1D,GAAM,CACjB,GAAIS,GAAaF,EAAiBP,EAClC,OAAOS,IAAcuU,EAAIC,aAAaxU,EAAWK,MAEnD,MAAmB,gBAARd,GACFgV,EAAIE,aAAalV,GACnBgV,EAAIG,gBAAgBnV,GAE7B,QAASoV,GAAQJ,GACfA,EAAIK,YACJL,EAAIC,aAAe7R,OAAOiB,OAAO,MACjC2Q,EAAIE,aAAe9R,OAAOiB,OAAO,MACjC2Q,EAAIG,gBAAkB/R,OAAOiB,OAAO,MACpC2Q,EAAIM,cAAgB,EAyNtB,QAASC,GAAY/W,GACnB,GAAIgX,GAAOhX,EACP4E,EAASoS,EAAKpS,OACdxD,EAAS4V,EAAK5V,MACbpB,GAAOiX,MACVjX,EAAOiX,IAAMA,EACf,IAAIC,GAAelX,EAAOiX,IAAIpS,SACDnC,UAAzBwU,EAAaC,UACfnX,EAAOiX,IAAMA,GACXC,EAAaC,UACfvB,EAAiBsB,EAAcA,EAAaC,QAAS/V,GACrDwU,EAAiBhR,EAAOiE,gBAAe,GAAI7I,GAAOiX,KAAME,WAAY,WAClE,MAAO7V,OACNF,IA5PP,GACI0H,GAAOqL,OAAOlP,IAAI,yDAClBC,EAAW4D,EAAK5D,SAChB0Q,EAAmB9M,EAAK8M,iBACxBC,EAAmB/M,EAAK+M,iBACxB9T,EAAmBwC,gBAAgBxC,iBACnCqC,EAAkBQ,OAAOC,UAAUV,eACnCiT,KAiBAH,EAAM,WACR,GAAII,GACAC,EACAC,EAAW1U,UAAU,EACzB,KAAKqC,EAAS5D,MACZ,KAAM,IAAIC,WAAU,kCACtB,IAAI6C,EAAgBC,KAAK/C,KAAM,YAC7B,KAAM,IAAIC,WAAU,yCAGtB,IADAqV,EAAQtV,MACS,OAAbiW,GAAkC7U,SAAb6U,EACvB,IAAK,GAAIxG,GAAOwG,EAAShT,gBAAgBpB,WAAW/B,OAAOsE,aACvD8R,EAAO,SAAUA,EAAOzG,EAAKxJ,QAAQC,MAAQ,CAC/C,GAAIwP,GAAOQ,EAAKtX,MACZsB,GAAO6V,EAAOL,EAAKzS,gBAAgBpB,WAAW/B,OAAOsE,cAAe4R,EAAOD,EAAK9P,QAAQC,KAAO,OAAS8P,EAAKpX,OAC7GA,GAASoX,EAAOD,EAAK9P,QAAQC,KAAO,OAAS8P,EAAKpX,KAEpDoB,MAAK+G,IAAI7G,EAAKtB,IAuNtB,OAlNCqE,iBAA2B,YAAE0S,GAC5BjL,GAAIyL,QACF,MAAOnW,MAAKuV,SAASpT,OAAS,EAAInC,KAAKwV,eAEzC7R,IAAK,SAASzD,GACZ,GAAImN,GAAQ4H,EAAYjV,KAAME,EAC9B,OAAckB,UAAViM,EACKrN,KAAKuV,SAASlI,EAAQ,GAD/B,QAGFtG,IAAK,SAAS7G,EAAKtB,GACjB,GAAIwX,GAAaxS,EAAS1D,GACtBmW,EAA4B,gBAARnW,GACpBmN,EAAQ4H,EAAYjV,KAAME,EAC9B,IAAckB,SAAViM,EACFrN,KAAKuV,SAASlI,EAAQ,GAAKzO,MAK3B,IAHAyO,EAAQrN,KAAKuV,SAASpT,OACtBnC,KAAKuV,SAASlI,GAASnN,EACvBF,KAAKuV,SAASlI,EAAQ,GAAKzO,EACvBwX,EAAY,CACd,GAAIzV,GAAaF,EAAiBP,GAC9Bc,EAAOL,EAAWK,IACtBhB,MAAKmV,aAAanU,GAAQqM,MACjBgJ,GACTrW,KAAKoV,aAAalV,GAAOmN,EAEzBrN,KAAKqV,gBAAgBnV,GAAOmN,CAGhC,OAAOrN,OAETsW,IAAK,SAASpW,GACZ,MAAkCkB,UAA3B6T,EAAYjV,KAAME,IAE3BqW,SAAQ,SAASrW,GACf,GAEImN,GACArM,EAHAoV,EAAaxS,EAAS1D,GACtBmW,EAA4B,gBAARnW,EAGxB,IAAIkW,EAAY,CACd,GAAIzV,GAAaF,EAAiBP,EAC9BS,KACF0M,EAAQrN,KAAKmV,aAAanU,EAAOL,EAAWK,YACrChB,MAAKmV,aAAanU,QAElBqV,IACThJ,EAAQrN,KAAKoV,aAAalV,SACnBF,MAAKoV,aAAalV,KAEzBmN,EAAQrN,KAAKqV,gBAAgBnV,SACtBF,MAAKqV,gBAAgBnV,GAE9B,OAAckB,UAAViM,GACFrN,KAAKuV,SAASlI,GAASyI,EACvB9V,KAAKuV,SAASlI,EAAQ,GAAKjM,OAC3BpB,KAAKwV,iBACE,IAEF,GAETgB,MAAO,WACLlB,EAAQtV,OAEVoP,QAAS,SAASqH,GAEhB,IAAK,GADDC,GAAUnV,UAAU,GACfW,EAAI,EAAGA,EAAIlC,KAAKuV,SAASpT,OAAQD,GAAK,EAAG,CAChD,GAAIhC,GAAMF,KAAKuV,SAASrT,GACpBtD,EAAQoB,KAAKuV,SAASrT,EAAI,EAC1BhC,KAAQ4V,GAEZW,EAAW1T,KAAK2T,EAAS9X,EAAOsB,EAAKF,QAGzC6V,QAAS5S,gBAAgBmG,sBAAsB,QAASuN,KACtD,GAAIzU,GACAhC,EACAtB,CACJ,OAAOqE,iBAAgB6F,wBAAwB,SAAS8N,GACtD,OACE,OAAQA,EAAKlP,OACX,IAAK,GACHxF,EAAI,EACJ0U,EAAKlP,MAAQ,EACb,MACF,KAAK,IACHkP,EAAKlP,MAASxF,EAAIlC,KAAKuV,SAASpT,OAAU,EAAI,EAC9C,MACF,KAAK,GACHD,GAAK,EACL0U,EAAKlP,MAAQ,EACb,MACF,KAAK,GACHxH,EAAMF,KAAKuV,SAASrT,GACpBtD,EAAQoB,KAAKuV,SAASrT,EAAI,GAC1B0U,EAAKlP,MAAQ,CACb,MACF,KAAK,GACHkP,EAAKlP,MAASxH,IAAQ4V,EAAmB,EAAI,CAC7C,MACF,KAAK,GAEH,MADAc,GAAKlP,MAAQ,GACLxH,EAAKtB,EACf,KAAK,GACHgY,EAAKjM,aACLiM,EAAKlP,MAAQ,CACb,MACF,SACE,MAAOkP,GAAK/L,QAEjB8L,EAAM3W,QAEXuC,KAAMU,gBAAgBmG,sBAAsB,QAASyN,KACnD,GAAI3U,GACAhC,EACAtB,CACJ,OAAOqE,iBAAgB6F,wBAAwB,SAAS8N,GACtD,OACE,OAAQA,EAAKlP,OACX,IAAK,GACHxF,EAAI,EACJ0U,EAAKlP,MAAQ,EACb,MACF,KAAK,IACHkP,EAAKlP,MAASxF,EAAIlC,KAAKuV,SAASpT,OAAU,EAAI,EAC9C,MACF,KAAK,GACHD,GAAK,EACL0U,EAAKlP,MAAQ,EACb,MACF,KAAK,GACHxH,EAAMF,KAAKuV,SAASrT,GACpBtD,EAAQoB,KAAKuV,SAASrT,EAAI,GAC1B0U,EAAKlP,MAAQ,CACb,MACF,KAAK,GACHkP,EAAKlP,MAASxH,IAAQ4V,EAAmB,EAAI,CAC7C,MACF,KAAK,GAEH,MADAc,GAAKlP,MAAQ,EACNxH,CACT,KAAK,GACH0W,EAAKjM,aACLiM,EAAKlP,MAAQ,CACb,MACF,SACE,MAAOkP,GAAK/L,QAEjBgM,EAAM7W,QAEX8W,OAAQ7T,gBAAgBmG,sBAAsB,QAAS2N,KACrD,GAAI7U,GACAhC,EACAtB,CACJ,OAAOqE,iBAAgB6F,wBAAwB,SAAS8N,GACtD,OACE,OAAQA,EAAKlP,OACX,IAAK,GACHxF,EAAI,EACJ0U,EAAKlP,MAAQ,EACb,MACF,KAAK,IACHkP,EAAKlP,MAASxF,EAAIlC,KAAKuV,SAASpT,OAAU,EAAI,EAC9C,MACF,KAAK,GACHD,GAAK,EACL0U,EAAKlP,MAAQ,EACb,MACF,KAAK,GACHxH,EAAMF,KAAKuV,SAASrT,GACpBtD,EAAQoB,KAAKuV,SAASrT,EAAI,GAC1B0U,EAAKlP,MAAQ,CACb,MACF,KAAK,GACHkP,EAAKlP,MAASxH,IAAQ4V,EAAmB,EAAI,CAC7C,MACF,KAAK,GAEH,MADAc,GAAKlP,MAAQ,EACN9I,CACT,KAAK,GACHgY,EAAKjM,aACLiM,EAAKlP,MAAQ,CACb,MACF,SACE,MAAOkP,GAAK/L,QAEjBkM,EAAM/W,aAGbsD,OAAOH,eAAewS,EAAIpS,UAAWzD,OAAOsE,UAC1CvF,cAAc,EACdE,UAAU,EACVH,MAAO+W,EAAIpS,UAAUsS,UAkBvBtB,EAAiBkB,IAEf/K,GAAIiL,OACF,MAAOA,IAETjL,GAAI+K,eACF,MAAOA,OAIb5C,OAAOlP,IAAI,uDACXkP,OAAOb,eAAe,yDAA2D,WAC/E,YASA,SAASgF,GAAQjQ,GACfA,EAAIkQ,KAAO,GAAItB,GAqHjB,QAASuB,GAAYxY,GACnB,GAAIsX,GAAOtX,EACP4E,EAAS0S,EAAK1S,OACdxD,EAASkW,EAAKlW,MACbpB,GAAOyY,MACVzY,EAAOyY,IAAMA,EACf,IAAIC,GAAe1Y,EAAOyY,IAAI5T,SAC1B6T,GAAaN,SACfxC,EAAiB8C,EAAcA,EAAaN,OAAQhX,GACpDwU,EAAiBhR,EAAOiE,gBAAe,GAAI7I,GAAOyY,KAAML,UAAW,WACjE,MAAO9W,OACNF,IAzIP,GACI0H,GAAOqL,OAAOlP,IAAI,yDAClBC,EAAW4D,EAAK5D,SAChB0Q,EAAmB9M,EAAK8M,iBACxBC,EAAmB/M,EAAK+M,iBACxBoB,EAAM9C,OAAOlP,IAAI,uDAAuDgS,IAExE7S,GADmBG,gBAAgBxC,iBACjB6C,OAAOC,UAAUV,gBAInCsU,EAAM,WACR,GAAIlB,GAAW1U,UAAU,EACzB,KAAKqC,EAAS5D,MACZ,KAAM,IAAIC,WAAU,kCACtB,IAAI6C,EAAgBC,KAAK/C,KAAM,QAC7B,KAAM,IAAIC,WAAU,yCAGtB,IADA+W,EAAQhX,MACS,OAAbiW,GAAkC7U,SAAb6U,EACvB,IAAK,GAAIP,GAAOO,EAAShT,gBAAgBpB,WAAW/B,OAAOsE,aACvD2R,EAAO,SAAUA,EAAOL,EAAKzP,QAAQC,MAAQ,CAC/C,GAAImR,GAAOtB,EAAKnX,KAEdoB,MAAKsX,IAAID,IAqHjB,OAhHCpU,iBAA2B,YAAEkU,GAC5BzM,GAAIyL,QACF,MAAOnW,MAAKiX,KAAKd,MAEnBG,IAAK,SAASpW,GACZ,MAAOF,MAAKiX,KAAKX,IAAIpW,IAEvBoX,IAAK,SAASpX,GAEZ,MADAF,MAAKiX,KAAKlQ,IAAI7G,EAAKA,GACZF,MAETuW,SAAQ,SAASrW,GACf,MAAOF,MAAKiX,KAALjX,UAAiBE,IAE1BsW,MAAO,WACL,MAAOxW,MAAKiX,KAAKT,SAEnBpH,QAAS,SAASqH,GAChB,GAAIC,GAAUnV,UAAU,GACpBkO,EAAOzP,IACX,OAAOA,MAAKiX,KAAK7H,QAAQ,SAAUxQ,EAAOsB,GACxCuW,EAAW1T,KAAK2T,EAASxW,EAAKA,EAAKuP,MAGvCqH,OAAQ7T,gBAAgBmG,sBAAsB,QAASuN,KACrD,GAAIE,GACAE,CACJ,OAAO9T,iBAAgB6F,wBAAwB,SAAS8N,GACtD,OACE,OAAQA,EAAKlP,OACX,IAAK,GACHmP,EAAO7W,KAAKiX,KAAK1U,OAAOzC,OAAOsE,YAC/BwS,EAAKjO,KAAO,OACZiO,EAAKrO,OAAS,OACdqO,EAAKlP,MAAQ,EACb,MACF,KAAK,IACHqP,EAAOF,EAAKD,EAAKrO,QAAQqO,EAAKhM,iBAC9BgM,EAAKlP,MAAQ,CACb,MACF,KAAK,GACHkP,EAAKlP,MAASqP,EAAS,KAAI,EAAI,CAC/B,MACF,KAAK,GACHH,EAAKjO,KAAOoO,EAAKnY,MACjBgY,EAAKlP,MAAQ,EACb,MACF,KAAK,GAEH,MADAkP,GAAKlP,MAAQ,GACNqP,EAAKnY,KACd,SACE,MAAOgY,GAAK/L,QAEjB8L,EAAM3W,QAEX6V,QAAS5S,gBAAgBmG,sBAAsB,QAASmO,KACtD,GAAIC,GACAC,CACJ,OAAOxU,iBAAgB6F,wBAAwB,SAAS8N,GACtD,OACE,OAAQA,EAAKlP,OACX,IAAK,GACH8P,EAAQxX,KAAKiX,KAAKpB,UAAU/V,OAAOsE,YACnCwS,EAAKjO,KAAO,OACZiO,EAAKrO,OAAS,OACdqO,EAAKlP,MAAQ,EACb,MACF,KAAK,IACH+P,EAAQD,EAAMZ,EAAKrO,QAAQqO,EAAKhM,iBAChCgM,EAAKlP,MAAQ,CACb,MACF,KAAK,GACHkP,EAAKlP,MAAS+P,EAAU,KAAI,EAAI,CAChC,MACF,KAAK,GACHb,EAAKjO,KAAO8O,EAAM7Y,MAClBgY,EAAKlP,MAAQ,EACb,MACF,KAAK,GAEH,MADAkP,GAAKlP,MAAQ,GACN+P,EAAM7Y,KACf,SACE,MAAOgY,GAAK/L,QAEjB0M,EAAOvX,aAGdsD,OAAOH,eAAegU,EAAI5T,UAAWzD,OAAOsE,UAC1CvF,cAAc,EACdE,UAAU,EACVH,MAAOuY,EAAI5T,UAAUuT,SAEvBxT,OAAOH,eAAegU,EAAI5T,UAAW,QACnC1E,cAAc,EACdE,UAAU,EACVH,MAAOuY,EAAI5T,UAAUuT,SAgBvBvC,EAAiB2C,IAEfxM,GAAIyM,OACF,MAAOA,IAETzM,GAAIwM,eACF,MAAOA,OAIbrE,OAAOlP,IAAI,uDACXkP,OAAOb,eAAe,+DAAiE,WACrF,YAGA,SAAS0F,GAAKC,EAAUC,GACtBC,EAAMpE,GAAOkE,EACbE,EAAMpE,EAAM,GAAKmE,EACjBnE,GAAO,EACK,IAARA,GACFqE,IAOJ,QAASC,KACP,MAAO,YACLC,QAAQC,SAASC,IAGrB,QAASC,KACP,GAAIC,GAAa,EACbC,EAAW,GAAIC,GAAwBJ,GACvCK,EAAOC,SAASC,eAAe,GAEnC,OADAJ,GAASK,QAAQH,GAAOI,eAAe,IAChC,WACLJ,EAAKK,KAAQR,IAAeA,EAAa,GAG7C,QAASS,KACP,GAAIC,GAAU,GAAIC,eAElB,OADAD,GAAQE,MAAMC,UAAYf,EACnB,WACLY,EAAQI,MAAMC,YAAY,IAG9B,QAASC,KACP,MAAO,YACLC,WAAWnB,EAAO,IAItB,QAASA,KACP,IAAK,GAAIhW,GAAI,EAAOuR,EAAJvR,EAASA,GAAK,EAAG,CAC/B,GAAIyV,GAAWE,EAAM3V,GACjB0V,EAAMC,EAAM3V,EAAI,EACpByV,GAASC,GACTC,EAAM3V,GAAKd,OACXyW,EAAM3V,EAAI,GAAKd,OAEjBqS,EAAM,EAjDR,GAmDIqE,GAlDArE,EAAM,EASN6F,EAAa5B,EACb6B,EAAmC,mBAAXtU,QAA0BA,UAClDqT,EAA0BiB,EAAcC,kBAAoBD,EAAcE,uBAC1EC,EAAwC,mBAAtBC,oBAA8D,mBAAlBC,gBAA2D,mBAAnBb,gBA2BtGlB,EAAQ,GAAIgC,OAAM,IAqBtB,OARE/B,GADqB,mBAAZE,UAAyD,wBAA3BtT,SAAS3B,KAAKiV,SACrCD,IACPO,EACOH,IACPuB,EACOb,IAEAO,KAEV1O,GAAI,WACR,MAAO4O,OAGbzG,OAAOb,eAAe,6DAA+D,WACnF,YAKA,SAAS8H,GAAUjW,GACjB,MAAOA,IAAkB,gBAANA,IAAgCzC,SAAdyC,EAAEkW,QAEzC,QAASC,GAAiBnW,GACxB,MAAOA,GAET,QAASoW,GAAgBpW,GACvB,KAAMA,GAER,QAASqW,GAAMC,GACb,GAAIC,GAA6B,SAAjB7Y,UAAU,GAAkBA,UAAU,GAAKyY,EACvDK,EAA4B,SAAjB9Y,UAAU,GAAkBA,UAAU,GAAK0Y,EACtDK,EAAWC,EAAYJ,EAAQrP,YACnC,QAAQqP,EAAQJ,SACd,IAAK3Y,QACH,KAAMnB,UACR,KAAK,GACHka,EAAQK,WAAWpY,KAAKgY,EAAWE,GACnCH,EAAQM,UAAUrY,KAAKiY,EAAUC,EACjC,MACF,KAAK,GACHI,EAAeP,EAAQtK,QAASuK,EAAWE,GAC3C,MACF,KAAK,GACHI,EAAeP,EAAQtK,QAASwK,EAAUC,IAG9C,MAAOA,GAASH,QAElB,QAASI,GAAYI,GACnB,GAAI3a,OAAS4a,EAAU,CACrB,GAAIT,GAAUU,EAAY,GAAID,GAASE,GACvC,QACEX,QAASA,EACTxU,QAAS,SAAU9B,GACjBkX,EAAeZ,EAAStW,IAE1B2F,OAAQ,SAAUwR,GAChBC,EAAcd,EAASa,KAI3B,GAAIvU,KAKJ,OAJAA,GAAO0T,QAAU,GAAIQ,GAAE,SAAUhV,EAAS6D,GACxC/C,EAAOd,QAAUA,EACjBc,EAAO+C,OAASA,IAEX/C,EAGX,QAASyU,GAAWf,EAASgB,EAAQvc,EAAOwb,EAAWC,GAKrD,MAJAF,GAAQJ,QAAUoB,EAClBhB,EAAQtK,OAASjR,EACjBub,EAAQK,WAAaJ,EACrBD,EAAQM,UAAYJ,EACbF,EAET,QAASU,GAAYV,GACnB,MAAOe,GAAWf,EAAS,EAAG/Y,cA2GhC,QAAS2Z,GAAeZ,EAAStW,GAC/BuX,EAAYjB,EAAS,EAAItW,EAAGsW,EAAQK,YAEtC,QAASS,GAAcd,EAASa,GAC9BI,EAAYjB,EAAS,GAAIa,EAAGb,EAAQM,WAEtC,QAASW,GAAYjB,EAASgB,EAAQvc,EAAOyc,GACnB,IAApBlB,EAAQJ,UAEZW,EAAe9b,EAAOyc,GACtBH,EAAWf,EAASgB,EAAQvc,IAE9B,QAAS8b,GAAe9b,EAAO0c,GAC7BC,EAAM,WACJ,IAAK,GAAIrZ,GAAI,EAAGA,EAAIoZ,EAAMnZ,OAAQD,GAAK,EACrCsZ,EAAc5c,EAAO0c,EAAMpZ,GAAIoZ,EAAMpZ,EAAI,MAI/C,QAASsZ,GAAc5c,EAAO6c,EAASnB,GACrC,IACE,GAAI7T,GAASgV,EAAQ7c,EACrB,IAAI6H,IAAW6T,EAASH,QACtB,KAAM,IAAIla,UACH6Z,GAAUrT,GACjByT,EAAMzT,EAAQ6T,EAAS3U,QAAS2U,EAAS9Q,QAEzC8Q,EAAS3U,QAAQc,GACnB,MAAOiV,GACP,IACEpB,EAAS9Q,OAAOkS,GAChB,MAAOA,MAIb,QAAS9X,GAASC,GAChB,MAAOA,KAAmB,gBAANA,IAA+B,kBAANA,IAE/C,QAAS8X,GAAc7Q,EAAajH,GAClC,IAAKiW,EAAUjW,IAAMD,EAASC,GAAI,CAChC,GAAI+X,EACJ,KACEA,EAAO/X,EAAE+X,KACT,MAAOZ,GACP,GAAIb,GAAU0B,EAAe9Y,KAAK+H,EAAakQ,EAE/C,OADAnX,GAAEiY,GAAkB3B,EACbA,EAET,GAAoB,kBAATyB,GAAqB,CAC9B,GAAIG,GAAIlY,EAAEiY,EACV,IAAIC,EACF,MAAOA,EAEP,IAAIzB,GAAWC,EAAYzP,EAC3BjH,GAAEiY,GAAkBxB,EAASH,OAC7B,KACEyB,EAAK7Y,KAAKc,EAAGyW,EAAS3U,QAAS2U,EAAS9Q,QACxC,MAAOwR,GACPV,EAAS9Q,OAAOwR,GAElB,MAAOV,GAASH,SAItB,MAAOtW,GAET,QAASmY,GAAgBtd,GAClBA,EAAO6K,UACV7K,EAAO6K,QAAUA,GA7OrB,GACIgS,GAAQ1I,OAAOlP,IAAI,6DAAXkP,WACR0B,EAAmB1B,OAAOlP,IAAI,yDAAyD4Q,iBACvFuG,KA6DAvR,EAAU,SAAiB0S,GAC7B,GAAIA,IAAanB,EAAjB,CAEA,GAAwB,kBAAbmB,GACT,KAAM,IAAIhc,UACZ,IAAIka,GAAUU,EAAY7a,KAC1B,KACEic,EAAS,SAAUpY,GACjBkX,EAAeZ,EAAStW,IACtB,SAAUmX,GACZC,EAAcd,EAASa,KAEzB,MAAOU,GACPT,EAAcd,EAASuB,KAG1BzY,iBAA2B,YAAEsG,GAC5BgB,QAAO,SAAS8P,GACd,MAAOra,MAAK4b,KAAKxa,OAAWiZ,IAE9BuB,KAAM,SAASxB,EAAWC,GACC,kBAAdD,KACTA,EAAYJ,GACU,kBAAbK,KACTA,EAAWJ,EACb,IAAIiC,GAAOlc,KACP8K,EAAc9K,KAAK8K,WACvB,OAAOoP,GAAMla,KAAM,SAAS6D,GAE1B,MADAA,GAAI8X,EAAc7Q,EAAajH,GACxBA,IAAMqY,EAAO7B,EAAS,GAAIpa,YAAa6Z,EAAUjW,GAAKA,EAAE+X,KAAKxB,EAAWC,GAAYD,EAAUvW,IACpGwW,MAGL1U,QAAS,SAAS9B,GAChB,MAAI7D,QAAS4a,EACPd,EAAUjW,GACLA,EAEFqX,EAAW,GAAIN,GAASE,GAAa,EAAIjX,GAEzC,GAAI7D,MAAK,SAAS2F,GACvBA,EAAQ9B,MAId2F,OAAQ,SAASwR,GACf,MAAIhb,QAAS4a,EACJM,EAAW,GAAIN,GAASE,GAAa,GAAIE,GAEzC,GAAIhb,MAAK,SAAU2F,EAAS6D,GACjCA,EAAOwR,MAIbmB,IAAK,SAASrF,GACZ,GAAIwD,GAAWC,EAAYva,MACvBoc,IACJ,KAUE,IAAK,GATDC,GAAwB,SAASna,GACnC,MAAO,UAAU2B,GACfuY,EAAYla,GAAK2B,EACD,MAAVyY,GACJhC,EAAS3U,QAAQyW,KAGnBE,EAAQ,EACRpa,EAAI,EACCgU,EAAOY,EAAO7T,gBAAgBpB,WAAW/B,OAAOsE,aACrDsR,EAAO,SAAUA,EAAOQ,EAAKjQ,QAAQC,MAAQ,CAC/C,GAAItH,GAAQ8W,EAAK9W,MAEX2d,EAAoBF,EAAsBna,EAC9ClC,MAAK2F,QAAQ/G,GAAOgd,KAAKW,EAAmB,SAAUvB,GACpDV,EAAS9Q,OAAOwR,OAEhB9Y,IACAoa,EAGQ,IAAVA,GACFhC,EAAS3U,QAAQyW,GAEnB,MAAOV,GACPpB,EAAS9Q,OAAOkS,GAElB,MAAOpB,GAASH,SAElBqC,KAAM,SAAS1F,GACb,GAAIwD,GAAWC,EAAYva,KAC3B,KACE,IAAK,GAAIkC,GAAI,EAAGA,EAAI4U,EAAO3U,OAAQD,IACjClC,KAAK2F,QAAQmR,EAAO5U,IAAI0Z,KAAK,SAAU/X,GACrCyW,EAAS3U,QAAQ9B,IACf,SAAUmX,GACZV,EAAS9Q,OAAOwR,KAGpB,MAAOU,GACPpB,EAAS9Q,OAAOkS,GAElB,MAAOpB,GAASH,UAGpB,IAAIS,GAAWrR,EACXsS,EAAiBjB,EAASpR,OAmC1BsS,EAAiB,YAqCrB,OADAvH,GAAiByH,IAEftR,GAAInB,WACF,MAAOA,IAETmB,GAAIsR,mBACF,MAAOA,OAIbnJ,OAAOlP,IAAI,2DACXkP,OAAOb,eAAe,oEAAsE,WAC1F,YAqDA,SAASyK,GAAqBrO,GAC5B,GAAI9O,GAAIyS,OAAO3D,GACXhK,EAAWd,OAAOiB,OAAOmY,EAAenZ,UAG5C,OAFAa,GAASvC,EAAW8a,IAAmBrd,EACvC8E,EAASvC,EAAW+a,IAA4B,EACzCxY,EAzDT,GAAIqL,GAEAjI,EAAOqL,OAAOlP,IAAI,yDAClBmQ,EAA6BtM,EAAKsM,2BAClClQ,EAAW4D,EAAK5D,SAChB/B,EAAaoB,gBAAgBpB,WAC7BgB,EAAiBS,OAAOC,UAAUV,eAClC8Z,EAAiB7c,OAAO,kBACxB8c,EAA0B9c,OAAO,2BACjC4c,EAAiB,YAkDrB,OAjDCzZ,iBAA2B,YAAEyZ,GAAiBjN,KAAWnM,OAAOH,eAAesM,EAAM,QACpF7Q,MAAO,WACL,GAAIie,GAAI7c,IACR,KAAK4D,EAASiZ,KAAOha,EAAeE,KAAK8Z,EAAGF,GAC1C,KAAM,IAAI1c,WAAU,uCAEtB,IAAIX,GAAIud,EAAEhb,EAAW8a,GACrB,IAAUvb,SAAN9B,EACF,MAAOwU,GAA2B1S,QAAW,EAE/C,IAAI0b,GAAWD,EAAEhb,EAAW+a,IACxBnJ,EAAMnU,EAAE6C,MACZ,IAAI2a,GAAYrJ,EAEd,MADAoJ,GAAEhb,EAAW8a,IAAmBvb,OACzB0S,EAA2B1S,QAAW,EAE/C,IACI2b,GADAvO,EAAQlP,EAAE0d,WAAWF,EAEzB,IAAY,MAARtO,GAAkBA,EAAQ,OAAUsO,EAAW,IAAMrJ,EACvDsJ,EAAehL,OAAOkL,aAAazO,OAC9B,CACL,GAAI0O,GAAS5d,EAAE0d,WAAWF,EAAW,EAEnCC,GADW,MAATG,GAAmBA,EAAS,MACfnL,OAAOkL,aAAazO,GAEpBuD,OAAOkL,aAAazO,GAASuD,OAAOkL,aAAaC,GAIpE,MADAL,GAAEhb,EAAW+a,IAA4BE,EAAWC,EAAa5a,OAC1D2R,EAA2BiJ,GAAc,IAElDle,cAAc,EACdC,YAAY,EACZC,UAAU,IACRuE,OAAOH,eAAesM,EAAM3P,OAAOsE,UACrCxF,MAAO,WACL,MAAOoB,OAETnB,cAAc,EACdC,YAAY,EACZC,UAAU,IACR0Q,QAQI/E,GAAI+R,wBACR,MAAOA,OAGb5J,OAAOb,eAAe,4DAA8D,WAClF,YAUA,SAASmL,GAAWC,GAClB,GAAIhP,GAAS2D,OAAO/R,KACpB,IAAY,MAARA,MAA0C,mBAA1Bqd,EAAUta,KAAKqa,GACjC,KAAMnd,YAER,IAAIqd,GAAelP,EAAOjM,OACtBob,EAAexL,OAAOqL,GAEtBN,GADeS,EAAapb,OACjBZ,UAAUY,OAAS,EAAIZ,UAAU,GAAKH,QACjD+K,EAAM2Q,EAAWU,OAAOV,GAAY,CACpCjI,OAAM1I,KACRA,EAAM,EAER,IAAIsR,GAAQxe,KAAK+V,IAAI/V,KAAKye,IAAIvR,EAAK,GAAImR,EACvC,OAAOK,GAAS5a,KAAKqL,EAAQmP,EAAcpR,IAAQsR,EAErD,QAASG,GAASR,GAChB,GAAIhP,GAAS2D,OAAO/R,KACpB,IAAY,MAARA,MAA0C,mBAA1Bqd,EAAUta,KAAKqa,GACjC,KAAMnd,YAER,IAAIqd,GAAelP,EAAOjM,OACtBob,EAAexL,OAAOqL,GACtBS,EAAeN,EAAapb,OAC5BgK,EAAMmR,CACV,IAAI/b,UAAUY,OAAS,EAAG,CACxB,GAAI2a,GAAWvb,UAAU,EACRH,UAAb0b,IACF3Q,EAAM2Q,EAAWU,OAAOV,GAAY,EAChCjI,MAAM1I,KACRA,EAAM,IAIZ,GAAItB,GAAM5L,KAAK+V,IAAI/V,KAAKye,IAAIvR,EAAK,GAAImR,GACjCG,EAAQ5S,EAAMgT,CAClB,OAAY,GAARJ,GACK,EAEFK,EAAa/a,KAAKqL,EAAQmP,EAAcE,IAAUA,EAE3D,QAASM,GAASX,GAChB,GAAY,MAARpd,KACF,KAAMC,YAER,IAAImO,GAAS2D,OAAO/R,KACpB,IAAIod,GAAoC,mBAA1BC,EAAUta,KAAKqa,GAC3B,KAAMnd,YAER,IAAIqd,GAAelP,EAAOjM,OACtBob,EAAexL,OAAOqL,GACtBS,EAAeN,EAAapb,OAC5B2a,EAAWvb,UAAUY,OAAS,EAAIZ,UAAU,GAAKH,OACjD+K,EAAM2Q,EAAWU,OAAOV,GAAY,CACpC3Q,IAAOA,IACTA,EAAM,EAER,IAAIsR,GAAQxe,KAAK+V,IAAI/V,KAAKye,IAAIvR,EAAK,GAAImR,EACvC,OAAIO,GAAeJ,EAAQH,GAClB,EAE0C,IAA5CK,EAAS5a,KAAKqL,EAAQmP,EAAcpR,GAE7C,QAAS6R,GAAO1B,GACd,GAAY,MAARtc,KACF,KAAMC,YAER,IAAImO,GAAS2D,OAAO/R,MAChBie,EAAI3B,EAAQkB,OAAOlB,GAAS,CAIhC,IAHIzH,MAAMoJ,KACRA,EAAI,GAEE,EAAJA,GAAcC,KAALD,EACX,KAAME,aAER,IAAS,GAALF,EACF,MAAO,EAGT,KADA,GAAIxX,GAAS,GACNwX,KACLxX,GAAU2H,CAEZ,OAAO3H,GAET,QAAS2X,GAAYtB,GACnB,GAAY,MAAR9c,KACF,KAAMC,YAER,IAAImO,GAAS2D,OAAO/R,MAChBmW,EAAO/H,EAAOjM,OACdkL,EAAQyP,EAAWU,OAAOV,GAAY,CAI1C,IAHIjI,MAAMxH,KACRA,EAAQ,GAEE,EAARA,GAAaA,GAAS8I,EACxB,MAAO/U,OAET,IACI8b,GADA1O,EAAQJ,EAAO4O,WAAW3P,EAE9B,OAAImB,IAAS,OAAmB,OAATA,GAAmB2H,EAAO9I,EAAQ,IACvD6P,EAAS9O,EAAO4O,WAAW3P,EAAQ,GAC/B6P,GAAU,OAAoB,OAAVA,GACI,MAAlB1O,EAAQ,OAAkB0O,EAAS,MAAS,MAGjD1O,EAET,QAAS6P,GAAIC,GACX,GAAID,GAAMC,EAASD,IACf5K,EAAM4K,EAAIlc,SAAW,CACzB,IAAY,IAARsR,EACF,MAAO,EAGT,KAFA,GAAInU,GAAI,GACJ4C,EAAI,IACK,CAEX,GADA5C,GAAK+e,EAAInc,GACLA,EAAI,IAAMuR,EACZ,MAAOnU,EACTA,IAAKiC,YAAYW,IAGrB,QAASqc,KACP,GAEIC,GACAC,EAHAC,KACAxf,EAAQD,KAAKC,MAGbmO,EAAQ,GACRlL,EAASZ,UAAUY,MACvB,KAAKA,EACH,MAAO,EAET,QAASkL,EAAQlL,GAAQ,CACvB,GAAIwc,GAAYnB,OAAOjc,UAAU8L,GACjC,KAAKuH,SAAS+J,IAA0B,EAAZA,GAAiBA,EAAY,SAAYzf,EAAMyf,IAAcA,EACvF,KAAMR,YAAW,uBAAyBQ,EAE3B,QAAbA,EACFD,EAAUtc,KAAKuc,IAEfA,GAAa,MACbH,GAAiBG,GAAa,IAAM,MACpCF,EAAgBE,EAAY,KAAS,MACrCD,EAAUtc,KAAKoc,EAAeC,IAGlC,MAAO1M,QAAOkL,aAAa3b,MAAM,KAAMod,GAEzC,QAASE,KACP,GAAI/B,GAAI5Z,gBAAgBgB,qBAAqBjE,MACzCV,EAAIyS,OAAO8K,EACf,OAAOJ,GAAqBnd,GAE9B,QAASuf,GAAengB,GACtB,GAAIqT,GAASrT,EAAOqT,MACpBmC,GAAkBnC,EAAOxO,WAAY,cAAe6a,EAAa,WAAYR,EAAU,WAAYG,EAAU,SAAUC,EAAQ,aAAcb,IAC7IjJ,EAAkBnC,GAAS,gBAAiBwM,EAAe,MAAOF,IAClE/J,EAAiBvC,EAAOxO,UAAWqb,EAAyB9e,QArK9D,GACI2c,GAAuB5J,OAAOlP,IAAI,kEAAkE8Y,qBACpG9O,EAAOkF,OAAOlP,IAAI,yDAClBuQ,EAAoBvG,EAAKuG,kBACzBI,EAAmB3G,EAAK2G,iBACxBC,EAAmB5G,EAAK4G,iBACxB8I,EAAY/Z,OAAOC,UAAUmB,SAC7BiZ,EAAW5L,OAAOxO,UAAU6N,QAC5B0M,EAAe/L,OAAOxO,UAAU+J,WAgKpC,OADAiH,GAAiBsK,IAEfnU,GAAIyS,cACF,MAAOA,IAETzS,GAAIkT,YACF,MAAOA,IAETlT,GAAIqT,YACF,MAAOA,IAETrT,GAAIsT,UACF,MAAOA,IAETtT,GAAI0T,eACF,MAAOA,IAET1T,GAAI2T,OACF,MAAOA,IAET3T,GAAI6T,iBACF,MAAOA,IAET7T,GAAIkU,2BACF,MAAOA,IAETlU,GAAImU,kBACF,MAAOA,OAIbhM,OAAOlP,IAAI,0DACXkP,OAAOb,eAAe,mEAAqE,WACzF,YA2CA,SAAS8M,GAAoB9c,EAAO+c,GAClC,GAAIre,GAASoD,EAAS9B,GAClBoC,EAAW,GAAI4a,EAInB,OAHA5a,GAAS6a,gBAAkBve,EAC3B0D,EAAS8a,wBAA0B,EACnC9a,EAAS+a,oBAAsBJ,EACxB3a,EAET,QAASyR,KACP,MAAOiJ,GAAoB9e,KAAMof,GAEnC,QAAS7c,KACP,MAAOuc,GAAoB9e,KAAMqf,GAEnC,QAASvI,KACP,MAAOgI,GAAoB9e,KAAMsf,GAzDnC,GAAI7P,GAEAjI,EAAOqL,OAAOlP,IAAI,yDAClBG,EAAW0D,EAAK1D,SAChBkP,EAAWxL,EAAKwL,SAChBc,EAA6BtM,EAAKsM,2BAClCuL,EAA2B,EAC3BC,EAA6B,EAC7BF,EAA8B,EAC9BJ,EAAgB,YAkDpB,OAjDC/b,iBAA2B,YAAE+b,GAAgBvP,KAAWnM,OAAOH,eAAesM,EAAM,QACnF7Q,MAAO,WACL,GAAIwF,GAAWN,EAAS9D,MACpBgC,EAAQoC,EAAS6a,eACrB,KAAKjd,EACH,KAAM,IAAI/B,WAAU,iCAEtB,IAAIoN,GAAQjJ,EAAS8a,wBACjBK,EAAWnb,EAAS+a,oBACpBhd,EAAS6Q,EAAShR,EAAMG,OAC5B,OAAIkL,IAASlL,GACXiC,EAAS8a,wBAA0BhB,IAC5BpK,EAA2B1S,QAAW,KAE/CgD,EAAS8a,wBAA0B7R,EAAQ,EACvCkS,GAAYD,EACPxL,EAA2B9R,EAAMqL,IAAQ,GAC9CkS,GAAYH,EACPtL,GAA4BzG,EAAOrL,EAAMqL,KAAS,GACpDyG,EAA2BzG,GAAO;EAE3CxO,cAAc,EACdC,YAAY,EACZC,UAAU,IACRuE,OAAOH,eAAesM,EAAM3P,OAAOsE,UACrCxF,MAAO,WACL,MAAOoB,OAETnB,cAAc,EACdC,YAAY,EACZC,UAAU,IACR0Q,QAmBF/E,GAAImL,WACF,MAAOA,IAETnL,GAAInI,QACF,MAAOA,IAETmI,GAAIoM,UACF,MAAOA,OAIbjE,OAAOb,eAAe,2DAA6D,WACjF,YAgBA,SAASwN,GAAKC,GACZ,GAMIC,GACAjM,EAPAkM,EAAQpe,UAAU,GAClBmV,EAAUnV,UAAU,GACpBoZ,EAAI3a,KACJ4f,EAAQ9b,EAAS2b,GACjBI,EAAoBze,SAAVue,EACVG,EAAI,CAGR,IAAID,IAAY5M,EAAW0M,GACzB,KAAM1f,YAER,IAAI2T,EAAcgM,GAAQ,CACxBF,EAAM7L,EAAc8G,GAAK,GAAIA,KAC7B,KAAK,GAAIlL,GAAOmQ,EAAM3c,gBAAgBpB,WAAW/B,OAAOsE,aACpD8R,EAAO,SAAUA,EAAOzG,EAAKxJ,QAAQC,MAAQ,CAC/C,GAAImR,GAAOnB,EAAKtX,KAGZ8gB,GAAII,GADFD,EACOF,EAAM5c,KAAK2T,EAASW,EAAMyI,GAE1BzI,EAEXyI,IAIJ,MADAJ,GAAIvd,OAAS2d,EACNJ,EAIT,IAFAjM,EAAMD,EAASoM,EAAMzd,QACrBud,EAAM7L,EAAc8G,GAAK,GAAIA,GAAElH,GAAO,GAAIoG,OAAMpG,GACrCA,EAAJqM,EAASA,IAEZJ,EAAII,GADFD,EAC0B,mBAAZnJ,GAA0BiJ,EAAMC,EAAME,GAAIA,GAAKH,EAAM5c,KAAK2T,EAASkJ,EAAME,GAAIA,GAEpFF,EAAME,EAInB,OADAJ,GAAIvd,OAASsR,EACNiM,EAET,QAASK,KACP,IAAK,GAAIH,MACLlK,EAAO,EAAGA,EAAOnU,UAAUY,OAAQuT,IACrCkK,EAAMlK,GAAQnU,UAAUmU,EAI1B,KAAK,GAHDiF,GAAI3a,KACJyT,EAAMmM,EAAMzd,OACZud,EAAM7L,EAAc8G,GAAK,GAAIA,GAAElH,GAAO,GAAIoG,OAAMpG,GAC3CqM,EAAI,EAAOrM,EAAJqM,EAASA,IACvBJ,EAAII,GAAKF,EAAME,EAGjB,OADAJ,GAAIvd,OAASsR,EACNiM,EAET,QAASM,GAAKphB,GACZ,GAAI6e,GAAyB,SAAjBlc,UAAU,GAAkBA,UAAU,GAAK,EACnDsJ,EAAMtJ,UAAU,GAChBb,EAASoD,EAAS9D,MAClByT,EAAMD,EAAS9S,EAAOyB,QACtB8d,EAAY9M,EAAUsK,GACtByC,EAAkB9e,SAARyJ,EAAoBsI,EAAUtI,GAAO4I,CAGnD,KAFAwM,EAAwB,EAAZA,EAAgBhhB,KAAKye,IAAIjK,EAAMwM,EAAW,GAAKhhB,KAAK+V,IAAIiL,EAAWxM,GAC/EyM,EAAoB,EAAVA,EAAcjhB,KAAKye,IAAIjK,EAAMyM,EAAS,GAAKjhB,KAAK+V,IAAIkL,EAASzM,GACpDyM,EAAZD,GACLvf,EAAOuf,GAAarhB,EACpBqhB,GAEF,OAAOvf,GAET,QAASyf,GAAKC,GACZ,GAAI1J,GAAUnV,UAAU,EACxB,OAAO8e,GAAWrgB,KAAMogB,EAAW1J,GAErC,QAAS4J,GAAUF,GACjB,GAAI1J,GAAUnV,UAAU,EACxB,OAAO8e,GAAWrgB,KAAMogB,EAAW1J,GAAS,GAE9C,QAAS2J,GAAWxf,EAAMuf,GACxB,GAAI1J,GAAUnV,UAAU,GACpBgf,EAA+B,SAAjBhf,UAAU,GAAkBA,UAAU,IAAK,EACzDb,EAASoD,EAASjD,GAClB4S,EAAMD,EAAS9S,EAAOyB,OAC1B,KAAK8Q,EAAWmN,GACd,KAAMngB,YAER,KAAK,GAAIiC,GAAI,EAAOuR,EAAJvR,EAASA,IAAK,CAC5B,GAAItD,GAAQ8B,EAAOwB,EACnB,IAAIke,EAAUrd,KAAK2T,EAAS9X,EAAOsD,EAAGxB,GACpC,MAAO6f,GAAcre,EAAItD,EAG7B,MAAO2hB,GAAc,GAAKnf,OAE5B,QAASof,GAAc9hB,GACrB,GAAIqX,GAAOrX,EACPmb,EAAQ9D,EAAK8D,MACbvW,EAASyS,EAAKzS,OACdxD,EAASiW,EAAKjW,MAClBoU,GAAkB2F,EAAMtW,WAAY,UAAWsS,EAAS,OAAQtT,EAAM,SAAUuU,EAAQ,OAAQkJ,EAAM,OAAQG,EAAM,YAAaG,IACjIpM,EAAkB2F,GAAQ,OAAQ2F,EAAM,KAAMO,IAC9CzL,EAAiBuF,EAAMtW,UAAWuT,EAAQhX,GAC1CwU,EAAiBhR,EAAOiE,kBAAkBuP,UAAW,WACnD,MAAO9W,OACNF,GAtHL,GACI0H,GAAOqL,OAAOlP,IAAI,iEAClBkS,EAAUrO,EAAKqO,QACftT,EAAOiF,EAAKjF,KACZuU,EAAStP,EAAKsP,OACdnJ,EAAOkF,OAAOlP,IAAI,yDAClBiQ,EAAgBjG,EAAKiG,cACrBX,EAAatF,EAAKsF,WAClBY,EAAgBlG,EAAKkG,cACrBK,EAAoBvG,EAAKuG,kBACzBI,EAAmB3G,EAAK2G,iBACxBC,EAAmB5G,EAAK4G,iBACxBpB,EAAYxF,EAAKwF,UACjBK,EAAW7F,EAAK6F,SAChB1P,EAAW6J,EAAK7J,QA2GpB,OADAyQ,GAAiBiM,IAEf9V,GAAI8U,QACF,MAAOA,IAET9U,GAAIqV,MACF,MAAOA,IAETrV,GAAIsV,QACF,MAAOA,IAETtV,GAAIyV,QACF,MAAOA,IAETzV,GAAI4V,aACF,MAAOA,IAET5V,GAAI8V,iBACF,MAAOA,OAIb3N,OAAOlP,IAAI,yDACXkP,OAAOb,eAAe,4DAA8D,WAClF,YAWA,SAASyO,GAAGC,EAAMC,GAChB,MAAID,KAASC,EACK,IAATD,GAAc,EAAIA,IAAS,EAAIC,EACjCD,IAASA,GAAQC,IAAUA,EAEpC,QAASC,GAAOC,GACd,IAAK,GAAI3e,GAAI,EAAGA,EAAIX,UAAUY,OAAQD,IAAK,CACzC,GAAI4e,GAASvf,UAAUW,GACnB6e,EAAkB,MAAVD,KAAsBve,EAAKue,GACnC/E,EAAI,OACJ5Z,EAAS4e,EAAM5e,MACnB,KAAK4Z,EAAI,EAAO5Z,EAAJ4Z,EAAYA,IAAK,CAC3B,GAAIja,GAAOif,EAAMhF,EACb1c,GAAcyC,KAElB+e,EAAO/e,GAAQgf,EAAOhf,KAG1B,MAAO+e,GAET,QAASG,GAAMH,EAAQC,GACrB,GACI/E,GACA3Y,EAFA2d,EAAQ1e,EAAoBye,GAG5B3e,EAAS4e,EAAM5e,MACnB,KAAK4Z,EAAI,EAAO5Z,EAAJ4Z,EAAYA,IAAK,CAC3B,GAAIja,GAAOif,EAAMhF,EACb1c,GAAcyC,KAElBsB,EAAaT,EAAyBme,EAAQC,EAAMhF,IACpD5Y,EAAe0d,EAAQE,EAAMhF,GAAI3Y,IAEnC,MAAOyd,GAET,QAASxd,GAAe3E,GACtB,GAAI4E,GAAS5E,EAAO4E,MACpB4Q,GAAkB5Q,GAAS,SAAUsd,EAAQ,KAAMH,EAAI,QAASO,IA9ClE,GACIxZ,GAAOqL,OAAOlP,IAAI,yDAClBuQ,EAAoB1M,EAAK0M,kBACzBK,EAAmB/M,EAAK+M,iBACxB5G,EAAO1K,gBACPE,EAAiBwK,EAAKxK,eACtBR,EAA2BgL,EAAKhL,yBAChCN,EAAsBsL,EAAKtL,oBAC3BhD,EAAgBsO,EAAKtO,cACrBkD,EAAOoL,EAAKpL,IAwChB,OADAgS,GAAiBlR,IAEfqH,GAAI+V,MACF,MAAOA,IAET/V,GAAIkW,UACF,MAAOA,IAETlW,GAAIsW,SACF,MAAOA,IAETtW,GAAIrH,kBACF,MAAOA,OAIbwP,OAAOlP,IAAI,0DACXkP,OAAOb,eAAe,4DAA8D,WAClF,YAcA,SAASiP,GAAe9S,GACtB,MAAO+E,GAAS/E,IAAWkF,EAAUlF,GAGvC,QAAS+S,GAAU/S,GACjB,MAAO8S,GAAe9S,IAAWgF,EAAUhF,KAAYA,EAEzD,QAASgT,GAAYhT,GACnB,MAAO+E,GAAS/E,IAAWiF,EAAOjF,GAGpC,QAASiT,GAAcjT,GACrB,GAAI8S,EAAe9S,GAAS,CAC1B,GAAIkT,GAAWlO,EAAUhF,EACzB,IAAIkT,IAAalT,EACf,MAAOmT,GAAKD,IAAaE,EAE7B,OAAO,EAET,QAASC,GAAe9iB,GACtB,GAAI8e,GAAS9e,EAAO8e,MACpBpJ,GAAeoJ,GAAS,mBAAoB+D,EAAkB,mBAAoBE,EAAkB,UAAWC,IAC/GxN,EAAkBsJ,GAAS,WAAYyD,EAAgB,YAAaC,EAAW,QAASC,EAAa,gBAAiBC,IAnCxH,GACI5Z,GAAOqL,OAAOlP,IAAI,yDAClBuP,EAAW1L,EAAK0L,SAChBkB,EAAiB5M,EAAK4M,eACtBF,EAAoB1M,EAAK0M,kBACzBK,EAAmB/M,EAAK+M,iBACxBpB,EAAY3L,EAAK2L,UACjBmO,EAAOriB,KAAK0iB,IACZtO,EAAYuB,SACZxB,EAASyB,MACT0M,EAAmBtiB,KAAK8V,IAAI,EAAG,IAAM,EACrC0M,GAAoBxiB,KAAK8V,IAAI,EAAG,IAAM,EACtC2M,EAAUziB,KAAK8V,IAAI,EAAG,IA0B1B,OADAR,GAAiBiN,IAEf9W,GAAI6W,oBACF,MAAOA,IAET7W,GAAI+W,oBACF,MAAOA,IAET/W,GAAIgX,WACF,MAAOA,IAEThX,GAAIkK,YACF,MAAOqM,IAETvW,GAAIwW,aACF,MAAOA,IAETxW,GAAImK,SACF,MAAOsM,IAETzW,GAAI0W,iBACF,MAAOA,IAET1W,GAAI8W,kBACF,MAAOA,OAIb3O,OAAOlP,IAAI,0DACXkP,OAAOb,eAAe,0DAA4D,WAChF,YAgBA,SAAS4P,GAAM/d,GAEb,GADAA,EAAImP,GAAUnP,GACL,GAALA,EACF,MAAO,GACT,IAAI4C,GAAS,CA0Bb,OAzByB,MAAhB,WAAJ5C,KACHA,IAAM,GACN4C,GAAU,IAGa,KAAhB,WAAJ5C,KACHA,IAAM,EACN4C,GAAU,GAGa,KAAhB,WAAJ5C,KACHA,IAAM,EACN4C,GAAU,GAGa,KAAhB,WAAJ5C,KACHA,IAAM,EACN4C,GAAU,GAGa,KAAhB,WAAJ5C,KACHA,IAAM,EACN4C,GAAU,GAGLA,EAET,QAASob,GAAKhe,EAAGie,GACfje,EAAImP,GAAUnP,GACdie,EAAI9O,GAAU8O,EACd,IAAIC,GAAMle,IAAM,GAAM,MAClBme,EAAS,MAAJne,EACLoe,EAAMH,IAAM,GAAM,MAClBI,EAAS,MAAJJ,CACT,OAAOE,GAAKE,GAAQH,EAAKG,EAAKF,EAAKC,GAAO,KAAQ,GAAK,EAEzD,QAASE,GAAKte,GAEZ,MADAA,IAAKA,EACDA,EAAI,EACC,EACD,EAAJA,EACK,GACFA,EAET,QAASue,GAAMve,GACb,MAAgB,kBAATwe,EAAIxe,GAEb,QAASye,GAAKze,GACZ,MAAgB,oBAATwe,EAAIxe,GAEb,QAAS0e,GAAM1e,GAEb,GADAA,GAAKA,EACG,GAAJA,GAAUuP,EAAOvP,GACnB,MAAO2e,IAET,IAAU,IAAN3e,GAAiBqa,MAANra,EACb,MAAOA,EAET,IAAU,KAANA,EACF,OAAQqa,GAEV,IAAIzX,GAAS,EACTwX,EAAI,EACR,IAAQ,EAAJpa,GAASA,EAAI,EACf,MAAOwe,GAAI,EAAIxe,EAEjB,KAAK,GAAI3B,GAAI,EAAO+b,EAAJ/b,EAAOA,IAChBA,EAAI,IAAO,EACduE,GAAUsO,EAAIlR,EAAG3B,GAAKA,EAEtBuE,GAAUsO,EAAIlR,EAAG3B,GAAKA,CAG1B,OAAOuE,GAET,QAASgc,GAAM5e,GAEb,MADAA,IAAKA,EACDA,KAAOqa,IACF,GAEJ7K,EAAUxP,IAAY,IAANA,EAGd6e,EAAI7e,GAAK,EAFPA,EAIX,QAAS8e,GAAK9e,GAEZ,MADAA,IAAKA,EACK,IAANA,EACK,EAELuP,EAAOvP,GACF2e,IAEJnP,EAAUxP,IAGP,EAAJA,IACFA,GAAKA,GAEHA,EAAI,GACC6e,EAAI7e,GAAK,GAEV6e,EAAI7e,GAAK6e,GAAK7e,IAAM,GARnBqa,IAUX,QAAS0E,GAAK/e,GAEZ,MADAA,IAAKA,EACAwP,EAAUxP,IAAY,IAANA,GAGb6e,EAAI7e,GAAK6e,GAAK7e,IAAM,EAFnBA,EAIX,QAASgf,GAAKhf,GAEZ,GADAA,GAAKA,EACK,IAANA,EACF,MAAOA,EACT,KAAKwP,EAAUxP,GACb,MAAOse,GAAKte,EACd,IAAIif,GAAOJ,EAAI7e,GACXkf,EAAOL,GAAK7e,EAChB,QAAQif,EAAOC,IAASD,EAAOC,GAEjC,QAASC,GAAMnf,GAEb,MADAA,IAAKA,EACG,EAAJA,EACK2e,IACJnP,EAAUxP,GAERwe,EAAIxe,EAAIof,EAAKpf,EAAI,GAAKof,EAAKpf,EAAI,IAD7BA,EAGX,QAASqf,GAAMrf,GAEb,MADAA,IAAKA,EACK,IAANA,GAAYwP,EAAUxP,GAEtBA,EAAI,EACCwe,EAAIxe,EAAIof,EAAKpf,EAAIA,EAAI,KACtBwe,GAAKxe,EAAIof,EAAKpf,EAAIA,EAAI,IAHrBA,EAKX,QAASsf,GAAMtf,GAEb,MADAA,IAAKA,EACK,KAANA,GACMqa,IAEA,IAANra,EACKqa,IAEC,IAANra,EACKA,EAELuP,EAAOvP,IAAU,GAAJA,GAAUA,EAAI,EACtB2e,IAEF,GAAMH,GAAK,EAAIxe,IAAM,EAAIA,IAElC,QAASuf,KAIP,IAAK,GAHDjhB,GAASZ,UAAUY,OACnBkhB,EAAO,GAAIxJ,OAAM1X,GACjBub,EAAM,EACDxb,EAAI,EAAOC,EAAJD,EAAYA,IAAK,CAC/B,GAAI+b,GAAI1c,UAAUW,EAElB,IADA+b,GAAKA,EACKC,MAAND,GAAkBA,KAAOC,IAC3B,MAAOA,IACTD,GAAI0D,EAAI1D,GACJA,EAAIP,IACNA,EAAMO,GACRoF,EAAKnhB,GAAK+b,EAEA,IAARP,IACFA,EAAM,EAGR,KAAK,GAFD4F,GAAM,EACNC,EAAe,EACVrhB,EAAI,EAAOC,EAAJD,EAAYA,IAAK,CAC/B,GAAI+b,GAAIoF,EAAKnhB,GAAKwb,EACd8F,EAAUvF,EAAIA,EAAIsF,EAClBE,EAAcH,EAAME,CACxBD,GAAgBE,EAAcH,EAAOE,EACrCF,EAAMG,EAER,MAAOR,GAAKK,GAAO5F,EAErB,QAASgG,GAAM7f,GAEb,MADAA,IAAKA,EACDA,EAAI,EACC3E,EAAM2E,GACP,EAAJA,EACK8Q,EAAK9Q,GACPA,EAGT,QAAS8f,GAAO9f,GAEd,MADA+f,GAAI,IAAM/f,EACH+f,EAAI,GAEb,QAASC,GAAKhgB,GAEZ,GADAA,GAAKA,EACK,IAANA,EACF,MAAOA,EACT,IAAIigB,GAAa,EAAJjgB,CACTigB,KACFjgB,GAAKA,EACP,IAAI4C,GAASsO,EAAIlR,EAAG,EAAI,EACxB,OAAOigB,IAAUrd,EAASA,EAE5B,QAASsd,GAAarlB,GACpB,GAAIO,GAAOP,EAAOO,IAClBiV,GAAkBjV,GAAO,QAAS+jB,EAAO,QAASE,EAAO,QAASC,EAAO,OAAQU,EAAM,QAASjC,EAAO,OAAQe,EAAM,QAASF,EAAO,SAAUkB,EAAQ,QAASP,EAAO,OAAQvB,EAAM,QAASO,EAAO,QAASG,EAAO,OAAQD,EAAM,OAAQH,EAAM,OAAQS,EAAM,OAAQC,EAAM,QAASa,IAjOxR,GACIlc,GAAOqL,OAAOlP,IAAI,yDAClBuQ,EAAoB1M,EAAK0M,kBACzBK,EAAmB/M,EAAK+M,iBACxBvB,EAAWxL,EAAKwL,SAChBK,EAAYuB,SACZxB,EAASyB,MACTlH,EAAO1O,KACP0iB,EAAMhU,EAAKgU,IACXhN,EAAOhH,EAAKgH,KACZ+N,EAAM/U,EAAK+U,IACXxjB,EAAQyO,EAAKzO,MACbmjB,EAAM1U,EAAK0U,IACXtN,EAAMpH,EAAKoH,IACXkO,EAAOtV,EAAKsV,KAkMZW,EAAM,GAAII,cAAa,EAoB3B,OADAzP,GAAiBwP,IAEfrZ,GAAIkX,SACF,MAAOA,IAETlX,GAAImX,QACF,MAAOA,IAETnX,GAAIyX,QACF,MAAOA,IAETzX,GAAI0X,SACF,MAAOA,IAET1X,GAAI4X,QACF,MAAOA,IAET5X,GAAI6X,SACF,MAAOA,IAET7X,GAAI+X,SACF,MAAOA,IAET/X,GAAIiY,QACF,MAAOA,IAETjY,GAAIkY,QACF,MAAOA,IAETlY,GAAImY,QACF,MAAOA,IAETnY,GAAIsY,SACF,MAAOA,IAETtY,GAAIwY,SACF,MAAOA,IAETxY,GAAIyY,SACF,MAAOA,IAETzY,GAAI0Y,SACF,MAAOA,IAET1Y,GAAIgZ,SACF,MAAOA,IAEThZ,GAAIiZ,UACF,MAAOA,IAETjZ,GAAImZ,QACF,MAAOA,IAETnZ,GAAIqZ,gBACF,MAAOA,OAIblR,OAAOlP,IAAI,wDACXkP,OAAOb,eAAe,+DAAiE,WACrF,YACA,IACIyC,GAAc5B,OAAOlP,IAAI,yDAAyD8Q,WACtFA,GAAYnQ,QAAQ5F,OACpB,IAAI2F,GAAepB,gBAAgBoB,YAKnC,OAJApB,iBAAgBoB,aAAe,SAAS3F,GACtC2F,EAAa3F,GACb+V,EAAY/V,SAIhBmU,OAAOlP,IAAI"}
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
export function configure(aurelia) {
aurelia.use
.standardConfiguration();
aurelia.start().then(a => a.setRoot());
}
...@@ -2,7 +2,6 @@ ...@@ -2,7 +2,6 @@
> *Aurelia* is a next generation JavaScript client framework that leverages simple conventions to empower your creativity. > *Aurelia* is a next generation JavaScript client framework that leverages simple conventions to empower your creativity.
## Local Installation ## Local Installation
Requirements: Requirements:
...@@ -13,45 +12,36 @@ Requirements: ...@@ -13,45 +12,36 @@ Requirements:
Clone the repository: Clone the repository:
``` git clone https://github.com/mhoyer/todomvc-aurelia
$ git clone https://github.com/mhoyer/todomvc-aurelia
```
Install jspm and npm packages: Install jspm and npm packages:
``` npm install
$ npm install jspm install
$ jspm install
```
Simply build, test, bundle, export: Simply build, test, bundle, export:
``` gulp
$ gulp
```
Run tests and HTTP-server: Run tests and HTTP-server:
``` gulp watch
$ gulp watch
```
## Resources ## Resources
- [Aurelia • TodoMVC](https://github.com/mhoyer/todomvc-aurelia) original sources - [Aurelia TodoMVC source](https://github.com/mhoyer/todomvc-aurelia)
- [Website](http://aurelia.io/) - [TodoMVC](https://github.com/tastejs/todomvc) home of all TodoMVC apps
- [Documentation](http://aurelia.io/docs.html) - [Aurelia Website](http://aurelia.io/)
- [Blog](http://blog.durandal.io/) - [Aurelia Documentation](http://aurelia.io/docs.html)
- [Durandal Blog](http://blog.durandal.io/)
### Support ### Support
- [Twitter](http://twitter.com/pixelplastic) - [Twitter @pixelplastic](http://twitter.com/pixelplastic)
- [Gitter](https://gitter.im/Aurelia/Discuss) - [Gitter Aurelia/Discuss](https://gitter.im/Aurelia/Discuss)
*Let us [know](https://github.com/tastejs/todomvc/issues) if you discover anything worth sharing.* *Let us [know](https://github.com/tastejs/todomvc/issues) if you discover anything worth sharing.*
## Implementation ## Implementation
- Following the getting started tutorial: http://aurelia.io/get-started.html - Following the getting started tutorial: http://aurelia.io/get-started.html
...@@ -59,6 +49,22 @@ $ gulp watch ...@@ -59,6 +49,22 @@ $ gulp watch
### Changelog ### Changelog
#### 0.2.0
- Fixed [#5 - ```<form>``` wrapping](https://github.com/mhoyer/todomvc-aurelia/issues/5)
- Fixed [#10 - FF backslash bug](https://github.com/mhoyer/todomvc-aurelia/issues/10)
- Fixed [#11 - IE11 support - Object.observe](https://github.com/mhoyer/todomvc-aurelia/issues/11)
- Updated Aurelia dependencies to latest 1.0.0-beta.1
- Updated todomvc assets to latest versions
#### 0.1.1
- Prepared all assets (README, learn.json, index.html, etc) to fulfill the [Contribution Docs](https://github.com/tastejs/todomvc/blob/master/contributing.md)
- Cleaned up obsolete files (```*.src.js```, empty ```css/app.css```)
- Fixed [#6](https://github.com/mhoyer/todomvc-aurelia/issues/6)
- Fixed [#7](https://github.com/mhoyer/todomvc-aurelia/issues/7)
- Fixed [#9](https://github.com/mhoyer/todomvc-aurelia/issues/9)
#### 0.1.0 #### 0.1.0
- Finished functional implementation to fulfill [TodoMVC Application Specification](https://github.com/tastejs/todomvc/blob/master/app-spec.md) - Finished functional implementation to fulfill [TodoMVC Application Specification](https://github.com/tastejs/todomvc/blob/master/app-spec.md)
...@@ -68,7 +74,6 @@ $ gulp watch ...@@ -68,7 +74,6 @@ $ gulp watch
- See [Issues](https://github.com/mhoyer/todomvc-aurelia/issues/) - See [Issues](https://github.com/mhoyer/todomvc-aurelia/issues/)
## Credit ## Credit
Created by [Marcel Hoyer](http://marcelhoyer.de) Created by [Marcel Hoyer](http://marcelhoyer.de)
const ENTER_KEY = 13;
const ESC_KEY = 27;
export class TodoItem {
constructor(title) {
this.isCompleted = false;
this.isEditing = false;
this.title = title.trim();
this.editTitle = null;
}
labelDoubleClicked() {
this.editTitle = this.title;
this.isEditing = true;
}
finishEditing() {
this.title = this.editTitle.trim();
this.isEditing = false;
}
onKeyUp(ev) {
if (ev.keyCode === ENTER_KEY) {
return this.finishEditing();
}
if (ev.keyCode === ESC_KEY) {
this.editTitle = this.title;
this.isEditing = false;
}
}
}
import {ObserverLocator} from 'aurelia-binding';
import {TodoItem} from './todo-item';
import _ from 'underscore';
const STORAGE_NAME = 'todomvc-aurelia';
const ENTER_KEY = 13;
export class Todos {
static inject() { return [ObserverLocator]; }
constructor(observerLocator, storage = null) {
this.items = [];
this.filteredItems = [];
this.filter = '';
this.newTodoTitle = null;
this.areAllChecked = false;
this.observerLocator = observerLocator;
this.storage = storage || localStorage;
this.load();
}
activate(params) {
this.updateFilteredItems(params.filter);
}
onKeyUp(ev) {
if (ev.keyCode === ENTER_KEY) {
this.addNewTodo(this.newTodoTitle);
}
}
addNewTodo(title = this.newTodoTitle) {
if (title == undefined) { return; }
title = title.trim();
if (title.length === 0) { return; }
const newTodoItem = new TodoItem(title);
this.observeItem(newTodoItem);
this.items.push(newTodoItem);
this.newTodoTitle = null;
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
observeItem(todoItem) {
this.observerLocator
.getObserver(todoItem, 'title')
.subscribe((o, n) => this.onTitleChanged(todoItem));
this.observerLocator
.getObserver(todoItem, 'isCompleted')
.subscribe(() => this.onIsCompletedChanged());
}
onTitleChanged(todoItem) {
if (todoItem.title === '') {
this.deleteTodo(todoItem);
this.updateAreAllCheckedState();
}
this.save();
}
onIsCompletedChanged() {
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
deleteTodo(todoItem) {
this.items = _(this.items).without(todoItem);
this.updateAreAllCheckedState();
this.updateFilteredItems(this.filter);
this.save();
}
onToggleAllChanged() {
this.items = _.map(this.items, item => {
item.isCompleted = this.areAllChecked;
return item;
});
this.updateFilteredItems(this.filter);
}
clearCompletedTodos() {
this.items = _(this.items).filter(i => !i.isCompleted);
this.areAllChecked = false;
this.updateFilteredItems(this.filter);
this.save();
}
get countTodosLeft() {
return _(this.items).filter(i => !i.isCompleted).length;
}
updateAreAllCheckedState() {
this.areAllChecked = _(this.items).all(i => i.isCompleted);
}
updateFilteredItems(filter) {
this.filter = filter || '!';
switch (filter) {
case 'active':
this.filteredItems = _(this.items).filter(i => !i.isCompleted);
break;
case 'completed':
this.filteredItems = _(this.items).filter(i => i.isCompleted);
break;
default:
this.filteredItems = this.items;
break;
}
}
load() {
const storageContent = this.storage.getItem(STORAGE_NAME);
if (storageContent == undefined) { return; }
const simpleItems = JSON.parse(storageContent);
this.items = _.map(simpleItems, item => {
const todoItem = new TodoItem(item.title);
todoItem.isCompleted = item.completed;
this.observeItem(todoItem);
return todoItem;
});
this.updateAreAllCheckedState();
}
save() {
const simpleItems = _.map(this.items, item => { return {
title: item.title,
completed: item.isCompleted
}});
this.storage.setItem(STORAGE_NAME, JSON.stringify(simpleItems));
}
}
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment