@activeledger/activestorage 4.5.6 → 4.5.8

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/es/selfhost.js CHANGED
@@ -333,11 +333,11 @@ import { ActiveLogger } from "@activeledger/activelogger";
333
333
  if (incoming.query.feed === "continuous") {
334
334
  }
335
335
  else {
336
- let hBInterval = setInterval(() => {
337
- }, incoming.query.heartbeat || 60000);
336
+ let hBInterval = null;
338
337
  let cleanUp = () => {
339
338
  if (hBInterval) {
340
339
  clearInterval(hBInterval);
340
+ hBInterval = null;
341
341
  }
342
342
  };
343
343
  res.cork(() => {
@@ -361,16 +361,42 @@ import { ActiveLogger } from "@activeledger/activelogger";
361
361
  });
362
362
  }
363
363
  incoming.query.live = incoming.query.continuous = true;
364
- const listener = (change) => {
365
- if (res.writable) {
364
+ hBInterval = setInterval(() => {
365
+ if (!res.writable) {
366
+ cleanUp();
367
+ cancelChanges();
368
+ return;
369
+ }
370
+ res.cork(() => {
371
+ res.write("\n");
372
+ });
373
+ }, Number(incoming.query.heartbeat) || 30000);
374
+ let pending = [];
375
+ let flushScheduled = false;
376
+ const flush = () => {
377
+ try {
378
+ if (!res.writable || pending.length === 0)
379
+ return;
380
+ const batch = pending;
381
+ pending = [];
382
+ const lastSeq = batch.reduce((max, c) => (Number(c.seq) > max ? Number(c.seq) : max), 0);
366
383
  res.cork(() => {
367
- res.write(JSON.stringify(change));
368
- res.write('],\n"last_seq":' + change.seq + "}\n");
384
+ res.write(batch.map((c) => JSON.stringify(c)).join(",\n"));
385
+ res.write('],\n"last_seq":' + lastSeq + "}\n");
369
386
  res.end();
370
387
  });
371
388
  }
372
- cleanUp();
373
- cancelChanges();
389
+ finally {
390
+ cleanUp();
391
+ cancelChanges();
392
+ }
393
+ };
394
+ const listener = (change) => {
395
+ pending.push(change);
396
+ if (!flushScheduled) {
397
+ flushScheduled = true;
398
+ setImmediate(flush);
399
+ }
374
400
  };
375
401
  const cancelChanges = () => {
376
402
  changes.off("change", listener);
@@ -1 +1 @@
1
- {"version":3,"file":"selfhost.js","sourceRoot":"","sources":["../src/selfhost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selfhost.js","sourceRoot":"","sources":["../src/selfhost.ts"],"names":[],"mappings":"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"}
package/lib/selfhost.js CHANGED
@@ -358,11 +358,11 @@ const activelogger_1 = require("@activeledger/activelogger");
358
358
  if (incoming.query.feed === "continuous") {
359
359
  }
360
360
  else {
361
- let hBInterval = setInterval(() => {
362
- }, incoming.query.heartbeat || 60000);
361
+ let hBInterval = null;
363
362
  let cleanUp = () => {
364
363
  if (hBInterval) {
365
364
  clearInterval(hBInterval);
365
+ hBInterval = null;
366
366
  }
367
367
  };
368
368
  res.cork(() => {
@@ -386,16 +386,42 @@ const activelogger_1 = require("@activeledger/activelogger");
386
386
  });
387
387
  }
388
388
  incoming.query.live = incoming.query.continuous = true;
389
- const listener = (change) => {
390
- if (res.writable) {
389
+ hBInterval = setInterval(() => {
390
+ if (!res.writable) {
391
+ cleanUp();
392
+ cancelChanges();
393
+ return;
394
+ }
395
+ res.cork(() => {
396
+ res.write("\n");
397
+ });
398
+ }, Number(incoming.query.heartbeat) || 30000);
399
+ let pending = [];
400
+ let flushScheduled = false;
401
+ const flush = () => {
402
+ try {
403
+ if (!res.writable || pending.length === 0)
404
+ return;
405
+ const batch = pending;
406
+ pending = [];
407
+ const lastSeq = batch.reduce((max, c) => (Number(c.seq) > max ? Number(c.seq) : max), 0);
391
408
  res.cork(() => {
392
- res.write(JSON.stringify(change));
393
- res.write('],\n"last_seq":' + change.seq + "}\n");
409
+ res.write(batch.map((c) => JSON.stringify(c)).join(",\n"));
410
+ res.write('],\n"last_seq":' + lastSeq + "}\n");
394
411
  res.end();
395
412
  });
396
413
  }
397
- cleanUp();
398
- cancelChanges();
414
+ finally {
415
+ cleanUp();
416
+ cancelChanges();
417
+ }
418
+ };
419
+ const listener = (change) => {
420
+ pending.push(change);
421
+ if (!flushScheduled) {
422
+ flushScheduled = true;
423
+ setImmediate(flush);
424
+ }
399
425
  };
400
426
  const cancelChanges = () => {
401
427
  changes.off("change", listener);
@@ -1 +1 @@
1
- {"version":3,"file":"selfhost.js","sourceRoot":"","sources":["../src/selfhost.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"selfhost.js","sourceRoot":"","sources":["../src/selfhost.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@activeledger/activestorage",
3
- "version": "4.5.6",
3
+ "version": "4.5.8",
4
4
  "description": "This package is Activeledger's built-in data storage engine",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -42,11 +42,11 @@
42
42
  "typescript": "4.7.3"
43
43
  },
44
44
  "dependencies": {
45
- "@activeledger/activelogger": "^4.5.6",
46
- "@activeledger/activeoptions": "^4.5.6",
47
- "@activeledger/activeutilities": "^4.5.6",
48
- "@activeledger/httpd": "^4.5.6",
45
+ "@activeledger/activelogger": "4.5.8",
46
+ "@activeledger/activeoptions": "4.5.8",
47
+ "@activeledger/activeutilities": "4.5.8",
48
+ "@activeledger/httpd": "4.5.8",
49
49
  "classic-level": "^3.0.0"
50
50
  },
51
- "gitHead": "5877478282025dfb3d297e2dda2d8f82bdabcca5"
51
+ "gitHead": "97d00fee97ee62c41fbaf08f167cbb3ff9157be6"
52
52
  }
package/src/selfhost.ts CHANGED
@@ -746,15 +746,15 @@ import { IActiveHttpResponse } from "@activeledger/httpd/lib/httpd";
746
746
  if (incoming.query.feed === "continuous") {
747
747
  // Currently we do not do continuous
748
748
  } else {
749
- //Long polling heartbeat
750
- let hBInterval = setInterval(() => {
751
- //res.write("\n");
752
- }, incoming.query.heartbeat || 60000);
749
+ // Long polling heartbeat - armed only once the body is actually
750
+ // open for writing, further down.
751
+ let hBInterval: ReturnType<typeof setInterval> | null = null;
753
752
 
754
753
  // Clean up
755
754
  let cleanUp = () => {
756
755
  if (hBInterval) {
757
756
  clearInterval(hBInterval);
757
+ hBInterval = null;
758
758
  }
759
759
  };
760
760
 
@@ -808,40 +808,122 @@ import { IActiveHttpResponse } from "@activeledger/httpd/lib/httpd";
808
808
  }
809
809
  incoming.query.live = incoming.query.continuous = true;
810
810
 
811
+ // Keep bytes flowing while nothing is changing.
812
+ //
813
+ // This write was commented out, and that is what made a quiet
814
+ // feed fatal rather than merely quiet. The response holds open
815
+ // with nothing on the wire, so the client's undici bodyTimeout
816
+ // (300s - ActiveRequest's default, packages/utilities) fires and
817
+ // the round comes back with no body. Downstream,
818
+ // ActiveDSChanges.listen() dereferenced response.data.results on
819
+ // that null and threw, and nothing re-armed the loop - so the
820
+ // changes feed died for the lifetime of the process. Every five
821
+ // idle minutes was enough. Live-confirmed: nano-gateway kept its
822
+ // SSE socket open and heartbeating to its own subscribers the
823
+ // whole time, so every health signal said the link was fine
824
+ // while no change could ever arrive again. Background push on a
825
+ // real device stopped and nothing anywhere reported a fault.
826
+ //
827
+ // A newline is insignificant whitespace between JSON array
828
+ // elements, so it cannot corrupt the body being streamed - this
829
+ // is exactly what CouchDB sends. It has to be corked: uWS
830
+ // requires it for any write from a later tick, and an uncorked
831
+ // one is silently dropped or corrupts the stream, which is the
832
+ // likeliest reason this was disabled rather than fixed.
833
+ //
834
+ // Default is well under the client's timeout so an ordinary
835
+ // quiet period never reaches it. The client-side guard in
836
+ // dsconnect.ts is still required: this reduces how often a bad
837
+ // round happens, it does not make one survivable.
838
+ hBInterval = setInterval(() => {
839
+ if (!res.writable) {
840
+ // The client went away mid-longpoll. Without this the
841
+ // interval and the change listener both leak for the
842
+ // lifetime of the process, one per abandoned request.
843
+ cleanUp();
844
+ cancelChanges();
845
+ return;
846
+ }
847
+ res.cork(() => {
848
+ res.write("\n");
849
+ });
850
+ }, Number(incoming.query.heartbeat) || 30000);
851
+
811
852
  // Listener Process event (to turn off)
812
- const listener = (change: any) => {
813
- // res.writable - not req.connection.destroyed, which was
814
- // always a harmless no-op here anyway (the httpd
815
- // framework's synthetic `req` object only ever carries
816
- // connection.remoteAddress, so .destroyed just silently
817
- // read undefined - never actually gated anything, and
818
- // never threw either, just dead logic). res.writable is
819
- // the real, framework-maintained "is this connection still
820
- // open" flag (sse.ts's SSE class already relies on the
821
- // same one).
822
- if (res.writable) {
853
+ // A longpoll round returns EVERY pending change, not one.
854
+ //
855
+ // bulkDocs emits one "change" per document in a synchronous
856
+ // loop (levelme.ts). The previous listener responded to the
857
+ // FIRST emit by writing it, ending the response and detaching
858
+ // itself - all synchronously - so every remaining document in
859
+ // the same commit found no listener at all. With no sequence
860
+ // backfill (changesFromSeq can never return rows, see its own
861
+ // comment) those changes were gone permanently: `since` moved
862
+ // past them and nothing could replay them.
863
+ //
864
+ // For a ledger that means an ordinary multi-stream transaction -
865
+ // a transfer touching sender and recipient - notified about one
866
+ // of them. Which one was arbitrary: levelme emits backwards, so
867
+ // it was the LAST document written. Downstream that reads as an
868
+ // intermittent push bug rather than as data loss.
869
+ //
870
+ // So changes are accumulated and flushed on the next tick. Every
871
+ // emit from one commit is synchronous, so a single setImmediate
872
+ // catches the whole batch without waiting for anything.
873
+ let pending: any[] = [];
874
+ let flushScheduled = false;
875
+
876
+ const flush = () => {
877
+ try {
878
+ if (!res.writable || pending.length === 0) return;
879
+ const batch = pending;
880
+ pending = [];
881
+ // The highest seq in the batch, not the last one written -
882
+ // levelme emits in reverse order, so "last" is the oldest.
883
+ const lastSeq = batch.reduce(
884
+ (max: number, c: any) => (Number(c.seq) > max ? Number(c.seq) : max),
885
+ 0
886
+ );
887
+ // res.end() is load-bearing, not tidiness. Both the write
888
+ // and the end used to be commented out, so a client whose
889
+ // HTTP layer waits for the response to COMPLETE before
890
+ // resolving - ActiveRequest/axios does - hung forever the
891
+ // moment a real change occurred, even though the bytes were
892
+ // already on the socket. Live-confirmed: it is why a
893
+ // nano-gateway subscriber connected fine, kept heartbeating,
894
+ // and never received a push for a committed change.
823
895
  res.cork(() => {
824
- res.write(JSON.stringify(change));
825
- res.write('],\n"last_seq":' + change.seq + "}\n");
896
+ res.write(batch.map((c: any) => JSON.stringify(c)).join(",\n"));
897
+ res.write('],\n"last_seq":' + lastSeq + "}\n");
826
898
  res.end();
827
899
  });
900
+ } finally {
901
+ // In a finally so a throw while writing - an unserialisable
902
+ // doc, a discarded uWS response - cannot leak the heartbeat
903
+ // interval and the change listener for the process lifetime.
904
+ cleanUp();
905
+ cancelChanges();
828
906
  }
829
- // A CouchDB longpoll round is exactly one change, then the
830
- // client reconnects for the next - this response was never
831
- // actually finalised (both lines below were commented out),
832
- // so a client whose HTTP layer waits for the response to
833
- // complete before resolving (ActiveRequest/axios does, by
834
- // default) hangs forever the moment a real change occurs,
835
- // even though the bytes above were already written to the
836
- // socket. Live-confirmed: this is why a nano-gateway
837
- // subscriber connects fine (heartbeats keep flowing) but
838
- // never actually receives a push for a real, committed
839
- // change - ActiveDSChanges.listen() (packages/options/src/dsconnect.ts)
840
- // never gets a resolved response to react to.
841
- cleanUp();
842
- cancelChanges();
843
907
  };
844
908
 
909
+ const listener = (change: any) => {
910
+ // Deliberately does no writability check of its own - flush()
911
+ // does it once, for the whole batch, immediately before
912
+ // writing. (For the record on `res.writable`: it is the real,
913
+ // framework-maintained "is this connection still open" flag,
914
+ // unlike req.connection.destroyed, which this handler used to
915
+ // consult and which was always undefined - the httpd
916
+ // framework's synthetic `req` carries only
917
+ // connection.remoteAddress, so that check never gated anything
918
+ // and never threw. sse.ts relies on res.writable too.)
919
+ pending.push(change);
920
+ if (!flushScheduled) {
921
+ flushScheduled = true;
922
+ setImmediate(flush);
923
+ }
924
+ };
925
+
926
+
845
927
  // Stop listening for changes
846
928
  const cancelChanges = () => {
847
929
  changes.off("change", listener);
@@ -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.es2022.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.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./src/cache.ts","../utilities/lib/request.d.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/test.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","../utilities/lib/gzip.d.ts","../utilities/lib/clone.d.ts","../utilities/lib/frame.d.ts","../utilities/lib/index.d.ts","../options/lib/options.d.ts","../definitions/lib/definitions/document.d.ts","../definitions/lib/definitions/ledger.d.ts","../definitions/lib/definitions/hybrid.d.ts","../definitions/node_modules/@types/events/index.d.ts","../definitions/lib/definitions/interface.d.ts","../definitions/lib/definitions/index.d.ts","../definitions/lib/index.d.ts","../options/lib/dsconnect.d.ts","../options/lib/changes.d.ts","../options/lib/cache.d.ts","../options/lib/index.d.ts","../logger/lib/index.d.ts","./src/datastore.ts","./node_modules/@types/abstract-leveldown/index.d.ts","./node_modules/@types/level-errors/index.d.ts","./node_modules/@types/levelup/index.d.ts","./src/driver.ts","../httpd/node_modules/uWebSockets.js/index.d.ts","../httpd/lib/httpd.d.ts","./src/heartbeat.ts","./src/index.ts","./src/newlinestream.ts","./node_modules/level-supports/index.d.ts","./node_modules/level-transcoder/lib/formats.d.ts","./node_modules/level-transcoder/lib/encoding.d.ts","./node_modules/level-transcoder/index.d.ts","./node_modules/abstract-level/types/abstract-sublevel.d.ts","./node_modules/abstract-level/types/abstract-snapshot.d.ts","./node_modules/abstract-level/types/interfaces.d.ts","./node_modules/abstract-level/types/abstract-chained-batch.d.ts","./node_modules/abstract-level/types/abstract-iterator.d.ts","./node_modules/abstract-level/types/abstract-level.d.ts","./node_modules/abstract-level/index.d.ts","./node_modules/classic-level/index.d.ts","./src/drivers/leveldb.ts","./src/levelme.ts","../httpd/lib/index.d.ts","./src/sse.ts","./src/selfhost.ts","./src/drivers/rocksdb.ts","./src/types/rocksdb.d.ts","../../node_modules/@types/chai/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/mocha/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts"],"fileInfos":[{"version":"f5c28122bee592cfaf5c72ed7bcc47f453b79778ffa6e301f45d21a0970719d4","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","3eb679a56cab01203a1ba7edeade937f6a2a4c718513b2cd930b579807fa9359",{"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":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"6ea9ab679ea030cf46c16a711a316078e9e02619ebaf07a7fcd16964aba88f2d","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"c37f8a49593a0030eecb51bbfa270e709bec9d79a6cc3bb851ef348d4e6b26f8","affectsGlobalScope":true},{"version":"3b9818c476ffef8f5136f01f29a2afc07cc1c9564c5de15de428f5886d837109","signature":"9ad303fb779185d06efaf7bc8ac7a51046d9f3ddf2bf0e6a68e18d86e4712bab"},"37c28fc69aec59b586c34fad9645c2ec27287260d60e1fa03fd31f19c3dbfa5f","9122ed7070e054b73ebab37c2373a196def2d90e7d1a9a7fcd9d46b0e51fae78","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"3e4624c306340ad303cc536a07004e81336c3f088308a9e4a9f4c957a3cda2fd","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","025fc13211ed47d2798269017af3ec869122a050d5431a6ad3c1997900e65c58","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"249a2b90439cdfd51709539fbfa4dfe0791cbae6efce1e9b327ba8f8cd703f49","affectsGlobalScope":true},"40b991dc3365179e1365643589e168d7ea0588b4dd5bbb3a974ffefa7cb05e7f","bf057bb805c5e1c0e795ac7c759d40ebbe0e9894df9be3413bbdd8d1a2fc229e","74f2bb83d1ccf390f48681be57a30c09e85b4c7a801267746e382b2386fc667e","7bac475dcdd9f7e4e9da934d32c305bc889c4ce3c8ac0ef45a93a8d670fff607","5d357e7965026197a3152fa4e990fa7a4cbaf1578a17dff920ff1a71a325e198","8acf99b1c8682276a63ea5bb68433782715892726b97e4604a415e4e56bce41c",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"3b145a2351f5cf16abf999c8d5f4481c74dffdc54ec1e9a89992e2622e1226c5","a907bf91df26df2400858ef75f749498fb5cf00062bf90a737ac3949cc07978d","d270fd4b565eda11a0a737c181892316b7a1ace06c7988d0246219c3df11db06","70caef0271088abc5f5ae7ff6d84421d35bb192b690fbaa1b2ecf2b0ef01deb6",{"version":"59a638a504490fecaacf0020b9814b6abee37edb66047eb1ab9f7c2274bf1da0","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","d1a78a3c5708807e8de3e399f91df4797c62e44b02195eefc2209b2e713e54ee","8c4c1a64db28930732033c31418f817dcb9d09d706766707ae6d38f23faf0c53","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","12a70315c8281e46d65696086dd25827408e967b305a22276ae2779fe519e0fe","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","29d613c3964ea75b2b4e0d17098245c34529282e9cc72b7e4eeb2a7b12c27cb7",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","a381f079c4804442f179d742fdb2e495fe28d67a47cac673485f75ae2e77aeca","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"bfe39beb986d2a2e512c091cbe924f1c415bc65de54de0e2f6a0dc6f84c183d9","affectsGlobalScope":true},"2af17363f8a062e3a8cd1b26030af0058b3f86e783f4fc6aa9f57247f240ebaa","06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","dfe08140492cdc135fb7fd9c4a652c05207b61a436906079b87da1d3111314bf","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","089e1f8603cbc35ab977c8dcc662eb754b82fca32ed1dfb16bd682726c2d5432","8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"82fc37849846a3a0264047621d5beb6ce2ddeb2f83bdee2c79523af3c3282d97","dbcc05590fcbbd4e46ad2d7894ddeb7962bc051ebd73fec4cfce6a57ebb8c3e9","4f17de0e83919490ca3a2ee0511cc4ec799f6d0941694a0a82d81e885028dc12","c3055d2549c5716aa37d6f4391efec94039c220e2502276e6a0806646c045d76","2d3f7e325ff23bf6594cfee6b55bb90d68de34317e47d75f1b6d15dba2298c64","56d020ec5647071b40f0f39f3de51b0217674abf4f0af34f1bc95b46a705aaaf","712c4f9eb121816debf9e053f6c47499bb9fe23aba877f20d6ef1ebc3c7e2c3a","75f05eef56a48453fac5c9ba38f8ccc85d46d97fd13bb709705b1f65e3b9985d","d24ff382723e91c6dc81a5a57abdcec6eddf77ec69e60607fa7292c8b0412b21","400db42c3a46984118bff14260d60cec580057dc1ab4c2d7310beb643e4f5935","2eeba22478ae63f28153d14990350d2354f6cfffd049c1af2747c7b8875b3986","5b87ed4064489b8a70ecf718b2187ec27f0ef333cbcd5426054a35df7b3aeb09","2f0f06b572c72ddbb93477bffea281cc48cb82e01eac140a16efeeb76b03f828","e00184d27e09b6858c7ba9cd886a57b920b70f1096d80b3a730cbcd8b1a38537","8b7da1761b6bbbe8bd0543888f2b00643c0a57f7a14422aa07978334e21718fd","c53798ac9470a51c8300581961a139dc871fd5bad2154d802fe1872c9d30c2a3","4d26609d991ff738c46fc55d8fbd4e20f0f631db79d325e822e7e98bf29cffc1","24ee106f1891f01c6003181eabd5890c5c5a2875b9658a21851d3adfb4f00499",{"version":"8b0b4cb767ea146164f67274fe05d8d640ce3979944a4342d3b40971a140f49f","signature":"2896a38b06a52126a8826799df6fa979f7b638cf770ce2b15a7e8061c0e2301d"},"4148f3fbffe29fe09579f47330f9430c082a06e35fb9050c7110ba4b691f2425","49afdedca00d22b171678e3cf9c47b7e0c1846fd4905a01d68f0145eb90add94","79583acf7af1577301a0f1aa67113806c919b648db16e0a7a46effe6b955d2ad",{"version":"86eb898db271ca6fa69b0368b3c7a4de705845caed8c84dc0f1e4d34a760d169","signature":"7f45ab8f30df8abfb4e9502a5286e59ee46e857d74703ec3fc11cc070cf3df22"},"7719a661a691dcf1a84eed5581eb223494502f579aa1e2425178b6f20ec8fcd0","8615c6f47b937a0d80fb2760ac281cb531c38df35665374f76435b2dc450133a",{"version":"1b0f8dac6fbf49e74769162eec0f44d331f0a7cfdbd7ec39b67d2d44a8b94872","signature":"de5a807aa884615fba06153829b78e14d5fcbeb32d8a7623b74b62b22e56c3fb"},{"version":"76e5dbc90a85492683f75b5e0823525011b41d1a081d65bfeca2a001c2bf6231","signature":"8cd0d629c9397533bf2d5a947450d60efb3a6573012d6c68c6bd6497881a6c29"},{"version":"fde383dd2da45bef3210bd36d9761b752731d5e65fe880d604f543af912426ba","signature":"1c4569cf54f58abd17da337513c12009394e2f0ca6d98d01adb9ae3972cd6972"},"ab8ef55576140afbd7d0436754233aadd2b9bcb0a332d4ec2404804ca04adf01","52328c3007eeaafb49547f3f173ac32ef1fe5056ed7bdec6b2161a39eeb447f8","71467c8ff9c557e4153c9fbb460664b3d31bad8ed9af4f51e034a39d5c801c12","60fd28020637ded5268c9d13cbade5784a1d030b7d067e05c1d942741ec166f0","5e70209cab63cfca3fc72eab1c97088b9f3b4f105bdaf7977da8945ad4cb65d5","d6e4523732c557513f7a7b4452140b80cd461b1dec058f02d78d081f685d75ff","895cc41fa8bfa2a3f820d79fdc76f2c9c7bbed4a673ee3955821811b805d8376","b35e8888f47905aa6eae20e112d1b960eaf8d3141b5130a3c32fa9a2fedd5dc2","6b3a5fa348f25c26b2646d9c8a873674f7527fbf5aeb04e06c291a39cf477bb9","5b1f66e422f1ef12c064bf3edbdfd9988924c03a70e507f91be001c8f067a319","9a6c9ec47a3737767df2020d92f5cf171145a51cace4e2fb22bf75ee567bd8e8","159688592fa4bb03c1fb0b559f00567a6911465c015c37ce2968711b60c11a8d",{"version":"608ea5052c1c30f73d57876a7de39c75c4d90c6a427f8f2b12ea35a38b242daf","signature":"8a21da164e516bd6af0c2fa067652af2d3417c4f6dcfa019ef4f78ac1a429d76"},{"version":"195be24fd0d48c0af2b8bc7079a3f0948a179119cc7b884337a1952ab0b89545","signature":"4024c4f7109014eeb95fa2fa573714d697290986670e563034c0e11e7eca8094"},"ea3e11eecd3acaded1fe6de44190d5398b8a2f6351ef8ef4d6c9f02c0afe6f46",{"version":"647def1a69cb410175958c7f12ddd0babdd688f3c2b38e3912eb71ce75c87b3a","signature":"15376c26a8bec393e31d447e488d12dff12ac3a5655a3c7c1c470e54d505cfd9"},{"version":"df02e24a6fd958f2a6f59f0e0885e8d9e6c8b963b9e74abefcf7dc18e7e6ccca","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"5457c1868c4e31e4b5d569c2d68c6a0b3e48196dc49b8a088d8644226df27aa5","signature":"832417177111481e09397e10f86c6733e43b585051498f85a534192f1e7a2d84"},"31736c12a2ceb0ef7372bbd1bbb825d30a92559ec1e34250e094fda5d769497a",{"version":"3a15910b7f45dfc393f010ee8f913580b08d65752800fc48147ea13445acd5f7","affectsGlobalScope":true},"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","fbca5ffaebf282ec3cdac47b0d1d4a138a8b0bb32105251a38acb235087d3318",{"version":"3f6d6465811321abc30a1e5f667feed63e5b3917b3d6c8d6645daf96c75f97ba","affectsGlobalScope":true},"22293bd6fa12747929f8dfca3ec1684a3fe08638aa18023dd286ab337e88a592","916be7d770b0ae0406be9486ac12eb9825f21514961dd050594c4b250617d5a8"],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":5,"noImplicitAny":true,"outDir":"./es","removeComments":true,"rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strictNullChecks":true,"target":9},"fileIdsList":[[98],[98,112],[98,111,112,113,115],[69,98,105],[98,111],[98,116],[98,128],[98,129],[69,98,105,118],[69,98,105,117],[98,109,110,118,119,120],[69,98,105,124,125],[54,98],[57,98],[58,63,98],[59,69,70,77,86,97,98],[59,60,69,77,98],[61,98],[62,63,70,78,98],[63,86,94,98],[64,66,69,77,98],[65,98],[66,67,98],[68,69,98],[69,98],[69,70,71,86,97,98],[69,70,71,86,89,98],[98,102],[72,77,86,97,98],[69,70,72,73,77,86,94,97,98],[72,74,86,94,97,98],[54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],[69,75,98],[76,97,98],[66,69,77,86,98],[78,98],[79,98],[57,80,98],[81,96,98,102],[82,98],[83,98],[69,84,98],[84,85,98,100],[69,86,87,88,89,98],[86,88,98],[86,87,98],[89,98],[90,98],[69,92,93,98],[92,93,98],[63,77,86,94,98],[95,98],[77,96,98],[58,72,83,97,98],[63,98],[86,98,99],[98,100],[98,101],[58,63,69,71,80,86,97,98,100,102],[86,98,103],[98,136,137,138,139,140,141,142],[98,136,137,139],[98,136,139],[69,98,133,136,137,138,139,140,141],[98,139],[98,136,142],[98,138,142],[98,143],[98,135],[98,134],[59,70,98,121,122],[98,126],[70,86,98,126,127,144],[70,98,126,127],[98,123],[63,69,70,98,109,121,122,126,127,132,145],[86,90,98],[63,70,72,79,98,122,129,146,147,148],[98,129,130],[98,105],[53,98,106,107,108],[126],[126,127],[129],[123],[69],[86]],"referencedMap":[[152,1],[153,1],[154,1],[155,1],[156,1],[157,1],[111,2],[113,1],[116,3],[115,4],[112,5],[117,6],[114,1],[129,7],[147,8],[128,1],[122,1],[120,1],[119,9],[118,10],[121,11],[110,1],[124,1],[125,1],[126,12],[54,13],[55,13],[57,14],[58,15],[59,16],[60,17],[61,18],[62,19],[63,20],[64,21],[65,22],[66,23],[67,23],[68,24],[69,25],[70,26],[71,27],[56,28],[104,1],[72,29],[73,30],[74,31],[105,32],[75,33],[76,34],[77,35],[78,36],[79,37],[80,38],[81,39],[82,40],[83,41],[84,42],[85,43],[86,44],[88,45],[87,46],[89,47],[90,48],[91,1],[92,49],[93,50],[94,51],[95,52],[96,53],[97,54],[98,55],[99,56],[100,57],[101,58],[102,59],[103,60],[143,61],[140,62],[141,63],[142,64],[138,65],[137,66],[139,67],[144,68],[133,1],[136,69],[135,70],[134,69],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[4,1],[23,1],[20,1],[21,1],[22,1],[24,1],[25,1],[26,1],[5,1],[27,1],[28,1],[29,1],[30,1],[6,1],[31,1],[32,1],[33,1],[34,1],[7,1],[35,1],[40,1],[41,1],[36,1],[37,1],[38,1],[39,1],[8,1],[45,1],[42,1],[43,1],[44,1],[46,1],[9,1],[47,1],[48,1],[49,1],[50,1],[1,1],[51,1],[52,1],[123,71],[127,72],[145,73],[150,74],[130,8],[131,75],[146,76],[132,77],[149,78],[148,79],[151,1],[107,80],[108,80],[106,80],[109,81],[53,1]],"exportedModulesMap":[[152,1],[153,1],[154,1],[155,1],[156,1],[157,1],[111,2],[113,1],[116,3],[115,4],[112,5],[117,6],[114,1],[129,7],[147,8],[128,1],[122,1],[120,1],[119,9],[118,10],[121,11],[110,1],[124,1],[125,1],[126,12],[54,13],[55,13],[57,14],[58,15],[59,16],[60,17],[61,18],[62,19],[63,20],[64,21],[65,22],[66,23],[67,23],[68,24],[69,25],[70,26],[71,27],[56,28],[104,1],[72,29],[73,30],[74,31],[105,32],[75,33],[76,34],[77,35],[78,36],[79,37],[80,38],[81,39],[82,40],[83,41],[84,42],[85,43],[86,44],[88,45],[87,46],[89,47],[90,48],[91,1],[92,49],[93,50],[94,51],[95,52],[96,53],[97,54],[98,55],[99,56],[100,57],[101,58],[102,59],[103,60],[143,61],[140,62],[141,63],[142,64],[138,65],[137,66],[139,67],[144,68],[133,1],[136,69],[135,70],[134,69],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[4,1],[23,1],[20,1],[21,1],[22,1],[24,1],[25,1],[26,1],[5,1],[27,1],[28,1],[29,1],[30,1],[6,1],[31,1],[32,1],[33,1],[34,1],[7,1],[35,1],[40,1],[41,1],[36,1],[37,1],[38,1],[39,1],[8,1],[45,1],[42,1],[43,1],[44,1],[46,1],[9,1],[47,1],[48,1],[49,1],[50,1],[1,1],[51,1],[127,82],[145,83],[150,83],[130,84],[131,85],[146,86],[132,87],[148,84],[151,1],[107,80],[108,80],[106,80],[109,81],[53,1]],"semanticDiagnosticsPerFile":[152,153,154,155,156,157,111,113,116,115,112,117,114,129,147,128,122,120,119,118,121,110,124,125,126,54,55,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,56,104,72,73,74,105,75,76,77,78,79,80,81,82,83,84,85,86,88,87,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,143,140,141,142,138,137,139,144,133,136,135,134,11,10,2,12,13,14,15,16,17,18,19,3,4,23,20,21,22,24,25,26,5,27,28,29,30,6,31,32,33,34,7,35,40,41,36,37,38,39,8,45,42,43,44,46,9,47,48,49,50,1,51,52,123,127,145,150,130,131,146,132,149,148,151,107,108,106,109,53]},"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.es2022.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.es2022.array.d.ts","./node_modules/typescript/lib/lib.es2022.error.d.ts","./node_modules/typescript/lib/lib.es2022.intl.d.ts","./node_modules/typescript/lib/lib.es2022.object.d.ts","./node_modules/typescript/lib/lib.es2022.string.d.ts","./node_modules/typescript/lib/lib.esnext.intl.d.ts","./src/cache.ts","../utilities/lib/request.d.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/test.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","../utilities/lib/gzip.d.ts","../utilities/lib/clone.d.ts","../utilities/lib/frame.d.ts","../utilities/lib/index.d.ts","../options/lib/options.d.ts","../definitions/lib/definitions/document.d.ts","../definitions/lib/definitions/ledger.d.ts","../definitions/lib/definitions/hybrid.d.ts","../definitions/node_modules/@types/events/index.d.ts","../definitions/lib/definitions/interface.d.ts","../definitions/lib/definitions/index.d.ts","../definitions/lib/index.d.ts","../options/lib/dsconnect.d.ts","../options/lib/changes.d.ts","../options/lib/cache.d.ts","../options/lib/index.d.ts","../logger/lib/index.d.ts","./src/datastore.ts","./node_modules/@types/abstract-leveldown/index.d.ts","./node_modules/@types/level-errors/index.d.ts","./node_modules/@types/levelup/index.d.ts","./src/driver.ts","../httpd/node_modules/uWebSockets.js/index.d.ts","../httpd/lib/httpd.d.ts","./src/heartbeat.ts","./src/index.ts","./src/newlinestream.ts","./node_modules/level-supports/index.d.ts","./node_modules/level-transcoder/lib/formats.d.ts","./node_modules/level-transcoder/lib/encoding.d.ts","./node_modules/level-transcoder/index.d.ts","./node_modules/abstract-level/types/abstract-sublevel.d.ts","./node_modules/abstract-level/types/abstract-snapshot.d.ts","./node_modules/abstract-level/types/interfaces.d.ts","./node_modules/abstract-level/types/abstract-chained-batch.d.ts","./node_modules/abstract-level/types/abstract-iterator.d.ts","./node_modules/abstract-level/types/abstract-level.d.ts","./node_modules/abstract-level/index.d.ts","./node_modules/classic-level/index.d.ts","./src/drivers/leveldb.ts","./src/levelme.ts","../httpd/lib/index.d.ts","./src/sse.ts","./src/selfhost.ts","./src/drivers/rocksdb.ts","./src/types/rocksdb.d.ts","../../node_modules/@types/chai/index.d.ts","../../node_modules/@types/minimatch/index.d.ts","../../node_modules/@types/minimist/index.d.ts","../../node_modules/@types/mocha/index.d.ts","../../node_modules/@types/normalize-package-data/index.d.ts","../../node_modules/@types/parse-json/index.d.ts"],"fileInfos":[{"version":"f5c28122bee592cfaf5c72ed7bcc47f453b79778ffa6e301f45d21a0970719d4","affectsGlobalScope":true},"dc47c4fa66b9b9890cf076304de2a9c5201e94b740cffdf09f87296d877d71f6","7a387c58583dfca701b6c85e0adaf43fb17d590fb16d5b2dc0a2fbd89f35c467","8a12173c586e95f4433e0c6dc446bc88346be73ffe9ca6eec7aa63c8f3dca7f9","5f4e733ced4e129482ae2186aae29fde948ab7182844c3a5a51dd346182c7b06","e6b724280c694a9f588847f754198fb96c43d805f065c3a5b28bbc9594541c84","1fc5ab7a764205c68fa10d381b08417795fc73111d6dd16b5b1ed36badb743d9","746d62152361558ea6d6115cf0da4dd10ede041d14882ede3568bce5dc4b4f1f","3eb679a56cab01203a1ba7edeade937f6a2a4c718513b2cd930b579807fa9359",{"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":"34478567f8a80171f88f2f30808beb7da15eac0538ae91282dd33dce928d98ed","affectsGlobalScope":true},{"version":"6ea9ab679ea030cf46c16a711a316078e9e02619ebaf07a7fcd16964aba88f2d","affectsGlobalScope":true},{"version":"6bda95ea27a59a276e46043b7065b55bd4b316c25e70e29b572958fa77565d43","affectsGlobalScope":true},{"version":"aedb8de1abb2ff1095c153854a6df7deae4a5709c37297f9d6e9948b6806fa66","affectsGlobalScope":true},{"version":"11ffe3c281f375fff9ffdde8bbec7669b4dd671905509079f866f2354a788064","affectsGlobalScope":true},{"version":"c37f8a49593a0030eecb51bbfa270e709bec9d79a6cc3bb851ef348d4e6b26f8","affectsGlobalScope":true},{"version":"3b9818c476ffef8f5136f01f29a2afc07cc1c9564c5de15de428f5886d837109","signature":"9ad303fb779185d06efaf7bc8ac7a51046d9f3ddf2bf0e6a68e18d86e4712bab"},"37c28fc69aec59b586c34fad9645c2ec27287260d60e1fa03fd31f19c3dbfa5f","9122ed7070e054b73ebab37c2373a196def2d90e7d1a9a7fcd9d46b0e51fae78","a69c09dbea52352f479d3e7ac949fde3d17b195abe90b045d619f747b38d6d1a",{"version":"77f0b5c6a193a699c9f7d7fb0578e64e562d271afa740783665d2a827104a873","affectsGlobalScope":true},"21a167fec8f933752fb8157f06d28fab6817af3ad9b0bdb1908a10762391eab9",{"version":"3e4624c306340ad303cc536a07004e81336c3f088308a9e4a9f4c957a3cda2fd","affectsGlobalScope":true},"0c0cee62cb619aed81133b904f644515ba3064487002a7da83fd8aa07b1b4abd","5a94487653355b56018122d92392beb2e5f4a6c63ba5cef83bbe1c99775ef713",{"version":"d5135ad93b33adcce80b18f8065087934cdc1730d63db58562edcf017e1aad9b","affectsGlobalScope":true},"82408ed3e959ddc60d3e9904481b5a8dc16469928257af22a3f7d1a3bc7fd8c4","025fc13211ed47d2798269017af3ec869122a050d5431a6ad3c1997900e65c58","bb9c4ffa5e6290c6980b63c815cdd1625876dadb2efaf77edbe82984be93e55e","75ecef44f126e2ae018b4abbd85b6e8a2e2ba1638ebec56cc64274643ce3567b","f30bb836526d930a74593f7b0f5c1c46d10856415a8f69e5e2fc3db80371e362","14b5aa23c5d0ae1907bc696ac7b6915d88f7d85799cc0dc2dcf98fbce2c5a67c","5c439dafdc09abe4d6c260a96b822fa0ba5be7203c71a63ab1f1423cd9e838ea",{"version":"249a2b90439cdfd51709539fbfa4dfe0791cbae6efce1e9b327ba8f8cd703f49","affectsGlobalScope":true},"40b991dc3365179e1365643589e168d7ea0588b4dd5bbb3a974ffefa7cb05e7f","bf057bb805c5e1c0e795ac7c759d40ebbe0e9894df9be3413bbdd8d1a2fc229e","74f2bb83d1ccf390f48681be57a30c09e85b4c7a801267746e382b2386fc667e","7bac475dcdd9f7e4e9da934d32c305bc889c4ce3c8ac0ef45a93a8d670fff607","5d357e7965026197a3152fa4e990fa7a4cbaf1578a17dff920ff1a71a325e198","8acf99b1c8682276a63ea5bb68433782715892726b97e4604a415e4e56bce41c",{"version":"e8b18c6385ff784228a6f369694fcf1a6b475355ba89090a88de13587a9391d5","affectsGlobalScope":true},"3b145a2351f5cf16abf999c8d5f4481c74dffdc54ec1e9a89992e2622e1226c5","a907bf91df26df2400858ef75f749498fb5cf00062bf90a737ac3949cc07978d","d270fd4b565eda11a0a737c181892316b7a1ace06c7988d0246219c3df11db06","70caef0271088abc5f5ae7ff6d84421d35bb192b690fbaa1b2ecf2b0ef01deb6",{"version":"59a638a504490fecaacf0020b9814b6abee37edb66047eb1ab9f7c2274bf1da0","affectsGlobalScope":true},"5153a2fd150e46ce57bb3f8db1318d33f6ad3261ed70ceeff92281c0608c74a3","d1a78a3c5708807e8de3e399f91df4797c62e44b02195eefc2209b2e713e54ee","8c4c1a64db28930732033c31418f817dcb9d09d706766707ae6d38f23faf0c53","25846d43937c672bab7e8195f3d881f93495df712ee901860effc109918938cc","12a70315c8281e46d65696086dd25827408e967b305a22276ae2779fe519e0fe","1b952304137851e45bc009785de89ada562d9376177c97e37702e39e60c2f1ff",{"version":"806ef4cac3b3d9fa4a48d849c8e084d7c72fcd7b16d76e06049a9ed742ff79c0","affectsGlobalScope":true},"44b8b584a338b190a59f4f6929d072431950c7bd92ec2694821c11bce180c8a5","23b89798789dffbd437c0c423f5d02d11f9736aea73d6abf16db4f812ff36eda","29d613c3964ea75b2b4e0d17098245c34529282e9cc72b7e4eeb2a7b12c27cb7",{"version":"970a90f76d4d219ad60819d61f5994514087ba94c985647a3474a5a3d12714ed","affectsGlobalScope":true},"664d8f2d59164f2e08c543981453893bc7e003e4dfd29651ce09db13e9457980","a381f079c4804442f179d742fdb2e495fe28d67a47cac673485f75ae2e77aeca","3c13ef48634e7b5012fcf7e8fce7496352c2d779a7201389ca96a2a81ee4314d","5d0a25ec910fa36595f85a67ac992d7a53dd4064a1ba6aea1c9f14ab73a023f2",{"version":"bfe39beb986d2a2e512c091cbe924f1c415bc65de54de0e2f6a0dc6f84c183d9","affectsGlobalScope":true},"2af17363f8a062e3a8cd1b26030af0058b3f86e783f4fc6aa9f57247f240ebaa","06d7c42d256f0ce6afe1b2b6cfbc97ab391f29dadb00dd0ae8e8f23f5bc916c3","dfe08140492cdc135fb7fd9c4a652c05207b61a436906079b87da1d3111314bf","e59a892d87e72733e2a9ca21611b9beb52977be2696c7ba4b216cbbb9a48f5aa","089e1f8603cbc35ab977c8dcc662eb754b82fca32ed1dfb16bd682726c2d5432","8a300fa9b698845a1f9c41ecbe2c5966634582a8e2020d51abcace9b55aa959e",{"version":"ab9b9a36e5284fd8d3bf2f7d5fcbc60052f25f27e4d20954782099282c60d23e","affectsGlobalScope":true},"82fc37849846a3a0264047621d5beb6ce2ddeb2f83bdee2c79523af3c3282d97","dbcc05590fcbbd4e46ad2d7894ddeb7962bc051ebd73fec4cfce6a57ebb8c3e9","4f17de0e83919490ca3a2ee0511cc4ec799f6d0941694a0a82d81e885028dc12","c3055d2549c5716aa37d6f4391efec94039c220e2502276e6a0806646c045d76","2d3f7e325ff23bf6594cfee6b55bb90d68de34317e47d75f1b6d15dba2298c64","56d020ec5647071b40f0f39f3de51b0217674abf4f0af34f1bc95b46a705aaaf","712c4f9eb121816debf9e053f6c47499bb9fe23aba877f20d6ef1ebc3c7e2c3a","75f05eef56a48453fac5c9ba38f8ccc85d46d97fd13bb709705b1f65e3b9985d","d24ff382723e91c6dc81a5a57abdcec6eddf77ec69e60607fa7292c8b0412b21","400db42c3a46984118bff14260d60cec580057dc1ab4c2d7310beb643e4f5935","2eeba22478ae63f28153d14990350d2354f6cfffd049c1af2747c7b8875b3986","5b87ed4064489b8a70ecf718b2187ec27f0ef333cbcd5426054a35df7b3aeb09","2f0f06b572c72ddbb93477bffea281cc48cb82e01eac140a16efeeb76b03f828","dfd129ad6be8104a795a2eccef583c9ff876d7a44ba585efd8b1d937dcefc4f4","8b7da1761b6bbbe8bd0543888f2b00643c0a57f7a14422aa07978334e21718fd","c53798ac9470a51c8300581961a139dc871fd5bad2154d802fe1872c9d30c2a3","4d26609d991ff738c46fc55d8fbd4e20f0f631db79d325e822e7e98bf29cffc1","24ee106f1891f01c6003181eabd5890c5c5a2875b9658a21851d3adfb4f00499",{"version":"8b0b4cb767ea146164f67274fe05d8d640ce3979944a4342d3b40971a140f49f","signature":"2896a38b06a52126a8826799df6fa979f7b638cf770ce2b15a7e8061c0e2301d"},"4148f3fbffe29fe09579f47330f9430c082a06e35fb9050c7110ba4b691f2425","49afdedca00d22b171678e3cf9c47b7e0c1846fd4905a01d68f0145eb90add94","79583acf7af1577301a0f1aa67113806c919b648db16e0a7a46effe6b955d2ad",{"version":"86eb898db271ca6fa69b0368b3c7a4de705845caed8c84dc0f1e4d34a760d169","signature":"7f45ab8f30df8abfb4e9502a5286e59ee46e857d74703ec3fc11cc070cf3df22"},"7719a661a691dcf1a84eed5581eb223494502f579aa1e2425178b6f20ec8fcd0","8615c6f47b937a0d80fb2760ac281cb531c38df35665374f76435b2dc450133a",{"version":"1b0f8dac6fbf49e74769162eec0f44d331f0a7cfdbd7ec39b67d2d44a8b94872","signature":"de5a807aa884615fba06153829b78e14d5fcbeb32d8a7623b74b62b22e56c3fb"},{"version":"76e5dbc90a85492683f75b5e0823525011b41d1a081d65bfeca2a001c2bf6231","signature":"8cd0d629c9397533bf2d5a947450d60efb3a6573012d6c68c6bd6497881a6c29"},{"version":"fde383dd2da45bef3210bd36d9761b752731d5e65fe880d604f543af912426ba","signature":"1c4569cf54f58abd17da337513c12009394e2f0ca6d98d01adb9ae3972cd6972"},"ab8ef55576140afbd7d0436754233aadd2b9bcb0a332d4ec2404804ca04adf01","52328c3007eeaafb49547f3f173ac32ef1fe5056ed7bdec6b2161a39eeb447f8","71467c8ff9c557e4153c9fbb460664b3d31bad8ed9af4f51e034a39d5c801c12","60fd28020637ded5268c9d13cbade5784a1d030b7d067e05c1d942741ec166f0","5e70209cab63cfca3fc72eab1c97088b9f3b4f105bdaf7977da8945ad4cb65d5","d6e4523732c557513f7a7b4452140b80cd461b1dec058f02d78d081f685d75ff","895cc41fa8bfa2a3f820d79fdc76f2c9c7bbed4a673ee3955821811b805d8376","b35e8888f47905aa6eae20e112d1b960eaf8d3141b5130a3c32fa9a2fedd5dc2","6b3a5fa348f25c26b2646d9c8a873674f7527fbf5aeb04e06c291a39cf477bb9","5b1f66e422f1ef12c064bf3edbdfd9988924c03a70e507f91be001c8f067a319","9a6c9ec47a3737767df2020d92f5cf171145a51cace4e2fb22bf75ee567bd8e8","159688592fa4bb03c1fb0b559f00567a6911465c015c37ce2968711b60c11a8d",{"version":"608ea5052c1c30f73d57876a7de39c75c4d90c6a427f8f2b12ea35a38b242daf","signature":"8a21da164e516bd6af0c2fa067652af2d3417c4f6dcfa019ef4f78ac1a429d76"},{"version":"195be24fd0d48c0af2b8bc7079a3f0948a179119cc7b884337a1952ab0b89545","signature":"4024c4f7109014eeb95fa2fa573714d697290986670e563034c0e11e7eca8094"},"ea3e11eecd3acaded1fe6de44190d5398b8a2f6351ef8ef4d6c9f02c0afe6f46",{"version":"647def1a69cb410175958c7f12ddd0babdd688f3c2b38e3912eb71ce75c87b3a","signature":"15376c26a8bec393e31d447e488d12dff12ac3a5655a3c7c1c470e54d505cfd9"},{"version":"9e8affd16a90c198d4b80d3ab4162e07ed8004b037bea34a174b02dbd2765f81","signature":"8e609bb71c20b858c77f0e9f90bb1319db8477b13f9f965f1a1e18524bf50881"},{"version":"5457c1868c4e31e4b5d569c2d68c6a0b3e48196dc49b8a088d8644226df27aa5","signature":"832417177111481e09397e10f86c6733e43b585051498f85a534192f1e7a2d84"},"31736c12a2ceb0ef7372bbd1bbb825d30a92559ec1e34250e094fda5d769497a",{"version":"3a15910b7f45dfc393f010ee8f913580b08d65752800fc48147ea13445acd5f7","affectsGlobalScope":true},"8841e2aa774b89bd23302dede20663306dc1b9902431ac64b24be8b8d0e3f649","fbca5ffaebf282ec3cdac47b0d1d4a138a8b0bb32105251a38acb235087d3318",{"version":"3f6d6465811321abc30a1e5f667feed63e5b3917b3d6c8d6645daf96c75f97ba","affectsGlobalScope":true},"22293bd6fa12747929f8dfca3ec1684a3fe08638aa18023dd286ab337e88a592","916be7d770b0ae0406be9486ac12eb9825f21514961dd050594c4b250617d5a8"],"options":{"composite":true,"declaration":true,"declarationMap":true,"esModuleInterop":true,"module":5,"noImplicitAny":true,"outDir":"./es","removeComments":true,"rootDir":"./src","skipLibCheck":true,"sourceMap":true,"strictNullChecks":true,"target":9},"fileIdsList":[[98],[98,112],[98,111,112,113,115],[69,98,105],[98,111],[98,116],[98,128],[98,129],[69,98,105,118],[69,98,105,117],[98,109,110,118,119,120],[69,98,105,124,125],[54,98],[57,98],[58,63,98],[59,69,70,77,86,97,98],[59,60,69,77,98],[61,98],[62,63,70,78,98],[63,86,94,98],[64,66,69,77,98],[65,98],[66,67,98],[68,69,98],[69,98],[69,70,71,86,97,98],[69,70,71,86,89,98],[98,102],[72,77,86,97,98],[69,70,72,73,77,86,94,97,98],[72,74,86,94,97,98],[54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,104],[69,75,98],[76,97,98],[66,69,77,86,98],[78,98],[79,98],[57,80,98],[81,96,98,102],[82,98],[83,98],[69,84,98],[84,85,98,100],[69,86,87,88,89,98],[86,88,98],[86,87,98],[89,98],[90,98],[69,92,93,98],[92,93,98],[63,77,86,94,98],[95,98],[77,96,98],[58,72,83,97,98],[63,98],[86,98,99],[98,100],[98,101],[58,63,69,71,80,86,97,98,100,102],[86,98,103],[98,136,137,138,139,140,141,142],[98,136,137,139],[98,136,139],[69,98,133,136,137,138,139,140,141],[98,139],[98,136,142],[98,138,142],[98,143],[98,135],[98,134],[59,70,98,121,122],[98,126],[70,86,98,126,127,144],[70,98,126,127],[98,123],[63,69,70,98,109,121,122,126,127,132,145],[86,90,98],[63,70,72,79,98,122,129,146,147,148],[98,129,130],[98,105],[53,98,106,107,108],[126],[126,127],[129],[123],[69],[86]],"referencedMap":[[152,1],[153,1],[154,1],[155,1],[156,1],[157,1],[111,2],[113,1],[116,3],[115,4],[112,5],[117,6],[114,1],[129,7],[147,8],[128,1],[122,1],[120,1],[119,9],[118,10],[121,11],[110,1],[124,1],[125,1],[126,12],[54,13],[55,13],[57,14],[58,15],[59,16],[60,17],[61,18],[62,19],[63,20],[64,21],[65,22],[66,23],[67,23],[68,24],[69,25],[70,26],[71,27],[56,28],[104,1],[72,29],[73,30],[74,31],[105,32],[75,33],[76,34],[77,35],[78,36],[79,37],[80,38],[81,39],[82,40],[83,41],[84,42],[85,43],[86,44],[88,45],[87,46],[89,47],[90,48],[91,1],[92,49],[93,50],[94,51],[95,52],[96,53],[97,54],[98,55],[99,56],[100,57],[101,58],[102,59],[103,60],[143,61],[140,62],[141,63],[142,64],[138,65],[137,66],[139,67],[144,68],[133,1],[136,69],[135,70],[134,69],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[4,1],[23,1],[20,1],[21,1],[22,1],[24,1],[25,1],[26,1],[5,1],[27,1],[28,1],[29,1],[30,1],[6,1],[31,1],[32,1],[33,1],[34,1],[7,1],[35,1],[40,1],[41,1],[36,1],[37,1],[38,1],[39,1],[8,1],[45,1],[42,1],[43,1],[44,1],[46,1],[9,1],[47,1],[48,1],[49,1],[50,1],[1,1],[51,1],[52,1],[123,71],[127,72],[145,73],[150,74],[130,8],[131,75],[146,76],[132,77],[149,78],[148,79],[151,1],[107,80],[108,80],[106,80],[109,81],[53,1]],"exportedModulesMap":[[152,1],[153,1],[154,1],[155,1],[156,1],[157,1],[111,2],[113,1],[116,3],[115,4],[112,5],[117,6],[114,1],[129,7],[147,8],[128,1],[122,1],[120,1],[119,9],[118,10],[121,11],[110,1],[124,1],[125,1],[126,12],[54,13],[55,13],[57,14],[58,15],[59,16],[60,17],[61,18],[62,19],[63,20],[64,21],[65,22],[66,23],[67,23],[68,24],[69,25],[70,26],[71,27],[56,28],[104,1],[72,29],[73,30],[74,31],[105,32],[75,33],[76,34],[77,35],[78,36],[79,37],[80,38],[81,39],[82,40],[83,41],[84,42],[85,43],[86,44],[88,45],[87,46],[89,47],[90,48],[91,1],[92,49],[93,50],[94,51],[95,52],[96,53],[97,54],[98,55],[99,56],[100,57],[101,58],[102,59],[103,60],[143,61],[140,62],[141,63],[142,64],[138,65],[137,66],[139,67],[144,68],[133,1],[136,69],[135,70],[134,69],[11,1],[10,1],[2,1],[12,1],[13,1],[14,1],[15,1],[16,1],[17,1],[18,1],[19,1],[3,1],[4,1],[23,1],[20,1],[21,1],[22,1],[24,1],[25,1],[26,1],[5,1],[27,1],[28,1],[29,1],[30,1],[6,1],[31,1],[32,1],[33,1],[34,1],[7,1],[35,1],[40,1],[41,1],[36,1],[37,1],[38,1],[39,1],[8,1],[45,1],[42,1],[43,1],[44,1],[46,1],[9,1],[47,1],[48,1],[49,1],[50,1],[1,1],[51,1],[127,82],[145,83],[150,83],[130,84],[131,85],[146,86],[132,87],[148,84],[151,1],[107,80],[108,80],[106,80],[109,81],[53,1]],"semanticDiagnosticsPerFile":[152,153,154,155,156,157,111,113,116,115,112,117,114,129,147,128,122,120,119,118,121,110,124,125,126,54,55,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,56,104,72,73,74,105,75,76,77,78,79,80,81,82,83,84,85,86,88,87,89,90,91,92,93,94,95,96,97,98,99,100,101,102,103,143,140,141,142,138,137,139,144,133,136,135,134,11,10,2,12,13,14,15,16,17,18,19,3,4,23,20,21,22,24,25,26,5,27,28,29,30,6,31,32,33,34,7,35,40,41,36,37,38,39,8,45,42,43,44,46,9,47,48,49,50,1,51,52,123,127,145,150,130,131,146,132,149,148,151,107,108,106,109,53]},"version":"4.7.3"}