@davidsouther/jiffies 2.0.6 → 2.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/esm/fs.d.ts CHANGED
@@ -46,7 +46,11 @@ export declare class RecordFileSystemAdapter implements FileSystemAdapter {
46
46
  export declare class LocalStorageFileSystemAdapter extends RecordFileSystemAdapter {
47
47
  constructor();
48
48
  }
49
+ export declare type ObjectFileSystem = {
50
+ [k: string]: string | ObjectFileSystem;
51
+ };
49
52
  export declare class ObjectFileSystemAdapter extends RecordFileSystemAdapter {
53
+ constructor(object: ObjectFileSystem);
50
54
  }
51
55
  export interface Tree {
52
56
  [k: string]: string | Tree;
package/lib/esm/fs.js CHANGED
@@ -1,6 +1,8 @@
1
1
  export function basename(filename) {
2
- const end = filename.lastIndexOf("/");
3
- const basename = filename.substring(end === -1 ? 0 : end);
2
+ if (filename.endsWith("/")) {
3
+ filename = filename.substring(0, filename.length - 1);
4
+ }
5
+ const basename = filename.split("/").at(-1) ?? "";
4
6
  return basename;
5
7
  }
6
8
  function join(...paths) {
@@ -75,8 +77,8 @@ export class RecordFileSystemAdapter {
75
77
  }
76
78
  stat(path) {
77
79
  return new Promise((resolve, reject) => {
78
- if (this.fs[path] != null) {
79
- resolve({
80
+ if (this.fs[path]) {
81
+ return resolve({
80
82
  name: basename(path),
81
83
  isDirectory() {
82
84
  return false;
@@ -86,9 +88,22 @@ export class RecordFileSystemAdapter {
86
88
  },
87
89
  });
88
90
  }
89
- else {
90
- reject();
91
+ if (!path.endsWith("/"))
92
+ path += "/";
93
+ for (let filename of Object.keys(this.fs)) {
94
+ if (filename.startsWith(path)) {
95
+ return resolve({
96
+ name: basename(path),
97
+ isDirectory() {
98
+ return true;
99
+ },
100
+ isFile() {
101
+ return false;
102
+ },
103
+ });
104
+ }
91
105
  }
106
+ reject();
92
107
  });
93
108
  }
94
109
  async scandir(path) {
@@ -157,6 +172,23 @@ export class LocalStorageFileSystemAdapter extends RecordFileSystemAdapter {
157
172
  }
158
173
  }
159
174
  export class ObjectFileSystemAdapter extends RecordFileSystemAdapter {
175
+ constructor(object) {
176
+ super(reduceObjectFileSystem(object));
177
+ }
178
+ }
179
+ function reduceObjectFileSystem(object) {
180
+ let level = {};
181
+ for (let [k, v] of Object.entries(object)) {
182
+ if (typeof v == "string") {
183
+ level[`/${k}`] = v;
184
+ }
185
+ else {
186
+ for (let [k2, v2] of Object.entries(reduceObjectFileSystem(v))) {
187
+ level[`/${k}/${k2}`] = v2;
188
+ }
189
+ }
190
+ }
191
+ return level;
160
192
  }
161
193
  export async function reset(fs, tree) {
162
194
  for (const [path, file] of Object.entries(tree)) {
@@ -1,5 +1,6 @@
1
- import { FileSystem, RecordFileSystemAdapter } from "./fs.js";
2
- import { describe, it, expect } from "./scope/index.js";
1
+ import { FileSystem, ObjectFileSystemAdapter, RecordFileSystemAdapter, } from "./fs.js";
2
+ import { describe, it, expect, beforeEach } from "./scope/index.js";
3
+ import { cleanState } from "./scope/state.js";
3
4
  describe("FileSystem", () => {
4
5
  describe("Writing", () => {
5
6
  it("Writes files", async () => {
@@ -40,4 +41,40 @@ describe("FileSystem", () => {
40
41
  expect(dir.sort()).toEqual(["bonjour", "hello"]);
41
42
  });
42
43
  });
44
+ describe("stat", () => {
45
+ const state = cleanState(() => {
46
+ const fsObj = {
47
+ "/deep/hello": "world",
48
+ "/deep/bonjour": "monde",
49
+ "/other/file": "text",
50
+ };
51
+ return { fs: new FileSystem(new RecordFileSystemAdapter(fsObj)) };
52
+ }, beforeEach);
53
+ it("stats a directory", async () => {
54
+ const deep = await state.fs.stat("/deep");
55
+ expect(deep.isDirectory()).toBe(true);
56
+ expect(deep.isFile()).toBe(false);
57
+ });
58
+ it("stats a file", async () => {
59
+ const deep = await state.fs.stat("/deep/hello");
60
+ expect(deep.isDirectory()).toBe(false);
61
+ expect(deep.isFile()).toBe(true);
62
+ });
63
+ });
64
+ describe("ObjectFileSystem", () => {
65
+ it("treats object keys as directories and final values as strings", async () => {
66
+ let fs = new FileSystem(new ObjectFileSystemAdapter({
67
+ deep: {
68
+ hello: "world",
69
+ bonjour: "monde",
70
+ },
71
+ other_file: "text",
72
+ }));
73
+ const deep = await fs.stat("/deep");
74
+ expect(deep.isDirectory()).toBe(true);
75
+ expect(deep.isFile()).toBe(false);
76
+ const deep_bonjour = await fs.readFile("/deep/bonjour");
77
+ expect(deep_bonjour).toBe("monde");
78
+ });
79
+ });
43
80
  });
@@ -10,7 +10,7 @@ const tsmap = new Map();
10
10
  export async function transpile(
11
11
  /** @type string */ url,
12
12
  /** @type {() => Promise<{toString(): string}>} */ get) {
13
- if (!tsmap.has(url) || true) {
13
+ if (!tsmap.has(url)) {
14
14
  const source = ts.transpile((await get()).toString(), compilerOptions, url, undefined, url);
15
15
  tsmap.set(url, source);
16
16
  }
@@ -1 +1 @@
1
- {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../src/assert.ts","../../src/awaitable.ts","../../src/case.ts","../../src/result.ts","../../src/context.ts","../../src/display.ts","../../src/log.ts","../../src/scope/scope.ts","../../src/scope/state.ts","../../src/scope/describe.ts","../../src/equal.ts","../../src/scope/expect.ts","../../src/context.test.ts","../../src/debounce.ts","../../src/range.ts","../../src/diff.ts","../../src/diff.test.ts","../../src/scope/fix.ts","../../src/scope/index.ts","../../src/equal.test.ts","../../src/flags.ts","../../src/flags.test.ts","../../src/fs.ts","../../src/fs.test.ts","../../src/generator.ts","../../src/generator.test.ts","../../src/is_browser.js","../../node_modules/typescript/lib/typescript.d.ts","../../src/transpile.mjs","../../src/loader.mjs","../../src/lock.ts","../../src/lock.test.ts","../../src/result.test.ts","../../src/safe.ts","../../src/scope/execute.ts","../../src/dom/xml.ts","../../src/scope/display/junit.ts","../../src/scope/display/console.ts","../../src/observable/observable.ts","../../src/observable/observable.test.ts","../../src/dom/types/css.ts","../../src/dom/dom.ts","../../src/dom/fc.ts","../../src/dom/html.ts","../../src/components/virtual_scroll.ts","../../src/components/virtual_scroll.test.ts","../../src/components/test.js","../../src/dom/html.test.ts","../../src/dom/fc.test.ts","../../src/dom/observable.ts","../../src/dom/observable.test.ts","../../src/dom/test.ts","../../src/test_all.ts","../../src/test.mjs","../../src/components/button_bar.ts","../../src/dom/css/constants.ts","../../src/dom/css/sizing.ts","../../src/components/inline_edit.ts","../../src/components/logger.ts","../../src/components/select.ts","../../src/dom/provide.ts","../../src/dom/svg.ts","../../src/dom/css/core.ts","../../src/dom/css/border.ts","../../src/dom/css/fstyle.ts","../../src/dom/types/html.ts","../../src/dom/form/form.ts","../../src/dom/form/form.app.ts","../../src/dom/form/form.test.ts","../../src/dom/router/router.ts","../../src/dom/router/link.ts","../../src/dom/types/dom.ts","../../src/observable/event.ts","../../src/scope/display/dom.ts","../../src/server/http/response.ts","../../src/server/http/apps.ts","../../node_modules/source-map-js/source-map.d.ts","../../node_modules/sass/types/util/promise_or.d.ts","../../node_modules/sass/types/importer.d.ts","../../node_modules/sass/types/logger/source_location.d.ts","../../node_modules/sass/types/logger/source_span.d.ts","../../node_modules/sass/types/logger/index.d.ts","../../node_modules/immutable/dist/immutable.d.ts","../../node_modules/sass/types/value/boolean.d.ts","../../node_modules/sass/types/value/color.d.ts","../../node_modules/sass/types/value/function.d.ts","../../node_modules/sass/types/value/list.d.ts","../../node_modules/sass/types/value/map.d.ts","../../node_modules/sass/types/value/number.d.ts","../../node_modules/sass/types/value/string.d.ts","../../node_modules/sass/types/value/argument_list.d.ts","../../node_modules/sass/types/value/index.d.ts","../../node_modules/sass/types/options.d.ts","../../node_modules/sass/types/compile.d.ts","../../node_modules/sass/types/exception.d.ts","../../node_modules/sass/types/legacy/exception.d.ts","../../node_modules/sass/types/legacy/plugin_this.d.ts","../../node_modules/sass/types/legacy/function.d.ts","../../node_modules/sass/types/legacy/importer.d.ts","../../node_modules/sass/types/legacy/options.d.ts","../../node_modules/sass/types/legacy/render.d.ts","../../node_modules/sass/types/index.d.ts","../../src/server/http/css.ts","../../src/server/http/sitemap.ts","../../src/server/http/static.ts","../../src/server/http/typescript.ts","../../src/server/http/index.ts","../../src/server/main.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"f5c28122bee592cfaf5c72ed7bcc47f453b79778ffa6e301f45d21a0970719d4","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f",{"version":"3f149f903dd20dfeb7c80e228b659f0e436532de772469980dbd00702cc05cc1","affectsGlobalScope":true},{"version":"1272277fe7daa738e555eb6cc45ded42cc2d0f76c07294142283145d49e96186","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"cd483c056da900716879771893a3c9772b66c3c88f8943b4205aec738a94b1d0","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"ff667ee99e5a28c3dc5063a3cfd4d3436699e3fb035d4451037da7f567da542a","affectsGlobalScope":true},{"version":"c37f8a49593a0030eecb51bbfa270e709bec9d79a6cc3bb851ef348d4e6b26f8","affectsGlobalScope":true},{"version":"1ba6c4fa60fd0afea04cfda227fa2a8b7450b2fda17c6679d3ee242edc41f7dc","signature":"589c5b3766e583667e21e0ffc13bb0db9ed710bd36519a7290fc302636f67941"},{"version":"8175d68354a805ca6dd8564a10ff937a48a8dcd18fca2d8fd74eb27b55e9be00","signature":"441dd5f9d6d0a835bbed7e66a19e53c1337100a3289849a0825f793439512a64"},{"version":"1b34da3536d5f1b18ee6c36173839c58c222dd2313542efda615081eeb9aa9f2","signature":"1166696f6d7c6b6bf21d81a0920c6caca6377948505f77a806903aba41586f00"},{"version":"9c4d49c04c3d7a721a080286deaceaf96616ae64902695363b55867bec02e968","signature":"505b88776835f17e73e7da62b0d6a867f2b4ba7baca3a514066f12d6f4f744e2"},{"version":"8514466eeb0e7057ffa367dfa5bd536ffc81b66ff67489301f0616e8f80f980b","signature":"de051108b55ad0a0e3f05ccaa5496fe11c122bf5e72d7c5787f4e64c855c81dd"},{"version":"f92660f80d3a9ad4305fec6f31e1cca8a38d504ddc1ccec874e7a277ad1781cf","signature":"ea775be91ef3b53d2dada4a4793fbe9e8e2e41b4f95fa51489170391968dff10"},{"version":"6468fb9f02695963744e2c820144724bb9576f506546e24bd5d8786a80459aa2","signature":"258c0db5d37ac645d6fba7ea00a7ef2c8ef5b21f3f0430a0b1fae7dbc2850223"},{"version":"6bb2e82cb7a4a7a32a94b68fd9988bcfed696919b2841bc2c16bf8b194bb7773","signature":"e2ce41b8c01c1a2512e7775fefc3cde2856a48172cbc0b209f9ca60c82af283d"},{"version":"74333ba24b75e101738f3fb81a67e2daac9caa586c556b59eb65f51c3f28483d","signature":"cc0266900cf7d25e13534412033765754d70d271a740c1c498f806ce622b3567"},{"version":"e7d5ed1f30fe8e2f032fa92c92d481119490004dd1bd07aef9840154896e0168","signature":"180258684df4f6ca3054178c249780dae479898c9f0791f42364f09d469d33d7"},{"version":"491e3badd34a7a3e16cb1d4ae1daffd6dd99da8b423184b8c19afed9242d3934","signature":"d8b0767d3d5bedb49c6e13d48f0948d3832a32ef35dcc60f87695d575e296114"},{"version":"de921abfd2ef6124b88813649d7206845b0a77b0d8c00a9da3478521d46ef358","signature":"aa549426ce931964f4d21431f8b6fc04f19688f0c7c838ea123d06346e1ba9ba"},{"version":"28c12211f455ea9f3dd5f60e8dfd6da63bc24f41e336c20ffd2f22529f926dfd","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ae6ef09de7ea505bdc97b7ae84cd9bee9a2d39f59520af47b8b424f95589ca98","signature":"f80cd5d590dc0496816c38d7480c7b2e26aa93bb17123e8881044305e25a0c68"},{"version":"d0d9d65cb2b34879b7938e8f51a95c1e9745c8d3a86e64d4bc68566e8848fde4","signature":"c80cd6d23f15ec4e955cb5309270dc901046b294104271e090f96f36bf3be78f"},{"version":"52e61566e634e0941d7f52e758b2363436076167e6bf4c108fe8e18b922d18a9","signature":"9d542ad7bf8222c8f14fa1c72db5b9303f5bcf2cf2b09f9c61099fa8b3ded0f2"},{"version":"0957698064d895aae84243b0ee292e22fcd49fc2f083282f4815c22f2cafc9b5","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"16437b735c18ac348ba8cefd01bda8a74b397e6c6953c491ac638a12b5e5cc18","signature":"8b9aa05a77480ba8bc25b6640192e90709fa30673015ea714f956f1e2ee5b49e"},{"version":"8958247d7b38155c9947b1c07b3cd0d7274987a3d123ee4fa537f80dd0a391d2","signature":"32e16decf7d6a3422c2f7053128626578855b0d1b54eec688ec3ab16635f5b02"},{"version":"d7e1383fe8735d886319ebab932fe5738e72c2cb521beacf71afdfb2593d7004","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ec9bac6c72dfd0989b6a9a4e14f0be3b36c1c0bc44dc0f130ec1b4dd5c51c15a","signature":"3930b9c9625da059dab8ddd77352479f2c1aa7df0d52fb0c5f4e95c8ae22ea27"},{"version":"e4b9434b2d6edc65ba8a56393933f6879dd4be5d12f8fa87e9b83b42965acc62","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"825642977ab7c0351f2be346e2ac424a477395e360ce864c80814575d0ce39ab","signature":"fdf2aab7a090eab7c0e7547c6bd0a6ed7f2c9642bcd0f8cabec721583e0a7c41"},{"version":"c5c2a9c327bf733514f504c53009fcd544f059ad6f8ad256ad4aa1ff2d5fb578","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"c209474c7cc99347fad08f2c3d4ed7aad779f97342d74fe108b9eddaa1b8ce1b","signature":"8c11ef055b90b792d0c680315579747d807bf4c39cf1ca04fb1e4b93d7f7f115"},{"version":"8524790efd636d2a902df2cb3e0047101bb7c2b97e68d0892a55cc90e164491e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"3e24760644b4784e31fb7bfd0cdcb6da3b09b7c5202432bf5f12c0d6d87c1995","signature":"793161d66ff5b290131fa48ffda0df883d15675173c076bc326cfd8f5cc82abb"},"3fa86a2c33804b6a4221dda3714a6a2f8a2f26983ea6c63d2bf6f2839fbb778a",{"version":"cd12a91abb2b12378e9e5db60fa28be775c3ff62dceb213398557d427f1a0578","signature":"177af28a70bbab93e5eb1d6a4b79bd5fdc122824f8ec130273a17e2ab1f886dd"},{"version":"7e1b65240bd4316b865d992dbe47966776d9030c2489134b7277296257e128b2","signature":"fd5deb4172f846eacc20b582c5931fdac7c34ed63a73b32653502aa9c22b2b04"},{"version":"47ae3207be189793b8535d67dc2c78a4205de469cd3b464bedbdd99f50980219","signature":"aba12d71f75d06d95a3539f9d931e8b2d325a39de69ecdc7d1e11f3a1aee7139"},{"version":"acd9b2c3933f2946c4f26c7d5490e7b86a72403029dea26048e8960d6cfee1aa","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"6d7fb2a56cc88e889b7ed197da940b7755db933904dd71d0b70e596c12747e3b","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ca9c48f8a01f0f6f4b63a3e5dfccacaa8523630858ee4d6713be37a857c65be1","signature":"42375e50af05b605093f43fb0c3312a63d7cad454e6854dd0710d0454e1ef7c5"},{"version":"33a16e7f426e94b4ce958b2c50dc3dead9951ffb58d8fb4c7280080af6943700","signature":"2530ed3dbe0b6d0714592caade7e0f2278daf246f7aacf8fd238a3d1e488312a"},{"version":"70e0a6a1e72bc8184098036a9b5ba9a26e9a2dee8b7968131b2a09559bbe09a2","signature":"35ddb3737f44d680172ab064727225df06457b52a2fd7df487bf5e9f12e8b77e"},{"version":"202c39c40b1fcdf051e053705e47d502b40e2cabbd3727b26fd5281c6e099ccf","signature":"e6261f19b752025780f04ed78dc0411ec209c70baadf13d08c6ac76782964691"},{"version":"90c8220678df12d9e2fd201ab2035e08dae401268235370021df19d0b2732034","signature":"45962198f77860cdd300955e380df19d8b1603ad526c1d3e482c3cb99e1fa06d"},{"version":"9742acae4d1eb74eb98ac0157c3994dbaa2e88ee08879c0f85bef28cbb53e0f7","signature":"020da53a208595af7b244a1e20ab4eeb67b22c946753eaa2608271308514cefc"},{"version":"494046175ae5ac718e215b39a0aad86296d2ba2ddb6d1a2a4b774f3ce46b80a4","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"0d4d446d30e467b2c3d57509e36c7ccb03b4ee8dcd2019751a138b1435cbecde","signature":"6c92cc8423caeaddc2eeec841fd03af2661b4c6c1293c627645fe821ba233b8a"},{"version":"69adbdebb36548297427601c09b299be7bdd2868a84219ebdcb172085854fab2","signature":"0f87b1e39ea9661a28533fad656cd80d018908e690f18656b0bd75e3a0447be1","affectsGlobalScope":true},{"version":"e3528715560eaeac87c04b0db4c7c8dd1bfeaabb153e74079023651bfc56f0de","signature":"c745d58cc9b135bed9b311c50e757bf35aaac951811d6ec26c3fdd1923b323bf"},{"version":"2898e87b58eae9d42d9bc2bad25296071e2c231f8162318ae6961e5bc8cc722b","signature":"a2f5cba46c5a8dd418a69113e9f61798a74d0e89f0d620699e1513aeb3f20e8e"},{"version":"758a603bb0643db69cae819ec5d7c549b4f0d40ae251c815af5378762b1566ce","signature":"bda35a017d629eed87e37be3a5468b157099f29b89a1f218c15863d677b3f8bd"},{"version":"c2f5751a1c3f54322466056ff555d679bb4f8d5e78dbd115b729c89573bcf54e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"8790fae5d91bde9f551abbb4aea81b62da25da54e57199b5484cd89dc89e28f1","signature":"cb5f155ad59f35b0caa72671294a23fc8c9ca611136e88b4fb84ef420fe721dd"},{"version":"b163cc861aeec6968f62575f58fe381b68c93ac7aae7da451adc4e5f286f09bc","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"73a35ad57a082d8d74d5825940a39d13617f55b8a1646ef1036662afcd9585bd","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7face0351ab687e8f5d2a7e5e1dc850b656dc7d842e20d8847661008f0c8adc0","signature":"0f41b5c1114a15b29bc3463dbcd9921ae3101e366b6999ba12080b5afb6ba112"},{"version":"d28a8bb0b4b8d1447db96fa23c41827dcbbb0e6506f8a6c46ccc57c0b1e68ea0","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7e17d056bf272d860177cb48c33b3400210e6b37eec917ad7b0ddb06a86e361b","signature":"590a129a3f65470f0354bd61386381815be495a46b75e52a146843bf1377294b"},{"version":"fbd23a364b952568b7bca7f21945318d43dde4f8849afe935f537526c17d6c74","signature":"78393617acb4048cb84d8ed145117125dea60697cd4760f99883fd5bb0cd6980"},{"version":"4ed2bf64a330edc5bf74b0b296ddb242865d5f7a4803fd01dd21b09a320f23a9","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"69e4f012b8f8d03af6b147fb70ae2824146b48c8613b03d2f12c0ec8adb2382a","signature":"631a056ab66c51e60da308a0337da019945351efcd8fabffc054a88acaa001d5"},{"version":"a412c2527733835920aefb27b3b89a406845fca19e9b28dc69265036f4b9c796","signature":"def28f8e511dda7e64a45f6b5b0d1092371761b5f60f6333436e1293fc1e881b"},{"version":"8c7e16dbd99d459421e9401f54b8a88f1a985a0a9a96623c5cafbb9afe45018d","signature":"7c090e3285f3e7c2256c44922b2c4027dfc7d11dc7563ceb2f88636fb09baf24"},{"version":"97c8d3440d4be35223ce0a22c1aeba0b4f7ac71e003865bf946d427943d7aa0d","signature":"532b907b88a8e555b18b60c20eeb85d6f45be3eb26fdf67145888d4b4b5d57a7"},{"version":"619f5d80aaebebb975075fa2749ad32b1384d0b80706e89aa5164a8587d06f21","signature":"88fbdb356b5b0e50812545742667fad93ee25de676303c2eabf337ee46af3e6d"},{"version":"3e7ac572714a1117853afa5155664335d7c251e956236a4ffd5cf4f87084f6ec","signature":"b8a95e6e4bc8f02d369cec44d6e1154206289398ba770fc9e9f8949db1aa4609"},{"version":"70267d896102a79e2257ea41c22507a9522f60543817538bf920630336f8fa0d","signature":"28358ed0261bc0a4e9521c142511e68336f5aeed0e7ee1e425fdbc7b273189a0"},{"version":"e72501b40a90580fd308936952c380b50a4dc4eed3b7b818ec2321ed03746f77","signature":"e4dc4850af7ff13af0af60fbb7b3334e58c7d3d96591d2639032effefc77030c"},{"version":"ae6bcfb947898795d160064fc2a78c778b8dc7ec65712835cc061abd47fdf6f4","signature":"8eaec2016beea89cf2b266fb463098cf3526be2c1f1b991f71c13154bd1b828c"},{"version":"fdcf50e480b5b953bebf9e16d7d0039a449fec28405fb9be0ae1a909ba16f779","signature":"d8553cae2058251d0ce2db8be649541a950dc1e898ed794ee8aad8f2541528eb"},{"version":"25e0599d953fdb1cb20c002e746370e60d95894978e64696da34a38a4ba097ae","signature":"c1f56f03b1b3f216457c1b7582fb57b3860588542f7bb977b2fd6152a974e268"},{"version":"c853c8cbf3a4bcfb30e433a22fad68b5e387ab83a10c7040c080f177919ec8d8","signature":"b0217dd17d4ad00a790eb964c47d5124fd26c7372c0cdd001d0850abfcd93cda"},{"version":"d1dddb118cc1c29d2c6d351bf2355bd7ad4cad3e324cd503b1e7168fbd548eec","signature":"a0959378999bf19abc1945c833a7d5bd96c7cb9905083cf39b07d6a6cf49570b"},{"version":"62e4d44a2e724035afebcb589aabcb20ce85c07c29943a3158860a33093f653b","signature":"7ddc765edfa0420999a079eb7df3fe76add77a26267764e0da1e8d72517ef2ea"},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"96b06ca7b578ecd64d5b63122f2ee611a2fafa3f9047136fa392f5c7c3e65d52","signature":"9efaa83a84e799ba19ac56ee9dbbeab3fa12adda8e7c30d059ae2b0f12c49847"},{"version":"86b2a9b32acb87ef9ca1f23bc5261f0173ca8eb5f5bcfcb6c6b001cd2a1827b5","signature":"3ccda02e5750bdce0447dbf7e597a2eb16258dfa6c9c0c19572fd117f303dabb"},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"3016b2e9984764972a6619a5128be0625042b78b823ba2dd5d1091edca421b57","signature":"371342d33f6f23a62c279c5a4d076f79434aed54f2f4e2f440e5a3a0c8790f0d"},{"version":"0632e8da59390a94566bc900ce77d77b6bb20be308a5f588139204b6785ae952","signature":"9dcb038957c10811c0d929a7110869e5d614373ae2f279c8e8c096be05d633d7"},{"version":"465d161bd8eb7ececeee348884534d628183092b4a335cc4d98e64432a5a26a5","signature":"67df1d03572c8959610f449360cf483a1819ebd19ff9f0e1860547b0cea9cfa5"},{"version":"f95823d266c086a4c95b71e1c27c95f3a0b2f129ac57c0e2e16b40fb5aca1622","signature":"9fde7fd556c93ebcbcf6a9504d013b6b3b79f7092050330038ac76e1561cfc64"},"858d0d831826c6eb563df02f7db71c90e26deadd0938652096bea3cc14899700","56fe6258367f7149fa8390ef124ee8ff2d1321c2f7287cc246991f236d05e069","2d62ec9b88194c22bb7c756e4186e855c0e3f0d62d7119390097fbd1313ff040","f1bfc416bf16397e950f3568d32b6f41e2c11eb5fceef4d375ab6d85795f9ae0","53f9ab32b77d9ae3cbb26bcc9f2098dc7d059c5cf55cc1047cd5aed85eeb010a","c751510248b6696c0acc644a35e7920d1ddba422766b29ae06d6c4adb16b9a32","40ff1e61b764e770d1e7b41609f105d996e2619e599601f00069ba0868fefc48","daf07c1ca8ccfb21ad958833546a4f414c418fe096dcebdbb90b02e12aa5c3a2","979673a2ba867c8f67d6bf6457343c3c9b26a2f3692a1a9d205e8d217d9d782d","2286e4c0840532d3ade74356c68ef7824b1192e2d2f2c1f9f2df7dac94e20d3a","9cfab7e97a2bc089b72bd912ffbef4271012bd412373163201211d3680f683b0","ac15dd3d9cbc5af8b4ca20a0cc85d39e24e0c68944712cb4635d457bb0390353","5a84495aabf1dd8a7bfe157402232cfb73f29f77da77bd48147412555b73429f","8bc8fbcbeec0131a4ff57236a795313e2f6c04b4c26f1ad48299e63a04c50a5b","d74acd0e16013b89368fd9727d670a5fa1a44e05d370a8b5eed9e6f9bd28a525","b19b7e6c0cbb198202c844d0fb069082cfd6e5cca1052f8c16d484e8d5ef5b17","64f4a0cf53879823412a7b756152864860a78182dd2208eb5a2e00a9202855c2","2b3486a5f525cfc32bcc497fdb8e627c2cfdd0382496f6ba4afc70b2d5cf8df8","5f8364bf3ede554dc58e41e3c8e6a97749635f7defaa6b9dc29cc6e438a3aa69","19c712ab69b153e2301012b6806cf2393ed7ac25916a7495656b026cfc58160c","cfe08c0b0e348c0f7ec7298d8f2f51bdbbadc4329c33f610a57aefe151e0a0ed","4b40245f6046fbb67823d00b7e551aa11aacba81703aaa84e89ba0d313f4a473","7e4f03d43ec0fd291e8c06a6ebe7d3c15dfde005b13b80476429daaa0d9ce97e","0911980961c53a149c9cdc41180d959ff3ca96fb5a5065ab156e276c8d2b9a3a","6ecd23e20271268152d1d0ff5cd92cd57752dd9dfaa57f7e0d6a8c291779a486","2b6dcbecfebd1dfb2d03d399243bde13dd84c3d5ecb049c644bd32261c930f43",{"version":"cc77e9a9c86b5f45920c4169ac6c8ade3d16d8706d071dfc58c6123eb30b9138","signature":"5a75278287de16563c22212f22a1c2603756360a7f1fa882230a4dd0d9f86c0f"},{"version":"b1638e3ec82dd0095d5c20e03f77fe157c5fdf8a808891b1e364d809b62e7d83","signature":"539f24d2c573e040ef38ce1189f70d4cddd9526118df97ef61534bad0a8ec606"},{"version":"e58272637845dbe29f3c0ce14b03fecb5b368923048424be73307753b87e179d","signature":"9e06b2c2a4d3e3cfe10198eb56e9fa92b03824b3a81d31092ed2ee9ee6341af9"},{"version":"811caf472d887638124c8840c7d82ae91f7c9f9e587d1a2d1fe4360362f5c092","signature":"9d6f7ad87be5f168f0270bf57a5e9c0ac072da4fd3104a837287dcd50b1b653b"},{"version":"36e0a2003f96724959c8bfa6b804a89dfaf30c3da02b6ddfef2b45afd0554f57","signature":"ac969abdc0f20326c8481676cd712c0999ed138dd50b212197453de6f9be11a9"},{"version":"8b5db11562043eaf1d19dd53ecbbdd12510edcc7e7a6be97ec426566d637c67c","signature":"279c311489072f94d1567e9c9148e70c0c9b10c6829d3653d48801b3477b1b57"},"0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af",{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","5b30f550565fd0a7524282c81c27fe8534099e2cd26170ca80852308f07ae68d","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","d97cd8a4a42f557fc62271369ed0461c8e50d47b7f9c8ad0b5462f53306f6060","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true},"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"af9771b066ec35ffa1c7db391b018d2469d55e51b98ae95e62b6cbef1b0169ca","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7",{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true},"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8"],"options":{"allowUnreachableCode":false,"allowUnusedLabels":false,"declaration":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"outDir":"./","strict":true,"target":99},"fileIdsList":[[156,199],[159,199],[160,165,199],[161,171,172,179,188,198,199],[161,162,171,179,199],[163,199],[164,165,172,180,199],[165,188,195,199],[166,168,171,179,199],[167,199],[168,169,199],[170,171,199],[171,199],[171,172,173,188,198,199],[171,172,173,188,199],[199,203],[199],[174,179,188,198,199],[171,172,174,175,179,188,195,198,199],[174,176,188,195,198,199],[156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205],[171,177,199],[178,198,199],[168,171,179,188,199],[180,199],[181,199],[159,182,199],[183,197,199,203],[184,199],[185,199],[171,186,199],[186,187,199,201],[171,188,189,190,199],[188,190,199],[188,189,199],[191,199],[192,199],[171,193,194,199],[193,194,199],[165,179,188,195,199],[196,199],[179,197,199],[160,174,185,198,199],[165,199],[188,199,200],[199,201],[199,202],[160,165,171,173,182,188,198,199,201,203],[188,199,204],[124,140,199],[129,199],[125,140,199],[125,126,129,139,140,141,142,143,144,145,146,147,148,199],[144,199],[129,145,146,199],[143,147,199],[127,128,199],[127,199],[125,126,129,139,199],[130,134,139,199],[139,199],[130,131,132,133,134,135,136,137,138,199],[130,139,199],[124,199],[53,90,91,199],[90,91,104,199],[53,54,91,199],[89,90,91,199],[93,199],[66,90,91,92,199],[61,90,91,199],[51,52,57,59,199],[51,199],[57,59,63,199],[51,62,199],[88,103,110,199],[103,199],[50,88,199],[88,199],[66,90,91,199],[89,199],[91,114,199],[89,91,113,199],[57,59,91,199],[57,59,86,89,91,97,199],[86,199],[91,117,199],[89,118,199],[95,96,98,199],[58,66,199],[66,68,199],[66,70,199],[66,72,199],[76,173,183,198,199],[66,78,199],[53,199],[53,86,199],[66,86,199],[54,199],[51,57,59,199],[48,54,55,56,199],[54,55,57,82,199],[54,55,57,82,89,106,199],[55,82,83,199],[55,57,199],[48,53,58,199],[57,59,65,199],[49,199],[122,154,173,181,199],[122,149,154,173,181,199],[54,122,123,150,151,152,153,174,179,181,199],[154,172,173,199],[54,122,154,173,181,199],[76,122,154,173,181,199],[54,68,154,181,199],[68,82,84,85,100,199],[60,64,66,67,69,71,73,79,80,87,94,99,199],[75,199],[90],[54],[89,90],[51],[88,103],[103],[88],[89],[89,91,113],[86],[89,118],[53],[55],[55,89],[57,59,65],[49],[154],[174],[154,172],[60,64,67,69,71,73,79,80,87]],"referencedMap":[[156,1],[157,1],[159,2],[160,3],[161,4],[162,5],[163,6],[164,7],[165,8],[166,9],[167,10],[168,11],[169,11],[170,12],[171,13],[172,14],[173,15],[158,16],[205,17],[174,18],[175,19],[176,20],[206,21],[177,22],[178,23],[179,24],[180,25],[181,26],[182,27],[183,28],[184,29],[185,30],[186,31],[187,32],[188,33],[190,34],[189,35],[191,36],[192,37],[193,38],[194,39],[195,40],[196,41],[197,42],[198,43],[199,44],[200,45],[201,46],[202,47],[203,48],[204,49],[130,17],[141,50],[142,51],[126,52],[149,53],[143,17],[145,54],[146,54],[147,55],[144,17],[148,56],[129,57],[127,17],[128,58],[140,59],[125,17],[138,60],[131,61],[132,61],[133,61],[139,62],[134,63],[135,60],[136,63],[137,61],[124,64],[9,17],[10,17],[12,17],[11,17],[2,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[3,17],[4,17],[24,17],[21,17],[22,17],[23,17],[25,17],[26,17],[27,17],[5,17],[28,17],[29,17],[30,17],[31,17],[6,17],[32,17],[33,17],[34,17],[35,17],[7,17],[36,17],[41,17],[42,17],[37,17],[38,17],[39,17],[40,17],[8,17],[46,17],[43,17],[44,17],[45,17],[1,17],[47,17],[75,17],[48,17],[49,17],[50,17],[102,65],[105,66],[106,67],[107,68],[94,69],[93,70],[92,71],[60,72],[52,73],[61,17],[64,74],[63,75],[53,17],[111,76],[103,17],[110,77],[112,78],[104,77],[89,79],[96,80],[90,81],[115,82],[116,17],[114,83],[95,84],[91,81],[98,85],[97,86],[108,73],[118,87],[117,88],[109,81],[99,89],[88,17],[119,17],[113,79],[83,17],[67,90],[58,17],[69,91],[68,17],[71,92],[70,17],[73,93],[72,17],[74,17],[77,94],[79,95],[78,17],[54,96],[120,97],[87,98],[86,99],[62,17],[80,100],[51,17],[81,99],[57,101],[85,102],[121,103],[84,104],[82,105],[59,106],[65,17],[66,107],[55,17],[56,108],[123,109],[150,110],[154,111],[122,112],[151,113],[152,109],[153,114],[155,115],[101,116],[100,117],[76,118]],"exportedModulesMap":[[156,1],[157,1],[159,2],[160,3],[161,4],[162,5],[163,6],[164,7],[165,8],[166,9],[167,10],[168,11],[169,11],[170,12],[171,13],[172,14],[173,15],[158,16],[205,17],[174,18],[175,19],[176,20],[206,21],[177,22],[178,23],[179,24],[180,25],[181,26],[182,27],[183,28],[184,29],[185,30],[186,31],[187,32],[188,33],[190,34],[189,35],[191,36],[192,37],[193,38],[194,39],[195,40],[196,41],[197,42],[198,43],[199,44],[200,45],[201,46],[202,47],[203,48],[204,49],[130,17],[141,50],[142,51],[126,52],[149,53],[143,17],[145,54],[146,54],[147,55],[144,17],[148,56],[129,57],[127,17],[128,58],[140,59],[125,17],[138,60],[131,61],[132,61],[133,61],[139,62],[134,63],[135,60],[136,63],[137,61],[124,64],[9,17],[10,17],[12,17],[11,17],[2,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[3,17],[4,17],[24,17],[21,17],[22,17],[23,17],[25,17],[26,17],[27,17],[5,17],[28,17],[29,17],[30,17],[31,17],[6,17],[32,17],[33,17],[34,17],[35,17],[7,17],[36,17],[41,17],[42,17],[37,17],[38,17],[39,17],[40,17],[8,17],[46,17],[43,17],[44,17],[45,17],[1,17],[47,17],[75,17],[102,119],[105,119],[106,120],[107,121],[92,119],[52,122],[111,123],[110,124],[112,125],[104,124],[89,125],[90,126],[116,17],[114,127],[91,126],[97,128],[108,122],[117,129],[109,126],[119,17],[113,125],[54,130],[120,128],[86,120],[57,131],[85,131],[121,132],[84,131],[82,131],[66,133],[56,134],[123,135],[150,135],[154,136],[122,137],[151,135],[152,135],[153,135],[100,138]],"semanticDiagnosticsPerFile":[156,157,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,158,205,174,175,176,206,177,178,179,180,181,182,183,184,185,186,187,188,190,189,191,192,193,194,195,196,197,198,199,200,201,202,203,204,130,141,142,126,149,143,145,146,147,144,148,129,127,128,140,125,138,131,132,133,139,134,135,136,137,124,9,10,12,11,2,13,14,15,16,17,18,19,20,3,4,24,21,22,23,25,26,27,5,28,29,30,31,6,32,33,34,35,7,36,41,42,37,38,39,40,8,46,43,44,45,1,47,75,48,49,50,102,105,106,107,94,93,92,60,52,61,64,63,53,111,103,110,112,104,89,96,90,115,116,114,95,91,98,97,108,118,117,109,99,88,119,113,83,67,58,69,68,71,70,73,72,74,77,79,78,54,120,87,86,62,80,51,81,57,85,121,84,82,59,65,66,55,56,123,150,154,122,151,152,153,155,101,100,76]},"version":"4.7.3"}
1
+ {"program":{"fileNames":["../../node_modules/typescript/lib/lib.es5.d.ts","../../node_modules/typescript/lib/lib.es2015.d.ts","../../node_modules/typescript/lib/lib.es2016.d.ts","../../node_modules/typescript/lib/lib.es2017.d.ts","../../node_modules/typescript/lib/lib.es2018.d.ts","../../node_modules/typescript/lib/lib.es2019.d.ts","../../node_modules/typescript/lib/lib.es2020.d.ts","../../node_modules/typescript/lib/lib.es2021.d.ts","../../node_modules/typescript/lib/lib.dom.d.ts","../../node_modules/typescript/lib/lib.dom.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.core.d.ts","../../node_modules/typescript/lib/lib.es2015.collection.d.ts","../../node_modules/typescript/lib/lib.es2015.generator.d.ts","../../node_modules/typescript/lib/lib.es2015.iterable.d.ts","../../node_modules/typescript/lib/lib.es2015.promise.d.ts","../../node_modules/typescript/lib/lib.es2015.proxy.d.ts","../../node_modules/typescript/lib/lib.es2015.reflect.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.d.ts","../../node_modules/typescript/lib/lib.es2015.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2016.array.include.d.ts","../../node_modules/typescript/lib/lib.es2017.object.d.ts","../../node_modules/typescript/lib/lib.es2017.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2017.string.d.ts","../../node_modules/typescript/lib/lib.es2017.intl.d.ts","../../node_modules/typescript/lib/lib.es2017.typedarrays.d.ts","../../node_modules/typescript/lib/lib.es2018.asyncgenerator.d.ts","../../node_modules/typescript/lib/lib.es2018.asynciterable.d.ts","../../node_modules/typescript/lib/lib.es2018.intl.d.ts","../../node_modules/typescript/lib/lib.es2018.promise.d.ts","../../node_modules/typescript/lib/lib.es2018.regexp.d.ts","../../node_modules/typescript/lib/lib.es2019.array.d.ts","../../node_modules/typescript/lib/lib.es2019.object.d.ts","../../node_modules/typescript/lib/lib.es2019.string.d.ts","../../node_modules/typescript/lib/lib.es2019.symbol.d.ts","../../node_modules/typescript/lib/lib.es2020.bigint.d.ts","../../node_modules/typescript/lib/lib.es2020.date.d.ts","../../node_modules/typescript/lib/lib.es2020.promise.d.ts","../../node_modules/typescript/lib/lib.es2020.sharedmemory.d.ts","../../node_modules/typescript/lib/lib.es2020.string.d.ts","../../node_modules/typescript/lib/lib.es2020.symbol.wellknown.d.ts","../../node_modules/typescript/lib/lib.es2020.intl.d.ts","../../node_modules/typescript/lib/lib.es2020.number.d.ts","../../node_modules/typescript/lib/lib.es2021.promise.d.ts","../../node_modules/typescript/lib/lib.es2021.string.d.ts","../../node_modules/typescript/lib/lib.es2021.weakref.d.ts","../../node_modules/typescript/lib/lib.es2021.intl.d.ts","../../node_modules/typescript/lib/lib.esnext.intl.d.ts","../../src/assert.ts","../../src/awaitable.ts","../../src/case.ts","../../src/result.ts","../../src/context.ts","../../src/display.ts","../../src/log.ts","../../src/scope/scope.ts","../../src/scope/state.ts","../../src/scope/describe.ts","../../src/equal.ts","../../src/scope/expect.ts","../../src/context.test.ts","../../src/debounce.ts","../../src/range.ts","../../src/diff.ts","../../src/diff.test.ts","../../src/scope/fix.ts","../../src/scope/index.ts","../../src/equal.test.ts","../../src/flags.ts","../../src/flags.test.ts","../../src/fs.ts","../../src/fs.test.ts","../../src/generator.ts","../../src/generator.test.ts","../../src/is_browser.js","../../node_modules/typescript/lib/typescript.d.ts","../../src/transpile.mjs","../../src/loader.mjs","../../src/lock.ts","../../src/lock.test.ts","../../src/result.test.ts","../../src/safe.ts","../../src/scope/execute.ts","../../src/dom/xml.ts","../../src/scope/display/junit.ts","../../src/scope/display/console.ts","../../src/observable/observable.ts","../../src/observable/observable.test.ts","../../src/dom/types/css.ts","../../src/dom/dom.ts","../../src/dom/fc.ts","../../src/dom/html.ts","../../src/components/virtual_scroll.ts","../../src/components/virtual_scroll.test.ts","../../src/components/test.js","../../src/dom/html.test.ts","../../src/dom/fc.test.ts","../../src/dom/observable.ts","../../src/dom/observable.test.ts","../../src/dom/test.ts","../../src/test_all.ts","../../src/test.mjs","../../src/components/button_bar.ts","../../src/dom/css/constants.ts","../../src/dom/css/sizing.ts","../../src/components/inline_edit.ts","../../src/components/logger.ts","../../src/components/select.ts","../../src/dom/provide.ts","../../src/dom/svg.ts","../../src/dom/css/core.ts","../../src/dom/css/border.ts","../../src/dom/css/fstyle.ts","../../src/dom/types/html.ts","../../src/dom/form/form.ts","../../src/dom/form/form.app.ts","../../src/dom/form/form.test.ts","../../src/dom/router/router.ts","../../src/dom/router/link.ts","../../src/dom/types/dom.ts","../../src/observable/event.ts","../../src/scope/display/dom.ts","../../src/server/http/response.ts","../../src/server/http/apps.ts","../../node_modules/source-map-js/source-map.d.ts","../../node_modules/sass/types/util/promise_or.d.ts","../../node_modules/sass/types/importer.d.ts","../../node_modules/sass/types/logger/source_location.d.ts","../../node_modules/sass/types/logger/source_span.d.ts","../../node_modules/sass/types/logger/index.d.ts","../../node_modules/immutable/dist/immutable.d.ts","../../node_modules/sass/types/value/boolean.d.ts","../../node_modules/sass/types/value/color.d.ts","../../node_modules/sass/types/value/function.d.ts","../../node_modules/sass/types/value/list.d.ts","../../node_modules/sass/types/value/map.d.ts","../../node_modules/sass/types/value/number.d.ts","../../node_modules/sass/types/value/string.d.ts","../../node_modules/sass/types/value/argument_list.d.ts","../../node_modules/sass/types/value/index.d.ts","../../node_modules/sass/types/options.d.ts","../../node_modules/sass/types/compile.d.ts","../../node_modules/sass/types/exception.d.ts","../../node_modules/sass/types/legacy/exception.d.ts","../../node_modules/sass/types/legacy/plugin_this.d.ts","../../node_modules/sass/types/legacy/function.d.ts","../../node_modules/sass/types/legacy/importer.d.ts","../../node_modules/sass/types/legacy/options.d.ts","../../node_modules/sass/types/legacy/render.d.ts","../../node_modules/sass/types/index.d.ts","../../src/server/http/css.ts","../../src/server/http/sitemap.ts","../../src/server/http/static.ts","../../src/server/http/typescript.ts","../../src/server/http/index.ts","../../src/server/main.ts","../../node_modules/@types/node/assert.d.ts","../../node_modules/@types/node/assert/strict.d.ts","../../node_modules/@types/node/globals.d.ts","../../node_modules/@types/node/async_hooks.d.ts","../../node_modules/@types/node/buffer.d.ts","../../node_modules/@types/node/child_process.d.ts","../../node_modules/@types/node/cluster.d.ts","../../node_modules/@types/node/console.d.ts","../../node_modules/@types/node/constants.d.ts","../../node_modules/@types/node/crypto.d.ts","../../node_modules/@types/node/dgram.d.ts","../../node_modules/@types/node/diagnostics_channel.d.ts","../../node_modules/@types/node/dns.d.ts","../../node_modules/@types/node/dns/promises.d.ts","../../node_modules/@types/node/domain.d.ts","../../node_modules/@types/node/events.d.ts","../../node_modules/@types/node/fs.d.ts","../../node_modules/@types/node/fs/promises.d.ts","../../node_modules/@types/node/http.d.ts","../../node_modules/@types/node/http2.d.ts","../../node_modules/@types/node/https.d.ts","../../node_modules/@types/node/inspector.d.ts","../../node_modules/@types/node/module.d.ts","../../node_modules/@types/node/net.d.ts","../../node_modules/@types/node/os.d.ts","../../node_modules/@types/node/path.d.ts","../../node_modules/@types/node/perf_hooks.d.ts","../../node_modules/@types/node/process.d.ts","../../node_modules/@types/node/punycode.d.ts","../../node_modules/@types/node/querystring.d.ts","../../node_modules/@types/node/readline.d.ts","../../node_modules/@types/node/repl.d.ts","../../node_modules/@types/node/stream.d.ts","../../node_modules/@types/node/stream/promises.d.ts","../../node_modules/@types/node/stream/consumers.d.ts","../../node_modules/@types/node/stream/web.d.ts","../../node_modules/@types/node/string_decoder.d.ts","../../node_modules/@types/node/timers.d.ts","../../node_modules/@types/node/timers/promises.d.ts","../../node_modules/@types/node/tls.d.ts","../../node_modules/@types/node/trace_events.d.ts","../../node_modules/@types/node/tty.d.ts","../../node_modules/@types/node/url.d.ts","../../node_modules/@types/node/util.d.ts","../../node_modules/@types/node/v8.d.ts","../../node_modules/@types/node/vm.d.ts","../../node_modules/@types/node/wasi.d.ts","../../node_modules/@types/node/worker_threads.d.ts","../../node_modules/@types/node/zlib.d.ts","../../node_modules/@types/node/globals.global.d.ts","../../node_modules/@types/node/index.d.ts"],"fileInfos":[{"version":"f5c28122bee592cfaf5c72ed7bcc47f453b79778ffa6e301f45d21a0970719d4","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f",{"version":"3f149f903dd20dfeb7c80e228b659f0e436532de772469980dbd00702cc05cc1","affectsGlobalScope":true},{"version":"1272277fe7daa738e555eb6cc45ded42cc2d0f76c07294142283145d49e96186","affectsGlobalScope":true},{"version":"adb996790133eb33b33aadb9c09f15c2c575e71fb57a62de8bf74dbf59ec7dfb","affectsGlobalScope":true},{"version":"43fb1d932e4966a39a41b464a12a81899d9ae5f2c829063f5571b6b87e6d2f9c","affectsGlobalScope":true},{"version":"cdccba9a388c2ee3fd6ad4018c640a471a6c060e96f1232062223063b0a5ac6a","affectsGlobalScope":true},{"version":"c5c05907c02476e4bde6b7e76a79ffcd948aedd14b6a8f56e4674221b0417398","affectsGlobalScope":true},{"version":"0d5f52b3174bee6edb81260ebcd792692c32c81fd55499d69531496f3f2b25e7","affectsGlobalScope":true},{"version":"810627a82ac06fb5166da5ada4159c4ec11978dfbb0805fe804c86406dab8357","affectsGlobalScope":true},{"version":"181f1784c6c10b751631b24ce60c7f78b20665db4550b335be179217bacc0d5f","affectsGlobalScope":true},{"version":"3013574108c36fd3aaca79764002b3717da09725a36a6fc02eac386593110f93","affectsGlobalScope":true},{"version":"75ec0bdd727d887f1b79ed6619412ea72ba3c81d92d0787ccb64bab18d261f14","affectsGlobalScope":true},{"version":"3be5a1453daa63e031d266bf342f3943603873d890ab8b9ada95e22389389006","affectsGlobalScope":true},{"version":"17bb1fc99591b00515502d264fa55dc8370c45c5298f4a5c2083557dccba5a2a","affectsGlobalScope":true},{"version":"7ce9f0bde3307ca1f944119f6365f2d776d281a393b576a18a2f2893a2d75c98","affectsGlobalScope":true},{"version":"6a6b173e739a6a99629a8594bfb294cc7329bfb7b227f12e1f7c11bc163b8577","affectsGlobalScope":true},{"version":"12a310447c5d23c7d0d5ca2af606e3bd08afda69100166730ab92c62999ebb9d","affectsGlobalScope":true},{"version":"b0124885ef82641903d232172577f2ceb5d3e60aed4da1153bab4221e1f6dd4e","affectsGlobalScope":true},{"version":"0eb85d6c590b0d577919a79e0084fa1744c1beba6fd0d4e951432fa1ede5510a","affectsGlobalScope":true},{"version":"da233fc1c8a377ba9e0bed690a73c290d843c2c3d23a7bd7ec5cd3d7d73ba1e0","affectsGlobalScope":true},{"version":"d154ea5bb7f7f9001ed9153e876b2d5b8f5c2bb9ec02b3ae0d239ec769f1f2ae","affectsGlobalScope":true},{"version":"bb2d3fb05a1d2ffbca947cc7cbc95d23e1d053d6595391bd325deb265a18d36c","affectsGlobalScope":true},{"version":"c80df75850fea5caa2afe43b9949338ce4e2de086f91713e9af1a06f973872b8","affectsGlobalScope":true},{"version":"9d57b2b5d15838ed094aa9ff1299eecef40b190722eb619bac4616657a05f951","affectsGlobalScope":true},{"version":"6c51b5dd26a2c31dbf37f00cfc32b2aa6a92e19c995aefb5b97a3a64f1ac99de","affectsGlobalScope":true},{"version":"6e7997ef61de3132e4d4b2250e75343f487903ddf5370e7ce33cf1b9db9a63ed","affectsGlobalScope":true},{"version":"2ad234885a4240522efccd77de6c7d99eecf9b4de0914adb9a35c0c22433f993","affectsGlobalScope":true},{"version":"09aa50414b80c023553090e2f53827f007a301bc34b0495bfb2c3c08ab9ad1eb","affectsGlobalScope":true},{"version":"d7f680a43f8cd12a6b6122c07c54ba40952b0c8aa140dcfcf32eb9e6cb028596","affectsGlobalScope":true},{"version":"3787b83e297de7c315d55d4a7c546ae28e5f6c0a361b7a1dcec1f1f50a54ef11","affectsGlobalScope":true},{"version":"e7e8e1d368290e9295ef18ca23f405cf40d5456fa9f20db6373a61ca45f75f40","affectsGlobalScope":true},{"version":"faf0221ae0465363c842ce6aa8a0cbda5d9296940a8e26c86e04cc4081eea21e","affectsGlobalScope":true},{"version":"06393d13ea207a1bfe08ec8d7be562549c5e2da8983f2ee074e00002629d1871","affectsGlobalScope":true},{"version":"cd483c056da900716879771893a3c9772b66c3c88f8943b4205aec738a94b1d0","affectsGlobalScope":true},{"version":"b248e32ca52e8f5571390a4142558ae4f203ae2f94d5bac38a3084d529ef4e58","affectsGlobalScope":true},{"version":"6c55633c733c8378db65ac3da7a767c3cf2cf3057f0565a9124a16a3a2019e87","affectsGlobalScope":true},{"version":"fb4416144c1bf0323ccbc9afb0ab289c07312214e8820ad17d709498c865a3fe","affectsGlobalScope":true},{"version":"5b0ca94ec819d68d33da516306c15297acec88efeb0ae9e2b39f71dbd9685ef7","affectsGlobalScope":true},{"version":"ff667ee99e5a28c3dc5063a3cfd4d3436699e3fb035d4451037da7f567da542a","affectsGlobalScope":true},{"version":"c37f8a49593a0030eecb51bbfa270e709bec9d79a6cc3bb851ef348d4e6b26f8","affectsGlobalScope":true},{"version":"e4a2d089a3e567506f55fcc8a6c007c1a1126737ba6e8b4c034aa11da77b026b","signature":"ce706d527ea4dd415f97dbe7b773e31eb9dcdf57c7795a287770f11bf9bfd9c1"},{"version":"8175d68354a805ca6dd8564a10ff937a48a8dcd18fca2d8fd74eb27b55e9be00","signature":"441dd5f9d6d0a835bbed7e66a19e53c1337100a3289849a0825f793439512a64"},{"version":"1b34da3536d5f1b18ee6c36173839c58c222dd2313542efda615081eeb9aa9f2","signature":"1166696f6d7c6b6bf21d81a0920c6caca6377948505f77a806903aba41586f00"},{"version":"9c4d49c04c3d7a721a080286deaceaf96616ae64902695363b55867bec02e968","signature":"505b88776835f17e73e7da62b0d6a867f2b4ba7baca3a514066f12d6f4f744e2"},{"version":"8514466eeb0e7057ffa367dfa5bd536ffc81b66ff67489301f0616e8f80f980b","signature":"de051108b55ad0a0e3f05ccaa5496fe11c122bf5e72d7c5787f4e64c855c81dd"},{"version":"f92660f80d3a9ad4305fec6f31e1cca8a38d504ddc1ccec874e7a277ad1781cf","signature":"ea775be91ef3b53d2dada4a4793fbe9e8e2e41b4f95fa51489170391968dff10"},{"version":"6468fb9f02695963744e2c820144724bb9576f506546e24bd5d8786a80459aa2","signature":"258c0db5d37ac645d6fba7ea00a7ef2c8ef5b21f3f0430a0b1fae7dbc2850223"},{"version":"6bb2e82cb7a4a7a32a94b68fd9988bcfed696919b2841bc2c16bf8b194bb7773","signature":"e2ce41b8c01c1a2512e7775fefc3cde2856a48172cbc0b209f9ca60c82af283d"},{"version":"74333ba24b75e101738f3fb81a67e2daac9caa586c556b59eb65f51c3f28483d","signature":"cc0266900cf7d25e13534412033765754d70d271a740c1c498f806ce622b3567"},{"version":"e7d5ed1f30fe8e2f032fa92c92d481119490004dd1bd07aef9840154896e0168","signature":"180258684df4f6ca3054178c249780dae479898c9f0791f42364f09d469d33d7"},{"version":"f8aa458fd294e44b26e6f10b7bfff95f96bf1cdeacbbf6d8c809cc3adec158c5","signature":"85c4bf86855763326a3523fa9feea0c8ae9db73ae887fe4c84eb272ea416b307"},{"version":"de921abfd2ef6124b88813649d7206845b0a77b0d8c00a9da3478521d46ef358","signature":"aa549426ce931964f4d21431f8b6fc04f19688f0c7c838ea123d06346e1ba9ba"},{"version":"28c12211f455ea9f3dd5f60e8dfd6da63bc24f41e336c20ffd2f22529f926dfd","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ae6ef09de7ea505bdc97b7ae84cd9bee9a2d39f59520af47b8b424f95589ca98","signature":"f80cd5d590dc0496816c38d7480c7b2e26aa93bb17123e8881044305e25a0c68"},{"version":"d0d9d65cb2b34879b7938e8f51a95c1e9745c8d3a86e64d4bc68566e8848fde4","signature":"c80cd6d23f15ec4e955cb5309270dc901046b294104271e090f96f36bf3be78f"},{"version":"52e61566e634e0941d7f52e758b2363436076167e6bf4c108fe8e18b922d18a9","signature":"9d542ad7bf8222c8f14fa1c72db5b9303f5bcf2cf2b09f9c61099fa8b3ded0f2"},{"version":"0957698064d895aae84243b0ee292e22fcd49fc2f083282f4815c22f2cafc9b5","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"16437b735c18ac348ba8cefd01bda8a74b397e6c6953c491ac638a12b5e5cc18","signature":"8b9aa05a77480ba8bc25b6640192e90709fa30673015ea714f956f1e2ee5b49e"},{"version":"8958247d7b38155c9947b1c07b3cd0d7274987a3d123ee4fa537f80dd0a391d2","signature":"32e16decf7d6a3422c2f7053128626578855b0d1b54eec688ec3ab16635f5b02"},{"version":"d7e1383fe8735d886319ebab932fe5738e72c2cb521beacf71afdfb2593d7004","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ec9bac6c72dfd0989b6a9a4e14f0be3b36c1c0bc44dc0f130ec1b4dd5c51c15a","signature":"3930b9c9625da059dab8ddd77352479f2c1aa7df0d52fb0c5f4e95c8ae22ea27"},{"version":"e4b9434b2d6edc65ba8a56393933f6879dd4be5d12f8fa87e9b83b42965acc62","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"55e53db96d62010854e9cea503ae5f993ba772e663af47f8b659807490a8c848","signature":"345ae9c15430d6fd62b686883c9577cfc895a957b23b812494eb03f3b424fc0f"},{"version":"2671f2ba258caa3cda3f1c652e54c2486bf73130925e825a2dda9c896c30e457","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"c209474c7cc99347fad08f2c3d4ed7aad779f97342d74fe108b9eddaa1b8ce1b","signature":"8c11ef055b90b792d0c680315579747d807bf4c39cf1ca04fb1e4b93d7f7f115"},{"version":"8524790efd636d2a902df2cb3e0047101bb7c2b97e68d0892a55cc90e164491e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"3e24760644b4784e31fb7bfd0cdcb6da3b09b7c5202432bf5f12c0d6d87c1995","signature":"793161d66ff5b290131fa48ffda0df883d15675173c076bc326cfd8f5cc82abb"},"3fa86a2c33804b6a4221dda3714a6a2f8a2f26983ea6c63d2bf6f2839fbb778a",{"version":"e541d4ac17f04facc96dd31b3dc6bc57e994544237e8eaea502437cacae2b926","signature":"177af28a70bbab93e5eb1d6a4b79bd5fdc122824f8ec130273a17e2ab1f886dd"},{"version":"7e1b65240bd4316b865d992dbe47966776d9030c2489134b7277296257e128b2","signature":"fd5deb4172f846eacc20b582c5931fdac7c34ed63a73b32653502aa9c22b2b04"},{"version":"47ae3207be189793b8535d67dc2c78a4205de469cd3b464bedbdd99f50980219","signature":"aba12d71f75d06d95a3539f9d931e8b2d325a39de69ecdc7d1e11f3a1aee7139"},{"version":"acd9b2c3933f2946c4f26c7d5490e7b86a72403029dea26048e8960d6cfee1aa","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"6d7fb2a56cc88e889b7ed197da940b7755db933904dd71d0b70e596c12747e3b","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"ca9c48f8a01f0f6f4b63a3e5dfccacaa8523630858ee4d6713be37a857c65be1","signature":"42375e50af05b605093f43fb0c3312a63d7cad454e6854dd0710d0454e1ef7c5"},{"version":"33a16e7f426e94b4ce958b2c50dc3dead9951ffb58d8fb4c7280080af6943700","signature":"2530ed3dbe0b6d0714592caade7e0f2278daf246f7aacf8fd238a3d1e488312a"},{"version":"70e0a6a1e72bc8184098036a9b5ba9a26e9a2dee8b7968131b2a09559bbe09a2","signature":"35ddb3737f44d680172ab064727225df06457b52a2fd7df487bf5e9f12e8b77e"},{"version":"202c39c40b1fcdf051e053705e47d502b40e2cabbd3727b26fd5281c6e099ccf","signature":"e6261f19b752025780f04ed78dc0411ec209c70baadf13d08c6ac76782964691"},{"version":"90c8220678df12d9e2fd201ab2035e08dae401268235370021df19d0b2732034","signature":"45962198f77860cdd300955e380df19d8b1603ad526c1d3e482c3cb99e1fa06d"},{"version":"9742acae4d1eb74eb98ac0157c3994dbaa2e88ee08879c0f85bef28cbb53e0f7","signature":"020da53a208595af7b244a1e20ab4eeb67b22c946753eaa2608271308514cefc"},{"version":"494046175ae5ac718e215b39a0aad86296d2ba2ddb6d1a2a4b774f3ce46b80a4","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"0d4d446d30e467b2c3d57509e36c7ccb03b4ee8dcd2019751a138b1435cbecde","signature":"6c92cc8423caeaddc2eeec841fd03af2661b4c6c1293c627645fe821ba233b8a"},{"version":"a47f3d1b1f3f55ebf11606fc14a5657cab2bc9c943d31b495dc1fc23e8121aa6","signature":"241aa6654e1255de173348c9bcd6e70dbee5a8d60fdf2bca4b3b9763cfb25b27","affectsGlobalScope":true},{"version":"e3528715560eaeac87c04b0db4c7c8dd1bfeaabb153e74079023651bfc56f0de","signature":"c745d58cc9b135bed9b311c50e757bf35aaac951811d6ec26c3fdd1923b323bf"},{"version":"2898e87b58eae9d42d9bc2bad25296071e2c231f8162318ae6961e5bc8cc722b","signature":"a2f5cba46c5a8dd418a69113e9f61798a74d0e89f0d620699e1513aeb3f20e8e"},{"version":"758a603bb0643db69cae819ec5d7c549b4f0d40ae251c815af5378762b1566ce","signature":"bda35a017d629eed87e37be3a5468b157099f29b89a1f218c15863d677b3f8bd"},{"version":"c2f5751a1c3f54322466056ff555d679bb4f8d5e78dbd115b729c89573bcf54e","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"8790fae5d91bde9f551abbb4aea81b62da25da54e57199b5484cd89dc89e28f1","signature":"cb5f155ad59f35b0caa72671294a23fc8c9ca611136e88b4fb84ef420fe721dd"},{"version":"b163cc861aeec6968f62575f58fe381b68c93ac7aae7da451adc4e5f286f09bc","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"73a35ad57a082d8d74d5825940a39d13617f55b8a1646ef1036662afcd9585bd","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7face0351ab687e8f5d2a7e5e1dc850b656dc7d842e20d8847661008f0c8adc0","signature":"0f41b5c1114a15b29bc3463dbcd9921ae3101e366b6999ba12080b5afb6ba112"},{"version":"d28a8bb0b4b8d1447db96fa23c41827dcbbb0e6506f8a6c46ccc57c0b1e68ea0","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"7e17d056bf272d860177cb48c33b3400210e6b37eec917ad7b0ddb06a86e361b","signature":"590a129a3f65470f0354bd61386381815be495a46b75e52a146843bf1377294b"},{"version":"fbd23a364b952568b7bca7f21945318d43dde4f8849afe935f537526c17d6c74","signature":"78393617acb4048cb84d8ed145117125dea60697cd4760f99883fd5bb0cd6980"},{"version":"4ed2bf64a330edc5bf74b0b296ddb242865d5f7a4803fd01dd21b09a320f23a9","signature":"43e818adf60173644896298637f47b01d5819b17eda46eaa32d0c7d64724d012"},{"version":"69e4f012b8f8d03af6b147fb70ae2824146b48c8613b03d2f12c0ec8adb2382a","signature":"631a056ab66c51e60da308a0337da019945351efcd8fabffc054a88acaa001d5"},{"version":"a412c2527733835920aefb27b3b89a406845fca19e9b28dc69265036f4b9c796","signature":"def28f8e511dda7e64a45f6b5b0d1092371761b5f60f6333436e1293fc1e881b"},{"version":"8c7e16dbd99d459421e9401f54b8a88f1a985a0a9a96623c5cafbb9afe45018d","signature":"7c090e3285f3e7c2256c44922b2c4027dfc7d11dc7563ceb2f88636fb09baf24"},{"version":"97c8d3440d4be35223ce0a22c1aeba0b4f7ac71e003865bf946d427943d7aa0d","signature":"532b907b88a8e555b18b60c20eeb85d6f45be3eb26fdf67145888d4b4b5d57a7"},{"version":"619f5d80aaebebb975075fa2749ad32b1384d0b80706e89aa5164a8587d06f21","signature":"88fbdb356b5b0e50812545742667fad93ee25de676303c2eabf337ee46af3e6d"},{"version":"3e7ac572714a1117853afa5155664335d7c251e956236a4ffd5cf4f87084f6ec","signature":"b8a95e6e4bc8f02d369cec44d6e1154206289398ba770fc9e9f8949db1aa4609"},{"version":"70267d896102a79e2257ea41c22507a9522f60543817538bf920630336f8fa0d","signature":"28358ed0261bc0a4e9521c142511e68336f5aeed0e7ee1e425fdbc7b273189a0"},{"version":"e72501b40a90580fd308936952c380b50a4dc4eed3b7b818ec2321ed03746f77","signature":"e4dc4850af7ff13af0af60fbb7b3334e58c7d3d96591d2639032effefc77030c"},{"version":"ae6bcfb947898795d160064fc2a78c778b8dc7ec65712835cc061abd47fdf6f4","signature":"8eaec2016beea89cf2b266fb463098cf3526be2c1f1b991f71c13154bd1b828c"},{"version":"fdcf50e480b5b953bebf9e16d7d0039a449fec28405fb9be0ae1a909ba16f779","signature":"d8553cae2058251d0ce2db8be649541a950dc1e898ed794ee8aad8f2541528eb"},{"version":"25e0599d953fdb1cb20c002e746370e60d95894978e64696da34a38a4ba097ae","signature":"c1f56f03b1b3f216457c1b7582fb57b3860588542f7bb977b2fd6152a974e268"},{"version":"c853c8cbf3a4bcfb30e433a22fad68b5e387ab83a10c7040c080f177919ec8d8","signature":"b0217dd17d4ad00a790eb964c47d5124fd26c7372c0cdd001d0850abfcd93cda"},{"version":"d1dddb118cc1c29d2c6d351bf2355bd7ad4cad3e324cd503b1e7168fbd548eec","signature":"a0959378999bf19abc1945c833a7d5bd96c7cb9905083cf39b07d6a6cf49570b"},{"version":"62e4d44a2e724035afebcb589aabcb20ce85c07c29943a3158860a33093f653b","signature":"7ddc765edfa0420999a079eb7df3fe76add77a26267764e0da1e8d72517ef2ea"},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"43d1f85f1a9f973a430474df6e760b67b59fd404b97b24f611796fffe2733f68","signature":"98951b5278a50e2a05e81520a874c7c2ea3013141e8b49e05e6ce6efccb25281"},{"version":"86b2a9b32acb87ef9ca1f23bc5261f0173ca8eb5f5bcfcb6c6b001cd2a1827b5","signature":"3ccda02e5750bdce0447dbf7e597a2eb16258dfa6c9c0c19572fd117f303dabb"},"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855",{"version":"3016b2e9984764972a6619a5128be0625042b78b823ba2dd5d1091edca421b57","signature":"371342d33f6f23a62c279c5a4d076f79434aed54f2f4e2f440e5a3a0c8790f0d"},{"version":"0632e8da59390a94566bc900ce77d77b6bb20be308a5f588139204b6785ae952","signature":"9dcb038957c10811c0d929a7110869e5d614373ae2f279c8e8c096be05d633d7"},{"version":"465d161bd8eb7ececeee348884534d628183092b4a335cc4d98e64432a5a26a5","signature":"67df1d03572c8959610f449360cf483a1819ebd19ff9f0e1860547b0cea9cfa5"},{"version":"f95823d266c086a4c95b71e1c27c95f3a0b2f129ac57c0e2e16b40fb5aca1622","signature":"9fde7fd556c93ebcbcf6a9504d013b6b3b79f7092050330038ac76e1561cfc64"},"858d0d831826c6eb563df02f7db71c90e26deadd0938652096bea3cc14899700","56fe6258367f7149fa8390ef124ee8ff2d1321c2f7287cc246991f236d05e069","2d62ec9b88194c22bb7c756e4186e855c0e3f0d62d7119390097fbd1313ff040","f1bfc416bf16397e950f3568d32b6f41e2c11eb5fceef4d375ab6d85795f9ae0","53f9ab32b77d9ae3cbb26bcc9f2098dc7d059c5cf55cc1047cd5aed85eeb010a","c751510248b6696c0acc644a35e7920d1ddba422766b29ae06d6c4adb16b9a32","40ff1e61b764e770d1e7b41609f105d996e2619e599601f00069ba0868fefc48","daf07c1ca8ccfb21ad958833546a4f414c418fe096dcebdbb90b02e12aa5c3a2","979673a2ba867c8f67d6bf6457343c3c9b26a2f3692a1a9d205e8d217d9d782d","2286e4c0840532d3ade74356c68ef7824b1192e2d2f2c1f9f2df7dac94e20d3a","9cfab7e97a2bc089b72bd912ffbef4271012bd412373163201211d3680f683b0","ac15dd3d9cbc5af8b4ca20a0cc85d39e24e0c68944712cb4635d457bb0390353","5a84495aabf1dd8a7bfe157402232cfb73f29f77da77bd48147412555b73429f","8bc8fbcbeec0131a4ff57236a795313e2f6c04b4c26f1ad48299e63a04c50a5b","d74acd0e16013b89368fd9727d670a5fa1a44e05d370a8b5eed9e6f9bd28a525","b19b7e6c0cbb198202c844d0fb069082cfd6e5cca1052f8c16d484e8d5ef5b17","64f4a0cf53879823412a7b756152864860a78182dd2208eb5a2e00a9202855c2","2b3486a5f525cfc32bcc497fdb8e627c2cfdd0382496f6ba4afc70b2d5cf8df8","5f8364bf3ede554dc58e41e3c8e6a97749635f7defaa6b9dc29cc6e438a3aa69","19c712ab69b153e2301012b6806cf2393ed7ac25916a7495656b026cfc58160c","cfe08c0b0e348c0f7ec7298d8f2f51bdbbadc4329c33f610a57aefe151e0a0ed","4b40245f6046fbb67823d00b7e551aa11aacba81703aaa84e89ba0d313f4a473","7e4f03d43ec0fd291e8c06a6ebe7d3c15dfde005b13b80476429daaa0d9ce97e","0911980961c53a149c9cdc41180d959ff3ca96fb5a5065ab156e276c8d2b9a3a","6ecd23e20271268152d1d0ff5cd92cd57752dd9dfaa57f7e0d6a8c291779a486","2b6dcbecfebd1dfb2d03d399243bde13dd84c3d5ecb049c644bd32261c930f43",{"version":"cc77e9a9c86b5f45920c4169ac6c8ade3d16d8706d071dfc58c6123eb30b9138","signature":"5a75278287de16563c22212f22a1c2603756360a7f1fa882230a4dd0d9f86c0f"},{"version":"b1638e3ec82dd0095d5c20e03f77fe157c5fdf8a808891b1e364d809b62e7d83","signature":"539f24d2c573e040ef38ce1189f70d4cddd9526118df97ef61534bad0a8ec606"},{"version":"e58272637845dbe29f3c0ce14b03fecb5b368923048424be73307753b87e179d","signature":"9e06b2c2a4d3e3cfe10198eb56e9fa92b03824b3a81d31092ed2ee9ee6341af9"},{"version":"811caf472d887638124c8840c7d82ae91f7c9f9e587d1a2d1fe4360362f5c092","signature":"9d6f7ad87be5f168f0270bf57a5e9c0ac072da4fd3104a837287dcd50b1b653b"},{"version":"36e0a2003f96724959c8bfa6b804a89dfaf30c3da02b6ddfef2b45afd0554f57","signature":"ac969abdc0f20326c8481676cd712c0999ed138dd50b212197453de6f9be11a9"},{"version":"8b5db11562043eaf1d19dd53ecbbdd12510edcc7e7a6be97ec426566d637c67c","signature":"279c311489072f94d1567e9c9148e70c0c9b10c6829d3653d48801b3477b1b57"},"0cba3a5d7b81356222594442753cf90dd2892e5ccfe1d262aaca6896ba6c1380","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"e5979905796fe2740d85fbaf4f11f42b7ee1851421afe750823220813421b1af",{"version":"fcdcb42da18dd98dc286b1876dd425791772036012ae61263c011a76b13a190f","affectsGlobalScope":true},"1dab5ab6bcf11de47ab9db295df8c4f1d92ffa750e8f095e88c71ce4c3299628","f71f46ccd5a90566f0a37b25b23bc4684381ab2180bdf6733f4e6624474e1894",{"version":"54e65985a3ee3cec182e6a555e20974ea936fc8b8d1738c14e8ed8a42bd921d4","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","5b30f550565fd0a7524282c81c27fe8534099e2cd26170ca80852308f07ae68d","34e5de87d983bc6aefef8b17658556e3157003e8d9555d3cb098c6bef0b5fbc8","d97cd8a4a42f557fc62271369ed0461c8e50d47b7f9c8ad0b5462f53306f6060","f27371653aded82b2b160f7a7033fb4a5b1534b6f6081ef7be1468f0f15327d3","c762cd6754b13a461c54b59d0ae0ab7aeef3c292c6cf889873f786ee4d8e75c9","f4ea7d5df644785bd9fbf419930cbaec118f0d8b4160037d2339b8e23c059e79",{"version":"bfea28e6162ed21a0aeed181b623dcf250aa79abf49e24a6b7e012655af36d81","affectsGlobalScope":true},"b8aca9d0c81abb02bec9b7621983ae65bde71da6727580070602bd2500a9ce2a","ae97e20f2e10dbeec193d6a2f9cd9a367a1e293e7d6b33b68bacea166afd7792","10d4796a130577d57003a77b95d8723530bbec84718e364aa2129fa8ffba0378","063f53ff674228c190efa19dd9448bcbd540acdbb48a928f4cf3a1b9f9478e43","bf73c576885408d4a176f44a9035d798827cc5020d58284cb18d7573430d9022","7ae078ca42a670445ae0c6a97c029cb83d143d62abd1730efb33f68f0b2c0e82",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"287b21dc1d1b9701c92e15e7dd673dfe6044b15812956377adffb6f08825b1bc","12eea70b5e11e924bb0543aea5eadc16ced318aa26001b453b0d561c2fd0bd1e","08777cd9318d294646b121838574e1dd7acbb22c21a03df84e1f2c87b1ad47f2","08a90bcdc717df3d50a2ce178d966a8c353fd23e5c392fd3594a6e39d9bb6304",{"version":"4cd4cff679c9b3d9239fd7bf70293ca4594583767526916af8e5d5a47d0219c7","affectsGlobalScope":true},"2a12d2da5ac4c4979401a3f6eaafa874747a37c365e4bc18aa2b171ae134d21b","002b837927b53f3714308ecd96f72ee8a053b8aeb28213d8ec6de23ed1608b66","1dc9c847473bb47279e398b22c740c83ea37a5c88bf66629666e3cf4c5b9f99c","a9e4a5a24bf2c44de4c98274975a1a705a0abbaad04df3557c2d3cd8b1727949","00fa7ce8bc8acc560dc341bbfdf37840a8c59e6a67c9bfa3fa5f36254df35db2","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","5f0ed51db151c2cdc4fa3bb0f44ce6066912ad001b607a34e65a96c52eb76248",{"version":"af9771b066ec35ffa1c7db391b018d2469d55e51b98ae95e62b6cbef1b0169ca","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","103d70bfbeb3cd3a3f26d1705bf986322d8738c2c143f38ebb743b1e228d7444","f52fbf64c7e480271a9096763c4882d356b05cab05bf56a64e68a95313cd2ce2","59bdb65f28d7ce52ccfc906e9aaf422f8b8534b2d21c32a27d7819be5ad81df7",{"version":"3a2da34079a2567161c1359316a32e712404b56566c45332ac9dcee015ecce9f","affectsGlobalScope":true},"28a2e7383fd898c386ffdcacedf0ec0845e5d1a86b5a43f25b86bc315f556b79","3aff9c8c36192e46a84afe7b926136d520487155154ab9ba982a8b544ea8fc95","a880cf8d85af2e4189c709b0fea613741649c0e40fffb4360ec70762563d5de0","85bbf436a15bbeda4db888be3062d47f99c66fd05d7c50f0f6473a9151b6a070","9f9c49c95ecd25e0cb2587751925976cf64fd184714cb11e213749c80cf0f927","f0c75c08a71f9212c93a719a25fb0320d53f2e50ca89a812640e08f8ad8c408c",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"9cafe917bf667f1027b2bb62e2de454ecd2119c80873ad76fc41d941089753b8"],"options":{"allowUnreachableCode":false,"allowUnusedLabels":false,"declaration":true,"jsx":2,"module":99,"noFallthroughCasesInSwitch":true,"noImplicitReturns":true,"outDir":"./","strict":true,"target":99},"fileIdsList":[[156,199],[159,199],[160,165,199],[161,171,172,179,188,198,199],[161,162,171,179,199],[163,199],[164,165,172,180,199],[165,188,195,199],[166,168,171,179,199],[167,199],[168,169,199],[170,171,199],[171,199],[171,172,173,188,198,199],[171,172,173,188,199],[199,203],[199],[174,179,188,198,199],[171,172,174,175,179,188,195,198,199],[174,176,188,195,198,199],[156,157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,193,194,195,196,197,198,199,200,201,202,203,204,205],[171,177,199],[178,198,199],[168,171,179,188,199],[180,199],[181,199],[159,182,199],[183,197,199,203],[184,199],[185,199],[171,186,199],[186,187,199,201],[171,188,189,190,199],[188,190,199],[188,189,199],[191,199],[192,199],[171,193,194,199],[193,194,199],[165,179,188,195,199],[196,199],[179,197,199],[160,174,185,198,199],[165,199],[188,199,200],[199,201],[199,202],[160,165,171,173,182,188,198,199,201,203],[188,199,204],[124,140,199],[129,199],[125,140,199],[125,126,129,139,140,141,142,143,144,145,146,147,148,199],[144,199],[129,145,146,199],[143,147,199],[127,128,199],[127,199],[125,126,129,139,199],[130,134,139,199],[139,199],[130,131,132,133,134,135,136,137,138,199],[130,139,199],[124,199],[53,90,91,199],[90,91,104,199],[53,54,91,199],[89,90,91,199],[93,199],[66,90,91,92,199],[61,90,91,199],[51,52,57,59,199],[51,199],[57,59,63,199],[51,62,199],[88,103,110,199],[103,199],[50,88,199],[88,199],[66,90,91,199],[89,199],[91,114,199],[89,91,113,199],[57,59,91,199],[57,59,86,89,91,97,199],[86,199],[91,117,199],[89,118,199],[95,96,98,199],[58,66,199],[66,68,199],[56,66,70,199],[66,72,199],[76,173,183,198,199],[66,78,199],[53,199],[53,86,199],[66,86,199],[54,199],[51,57,59,199],[48,54,55,56,199],[54,55,57,82,199],[54,55,57,82,89,106,199],[55,82,83,199],[55,57,199],[48,53,58,199],[57,59,65,199],[49,199],[122,154,173,181,199],[122,149,154,173,181,199],[54,122,123,150,151,152,153,174,179,181,199],[154,172,173,199],[54,122,154,173,181,199],[76,122,154,173,181,199],[54,68,154,181,199],[68,82,84,85,100,199],[60,64,66,67,69,71,73,79,80,87,94,99,199],[75,199],[90],[54],[89,90],[51],[88,103],[103],[88],[89],[89,91,113],[86],[89,118],[53],[55],[55,89],[57,59,65],[49],[154],[174],[154,172],[60,64,67,69,71,73,79,80,87]],"referencedMap":[[156,1],[157,1],[159,2],[160,3],[161,4],[162,5],[163,6],[164,7],[165,8],[166,9],[167,10],[168,11],[169,11],[170,12],[171,13],[172,14],[173,15],[158,16],[205,17],[174,18],[175,19],[176,20],[206,21],[177,22],[178,23],[179,24],[180,25],[181,26],[182,27],[183,28],[184,29],[185,30],[186,31],[187,32],[188,33],[190,34],[189,35],[191,36],[192,37],[193,38],[194,39],[195,40],[196,41],[197,42],[198,43],[199,44],[200,45],[201,46],[202,47],[203,48],[204,49],[130,17],[141,50],[142,51],[126,52],[149,53],[143,17],[145,54],[146,54],[147,55],[144,17],[148,56],[129,57],[127,17],[128,58],[140,59],[125,17],[138,60],[131,61],[132,61],[133,61],[139,62],[134,63],[135,60],[136,63],[137,61],[124,64],[9,17],[10,17],[12,17],[11,17],[2,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[3,17],[4,17],[24,17],[21,17],[22,17],[23,17],[25,17],[26,17],[27,17],[5,17],[28,17],[29,17],[30,17],[31,17],[6,17],[32,17],[33,17],[34,17],[35,17],[7,17],[36,17],[41,17],[42,17],[37,17],[38,17],[39,17],[40,17],[8,17],[46,17],[43,17],[44,17],[45,17],[1,17],[47,17],[75,17],[48,17],[49,17],[50,17],[102,65],[105,66],[106,67],[107,68],[94,69],[93,70],[92,71],[60,72],[52,73],[61,17],[64,74],[63,75],[53,17],[111,76],[103,17],[110,77],[112,78],[104,77],[89,79],[96,80],[90,81],[115,82],[116,17],[114,83],[95,84],[91,81],[98,85],[97,86],[108,73],[118,87],[117,88],[109,81],[99,89],[88,17],[119,17],[113,79],[83,17],[67,90],[58,17],[69,91],[68,17],[71,92],[70,17],[73,93],[72,17],[74,17],[77,94],[79,95],[78,17],[54,96],[120,97],[87,98],[86,99],[62,17],[80,100],[51,17],[81,99],[57,101],[85,102],[121,103],[84,104],[82,105],[59,106],[65,17],[66,107],[55,17],[56,108],[123,109],[150,110],[154,111],[122,112],[151,113],[152,109],[153,114],[155,115],[101,116],[100,117],[76,118]],"exportedModulesMap":[[156,1],[157,1],[159,2],[160,3],[161,4],[162,5],[163,6],[164,7],[165,8],[166,9],[167,10],[168,11],[169,11],[170,12],[171,13],[172,14],[173,15],[158,16],[205,17],[174,18],[175,19],[176,20],[206,21],[177,22],[178,23],[179,24],[180,25],[181,26],[182,27],[183,28],[184,29],[185,30],[186,31],[187,32],[188,33],[190,34],[189,35],[191,36],[192,37],[193,38],[194,39],[195,40],[196,41],[197,42],[198,43],[199,44],[200,45],[201,46],[202,47],[203,48],[204,49],[130,17],[141,50],[142,51],[126,52],[149,53],[143,17],[145,54],[146,54],[147,55],[144,17],[148,56],[129,57],[127,17],[128,58],[140,59],[125,17],[138,60],[131,61],[132,61],[133,61],[139,62],[134,63],[135,60],[136,63],[137,61],[124,64],[9,17],[10,17],[12,17],[11,17],[2,17],[13,17],[14,17],[15,17],[16,17],[17,17],[18,17],[19,17],[20,17],[3,17],[4,17],[24,17],[21,17],[22,17],[23,17],[25,17],[26,17],[27,17],[5,17],[28,17],[29,17],[30,17],[31,17],[6,17],[32,17],[33,17],[34,17],[35,17],[7,17],[36,17],[41,17],[42,17],[37,17],[38,17],[39,17],[40,17],[8,17],[46,17],[43,17],[44,17],[45,17],[1,17],[47,17],[75,17],[102,119],[105,119],[106,120],[107,121],[92,119],[52,122],[111,123],[110,124],[112,125],[104,124],[89,125],[90,126],[116,17],[114,127],[91,126],[97,128],[108,122],[117,129],[109,126],[119,17],[113,125],[54,130],[120,128],[86,120],[57,131],[85,131],[121,132],[84,131],[82,131],[66,133],[56,134],[123,135],[150,135],[154,136],[122,137],[151,135],[152,135],[153,135],[100,138]],"semanticDiagnosticsPerFile":[156,157,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,158,205,174,175,176,206,177,178,179,180,181,182,183,184,185,186,187,188,190,189,191,192,193,194,195,196,197,198,199,200,201,202,203,204,130,141,142,126,149,143,145,146,147,144,148,129,127,128,140,125,138,131,132,133,139,134,135,136,137,124,9,10,12,11,2,13,14,15,16,17,18,19,20,3,4,24,21,22,23,25,26,27,5,28,29,30,31,6,32,33,34,35,7,36,41,42,37,38,39,40,8,46,43,44,45,1,47,75,48,49,50,102,105,106,107,94,93,92,60,52,61,64,63,53,111,103,110,112,104,89,96,90,115,116,114,95,91,98,97,108,118,117,109,99,88,119,113,83,67,58,69,68,71,70,73,72,74,77,79,78,54,120,87,86,62,80,51,81,57,85,121,84,82,59,65,66,55,56,123,150,154,122,151,152,153,155,101,100,76]},"version":"4.7.3"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@davidsouther/jiffies",
3
- "version": "2.0.6",
3
+ "version": "2.0.7",
4
4
  "private": false,
5
5
  "displayName": "JEFRi Jiffies",
6
6
  "type": "module",
package/src/assert.ts CHANGED
@@ -1,14 +1,20 @@
1
1
  type AssertMessage = string | (() => string);
2
2
 
3
+ export class AssertionError extends Error {
4
+ constructor(message = "Assertion failed") {
5
+ super(message);
6
+ }
7
+ }
8
+
3
9
  /**
4
10
  * Throw an error when a condition is not met.
5
11
  */
6
- export function assert(
12
+ export function assert<_T extends true>(
7
13
  condition: boolean,
8
- message: AssertMessage = "Assertion failed"
14
+ message?: AssertMessage
9
15
  ): void | never {
10
16
  if (!condition) {
11
- throw new Error(message instanceof Function ? message() : message);
17
+ throw new AssertionError(message instanceof Function ? message() : message);
12
18
  }
13
19
  }
14
20
 
package/src/dom/dom.ts CHANGED
@@ -1,4 +1,4 @@
1
- import { Properties } from "./types/css.js"
1
+ import { Properties } from "./types/css.js";
2
2
 
3
3
  const Events = Symbol("events");
4
4
  export const CLEAR = Symbol("Clear children");
@@ -6,9 +6,7 @@ export const CLEAR = Symbol("Clear children");
6
6
  export type EventHandler = EventListenerOrEventListenerObject;
7
7
  export type DenormChildren = Node | string | typeof CLEAR;
8
8
 
9
- export type DOMElement = Element &
10
- DocumentAndElementEventHandlers &
11
- ElementCSSInlineStyle;
9
+ export type DOMElement = Element & ElementCSSInlineStyle;
12
10
 
13
11
  export type DomAttrs = {
14
12
  class: string | string[];
@@ -140,7 +138,7 @@ export function update(
140
138
  } else if (v === true) {
141
139
  element.setAttributeNS(element.namespaceURI, k, k);
142
140
  } else {
143
- element.setAttributeNS(element.namespaceURI, k, v);
141
+ element.setAttributeNS(element.namespaceURI, k, v as string);
144
142
  }
145
143
  } else {
146
144
  if (remove) {
@@ -148,7 +146,7 @@ export function update(
148
146
  } else if (v === true) {
149
147
  element.setAttribute(k, k);
150
148
  } else {
151
- element.setAttribute(k, v);
149
+ element.setAttribute(k, v as string);
152
150
  }
153
151
  }
154
152
  });
@@ -14,6 +14,9 @@ const normalizeHref = () => {
14
14
 
15
15
  let globalRouter: Router;
16
16
  export const Router = {
17
+ local(links: Link[], index: string): Router {
18
+ return Router.for(links, index, false);
19
+ },
17
20
  for(links: Link[], index: string, setGlobalRouter = true): Router {
18
21
  let target: Element;
19
22
  const partialRouter: Partial<Router> = (t: Element) => {
package/src/equal.ts CHANGED
@@ -10,7 +10,7 @@ export const equalArrays = compareArrays(Object.is);
10
10
  export const matchArrays: <A>(a: A[], b: A[], partial?: boolean) => boolean =
11
11
  compareArrays(equals);
12
12
 
13
- function asArray(a: Record<string, unknown>): [string, unknown][] {
13
+ export function asArray<T = unknown>(a: Record<string, T>): [string, T][] {
14
14
  return Object.entries(a).sort((a, b) => a[0].localeCompare(b[0]));
15
15
  }
16
16
 
@@ -25,6 +25,8 @@ export const matchObjects = (a: {}, b: {}, partial = true) => {
25
25
 
26
26
  export function equals<A>(a: A | A[], b: A | A[], partial = false): boolean {
27
27
  // runtime type checking
28
+ if (a === null && a === b) return true;
29
+ if (a === undefined && a === b) return true;
28
30
  switch (typeof a) {
29
31
  case "object":
30
32
  if (b === undefined) {
@@ -41,3 +43,11 @@ export function equals<A>(a: A | A[], b: A | A[], partial = false): boolean {
41
43
  return Object.is(a, b);
42
44
  }
43
45
  }
46
+
47
+ // prettier-ignore
48
+ export type Equals<T1, T2> =
49
+ (<T>() => (T extends T2 ? true : false)) extends
50
+ (<T>() => (T extends T1 ? true : false))
51
+ ? true : false;
52
+
53
+ export type Not<B extends boolean> = B extends true ? false : true;
package/src/fs.test.ts CHANGED
@@ -1,5 +1,10 @@
1
- import { FileSystem, RecordFileSystemAdapter } from "./fs.js";
2
- import { describe, it, expect } from "./scope/index.js";
1
+ import {
2
+ FileSystem,
3
+ ObjectFileSystemAdapter,
4
+ RecordFileSystemAdapter,
5
+ } from "./fs.js";
6
+ import { describe, it, expect, beforeEach } from "./scope/index.js";
7
+ import { cleanState } from "./scope/state.js";
3
8
 
4
9
  describe("FileSystem", () => {
5
10
  describe("Writing", () => {
@@ -50,4 +55,48 @@ describe("FileSystem", () => {
50
55
  expect(dir.sort()).toEqual(["bonjour", "hello"]);
51
56
  });
52
57
  });
58
+
59
+ describe("stat", () => {
60
+ const state = cleanState(() => {
61
+ const fsObj = {
62
+ "/deep/hello": "world",
63
+ "/deep/bonjour": "monde",
64
+ "/other/file": "text",
65
+ };
66
+ return { fs: new FileSystem(new RecordFileSystemAdapter(fsObj)) };
67
+ }, beforeEach);
68
+
69
+ it("stats a directory", async () => {
70
+ const deep = await state.fs.stat("/deep");
71
+ expect(deep.isDirectory()).toBe(true);
72
+ expect(deep.isFile()).toBe(false);
73
+ });
74
+
75
+ it("stats a file", async () => {
76
+ const deep = await state.fs.stat("/deep/hello");
77
+ expect(deep.isDirectory()).toBe(false);
78
+ expect(deep.isFile()).toBe(true);
79
+ });
80
+ });
81
+
82
+ describe("ObjectFileSystem", () => {
83
+ it("treats object keys as directories and final values as strings", async () => {
84
+ let fs = new FileSystem(
85
+ new ObjectFileSystemAdapter({
86
+ deep: {
87
+ hello: "world",
88
+ bonjour: "monde",
89
+ },
90
+ other_file: "text",
91
+ })
92
+ );
93
+
94
+ const deep = await fs.stat("/deep");
95
+ expect(deep.isDirectory()).toBe(true);
96
+ expect(deep.isFile()).toBe(false);
97
+
98
+ const deep_bonjour = await fs.readFile("/deep/bonjour");
99
+ expect(deep_bonjour).toBe("monde");
100
+ });
101
+ });
53
102
  });
package/src/fs.ts CHANGED
@@ -8,9 +8,11 @@ export interface Stats {
8
8
  name: string;
9
9
  }
10
10
 
11
- export function basename(filename: PathLike) {
12
- const end = filename.lastIndexOf("/");
13
- const basename = filename.substring(end === -1 ? 0 : end);
11
+ export function basename(filename: PathLike): string {
12
+ if (filename.endsWith("/")) {
13
+ filename = filename.substring(0, filename.length - 1);
14
+ }
15
+ const basename = filename.split("/").at(-1) ?? "";
14
16
  return basename;
15
17
  }
16
18
 
@@ -108,8 +110,8 @@ export class RecordFileSystemAdapter implements FileSystemAdapter {
108
110
 
109
111
  stat(path: PathLike): Promise<Stats> {
110
112
  return new Promise((resolve, reject) => {
111
- if (this.fs[path] != null) {
112
- resolve({
113
+ if (this.fs[path]) {
114
+ return resolve({
113
115
  name: basename(path),
114
116
  isDirectory() {
115
117
  return false;
@@ -118,9 +120,24 @@ export class RecordFileSystemAdapter implements FileSystemAdapter {
118
120
  return true;
119
121
  },
120
122
  });
121
- } else {
122
- reject();
123
123
  }
124
+
125
+ if (!path.endsWith("/")) path += "/";
126
+ for (let filename of Object.keys(this.fs)) {
127
+ if (filename.startsWith(path)) {
128
+ return resolve({
129
+ name: basename(path),
130
+ isDirectory() {
131
+ return true;
132
+ },
133
+ isFile() {
134
+ return false;
135
+ },
136
+ });
137
+ }
138
+ }
139
+
140
+ reject();
124
141
  });
125
142
  }
126
143
 
@@ -197,7 +214,30 @@ export class LocalStorageFileSystemAdapter extends RecordFileSystemAdapter {
197
214
  }
198
215
  }
199
216
 
200
- export class ObjectFileSystemAdapter extends RecordFileSystemAdapter {}
217
+ export type ObjectFileSystem = { [k: string]: string | ObjectFileSystem };
218
+ export class ObjectFileSystemAdapter extends RecordFileSystemAdapter {
219
+ constructor(object: ObjectFileSystem) {
220
+ super(reduceObjectFileSystem(object));
221
+ }
222
+ }
223
+
224
+ function reduceObjectFileSystem(
225
+ object: ObjectFileSystem
226
+ ): Record<string, string> {
227
+ let level: Record<string, string> = {};
228
+
229
+ for (let [k, v] of Object.entries(object)) {
230
+ if (typeof v == "string") {
231
+ level[`/${k}`] = v;
232
+ } else {
233
+ for (let [k2, v2] of Object.entries(reduceObjectFileSystem(v))) {
234
+ level[`/${k}/${k2}`] = v2;
235
+ }
236
+ }
237
+ }
238
+
239
+ return level;
240
+ }
201
241
 
202
242
  export interface Tree {
203
243
  [k: string]: string | Tree;
package/src/transpile.mjs CHANGED
@@ -14,7 +14,7 @@ export async function transpile(
14
14
  /** @type string */ url,
15
15
  /** @type {() => Promise<{toString(): string}>} */ get
16
16
  ) {
17
- if (!tsmap.has(url) || true) {
17
+ if (!tsmap.has(url)) {
18
18
  const source = ts.transpile(
19
19
  (await get()).toString(),
20
20
  compilerOptions,