tnp-helpers 16.100.21 → 16.100.23

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.
Files changed (111) hide show
  1. package/assets/shared/shared_folder_info.txt +1 -1
  2. package/browser/esm2022/lib/base/base-db.mjs +1 -19
  3. package/browser/esm2022/lib/base/base-project.mjs +2 -1
  4. package/browser/esm2022/lib/base/config-database.mjs +2 -1
  5. package/browser/esm2022/lib/base/project-database.mjs +1 -1
  6. package/browser/fesm2022/tnp-helpers.mjs +2 -18
  7. package/browser/fesm2022/tnp-helpers.mjs.map +1 -1
  8. package/browser/lib/base/base-db.d.ts +0 -2
  9. package/client/esm2022/lib/base/base-db.mjs +1 -19
  10. package/client/esm2022/lib/base/base-project.mjs +2 -1
  11. package/client/esm2022/lib/base/config-database.mjs +2 -1
  12. package/client/esm2022/lib/base/project-database.mjs +1 -1
  13. package/client/fesm2022/tnp-helpers.mjs +2 -18
  14. package/client/fesm2022/tnp-helpers.mjs.map +1 -1
  15. package/client/lib/base/base-db.d.ts +0 -2
  16. package/client/package.json +4 -4
  17. package/lib/base/base-command-line.backend.d.ts +1 -0
  18. package/lib/base/base-command-line.backend.js +4 -0
  19. package/lib/base/base-command-line.backend.js.map +1 -1
  20. package/lib/base/base-db.js +1 -1
  21. package/lib/base/base-db.js.map +1 -1
  22. package/lib/base/base-project.js +1 -1
  23. package/lib/base/base-project.js.map +1 -1
  24. package/lib/base/base-start-config.backend.js +3 -0
  25. package/lib/base/base-start-config.backend.js.map +1 -1
  26. package/lib/base/command-line-feature.backend.js +17 -24
  27. package/lib/base/command-line-feature.backend.js.map +1 -1
  28. package/lib/base/config-database.js.map +1 -1
  29. package/lib/base/project-database.js.map +1 -1
  30. package/lib/base/translate.js +2 -0
  31. package/lib/base/translate.js.map +1 -1
  32. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js +2 -0
  33. package/lib/helpers/for-backend/ts-code/ts-code-extractor.js.map +1 -1
  34. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.d.ts +0 -3
  35. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js +2 -4
  36. package/lib/helpers/for-backend/ts-code/ts-code-modifier.backend.js.map +1 -1
  37. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js +2 -0
  38. package/lib/helpers/for-backend/ts-code/ts-import-export-extractor.js.map +1 -1
  39. package/lib/helpers/for-browser/angular.helper.js +3 -3
  40. package/lib/lowdb/adapters/Memory.js +1 -0
  41. package/lib/lowdb/adapters/Memory.js.map +1 -1
  42. package/lib/lowdb/adapters/browser/LocalStorage.js +2 -0
  43. package/lib/lowdb/adapters/browser/LocalStorage.js.map +1 -1
  44. package/lib/lowdb/adapters/browser/SessionStorage.js +2 -0
  45. package/lib/lowdb/adapters/browser/SessionStorage.js.map +1 -1
  46. package/lib/lowdb/adapters/browser/WebStorage.js +1 -0
  47. package/lib/lowdb/adapters/browser/WebStorage.js.map +1 -1
  48. package/lib/lowdb/adapters/node/DataFile.js +1 -0
  49. package/lib/lowdb/adapters/node/DataFile.js.map +1 -1
  50. package/lib/lowdb/adapters/node/JSONFile.js +1 -0
  51. package/lib/lowdb/adapters/node/JSONFile.js.map +1 -1
  52. package/lib/lowdb/adapters/node/TextFile.js +2 -0
  53. package/lib/lowdb/adapters/node/TextFile.js.map +1 -1
  54. package/lib/lowdb/adapters/node/steno.js +2 -0
  55. package/lib/lowdb/adapters/node/steno.js.map +1 -1
  56. package/lib/lowdb/browser.js +2 -0
  57. package/lib/lowdb/browser.js.map +1 -1
  58. package/lib/lowdb/core/Low.js +1 -0
  59. package/lib/lowdb/core/Low.js.map +1 -1
  60. package/lib/lowdb/examples/browser.js +6 -7
  61. package/lib/lowdb/examples/browser.js.map +1 -1
  62. package/lib/lowdb/examples/cli.d.ts +0 -1
  63. package/lib/lowdb/examples/cli.js +8 -10
  64. package/lib/lowdb/examples/cli.js.map +1 -1
  65. package/lib/lowdb/examples/in-memory.d.ts +0 -8
  66. package/lib/lowdb/examples/in-memory.js +21 -13
  67. package/lib/lowdb/examples/in-memory.js.map +1 -1
  68. package/lib/lowdb/index.js +2 -0
  69. package/lib/lowdb/index.js.map +1 -1
  70. package/lib/lowdb/node.js +2 -0
  71. package/lib/lowdb/node.js.map +1 -1
  72. package/lib/lowdb/presets/browser.js +2 -0
  73. package/lib/lowdb/presets/browser.js.map +1 -1
  74. package/lib/lowdb/presets/node.js +1 -0
  75. package/lib/lowdb/presets/node.js.map +1 -1
  76. package/lib/old/base-component.js +3 -3
  77. package/lib/old/base-formly-component.js +3 -3
  78. package/lib/old/dual-component-ctrl.js +3 -3
  79. package/package.json +2 -2
  80. package/tmp-environment.json +8 -8
  81. package/websql/esm2022/lib/base/base-db.mjs +1 -19
  82. package/websql/esm2022/lib/base/base-project.mjs +2 -1
  83. package/websql/esm2022/lib/base/config-database.mjs +2 -1
  84. package/websql/esm2022/lib/base/project-database.mjs +1 -1
  85. package/websql/fesm2022/tnp-helpers.mjs +2 -18
  86. package/websql/fesm2022/tnp-helpers.mjs.map +1 -1
  87. package/websql/lib/base/base-db.d.ts +0 -2
  88. package/browser/esm2022/lib/base/translate.mjs +0 -42
  89. package/browser/esm2022/lib/lowdb/adapters/Memory.mjs +0 -26
  90. package/browser/esm2022/lib/lowdb/core/Low.mjs +0 -49
  91. package/browser/esm2022/lib/lowdb/index.mjs +0 -4
  92. package/browser/lib/base/translate.d.ts +0 -2
  93. package/browser/lib/lowdb/adapters/Memory.d.ts +0 -12
  94. package/browser/lib/lowdb/core/Low.d.ts +0 -25
  95. package/browser/lib/lowdb/index.d.ts +0 -3
  96. package/client/esm2022/lib/base/translate.mjs +0 -42
  97. package/client/esm2022/lib/lowdb/adapters/Memory.mjs +0 -26
  98. package/client/esm2022/lib/lowdb/core/Low.mjs +0 -49
  99. package/client/esm2022/lib/lowdb/index.mjs +0 -4
  100. package/client/lib/base/translate.d.ts +0 -2
  101. package/client/lib/lowdb/adapters/Memory.d.ts +0 -12
  102. package/client/lib/lowdb/core/Low.d.ts +0 -25
  103. package/client/lib/lowdb/index.d.ts +0 -3
  104. package/websql/esm2022/lib/base/translate.mjs +0 -42
  105. package/websql/esm2022/lib/lowdb/adapters/Memory.mjs +0 -26
  106. package/websql/esm2022/lib/lowdb/core/Low.mjs +0 -49
  107. package/websql/esm2022/lib/lowdb/index.mjs +0 -4
  108. package/websql/lib/base/translate.d.ts +0 -2
  109. package/websql/lib/lowdb/adapters/Memory.d.ts +0 -12
  110. package/websql/lib/lowdb/core/Low.d.ts +0 -25
  111. package/websql/lib/lowdb/index.d.ts +0 -3
@@ -1,6 +1,5 @@
1
1
  // @ts-nocheck
2
2
  import type { BaseProjectResolver } from "./base-project-resolver";
3
- import { Low } from "../lowdb";
4
3
  export declare class BaseDb<DB extends object> {
5
4
  private ins;
6
5
  private dbName;
@@ -8,5 +7,4 @@ export declare class BaseDb<DB extends object> {
8
7
  constructor(ins: BaseProjectResolver, dbName: string, defaultDb: DB);
9
8
  get isUnsingDB(): boolean;
10
9
  get projectsDbLocation(): any;
11
- useDB(): Promise<Low<DB>>;
12
10
  }
@@ -1,42 +0,0 @@
1
- // @ts-ignore
2
- var iso = { aar: "aa", abk: "ab", afr: "af", aka: "ak", alb: "sq", amh: "am", ara: "ar", arg: "an", arm: "hy", asm: "as", ava: "av", ave: "ae", aym: "ay", aze: "az", bak: "ba", bam: "bm", baq: "eu", bel: "be", ben: "bn", bih: "bh", bis: "bi", bos: "bs", bre: "br", bul: "bg", bur: "my", cat: "ca", cha: "ch", che: "ce", chi: "zh", chu: "cu", chv: "cv", cor: "kw", cos: "co", cre: "cr", cze: "cs", dan: "da", div: "dv", dut: "nl", dzo: "dz", eng: "en", epo: "eo", est: "et", ewe: "ee", fao: "fo", fij: "fj", fin: "fi", fre: "fr", fry: "fy", ful: "ff", geo: "ka", ger: "de", gla: "gd", gle: "ga", glg: "gl", glv: "gv", gre: "el", grn: "gn", guj: "gu", hat: "ht", hau: "ha", heb: "he", her: "hz", hin: "hi", hmo: "ho", hrv: "hr", hun: "hu", ibo: "ig", ice: "is", ido: "io", iii: "ii", iku: "iu", ile: "ie", ina: "ia", ind: "id", ipk: "ik", ita: "it", jav: "jv", jpn: "ja", kal: "kl", kan: "kn", kas: "ks", kau: "kr", kaz: "kk", khm: "km", kik: "ki", kin: "rw", kir: "ky", kom: "kv", kon: "kg", kor: "ko", kua: "kj", kur: "ku", lao: "lo", lat: "la", lav: "lv", lim: "li", lin: "ln", lit: "lt", ltz: "lb", lub: "lu", lug: "lg", mac: "mk", mah: "mh", mal: "ml", mao: "mi", mar: "mr", may: "ms", mlg: "mg", mlt: "mt", mon: "mn", nau: "na", nav: "nv", nbl: "nr", nde: "nd", ndo: "ng", nep: "ne", nno: "nn", nob: "nb", nor: "no", nya: "ny", oci: "oc", oji: "oj", ori: "or", orm: "om", oss: "os", pan: "pa", per: "fa", pli: "pi", pol: "pl", por: "pt", pus: "ps", que: "qu", roh: "rm", rum: "ro", run: "rn", rus: "ru", sag: "sg", san: "sa", sin: "si", slo: "sk", slv: "sl", sme: "se", smo: "sm", sna: "sn", snd: "sd", som: "so", sot: "st", spa: "es", srd: "sc", srp: "sr", ssw: "ss", sun: "su", swa: "sw", swe: "sv", tah: "ty", tam: "ta", tat: "tt", tel: "te", tgk: "tg", tgl: "tl", tha: "th", tib: "bo", tir: "ti", ton: "to", tsn: "tn", tso: "ts", tuk: "tk", tur: "tr", twi: "tw", uig: "ug", ukr: "uk", urd: "ur", uzb: "uz", ven: "ve", vie: "vi", vol: "vo", wel: "cy", wln: "wa", wol: "wo", xho: "xh", yid: "yi", yor: "yo", zha: "za", zul: "zu" }, names = { afar: "aa", abkhazian: "ab", afrikaans: "af", akan: "ak", albanian: "sq", amharic: "am", arabic: "ar", aragonese: "an", armenian: "hy", assamese: "as", avaric: "av", avestan: "ae", aymara: "ay", azerbaijani: "az", bashkir: "ba", bambara: "bm", basque: "eu", belarusian: "be", bengali: "bn", "bihari languages": "bh", bislama: "bi", tibetan: "bo", bosnian: "bs", breton: "br", bulgarian: "bg", burmese: "my", catalan: "ca", valencian: "ca", czech: "cs", chamorro: "ch", chechen: "ce", chinese: "zh", "church slavic": "cu", "old slavonic": "cu", "church slavonic": "cu", "old bulgarian": "cu", "old church slavonic": "cu", chuvash: "cv", cornish: "kw", corsican: "co", cree: "cr", welsh: "cy", danish: "da", german: "de", divehi: "dv", dhivehi: "dv", maldivian: "dv", dutch: "nl", flemish: "nl", dzongkha: "dz", greek: "el", english: "en", esperanto: "eo", estonian: "et", ewe: "ee", faroese: "fo", persian: "fa", fijian: "fj", finnish: "fi", french: "fr", "western frisian": "fy", fulah: "ff", georgian: "ka", gaelic: "gd", "scottish gaelic": "gd", irish: "ga", galician: "gl", manx: "gv", guarani: "gn", gujarati: "gu", haitian: "ht", "haitian creole": "ht", hausa: "ha", hebrew: "he", herero: "hz", hindi: "hi", "hiri motu": "ho", croatian: "hr", hungarian: "hu", igbo: "ig", icelandic: "is", ido: "io", "sichuan yi": "ii", nuosu: "ii", inuktitut: "iu", interlingue: "ie", occidental: "ie", interlingua: "ia", indonesian: "id", inupiaq: "ik", italian: "it", javanese: "jv", japanese: "ja", kalaallisut: "kl", greenlandic: "kl", kannada: "kn", kashmiri: "ks", kanuri: "kr", kazakh: "kk", "central khmer": "km", kikuyu: "ki", gikuyu: "ki", kinyarwanda: "rw", kirghiz: "ky", kyrgyz: "ky", komi: "kv", kongo: "kg", korean: "ko", kuanyama: "kj", kwanyama: "kj", kurdish: "ku", lao: "lo", latin: "la", latvian: "lv", limburgan: "li", limburger: "li", limburgish: "li", lingala: "ln", lithuanian: "lt", luxembourgish: "lb", letzeburgesch: "lb", "luba-katanga": "lu", ganda: "lg", macedonian: "mk", marshallese: "mh", malayalam: "ml", maori: "mi", marathi: "mr", malay: "ms", malagasy: "mg", maltese: "mt", mongolian: "mn", nauru: "na", navajo: "nv", navaho: "nv", "ndebele, south": "nr", "south ndebele": "nr", "ndebele, north": "nd", "north ndebele": "nd", ndonga: "ng", nepali: "ne", "norwegian nynorsk": "nn", "nynorsk, norwegian": "nn", "norwegian bokmål": "nb", "bokmål, norwegian": "nb", norwegian: "no", chichewa: "ny", chewa: "ny", nyanja: "ny", occitan: "oc", ojibwa: "oj", oriya: "or", oromo: "om", ossetian: "os", ossetic: "os", panjabi: "pa", punjabi: "pa", pali: "pi", polish: "pl", portuguese: "pt", pushto: "ps", pashto: "ps", quechua: "qu", romansh: "rm", romanian: "ro", moldavian: "ro", moldovan: "ro", rundi: "rn", russian: "ru", sango: "sg", sanskrit: "sa", sinhala: "si", sinhalese: "si", slovak: "sk", slovenian: "sl", "northern sami": "se", samoan: "sm", shona: "sn", sindhi: "sd", somali: "so", "sotho, southern": "st", spanish: "es", castilian: "es", sardinian: "sc", serbian: "sr", swati: "ss", sundanese: "su", swahili: "sw", swedish: "sv", tahitian: "ty", tamil: "ta", tatar: "tt", telugu: "te", tajik: "tg", tagalog: "tl", thai: "th", tigrinya: "ti", tonga: "to", tswana: "tn", tsonga: "ts", turkmen: "tk", turkish: "tr", twi: "tw", uighur: "ug", uyghur: "ug", ukrainian: "uk", urdu: "ur", uzbek: "uz", venda: "ve", vietnamese: "vi", "volapük": "vo", walloon: "wa", wolof: "wo", xhosa: "xh", yiddish: "yi", yoruba: "yo", zhuang: "za", chuang: "za", zulu: "zu" };
3
- // @ts-ignore
4
- const isoKeys = Object.values(iso).sort();
5
- var languages = e => { if ("string" != typeof e)
6
- throw new Error('The "language" must be a string, received ' + typeof e); if (e.length > 100)
7
- throw new Error(`The "language" is too long at ${e.length} characters`); if (e = e.toLowerCase(), e = names[e] || iso[e] || e, !isoKeys.includes(e))
8
- throw new Error(`The language "${e}" is not part of the ISO 639-1`); return e; };
9
- function Cache() { var e = Object.create(null); function a(a) { delete e[a]; } this.set = function (n, i, r) { if (void 0 !== r && ("number" != typeof r || isNaN(r) || r <= 0))
10
- throw new Error("Cache timeout must be a positive number"); var t = e[n]; t && clearTimeout(t.timeout); var o = { value: i, expire: r + Date.now() }; return isNaN(o.expire) || (o.timeout = setTimeout((() => a(n)), r)), e[n] = o, i; }, this.del = function (n) { var i = !0, r = e[n]; return r ? (clearTimeout(r.timeout), !isNaN(r.expire) && r.expire < Date.now() && (i = !1)) : i = !1, i && a(n), i; }, this.clear = function () { for (var a in e)
11
- clearTimeout(e[a].timeout); e = Object.create(null); }, this.get = function (a) { var n = e[a]; if (void 0 !== n) {
12
- if (isNaN(n.expire) || n.expire >= Date.now())
13
- return n.value;
14
- delete e[a];
15
- } return null; }; }
16
- const exp$1 = new Cache;
17
- exp$1.Cache = Cache;
18
- const base = "https://translate.googleapis.com/translate_a/single";
19
- var google = { fetch: ({ key: e, from: a, to: n, text: i }) => [`${base}?client=gtx&sl=${a}&tl=${n}&dt=t&q=${encodeURI(i)}`], parse: e => e.json().then((e => { if (!(e = e && e[0] && e[0][0] && e[0].map((e => e[0])).join("")))
20
- throw new Error("Translation not found"); return e; })) }, yandex = { needkey: !0, fetch: ({ key: e, from: a, to: n, text: i }) => [`https://translate.yandex.net/api/v1.5/tr.json/translate?key=${e}&lang=${a}-${n}&text=${encodeURIComponent(i)}`, { method: "POST", body: "" }], parse: e => e.json().then((e => { if (200 !== e.code)
21
- throw new Error(e.message); return e.text[0]; })) };
22
- const libreUrl = "https://libretranslate.com/translate";
23
- var libre = { needkey: !1, fetch: ({ url: e = libreUrl, key: a, from: n, to: i, text: r }) => [e, { method: "POST", body: JSON.stringify({ q: r, source: n, target: i, api_key: a }), headers: { "Content-Type": "application/json" } }], parse: e => e.json().then((e => { if (!e)
24
- throw new Error("No response found"); if (e.error)
25
- throw new Error(e.error); if (!e.translatedText)
26
- throw new Error("No response found"); return e.translatedText; })) }, deepl = { needkey: !0, fetch: ({ key: e, from: a, to: n, text: i }) => [`https://api${/:fx$/.test(e) ? "-free" : ""}.deepl.com/v2/translate?auth_key=${e}&source_lang=${a}&target_lang=${n}&text=${i = encodeURIComponent(i)}`, { method: "POST", body: "" }], parse: async (e) => { if (!e.ok) {
27
- if (403 === e.status)
28
- throw new Error("Auth Error, please review the key for DeepL");
29
- throw new Error(`Error ${e.status}`);
30
- } return e.json().then((e => e.translations[0].text)); } }, engines = { google: google, yandex: yandex, libre: libre, deepl: deepl };
31
- const Translate = function (e = {}) { if (!(this instanceof Translate))
32
- return new Translate(e); const a = { from: "en", to: "en", cache: void 0, languages: languages, engines: engines, engine: "google", keys: {} }, n = async (e, a = {}) => { "string" == typeof a && (a = { to: a }), a.text = e, a.from = languages(a.from || n.from), a.to = languages(a.to || n.to), a.cache = a.cache || n.cache, a.engines = a.engines || {}, a.engine = a.engine || n.engine, a.url = a.url || n.url, a.id = a.id || `${a.url}:${a.from}:${a.to}:${a.engine}:${a.text}`, a.keys = a.keys || n.keys || {}; for (let e in n.keys)
33
- a.keys[e] = a.keys[e] || n.keys[e]; a.key = a.key || n.key || a.keys[a.engine]; const i = a.engines[a.engine] || n.engines[a.engine], r = exp$1.get(a.id); if (r)
34
- return Promise.resolve(r); if (a.to === a.from)
35
- return Promise.resolve(a.text); if (i.needkey && !a.key)
36
- throw new Error(`The engine "${a.engine}" needs a key, please provide it`); const t = i.fetch(a); return fetch(...t).then(i.parse).then((e => exp$1.set(a.id, e, a.cache))); }; for (let i in a)
37
- n[i] = void 0 === e[i] ? a[i] : e[i]; return n; }, exp = new Translate;
38
- exp.Translate = Translate;
39
- export const translate = exp;
40
- ;
41
- ({}); // @--end-of-file-for-module=tnp-helpers lib/base/translate.ts
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL3RyYW5zbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxhQUFhO0FBQ2IsSUFBSSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0FBQzc1SyxhQUFhO0FBQ2IsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztBQUFDLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxRQUFRLElBQUksT0FBTyxDQUFDO0lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLEdBQUc7SUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUMsTUFBTSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQUMsU0FBUyxLQUFLLEtBQUssSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsY0FBYyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUM7SUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtJQUFFLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtDQUFFLENBQUMsT0FBTyxJQUFJLENBQUEsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDO0FBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUM7QUFBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztBQUFDLE1BQU0sSUFBSSxHQUFHLHFEQUFxRCxDQUFDO0FBQUMsSUFBSSxNQUFNLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLFdBQVcsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxNQUFNLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsK0RBQStELENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFBQyxNQUFNLFFBQVEsR0FBRyxzQ0FBc0MsQ0FBQztBQUFDLElBQUksS0FBSyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsR0FBRyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLG9DQUFvQyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxHQUFHLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUFFLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFBO0tBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsRUFBRSxFQUFFLE9BQU8sR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLFlBQVksU0FBUyxDQUFDO0lBQUUsT0FBTyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJO0lBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSTtJQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRztJQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUMsTUFBTSxrQ0FBa0MsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztJQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLElBQUksU0FBUyxDQUFDO0FBQ2pqSSxHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUksR0FBRyxDQUFDO0FBRTdCLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsOERBQThEIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbi8vIEB0cy1pZ25vcmVcbnZhciBpc28gPSB7IGFhcjogXCJhYVwiLCBhYms6IFwiYWJcIiwgYWZyOiBcImFmXCIsIGFrYTogXCJha1wiLCBhbGI6IFwic3FcIiwgYW1oOiBcImFtXCIsIGFyYTogXCJhclwiLCBhcmc6IFwiYW5cIiwgYXJtOiBcImh5XCIsIGFzbTogXCJhc1wiLCBhdmE6IFwiYXZcIiwgYXZlOiBcImFlXCIsIGF5bTogXCJheVwiLCBhemU6IFwiYXpcIiwgYmFrOiBcImJhXCIsIGJhbTogXCJibVwiLCBiYXE6IFwiZXVcIiwgYmVsOiBcImJlXCIsIGJlbjogXCJiblwiLCBiaWg6IFwiYmhcIiwgYmlzOiBcImJpXCIsIGJvczogXCJic1wiLCBicmU6IFwiYnJcIiwgYnVsOiBcImJnXCIsIGJ1cjogXCJteVwiLCBjYXQ6IFwiY2FcIiwgY2hhOiBcImNoXCIsIGNoZTogXCJjZVwiLCBjaGk6IFwiemhcIiwgY2h1OiBcImN1XCIsIGNodjogXCJjdlwiLCBjb3I6IFwia3dcIiwgY29zOiBcImNvXCIsIGNyZTogXCJjclwiLCBjemU6IFwiY3NcIiwgZGFuOiBcImRhXCIsIGRpdjogXCJkdlwiLCBkdXQ6IFwibmxcIiwgZHpvOiBcImR6XCIsIGVuZzogXCJlblwiLCBlcG86IFwiZW9cIiwgZXN0OiBcImV0XCIsIGV3ZTogXCJlZVwiLCBmYW86IFwiZm9cIiwgZmlqOiBcImZqXCIsIGZpbjogXCJmaVwiLCBmcmU6IFwiZnJcIiwgZnJ5OiBcImZ5XCIsIGZ1bDogXCJmZlwiLCBnZW86IFwia2FcIiwgZ2VyOiBcImRlXCIsIGdsYTogXCJnZFwiLCBnbGU6IFwiZ2FcIiwgZ2xnOiBcImdsXCIsIGdsdjogXCJndlwiLCBncmU6IFwiZWxcIiwgZ3JuOiBcImduXCIsIGd1ajogXCJndVwiLCBoYXQ6IFwiaHRcIiwgaGF1OiBcImhhXCIsIGhlYjogXCJoZVwiLCBoZXI6IFwiaHpcIiwgaGluOiBcImhpXCIsIGhtbzogXCJob1wiLCBocnY6IFwiaHJcIiwgaHVuOiBcImh1XCIsIGlibzogXCJpZ1wiLCBpY2U6IFwiaXNcIiwgaWRvOiBcImlvXCIsIGlpaTogXCJpaVwiLCBpa3U6IFwiaXVcIiwgaWxlOiBcImllXCIsIGluYTogXCJpYVwiLCBpbmQ6IFwiaWRcIiwgaXBrOiBcImlrXCIsIGl0YTogXCJpdFwiLCBqYXY6IFwianZcIiwganBuOiBcImphXCIsIGthbDogXCJrbFwiLCBrYW46IFwia25cIiwga2FzOiBcImtzXCIsIGthdTogXCJrclwiLCBrYXo6IFwia2tcIiwga2htOiBcImttXCIsIGtpazogXCJraVwiLCBraW46IFwicndcIiwga2lyOiBcImt5XCIsIGtvbTogXCJrdlwiLCBrb246IFwia2dcIiwga29yOiBcImtvXCIsIGt1YTogXCJralwiLCBrdXI6IFwia3VcIiwgbGFvOiBcImxvXCIsIGxhdDogXCJsYVwiLCBsYXY6IFwibHZcIiwgbGltOiBcImxpXCIsIGxpbjogXCJsblwiLCBsaXQ6IFwibHRcIiwgbHR6OiBcImxiXCIsIGx1YjogXCJsdVwiLCBsdWc6IFwibGdcIiwgbWFjOiBcIm1rXCIsIG1haDogXCJtaFwiLCBtYWw6IFwibWxcIiwgbWFvOiBcIm1pXCIsIG1hcjogXCJtclwiLCBtYXk6IFwibXNcIiwgbWxnOiBcIm1nXCIsIG1sdDogXCJtdFwiLCBtb246IFwibW5cIiwgbmF1OiBcIm5hXCIsIG5hdjogXCJudlwiLCBuYmw6IFwibnJcIiwgbmRlOiBcIm5kXCIsIG5kbzogXCJuZ1wiLCBuZXA6IFwibmVcIiwgbm5vOiBcIm5uXCIsIG5vYjogXCJuYlwiLCBub3I6IFwibm9cIiwgbnlhOiBcIm55XCIsIG9jaTogXCJvY1wiLCBvamk6IFwib2pcIiwgb3JpOiBcIm9yXCIsIG9ybTogXCJvbVwiLCBvc3M6IFwib3NcIiwgcGFuOiBcInBhXCIsIHBlcjogXCJmYVwiLCBwbGk6IFwicGlcIiwgcG9sOiBcInBsXCIsIHBvcjogXCJwdFwiLCBwdXM6IFwicHNcIiwgcXVlOiBcInF1XCIsIHJvaDogXCJybVwiLCBydW06IFwicm9cIiwgcnVuOiBcInJuXCIsIHJ1czogXCJydVwiLCBzYWc6IFwic2dcIiwgc2FuOiBcInNhXCIsIHNpbjogXCJzaVwiLCBzbG86IFwic2tcIiwgc2x2OiBcInNsXCIsIHNtZTogXCJzZVwiLCBzbW86IFwic21cIiwgc25hOiBcInNuXCIsIHNuZDogXCJzZFwiLCBzb206IFwic29cIiwgc290OiBcInN0XCIsIHNwYTogXCJlc1wiLCBzcmQ6IFwic2NcIiwgc3JwOiBcInNyXCIsIHNzdzogXCJzc1wiLCBzdW46IFwic3VcIiwgc3dhOiBcInN3XCIsIHN3ZTogXCJzdlwiLCB0YWg6IFwidHlcIiwgdGFtOiBcInRhXCIsIHRhdDogXCJ0dFwiLCB0ZWw6IFwidGVcIiwgdGdrOiBcInRnXCIsIHRnbDogXCJ0bFwiLCB0aGE6IFwidGhcIiwgdGliOiBcImJvXCIsIHRpcjogXCJ0aVwiLCB0b246IFwidG9cIiwgdHNuOiBcInRuXCIsIHRzbzogXCJ0c1wiLCB0dWs6IFwidGtcIiwgdHVyOiBcInRyXCIsIHR3aTogXCJ0d1wiLCB1aWc6IFwidWdcIiwgdWtyOiBcInVrXCIsIHVyZDogXCJ1clwiLCB1emI6IFwidXpcIiwgdmVuOiBcInZlXCIsIHZpZTogXCJ2aVwiLCB2b2w6IFwidm9cIiwgd2VsOiBcImN5XCIsIHdsbjogXCJ3YVwiLCB3b2w6IFwid29cIiwgeGhvOiBcInhoXCIsIHlpZDogXCJ5aVwiLCB5b3I6IFwieW9cIiwgemhhOiBcInphXCIsIHp1bDogXCJ6dVwiIH0sIG5hbWVzID0geyBhZmFyOiBcImFhXCIsIGFia2hhemlhbjogXCJhYlwiLCBhZnJpa2FhbnM6IFwiYWZcIiwgYWthbjogXCJha1wiLCBhbGJhbmlhbjogXCJzcVwiLCBhbWhhcmljOiBcImFtXCIsIGFyYWJpYzogXCJhclwiLCBhcmFnb25lc2U6IFwiYW5cIiwgYXJtZW5pYW46IFwiaHlcIiwgYXNzYW1lc2U6IFwiYXNcIiwgYXZhcmljOiBcImF2XCIsIGF2ZXN0YW46IFwiYWVcIiwgYXltYXJhOiBcImF5XCIsIGF6ZXJiYWlqYW5pOiBcImF6XCIsIGJhc2hraXI6IFwiYmFcIiwgYmFtYmFyYTogXCJibVwiLCBiYXNxdWU6IFwiZXVcIiwgYmVsYXJ1c2lhbjogXCJiZVwiLCBiZW5nYWxpOiBcImJuXCIsIFwiYmloYXJpIGxhbmd1YWdlc1wiOiBcImJoXCIsIGJpc2xhbWE6IFwiYmlcIiwgdGliZXRhbjogXCJib1wiLCBib3NuaWFuOiBcImJzXCIsIGJyZXRvbjogXCJiclwiLCBidWxnYXJpYW46IFwiYmdcIiwgYnVybWVzZTogXCJteVwiLCBjYXRhbGFuOiBcImNhXCIsIHZhbGVuY2lhbjogXCJjYVwiLCBjemVjaDogXCJjc1wiLCBjaGFtb3JybzogXCJjaFwiLCBjaGVjaGVuOiBcImNlXCIsIGNoaW5lc2U6IFwiemhcIiwgXCJjaHVyY2ggc2xhdmljXCI6IFwiY3VcIiwgXCJvbGQgc2xhdm9uaWNcIjogXCJjdVwiLCBcImNodXJjaCBzbGF2b25pY1wiOiBcImN1XCIsIFwib2xkIGJ1bGdhcmlhblwiOiBcImN1XCIsIFwib2xkIGNodXJjaCBzbGF2b25pY1wiOiBcImN1XCIsIGNodXZhc2g6IFwiY3ZcIiwgY29ybmlzaDogXCJrd1wiLCBjb3JzaWNhbjogXCJjb1wiLCBjcmVlOiBcImNyXCIsIHdlbHNoOiBcImN5XCIsIGRhbmlzaDogXCJkYVwiLCBnZXJtYW46IFwiZGVcIiwgZGl2ZWhpOiBcImR2XCIsIGRoaXZlaGk6IFwiZHZcIiwgbWFsZGl2aWFuOiBcImR2XCIsIGR1dGNoOiBcIm5sXCIsIGZsZW1pc2g6IFwibmxcIiwgZHpvbmdraGE6IFwiZHpcIiwgZ3JlZWs6IFwiZWxcIiwgZW5nbGlzaDogXCJlblwiLCBlc3BlcmFudG86IFwiZW9cIiwgZXN0b25pYW46IFwiZXRcIiwgZXdlOiBcImVlXCIsIGZhcm9lc2U6IFwiZm9cIiwgcGVyc2lhbjogXCJmYVwiLCBmaWppYW46IFwiZmpcIiwgZmlubmlzaDogXCJmaVwiLCBmcmVuY2g6IFwiZnJcIiwgXCJ3ZXN0ZXJuIGZyaXNpYW5cIjogXCJmeVwiLCBmdWxhaDogXCJmZlwiLCBnZW9yZ2lhbjogXCJrYVwiLCBnYWVsaWM6IFwiZ2RcIiwgXCJzY290dGlzaCBnYWVsaWNcIjogXCJnZFwiLCBpcmlzaDogXCJnYVwiLCBnYWxpY2lhbjogXCJnbFwiLCBtYW54OiBcImd2XCIsIGd1YXJhbmk6IFwiZ25cIiwgZ3VqYXJhdGk6IFwiZ3VcIiwgaGFpdGlhbjogXCJodFwiLCBcImhhaXRpYW4gY3Jlb2xlXCI6IFwiaHRcIiwgaGF1c2E6IFwiaGFcIiwgaGVicmV3OiBcImhlXCIsIGhlcmVybzogXCJoelwiLCBoaW5kaTogXCJoaVwiLCBcImhpcmkgbW90dVwiOiBcImhvXCIsIGNyb2F0aWFuOiBcImhyXCIsIGh1bmdhcmlhbjogXCJodVwiLCBpZ2JvOiBcImlnXCIsIGljZWxhbmRpYzogXCJpc1wiLCBpZG86IFwiaW9cIiwgXCJzaWNodWFuIHlpXCI6IFwiaWlcIiwgbnVvc3U6IFwiaWlcIiwgaW51a3RpdHV0OiBcIml1XCIsIGludGVybGluZ3VlOiBcImllXCIsIG9jY2lkZW50YWw6IFwiaWVcIiwgaW50ZXJsaW5ndWE6IFwiaWFcIiwgaW5kb25lc2lhbjogXCJpZFwiLCBpbnVwaWFxOiBcImlrXCIsIGl0YWxpYW46IFwiaXRcIiwgamF2YW5lc2U6IFwianZcIiwgamFwYW5lc2U6IFwiamFcIiwga2FsYWFsbGlzdXQ6IFwia2xcIiwgZ3JlZW5sYW5kaWM6IFwia2xcIiwga2FubmFkYTogXCJrblwiLCBrYXNobWlyaTogXCJrc1wiLCBrYW51cmk6IFwia3JcIiwga2F6YWtoOiBcImtrXCIsIFwiY2VudHJhbCBraG1lclwiOiBcImttXCIsIGtpa3V5dTogXCJraVwiLCBnaWt1eXU6IFwia2lcIiwga2lueWFyd2FuZGE6IFwicndcIiwga2lyZ2hpejogXCJreVwiLCBreXJneXo6IFwia3lcIiwga29taTogXCJrdlwiLCBrb25nbzogXCJrZ1wiLCBrb3JlYW46IFwia29cIiwga3VhbnlhbWE6IFwia2pcIiwga3dhbnlhbWE6IFwia2pcIiwga3VyZGlzaDogXCJrdVwiLCBsYW86IFwibG9cIiwgbGF0aW46IFwibGFcIiwgbGF0dmlhbjogXCJsdlwiLCBsaW1idXJnYW46IFwibGlcIiwgbGltYnVyZ2VyOiBcImxpXCIsIGxpbWJ1cmdpc2g6IFwibGlcIiwgbGluZ2FsYTogXCJsblwiLCBsaXRodWFuaWFuOiBcImx0XCIsIGx1eGVtYm91cmdpc2g6IFwibGJcIiwgbGV0emVidXJnZXNjaDogXCJsYlwiLCBcImx1YmEta2F0YW5nYVwiOiBcImx1XCIsIGdhbmRhOiBcImxnXCIsIG1hY2Vkb25pYW46IFwibWtcIiwgbWFyc2hhbGxlc2U6IFwibWhcIiwgbWFsYXlhbGFtOiBcIm1sXCIsIG1hb3JpOiBcIm1pXCIsIG1hcmF0aGk6IFwibXJcIiwgbWFsYXk6IFwibXNcIiwgbWFsYWdhc3k6IFwibWdcIiwgbWFsdGVzZTogXCJtdFwiLCBtb25nb2xpYW46IFwibW5cIiwgbmF1cnU6IFwibmFcIiwgbmF2YWpvOiBcIm52XCIsIG5hdmFobzogXCJudlwiLCBcIm5kZWJlbGUsIHNvdXRoXCI6IFwibnJcIiwgXCJzb3V0aCBuZGViZWxlXCI6IFwibnJcIiwgXCJuZGViZWxlLCBub3J0aFwiOiBcIm5kXCIsIFwibm9ydGggbmRlYmVsZVwiOiBcIm5kXCIsIG5kb25nYTogXCJuZ1wiLCBuZXBhbGk6IFwibmVcIiwgXCJub3J3ZWdpYW4gbnlub3Jza1wiOiBcIm5uXCIsIFwibnlub3Jzaywgbm9yd2VnaWFuXCI6IFwibm5cIiwgXCJub3J3ZWdpYW4gYm9rbcOlbFwiOiBcIm5iXCIsIFwiYm9rbcOlbCwgbm9yd2VnaWFuXCI6IFwibmJcIiwgbm9yd2VnaWFuOiBcIm5vXCIsIGNoaWNoZXdhOiBcIm55XCIsIGNoZXdhOiBcIm55XCIsIG55YW5qYTogXCJueVwiLCBvY2NpdGFuOiBcIm9jXCIsIG9qaWJ3YTogXCJvalwiLCBvcml5YTogXCJvclwiLCBvcm9tbzogXCJvbVwiLCBvc3NldGlhbjogXCJvc1wiLCBvc3NldGljOiBcIm9zXCIsIHBhbmphYmk6IFwicGFcIiwgcHVuamFiaTogXCJwYVwiLCBwYWxpOiBcInBpXCIsIHBvbGlzaDogXCJwbFwiLCBwb3J0dWd1ZXNlOiBcInB0XCIsIHB1c2h0bzogXCJwc1wiLCBwYXNodG86IFwicHNcIiwgcXVlY2h1YTogXCJxdVwiLCByb21hbnNoOiBcInJtXCIsIHJvbWFuaWFuOiBcInJvXCIsIG1vbGRhdmlhbjogXCJyb1wiLCBtb2xkb3ZhbjogXCJyb1wiLCBydW5kaTogXCJyblwiLCBydXNzaWFuOiBcInJ1XCIsIHNhbmdvOiBcInNnXCIsIHNhbnNrcml0OiBcInNhXCIsIHNpbmhhbGE6IFwic2lcIiwgc2luaGFsZXNlOiBcInNpXCIsIHNsb3ZhazogXCJza1wiLCBzbG92ZW5pYW46IFwic2xcIiwgXCJub3J0aGVybiBzYW1pXCI6IFwic2VcIiwgc2Ftb2FuOiBcInNtXCIsIHNob25hOiBcInNuXCIsIHNpbmRoaTogXCJzZFwiLCBzb21hbGk6IFwic29cIiwgXCJzb3Robywgc291dGhlcm5cIjogXCJzdFwiLCBzcGFuaXNoOiBcImVzXCIsIGNhc3RpbGlhbjogXCJlc1wiLCBzYXJkaW5pYW46IFwic2NcIiwgc2VyYmlhbjogXCJzclwiLCBzd2F0aTogXCJzc1wiLCBzdW5kYW5lc2U6IFwic3VcIiwgc3dhaGlsaTogXCJzd1wiLCBzd2VkaXNoOiBcInN2XCIsIHRhaGl0aWFuOiBcInR5XCIsIHRhbWlsOiBcInRhXCIsIHRhdGFyOiBcInR0XCIsIHRlbHVndTogXCJ0ZVwiLCB0YWppazogXCJ0Z1wiLCB0YWdhbG9nOiBcInRsXCIsIHRoYWk6IFwidGhcIiwgdGlncmlueWE6IFwidGlcIiwgdG9uZ2E6IFwidG9cIiwgdHN3YW5hOiBcInRuXCIsIHRzb25nYTogXCJ0c1wiLCB0dXJrbWVuOiBcInRrXCIsIHR1cmtpc2g6IFwidHJcIiwgdHdpOiBcInR3XCIsIHVpZ2h1cjogXCJ1Z1wiLCB1eWdodXI6IFwidWdcIiwgdWtyYWluaWFuOiBcInVrXCIsIHVyZHU6IFwidXJcIiwgdXpiZWs6IFwidXpcIiwgdmVuZGE6IFwidmVcIiwgdmlldG5hbWVzZTogXCJ2aVwiLCBcInZvbGFww7xrXCI6IFwidm9cIiwgd2FsbG9vbjogXCJ3YVwiLCB3b2xvZjogXCJ3b1wiLCB4aG9zYTogXCJ4aFwiLCB5aWRkaXNoOiBcInlpXCIsIHlvcnViYTogXCJ5b1wiLCB6aHVhbmc6IFwiemFcIiwgY2h1YW5nOiBcInphXCIsIHp1bHU6IFwienVcIiB9O1xuLy8gQHRzLWlnbm9yZVxuY29uc3QgaXNvS2V5cyA9IE9iamVjdC52YWx1ZXMoaXNvKS5zb3J0KCk7IHZhciBsYW5ndWFnZXMgPSBlID0+IHsgaWYgKFwic3RyaW5nXCIgIT0gdHlwZW9mIGUpIHRocm93IG5ldyBFcnJvcignVGhlIFwibGFuZ3VhZ2VcIiBtdXN0IGJlIGEgc3RyaW5nLCByZWNlaXZlZCAnICsgdHlwZW9mIGUpOyBpZiAoZS5sZW5ndGggPiAxMDApIHRocm93IG5ldyBFcnJvcihgVGhlIFwibGFuZ3VhZ2VcIiBpcyB0b28gbG9uZyBhdCAke2UubGVuZ3RofSBjaGFyYWN0ZXJzYCk7IGlmIChlID0gZS50b0xvd2VyQ2FzZSgpLCBlID0gbmFtZXNbZV0gfHwgaXNvW2VdIHx8IGUsICFpc29LZXlzLmluY2x1ZGVzKGUpKSB0aHJvdyBuZXcgRXJyb3IoYFRoZSBsYW5ndWFnZSBcIiR7ZX1cIiBpcyBub3QgcGFydCBvZiB0aGUgSVNPIDYzOS0xYCk7IHJldHVybiBlIH07IGZ1bmN0aW9uIENhY2hlKCkgeyB2YXIgZSA9IE9iamVjdC5jcmVhdGUobnVsbCk7IGZ1bmN0aW9uIGEoYSkgeyBkZWxldGUgZVthXSB9IHRoaXMuc2V0ID0gZnVuY3Rpb24gKG4sIGksIHIpIHsgaWYgKHZvaWQgMCAhPT0gciAmJiAoXCJudW1iZXJcIiAhPSB0eXBlb2YgciB8fCBpc05hTihyKSB8fCByIDw9IDApKSB0aHJvdyBuZXcgRXJyb3IoXCJDYWNoZSB0aW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXJcIik7IHZhciB0ID0gZVtuXTsgdCAmJiBjbGVhclRpbWVvdXQodC50aW1lb3V0KTsgdmFyIG8gPSB7IHZhbHVlOiBpLCBleHBpcmU6IHIgKyBEYXRlLm5vdygpIH07IHJldHVybiBpc05hTihvLmV4cGlyZSkgfHwgKG8udGltZW91dCA9IHNldFRpbWVvdXQoKCgpID0+IGEobikpLCByKSksIGVbbl0gPSBvLCBpIH0sIHRoaXMuZGVsID0gZnVuY3Rpb24gKG4pIHsgdmFyIGkgPSAhMCwgciA9IGVbbl07IHJldHVybiByID8gKGNsZWFyVGltZW91dChyLnRpbWVvdXQpLCAhaXNOYU4oci5leHBpcmUpICYmIHIuZXhwaXJlIDwgRGF0ZS5ub3coKSAmJiAoaSA9ICExKSkgOiBpID0gITEsIGkgJiYgYShuKSwgaSB9LCB0aGlzLmNsZWFyID0gZnVuY3Rpb24gKCkgeyBmb3IgKHZhciBhIGluIGUpIGNsZWFyVGltZW91dChlW2FdLnRpbWVvdXQpOyBlID0gT2JqZWN0LmNyZWF0ZShudWxsKSB9LCB0aGlzLmdldCA9IGZ1bmN0aW9uIChhKSB7IHZhciBuID0gZVthXTsgaWYgKHZvaWQgMCAhPT0gbikgeyBpZiAoaXNOYU4obi5leHBpcmUpIHx8IG4uZXhwaXJlID49IERhdGUubm93KCkpIHJldHVybiBuLnZhbHVlOyBkZWxldGUgZVthXSB9IHJldHVybiBudWxsIH0gfSBjb25zdCBleHAkMSA9IG5ldyBDYWNoZTsgZXhwJDEuQ2FjaGUgPSBDYWNoZTsgY29uc3QgYmFzZSA9IFwiaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20vdHJhbnNsYXRlX2Evc2luZ2xlXCI7IHZhciBnb29nbGUgPSB7IGZldGNoOiAoeyBrZXk6IGUsIGZyb206IGEsIHRvOiBuLCB0ZXh0OiBpIH0pID0+IFtgJHtiYXNlfT9jbGllbnQ9Z3R4JnNsPSR7YX0mdGw9JHtufSZkdD10JnE9JHtlbmNvZGVVUkkoaSl9YF0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoIShlID0gZSAmJiBlWzBdICYmIGVbMF1bMF0gJiYgZVswXS5tYXAoKGUgPT4gZVswXSkpLmpvaW4oXCJcIikpKSB0aHJvdyBuZXcgRXJyb3IoXCJUcmFuc2xhdGlvbiBub3QgZm91bmRcIik7IHJldHVybiBlIH0pKSB9LCB5YW5kZXggPSB7IG5lZWRrZXk6ICEwLCBmZXRjaDogKHsga2V5OiBlLCBmcm9tOiBhLCB0bzogbiwgdGV4dDogaSB9KSA9PiBbYGh0dHBzOi8vdHJhbnNsYXRlLnlhbmRleC5uZXQvYXBpL3YxLjUvdHIuanNvbi90cmFuc2xhdGU/a2V5PSR7ZX0mbGFuZz0ke2F9LSR7bn0mdGV4dD0ke2VuY29kZVVSSUNvbXBvbmVudChpKX1gLCB7IG1ldGhvZDogXCJQT1NUXCIsIGJvZHk6IFwiXCIgfV0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoMjAwICE9PSBlLmNvZGUpIHRocm93IG5ldyBFcnJvcihlLm1lc3NhZ2UpOyByZXR1cm4gZS50ZXh0WzBdIH0pKSB9OyBjb25zdCBsaWJyZVVybCA9IFwiaHR0cHM6Ly9saWJyZXRyYW5zbGF0ZS5jb20vdHJhbnNsYXRlXCI7IHZhciBsaWJyZSA9IHsgbmVlZGtleTogITEsIGZldGNoOiAoeyB1cmw6IGUgPSBsaWJyZVVybCwga2V5OiBhLCBmcm9tOiBuLCB0bzogaSwgdGV4dDogciB9KSA9PiBbZSwgeyBtZXRob2Q6IFwiUE9TVFwiLCBib2R5OiBKU09OLnN0cmluZ2lmeSh7IHE6IHIsIHNvdXJjZTogbiwgdGFyZ2V0OiBpLCBhcGlfa2V5OiBhIH0pLCBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0gfV0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoIWUpIHRocm93IG5ldyBFcnJvcihcIk5vIHJlc3BvbnNlIGZvdW5kXCIpOyBpZiAoZS5lcnJvcikgdGhyb3cgbmV3IEVycm9yKGUuZXJyb3IpOyBpZiAoIWUudHJhbnNsYXRlZFRleHQpIHRocm93IG5ldyBFcnJvcihcIk5vIHJlc3BvbnNlIGZvdW5kXCIpOyByZXR1cm4gZS50cmFuc2xhdGVkVGV4dCB9KSkgfSwgZGVlcGwgPSB7IG5lZWRrZXk6ICEwLCBmZXRjaDogKHsga2V5OiBlLCBmcm9tOiBhLCB0bzogbiwgdGV4dDogaSB9KSA9PiBbYGh0dHBzOi8vYXBpJHsvOmZ4JC8udGVzdChlKSA/IFwiLWZyZWVcIiA6IFwiXCJ9LmRlZXBsLmNvbS92Mi90cmFuc2xhdGU/YXV0aF9rZXk9JHtlfSZzb3VyY2VfbGFuZz0ke2F9JnRhcmdldF9sYW5nPSR7bn0mdGV4dD0ke2kgPSBlbmNvZGVVUklDb21wb25lbnQoaSl9YCwgeyBtZXRob2Q6IFwiUE9TVFwiLCBib2R5OiBcIlwiIH1dLCBwYXJzZTogYXN5bmMgZSA9PiB7IGlmICghZS5vaykgeyBpZiAoNDAzID09PSBlLnN0YXR1cykgdGhyb3cgbmV3IEVycm9yKFwiQXV0aCBFcnJvciwgcGxlYXNlIHJldmlldyB0aGUga2V5IGZvciBEZWVwTFwiKTsgdGhyb3cgbmV3IEVycm9yKGBFcnJvciAke2Uuc3RhdHVzfWApIH0gcmV0dXJuIGUuanNvbigpLnRoZW4oKGUgPT4gZS50cmFuc2xhdGlvbnNbMF0udGV4dCkpIH0gfSwgZW5naW5lcyA9IHsgZ29vZ2xlOiBnb29nbGUsIHlhbmRleDogeWFuZGV4LCBsaWJyZTogbGlicmUsIGRlZXBsOiBkZWVwbCB9OyBjb25zdCBUcmFuc2xhdGUgPSBmdW5jdGlvbiAoZSA9IHt9KSB7IGlmICghKHRoaXMgaW5zdGFuY2VvZiBUcmFuc2xhdGUpKSByZXR1cm4gbmV3IFRyYW5zbGF0ZShlKTsgY29uc3QgYSA9IHsgZnJvbTogXCJlblwiLCB0bzogXCJlblwiLCBjYWNoZTogdm9pZCAwLCBsYW5ndWFnZXM6IGxhbmd1YWdlcywgZW5naW5lczogZW5naW5lcywgZW5naW5lOiBcImdvb2dsZVwiLCBrZXlzOiB7fSB9LCBuID0gYXN5bmMgKGUsIGEgPSB7fSkgPT4geyBcInN0cmluZ1wiID09IHR5cGVvZiBhICYmIChhID0geyB0bzogYSB9KSwgYS50ZXh0ID0gZSwgYS5mcm9tID0gbGFuZ3VhZ2VzKGEuZnJvbSB8fCBuLmZyb20pLCBhLnRvID0gbGFuZ3VhZ2VzKGEudG8gfHwgbi50byksIGEuY2FjaGUgPSBhLmNhY2hlIHx8IG4uY2FjaGUsIGEuZW5naW5lcyA9IGEuZW5naW5lcyB8fCB7fSwgYS5lbmdpbmUgPSBhLmVuZ2luZSB8fCBuLmVuZ2luZSwgYS51cmwgPSBhLnVybCB8fCBuLnVybCwgYS5pZCA9IGEuaWQgfHwgYCR7YS51cmx9OiR7YS5mcm9tfToke2EudG99OiR7YS5lbmdpbmV9OiR7YS50ZXh0fWAsIGEua2V5cyA9IGEua2V5cyB8fCBuLmtleXMgfHwge307IGZvciAobGV0IGUgaW4gbi5rZXlzKSBhLmtleXNbZV0gPSBhLmtleXNbZV0gfHwgbi5rZXlzW2VdOyBhLmtleSA9IGEua2V5IHx8IG4ua2V5IHx8IGEua2V5c1thLmVuZ2luZV07IGNvbnN0IGkgPSBhLmVuZ2luZXNbYS5lbmdpbmVdIHx8IG4uZW5naW5lc1thLmVuZ2luZV0sIHIgPSBleHAkMS5nZXQoYS5pZCk7IGlmIChyKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHIpOyBpZiAoYS50byA9PT0gYS5mcm9tKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEudGV4dCk7IGlmIChpLm5lZWRrZXkgJiYgIWEua2V5KSB0aHJvdyBuZXcgRXJyb3IoYFRoZSBlbmdpbmUgXCIke2EuZW5naW5lfVwiIG5lZWRzIGEga2V5LCBwbGVhc2UgcHJvdmlkZSBpdGApOyBjb25zdCB0ID0gaS5mZXRjaChhKTsgcmV0dXJuIGZldGNoKC4uLnQpLnRoZW4oaS5wYXJzZSkudGhlbigoZSA9PiBleHAkMS5zZXQoYS5pZCwgZSwgYS5jYWNoZSkpKSB9OyBmb3IgKGxldCBpIGluIGEpIG5baV0gPSB2b2lkIDAgPT09IGVbaV0gPyBhW2ldIDogZVtpXTsgcmV0dXJuIG4gfSwgZXhwID0gbmV3IFRyYW5zbGF0ZTtcbmV4cC5UcmFuc2xhdGUgPSBUcmFuc2xhdGU7XG5leHBvcnQgY29uc3QgdHJhbnNsYXRlICA9IGV4cDtcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL3RyYW5zbGF0ZS50cyJdfQ==
@@ -1,26 +0,0 @@
1
- export class Memory {
2
- constructor() {
3
- this.__data = null;
4
- }
5
- read() {
6
- return Promise.resolve(this.__data);
7
- }
8
- write(obj) {
9
- this.__data = obj;
10
- return Promise.resolve();
11
- }
12
- }
13
- export class MemorySync {
14
- constructor() {
15
- this.__data = null;
16
- }
17
- read() {
18
- return this.__data || null;
19
- }
20
- write(obj) {
21
- this.__data = obj;
22
- }
23
- }
24
- ;
25
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/adapters/Memory.ts
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9sb3dkYi9hZGFwdGVycy9NZW1vcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLE1BQU07SUFBbkI7UUFDRSxXQUFNLEdBQWEsSUFBSSxDQUFBO0lBVXpCLENBQUM7SUFSQyxJQUFJO1FBQ0YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQU07UUFDVixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQTtRQUNqQixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sVUFBVTtJQUF2QjtRQUNFLFdBQU0sR0FBYSxJQUFJLENBQUE7SUFTekIsQ0FBQztJQVBDLElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFBO0lBQzVCLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBTTtRQUNWLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFBO0lBQ25CLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUVBQXFFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEFkYXB0ZXIsIFN5bmNBZGFwdGVyIH0gZnJvbSAnLi4vY29yZS9Mb3cnXG5cbmV4cG9ydCBjbGFzcyBNZW1vcnk8VD4gaW1wbGVtZW50cyBBZGFwdGVyPFQ+IHtcbiAgX19kYXRhOiBUIHwgbnVsbCA9IG51bGxcblxuICByZWFkKCk6IFByb21pc2U8VCB8IG51bGw+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX19kYXRhKVxuICB9XG5cbiAgd3JpdGUob2JqOiBUKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fX2RhdGEgPSBvYmpcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTWVtb3J5U3luYzxUPiBpbXBsZW1lbnRzIFN5bmNBZGFwdGVyPFQ+IHtcbiAgX19kYXRhOiBUIHwgbnVsbCA9IG51bGxcblxuICByZWFkKCk6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fX2RhdGEgfHwgbnVsbFxuICB9XG5cbiAgd3JpdGUob2JqOiBUKTogdm9pZCB7XG4gICAgdGhpcy5fX2RhdGEgPSBvYmpcbiAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2xvd2RiL2FkYXB0ZXJzL01lbW9yeS50cyJdfQ==
@@ -1,49 +0,0 @@
1
- function checkArgs(adapter, defaultData) {
2
- if (adapter === undefined)
3
- throw new Error('lowdb: missing adapter');
4
- if (defaultData === undefined)
5
- throw new Error('lowdb: missing default data');
6
- }
7
- export class Low {
8
- constructor(adapter, defaultData) {
9
- checkArgs(adapter, defaultData);
10
- this.adapter = adapter;
11
- this.data = defaultData;
12
- }
13
- async read() {
14
- const data = await this.adapter.read();
15
- if (data)
16
- this.data = data;
17
- }
18
- async write() {
19
- if (this.data)
20
- await this.adapter.write(this.data);
21
- }
22
- async update(fn) {
23
- fn(this.data);
24
- await this.write();
25
- }
26
- }
27
- export class LowSync {
28
- constructor(adapter, defaultData) {
29
- checkArgs(adapter, defaultData);
30
- this.adapter = adapter;
31
- this.data = defaultData;
32
- }
33
- read() {
34
- const data = this.adapter.read();
35
- if (data)
36
- this.data = data;
37
- }
38
- write() {
39
- if (this.data)
40
- this.adapter.write(this.data);
41
- }
42
- update(fn) {
43
- fn(this.data);
44
- this.write();
45
- }
46
- }
47
- ;
48
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/core/Low.ts
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9sb3dkYi9jb3JlL0xvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSxTQUFTLFNBQVMsQ0FBQyxPQUFnQixFQUFFLFdBQW9CO0lBQ3ZELElBQUksT0FBTyxLQUFLLFNBQVM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUE7SUFDcEUsSUFBSSxXQUFXLEtBQUssU0FBUztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUMvRSxDQUFDO0FBRUQsTUFBTSxPQUFPLEdBQUc7SUFJZCxZQUFZLE9BQW1CLEVBQUUsV0FBYztRQUM3QyxTQUFTLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFBO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUN0QyxJQUFJLElBQUk7WUFBRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUs7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJO1lBQUUsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDcEQsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBd0I7UUFDbkMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNiLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3BCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxPQUFPO0lBSWxCLFlBQVksT0FBdUIsRUFBRSxXQUFjO1FBQ2pELFNBQVMsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUE7SUFDekIsQ0FBQztJQUVELElBQUk7UUFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ2hDLElBQUksSUFBSTtZQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQzVCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQXdCO1FBQzdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDYixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDZCxDQUFDO0NBQ0Y7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDhEQUE4RCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgaW50ZXJmYWNlIEFkYXB0ZXI8VD4ge1xuICByZWFkOiAoKSA9PiBQcm9taXNlPFQgfCBudWxsPlxuICB3cml0ZTogKGRhdGE6IFQpID0+IFByb21pc2U8dm9pZD5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTeW5jQWRhcHRlcjxUPiB7XG4gIHJlYWQ6ICgpID0+IFQgfCBudWxsXG4gIHdyaXRlOiAoZGF0YTogVCkgPT4gdm9pZFxufVxuXG5mdW5jdGlvbiBjaGVja0FyZ3MoYWRhcHRlcjogdW5rbm93biwgZGVmYXVsdERhdGE6IHVua25vd24pIHtcbiAgaWYgKGFkYXB0ZXIgPT09IHVuZGVmaW5lZCkgdGhyb3cgbmV3IEVycm9yKCdsb3dkYjogbWlzc2luZyBhZGFwdGVyJylcbiAgaWYgKGRlZmF1bHREYXRhID09PSB1bmRlZmluZWQpIHRocm93IG5ldyBFcnJvcignbG93ZGI6IG1pc3NpbmcgZGVmYXVsdCBkYXRhJylcbn1cblxuZXhwb3J0IGNsYXNzIExvdzxUID0gdW5rbm93bj4ge1xuICBhZGFwdGVyOiBBZGFwdGVyPFQ+XG4gIGRhdGE6IFRcblxuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBBZGFwdGVyPFQ+LCBkZWZhdWx0RGF0YTogVCkge1xuICAgIGNoZWNrQXJncyhhZGFwdGVyLCBkZWZhdWx0RGF0YSlcbiAgICB0aGlzLmFkYXB0ZXIgPSBhZGFwdGVyXG4gICAgdGhpcy5kYXRhID0gZGVmYXVsdERhdGFcbiAgfVxuXG4gIGFzeW5jIHJlYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHRoaXMuYWRhcHRlci5yZWFkKClcbiAgICBpZiAoZGF0YSkgdGhpcy5kYXRhID0gZGF0YVxuICB9XG5cbiAgYXN5bmMgd3JpdGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuZGF0YSkgYXdhaXQgdGhpcy5hZGFwdGVyLndyaXRlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZShmbjogKGRhdGE6IFQpID0+IHVua25vd24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBmbih0aGlzLmRhdGEpXG4gICAgYXdhaXQgdGhpcy53cml0ZSgpXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExvd1N5bmM8VCA9IHVua25vd24+IHtcbiAgYWRhcHRlcjogU3luY0FkYXB0ZXI8VD5cbiAgZGF0YTogVFxuXG4gIGNvbnN0cnVjdG9yKGFkYXB0ZXI6IFN5bmNBZGFwdGVyPFQ+LCBkZWZhdWx0RGF0YTogVCkge1xuICAgIGNoZWNrQXJncyhhZGFwdGVyLCBkZWZhdWx0RGF0YSlcbiAgICB0aGlzLmFkYXB0ZXIgPSBhZGFwdGVyXG4gICAgdGhpcy5kYXRhID0gZGVmYXVsdERhdGFcbiAgfVxuXG4gIHJlYWQoKTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuYWRhcHRlci5yZWFkKClcbiAgICBpZiAoZGF0YSkgdGhpcy5kYXRhID0gZGF0YVxuICB9XG5cbiAgd3JpdGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGF0YSkgdGhpcy5hZGFwdGVyLndyaXRlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIHVwZGF0ZShmbjogKGRhdGE6IFQpID0+IHVua25vd24pOiB2b2lkIHtcbiAgICBmbih0aGlzLmRhdGEpXG4gICAgdGhpcy53cml0ZSgpXG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9sb3dkYi9jb3JlL0xvdy50cyJdfQ==
@@ -1,4 +0,0 @@
1
- export * from './adapters/Memory';
2
- export * from './core/Low';
3
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/index.ts
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2xvd2RiL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyxZQUFZLENBRXhCO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJEQUEyRCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJzL01lbW9yeSdcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9Mb3cnXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvbG93ZGIvaW5kZXgudHMiXX0=
@@ -1,2 +0,0 @@
1
- // @ts-nocheck
2
- export declare const translate: any;
@@ -1,12 +0,0 @@
1
- // @ts-nocheck
2
- import { Adapter, SyncAdapter } from '../core/Low';
3
- export declare class Memory<T> implements Adapter<T> {
4
- __data: T | null;
5
- read(): Promise<T | null>;
6
- write(obj: T): Promise<void>;
7
- }
8
- export declare class MemorySync<T> implements SyncAdapter<T> {
9
- __data: T | null;
10
- read(): T | null;
11
- write(obj: T): void;
12
- }
@@ -1,25 +0,0 @@
1
- // @ts-nocheck
2
- export interface Adapter<T> {
3
- read: () => Promise<T | null>;
4
- write: (data: T) => Promise<void>;
5
- }
6
- export interface SyncAdapter<T> {
7
- read: () => T | null;
8
- write: (data: T) => void;
9
- }
10
- export declare class Low<T = unknown> {
11
- adapter: Adapter<T>;
12
- data: T;
13
- constructor(adapter: Adapter<T>, defaultData: T);
14
- read(): Promise<void>;
15
- write(): Promise<void>;
16
- update(fn: (data: T) => unknown): Promise<void>;
17
- }
18
- export declare class LowSync<T = unknown> {
19
- adapter: SyncAdapter<T>;
20
- data: T;
21
- constructor(adapter: SyncAdapter<T>, defaultData: T);
22
- read(): void;
23
- write(): void;
24
- update(fn: (data: T) => unknown): void;
25
- }
@@ -1,3 +0,0 @@
1
- // @ts-nocheck
2
- export * from './adapters/Memory';
3
- export * from './core/Low';
@@ -1,42 +0,0 @@
1
- // @ts-ignore
2
- var iso = { aar: "aa", abk: "ab", afr: "af", aka: "ak", alb: "sq", amh: "am", ara: "ar", arg: "an", arm: "hy", asm: "as", ava: "av", ave: "ae", aym: "ay", aze: "az", bak: "ba", bam: "bm", baq: "eu", bel: "be", ben: "bn", bih: "bh", bis: "bi", bos: "bs", bre: "br", bul: "bg", bur: "my", cat: "ca", cha: "ch", che: "ce", chi: "zh", chu: "cu", chv: "cv", cor: "kw", cos: "co", cre: "cr", cze: "cs", dan: "da", div: "dv", dut: "nl", dzo: "dz", eng: "en", epo: "eo", est: "et", ewe: "ee", fao: "fo", fij: "fj", fin: "fi", fre: "fr", fry: "fy", ful: "ff", geo: "ka", ger: "de", gla: "gd", gle: "ga", glg: "gl", glv: "gv", gre: "el", grn: "gn", guj: "gu", hat: "ht", hau: "ha", heb: "he", her: "hz", hin: "hi", hmo: "ho", hrv: "hr", hun: "hu", ibo: "ig", ice: "is", ido: "io", iii: "ii", iku: "iu", ile: "ie", ina: "ia", ind: "id", ipk: "ik", ita: "it", jav: "jv", jpn: "ja", kal: "kl", kan: "kn", kas: "ks", kau: "kr", kaz: "kk", khm: "km", kik: "ki", kin: "rw", kir: "ky", kom: "kv", kon: "kg", kor: "ko", kua: "kj", kur: "ku", lao: "lo", lat: "la", lav: "lv", lim: "li", lin: "ln", lit: "lt", ltz: "lb", lub: "lu", lug: "lg", mac: "mk", mah: "mh", mal: "ml", mao: "mi", mar: "mr", may: "ms", mlg: "mg", mlt: "mt", mon: "mn", nau: "na", nav: "nv", nbl: "nr", nde: "nd", ndo: "ng", nep: "ne", nno: "nn", nob: "nb", nor: "no", nya: "ny", oci: "oc", oji: "oj", ori: "or", orm: "om", oss: "os", pan: "pa", per: "fa", pli: "pi", pol: "pl", por: "pt", pus: "ps", que: "qu", roh: "rm", rum: "ro", run: "rn", rus: "ru", sag: "sg", san: "sa", sin: "si", slo: "sk", slv: "sl", sme: "se", smo: "sm", sna: "sn", snd: "sd", som: "so", sot: "st", spa: "es", srd: "sc", srp: "sr", ssw: "ss", sun: "su", swa: "sw", swe: "sv", tah: "ty", tam: "ta", tat: "tt", tel: "te", tgk: "tg", tgl: "tl", tha: "th", tib: "bo", tir: "ti", ton: "to", tsn: "tn", tso: "ts", tuk: "tk", tur: "tr", twi: "tw", uig: "ug", ukr: "uk", urd: "ur", uzb: "uz", ven: "ve", vie: "vi", vol: "vo", wel: "cy", wln: "wa", wol: "wo", xho: "xh", yid: "yi", yor: "yo", zha: "za", zul: "zu" }, names = { afar: "aa", abkhazian: "ab", afrikaans: "af", akan: "ak", albanian: "sq", amharic: "am", arabic: "ar", aragonese: "an", armenian: "hy", assamese: "as", avaric: "av", avestan: "ae", aymara: "ay", azerbaijani: "az", bashkir: "ba", bambara: "bm", basque: "eu", belarusian: "be", bengali: "bn", "bihari languages": "bh", bislama: "bi", tibetan: "bo", bosnian: "bs", breton: "br", bulgarian: "bg", burmese: "my", catalan: "ca", valencian: "ca", czech: "cs", chamorro: "ch", chechen: "ce", chinese: "zh", "church slavic": "cu", "old slavonic": "cu", "church slavonic": "cu", "old bulgarian": "cu", "old church slavonic": "cu", chuvash: "cv", cornish: "kw", corsican: "co", cree: "cr", welsh: "cy", danish: "da", german: "de", divehi: "dv", dhivehi: "dv", maldivian: "dv", dutch: "nl", flemish: "nl", dzongkha: "dz", greek: "el", english: "en", esperanto: "eo", estonian: "et", ewe: "ee", faroese: "fo", persian: "fa", fijian: "fj", finnish: "fi", french: "fr", "western frisian": "fy", fulah: "ff", georgian: "ka", gaelic: "gd", "scottish gaelic": "gd", irish: "ga", galician: "gl", manx: "gv", guarani: "gn", gujarati: "gu", haitian: "ht", "haitian creole": "ht", hausa: "ha", hebrew: "he", herero: "hz", hindi: "hi", "hiri motu": "ho", croatian: "hr", hungarian: "hu", igbo: "ig", icelandic: "is", ido: "io", "sichuan yi": "ii", nuosu: "ii", inuktitut: "iu", interlingue: "ie", occidental: "ie", interlingua: "ia", indonesian: "id", inupiaq: "ik", italian: "it", javanese: "jv", japanese: "ja", kalaallisut: "kl", greenlandic: "kl", kannada: "kn", kashmiri: "ks", kanuri: "kr", kazakh: "kk", "central khmer": "km", kikuyu: "ki", gikuyu: "ki", kinyarwanda: "rw", kirghiz: "ky", kyrgyz: "ky", komi: "kv", kongo: "kg", korean: "ko", kuanyama: "kj", kwanyama: "kj", kurdish: "ku", lao: "lo", latin: "la", latvian: "lv", limburgan: "li", limburger: "li", limburgish: "li", lingala: "ln", lithuanian: "lt", luxembourgish: "lb", letzeburgesch: "lb", "luba-katanga": "lu", ganda: "lg", macedonian: "mk", marshallese: "mh", malayalam: "ml", maori: "mi", marathi: "mr", malay: "ms", malagasy: "mg", maltese: "mt", mongolian: "mn", nauru: "na", navajo: "nv", navaho: "nv", "ndebele, south": "nr", "south ndebele": "nr", "ndebele, north": "nd", "north ndebele": "nd", ndonga: "ng", nepali: "ne", "norwegian nynorsk": "nn", "nynorsk, norwegian": "nn", "norwegian bokmål": "nb", "bokmål, norwegian": "nb", norwegian: "no", chichewa: "ny", chewa: "ny", nyanja: "ny", occitan: "oc", ojibwa: "oj", oriya: "or", oromo: "om", ossetian: "os", ossetic: "os", panjabi: "pa", punjabi: "pa", pali: "pi", polish: "pl", portuguese: "pt", pushto: "ps", pashto: "ps", quechua: "qu", romansh: "rm", romanian: "ro", moldavian: "ro", moldovan: "ro", rundi: "rn", russian: "ru", sango: "sg", sanskrit: "sa", sinhala: "si", sinhalese: "si", slovak: "sk", slovenian: "sl", "northern sami": "se", samoan: "sm", shona: "sn", sindhi: "sd", somali: "so", "sotho, southern": "st", spanish: "es", castilian: "es", sardinian: "sc", serbian: "sr", swati: "ss", sundanese: "su", swahili: "sw", swedish: "sv", tahitian: "ty", tamil: "ta", tatar: "tt", telugu: "te", tajik: "tg", tagalog: "tl", thai: "th", tigrinya: "ti", tonga: "to", tswana: "tn", tsonga: "ts", turkmen: "tk", turkish: "tr", twi: "tw", uighur: "ug", uyghur: "ug", ukrainian: "uk", urdu: "ur", uzbek: "uz", venda: "ve", vietnamese: "vi", "volapük": "vo", walloon: "wa", wolof: "wo", xhosa: "xh", yiddish: "yi", yoruba: "yo", zhuang: "za", chuang: "za", zulu: "zu" };
3
- // @ts-ignore
4
- const isoKeys = Object.values(iso).sort();
5
- var languages = e => { if ("string" != typeof e)
6
- throw new Error('The "language" must be a string, received ' + typeof e); if (e.length > 100)
7
- throw new Error(`The "language" is too long at ${e.length} characters`); if (e = e.toLowerCase(), e = names[e] || iso[e] || e, !isoKeys.includes(e))
8
- throw new Error(`The language "${e}" is not part of the ISO 639-1`); return e; };
9
- function Cache() { var e = Object.create(null); function a(a) { delete e[a]; } this.set = function (n, i, r) { if (void 0 !== r && ("number" != typeof r || isNaN(r) || r <= 0))
10
- throw new Error("Cache timeout must be a positive number"); var t = e[n]; t && clearTimeout(t.timeout); var o = { value: i, expire: r + Date.now() }; return isNaN(o.expire) || (o.timeout = setTimeout((() => a(n)), r)), e[n] = o, i; }, this.del = function (n) { var i = !0, r = e[n]; return r ? (clearTimeout(r.timeout), !isNaN(r.expire) && r.expire < Date.now() && (i = !1)) : i = !1, i && a(n), i; }, this.clear = function () { for (var a in e)
11
- clearTimeout(e[a].timeout); e = Object.create(null); }, this.get = function (a) { var n = e[a]; if (void 0 !== n) {
12
- if (isNaN(n.expire) || n.expire >= Date.now())
13
- return n.value;
14
- delete e[a];
15
- } return null; }; }
16
- const exp$1 = new Cache;
17
- exp$1.Cache = Cache;
18
- const base = "https://translate.googleapis.com/translate_a/single";
19
- var google = { fetch: ({ key: e, from: a, to: n, text: i }) => [`${base}?client=gtx&sl=${a}&tl=${n}&dt=t&q=${encodeURI(i)}`], parse: e => e.json().then((e => { if (!(e = e && e[0] && e[0][0] && e[0].map((e => e[0])).join("")))
20
- throw new Error("Translation not found"); return e; })) }, yandex = { needkey: !0, fetch: ({ key: e, from: a, to: n, text: i }) => [`https://translate.yandex.net/api/v1.5/tr.json/translate?key=${e}&lang=${a}-${n}&text=${encodeURIComponent(i)}`, { method: "POST", body: "" }], parse: e => e.json().then((e => { if (200 !== e.code)
21
- throw new Error(e.message); return e.text[0]; })) };
22
- const libreUrl = "https://libretranslate.com/translate";
23
- var libre = { needkey: !1, fetch: ({ url: e = libreUrl, key: a, from: n, to: i, text: r }) => [e, { method: "POST", body: JSON.stringify({ q: r, source: n, target: i, api_key: a }), headers: { "Content-Type": "application/json" } }], parse: e => e.json().then((e => { if (!e)
24
- throw new Error("No response found"); if (e.error)
25
- throw new Error(e.error); if (!e.translatedText)
26
- throw new Error("No response found"); return e.translatedText; })) }, deepl = { needkey: !0, fetch: ({ key: e, from: a, to: n, text: i }) => [`https://api${/:fx$/.test(e) ? "-free" : ""}.deepl.com/v2/translate?auth_key=${e}&source_lang=${a}&target_lang=${n}&text=${i = encodeURIComponent(i)}`, { method: "POST", body: "" }], parse: async (e) => { if (!e.ok) {
27
- if (403 === e.status)
28
- throw new Error("Auth Error, please review the key for DeepL");
29
- throw new Error(`Error ${e.status}`);
30
- } return e.json().then((e => e.translations[0].text)); } }, engines = { google: google, yandex: yandex, libre: libre, deepl: deepl };
31
- const Translate = function (e = {}) { if (!(this instanceof Translate))
32
- return new Translate(e); const a = { from: "en", to: "en", cache: void 0, languages: languages, engines: engines, engine: "google", keys: {} }, n = async (e, a = {}) => { "string" == typeof a && (a = { to: a }), a.text = e, a.from = languages(a.from || n.from), a.to = languages(a.to || n.to), a.cache = a.cache || n.cache, a.engines = a.engines || {}, a.engine = a.engine || n.engine, a.url = a.url || n.url, a.id = a.id || `${a.url}:${a.from}:${a.to}:${a.engine}:${a.text}`, a.keys = a.keys || n.keys || {}; for (let e in n.keys)
33
- a.keys[e] = a.keys[e] || n.keys[e]; a.key = a.key || n.key || a.keys[a.engine]; const i = a.engines[a.engine] || n.engines[a.engine], r = exp$1.get(a.id); if (r)
34
- return Promise.resolve(r); if (a.to === a.from)
35
- return Promise.resolve(a.text); if (i.needkey && !a.key)
36
- throw new Error(`The engine "${a.engine}" needs a key, please provide it`); const t = i.fetch(a); return fetch(...t).then(i.parse).then((e => exp$1.set(a.id, e, a.cache))); }; for (let i in a)
37
- n[i] = void 0 === e[i] ? a[i] : e[i]; return n; }, exp = new Translate;
38
- exp.Translate = Translate;
39
- export const translate = exp;
40
- ;
41
- ({}); // @--end-of-file-for-module=tnp-helpers lib/base/translate.ts
42
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9iYXNlL3RyYW5zbGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFFQSxhQUFhO0FBQ2IsSUFBSSxHQUFHLEdBQUcsRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxHQUFHLEVBQUUsSUFBSSxFQUFFLEVBQUUsS0FBSyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxrQkFBa0IsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLHFCQUFxQixFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLGlCQUFpQixFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxnQkFBZ0IsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxZQUFZLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZUFBZSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsV0FBVyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsR0FBRyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFVBQVUsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxVQUFVLEVBQUUsSUFBSSxFQUFFLGFBQWEsRUFBRSxJQUFJLEVBQUUsYUFBYSxFQUFFLElBQUksRUFBRSxjQUFjLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsZ0JBQWdCLEVBQUUsSUFBSSxFQUFFLGVBQWUsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxvQkFBb0IsRUFBRSxJQUFJLEVBQUUsa0JBQWtCLEVBQUUsSUFBSSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxlQUFlLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsU0FBUyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsT0FBTyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQUUsSUFBSSxFQUFFLEdBQUcsRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLFNBQVMsRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxJQUFJLEVBQUUsVUFBVSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsS0FBSyxFQUFFLElBQUksRUFBRSxLQUFLLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxJQUFJLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxDQUFDO0FBQzc1SyxhQUFhO0FBQ2IsTUFBTSxPQUFPLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQztBQUFDLElBQUksU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxRQUFRLElBQUksT0FBTyxDQUFDO0lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw0Q0FBNEMsR0FBRyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxHQUFHLEdBQUc7SUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLGlDQUFpQyxDQUFDLENBQUMsTUFBTSxhQUFhLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxXQUFXLEVBQUUsRUFBRSxDQUFDLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxPQUFPLENBQUMsUUFBUSxDQUFDLENBQUMsQ0FBQztJQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsaUJBQWlCLENBQUMsZ0NBQWdDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFBLENBQUMsQ0FBQyxDQUFDO0FBQUMsU0FBUyxLQUFLLEtBQUssSUFBSSxDQUFDLEdBQUcsTUFBTSxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsSUFBSSxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxHQUFHLFVBQVUsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLElBQUksSUFBSSxLQUFLLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxRQUFRLElBQUksT0FBTyxDQUFDLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUM7SUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHlDQUF5QyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksWUFBWSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxNQUFNLEVBQUUsQ0FBQyxHQUFHLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsT0FBTyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxVQUFVLENBQUMsQ0FBQyxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxHQUFHLEdBQUcsVUFBVSxDQUFDLElBQUksSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFlBQVksQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxNQUFNLEdBQUcsSUFBSSxDQUFDLEdBQUcsRUFBRSxJQUFJLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLENBQUMsQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFBLENBQUMsQ0FBQyxFQUFFLElBQUksQ0FBQyxLQUFLLEdBQUcsY0FBYyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUM7SUFBRSxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxHQUFHLE1BQU0sQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLEdBQUcsR0FBRyxVQUFVLENBQUMsSUFBSSxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLEtBQUssQ0FBQyxLQUFLLENBQUMsRUFBRTtJQUFFLElBQUksS0FBSyxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLElBQUksQ0FBQyxHQUFHLEVBQUU7UUFBRSxPQUFPLENBQUMsQ0FBQyxLQUFLLENBQUM7SUFBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQTtDQUFFLENBQUMsT0FBTyxJQUFJLENBQUEsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDO0FBQUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxLQUFLLENBQUM7QUFBQyxLQUFLLENBQUMsS0FBSyxHQUFHLEtBQUssQ0FBQztBQUFDLE1BQU0sSUFBSSxHQUFHLHFEQUFxRCxDQUFDO0FBQUMsSUFBSSxNQUFNLEdBQUcsRUFBRSxLQUFLLEVBQUUsQ0FBQyxFQUFFLEdBQUcsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUFHLElBQUksa0JBQWtCLENBQUMsT0FBTyxDQUFDLFdBQVcsU0FBUyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsSUFBSSxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHVCQUF1QixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxNQUFNLEdBQUcsRUFBRSxPQUFPLEVBQUUsQ0FBQyxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsRUFBRSxHQUFHLEVBQUUsQ0FBQyxFQUFFLElBQUksRUFBRSxDQUFDLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUMsK0RBQStELENBQUMsU0FBUyxDQUFDLElBQUksQ0FBQyxTQUFTLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxHQUFHLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxJQUFJO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUM7QUFBQyxNQUFNLFFBQVEsR0FBRyxzQ0FBc0MsQ0FBQztBQUFDLElBQUksS0FBSyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsR0FBRyxRQUFRLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsSUFBSSxFQUFFLElBQUksQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLE1BQU0sRUFBRSxDQUFDLEVBQUUsTUFBTSxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsQ0FBQyxFQUFFLENBQUMsRUFBRSxPQUFPLEVBQUUsRUFBRSxjQUFjLEVBQUUsa0JBQWtCLEVBQUUsRUFBRSxDQUFDLEVBQUUsS0FBSyxFQUFFLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEdBQUcsSUFBSSxDQUFDLENBQUM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxLQUFLO1FBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyxDQUFDLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLGNBQWM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLG1CQUFtQixDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxjQUFjLENBQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsS0FBSyxHQUFHLEVBQUUsT0FBTyxFQUFFLENBQUMsQ0FBQyxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsR0FBRyxFQUFFLENBQUMsRUFBRSxJQUFJLEVBQUUsQ0FBQyxFQUFFLEVBQUUsRUFBRSxDQUFDLEVBQUUsSUFBSSxFQUFFLENBQUMsRUFBRSxFQUFFLEVBQUUsQ0FBQyxDQUFDLGNBQWMsTUFBTSxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUMsQ0FBQyxFQUFFLG9DQUFvQyxDQUFDLGdCQUFnQixDQUFDLGdCQUFnQixDQUFDLFNBQVMsQ0FBQyxHQUFHLGtCQUFrQixDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsQ0FBQyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUMsQ0FBQyxFQUFDLEVBQUUsR0FBRyxJQUFJLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtRQUFFLElBQUksR0FBRyxLQUFLLENBQUMsQ0FBQyxNQUFNO1lBQUUsTUFBTSxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1FBQUMsTUFBTSxJQUFJLEtBQUssQ0FBQyxTQUFTLENBQUMsQ0FBQyxNQUFNLEVBQUUsQ0FBQyxDQUFBO0tBQUUsQ0FBQyxPQUFPLENBQUMsQ0FBQyxJQUFJLEVBQUUsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxZQUFZLENBQUMsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsRUFBRSxFQUFFLE9BQU8sR0FBRyxFQUFFLE1BQU0sRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLEVBQUUsQ0FBQztBQUFDLE1BQU0sU0FBUyxHQUFHLFVBQVUsQ0FBQyxHQUFHLEVBQUUsSUFBSSxJQUFJLENBQUMsQ0FBQyxJQUFJLFlBQVksU0FBUyxDQUFDO0lBQUUsT0FBTyxJQUFJLFNBQVMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLEVBQUUsSUFBSSxFQUFFLElBQUksRUFBRSxFQUFFLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsRUFBRSxTQUFTLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFLEVBQUUsQ0FBQyxHQUFHLEtBQUssRUFBRSxDQUFDLEVBQUUsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLEdBQUcsUUFBUSxJQUFJLE9BQU8sQ0FBQyxJQUFJLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxFQUFFLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxDQUFDLEVBQUUsQ0FBQyxDQUFDLElBQUksR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLElBQUksSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEVBQUUsR0FBRyxTQUFTLENBQUMsQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsS0FBSyxJQUFJLENBQUMsQ0FBQyxLQUFLLEVBQUUsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsT0FBTyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsTUFBTSxHQUFHLENBQUMsQ0FBQyxNQUFNLElBQUksQ0FBQyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsRUFBRSxHQUFHLENBQUMsQ0FBQyxFQUFFLElBQUksR0FBRyxDQUFDLENBQUMsR0FBRyxJQUFJLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLEVBQUUsSUFBSSxDQUFDLENBQUMsTUFBTSxJQUFJLENBQUMsQ0FBQyxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUMsSUFBSSxHQUFHLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDLElBQUksSUFBSSxFQUFFLENBQUMsQ0FBQyxLQUFLLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJO0lBQUUsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxHQUFHLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxDQUFDLEdBQUcsSUFBSSxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxHQUFHLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUMsR0FBRyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQztJQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLEVBQUUsS0FBSyxDQUFDLENBQUMsSUFBSTtJQUFFLE9BQU8sT0FBTyxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxPQUFPLElBQUksQ0FBQyxDQUFDLENBQUMsR0FBRztJQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsZUFBZSxDQUFDLENBQUMsTUFBTSxrQ0FBa0MsQ0FBQyxDQUFDLENBQUMsTUFBTSxDQUFDLEdBQUcsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLENBQUMsQ0FBQyxLQUFLLENBQUMsQ0FBQyxJQUFJLENBQUMsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQSxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssSUFBSSxDQUFDLElBQUksQ0FBQztJQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsR0FBRyxLQUFLLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsT0FBTyxDQUFDLENBQUEsQ0FBQyxDQUFDLEVBQUUsR0FBRyxHQUFHLElBQUksU0FBUyxDQUFDO0FBQ2pqSSxHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsQ0FBQztBQUMxQixNQUFNLENBQUMsTUFBTSxTQUFTLEdBQUksR0FBRyxDQUFDO0FBRTdCLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsOERBQThEIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbi8vIEB0cy1pZ25vcmVcbnZhciBpc28gPSB7IGFhcjogXCJhYVwiLCBhYms6IFwiYWJcIiwgYWZyOiBcImFmXCIsIGFrYTogXCJha1wiLCBhbGI6IFwic3FcIiwgYW1oOiBcImFtXCIsIGFyYTogXCJhclwiLCBhcmc6IFwiYW5cIiwgYXJtOiBcImh5XCIsIGFzbTogXCJhc1wiLCBhdmE6IFwiYXZcIiwgYXZlOiBcImFlXCIsIGF5bTogXCJheVwiLCBhemU6IFwiYXpcIiwgYmFrOiBcImJhXCIsIGJhbTogXCJibVwiLCBiYXE6IFwiZXVcIiwgYmVsOiBcImJlXCIsIGJlbjogXCJiblwiLCBiaWg6IFwiYmhcIiwgYmlzOiBcImJpXCIsIGJvczogXCJic1wiLCBicmU6IFwiYnJcIiwgYnVsOiBcImJnXCIsIGJ1cjogXCJteVwiLCBjYXQ6IFwiY2FcIiwgY2hhOiBcImNoXCIsIGNoZTogXCJjZVwiLCBjaGk6IFwiemhcIiwgY2h1OiBcImN1XCIsIGNodjogXCJjdlwiLCBjb3I6IFwia3dcIiwgY29zOiBcImNvXCIsIGNyZTogXCJjclwiLCBjemU6IFwiY3NcIiwgZGFuOiBcImRhXCIsIGRpdjogXCJkdlwiLCBkdXQ6IFwibmxcIiwgZHpvOiBcImR6XCIsIGVuZzogXCJlblwiLCBlcG86IFwiZW9cIiwgZXN0OiBcImV0XCIsIGV3ZTogXCJlZVwiLCBmYW86IFwiZm9cIiwgZmlqOiBcImZqXCIsIGZpbjogXCJmaVwiLCBmcmU6IFwiZnJcIiwgZnJ5OiBcImZ5XCIsIGZ1bDogXCJmZlwiLCBnZW86IFwia2FcIiwgZ2VyOiBcImRlXCIsIGdsYTogXCJnZFwiLCBnbGU6IFwiZ2FcIiwgZ2xnOiBcImdsXCIsIGdsdjogXCJndlwiLCBncmU6IFwiZWxcIiwgZ3JuOiBcImduXCIsIGd1ajogXCJndVwiLCBoYXQ6IFwiaHRcIiwgaGF1OiBcImhhXCIsIGhlYjogXCJoZVwiLCBoZXI6IFwiaHpcIiwgaGluOiBcImhpXCIsIGhtbzogXCJob1wiLCBocnY6IFwiaHJcIiwgaHVuOiBcImh1XCIsIGlibzogXCJpZ1wiLCBpY2U6IFwiaXNcIiwgaWRvOiBcImlvXCIsIGlpaTogXCJpaVwiLCBpa3U6IFwiaXVcIiwgaWxlOiBcImllXCIsIGluYTogXCJpYVwiLCBpbmQ6IFwiaWRcIiwgaXBrOiBcImlrXCIsIGl0YTogXCJpdFwiLCBqYXY6IFwianZcIiwganBuOiBcImphXCIsIGthbDogXCJrbFwiLCBrYW46IFwia25cIiwga2FzOiBcImtzXCIsIGthdTogXCJrclwiLCBrYXo6IFwia2tcIiwga2htOiBcImttXCIsIGtpazogXCJraVwiLCBraW46IFwicndcIiwga2lyOiBcImt5XCIsIGtvbTogXCJrdlwiLCBrb246IFwia2dcIiwga29yOiBcImtvXCIsIGt1YTogXCJralwiLCBrdXI6IFwia3VcIiwgbGFvOiBcImxvXCIsIGxhdDogXCJsYVwiLCBsYXY6IFwibHZcIiwgbGltOiBcImxpXCIsIGxpbjogXCJsblwiLCBsaXQ6IFwibHRcIiwgbHR6OiBcImxiXCIsIGx1YjogXCJsdVwiLCBsdWc6IFwibGdcIiwgbWFjOiBcIm1rXCIsIG1haDogXCJtaFwiLCBtYWw6IFwibWxcIiwgbWFvOiBcIm1pXCIsIG1hcjogXCJtclwiLCBtYXk6IFwibXNcIiwgbWxnOiBcIm1nXCIsIG1sdDogXCJtdFwiLCBtb246IFwibW5cIiwgbmF1OiBcIm5hXCIsIG5hdjogXCJudlwiLCBuYmw6IFwibnJcIiwgbmRlOiBcIm5kXCIsIG5kbzogXCJuZ1wiLCBuZXA6IFwibmVcIiwgbm5vOiBcIm5uXCIsIG5vYjogXCJuYlwiLCBub3I6IFwibm9cIiwgbnlhOiBcIm55XCIsIG9jaTogXCJvY1wiLCBvamk6IFwib2pcIiwgb3JpOiBcIm9yXCIsIG9ybTogXCJvbVwiLCBvc3M6IFwib3NcIiwgcGFuOiBcInBhXCIsIHBlcjogXCJmYVwiLCBwbGk6IFwicGlcIiwgcG9sOiBcInBsXCIsIHBvcjogXCJwdFwiLCBwdXM6IFwicHNcIiwgcXVlOiBcInF1XCIsIHJvaDogXCJybVwiLCBydW06IFwicm9cIiwgcnVuOiBcInJuXCIsIHJ1czogXCJydVwiLCBzYWc6IFwic2dcIiwgc2FuOiBcInNhXCIsIHNpbjogXCJzaVwiLCBzbG86IFwic2tcIiwgc2x2OiBcInNsXCIsIHNtZTogXCJzZVwiLCBzbW86IFwic21cIiwgc25hOiBcInNuXCIsIHNuZDogXCJzZFwiLCBzb206IFwic29cIiwgc290OiBcInN0XCIsIHNwYTogXCJlc1wiLCBzcmQ6IFwic2NcIiwgc3JwOiBcInNyXCIsIHNzdzogXCJzc1wiLCBzdW46IFwic3VcIiwgc3dhOiBcInN3XCIsIHN3ZTogXCJzdlwiLCB0YWg6IFwidHlcIiwgdGFtOiBcInRhXCIsIHRhdDogXCJ0dFwiLCB0ZWw6IFwidGVcIiwgdGdrOiBcInRnXCIsIHRnbDogXCJ0bFwiLCB0aGE6IFwidGhcIiwgdGliOiBcImJvXCIsIHRpcjogXCJ0aVwiLCB0b246IFwidG9cIiwgdHNuOiBcInRuXCIsIHRzbzogXCJ0c1wiLCB0dWs6IFwidGtcIiwgdHVyOiBcInRyXCIsIHR3aTogXCJ0d1wiLCB1aWc6IFwidWdcIiwgdWtyOiBcInVrXCIsIHVyZDogXCJ1clwiLCB1emI6IFwidXpcIiwgdmVuOiBcInZlXCIsIHZpZTogXCJ2aVwiLCB2b2w6IFwidm9cIiwgd2VsOiBcImN5XCIsIHdsbjogXCJ3YVwiLCB3b2w6IFwid29cIiwgeGhvOiBcInhoXCIsIHlpZDogXCJ5aVwiLCB5b3I6IFwieW9cIiwgemhhOiBcInphXCIsIHp1bDogXCJ6dVwiIH0sIG5hbWVzID0geyBhZmFyOiBcImFhXCIsIGFia2hhemlhbjogXCJhYlwiLCBhZnJpa2FhbnM6IFwiYWZcIiwgYWthbjogXCJha1wiLCBhbGJhbmlhbjogXCJzcVwiLCBhbWhhcmljOiBcImFtXCIsIGFyYWJpYzogXCJhclwiLCBhcmFnb25lc2U6IFwiYW5cIiwgYXJtZW5pYW46IFwiaHlcIiwgYXNzYW1lc2U6IFwiYXNcIiwgYXZhcmljOiBcImF2XCIsIGF2ZXN0YW46IFwiYWVcIiwgYXltYXJhOiBcImF5XCIsIGF6ZXJiYWlqYW5pOiBcImF6XCIsIGJhc2hraXI6IFwiYmFcIiwgYmFtYmFyYTogXCJibVwiLCBiYXNxdWU6IFwiZXVcIiwgYmVsYXJ1c2lhbjogXCJiZVwiLCBiZW5nYWxpOiBcImJuXCIsIFwiYmloYXJpIGxhbmd1YWdlc1wiOiBcImJoXCIsIGJpc2xhbWE6IFwiYmlcIiwgdGliZXRhbjogXCJib1wiLCBib3NuaWFuOiBcImJzXCIsIGJyZXRvbjogXCJiclwiLCBidWxnYXJpYW46IFwiYmdcIiwgYnVybWVzZTogXCJteVwiLCBjYXRhbGFuOiBcImNhXCIsIHZhbGVuY2lhbjogXCJjYVwiLCBjemVjaDogXCJjc1wiLCBjaGFtb3JybzogXCJjaFwiLCBjaGVjaGVuOiBcImNlXCIsIGNoaW5lc2U6IFwiemhcIiwgXCJjaHVyY2ggc2xhdmljXCI6IFwiY3VcIiwgXCJvbGQgc2xhdm9uaWNcIjogXCJjdVwiLCBcImNodXJjaCBzbGF2b25pY1wiOiBcImN1XCIsIFwib2xkIGJ1bGdhcmlhblwiOiBcImN1XCIsIFwib2xkIGNodXJjaCBzbGF2b25pY1wiOiBcImN1XCIsIGNodXZhc2g6IFwiY3ZcIiwgY29ybmlzaDogXCJrd1wiLCBjb3JzaWNhbjogXCJjb1wiLCBjcmVlOiBcImNyXCIsIHdlbHNoOiBcImN5XCIsIGRhbmlzaDogXCJkYVwiLCBnZXJtYW46IFwiZGVcIiwgZGl2ZWhpOiBcImR2XCIsIGRoaXZlaGk6IFwiZHZcIiwgbWFsZGl2aWFuOiBcImR2XCIsIGR1dGNoOiBcIm5sXCIsIGZsZW1pc2g6IFwibmxcIiwgZHpvbmdraGE6IFwiZHpcIiwgZ3JlZWs6IFwiZWxcIiwgZW5nbGlzaDogXCJlblwiLCBlc3BlcmFudG86IFwiZW9cIiwgZXN0b25pYW46IFwiZXRcIiwgZXdlOiBcImVlXCIsIGZhcm9lc2U6IFwiZm9cIiwgcGVyc2lhbjogXCJmYVwiLCBmaWppYW46IFwiZmpcIiwgZmlubmlzaDogXCJmaVwiLCBmcmVuY2g6IFwiZnJcIiwgXCJ3ZXN0ZXJuIGZyaXNpYW5cIjogXCJmeVwiLCBmdWxhaDogXCJmZlwiLCBnZW9yZ2lhbjogXCJrYVwiLCBnYWVsaWM6IFwiZ2RcIiwgXCJzY290dGlzaCBnYWVsaWNcIjogXCJnZFwiLCBpcmlzaDogXCJnYVwiLCBnYWxpY2lhbjogXCJnbFwiLCBtYW54OiBcImd2XCIsIGd1YXJhbmk6IFwiZ25cIiwgZ3VqYXJhdGk6IFwiZ3VcIiwgaGFpdGlhbjogXCJodFwiLCBcImhhaXRpYW4gY3Jlb2xlXCI6IFwiaHRcIiwgaGF1c2E6IFwiaGFcIiwgaGVicmV3OiBcImhlXCIsIGhlcmVybzogXCJoelwiLCBoaW5kaTogXCJoaVwiLCBcImhpcmkgbW90dVwiOiBcImhvXCIsIGNyb2F0aWFuOiBcImhyXCIsIGh1bmdhcmlhbjogXCJodVwiLCBpZ2JvOiBcImlnXCIsIGljZWxhbmRpYzogXCJpc1wiLCBpZG86IFwiaW9cIiwgXCJzaWNodWFuIHlpXCI6IFwiaWlcIiwgbnVvc3U6IFwiaWlcIiwgaW51a3RpdHV0OiBcIml1XCIsIGludGVybGluZ3VlOiBcImllXCIsIG9jY2lkZW50YWw6IFwiaWVcIiwgaW50ZXJsaW5ndWE6IFwiaWFcIiwgaW5kb25lc2lhbjogXCJpZFwiLCBpbnVwaWFxOiBcImlrXCIsIGl0YWxpYW46IFwiaXRcIiwgamF2YW5lc2U6IFwianZcIiwgamFwYW5lc2U6IFwiamFcIiwga2FsYWFsbGlzdXQ6IFwia2xcIiwgZ3JlZW5sYW5kaWM6IFwia2xcIiwga2FubmFkYTogXCJrblwiLCBrYXNobWlyaTogXCJrc1wiLCBrYW51cmk6IFwia3JcIiwga2F6YWtoOiBcImtrXCIsIFwiY2VudHJhbCBraG1lclwiOiBcImttXCIsIGtpa3V5dTogXCJraVwiLCBnaWt1eXU6IFwia2lcIiwga2lueWFyd2FuZGE6IFwicndcIiwga2lyZ2hpejogXCJreVwiLCBreXJneXo6IFwia3lcIiwga29taTogXCJrdlwiLCBrb25nbzogXCJrZ1wiLCBrb3JlYW46IFwia29cIiwga3VhbnlhbWE6IFwia2pcIiwga3dhbnlhbWE6IFwia2pcIiwga3VyZGlzaDogXCJrdVwiLCBsYW86IFwibG9cIiwgbGF0aW46IFwibGFcIiwgbGF0dmlhbjogXCJsdlwiLCBsaW1idXJnYW46IFwibGlcIiwgbGltYnVyZ2VyOiBcImxpXCIsIGxpbWJ1cmdpc2g6IFwibGlcIiwgbGluZ2FsYTogXCJsblwiLCBsaXRodWFuaWFuOiBcImx0XCIsIGx1eGVtYm91cmdpc2g6IFwibGJcIiwgbGV0emVidXJnZXNjaDogXCJsYlwiLCBcImx1YmEta2F0YW5nYVwiOiBcImx1XCIsIGdhbmRhOiBcImxnXCIsIG1hY2Vkb25pYW46IFwibWtcIiwgbWFyc2hhbGxlc2U6IFwibWhcIiwgbWFsYXlhbGFtOiBcIm1sXCIsIG1hb3JpOiBcIm1pXCIsIG1hcmF0aGk6IFwibXJcIiwgbWFsYXk6IFwibXNcIiwgbWFsYWdhc3k6IFwibWdcIiwgbWFsdGVzZTogXCJtdFwiLCBtb25nb2xpYW46IFwibW5cIiwgbmF1cnU6IFwibmFcIiwgbmF2YWpvOiBcIm52XCIsIG5hdmFobzogXCJudlwiLCBcIm5kZWJlbGUsIHNvdXRoXCI6IFwibnJcIiwgXCJzb3V0aCBuZGViZWxlXCI6IFwibnJcIiwgXCJuZGViZWxlLCBub3J0aFwiOiBcIm5kXCIsIFwibm9ydGggbmRlYmVsZVwiOiBcIm5kXCIsIG5kb25nYTogXCJuZ1wiLCBuZXBhbGk6IFwibmVcIiwgXCJub3J3ZWdpYW4gbnlub3Jza1wiOiBcIm5uXCIsIFwibnlub3Jzaywgbm9yd2VnaWFuXCI6IFwibm5cIiwgXCJub3J3ZWdpYW4gYm9rbcOlbFwiOiBcIm5iXCIsIFwiYm9rbcOlbCwgbm9yd2VnaWFuXCI6IFwibmJcIiwgbm9yd2VnaWFuOiBcIm5vXCIsIGNoaWNoZXdhOiBcIm55XCIsIGNoZXdhOiBcIm55XCIsIG55YW5qYTogXCJueVwiLCBvY2NpdGFuOiBcIm9jXCIsIG9qaWJ3YTogXCJvalwiLCBvcml5YTogXCJvclwiLCBvcm9tbzogXCJvbVwiLCBvc3NldGlhbjogXCJvc1wiLCBvc3NldGljOiBcIm9zXCIsIHBhbmphYmk6IFwicGFcIiwgcHVuamFiaTogXCJwYVwiLCBwYWxpOiBcInBpXCIsIHBvbGlzaDogXCJwbFwiLCBwb3J0dWd1ZXNlOiBcInB0XCIsIHB1c2h0bzogXCJwc1wiLCBwYXNodG86IFwicHNcIiwgcXVlY2h1YTogXCJxdVwiLCByb21hbnNoOiBcInJtXCIsIHJvbWFuaWFuOiBcInJvXCIsIG1vbGRhdmlhbjogXCJyb1wiLCBtb2xkb3ZhbjogXCJyb1wiLCBydW5kaTogXCJyblwiLCBydXNzaWFuOiBcInJ1XCIsIHNhbmdvOiBcInNnXCIsIHNhbnNrcml0OiBcInNhXCIsIHNpbmhhbGE6IFwic2lcIiwgc2luaGFsZXNlOiBcInNpXCIsIHNsb3ZhazogXCJza1wiLCBzbG92ZW5pYW46IFwic2xcIiwgXCJub3J0aGVybiBzYW1pXCI6IFwic2VcIiwgc2Ftb2FuOiBcInNtXCIsIHNob25hOiBcInNuXCIsIHNpbmRoaTogXCJzZFwiLCBzb21hbGk6IFwic29cIiwgXCJzb3Robywgc291dGhlcm5cIjogXCJzdFwiLCBzcGFuaXNoOiBcImVzXCIsIGNhc3RpbGlhbjogXCJlc1wiLCBzYXJkaW5pYW46IFwic2NcIiwgc2VyYmlhbjogXCJzclwiLCBzd2F0aTogXCJzc1wiLCBzdW5kYW5lc2U6IFwic3VcIiwgc3dhaGlsaTogXCJzd1wiLCBzd2VkaXNoOiBcInN2XCIsIHRhaGl0aWFuOiBcInR5XCIsIHRhbWlsOiBcInRhXCIsIHRhdGFyOiBcInR0XCIsIHRlbHVndTogXCJ0ZVwiLCB0YWppazogXCJ0Z1wiLCB0YWdhbG9nOiBcInRsXCIsIHRoYWk6IFwidGhcIiwgdGlncmlueWE6IFwidGlcIiwgdG9uZ2E6IFwidG9cIiwgdHN3YW5hOiBcInRuXCIsIHRzb25nYTogXCJ0c1wiLCB0dXJrbWVuOiBcInRrXCIsIHR1cmtpc2g6IFwidHJcIiwgdHdpOiBcInR3XCIsIHVpZ2h1cjogXCJ1Z1wiLCB1eWdodXI6IFwidWdcIiwgdWtyYWluaWFuOiBcInVrXCIsIHVyZHU6IFwidXJcIiwgdXpiZWs6IFwidXpcIiwgdmVuZGE6IFwidmVcIiwgdmlldG5hbWVzZTogXCJ2aVwiLCBcInZvbGFww7xrXCI6IFwidm9cIiwgd2FsbG9vbjogXCJ3YVwiLCB3b2xvZjogXCJ3b1wiLCB4aG9zYTogXCJ4aFwiLCB5aWRkaXNoOiBcInlpXCIsIHlvcnViYTogXCJ5b1wiLCB6aHVhbmc6IFwiemFcIiwgY2h1YW5nOiBcInphXCIsIHp1bHU6IFwienVcIiB9O1xuLy8gQHRzLWlnbm9yZVxuY29uc3QgaXNvS2V5cyA9IE9iamVjdC52YWx1ZXMoaXNvKS5zb3J0KCk7IHZhciBsYW5ndWFnZXMgPSBlID0+IHsgaWYgKFwic3RyaW5nXCIgIT0gdHlwZW9mIGUpIHRocm93IG5ldyBFcnJvcignVGhlIFwibGFuZ3VhZ2VcIiBtdXN0IGJlIGEgc3RyaW5nLCByZWNlaXZlZCAnICsgdHlwZW9mIGUpOyBpZiAoZS5sZW5ndGggPiAxMDApIHRocm93IG5ldyBFcnJvcihgVGhlIFwibGFuZ3VhZ2VcIiBpcyB0b28gbG9uZyBhdCAke2UubGVuZ3RofSBjaGFyYWN0ZXJzYCk7IGlmIChlID0gZS50b0xvd2VyQ2FzZSgpLCBlID0gbmFtZXNbZV0gfHwgaXNvW2VdIHx8IGUsICFpc29LZXlzLmluY2x1ZGVzKGUpKSB0aHJvdyBuZXcgRXJyb3IoYFRoZSBsYW5ndWFnZSBcIiR7ZX1cIiBpcyBub3QgcGFydCBvZiB0aGUgSVNPIDYzOS0xYCk7IHJldHVybiBlIH07IGZ1bmN0aW9uIENhY2hlKCkgeyB2YXIgZSA9IE9iamVjdC5jcmVhdGUobnVsbCk7IGZ1bmN0aW9uIGEoYSkgeyBkZWxldGUgZVthXSB9IHRoaXMuc2V0ID0gZnVuY3Rpb24gKG4sIGksIHIpIHsgaWYgKHZvaWQgMCAhPT0gciAmJiAoXCJudW1iZXJcIiAhPSB0eXBlb2YgciB8fCBpc05hTihyKSB8fCByIDw9IDApKSB0aHJvdyBuZXcgRXJyb3IoXCJDYWNoZSB0aW1lb3V0IG11c3QgYmUgYSBwb3NpdGl2ZSBudW1iZXJcIik7IHZhciB0ID0gZVtuXTsgdCAmJiBjbGVhclRpbWVvdXQodC50aW1lb3V0KTsgdmFyIG8gPSB7IHZhbHVlOiBpLCBleHBpcmU6IHIgKyBEYXRlLm5vdygpIH07IHJldHVybiBpc05hTihvLmV4cGlyZSkgfHwgKG8udGltZW91dCA9IHNldFRpbWVvdXQoKCgpID0+IGEobikpLCByKSksIGVbbl0gPSBvLCBpIH0sIHRoaXMuZGVsID0gZnVuY3Rpb24gKG4pIHsgdmFyIGkgPSAhMCwgciA9IGVbbl07IHJldHVybiByID8gKGNsZWFyVGltZW91dChyLnRpbWVvdXQpLCAhaXNOYU4oci5leHBpcmUpICYmIHIuZXhwaXJlIDwgRGF0ZS5ub3coKSAmJiAoaSA9ICExKSkgOiBpID0gITEsIGkgJiYgYShuKSwgaSB9LCB0aGlzLmNsZWFyID0gZnVuY3Rpb24gKCkgeyBmb3IgKHZhciBhIGluIGUpIGNsZWFyVGltZW91dChlW2FdLnRpbWVvdXQpOyBlID0gT2JqZWN0LmNyZWF0ZShudWxsKSB9LCB0aGlzLmdldCA9IGZ1bmN0aW9uIChhKSB7IHZhciBuID0gZVthXTsgaWYgKHZvaWQgMCAhPT0gbikgeyBpZiAoaXNOYU4obi5leHBpcmUpIHx8IG4uZXhwaXJlID49IERhdGUubm93KCkpIHJldHVybiBuLnZhbHVlOyBkZWxldGUgZVthXSB9IHJldHVybiBudWxsIH0gfSBjb25zdCBleHAkMSA9IG5ldyBDYWNoZTsgZXhwJDEuQ2FjaGUgPSBDYWNoZTsgY29uc3QgYmFzZSA9IFwiaHR0cHM6Ly90cmFuc2xhdGUuZ29vZ2xlYXBpcy5jb20vdHJhbnNsYXRlX2Evc2luZ2xlXCI7IHZhciBnb29nbGUgPSB7IGZldGNoOiAoeyBrZXk6IGUsIGZyb206IGEsIHRvOiBuLCB0ZXh0OiBpIH0pID0+IFtgJHtiYXNlfT9jbGllbnQ9Z3R4JnNsPSR7YX0mdGw9JHtufSZkdD10JnE9JHtlbmNvZGVVUkkoaSl9YF0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoIShlID0gZSAmJiBlWzBdICYmIGVbMF1bMF0gJiYgZVswXS5tYXAoKGUgPT4gZVswXSkpLmpvaW4oXCJcIikpKSB0aHJvdyBuZXcgRXJyb3IoXCJUcmFuc2xhdGlvbiBub3QgZm91bmRcIik7IHJldHVybiBlIH0pKSB9LCB5YW5kZXggPSB7IG5lZWRrZXk6ICEwLCBmZXRjaDogKHsga2V5OiBlLCBmcm9tOiBhLCB0bzogbiwgdGV4dDogaSB9KSA9PiBbYGh0dHBzOi8vdHJhbnNsYXRlLnlhbmRleC5uZXQvYXBpL3YxLjUvdHIuanNvbi90cmFuc2xhdGU/a2V5PSR7ZX0mbGFuZz0ke2F9LSR7bn0mdGV4dD0ke2VuY29kZVVSSUNvbXBvbmVudChpKX1gLCB7IG1ldGhvZDogXCJQT1NUXCIsIGJvZHk6IFwiXCIgfV0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoMjAwICE9PSBlLmNvZGUpIHRocm93IG5ldyBFcnJvcihlLm1lc3NhZ2UpOyByZXR1cm4gZS50ZXh0WzBdIH0pKSB9OyBjb25zdCBsaWJyZVVybCA9IFwiaHR0cHM6Ly9saWJyZXRyYW5zbGF0ZS5jb20vdHJhbnNsYXRlXCI7IHZhciBsaWJyZSA9IHsgbmVlZGtleTogITEsIGZldGNoOiAoeyB1cmw6IGUgPSBsaWJyZVVybCwga2V5OiBhLCBmcm9tOiBuLCB0bzogaSwgdGV4dDogciB9KSA9PiBbZSwgeyBtZXRob2Q6IFwiUE9TVFwiLCBib2R5OiBKU09OLnN0cmluZ2lmeSh7IHE6IHIsIHNvdXJjZTogbiwgdGFyZ2V0OiBpLCBhcGlfa2V5OiBhIH0pLCBoZWFkZXJzOiB7IFwiQ29udGVudC1UeXBlXCI6IFwiYXBwbGljYXRpb24vanNvblwiIH0gfV0sIHBhcnNlOiBlID0+IGUuanNvbigpLnRoZW4oKGUgPT4geyBpZiAoIWUpIHRocm93IG5ldyBFcnJvcihcIk5vIHJlc3BvbnNlIGZvdW5kXCIpOyBpZiAoZS5lcnJvcikgdGhyb3cgbmV3IEVycm9yKGUuZXJyb3IpOyBpZiAoIWUudHJhbnNsYXRlZFRleHQpIHRocm93IG5ldyBFcnJvcihcIk5vIHJlc3BvbnNlIGZvdW5kXCIpOyByZXR1cm4gZS50cmFuc2xhdGVkVGV4dCB9KSkgfSwgZGVlcGwgPSB7IG5lZWRrZXk6ICEwLCBmZXRjaDogKHsga2V5OiBlLCBmcm9tOiBhLCB0bzogbiwgdGV4dDogaSB9KSA9PiBbYGh0dHBzOi8vYXBpJHsvOmZ4JC8udGVzdChlKSA/IFwiLWZyZWVcIiA6IFwiXCJ9LmRlZXBsLmNvbS92Mi90cmFuc2xhdGU/YXV0aF9rZXk9JHtlfSZzb3VyY2VfbGFuZz0ke2F9JnRhcmdldF9sYW5nPSR7bn0mdGV4dD0ke2kgPSBlbmNvZGVVUklDb21wb25lbnQoaSl9YCwgeyBtZXRob2Q6IFwiUE9TVFwiLCBib2R5OiBcIlwiIH1dLCBwYXJzZTogYXN5bmMgZSA9PiB7IGlmICghZS5vaykgeyBpZiAoNDAzID09PSBlLnN0YXR1cykgdGhyb3cgbmV3IEVycm9yKFwiQXV0aCBFcnJvciwgcGxlYXNlIHJldmlldyB0aGUga2V5IGZvciBEZWVwTFwiKTsgdGhyb3cgbmV3IEVycm9yKGBFcnJvciAke2Uuc3RhdHVzfWApIH0gcmV0dXJuIGUuanNvbigpLnRoZW4oKGUgPT4gZS50cmFuc2xhdGlvbnNbMF0udGV4dCkpIH0gfSwgZW5naW5lcyA9IHsgZ29vZ2xlOiBnb29nbGUsIHlhbmRleDogeWFuZGV4LCBsaWJyZTogbGlicmUsIGRlZXBsOiBkZWVwbCB9OyBjb25zdCBUcmFuc2xhdGUgPSBmdW5jdGlvbiAoZSA9IHt9KSB7IGlmICghKHRoaXMgaW5zdGFuY2VvZiBUcmFuc2xhdGUpKSByZXR1cm4gbmV3IFRyYW5zbGF0ZShlKTsgY29uc3QgYSA9IHsgZnJvbTogXCJlblwiLCB0bzogXCJlblwiLCBjYWNoZTogdm9pZCAwLCBsYW5ndWFnZXM6IGxhbmd1YWdlcywgZW5naW5lczogZW5naW5lcywgZW5naW5lOiBcImdvb2dsZVwiLCBrZXlzOiB7fSB9LCBuID0gYXN5bmMgKGUsIGEgPSB7fSkgPT4geyBcInN0cmluZ1wiID09IHR5cGVvZiBhICYmIChhID0geyB0bzogYSB9KSwgYS50ZXh0ID0gZSwgYS5mcm9tID0gbGFuZ3VhZ2VzKGEuZnJvbSB8fCBuLmZyb20pLCBhLnRvID0gbGFuZ3VhZ2VzKGEudG8gfHwgbi50byksIGEuY2FjaGUgPSBhLmNhY2hlIHx8IG4uY2FjaGUsIGEuZW5naW5lcyA9IGEuZW5naW5lcyB8fCB7fSwgYS5lbmdpbmUgPSBhLmVuZ2luZSB8fCBuLmVuZ2luZSwgYS51cmwgPSBhLnVybCB8fCBuLnVybCwgYS5pZCA9IGEuaWQgfHwgYCR7YS51cmx9OiR7YS5mcm9tfToke2EudG99OiR7YS5lbmdpbmV9OiR7YS50ZXh0fWAsIGEua2V5cyA9IGEua2V5cyB8fCBuLmtleXMgfHwge307IGZvciAobGV0IGUgaW4gbi5rZXlzKSBhLmtleXNbZV0gPSBhLmtleXNbZV0gfHwgbi5rZXlzW2VdOyBhLmtleSA9IGEua2V5IHx8IG4ua2V5IHx8IGEua2V5c1thLmVuZ2luZV07IGNvbnN0IGkgPSBhLmVuZ2luZXNbYS5lbmdpbmVdIHx8IG4uZW5naW5lc1thLmVuZ2luZV0sIHIgPSBleHAkMS5nZXQoYS5pZCk7IGlmIChyKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHIpOyBpZiAoYS50byA9PT0gYS5mcm9tKSByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKGEudGV4dCk7IGlmIChpLm5lZWRrZXkgJiYgIWEua2V5KSB0aHJvdyBuZXcgRXJyb3IoYFRoZSBlbmdpbmUgXCIke2EuZW5naW5lfVwiIG5lZWRzIGEga2V5LCBwbGVhc2UgcHJvdmlkZSBpdGApOyBjb25zdCB0ID0gaS5mZXRjaChhKTsgcmV0dXJuIGZldGNoKC4uLnQpLnRoZW4oaS5wYXJzZSkudGhlbigoZSA9PiBleHAkMS5zZXQoYS5pZCwgZSwgYS5jYWNoZSkpKSB9OyBmb3IgKGxldCBpIGluIGEpIG5baV0gPSB2b2lkIDAgPT09IGVbaV0gPyBhW2ldIDogZVtpXTsgcmV0dXJuIG4gfSwgZXhwID0gbmV3IFRyYW5zbGF0ZTtcbmV4cC5UcmFuc2xhdGUgPSBUcmFuc2xhdGU7XG5leHBvcnQgY29uc3QgdHJhbnNsYXRlICA9IGV4cDtcblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9iYXNlL3RyYW5zbGF0ZS50cyJdfQ==
@@ -1,26 +0,0 @@
1
- export class Memory {
2
- constructor() {
3
- this.__data = null;
4
- }
5
- read() {
6
- return Promise.resolve(this.__data);
7
- }
8
- write(obj) {
9
- this.__data = obj;
10
- return Promise.resolve();
11
- }
12
- }
13
- export class MemorySync {
14
- constructor() {
15
- this.__data = null;
16
- }
17
- read() {
18
- return this.__data || null;
19
- }
20
- write(obj) {
21
- this.__data = obj;
22
- }
23
- }
24
- ;
25
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/adapters/Memory.ts
26
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTWVtb3J5LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9sb3dkYi9hZGFwdGVycy9NZW1vcnkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBSUEsTUFBTSxPQUFPLE1BQU07SUFBbkI7UUFDRSxXQUFNLEdBQWEsSUFBSSxDQUFBO0lBVXpCLENBQUM7SUFSQyxJQUFJO1FBQ0YsT0FBTyxPQUFPLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQTtJQUNyQyxDQUFDO0lBRUQsS0FBSyxDQUFDLEdBQU07UUFDVixJQUFJLENBQUMsTUFBTSxHQUFHLEdBQUcsQ0FBQTtRQUNqQixPQUFPLE9BQU8sQ0FBQyxPQUFPLEVBQUUsQ0FBQTtJQUMxQixDQUFDO0NBQ0Y7QUFFRCxNQUFNLE9BQU8sVUFBVTtJQUF2QjtRQUNFLFdBQU0sR0FBYSxJQUFJLENBQUE7SUFTekIsQ0FBQztJQVBDLElBQUk7UUFDRixPQUFPLElBQUksQ0FBQyxNQUFNLElBQUksSUFBSSxDQUFBO0lBQzVCLENBQUM7SUFFRCxLQUFLLENBQUMsR0FBTTtRQUNWLElBQUksQ0FBQyxNQUFNLEdBQUcsR0FBRyxDQUFBO0lBQ25CLENBQUM7Q0FDRjtBQUVBLENBQUM7QUFBQSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMscUVBQXFFIiwic291cmNlc0NvbnRlbnQiOlsiXG5cbmltcG9ydCB7IEFkYXB0ZXIsIFN5bmNBZGFwdGVyIH0gZnJvbSAnLi4vY29yZS9Mb3cnXG5cbmV4cG9ydCBjbGFzcyBNZW1vcnk8VD4gaW1wbGVtZW50cyBBZGFwdGVyPFQ+IHtcbiAgX19kYXRhOiBUIHwgbnVsbCA9IG51bGxcblxuICByZWFkKCk6IFByb21pc2U8VCB8IG51bGw+IHtcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKHRoaXMuX19kYXRhKVxuICB9XG5cbiAgd3JpdGUob2JqOiBUKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgdGhpcy5fX2RhdGEgPSBvYmpcbiAgICByZXR1cm4gUHJvbWlzZS5yZXNvbHZlKClcbiAgfVxufVxuXG5leHBvcnQgY2xhc3MgTWVtb3J5U3luYzxUPiBpbXBsZW1lbnRzIFN5bmNBZGFwdGVyPFQ+IHtcbiAgX19kYXRhOiBUIHwgbnVsbCA9IG51bGxcblxuICByZWFkKCk6IFQgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fX2RhdGEgfHwgbnVsbFxuICB9XG5cbiAgd3JpdGUob2JqOiBUKTogdm9pZCB7XG4gICAgdGhpcy5fX2RhdGEgPSBvYmpcbiAgfVxufVxuXG4gOyh7fSk7IC8vIEAtLWVuZC1vZi1maWxlLWZvci1tb2R1bGU9dG5wLWhlbHBlcnMgbGliL2xvd2RiL2FkYXB0ZXJzL01lbW9yeS50cyJdfQ==
@@ -1,49 +0,0 @@
1
- function checkArgs(adapter, defaultData) {
2
- if (adapter === undefined)
3
- throw new Error('lowdb: missing adapter');
4
- if (defaultData === undefined)
5
- throw new Error('lowdb: missing default data');
6
- }
7
- export class Low {
8
- constructor(adapter, defaultData) {
9
- checkArgs(adapter, defaultData);
10
- this.adapter = adapter;
11
- this.data = defaultData;
12
- }
13
- async read() {
14
- const data = await this.adapter.read();
15
- if (data)
16
- this.data = data;
17
- }
18
- async write() {
19
- if (this.data)
20
- await this.adapter.write(this.data);
21
- }
22
- async update(fn) {
23
- fn(this.data);
24
- await this.write();
25
- }
26
- }
27
- export class LowSync {
28
- constructor(adapter, defaultData) {
29
- checkArgs(adapter, defaultData);
30
- this.adapter = adapter;
31
- this.data = defaultData;
32
- }
33
- read() {
34
- const data = this.adapter.read();
35
- if (data)
36
- this.data = data;
37
- }
38
- write() {
39
- if (this.data)
40
- this.adapter.write(this.data);
41
- }
42
- update(fn) {
43
- fn(this.data);
44
- this.write();
45
- }
46
- }
47
- ;
48
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/core/Low.ts
49
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiTG93LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vdG1wLWxpYnMtZm9yLWRpc3QvdG5wLWhlbHBlcnMvcHJvamVjdHMvdG5wLWhlbHBlcnMvc3JjL2xpYi9sb3dkYi9jb3JlL0xvdy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFZQSxTQUFTLFNBQVMsQ0FBQyxPQUFnQixFQUFFLFdBQW9CO0lBQ3ZELElBQUksT0FBTyxLQUFLLFNBQVM7UUFBRSxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUE7SUFDcEUsSUFBSSxXQUFXLEtBQUssU0FBUztRQUFFLE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLENBQUMsQ0FBQTtBQUMvRSxDQUFDO0FBRUQsTUFBTSxPQUFPLEdBQUc7SUFJZCxZQUFZLE9BQW1CLEVBQUUsV0FBYztRQUM3QyxTQUFTLENBQUMsT0FBTyxFQUFFLFdBQVcsQ0FBQyxDQUFBO1FBQy9CLElBQUksQ0FBQyxPQUFPLEdBQUcsT0FBTyxDQUFBO1FBQ3RCLElBQUksQ0FBQyxJQUFJLEdBQUcsV0FBVyxDQUFBO0lBQ3pCLENBQUM7SUFFRCxLQUFLLENBQUMsSUFBSTtRQUNSLE1BQU0sSUFBSSxHQUFHLE1BQU0sSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEVBQUUsQ0FBQTtRQUN0QyxJQUFJLElBQUk7WUFBRSxJQUFJLENBQUMsSUFBSSxHQUFHLElBQUksQ0FBQTtJQUM1QixDQUFDO0lBRUQsS0FBSyxDQUFDLEtBQUs7UUFDVCxJQUFJLElBQUksQ0FBQyxJQUFJO1lBQUUsTUFBTSxJQUFJLENBQUMsT0FBTyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7SUFDcEQsQ0FBQztJQUVELEtBQUssQ0FBQyxNQUFNLENBQUMsRUFBd0I7UUFDbkMsRUFBRSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtRQUNiLE1BQU0sSUFBSSxDQUFDLEtBQUssRUFBRSxDQUFBO0lBQ3BCLENBQUM7Q0FDRjtBQUVELE1BQU0sT0FBTyxPQUFPO0lBSWxCLFlBQVksT0FBdUIsRUFBRSxXQUFjO1FBQ2pELFNBQVMsQ0FBQyxPQUFPLEVBQUUsV0FBVyxDQUFDLENBQUE7UUFDL0IsSUFBSSxDQUFDLE9BQU8sR0FBRyxPQUFPLENBQUE7UUFDdEIsSUFBSSxDQUFDLElBQUksR0FBRyxXQUFXLENBQUE7SUFDekIsQ0FBQztJQUVELElBQUk7UUFDRixNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFBO1FBQ2hDLElBQUksSUFBSTtZQUFFLElBQUksQ0FBQyxJQUFJLEdBQUcsSUFBSSxDQUFBO0lBQzVCLENBQUM7SUFFRCxLQUFLO1FBQ0gsSUFBSSxJQUFJLENBQUMsSUFBSTtZQUFFLElBQUksQ0FBQyxPQUFPLENBQUMsS0FBSyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQTtJQUM5QyxDQUFDO0lBRUQsTUFBTSxDQUFDLEVBQXdCO1FBQzdCLEVBQUUsQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLENBQUE7UUFDYixJQUFJLENBQUMsS0FBSyxFQUFFLENBQUE7SUFDZCxDQUFDO0NBQ0Y7QUFFQSxDQUFDO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDhEQUE4RCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgaW50ZXJmYWNlIEFkYXB0ZXI8VD4ge1xuICByZWFkOiAoKSA9PiBQcm9taXNlPFQgfCBudWxsPlxuICB3cml0ZTogKGRhdGE6IFQpID0+IFByb21pc2U8dm9pZD5cbn1cblxuZXhwb3J0IGludGVyZmFjZSBTeW5jQWRhcHRlcjxUPiB7XG4gIHJlYWQ6ICgpID0+IFQgfCBudWxsXG4gIHdyaXRlOiAoZGF0YTogVCkgPT4gdm9pZFxufVxuXG5mdW5jdGlvbiBjaGVja0FyZ3MoYWRhcHRlcjogdW5rbm93biwgZGVmYXVsdERhdGE6IHVua25vd24pIHtcbiAgaWYgKGFkYXB0ZXIgPT09IHVuZGVmaW5lZCkgdGhyb3cgbmV3IEVycm9yKCdsb3dkYjogbWlzc2luZyBhZGFwdGVyJylcbiAgaWYgKGRlZmF1bHREYXRhID09PSB1bmRlZmluZWQpIHRocm93IG5ldyBFcnJvcignbG93ZGI6IG1pc3NpbmcgZGVmYXVsdCBkYXRhJylcbn1cblxuZXhwb3J0IGNsYXNzIExvdzxUID0gdW5rbm93bj4ge1xuICBhZGFwdGVyOiBBZGFwdGVyPFQ+XG4gIGRhdGE6IFRcblxuICBjb25zdHJ1Y3RvcihhZGFwdGVyOiBBZGFwdGVyPFQ+LCBkZWZhdWx0RGF0YTogVCkge1xuICAgIGNoZWNrQXJncyhhZGFwdGVyLCBkZWZhdWx0RGF0YSlcbiAgICB0aGlzLmFkYXB0ZXIgPSBhZGFwdGVyXG4gICAgdGhpcy5kYXRhID0gZGVmYXVsdERhdGFcbiAgfVxuXG4gIGFzeW5jIHJlYWQoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgY29uc3QgZGF0YSA9IGF3YWl0IHRoaXMuYWRhcHRlci5yZWFkKClcbiAgICBpZiAoZGF0YSkgdGhpcy5kYXRhID0gZGF0YVxuICB9XG5cbiAgYXN5bmMgd3JpdGUoKTogUHJvbWlzZTx2b2lkPiB7XG4gICAgaWYgKHRoaXMuZGF0YSkgYXdhaXQgdGhpcy5hZGFwdGVyLndyaXRlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIGFzeW5jIHVwZGF0ZShmbjogKGRhdGE6IFQpID0+IHVua25vd24pOiBQcm9taXNlPHZvaWQ+IHtcbiAgICBmbih0aGlzLmRhdGEpXG4gICAgYXdhaXQgdGhpcy53cml0ZSgpXG4gIH1cbn1cblxuZXhwb3J0IGNsYXNzIExvd1N5bmM8VCA9IHVua25vd24+IHtcbiAgYWRhcHRlcjogU3luY0FkYXB0ZXI8VD5cbiAgZGF0YTogVFxuXG4gIGNvbnN0cnVjdG9yKGFkYXB0ZXI6IFN5bmNBZGFwdGVyPFQ+LCBkZWZhdWx0RGF0YTogVCkge1xuICAgIGNoZWNrQXJncyhhZGFwdGVyLCBkZWZhdWx0RGF0YSlcbiAgICB0aGlzLmFkYXB0ZXIgPSBhZGFwdGVyXG4gICAgdGhpcy5kYXRhID0gZGVmYXVsdERhdGFcbiAgfVxuXG4gIHJlYWQoKTogdm9pZCB7XG4gICAgY29uc3QgZGF0YSA9IHRoaXMuYWRhcHRlci5yZWFkKClcbiAgICBpZiAoZGF0YSkgdGhpcy5kYXRhID0gZGF0YVxuICB9XG5cbiAgd3JpdGUoKTogdm9pZCB7XG4gICAgaWYgKHRoaXMuZGF0YSkgdGhpcy5hZGFwdGVyLndyaXRlKHRoaXMuZGF0YSlcbiAgfVxuXG4gIHVwZGF0ZShmbjogKGRhdGE6IFQpID0+IHVua25vd24pOiB2b2lkIHtcbiAgICBmbih0aGlzLmRhdGEpXG4gICAgdGhpcy53cml0ZSgpXG4gIH1cbn1cblxuIDsoe30pOyAvLyBALS1lbmQtb2YtZmlsZS1mb3ItbW9kdWxlPXRucC1oZWxwZXJzIGxpYi9sb3dkYi9jb3JlL0xvdy50cyJdfQ==
@@ -1,4 +0,0 @@
1
- export * from './adapters/Memory';
2
- export * from './core/Low';
3
- ({}); // @--end-of-file-for-module=tnp-helpers lib/lowdb/index.ts
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi90bXAtbGlicy1mb3ItZGlzdC90bnAtaGVscGVycy9wcm9qZWN0cy90bnAtaGVscGVycy9zcmMvbGliL2xvd2RiL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLGNBQWMsbUJBQW1CLENBQUE7QUFDakMsY0FBYyxZQUFZLENBRXhCO0FBQUEsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLDJEQUEyRCIsInNvdXJjZXNDb250ZW50IjpbIlxuXG5leHBvcnQgKiBmcm9tICcuL2FkYXB0ZXJzL01lbW9yeSdcbmV4cG9ydCAqIGZyb20gJy4vY29yZS9Mb3cnXG5cbiA7KHt9KTsgLy8gQC0tZW5kLW9mLWZpbGUtZm9yLW1vZHVsZT10bnAtaGVscGVycyBsaWIvbG93ZGIvaW5kZXgudHMiXX0=
@@ -1,2 +0,0 @@
1
- // @ts-nocheck
2
- export declare const translate: any;
@@ -1,12 +0,0 @@
1
- // @ts-nocheck
2
- import { Adapter, SyncAdapter } from '../core/Low';
3
- export declare class Memory<T> implements Adapter<T> {
4
- __data: T | null;
5
- read(): Promise<T | null>;
6
- write(obj: T): Promise<void>;
7
- }
8
- export declare class MemorySync<T> implements SyncAdapter<T> {
9
- __data: T | null;
10
- read(): T | null;
11
- write(obj: T): void;
12
- }
@@ -1,25 +0,0 @@
1
- // @ts-nocheck
2
- export interface Adapter<T> {
3
- read: () => Promise<T | null>;
4
- write: (data: T) => Promise<void>;
5
- }
6
- export interface SyncAdapter<T> {
7
- read: () => T | null;
8
- write: (data: T) => void;
9
- }
10
- export declare class Low<T = unknown> {
11
- adapter: Adapter<T>;
12
- data: T;
13
- constructor(adapter: Adapter<T>, defaultData: T);
14
- read(): Promise<void>;
15
- write(): Promise<void>;
16
- update(fn: (data: T) => unknown): Promise<void>;
17
- }
18
- export declare class LowSync<T = unknown> {
19
- adapter: SyncAdapter<T>;
20
- data: T;
21
- constructor(adapter: SyncAdapter<T>, defaultData: T);
22
- read(): void;
23
- write(): void;
24
- update(fn: (data: T) => unknown): void;
25
- }
@@ -1,3 +0,0 @@
1
- // @ts-nocheck
2
- export * from './adapters/Memory';
3
- export * from './core/Low';