@shivaedev/create-app 0.6.4 → 0.6.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,5 +1,11 @@
1
1
  # Changelog
2
2
 
3
+ ## 0.6.5 - 2026-10-17
4
+
5
+ ### Changed
6
+
7
+ - New apps start on `@shivaedev/effect-pg-boss` 0.8.0, which bounds each batched job by its own expiry deadline.
8
+
3
9
  ## 0.6.4 - 2026-10-17
4
10
 
5
11
  ### Changed
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@shivaedev/create-app",
3
- "version": "0.6.4",
3
+ "version": "0.6.5",
4
4
  "description": "Create and install a Platform application from the maintained starter",
5
5
  "homepage": "https://github.com/ShivaeDev/platform/tree/main/packages/create-app#readme",
6
6
  "bugs": {
package/template.json CHANGED
@@ -1 +1 @@
1
- [{"content":"REFUQUJBU0VfVVJMPXBvc3RncmVzcWw6Ly9wb3N0Z3Jlczpwb3N0Z3Jlc0AxMjcuMC4wLjE6NTU0MzIvc3RhcnRlcl9kZXYKVEVTVF9EQVRBQkFTRV9VUkw9cG9zdGdyZXNxbDovL3Bvc3RncmVzOnBvc3RncmVzQDEyNy4wLjAuMTo1NTQzMi9zdGFydGVyX3Rlc3QKQkVUVEVSX0FVVEhfU0VDUkVUPXJlcGxhY2Utd2l0aC1hLXJhbmRvbS1zZWNyZXQtb2YtYXQtbGVhc3QtMzItY2hhcmFjdGVycwpBVVRIX1JBVEVfTElNSVRfRU5BQkxFRD10cnVlCiMgUFVCTElDX1VSTD1odHRwczovL2FwcC5leGFtcGxlCg==","path":".env.example"},{"content":"bmFtZTogQ0kKCm9uOgogIHB1c2g6CiAgcHVsbF9yZXF1ZXN0OgoKcGVybWlzc2lvbnM6CiAgY29udGVudHM6IHJlYWQKCmpvYnM6CiAgY2hlY2s6CiAgICBydW5zLW9uOiB1YnVudHUtbGF0ZXN0CiAgICB0aW1lb3V0LW1pbnV0ZXM6IDEwCiAgICBzZXJ2aWNlczoKICAgICAgcG9zdGdyZXM6CiAgICAgICAgaW1hZ2U6IHBvc3RncmVzOjE4CiAgICAgICAgZW52OgogICAgICAgICAgUE9TVEdSRVNfVVNFUjogcG9zdGdyZXMKICAgICAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiBwb3N0Z3JlcwogICAgICAgICAgUE9TVEdSRVNfREI6IGFwcF90ZXN0CiAgICAgICAgcG9ydHM6CiAgICAgICAgICAtIDU0MzI6NTQzMgogICAgICAgIG9wdGlvbnM6ID4tCiAgICAgICAgICAtLWhlYWx0aC1jbWQgcGdfaXNyZWFkeQogICAgICAgICAgLS1oZWFsdGgtaW50ZXJ2YWwgMTBzCiAgICAgICAgICAtLWhlYWx0aC10aW1lb3V0IDVzCiAgICAgICAgICAtLWhlYWx0aC1yZXRyaWVzIDUKICAgIGVudjoKICAgICAgVEVTVF9EQVRBQkFTRV9VUkw6IHBvc3RncmVzOi8vcG9zdGdyZXM6cG9zdGdyZXNAbG9jYWxob3N0OjU0MzIvYXBwX3Rlc3QKICAgIHN0ZXBzOgogICAgICAtIHVzZXM6IGFjdGlvbnMvY2hlY2tvdXRAM2QzYzQyZTVhYWM1YmE4MDU4MjVkYTc2NDEwYzE4MTI3M2JhOTBiMSAjIHY3CiAgICAgICAgd2l0aDoKICAgICAgICAgIHBlcnNpc3QtY3JlZGVudGlhbHM6IGZhbHNlCiAgICAgIC0gdXNlczogYWN0aW9ucy9zZXR1cC1ub2RlQDgyMDc2Mjc4NjAyNjc0MGM3NmYzNjA4NWIwZWZjNDdhMzFmZTUwMjAgIyB2NwogICAgICAgIHdpdGg6CiAgICAgICAgICBub2RlLXZlcnNpb246IDI0CiAgICAgICAgICBwYWNrYWdlLW1hbmFnZXItY2FjaGU6IGZhbHNlCiAgICAgIC0gdXNlczogcG5wbS9zZXR1cEBmYmRhNGM4NWZjMmUxZTA4NzIxY2Q4NzYzYWZlYThmNDhkNjBmMDI0ICMgdjMuMC4wCiAgICAgICAgd2l0aDoKICAgICAgICAgIGNhY2hlOiBmYWxzZQogICAgICAgICAgbm9kZS12ZXJzaW9uLWZpbGU6IGZhbHNlCiAgICAgIC0gcnVuOiBwbnBtIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUKICAgICAgLSBuYW1lOiBMaW50LCB0eXBlY2hlY2ssIGJ1aWxkIGFuZCB0ZXN0CiAgICAgICAgcnVuOiBwbnBtIHJ1biBjaQo=","path":".github/workflows/ci.yml"},{"content":"bm9kZV9tb2R1bGVzLwpkaXN0LwouZW52LmxvY2FsCmNvdmVyYWdlLwo=","path":".gitignore"},{"content":"aW1wb3J0IHsgY3JlYXRlUmFpbHdheUNvbnRleHQsIHByb2plY3QgfSBmcm9tICJyYWlsd2F5L2lhYyI7CmltcG9ydCB7IGV4cGVjdCwgaXQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgcmFpbHdheSBmcm9tICIuL3JhaWx3YXkudHMiOwoKaXQoImdpdmVzIG9ubHkgd2ViIGF1dGggc2V0dGluZ3MgYW5kIHByZS1kZXBsb3kgbWlncmF0aW9ucywgd2l0aCBhIGRhdGFiYXNlLW9ubHkgcmVzdGFydGluZyB3b3JrZXIiLCBhc3luYyAoKSA9PiB7Cgljb25zdCBkZWZpbml0aW9uID0gYXdhaXQgcmFpbHdheShjcmVhdGVSYWlsd2F5Q29udGV4dCh7IHByb2plY3ROYW1lOiAibm90ZXMiIH0pLCBwcm9qZWN0KTsKCWV4cGVjdChkZWZpbml0aW9uLm5hbWUpLnRvQmUoIm5vdGVzIik7CglleHBlY3QoZGVmaW5pdGlvbi5yZXNvdXJjZXMpLnRvRXF1YWwoWwoJCWV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgYWRkcmVzczogImRhdGFiYXNlLlBvc3RncmVzIiwgZW5naW5lOiAicG9zdGdyZXMiIH0pLAoJCWV4cGVjdC5vYmplY3RDb250YWluaW5nKHsKCQkJYWRkcmVzczogInNlcnZpY2Uud2ViIiwKCQkJYnVpbGQ6IHsgYnVpbGRDb21tYW5kOiAicG5wbSBidWlsZCIsIGJ1aWxkZXI6ICJSQUlMUEFDSyIgfSwKCQkJZGVwbG95OiB7CgkJCQloZWFsdGhjaGVja1BhdGg6ICIvaGVhbHRoIiwKCQkJCWhlYWx0aGNoZWNrVGltZW91dDogMTIwLAoJCQkJcHJlRGVwbG95Q29tbWFuZDogWyJwbnBtIG1pZ3JhdGUiXSwKCQkJCXN0YXJ0Q29tbWFuZDogInBucG0gc3RhcnQiLAoJCQl9LAoJCQl2YXJpYWJsZXM6IHsKCQkJCSJBVVRIX0NMSUVOVF9JUF9IRUFERVIiOiB7IHR5cGU6ICJsaXRlcmFsIiwgdmFsdWU6ICJ4LXJlYWwtaXAiIH0sCgkJCQkiQkVUVEVSX0FVVEhfU0VDUkVUIjogeyBuYW1lOiAiQkVUVEVSX0FVVEhfU0VDUkVUIiwgdHlwZTogInNoYXJlZFJlZmVyZW5jZSIgfSwKCQkJCSJEQVRBQkFTRV9VUkwiOiB7IG91dHB1dDogIkRBVEFCQVNFX1VSTCIsIHJlc291cmNlOiAiZGF0YWJhc2UuUG9zdGdyZXMiLCB0eXBlOiAicmVmZXJlbmNlIiB9LAoJCQkJIkhPU1QiOiB7IHR5cGU6ICJsaXRlcmFsIiwgdmFsdWU6ICIwLjAuMC4wIiB9LAoJCQkJIlBVQkxJQ19VUkwiOiB7IG5hbWU6ICJQVUJMSUNfVVJMIiwgdHlwZTogInNoYXJlZFJlZmVyZW5jZSIgfSwKCQkJCSJUUlVTVEVEX1BST1hZIjogeyB0eXBlOiAibGl0ZXJhbCIsIHZhbHVlOiAiMTAwLjY0LjAuMC8xMCIgfSwKCQkJfSwKCQl9KSwKCQlleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7CgkJCWFkZHJlc3M6ICJzZXJ2aWNlLndvcmtlciIsCgkJCWJ1aWxkOiB7IGJ1aWxkQ29tbWFuZDogInBucG0gYnVpbGQiLCBidWlsZGVyOiAiUkFJTFBBQ0siIH0sCgkJCWRlcGxveTogeyByZXN0YXJ0UG9saWN5VHlwZTogIk9OX0ZBSUxVUkUiLCBzdGFydENvbW1hbmQ6ICJwbnBtIHdvcmtlciIgfSwKCQkJdmFyaWFibGVzOiB7CgkJCQkiREFUQUJBU0VfVVJMIjogeyBvdXRwdXQ6ICJEQVRBQkFTRV9VUkwiLCByZXNvdXJjZTogImRhdGFiYXNlLlBvc3RncmVzIiwgdHlwZTogInJlZmVyZW5jZSIgfSwKCQkJfSwKCQl9KSwKCV0pOwp9KTsK","path":".railway/railway.test.ts"},{"content":"aW1wb3J0IHsgZGVmaW5lUmFpbHdheSwgcG9zdGdyZXMsIHByb2plY3QsIHNlcnZpY2UgfSBmcm9tICJyYWlsd2F5L2lhYyI7CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVSYWlsd2F5KChjdHgpID0+IHsKCWNvbnN0IGRhdGFiYXNlID0gcG9zdGdyZXMoIlBvc3RncmVzIik7Cgljb25zdCB3ZWIgPSBzZXJ2aWNlKCJ3ZWIiLCB7CgkJYnVpbGQ6IHsgYnVpbGRDb21tYW5kOiAicG5wbSBidWlsZCIsIGJ1aWxkZXI6ICJSQUlMUEFDSyIgfSwKCQllbnY6IHsKCQkJIkFVVEhfQ0xJRU5UX0lQX0hFQURFUiI6ICJ4LXJlYWwtaXAiLAoJCQkiQkVUVEVSX0FVVEhfU0VDUkVUIjogY3R4LnNoYXJlZC5CRVRURVJfQVVUSF9TRUNSRVQsCgkJCSJEQVRBQkFTRV9VUkwiOiBkYXRhYmFzZS5lbnYuREFUQUJBU0VfVVJMLAoJCQkiSE9TVCI6ICIwLjAuMC4wIiwKCQkJIlBVQkxJQ19VUkwiOiBjdHguc2hhcmVkLlBVQkxJQ19VUkwsCgkJCSJUUlVTVEVEX1BST1hZIjogIjEwMC42NC4wLjAvMTAiLAoJCX0sCgkJaGVhbHRoY2hlY2s6ICIvaGVhbHRoIiwKCQloZWFsdGhjaGVja1RpbWVvdXQ6IDEyMCwKCQlwcmVEZXBsb3k6ICJwbnBtIG1pZ3JhdGUiLAoJCXN0YXJ0OiAicG5wbSBzdGFydCIsCgl9KTsKCWNvbnN0IHdvcmtlciA9IHNlcnZpY2UoIndvcmtlciIsIHsKCQlidWlsZDogeyBidWlsZENvbW1hbmQ6ICJwbnBtIGJ1aWxkIiwgYnVpbGRlcjogIlJBSUxQQUNLIiB9LAoJCWRlcGxveTogeyByZXN0YXJ0UG9saWN5VHlwZTogIk9OX0ZBSUxVUkUiIH0sCgkJZW52OiB7CgkJCSJEQVRBQkFTRV9VUkwiOiBkYXRhYmFzZS5lbnYuREFUQUJBU0VfVVJMLAoJCX0sCgkJc3RhcnQ6ICJwbnBtIHdvcmtlciIsCgl9KTsKCXJldHVybiBwcm9qZWN0KGN0eC5wcm9qZWN0TmFtZSA/PyAiYXBwIiwgeyByZXNvdXJjZXM6IFtkYXRhYmFzZSwgd2ViLCB3b3JrZXJdIH0pOwp9KTsK","path":".railway/railway.ts"},{"content":"IyBTdGFydGVyIGFwcGxpY2F0aW9uCgpUaGlzIHByaXZhdGUgYXBwbGljYXRpb24gaXMgdGhlIHNvdXJjZSB0ZW1wbGF0ZSB0aGF0IGBAc2hpdmFlZGV2L2NyZWF0ZS1hcHBgIHBhY2thZ2VzIGZvciBuZXcgUGxhdGZvcm0gYXBwcy4gS2VlcCBpdCBzbWFsbCBlbm91Z2ggdG8gdW5kZXJzdGFuZCBpbiBvbmUgc2l0dGluZzogb25lIGRvbWFpbiB0YWJsZSwgYW4gYXV0aGVudGljYXRlZCBub3RlcyB3b3JrZmxvdyBhbmQgYSBzaWduLWluIHNjcmVlbi4gQmV0dGVyIEF1dGggb3ducyBpdHMgYWNjb3VudCBhbmQgc2Vzc2lvbiB0YWJsZXM7IHRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyB0aGVtLiBQcmVmZXIgbmF0aXZlIEVmZmVjdCBjb21wb3NpdGlvbiBhbmQgdGhlIGZyYW1ld29yaydzIGV4aXN0aW5nIHBhdGggb3ZlciBoZWxwZXJzIHRoYXQgb2JzY3VyZSBpdC4KClRoZSBhcHBsaWNhdGlvbiBvd25zIGl0cyBVSSBhbmQgbG9jYWwgc2Vzc2lvbiBwb2xpY3kuIFNoYXJlZCBkZWNsYXJhdGlvbnMgc3RheSBicm93c2VyIHNhZmU7IFBvc3RncmVTUUwsIHNlcnZpY2VzIGFuZCB0aGUgYXBwIGhvc3Qgc3RheSBvbiB0aGUgc2VydmVyLiBLZWVwIHRoZSBwbnBtIGNhdGFsb2cgYW5kIFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiBzZWxmLWNvbnRhaW5lZCBzbyBnZW5lcmF0aW5nIHRoZSBhcHAgZG9lcyBub3QgcmVxdWlyZSByZXBvc2l0b3J5IGZpbGVzLgoKVXNlIHRoZSByb290IHJlcG9zaXRvcnkgZ3VpZGFuY2Ugd2hpbGUgZGV2ZWxvcGluZyB0aGlzIHRlbXBsYXRlLiBUaGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpIGV4cGxhaW5zIGNyZWF0aW5nIGFuZCBydW5uaW5nIHRoZSBhcHAuIEEgc2VydmVyIGNoYW5nZSBuZWVkcyB0aGUgcmVhbCBQb3N0Z3JlU1FMIHJvdW5kLXRyaXAgdGVzdDsgYSBmb3JtIGNoYW5nZSBuZWVkcyBpdHMgaGFwcHktZG9tIHRlc3QuCgpXcml0ZSBuZXcgdGVzdHMgYXMgc3RvcmllcyBvbiB0aGUga2l0cyBpbiBgc3JjL3Rlc3Qtc3VwcG9ydC9gOiBgYXBwbGljYXRpb24udHNgIGZvciByZWFsIFBvc3RncmVTUUwgYW5kIEhUVFAsIGBzY3JlZW5zLnRzYCBmb3IgZm9jdXNlZCBoYXBweS1kb20gYmVoYXZpb3IsIGFuZCBgbWlncmF0aW9uLnRzYCBmb3Igc2NoZW1hIHVwZ3JhZGVzLiBBZGQgZG9tYWluIHRyYWl0cyBhbmQgdmVyYnMgdG8gdGhlIGtpdCBpbnN0ZWFkIG9mIGJ1aWxkaW5nIGhvc3RzLCBwcm94aWVzLCBzZXNzaW9ucyBvciByZXF1ZXN0cyBpbmxpbmUgaW4gc3BlY3MuIEtlZXAgaW5mcmFzdHJ1Y3R1cmUgc2NvcGVkLCB1c2UgYSBsaXZlIGNsb2NrIGZvciBIVFRQIGFuZCBET00gc3RvcmllcywgYW5kIHJldGFpbiBpbmRlcGVuZGVudCBTUUwgYXNzZXJ0aW9ucyB3aGVyZSBwZXJzaXN0ZW5jZSBpcyB0aGUgYmVoYXZpb3IuIFNlZSB0aGUgUkVBRE1FIGZvciB0aGUgc21hbGxlc3Qgc3RvcnkuCg==","path":"AGENTS.md"},{"content":"IyBTdGFydGVyIGFwcGxpY2F0aW9uCgpUaGlzIHByaXZhdGUgYXBwbGljYXRpb24gaXMgdGhlIHNvdXJjZSB0ZW1wbGF0ZSB0aGF0IGBAc2hpdmFlZGV2L2NyZWF0ZS1hcHBgIHBhY2thZ2VzIGZvciBuZXcgUGxhdGZvcm0gYXBwcy4gS2VlcCBpdCBzbWFsbCBlbm91Z2ggdG8gdW5kZXJzdGFuZCBpbiBvbmUgc2l0dGluZzogb25lIGRvbWFpbiB0YWJsZSwgYW4gYXV0aGVudGljYXRlZCBub3RlcyB3b3JrZmxvdyBhbmQgYSBzaWduLWluIHNjcmVlbi4gQmV0dGVyIEF1dGggb3ducyBpdHMgYWNjb3VudCBhbmQgc2Vzc2lvbiB0YWJsZXM7IHRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyB0aGVtLiBQcmVmZXIgbmF0aXZlIEVmZmVjdCBjb21wb3NpdGlvbiBhbmQgdGhlIGZyYW1ld29yaydzIGV4aXN0aW5nIHBhdGggb3ZlciBoZWxwZXJzIHRoYXQgb2JzY3VyZSBpdC4KClRoZSBhcHBsaWNhdGlvbiBvd25zIGl0cyBVSSBhbmQgbG9jYWwgc2Vzc2lvbiBwb2xpY3kuIFNoYXJlZCBkZWNsYXJhdGlvbnMgc3RheSBicm93c2VyIHNhZmU7IFBvc3RncmVTUUwsIHNlcnZpY2VzIGFuZCB0aGUgYXBwIGhvc3Qgc3RheSBvbiB0aGUgc2VydmVyLiBLZWVwIHRoZSBwbnBtIGNhdGFsb2cgYW5kIFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiBzZWxmLWNvbnRhaW5lZCBzbyBnZW5lcmF0aW5nIHRoZSBhcHAgZG9lcyBub3QgcmVxdWlyZSByZXBvc2l0b3J5IGZpbGVzLgoKVXNlIHRoZSByb290IHJlcG9zaXRvcnkgZ3VpZGFuY2Ugd2hpbGUgZGV2ZWxvcGluZyB0aGlzIHRlbXBsYXRlLiBUaGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpIGV4cGxhaW5zIGNyZWF0aW5nIGFuZCBydW5uaW5nIHRoZSBhcHAuIEEgc2VydmVyIGNoYW5nZSBuZWVkcyB0aGUgcmVhbCBQb3N0Z3JlU1FMIHJvdW5kLXRyaXAgdGVzdDsgYSBmb3JtIGNoYW5nZSBuZWVkcyBpdHMgaGFwcHktZG9tIHRlc3QuCgpXcml0ZSBuZXcgdGVzdHMgYXMgc3RvcmllcyBvbiB0aGUga2l0cyBpbiBgc3JjL3Rlc3Qtc3VwcG9ydC9gOiBgYXBwbGljYXRpb24udHNgIGZvciByZWFsIFBvc3RncmVTUUwgYW5kIEhUVFAsIGBzY3JlZW5zLnRzYCBmb3IgZm9jdXNlZCBoYXBweS1kb20gYmVoYXZpb3IsIGFuZCBgbWlncmF0aW9uLnRzYCBmb3Igc2NoZW1hIHVwZ3JhZGVzLiBBZGQgZG9tYWluIHRyYWl0cyBhbmQgdmVyYnMgdG8gdGhlIGtpdCBpbnN0ZWFkIG9mIGJ1aWxkaW5nIGhvc3RzLCBwcm94aWVzLCBzZXNzaW9ucyBvciByZXF1ZXN0cyBpbmxpbmUgaW4gc3BlY3MuIEtlZXAgaW5mcmFzdHJ1Y3R1cmUgc2NvcGVkLCB1c2UgYSBsaXZlIGNsb2NrIGZvciBIVFRQIGFuZCBET00gc3RvcmllcywgYW5kIHJldGFpbiBpbmRlcGVuZGVudCBTUUwgYXNzZXJ0aW9ucyB3aGVyZSBwZXJzaXN0ZW5jZSBpcyB0aGUgYmVoYXZpb3IuIFNlZSB0aGUgUkVBRE1FIGZvciB0aGUgc21hbGxlc3Qgc3RvcnkuCg==","path":"CLAUDE.md"},{"content":"IyBAc2hpdmFlZGV2L3N0YXJ0ZXIKCkEgc21hbGwgbm90ZXMgYXBwIHNob3dpbmcgUGxhdGZvcm0ncyBwYXRoIGZyb20gYSBtaWdyYXRlZCBQb3N0Z3JlU1FMIHRhYmxlIHRocm91Z2ggUlBDIHRvIGEgUmVhY3QgZm9ybS4gQ3JlYXRlIHlvdXIgb3duIGFwcGxpY2F0aW9uIHdpdGggYHBucG0gY3JlYXRlIEBzaGl2YWVkZXYvYXBwIG15LWFwcGAuCgpgYGB0c3gKY29uc3QgcXVlcnkgPSB1c2VRdWVyeShjbGllbnQuYXBpLmxpc3QucXVlcnkoKSk7CmBgYAoKVGhlIGF1dGhlbnRpY2F0ZWQgcm91dGUgbG9hZGVycyBhbmQgc2NyZWVucyBzaGFyZSB0aGUgc2FtZSBuYXRpdmUgcXVlcnkgcmVnaXN0cnkuIENyZWF0ZSBhIG5vdGUsIG9wZW4gaXRzIHRpdGxlIHRvIGVkaXQgaXQsIG9yIGRlbGV0ZSBpdCBhbmQgcmV0dXJuIHRvIHRoZSByZWZyZXNoZWQgbGlzdC4gQmV0dGVyIEF1dGggc3VwcGxpZXMgc2lnbnVwLCBzaWduLWluIGFuZCBzaWduLW91dDsgZWFjaCBhY2NvdW50IHNlZXMgaXRzIG93biBub3Rlcy4KClRoZSBgL25vdGVzLyRub3RlSWRgIHJvdXRlIHBhcnNlcyBhIG51bWVyaWMgSUQgYW5kIGxvYWRzIGBub3Rlcy5nZXRgIHRocm91Z2ggYGxvYWRRdWVyeWAuIEl0cyBmb3JtIHVzZXMgYHVzZUVkaXRvcmA6IGEgbGl2ZSByZWZyZXNoIGtlZXBzIGVkaXRlZCBmaWVsZHMsIGEgcmVqZWN0ZWQgc2F2ZSBrZWVwcyB0aGUgaW5wdXQsIGFuZCBhIHN1Y2Nlc3NmdWwgc2F2ZSBhcHBsaWVzIHRoZSByZXR1cm5lZCB0aXRsZS4gVXBkYXRlcyBhbmQgZGVsZXRlcyBzZW5kIHRoZSB2ZXJzaW9uIHRoZSBjbGllbnQgcmVhZC4gQSBzdGFsZSB2ZXJzaW9uIHJldHVybnMgUGxhdGZvcm0ncyBgQ29uZmxpY3RgIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHJvdzsgcmVmcmVzaCBhbmQgcmV2aWV3IHRoZSByZXRhaW5lZCBkcmFmdCBiZWZvcmUgc2F2aW5nIGFnYWluLiBBbm90aGVyIGFjY291bnQgcmVjZWl2ZXMgYE5vdEZvdW5kYCBmb3IgYW4gaW5kaXZpZHVhbCBub3RlLiBUaGUgd29yZC1jb3VudCB3b3JrZXIgdXNlcyB0aGUgc2FtZSB2ZXJzaW9uZWQgbm90ZXMgcmVwb3NpdG9yeSBhbmQgcmVjYWxjdWxhdGVzIHRoZSBjb3VudCBhZnRlciBhbiBlZGl0LiBUaGUgcmVxdWVzdCBydW50aW1lIHJlZ2lzdGVycyBxdWV1ZSBkZWZpbml0aW9ucyB0aHJvdWdoIGBOb3RlSm9icy5sYXllcmAsIHdoaWNoIGNyZWF0ZXMgcXVldWVzIGFuZCBkZWFkLWxldHRlciBxdWV1ZXMgd2l0aG91dCBzdGFydGluZyBhIHdvcmtlci4gQ3JlYXRlIGFuZCBlZGl0IGVucXVldWUgYWZ0ZXIgdGhlaXIgd3JpdGUgdHJhbnNhY3Rpb247IHF1ZXVlIGVycm9ycyBhcmUgbG9nZ2VkIGFuZCB0aGUgc2F2ZWQgbm90ZSBpcyByZXR1cm5lZCB3aXRoIGEgcGVuZGluZyB3b3JkIGNvdW50LiBFbnF1ZXVlaW5nIHVzZXMgYW4gaW5kZXBlbmRlbnQgY29ubmVjdGlvbiwgc28gYSBjYWxsZXIncyBvdXRlciB0cmFuc2FjdGlvbiByb2xsYmFjayBkb2VzIG5vdCByZW1vdmUgaXRzIGpvYi4KCiMjIENyZWF0ZSBvciBydW4gaXQKCkZvbGxvdyB0aGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpLiBHZW5lcmF0ZWQgYXBwcyBhbHJlYWR5IGhhdmUgYSBnaXQtaWdub3JlZCBgLmVudi5sb2NhbGAgd2l0aCBhIGZyZXNoIGF1dGhlbnRpY2F0aW9uIHNlY3JldCBhbmQgZGV2ZWxvcG1lbnQgYW5kIHRlc3QgZGF0YWJhc2UgVVJMcy4gSW4gdGhpcyByZXBvc2l0b3J5LCBydW4gYC4vc2NyaXB0L3VwZGF0ZWAgYXQgdGhlIHJvb3QsIGNvcHkgYC5lbnYuZXhhbXBsZWAgdG8gYC5lbnYubG9jYWxgIGhlcmUsIGFuZCByZXBsYWNlIHRoZSBleGFtcGxlIHNlY3JldCB3aXRoIHRoZSBvdXRwdXQgb2YgYG9wZW5zc2wgcmFuZCAtYmFzZTY0IDMyYC4gUnVuIGBwbnBtIGRldmAgYW5kIG9wZW4gYGh0dHA6Ly8xMjcuMC4wLjE6NTE3M2AuCgpgcG5wbSBkZXZgIGZpcnN0IHJ1bnMgYHBucG0gZGI6c2V0dXBgLCB3aGljaCBwcmVwYXJlcyBib3RoIGxvY2FsIGRhdGFiYXNlcyB0aHJvdWdoIGBAc2hpdmFlZGV2L2xvY2FsLXBvc3RncmVzYC4gSGF2ZSBQb3N0Z3JlU1FMIDE4LjYgb24gbG9vcGJhY2sgcG9ydCA1NTQzMiBvciBsb2NhbCBEb2NrZXIgYXZhaWxhYmxlLiBUaGVuIGBwbnBtIG1pZ3JhdGVgIGFwcGxpZXMgbWlncmF0aW9ucyBiZWZvcmUgdGhlIHdhdGNoZXJzIHN0YXJ0LiBSdW4gYHBucG0gZGI6c2V0dXBgIHNlcGFyYXRlbHkgdG8gcHJlcGFyZSBkYXRhYmFzZXMgd2l0aG91dCBzdGFydGluZyB0aGUgYXBwLgoKVGhlIGFwcCB1c2VzIFRhaWx3aW5kJ3MgbmV1dHJhbCBzaGFkY24gdGhlbWUgYW5kIGFwcGxpY2F0aW9uLW93bmVkIGBCdXR0b25gIGFuZCBgSW5wdXRgIGNvbXBvbmVudHMuIFNlcnZlciBlbnRyeSBwb2ludHMgYXJlIGluIGBzcmMvc2VydmVyYDsgdGhlIHNoYXJlZCBjb250cmFjdCBpcyBgc3JjL25vdGVzLnRzYDsgdGhlIGJyb3dzZXIgc3RhcnRzIGluIGBzcmMvY2xpZW50L2VudHJ5LnRzeGAuCgpgcG5wbSBidWlsZCAmJiBwbnBtIG1pZ3JhdGUgJiYgcG5wbSBzdGFydGAgc2VydmVzIHRoZSBidWlsdCBVSSwgQmV0dGVyIEF1dGggZW5kcG9pbnRzIGFuZCBIVFRQL05ESlNPTiBSUEMgdG9nZXRoZXIgYXQgYGh0dHA6Ly8xMjcuMC4wLjE6MzAwMGAuIFNldCBgREFUQUJBU0VfVVJMYCBhbmQgYEJFVFRFUl9BVVRIX1NFQ1JFVGAgaW4gYC5lbnYubG9jYWxgIG9yIHRoZSBzaGVsbC4gVGhlIHNlY3JldCBuZWVkcyBhdCBsZWFzdCAzMiByYW5kb20gY2hhcmFjdGVyczsgZ2VuZXJhdGUgb25lIHdpdGggYG9wZW5zc2wgcmFuZCAtYmFzZTY0IDMyYC4gRm9yIGhvc3RpbmcgYmVoaW5kIGEgcHJveHksIGZvbGxvdyB0aGUgcXVpY2tzdGFydCdzIFtEZXBsb3kgc2VjdGlvbl0oaHR0cHM6Ly9naXRodWIuY29tL1NoaXZhZURldi9wbGF0Zm9ybS9ibG9iL21haW4vZG9jcy9mcmFtZXdvcmsvcXVpY2tzdGFydC5tZCNkZXBsb3kpLCBzZXR0aW5nIGBQVUJMSUNfVVJMYCB0byB5b3VyIHB1YmxpYyBhcHAgVVJMLgoKYEFVVEhfUkFURV9MSU1JVF9FTkFCTEVEYCBpcyBhbiBFZmZlY3QgQ29uZmlnIGJvb2xlYW4gdGhhdCBkZWZhdWx0cyB0byBgdHJ1ZWAgaW4gZXZlcnkgZW52aXJvbm1lbnQsIGluY2x1ZGluZyB0ZXN0cy4gU2V0IGl0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSBCZXR0ZXIgQXV0aCByYXRlIGxpbWl0aW5nIGZvciB0aGlzIGFwcC4KCmBUUlVTVEVEX1BST1hZYCBjb250cm9scyBib3RoIHRoZSBob3N0J3MgZm9yd2FyZGVkIGF1dGhvcml0eSBhbmQgQmV0dGVyIEF1dGgncyBjbGllbnQgSVBzIGZvciBhdXRoIHJhdGUgbGltaXRpbmcuIGBBVVRIX0NMSUVOVF9JUF9IRUFERVJgIGlzIGFuIEVmZmVjdCBDb25maWcgc3RyaW5nIHRoYXQgZGVmYXVsdHMgdG8gYHgtZm9yd2FyZGVkLWZvcmA7IHNldCBpdCB0byBhbm90aGVyIGhlYWRlciBuYW1lIHRvIGNoYW5nZSB3aGljaCBoZWFkZXIgYXV0aCByZWFkcy4gQXV0aCBhY2NlcHRzIHRoYXQgaGVhZGVyIG9ubHkgZnJvbSBhIG1hdGNoaW5nIHRyYW5zcG9ydCBwZWVyIGFuZCBwYXNzZXMgaXQgdG8gQmV0dGVyIEF1dGgncyBJUCBhZGRyZXNzIG9wdGlvbnMsIHdpdGggdGhlIHNhbWUgdHJ1c3RlZCBwcm94eSBhZGRyZXNzZXMgYW5kIHJhbmdlcy4gRm9yIHRoZSBkZWZhdWx0IGBYLUZvcndhcmRlZC1Gb3JgLCB0aGUgcHJveHkgbXVzdCBvdmVyd3JpdGUgdGhlIGhlYWRlciBvciBhcHBlbmQgdGhlIGFjdHVhbCBjbGllbnQgSVAuIFdoZW4gYFRSVVNURURfUFJPWFlgIGlzIHVuc2V0LCBhdXRoIGlnbm9yZXMgZm9yd2FyZGVkIElQIGhlYWRlcnM7IHdoZW4gcmF0ZSBsaW1pdGluZyBpcyBlbmFibGVkLCB2aXNpdG9ycyBzaGFyZSBvbmUgcmF0ZS1saW1pdCBidWNrZXQgcGVyIHBhdGguCgpUaGUgUmFpbHdheSB3ZWIgY29uZmlndXJhdGlvbiBzZXRzIGBBVVRIX0NMSUVOVF9JUF9IRUFERVI9eC1yZWFsLWlwYCBiZWNhdXNlIFJhaWx3YXkgZG9jdW1lbnRzIGBYLVJlYWwtSVBgIGFzIHRoZSBjbGllbnQncyByZW1vdGUgSVAuIEl0cyBgWC1Gb3J3YXJkZWQtRm9yYCBjaGFpbiBjYW4gaW5jbHVkZSBlZGdlIGhvcHMgb3V0c2lkZSB0aGUgdHJ1c3RlZCBgMTAwLjY0LjAuMC8xMGAgcmFuZ2UsIHdoaWNoIEJldHRlciBBdXRoIHdvdWxkIHNlbGVjdCBpbnN0ZWFkIG9mIHRoZSB2aXNpdG9yLiBSYWlsd2F5IGRvZXMgbm90IGRvY3VtZW50IHdoZXRoZXIgaXQgcmVwbGFjZXMgYSBjYWxsZXItc3VwcGxpZWQgYFgtUmVhbC1JUGA7IHZlcmlmeSB0aGF0IGJlaGF2aW9yIGluIHlvdXIgcHJvZHVjdGlvbiBkZXBsb3ltZW50IGJlZm9yZSByZWx5aW5nIG9uIHZpc2l0b3IgaXNvbGF0aW9uLgoKQSBnZW5lcmF0ZWQgYXBwIHJ1bnMgYHBucG0gcnVuIHNldHVwYCBiZWZvcmUgaXRzIGZpcnN0IGNvbW1pdDogZGVwZW5kZW5jaWVzIGFuZCBRdWFsaXR5J3MgcHJlLWNvbW1pdCBob29rIGFyZSBpbnN0YWxsZWQsIGFuZCB0aGUgY29tbWl0IHJ1bnMgbGludCBhbmQgdHlwZWNoZWNrLiBBZnRlciBjbG9uaW5nIHRoZSBnZW5lcmF0ZWQgcmVwb3NpdG9yeSwgcnVuIGBwbnBtIHJ1biBzZXR1cGAgYWdhaW4gZm9yIHRoYXQgY2hlY2tvdXQuIFNldHVwIGluc3RhbGxzIGEgaG9vayBvbmx5IHdoZW4gdGhlIGFwcCBoYXMgaXRzIG93biBgLmdpdGA7IGl0IGxlYXZlcyBhbiBlbmNsb3NpbmcgcmVwb3NpdG9yeSdzIGhvb2tzIGFsb25lLiBSdW4gYHBucG0gcmVhZHlgIGZvciB0aGUgZnVsbCBsb2NhbCBnYXRlLiBJdCB1c2VzIHRoZSBzYW1lIGxpbnQsIHR5cGVjaGVjaywgYnVpbGQgYW5kIHRlc3Qgc2NyaXB0IGFzIGAuZ2l0aHViL3dvcmtmbG93cy9jaS55bWxgIGFuZCB0aGUgcHVibGlzaGVkLXN0YXJ0ZXIgY2hlY2ssIHdpdGggUG9zdGdyZVNRTCBiYWNraW5nIHRoZSB0ZXN0cy4gVGhlIFJhaWx3YXkgQ0xJIGFwcGxpZXMgYC5yYWlsd2F5L3JhaWx3YXkudHNgIHRvIGNvbmZpZ3VyZSBQb3N0Z3JlU1FMLCB3ZWIgYW5kIHdvcmtlciBzZXJ2aWNlcy4gQm90aCBzZXJ2aWNlcyBidWlsZC4gV2ViIHJ1bnMgYHBucG0gbWlncmF0ZWAgaW4gaXRzIHByZS1kZXBsb3kgY29udGFpbmVyLCB0aGVuIHN0YXJ0cyBIVFRQIGFuZCBjaGVja3MgdGhlIGRhdGFiYXNlLWJhY2tlZCBgL2hlYWx0aGAgcm91dGUuIFRoZSB3b3JrZXIgc3RhcnRzIGBwbnBtIHdvcmtlcmAgYW5kIGZhaWxzIHVudGlsIHRoZSBzY2hlbWEgaXMgY3VycmVudCwgc28gUmFpbHdheSByZXN0YXJ0cyBpdC4gTmVpdGhlciBwcm9jZXNzIG1pZ3JhdGVzIGF0IGJvb3QuIFRoZSB3b3JrZXIgYW5kIG1pZ3JhdGUgY29tbWFuZCBuZWVkIG9ubHkgYERBVEFCQVNFX1VSTGA7IHdlYiBhbHNvIG5lZWRzIGl0cyBhdXRoIHNlY3JldCBhbmQgcHVibGljIFVSTC4gRm9sbG93IHRoZSBxdWlja3N0YXJ0IHRvIHBsYW4gYW5kIGFwcGx5IHRoZSBjb25maWd1cmF0aW9uLCBjb25uZWN0IHRoZSByZXBvc2l0b3J5IGFuZCBkZXBsb3kgYm90aCBzZXJ2aWNlcy4KClRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyBCZXR0ZXIgQXV0aCdzIHRhYmxlcyB3aXRoIGBnZXRNaWdyYXRpb25zKGF1dGhPcHRpb25zKGRhdGFiYXNlKSlgIGZvbGxvd2VkIGJ5IGBydW5NaWdyYXRpb25zKClgLiBUaGUgYXV0aCBpbnN0YW5jZSBzaGFyZXMgdGhlc2Ugc2NoZW1hIG9wdGlvbnM7IG1pZ3JhdGlvbnMgY29uc3RydWN0IG5vIGF1dGggaW5zdGFuY2UgYW5kIG5lZWQgbm8gc2VjcmV0LiBObyBzZXBhcmF0ZSBhdXRoIG1pZ3JhdGlvbiBjb21tYW5kIGlzIG5lZWRlZC4gUHJvdGVjdGVkIG9wZXJhdGlvbnMgZGVjbGFyZSBgQXV0aGVudGljYXRlZFVzZXJgOyBgYXV0aGVudGljYXRlZFVzZXJMYXllcihzZXNzaW9ucylgIHN1cHBsaWVzIGBTZXNzaW9uVXNlcmAgZnJvbSB0aGUgYGJldHRlckF1dGhTZXNzaW9uc2AgcHJvdmlkZXIuIE5vdGUgaGFuZGxlcnMgdXNlIGl0cyBpZCBmb3Igb3duZXJzaGlwLCBhbmQgYG5vdGVzLndob2FtaWAgcmV0dXJucyBpZCwgbmFtZSBhbmQgZW1haWwgd2l0aG91dCBxdWVyeWluZyBhdXRoIHRhYmxlczsgc2lnbmVkLW91dCBjYWxscyByZXR1cm4gdHlwZWQgYFVuYXV0aG9yaXplZGAgZmFpbHVyZXMuIFRoZSBVSSBzaG93cyBhIHNpZ24taW4gcHJvbXB0LCBhbmQgYFNlc3Npb25Cb3VuZGFyeWAgcmVwbGFjZXMgY2FjaGVkIHF1ZXJpZXMgYW5kIGRyYWZ0cyB3aGVuIHRoZSBzZXNzaW9uIGNoYW5nZXMuCgpUaGUgd29ya2VyIGxvZ3MgYFdvcmtlciBtaWdyYXRpb25zIGFwcGxpZWRgIGFmdGVyIGl0cyBzY2hlbWEgY2hlY2sgYW5kIGBXb3JrZXIgcmVhZHkgdG8gdGFrZSBqb2JzYCBhZnRlciByZWdpc3RlcmluZyBoYW5kbGVycywgdGhyb3VnaCBFZmZlY3TigJlzIGxvZ2dlci4KClRoZSBicm93c2VyIGVudHJ5IHBvaW50IGNyZWF0ZXMgYG1ha2VBdXRoKHsgYmFzZVVybCB9KWAgYW5kIHN1cHBsaWVzIGl0IHRvIGBBcHBgLiBTZXNzaW9uIGNoZWNraW5nIGFuZCBhdXRoIGFjdGlvbnMgdXNlIHRoYXQgaW5zdGFuY2UuIFN0b3JpZXMgY2FuIGNyZWF0ZSBhbiBhdXRoIGNsaWVudCBmb3IgdGhlaXIgb3duIEhUVFAgaG9zdCB3aXRoIHRoZSBhcHBsaWNhdGlvbiBraXTigJlzIGBhdXRoQ2xpZW50KClgIHZlcmIuCgpUaGUgVHlwZVNjcmlwdCBjb25maWd1cmF0aW9uIGtlZXBzIHN0cmljdCBhcHBsaWNhdGlvbiBjaGVja2luZyBhbmQgc2V0cyBgc2tpcExpYkNoZWNrOiB0cnVlYCBmb3IgZGVwZW5kZW5jaWVzIHRoYXQgZGVjbGFyZSB1bnVzZWQgcnVudGltZSB0eXBlcy4gRXhpc3Rpbmcgbm90ZXMgZnJvbSB0aGUgdW5hdXRoZW50aWNhdGVkIHN0YXJ0ZXIgaGF2ZSBubyBhY2NvdW50IG93bmVyIGFuZCBhcmUgbm90IHNob3duIHRvIHNpZ25lZC1pbiB1c2Vycy4KClRvIGV4cG9ydCBFZmZlY3Qgc3BhbnMsIGVuYWJsZSBSYWlsd2F5J3MgdHJhY2luZyBzZXR0aW5nIG9uIGVhY2ggd2ViIGFuZCB3b3JrZXIgc2VydmljZS4gSXQgc3VwcGxpZXMgYE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVGAgb3IgYE9URUxfRVhQT1JURVJfT1RMUF9UUkFDRVNfRU5EUE9JTlRgLCBwbHVzIGV4cG9ydGVyIGhlYWRlcnMgYW5kIHNlcnZpY2UgbWV0YWRhdGEuIEZvciBhbm90aGVyIGNvbGxlY3Rvciwgc2V0IHRoZSBiYXNlIGVuZHBvaW50ICh0aGUgZXhwb3J0ZXIgYXBwZW5kcyBgL3YxL3RyYWNlc2ApIG9yIHRoZSBjb21wbGV0ZSB0cmFjZXMgZW5kcG9pbnQsIGBPVEVMX0VYUE9SVEVSX09UTFBfSEVBREVSU2AgYXMgY29tbWEtc2VwYXJhdGVkIGBrZXk9dmFsdWVgIHBhaXJzIHdpdGggVVJMLWVuY29kZWQgdmFsdWVzLCBgT1RFTF9TRVJWSUNFX05BTUVgLCBhbmQgb3B0aW9uYWwgYE9URUxfUkVTT1VSQ0VfQVRUUklCVVRFU2AuIFRoZSBjb21wbGV0ZSB0cmFjZXMgZW5kcG9pbnQgdGFrZXMgcHJlY2VkZW5jZS4gVGhlIGhvc3QgYW5kIGBub3RlV29ya2VyYCBwcm92aWRlIHRoZSBzYW1lIGBvdGxwVHJhY2luZ2AgTGF5ZXIuIFdpdGggbm8gZW5kcG9pbnQsIG5vIGV4cG9ydGVyIHJ1bnMuIFRoaXMgZXhwb3J0cyBFZmZlY3Qgc3BhbnM7IGVCUEYgYXV0by1pbnN0cnVtZW50YXRpb24gaXMgbm90IHBhcnQgb2YgdGhlIGZyYW1ld29yayBwYXRoLiBUaGUgd29ya2VyIHJlY2VpdmVyIHN0b3J5IHByb3ZlcyBhIHJlYWwgUG9zdGdyZVNRTCBqb2IgZXhwb3J0cyBhIGBDb3VudFdvcmRzYCBzcGFuIGFuZCBzdGlsbCBjb21wbGV0ZXMgd2l0aCBhIGNvbGxlY3RvciBkb3duOyBpdCBkb2VzIG5vdCBwcm92ZSBhIHByb3ZpZGVyJ3MgZGVwbG95bWVudCBzZXR1cC4KCldyaXRlIG5ldyB0ZXN0cyBhcyBzdG9yaWVzLiBUaGUga2l0IGluIFtgc3JjL3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50c2BdKHNyYy90ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMpIG93bnMgYSBkaXNwb3NhYmxlIFBvc3RncmVTUUwgZGF0YWJhc2UgYW5kIHRoZSByZWFsIEhUVFAgYXBwIGhvc3QuIFRyYWl0cyBzdWNoIGFzIGBzaWduZWRJbigpYCwgYGxlZ2FjeU5vdGUodGl0bGUpYCBhbmQgYGJlaGluZFByb3h5KClgIGRlc2NyaWJlIHNldHVwOyB2ZXJicyBkcml2ZSBhdXRoZW50aWNhdGVkIG5vdGVzIHJlcXVlc3RzLCByZXJ1biBtaWdyYXRpb25zIHRocm91Z2ggYW5vdGhlciBob3N0IGFuZCBzdGFydCB0aGUgd29yZC1jb3VudCB3b3JrZXIuIEV4dGVuZCB0aGUga2l0IHdpdGggYSB0cmFpdCBvciB2ZXJiIHdoZW4gYSBmZWF0dXJlIG5lZWRzIGFub3RoZXIgc2V0dXAgb3IgYWN0aW9uLgoKYGBgdHMKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzYXZlcyBhIHRpdGxlIGZvciB0aGUgc2lnbmVkLWluIGFjY291bnQiLCBbc2lnbmVkSW4oKV0sIGZ1bmN0aW9uKiAoeyBhY3RvciB9KSB7CiBjb25zdCBub3RlcyA9IGFjdG9yKCkubm90ZXM7CiBjb25zdCBzYXZlZCA9IHlpZWxkKiBub3Rlcy5jcmVhdGUoeyB0aXRsZTogIkZpcnN0IG5vdGUiIH0pOwogZXhwZWN0KHlpZWxkKiBub3Rlcy5saXN0KCkpLnRvRXF1YWwoW3NhdmVkXSk7Cn0pOwpgYGAKClRoZSBraXQgdXNlcyBgQHNoaXZhZWRldi90ZXN0LXN0b3J5YCBvbiBgZWZmZWN0LXRlc3RgLiBEYXRhYmFzZSBzdG9yaWVzIHJ1biBzZXJpYWxseSB3aXRoaW4gZWFjaCB3b3JrZXIsIHVzZSBhIGxpdmUgY2xvY2ssIGNvbW1pdCBIVFRQIHdyaXRlcyBhbmQgZGlzcG9zZSB0aGVpciBkYXRhYmFzZSBjbG9uZXMgYWZ0ZXIgdGhlIGhvc3QgYW5kIHBvb2xzIGNsb3NlLiBGYWlsdXJlcyBwcmludCB0aGUgc3RvcnkgYW5kIGFjY291bnQgYWxpYXNlcyBhbmQgaG9zdCBkZXRhaWxzLCB3aXRob3V0IHNlc3Npb24gY29va2llcy4gVGhlIGRlcGxveSBzdG9yeSB1c2VzIGEgbG9vcGJhY2sgcHJveHkgd2l0aCBIVFRQUyBmb3J3YXJkaW5nIGhlYWRlcnMgYW5kIGNoZWNrcyBzZWN1cmUgc2Vzc2lvbiBjb29raWVzIGFuZCBmb3JlaWduLW9yaWdpbiByZWplY3Rpb24uIEl0IGRvZXMgbm90IGV4ZXJjaXNlIGEgYnJvd3NlciBvciBUTFMgdGVybWluYXRpb24uIFtgc3JjL3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzYF0oc3JjL3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzKSBzdXBwbGllcyB0aGUgc2VwYXJhdGUgaGFwcHktZG9tIHN0b3J5IGtpdDsgdGhvc2Ugc3RvcmllcyB1c2UgdGhlIGluLW1lbW9yeSBSUEMgZml4dHVyZSB0byBwcm92ZSBzY3JlZW4gYW5kIGZvcm0gYmVoYXZpb3IuIFtgc3JjL3Rlc3Qtc3VwcG9ydC9taWdyYXRpb24udHNgXShzcmMvdGVzdC1zdXBwb3J0L21pZ3JhdGlvbi50cykgaXNvbGF0ZXMgdGhlIG1pZ3JhdGlvbiB1cGdyYWRlIHN0b3J5IHdpdGhvdXQgc3RhcnRpbmcgYSBob3N0LgoKYHBucG0gdGVzdGAgbG9hZHMgYC5lbnYubG9jYWxgIGFuZCBydW5zIHRoZSBSZWFjdCB0ZXN0cywgdGhlIFBvc3RncmVTUUwvSFRUUCByb3VuZCB0cmlwcyBhbmQgdGhlIG5vdGVzIG1pZ3JhdGlvbiB1cGdyYWRlIGNoZWNrLiBUaGUgdXBncmFkZSBjaGVjayBhcHBsaWVzIGFuIG9sZGVyIG1pZ3JhdGlvbiBwcmVmaXgsIHVwZ3JhZGVzIHRvIHRoZSBsYXRlc3QgbWlncmF0aW9ucywgYW5kIGNvbXBhcmVzIHRoZSBsaXZlIGNvbHVtbiBuYW1lcyBhbmQgUG9zdGdyZVNRTCB0eXBlcyB3aXRoIHRoZSBub3RlcyByZXBvc2l0b3J5IG1vZGVsLiBTZXQgYFRFU1RfREFUQUJBU0VfVVJMYCB0byBhIGRlZGljYXRlZCBQb3N0Z3JlU1FMIGRhdGFiYXNlIHdob3NlIHJvbGUgY2FuIGNyZWF0ZSBkYXRhYmFzZXM7IHRoZSB0ZXN0cyBjcmVhdGUgZGlzcG9zYWJsZSBjbG9uZXMuIFJlcG9zaXRvcnkgdGVzdCBydW5zIHN1cHBseSBgUExBVEZPUk1fRUZGRUNUX1NRTF9URVNUX0RBVEFCQVNFX1VSTGAgaW5zdGVhZC4gTWlzc2luZyBkYXRhYmFzZSBjb25maWd1cmF0aW9uIGZhaWxzIHRoZSB0ZXN0LgoKVG8gdmVyaWZ5IHRoZSBnZW5lcmF0ZWQgYXBwLCBydW4gYHBucG0gLS1maWx0ZXIgQHNoaXZhZWRldi9zdGFydGVyIGNoZWNrOnB1Ymxpc2hlZGAgZnJvbSB0aGUgcmVwb3NpdG9yeSByb290LiBJdCBpbnN0YWxscyB0aGUgZXhhY3QgdmVyc2lvbnMgaW4gYHB1Ymxpc2hlZC12ZXJzaW9ucy5qc29uYCBpbnRvIHRlbXBvcmFyeSBmb2xkZXJzIG91dHNpZGUgdGhlIHdvcmtzcGFjZSwgY2hlY2tzIGltcG9ydHMgZnJvbSB0aGUgZnJhbWV3b3JrIFJFQURNRXMgYW5kIHF1aWNrc3RhcnQsIHBhY2tzIHRoZSBjcmVhdGUgY29tbWFuZCwgZ2VuZXJhdGVzIGFuIGFwcCwgYW5kIHJ1bnMgaXRzIFF1YWxpdHkgbGludCwgdHlwZWNoZWNrLCBidWlsZCwgUG9zdGdyZVNRTC9hdXRoZW50aWNhdGVkIEhUVFAgdGVzdHMgYW5kIG5vdGVzIG1pZ3JhdGlvbiB1cGdyYWRlIGNoZWNrLiBJdCBleGVyY2lzZXMgcHVibGlzaGVkIGRlY2xhcmF0aW9uIGFuZCBydW50aW1lIGV4cG9ydHMgd2l0aG91dCB0aGUgd29ya3NwYWNlJ3MgYHNvdXJjZWAgY29uZGl0aW9uLiBVc2UgdGhlIGxvY2FsIHRlc3QgZGF0YWJhc2UgZnJvbSBzZXR1cCBvciBzZXQgYFRFU1RfREFUQUJBU0VfVVJMYDsgdGhlIGNoZWNrIGZhaWxzIGlmIFBvc3RncmVTUUwgaXMgdW5hdmFpbGFibGUuIFVwZGF0ZSB0aGUgdmVyc2lvbiBmaWxlIHdoZW4gYWRvcHRpbmcgYW5vdGhlciBwdWJsaXNoZWQgZnJhbWV3b3JrIHJlbGVhc2UsIHRoZW4gcnVuIHRoZSBjaGVjayBhZ2Fpbi4KCkFkZCBgLS1yZWdpc3RyeWAgdG8gZ2VuZXJhdGUgdGhlIGFwcCB3aXRoIHRoZSBwdWJsaXNoZWQgYHBucG0gY3JlYXRlIEBzaGl2YWVkZXYvYXBwYCBjb21tYW5kIGluc3RlYWQgb2YgcGFja2luZyB0aGUgbG9jYWwgZ2VuZXJhdG9yLiBUaGUgUHVibGlzaGVkIHN0YXJ0ZXIgd29ya2Zsb3cgcnVucyB0aGlzIG1vZGUgYWdhaW5zdCBhIFBvc3RncmVTUUwgc2VydmljZSBkYWlseSBhdCAwNjoxNyBVVEMsIG9uIG1hbnVhbCBkaXNwYXRjaCwgYWZ0ZXIgZWFjaCBzdWNjZXNzZnVsIHBhY2thZ2UgcHVibGlzaCwgYW5kIG9uIHB1bGwgcmVxdWVzdHMgdGhhdCBjaGFuZ2UgdGhlIGNoZWNrLiBBIHB1bGwgcmVxdWVzdCB3aG9zZSBwaW5uZWQgdmVyc2lvbnMgYXJlIG5vdCBvbiBucG0geWV0IGlzIGEgcmVsZWFzZSwgc28gdGhlIHdvcmtmbG93IHNraXBzIHJlZ2lzdHJ5IG1vZGUgdGhlcmU7IHRoZSBwYWNrZWQgc3RhcnRlciBjaGVja3MgdGhvc2UgdmVyc2lvbnMgaW4gQ0ksIGFuZCB0aGUgcnVuIGFmdGVyIHB1Ymxpc2hpbmcgY2hlY2tzIHRoZW0gb24gbnBtLiBUaGF0IHJ1biBnZW5lcmF0ZXMgdGhlIGFwcCB3aXRoIHRoZSBjcmVhdGUtYXBwIHZlcnNpb24gdGhhdCBqdXN0IHB1Ymxpc2hlZDsgdGhlIG90aGVyIHJ1bnMgdXNlIGBsYXRlc3RgLCB3aGljaCBwbnBtIHJlc29sdmVzIHRvIHRoZSBuZXdlc3QgdmVyc2lvbiBwYXN0IGl0cyBvbmUtZGF5IHJlbGVhc2UgYWdlLCB0aGUgdmVyc2lvbiBhIG5ldyB1c2VyIGdldHMuIEl0cyBvcHRpb25hbCBgY3JlYXRlLWFwcC12ZXJzaW9uYCBpbnB1dCBzZWxlY3RzIGEgcHVibGlzaGVkIGdlbmVyYXRvciB2ZXJzaW9uOyBhbiB1bmF2YWlsYWJsZSB2ZXJzaW9uIGZhaWxzIHRoZSBydW4uIFJlZ2lzdHJ5IG1vZGUgY2Fubm90IHVzZSBgLS1hcmNoaXZlc2AuCg==","path":"README.md"},{"content":"ewoJImV4dGVuZHMiOiBbIkBzaGl2YWVkZXYvcXVhbGl0eS9iaW9tZSJdLAoJInJvb3QiOiB0cnVlCn0K","path":"biome.json"},{"content":"PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KCTxoZWFkPgoJCTxtZXRhIGNoYXJzZXQ9IlVURi04IiAvPgoJCTxtZXRhIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiIG5hbWU9InZpZXdwb3J0IiAvPgoJCTx0aXRsZT5Ob3RlczwvdGl0bGU+Cgk8L2hlYWQ+Cgk8Ym9keT4KCQk8ZGl2IGlkPSJyb290Ij48L2Rpdj4KCQk8c2NyaXB0IHNyYz0iL3NyYy9jbGllbnQvZW50cnkudHN4IiB0eXBlPSJtb2R1bGUiPjwvc2NyaXB0PgoJPC9ib2R5Pgo8L2h0bWw+Cg==","path":"index.html"},{"content":"ewoJIm5hbWUiOiAiQHNoaXZhZWRldi9zdGFydGVyIiwKCSJ2ZXJzaW9uIjogIjAuMC4wIiwKCSJwcml2YXRlIjogdHJ1ZSwKCSJ0eXBlIjogIm1vZHVsZSIsCgkiaW1wb3J0cyI6IHsKCQkiIyoiOiAiLi9zcmMvKiIKCX0sCgkic2NyaXB0cyI6IHsKCQkiYnVpbGQiOiAidml0ZSBidWlsZCIsCgkJImNpIjogInBucG0gbGludCAmJiBwbnBtIHR5cGVjaGVjayAmJiBwbnBtIGJ1aWxkICYmIHBucG0gdGVzdCIsCgkJImRiOnNldHVwIjogIm5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBzcmMvc2VydmVyL3NldHVwLWRhdGFiYXNlLnRzIiwKCQkiZGV2IjogInBucG0gZGI6c2V0dXAgJiYgcG5wbSBtaWdyYXRlICYmIG5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBzcmMvc2VydmVyL2Rldi50cyIsCgkJImZvcm1hdCI6ICJxdWFsaXR5IGZpeCIsCgkJImxpbnQiOiAicXVhbGl0eSBsaW50IiwKCQkibWlncmF0ZSI6ICJub2RlIC0tZW52LWZpbGUtaWYtZXhpc3RzPS5lbnYubG9jYWwgc3JjL3NlcnZlci9taWdyYXRlLnRzIiwKCQkicmVhZHkiOiAicG5wbSBydW4gY2kiLAoJCSJzZXR1cCI6ICJwbnBtIGluc3RhbGwgJiYgbm9kZSBzcmMvc2V0dXAudHMiLAoJCSJzdGFydCI6ICJub2RlIC0tZW52LWZpbGUtaWYtZXhpc3RzPS5lbnYubG9jYWwgc3JjL3NlcnZlci9zZXJ2ZXIudHMiLAoJCSJ0ZXN0IjogIm5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBub2RlX21vZHVsZXMvdml0ZXN0L3ZpdGVzdC5tanMgcnVuIiwKCQkidHlwZWNoZWNrIjogInRzYzYgLS1ub0VtaXQiLAoJCSJ3b3JrZXIiOiAibm9kZSAtLWVudi1maWxlLWlmLWV4aXN0cz0uZW52LmxvY2FsIHNyYy9zZXJ2ZXIvd29ya2VyLnRzIgoJfSwKCSJkZXBlbmRlbmNpZXMiOiB7CgkJIkBlZmZlY3QvYXRvbS1yZWFjdCI6ICJjYXRhbG9nOiIsCgkJIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI6ICJjYXRhbG9nOiIsCgkJIkBlZmZlY3Qvc3FsLXBnIjogImNhdGFsb2c6IiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QiOiAiMC41LjEiLAoJCSJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtIjogIjAuNC4wIiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcyI6ICIwLjcuMSIsCgkJIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0IjogIjAuNC4xIiwKCQkiQHNoaXZhZWRldi9lZmZlY3Qtc2VydmljZSI6ICIwLjMuMCIsCgkJIkBzaGl2YWVkZXYvZWZmZWN0LXNxbCI6ICIwLjUuMCIsCgkJIkBzaGl2YWVkZXYvbG9jYWwtcG9zdGdyZXMiOiAiMC4yLjEiLAoJCSJAc2hpdmFlZGV2L3BsYXRmb3JtIjogIjAuMTQuMSIsCgkJIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOiAiY2F0YWxvZzoiLAoJCSJiZXR0ZXItYXV0aCI6ICJjYXRhbG9nOiIsCgkJImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eSI6ICJjYXRhbG9nOiIsCgkJImNsc3giOiAiY2F0YWxvZzoiLAoJCSJlZmZlY3QiOiAiY2F0YWxvZzoiLAoJCSJwZyI6ICJjYXRhbG9nOiIsCgkJInJlYWN0IjogImNhdGFsb2c6IiwKCQkicmVhY3QtZG9tIjogImNhdGFsb2c6IiwKCQkidGFpbHdpbmQtbWVyZ2UiOiAiY2F0YWxvZzoiCgl9LAoJImRldkRlcGVuZGVuY2llcyI6IHsKCQkiQGVmZmVjdC92aXRlc3QiOiAiY2F0YWxvZzoiLAoJCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0IjogIjAuNS4wIiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwiOiAiMC41LjAiLAoJCSJAc2hpdmFlZGV2L3F1YWxpdHkiOiAiMC4yMi4wIiwKCQkiQHNoaXZhZWRldi90ZXN0LXN0b3J5IjogIjAuNC4xIiwKCQkiQHRhaWx3aW5kY3NzL3ZpdGUiOiAiY2F0YWxvZzoiLAoJCSJAdHlwZXMvbm9kZSI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9wZyI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9yZWFjdCI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9yZWFjdC1kb20iOiAiY2F0YWxvZzoiLAoJCSJAdml0ZWpzL3BsdWdpbi1yZWFjdCI6ICJjYXRhbG9nOiIsCgkJImhhcHB5LWRvbSI6ICJjYXRhbG9nOiIsCgkJInJhaWx3YXkiOiAiY2F0YWxvZzoiLAoJCSJ0YWlsd2luZGNzcyI6ICJjYXRhbG9nOiIsCgkJInR5cGVzY3JpcHQiOiAiY2F0YWxvZzoiLAoJCSJ2aXRlIjogImNhdGFsb2c6IiwKCQkidml0ZXN0IjogImNhdGFsb2c6IgoJfSwKCSJwYWNrYWdlTWFuYWdlciI6ICJwbnBtQDEyLjguMSIsCgkiZW5naW5lcyI6IHsKCQkibm9kZSI6ICI+PTI0IgoJfQp9Cg==","path":"package.json"},{"content":"cGFja2FnZXM6IFtdCgojIEZyYW1ld29yayByZWxlYXNlcyBtdXN0IGJlIHVzYWJsZSB0b2dldGhlciBhcyBzb29uIGFzIHRoZXkgcHVibGlzaC4KbWluaW11bVJlbGVhc2VBZ2VFeGNsdWRlOiBbIkBzaGl2YWVkZXYvKiJdCgpvdmVycmlkZXM6CiAgIkBlZmZlY3QvcGxhdGZvcm0tbm9kZS1zaGFyZWQiOiAiY2F0YWxvZzoiCgphbGxvd0J1aWxkczoKICBlc2J1aWxkOiB0cnVlCiAgbXNncGFja3ItZXh0cmFjdDogdHJ1ZQoKY2F0YWxvZzoKICByYWlsd2F5OiAzLjEzLjEKICAiQGVmZmVjdC9hdG9tLXJlYWN0IjogNC4wLjQKICAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlIjogNC4wLjQKICAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlLXNoYXJlZCI6IDQuMC40CiAgIkBlZmZlY3Qvc3FsLXBnIjogNC4wLjQKICAiQGVmZmVjdC92aXRlc3QiOiA0LjAuNAogICJAdGFpbHdpbmRjc3Mvdml0ZSI6IDQuMy4zCiAgIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOiAxLjE3MC40MQogICJAdHlwZXMvbm9kZSI6IDI0LjE5LjEKICAiQHR5cGVzL3BnIjogOC4yMC4wCiAgIkB0eXBlcy9yZWFjdCI6IDE5LjIuMTgKICAiQHR5cGVzL3JlYWN0LWRvbSI6IDE5LjIuNAogICJAdml0ZWpzL3BsdWdpbi1yZWFjdCI6IDYuMC41CiAgY2xhc3MtdmFyaWFuY2UtYXV0aG9yaXR5OiAwLjcuMQogIGJldHRlci1hdXRoOiAxLjcuNwogIGNsc3g6IDIuMS4xCiAgZWZmZWN0OiA0LjAuNAogIGhhcHB5LWRvbTogMjAuMTQuNgogIHBnOiA4LjIzLjAKICByZWFjdDogMTkuMi44CiAgcmVhY3QtZG9tOiAxOS4yLjgKICB0YWlsd2luZC1tZXJnZTogMy43LjAKICB0YWlsd2luZGNzczogNC4zLjMKICB0eXBlc2NyaXB0OiBucG06QHR5cGVzY3JpcHQvdHlwZXNjcmlwdDZANi4wLjIKICB2aXRlOiA4LjIuMAogIHZpdGVzdDogNS4wLjMK","path":"pnpm-workspace.yaml"},{"content":"ewoJIkBzaGl2YWVkZXYvZWZmZWN0LWNoYW5nZXMiOiAiMC4zLjAiLAoJIkBzaGl2YWVkZXYvZWZmZWN0LWNoYW5nZXMtcHJpc21hIjogIjAuNS4xIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdCI6ICIwLjUuMSIsCgkiQHNoaXZhZWRldi9lZmZlY3QtZm9ybSI6ICIwLjQuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcyI6ICIwLjcuMSIsCgkiQHNoaXZhZWRldi9lZmZlY3QtcHJpc21hIjogIjAuOS4xIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdCI6ICIwLjQuMSIsCgkiQHNoaXZhZWRldi9lZmZlY3Qtc2VydmljZSI6ICIwLjMuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3Qtc3FsIjogIjAuNS4wIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0IjogIjAuNS4wIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbCI6ICIwLjUuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3QtdHJwYyI6ICIwLjcuMSIsCgkiQHNoaXZhZWRldi9sb2NhbC1wb3N0Z3JlcyI6ICIwLjIuMSIsCgkiQHNoaXZhZWRldi9wbGF0Zm9ybSI6ICIwLjE0LjEiLAoJIkBzaGl2YWVkZXYvcXVhbGl0eSI6ICIwLjIyLjAiLAoJIkBzaGl2YWVkZXYvdGVzdC1zdG9yeSI6ICIwLjQuMSIsCgkiQHNoaXZhZWRldi90eXBlcyI6ICIwLjIuMSIKfQo=","path":"published-versions.json"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCwgb25UZXN0RmluaXNoZWQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBldmVudHVhbGx5LCBleHBlY3ROb1JlYWN0V2FybmluZ3MsIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBhcHBBdXRoIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBBdXRoLnRzIjsKaW1wb3J0IHsgbm90ZXNDbGllbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L25vdGVzQ2xpZW50LnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB7IEFwcCB9IGZyb20gIi4vQXBwLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgiY2hlY2tzIGFuZCByZXRyaWVzIHRoZSBzZXNzaW9uIHRocm91Z2ggaXRzIGluamVjdGVkIGF1dGggY2xpZW50IiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGZpeHR1cmUgPSBhcHBBdXRoKHsgYmFzZVVybDogImh0dHA6Ly9zZXNzaW9uLnN0b3J5LnRlc3QiLCBzZXNzaW9uRmFpbHVyZTogdHJ1ZSB9KTsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiL3NpZ24taW4iXSB9KTsKCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKDxBcHAgYXV0aD17Zml4dHVyZS5hdXRofSBjb25uZWN0PXsoKSA9PiBjbGllbnR9IGhpc3Rvcnk9e2hpc3Rvcnl9IC8+KTsKCQlvblRlc3RGaW5pc2hlZCh2aWV3LnVubW91bnQpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpPy50ZXh0Q29udGVudCkudG9CZSgiQ291bGQgbm90IGNoZWNrIHlvdXIgc2Vzc2lvbi4iKSk7CgkJZml4dHVyZS5yZWNvdmVyKCk7CgkJYXdhaXQgYWN0KGFzeW5jICgpID0+IHsKCQkJdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcjxIVE1MQnV0dG9uRWxlbWVudD4oImJ1dHRvbiIpPy5jbGljaygpOwoJCQlhd2FpdCBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMCkpOwoJCX0pOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImgxIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIikpOwoJCWV4cGVjdChmaXh0dXJlLnJlcXVlc3RzLm1hcCgodXJsKSA9PiB1cmwuaHJlZikpLnRvRXF1YWwoWwoJCQkiaHR0cDovL3Nlc3Npb24uc3RvcnkudGVzdC9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIsCgkJCSJodHRwOi8vc2Vzc2lvbi5zdG9yeS50ZXN0L2FwaS9hdXRoL2dldC1zZXNzaW9uIiwKCQldKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoInJvdXRlcyBzaWduLW91dCB0aHJvdWdoIHRoZSBzYW1lIGluamVjdGVkIGF1dGggY2xpZW50IGFzIGl0cyBzZXNzaW9uIGNoZWNrIiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGZpeHR1cmUgPSBhcHBBdXRoKHsgYmFzZVVybDogImh0dHA6Ly9hY3Rpb25zLnN0b3J5LnRlc3QiLCBzaWduZWRJbjogdHJ1ZSwgc2lnbk91dEZhaWx1cmU6ICJQcm92aWRlciByZWZ1c2VkIHNpZ24tb3V0IiB9KTsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pOwoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPEFwcCBhdXRoPXtmaXh0dXJlLmF1dGh9IGNvbm5lY3Q9eygpID0+IGNsaWVudH0gaGlzdG9yeT17aGlzdG9yeX0gLz4pOwoJCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiTm8gbm90ZXMgeWV0IikpOwoJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiU2lnbiBvdXQiKT8uY2xpY2soKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJQcm92aWRlciByZWZ1c2VkIHNpZ24tb3V0IikpOwoJCWV4cGVjdChmaXh0dXJlLnJlcXVlc3RzLnNvbWUoKHVybCkgPT4gdXJsLnBhdGhuYW1lID09PSAiL2FwaS9hdXRoL3NpZ24tb3V0IikpLnRvQmUodHJ1ZSk7CgkJZXhwZWN0KGZpeHR1cmUucmVxdWVzdHMuZXZlcnkoKHVybCkgPT4gdXJsLm9yaWdpbiA9PT0gImh0dHA6Ly9hY3Rpb25zLnN0b3J5LnRlc3QiKSkudG9CZSh0cnVlKTsKCX0pOwp9KTsK","path":"src/client/App.dom.test.tsx"},{"content":"aW1wb3J0IHR5cGUgeyBBdXRoIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgU2Vzc2lvbkFwcCB9IGZyb20gIi4vU2Vzc2lvbkFwcC50c3giOwoKdHlwZSBTZXNzaW9uUHJvcHMgPSBQYXJhbWV0ZXJzPHR5cGVvZiBTZXNzaW9uQXBwPlswXTsKCmV4cG9ydCBmdW5jdGlvbiBBcHAoeyBhdXRoLCBjb25uZWN0LCBoaXN0b3J5IH06IHsgcmVhZG9ubHkgYXV0aDogQXV0aCB9ICYgUGljazxTZXNzaW9uUHJvcHMsICJjb25uZWN0IiB8ICJoaXN0b3J5Ij4pIHsKCWNvbnN0IHNlc3Npb24gPSBhdXRoLmNsaWVudC51c2VTZXNzaW9uKCk7CglpZiAoc2Vzc2lvbi5pc1BlbmRpbmcpIHsKCQlyZXR1cm4gKAoJCQk8cCBjbGFzc05hbWU9InAtOCIgcm9sZT0ic3RhdHVzIj4KCQkJCUNoZWNraW5nIHlvdXIgc2Vzc2lvbuKApgoJCQk8L3A+CgkJKTsKCX0KCWlmIChzZXNzaW9uLmVycm9yICE9PSBudWxsKSB7CgkJcmV0dXJuICgKCQkJPG1haW4gY2xhc3NOYW1lPSJzcGFjZS15LTQgcC04Ij4KCQkJCTxwIHJvbGU9ImFsZXJ0Ij5Db3VsZCBub3QgY2hlY2sgeW91ciBzZXNzaW9uLjwvcD4KCQkJCTxidXR0b24gb25DbGljaz17KCkgPT4gdm9pZCBzZXNzaW9uLnJlZmV0Y2goKX0gdHlwZT0iYnV0dG9uIj4KCQkJCQlSZXRyeQoJCQkJPC9idXR0b24+CgkJCTwvbWFpbj4KCQkpOwoJfQoJcmV0dXJuICgKCQk8U2Vzc2lvbkFwcAoJCQlhdXRoPXthdXRoLmFjdGlvbnN9CgkJCWNvbm5lY3Q9e2Nvbm5lY3R9CgkJCWhpc3Rvcnk9e2hpc3Rvcnl9CgkJCXJlY2hlY2s9eygpID0+IHZvaWQgc2Vzc2lvbi5yZWZldGNoKCl9CgkJCXNlc3Npb25JZD17c2Vzc2lvbi5kYXRhPy5zZXNzaW9uLmlkID8/ICJhbm9ueW1vdXMifQoJCS8+CgkpOwp9Cg==","path":"src/client/App.tsx"},{"content":"aW1wb3J0IHsgY3ZhLCB0eXBlIFZhcmlhbnRQcm9wcyB9IGZyb20gImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eSI7CmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGNuIH0gZnJvbSAiLi9jbi50cyI7Cgpjb25zdCBidXR0b25WYXJpYW50cyA9IGN2YSgKCSJpbmxpbmUtZmxleCBoLTEwIHNocmluay0wIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB3aGl0ZXNwYWNlLW5vd3JhcCByb3VuZGVkLW1kIHB4LTQgZm9udC1tZWRpdW0gdGV4dC1zbSB0cmFuc2l0aW9uLWNvbG9ycyBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctcmluZyBkaXNhYmxlZDpwb2ludGVyLWV2ZW50cy1ub25lIGRpc2FibGVkOm9wYWNpdHktNTAiLAoJewoJCWRlZmF1bHRWYXJpYW50czogeyB2YXJpYW50OiAiZGVmYXVsdCIgfSwKCQl2YXJpYW50czogewoJCQl2YXJpYW50OiB7IGRlZmF1bHQ6ICJiZy1wcmltYXJ5IHRleHQtcHJpbWFyeS1mb3JlZ3JvdW5kIGhvdmVyOmJnLXByaW1hcnkvOTAiLCBvdXRsaW5lOiAiYm9yZGVyIGJvcmRlci1pbnB1dCBiZy1iYWNrZ3JvdW5kIGhvdmVyOmJnLW11dGVkIiB9LAoJCX0sCgl9LAopOwoKZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbih7IGNsYXNzTmFtZSwgdmFyaWFudCwgdHlwZSA9ICJidXR0b24iLCAuLi5wcm9wcyB9OiBDb21wb25lbnRQcm9wczwiYnV0dG9uIj4gJiBWYXJpYW50UHJvcHM8dHlwZW9mIGJ1dHRvblZhcmlhbnRzPikgewoJcmV0dXJuIDxidXR0b24gY2xhc3NOYW1lPXtjbihidXR0b25WYXJpYW50cyh7IHZhcmlhbnQgfSksIGNsYXNzTmFtZSl9IHR5cGU9e3R5cGV9IHsuLi5wcm9wc30gLz47Cn0K","path":"src/client/Button.tsx"},{"content":"aW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcyB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgY24gfSBmcm9tICIuL2NuLnRzIjsKCmV4cG9ydCBmdW5jdGlvbiBJbnB1dCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogQ29tcG9uZW50UHJvcHM8ImlucHV0Ij4pIHsKCXJldHVybiAoCgkJPGlucHV0CgkJCWNsYXNzTmFtZT17Y24oCgkJCQkiaC0xMCB3LWZ1bGwgbWluLXctMCByb3VuZGVkLW1kIGJvcmRlciBib3JkZXItaW5wdXQgYmctYmFja2dyb3VuZCBweC0zIHRleHQtc20gZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZGlzYWJsZWQ6b3BhY2l0eS01MCIsCgkJCQljbGFzc05hbWUsCgkJCSl9CgkJCXsuLi5wcm9wc30KCQkvPgoJKTsKfQo=","path":"src/client/Input.tsx"},{"content":"aW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgZXhwZWN0Tm9SZWFjdFdhcm5pbmdzLCByZW5kZXIgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC90ZXN0aW5nLnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB0eXBlIHsgQXV0aEFjdGlvbnMsIENyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgTG9naW5TY3JlZW4gfSBmcm9tICIuL0xvZ2luU2NyZWVuLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgKCSJzdWJtaXRzIHNpZ251cCBhbmQgc2lnbi1pbiwgcmV0YWlucyByZWplY3RlZCBpbnB1dCwgYW5kIHNob3dzIHByb3ZpZGVyIGFuZCBuZXR3b3JrIGZhaWx1cmVzIiwKCVtdLAoJZnVuY3Rpb24qICh7IGludGVyYWN0LCBlbnRlciwgc3VibWl0IH0pIHsKCQl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCQljb25zdCBjYWxsczogeyBtb2RlOiBzdHJpbmc7IGNyZWRlbnRpYWxzOiBDcmVkZW50aWFscyB9W10gPSBbXTsKCQkJbGV0IG91dGNvbWU6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICJFbWFpbCBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQiOwoJCQlsZXQgdW5hdmFpbGFibGUgPSBmYWxzZTsKCQkJbGV0IGF1dGhlbnRpY2F0ZWQgPSAwOwoJCQljb25zdCBhdXRoOiBBdXRoQWN0aW9ucyA9IHsKCQkJCXNpZ25PdXQ6ICgpID0+IFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpLAoJCQkJc3VibWl0OiAobW9kZSwgY3JlZGVudGlhbHMpID0+IHsKCQkJCQljYWxscy5wdXNoKHsgY3JlZGVudGlhbHMsIG1vZGUgfSk7CgkJCQkJaWYgKHVuYXZhaWxhYmxlKSB7CgkJCQkJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIm9mZmxpbmUiKSk7CgkJCQkJfQoJCQkJCXJldHVybiBQcm9taXNlLnJlc29sdmUob3V0Y29tZSk7CgkJCQl9LAoJCQl9OwoJCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKAoJCQkJPExvZ2luU2NyZWVuCgkJCQkJYXV0aD17YXV0aH0KCQkJCQlvbkF1dGhlbnRpY2F0ZWQ9eygpID0+IHsKCQkJCQkJYXV0aGVudGljYXRlZCArPSAxOwoJCQkJCX19CgkJCQkvPiwKCQkJKTsKCQkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCgkJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiQ3JlYXRlIGFuIGFjY291bnQiKT8uY2xpY2soKSk7CgkJCWF3YWl0IGVudGVyKHZpZXcuY29udGFpbmVyLCAiQWxpY2UiLCAiTmFtZSIpOwoJCQlhd2FpdCBlbnRlcih2aWV3LmNvbnRhaW5lciwgImFsaWNlQHN0YXJ0ZXIudGVzdCIsICJFbWFpbCIpOwoJCQlhd2FpdCBlbnRlcih2aWV3LmNvbnRhaW5lciwgImNvcnJlY3QtaG9yc2UiLCAiUGFzc3dvcmQiKTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGNhbGxzKS50b0VxdWFsKFt7IGNyZWRlbnRpYWxzOiB7IGVtYWlsOiAiYWxpY2VAc3RhcnRlci50ZXN0IiwgbmFtZTogIkFsaWNlIiwgcGFzc3dvcmQ6ICJjb3JyZWN0LWhvcnNlIiB9LCBtb2RlOiAic2lnbi11cCIgfV0pOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKG91dGNvbWUpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcjxIVE1MSW5wdXRFbGVtZW50PigiaW5wdXRbdHlwZT1lbWFpbF0iKT8udmFsdWUpLnRvQmUoImFsaWNlQHN0YXJ0ZXIudGVzdCIpOwoJCQlleHBlY3QoYXV0aGVudGljYXRlZCkudG9CZSgwKTsKCQkJb3V0Y29tZSA9IHVuZGVmaW5lZDsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoYXV0aGVudGljYXRlZCkudG9CZSgxKSk7CgkJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiVXNlIGFuIGV4aXN0aW5nIGFjY291bnQiKT8uY2xpY2soKSk7CgkJCXVuYXZhaWxhYmxlID0gdHJ1ZTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGNhbGxzLmF0KC0xKT8ubW9kZSkudG9CZSgic2lnbi1pbiIpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJDb3VsZCBub3QgcmVhY2ggYXV0aGVudGljYXRpb24uIFRyeSBhZ2Fpbi4iKTsKCQkJdW5hdmFpbGFibGUgPSBmYWxzZTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGF1dGhlbnRpY2F0ZWQpLnRvQmUoMik7CgkJfSk7Cgl9LAopOwo=","path":"src/client/LoginScreen.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlSWQsIHVzZVN0YXRlIH0gZnJvbSAicmVhY3QiOwppbXBvcnQgdHlwZSB7IEF1dGhBY3Rpb25zIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAiLi9CdXR0b24udHN4IjsKaW1wb3J0IHsgSW5wdXQgfSBmcm9tICIuL0lucHV0LnRzeCI7CgpleHBvcnQgZnVuY3Rpb24gTG9naW5TY3JlZW4oeyBhdXRoLCBvbkF1dGhlbnRpY2F0ZWQgfTogeyByZWFkb25seSBhdXRoOiBBdXRoQWN0aW9uczsgcmVhZG9ubHkgb25BdXRoZW50aWNhdGVkOiAoKSA9PiB2b2lkIH0pIHsKCWNvbnN0IGlkID0gdXNlSWQoKTsKCWNvbnN0IFttb2RlLCBzZXRNb2RlXSA9IHVzZVN0YXRlPCJzaWduLWluIiB8ICJzaWduLXVwIj4oInNpZ24taW4iKTsKCWNvbnN0IFtjcmVkZW50aWFscywgc2V0Q3JlZGVudGlhbHNdID0gdXNlU3RhdGUoeyBlbWFpbDogIiIsIG5hbWU6ICIiLCBwYXNzd29yZDogIiIgfSk7Cgljb25zdCBbcGVuZGluZywgc2V0UGVuZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7Cgljb25zdCBbZmFpbHVyZSwgc2V0RmFpbHVyZV0gPSB1c2VTdGF0ZTxzdHJpbmc+KCk7Cgljb25zdCBzdWJtaXRMYWJlbCA9IG1vZGUgPT09ICJzaWduLWluIiA/ICJTaWduIGluIiA6ICJDcmVhdGUgYWNjb3VudCI7Cgljb25zdCBidXR0b25MYWJlbCA9IHBlbmRpbmcgPyAiUGxlYXNlIHdhaXTigKYiIDogc3VibWl0TGFiZWw7Cglhc3luYyBmdW5jdGlvbiBzdWJtaXQoKSB7CgkJc2V0UGVuZGluZyh0cnVlKTsKCQlzZXRGYWlsdXJlKHVuZGVmaW5lZCk7CgkJdHJ5IHsKCQkJY29uc3QgZXJyb3IgPSBhd2FpdCBhdXRoLnN1Ym1pdChtb2RlLCBjcmVkZW50aWFscyk7CgkJCWlmIChlcnJvciA9PT0gdW5kZWZpbmVkKSB7CgkJCQlvbkF1dGhlbnRpY2F0ZWQoKTsKCQkJfSBlbHNlIHsKCQkJCXNldEZhaWx1cmUoZXJyb3IpOwoJCQl9CgkJfSBjYXRjaCB7CgkJCXNldEZhaWx1cmUoIkNvdWxkIG5vdCByZWFjaCBhdXRoZW50aWNhdGlvbi4gVHJ5IGFnYWluLiIpOwoJCX0gZmluYWxseSB7CgkJCXNldFBlbmRpbmcoZmFsc2UpOwoJCX0KCX0KCXJldHVybiAoCgkJPG1haW4gY2xhc3NOYW1lPSJteC1hdXRvIHctZnVsbCBtYXgtdy1tZCBzcGFjZS15LTYgcHgtNCBweS0xMiI+CgkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwiPnttb2RlID09PSAic2lnbi1pbiIgPyAiU2lnbiBpbiIgOiAiQ3JlYXRlIGFuIGFjY291bnQifTwvaDE+CgkJCTxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIj5TaWduIGluIHRvIHZpZXcgYW5kIGFkZCB5b3VyIG5vdGVzLjwvcD4KCQkJPGZvcm0KCQkJCWNsYXNzTmFtZT0ic3BhY2UteS00IgoJCQkJb25TdWJtaXQ9eyhldmVudCkgPT4gewoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJdm9pZCBzdWJtaXQoKTsKCQkJCX19CgkJCT4KCQkJCXttb2RlID09PSAic2lnbi11cCIgJiYgKAoJCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCQk8bGFiZWwgaHRtbEZvcj17YCR7aWR9LW5hbWVgfT5OYW1lPC9sYWJlbD4KCQkJCQkJPElucHV0CgkJCQkJCQlhdXRvQ29tcGxldGU9Im5hbWUiCgkJCQkJCQlpZD17YCR7aWR9LW5hbWVgfQoJCQkJCQkJb25DaGFuZ2U9eyhldmVudCkgPT4gc2V0Q3JlZGVudGlhbHMoeyAuLi5jcmVkZW50aWFscywgbmFtZTogZXZlbnQudGFyZ2V0LnZhbHVlIH0pfQoJCQkJCQkJcmVxdWlyZWQKCQkJCQkJCXZhbHVlPXtjcmVkZW50aWFscy5uYW1lfQoJCQkJCQkvPgoJCQkJCTwvZGl2PgoJCQkJKX0KCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCTxsYWJlbCBodG1sRm9yPXtgJHtpZH0tZW1haWxgfT5FbWFpbDwvbGFiZWw+CgkJCQkJPElucHV0CgkJCQkJCWF1dG9Db21wbGV0ZT0iZW1haWwiCgkJCQkJCWlkPXtgJHtpZH0tZW1haWxgfQoJCQkJCQlvbkNoYW5nZT17KGV2ZW50KSA9PiBzZXRDcmVkZW50aWFscyh7IC4uLmNyZWRlbnRpYWxzLCBlbWFpbDogZXZlbnQudGFyZ2V0LnZhbHVlIH0pfQoJCQkJCQlyZXF1aXJlZAoJCQkJCQl0eXBlPSJlbWFpbCIKCQkJCQkJdmFsdWU9e2NyZWRlbnRpYWxzLmVtYWlsfQoJCQkJCS8+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCTxsYWJlbCBodG1sRm9yPXtgJHtpZH0tcGFzc3dvcmRgfT5QYXNzd29yZDwvbGFiZWw+CgkJCQkJPElucHV0CgkJCQkJCWF1dG9Db21wbGV0ZT17bW9kZSA9PT0gInNpZ24taW4iID8gImN1cnJlbnQtcGFzc3dvcmQiIDogIm5ldy1wYXNzd29yZCJ9CgkJCQkJCWlkPXtgJHtpZH0tcGFzc3dvcmRgfQoJCQkJCQltaW5MZW5ndGg9ezh9CgkJCQkJCW9uQ2hhbmdlPXsoZXZlbnQpID0+IHNldENyZWRlbnRpYWxzKHsgLi4uY3JlZGVudGlhbHMsIHBhc3N3b3JkOiBldmVudC50YXJnZXQudmFsdWUgfSl9CgkJCQkJCXJlcXVpcmVkCgkJCQkJCXR5cGU9InBhc3N3b3JkIgoJCQkJCQl2YWx1ZT17Y3JlZGVudGlhbHMucGFzc3dvcmR9CgkJCQkJLz4KCQkJCTwvZGl2PgoJCQkJe2ZhaWx1cmUgIT09IHVuZGVmaW5lZCAmJiAoCgkJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIiByb2xlPSJhbGVydCI+CgkJCQkJCXtmYWlsdXJlfQoJCQkJCTwvcD4KCQkJCSl9CgkJCQk8QnV0dG9uIGRpc2FibGVkPXtwZW5kaW5nfSB0eXBlPSJzdWJtaXQiPgoJCQkJCXtidXR0b25MYWJlbH0KCQkJCTwvQnV0dG9uPgoJCQk8L2Zvcm0+CgkJCTxCdXR0b24KCQkJCWRpc2FibGVkPXtwZW5kaW5nfQoJCQkJb25DbGljaz17KCkgPT4gewoJCQkJCXNldE1vZGUobW9kZSA9PT0gInNpZ24taW4iID8gInNpZ24tdXAiIDogInNpZ24taW4iKTsKCQkJCQlzZXRGYWlsdXJlKHVuZGVmaW5lZCk7CgkJCQl9fQoJCQkJdmFyaWFudD0ib3V0bGluZSIKCQkJPgoJCQkJe21vZGUgPT09ICJzaWduLWluIiA/ICJDcmVhdGUgYW4gYWNjb3VudCIgOiAiVXNlIGFuIGV4aXN0aW5nIGFjY291bnQifQoJCQk8L0J1dHRvbj4KCQk8L21haW4+CgkpOwp9Cg==","path":"src/client/LoginScreen.tsx"},{"content":"aW1wb3J0IHsgT3B0aW9uLCBQcmVkaWNhdGUgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyB1c2VJZCB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlRmllbGQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtL3JlYWN0LnRzIjsKaW1wb3J0IHsgdXNlQ3JlYXRlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvY3JlYXRlLnRzIjsKaW1wb3J0IHsgTm90ZUZpZWxkcyB9IGZyb20gIiNub3Rlcy50cyI7CmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gIi4vQnV0dG9uLnRzeCI7CmltcG9ydCB7IElucHV0IH0gZnJvbSAiLi9JbnB1dC50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVDcmVhdGUoeyBjbGllbnQgfTogeyByZWFkb25seSBjbGllbnQ6IE5vdGVzQ2xpZW50IH0pIHsKCWNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpOwoJY29uc3QgZXJyb3JJZCA9IHVzZUlkKCk7Cgljb25zdCBjcmVhdGUgPSB1c2VDcmVhdGUoeyBjcmVhdGU6IGNsaWVudC5hcGkuY3JlYXRlLnJ1biwgZmllbGRzOiBOb3RlRmllbGRzLCBpbml0aWFsVmFsdWVzOiB7IHRpdGxlOiAiIiB9LCBydW50aW1lOiBjbGllbnQucnVudGltZSB9KTsKCWNvbnN0IHRpdGxlID0gdXNlRmllbGQoY3JlYXRlLmZvcm0sICJ0aXRsZSIpOwoJcmV0dXJuICgKCQk8Zm9ybQoJCQljbGFzc05hbWU9InNwYWNlLXktMyIKCQkJb25TdWJtaXQ9eyhldmVudCkgPT4gewoJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCWNyZWF0ZS5zYXZlKCk7CgkJCX19CgkJPgoJCQk8bGFiZWwgY2xhc3NOYW1lPSJibG9jayBmb250LW1lZGl1bSB0ZXh0LXNtIiBodG1sRm9yPXt0aXRsZUlkfT4KCQkJCU5ldyBub3RlCgkJCTwvbGFiZWw+CgkJCTxkaXYgY2xhc3NOYW1lPSJmbGV4IGZsZXgtY29sIGdhcC0zIHNtOmZsZXgtcm93Ij4KCQkJCTxJbnB1dAoJCQkJCWFyaWEtZGVzY3JpYmVkYnk9e3RpdGxlLmVycm9yID8gZXJyb3JJZCA6IHVuZGVmaW5lZH0KCQkJCQlhcmlhLWludmFsaWQ9e0Jvb2xlYW4odGl0bGUuZXJyb3IpfQoJCQkJCWlkPXt0aXRsZUlkfQoJCQkJCW9uQmx1cj17dGl0bGUub25CbHVyfQoJCQkJCW9uQ2hhbmdlPXsoZXZlbnQpID0+IHRpdGxlLm9uQ2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSl9CgkJCQkJcGxhY2Vob2xkZXI9IlNvbWV0aGluZyB0byByZW1lbWJlciIKCQkJCQl2YWx1ZT17dGl0bGUudmFsdWV9CgkJCQkvPgoJCQkJPEJ1dHRvbiBkaXNhYmxlZD17Y3JlYXRlLnNhdmluZ30gdHlwZT0ic3VibWl0Ij4KCQkJCQl7Y3JlYXRlLnNhdmluZyA/ICJBZGRpbmfigKYiIDogIkFkZCBub3RlIn0KCQkJCTwvQnV0dG9uPgoJCQk8L2Rpdj4KCQkJe0Jvb2xlYW4odGl0bGUuZXJyb3IpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiBpZD17ZXJyb3JJZH0gcm9sZT0iYWxlcnQiPgoJCQkJCXt0aXRsZS5lcnJvcn0KCQkJCTwvcD4KCQkJKX0KCQkJe09wdGlvbi5pc1NvbWUoY3JlYXRlLmZhaWx1cmUpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiByb2xlPSJhbGVydCI+CgkJCQkJe1ByZWRpY2F0ZS5pc1RhZ2dlZChjcmVhdGUuZmFpbHVyZS52YWx1ZSwgIlVuYXV0aG9yaXplZCIpID8gIlNpZ24gaW4gdG8gYWRkIGEgbm90ZS4iIDogIkNvdWxkIG5vdCBhZGQgdGhlIG5vdGUuIFRyeSBhZ2Fpbi4ifQoJCQkJPC9wPgoJCQkpfQoJCQk8cCBhcmlhLWxpdmU9InBvbGl0ZSIgY2xhc3NOYW1lPSJ0ZXh0LW11dGVkLWZvcmVncm91bmQgdGV4dC1zbSI+CgkJCQl7T3B0aW9uLmlzU29tZShjcmVhdGUuY3JlYXRlZCkgPyBgQWRkZWQgJHtjcmVhdGUuY3JlYXRlZC52YWx1ZS50aXRsZX1gIDogIk5vdGVzIGFyZSBzYXZlZCB0byBQb3N0Z3JlU1FMLiJ9CgkJCTwvcD4KCQk8L2Zvcm0+CgkpOwp9Cg==","path":"src/client/NoteCreate.tsx"},{"content":"aW1wb3J0IHsgQ2F1c2UsIE9wdGlvbiwgUHJlZGljYXRlIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlQWN0aW9uIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvcmVzdWx0LXN0YXRlLnRzIjsKaW1wb3J0IHR5cGUgeyBEZWxldGUsIE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBCdXR0b24gfSBmcm9tICIuL0J1dHRvbi50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVEZWxldGUoewoJY2xpZW50LAoJbm90ZSwKCW9uRGVsZXRlZCwKCXNhdmluZywKfTogewoJcmVhZG9ubHkgY2xpZW50OiBOb3Rlc0NsaWVudDsKCXJlYWRvbmx5IG5vdGU6IHR5cGVvZiBOb3RlLlR5cGU7CglyZWFkb25seSBvbkRlbGV0ZWQ6ICgpID0+IHZvaWQ7CglyZWFkb25seSBzYXZpbmc6IGJvb2xlYW47Cn0pIHsKCWNvbnN0IFtyZW1vdmVdID0gdXNlU3RhdGUoKCkgPT4gY2xpZW50LnJ1bnRpbWUuZm4oKGlucHV0OiB0eXBlb2YgRGVsZXRlLnBheWxvYWQuVHlwZSkgPT4gY2xpZW50LmFwaS5kZWxldGUucnVuKGlucHV0KSkpOwoJY29uc3QgYWN0aW9uID0gdXNlQWN0aW9uKHJlbW92ZSk7Cgl1c2VFZmZlY3QoKCkgPT4gewoJCWlmIChPcHRpb24uaXNTb21lKGFjdGlvbi5kYXRhKSkgewoJCQlvbkRlbGV0ZWQoKTsKCQl9Cgl9LCBbYWN0aW9uLmRhdGEsIG9uRGVsZXRlZF0pOwoJY29uc3QgZmFpbHVyZSA9IE9wdGlvbi5mbGF0TWFwKGFjdGlvbi5jYXVzZSwgQ2F1c2UuZmluZEVycm9yT3B0aW9uKTsKCXJldHVybiAoCgkJPGRpdiBjbGFzc05hbWU9InNwYWNlLXktMyI+CgkJCTxCdXR0b24gZGlzYWJsZWQ9e3NhdmluZyB8fCBhY3Rpb24ucGVuZGluZ30gb25DbGljaz17KCkgPT4gYWN0aW9uLmRpc3BhdGNoKHsgaWQ6IG5vdGUuaWQsIHZlcnNpb246IG5vdGUudmVyc2lvbiB9KX0gdmFyaWFudD0ib3V0bGluZSI+CgkJCQl7YWN0aW9uLnBlbmRpbmcgPyAiRGVsZXRpbmfigKYiIDogIkRlbGV0ZSBub3RlIn0KCQkJPC9CdXR0b24+CgkJCXtPcHRpb24uaXNTb21lKGZhaWx1cmUpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiByb2xlPSJhbGVydCI+CgkJCQkJe1ByZWRpY2F0ZS5pc1RhZ2dlZChmYWlsdXJlLnZhbHVlLCAiQ29uZmxpY3QiKSA/IGZhaWx1cmUudmFsdWUubWVzc2FnZSA6ICJDb3VsZCBub3QgZGVsZXRlIHRoZSBub3RlLiBUcnkgYWdhaW4uIn0KCQkJCTwvcD4KCQkJKX0KCQk8L2Rpdj4KCSk7Cn0K","path":"src/client/NoteDelete.tsx"},{"content":"aW1wb3J0ICogYXMgQXN5bmNSZXN1bHQgZnJvbSAiZWZmZWN0L3JlYWN0aXZpdHkvQXN5bmNSZXN1bHQiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGV2ZW50dWFsbHksIGV4cGVjdE5vUmVhY3RXYXJuaW5ncyB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBlZGl0aW5nTm90ZSwgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgic2hhcmVzIHRoZSB0eXBlZCBkZXRhaWwgcm91dGUncyBxdWVyeSBhbmQgcmV0YWlucyBhbiBlZGl0IHRocm91Z2ggYSBsaXZlIHJlZnJlc2giLCBbZWRpdGluZ05vdGUoKV0sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgeyBjbGllbnQsIGVudGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFsiZ2V0Il0pOwoJCWF3YWl0IGVudGVyKCJLZWVwIG15IGRyYWZ0Iik7CgkJYXdhaXQgYWN0KCgpID0+IGNsaWVudC5yZXZpc2VOb3RlKDEsICJDaGFuZ2VkIGVsc2V3aGVyZSIpKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+CgkJCWV4cGVjdChBc3luY1Jlc3VsdC5nZXRPckVsc2Uodmlldy5yZWdpc3RyeS5nZXQoY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogMSB9KSksICgpID0+IHVuZGVmaW5lZCk/LnRpdGxlKS50b0JlKCJDaGFuZ2VkIGVsc2V3aGVyZSIpLAoJCSk7CgkJZXhwZWN0KGNsaWVudC5jYWxscy5maWx0ZXIoKGNhbGwpID0+IGNhbGwgPT09ICJnZXQiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigxKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIktlZXAgbXkgZHJhZnQiKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiVW5zYXZlZCBjaGFuZ2VzIik7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KAoJInNob3dzIGEgc3RhbGUgZWRpdCBjb25mbGljdCwga2VlcHMgdGhlIGlucHV0LCB0aGVuIHJlZnJlc2hlcyBhbmQgc2F2ZXMgdGhlIHJldmlld2VkIGRyYWZ0IiwKCVtlZGl0aW5nTm90ZSgpXSwKCWZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCQl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCQljb25zdCB7IGNsaWNrLCBjbGllbnQsIGVudGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQkJYXdhaXQgZW50ZXIoIiAgTXkgZHJhZnQgICIpOwoJCQlhd2FpdCBjbGllbnQucmV2aXNlTm90ZSgxLCAiU2F2ZWQgZWxzZXdoZXJlIiwgZmFsc2UpOwoJCQlhd2FpdCBjbGljaygiU2F2ZSBub3RlIik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCJUaGlzIG5vdGUgY2hhbmdlZCIpKTsKCQkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCIgIE15IGRyYWZ0ICAiKTsKCQkJYXdhaXQgY2xpY2soIlJlZnJlc2giKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImdldCIpKS50b0hhdmVMZW5ndGgoMikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIiAgTXkgZHJhZnQgICIpOwoJCQlhd2FpdCBjbGljaygiU2F2ZSBub3RlIik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCJNeSBkcmFmdCIpKTsKCQkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpKS50b0JlTnVsbCgpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiQWxsIGNoYW5nZXMgc2F2ZWQiKTsKCQl9KTsKCX0sCik7CgpzY3JlZW5zLml0KCJyZXRhaW5zIGEgZmllbGQgcmVqZWN0aW9uIHdoaWxlIGVkaXRpbmciLCBbZWRpdGluZ05vdGUoKV0sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgeyBjbGljaywgZW50ZXIsIHZpZXcgfSA9IGVkaXRvcigpOwoJCWF3YWl0IGVudGVyKCJyZXNlcnZlZCIpOwoJCWF3YWl0IGNsaWNrKCJTYXZlIG5vdGUiKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNob29zZSBhbm90aGVyIHRpdGxlIikpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgicmVzZXJ2ZWQiKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoImRlbGV0ZXMgYSBub3RlIGFuZCByZXR1cm5zIHRvIHRoZSByZWZyZXNoZWQgbGlzdCB3aXRob3V0IGl0IiwgW2VkaXRpbmdOb3RlKCldLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QsIGVkaXRvciB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IHsgY2xpY2ssIGNsaWVudCwgcm91dGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQlhd2FpdCBhY3QoKCkgPT4gcm91dGVyLm5hdmlnYXRlKHsgdG86ICIvIiB9KSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkgPiBhIik/LnRleHRDb250ZW50KS50b0JlKCJGaXJzdCBub3RlIikpOwoJCWF3YWl0IGFjdCgoKSA9PiB2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yPEhUTUxBbmNob3JFbGVtZW50PigibGkgPiBhIik/LmNsaWNrKCkpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCJGaXJzdCBub3RlIikpOwoJCWF3YWl0IGNsaWNrKCJEZWxldGUgbm90ZSIpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHJvdXRlci5zdGF0ZS5sb2NhdGlvbi5wYXRobmFtZSkudG9CZSgiLyIpKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci50ZXh0Q29udGVudCkudG9Db250YWluKCJObyBub3RlcyB5ZXQiKSk7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImxpIikpLnRvQmVOdWxsKCk7CgkJZXhwZWN0KGNsaWVudC5jYWxscykudG9Db250YWluKCJkZWxldGUiKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImxpc3QiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigxKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoImtlZXBzIHRoZSBlZGl0b3Igb3BlbiB3aGVuIGRlbGV0aW9uIGNvbmZsaWN0cyB3aXRoIGEgbmV3ZXIgdmVyc2lvbiIsIFtlZGl0aW5nTm90ZSgpXSwgZnVuY3Rpb24qICh7IGludGVyYWN0LCBlZGl0b3IgfSkgewoJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQljb25zdCB7IGNsaWNrLCBjbGllbnQsIHJvdXRlciwgdmlldyB9ID0gZWRpdG9yKCk7CgkJYXdhaXQgY2xpZW50LnJldmlzZU5vdGUoMSwgIlNhdmVkIGVsc2V3aGVyZSIsIGZhbHNlKTsKCQlhd2FpdCBjbGljaygiRGVsZXRlIG5vdGUiKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQ29udGFpbigiVGhpcyBub3RlIGNoYW5nZWQiKSk7CgkJZXhwZWN0KHJvdXRlci5zdGF0ZS5sb2NhdGlvbi5wYXRobmFtZSkudG9CZSgiL25vdGVzLzEiKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIkZpcnN0IG5vdGUiKTsKCX0pOwp9KTsK","path":"src/client/NoteEdit.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlQXRvbU1vdW50IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgTGluayB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBPcHRpb24sIFByZWRpY2F0ZSB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IHVzZUlkIH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyB1c2VGaWVsZCB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWZvcm0vcmVhY3QudHMiOwppbXBvcnQgdHlwZSB7IEZvcm0gfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtL3NoYXBlLnRzIjsKaW1wb3J0IHsgdXNlRWRpdG9yIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvZWRpdG9yLnRzIjsKaW1wb3J0IHsgZmllbGRSZWplY3Rpb25PZiB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L2ZpZWxkLXJlamVjdGlvbi50cyI7CmltcG9ydCB7IE5vdGVFZGl0RmllbGRzIH0gZnJvbSAiI25vdGVzLnRzIjsKaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAiLi9CdXR0b24udHN4IjsKaW1wb3J0IHsgSW5wdXQgfSBmcm9tICIuL0lucHV0LnRzeCI7CmltcG9ydCB0eXBlIHsgTm90ZXNDbGllbnQgfSBmcm9tICIuL21ha2VOb3Rlcy50cyI7CmltcG9ydCB7IE5vdGVEZWxldGUgfSBmcm9tICIuL05vdGVEZWxldGUudHN4IjsKCmZ1bmN0aW9uIFRpdGxlPEEsIEUsIFRSdW50aW1lRXJyb3I+KHsgZm9ybSB9OiB7IHJlYWRvbmx5IGZvcm06IEZvcm08dHlwZW9mIE5vdGVFZGl0RmllbGRzLmZpZWxkcywgQSwgRSwgVFJ1bnRpbWVFcnJvcj4gfSkgewoJY29uc3QgdGl0bGUgPSB1c2VGaWVsZChmb3JtLCAidGl0bGUiKTsKCWNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpOwoJY29uc3QgZXJyb3JJZCA9IHVzZUlkKCk7CglyZXR1cm4gKAoJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQk8bGFiZWwgY2xhc3NOYW1lPSJibG9jayBmb250LW1lZGl1bSB0ZXh0LXNtIiBodG1sRm9yPXt0aXRsZUlkfT4KCQkJCVRpdGxlCgkJCTwvbGFiZWw+CgkJCTxJbnB1dAoJCQkJYXJpYS1kZXNjcmliZWRieT17dGl0bGUuZXJyb3IgPyBlcnJvcklkIDogdW5kZWZpbmVkfQoJCQkJYXJpYS1pbnZhbGlkPXtCb29sZWFuKHRpdGxlLmVycm9yKX0KCQkJCWlkPXt0aXRsZUlkfQoJCQkJb25CbHVyPXt0aXRsZS5vbkJsdXJ9CgkJCQlvbkNoYW5nZT17KGV2ZW50KSA9PiB0aXRsZS5vbkNoYW5nZShldmVudC50YXJnZXQudmFsdWUpfQoJCQkJdmFsdWU9e3RpdGxlLnZhbHVlfQoJCQkvPgoJCQl7Qm9vbGVhbih0aXRsZS5lcnJvcikgJiYgKAoJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIHRleHQtc20iIGlkPXtlcnJvcklkfSByb2xlPSJhbGVydCI+CgkJCQkJe3RpdGxlLmVycm9yfQoJCQkJPC9wPgoJCQkpfQoJCTwvZGl2PgoJKTsKfQoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVFZGl0KHsgY2xpZW50LCBub3RlSWQsIG9uRGVsZXRlZCB9OiB7IHJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7IHJlYWRvbmx5IG5vdGVJZDogbnVtYmVyOyByZWFkb25seSBvbkRlbGV0ZWQ6ICgpID0+IHZvaWQgfSkgewoJdXNlQXRvbU1vdW50KGNsaWVudC5jb25uZWN0aW9uKTsKCWNvbnN0IGVkaXRvciA9IHVzZUVkaXRvcih7CgkJZmllbGRzOiBOb3RlRWRpdEZpZWxkcywKCQlxdWVyeTogY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogbm90ZUlkIH0pLAoJCXJlamVjdEZpZWxkOiBmaWVsZFJlamVjdGlvbk9mKE5vdGVFZGl0RmllbGRzKSwKCQlydW50aW1lOiBjbGllbnQucnVudGltZSwKCQlzYXZlOiAodmFsdWVzKSA9PiBjbGllbnQuYXBpLnVwZGF0ZS5ydW4oeyBpZDogbm90ZUlkLCAuLi52YWx1ZXMgfSksCgkJdmFsdWVzOiAocm93KSA9PiAoeyB0aXRsZTogcm93LnRpdGxlLCB2ZXJzaW9uOiByb3cudmVyc2lvbiB9KSwKCX0pOwoJY29uc3QgY3VycmVudE5vdGUgPSBPcHRpb24uZ2V0T3JVbmRlZmluZWQoZWRpdG9yLnF1ZXJ5LmRhdGEpOwoJY29uc3QgZmFpbHVyZSA9IE9wdGlvbi5tYXAoZWRpdG9yLmZhaWx1cmUsIChlcnJvcikgPT4gewoJCWlmIChQcmVkaWNhdGUuaXNUYWdnZWQoZXJyb3IsICJDb25mbGljdCIpKSB7CgkJCXJldHVybiBlcnJvci5tZXNzYWdlOwoJCX0KCQlpZiAoUHJlZGljYXRlLmlzVGFnZ2VkKGVycm9yLCAiVW5hdXRob3JpemVkIikpIHsKCQkJcmV0dXJuICJTaWduIGluIHRvIHNhdmUgdGhpcyBub3RlLiI7CgkJfQoJCXJldHVybiAiQ291bGQgbm90IHNhdmUgdGhlIG5vdGUuIFRyeSBhZ2Fpbi4iOwoJfSk7CglyZXR1cm4gKAoJCTxtYWluIGNsYXNzTmFtZT0ibXgtYXV0byB3LWZ1bGwgbWF4LXctMnhsIHNwYWNlLXktNiBweC00IHB5LTEyIHNtOnB4LTYiPgoJCQk8TGluayBjbGFzc05hbWU9InVuZGVybGluZSIgdG89Ii8iPgoJCQkJQmFjayB0byBub3RlcwoJCQk8L0xpbms+CgkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwgdHJhY2tpbmctdGlnaHQiPkVkaXQgbm90ZTwvaDE+CgkJCTxCdXR0b24gZGlzYWJsZWQ9e2VkaXRvci5xdWVyeS5wZW5kaW5nfSBvbkNsaWNrPXtlZGl0b3IucXVlcnkucmVmcmVzaH0gdmFyaWFudD0ib3V0bGluZSI+CgkJCQlSZWZyZXNoCgkJCTwvQnV0dG9uPgoJCQl7T3B0aW9uLmlzU29tZShlZGl0b3IucXVlcnkuY2F1c2UpICYmIDxwIHJvbGU9ImFsZXJ0Ij5Db3VsZCBub3QgbG9hZCB0aGlzIG5vdGUuIFRyeSByZWZyZXNoaW5nLjwvcD59CgkJCXtlZGl0b3IuZm9ybSA9PT0gdW5kZWZpbmVkID8gKAoJCQkJPHAgcm9sZT0ic3RhdHVzIj5Mb2FkaW5nIG5vdGXigKY8L3A+CgkJCSkgOiAoCgkJCQk8Zm9ybQoJCQkJCWNsYXNzTmFtZT0ic3BhY2UteS00IHJvdW5kZWQtbGcgYm9yZGVyIGJnLWNhcmQgcC01IHNoYWRvdy1zbSIKCQkJCQlvblN1Ym1pdD17KGV2ZW50KSA9PiB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCWVkaXRvci5zYXZlKCk7CgkJCQkJfX0KCQkJCT4KCQkJCQk8VGl0bGUgZm9ybT17ZWRpdG9yLmZvcm19IC8+CgkJCQkJPEJ1dHRvbiBkaXNhYmxlZD17ZWRpdG9yLnNhdmluZ30gdHlwZT0ic3VibWl0Ij4KCQkJCQkJe2VkaXRvci5zYXZpbmcgPyAiU2F2aW5n4oCmIiA6ICJTYXZlIG5vdGUifQoJCQkJCTwvQnV0dG9uPgoJCQkJCXtPcHRpb24uaXNTb21lKGZhaWx1cmUpICYmICgKCQkJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIHRleHQtc20iIHJvbGU9ImFsZXJ0Ij4KCQkJCQkJCXtmYWlsdXJlLnZhbHVlfQoJCQkJCQk8L3A+CgkJCQkJKX0KCQkJCQk8cCBhcmlhLWxpdmU9InBvbGl0ZSIgY2xhc3NOYW1lPSJ0ZXh0LW11dGVkLWZvcmVncm91bmQgdGV4dC1zbSI+CgkJCQkJCXtlZGl0b3IuZGlydHkgPyAiVW5zYXZlZCBjaGFuZ2VzIiA6ICJBbGwgY2hhbmdlcyBzYXZlZCJ9CgkJCQkJPC9wPgoJCQkJPC9mb3JtPgoJCQkpfQoJCQl7Y3VycmVudE5vdGUgIT09IHVuZGVmaW5lZCAmJiA8Tm90ZURlbGV0ZSBjbGllbnQ9e2NsaWVudH0gbm90ZT17Y3VycmVudE5vdGV9IG9uRGVsZXRlZD17b25EZWxldGVkfSBzYXZpbmc9e2VkaXRvci5zYXZpbmd9IC8+fQoJCTwvbWFpbj4KCSk7Cn0K","path":"src/client/NoteEdit.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgZXhwZWN0Tm9SZWFjdFdhcm5pbmdzLCByZW5kZXIgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC90ZXN0aW5nLnRzIjsKaW1wb3J0IHsgbm90ZXNDbGllbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L25vdGVzQ2xpZW50LnRzIjsKaW1wb3J0IHsgc2NyZWVuQXV0aCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVuQXV0aC50cyI7CmltcG9ydCB7IHNjcmVlbnMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3NjcmVlbnMudHMiOwppbXBvcnQgeyBhcHBSb3V0ZXIgfSBmcm9tICIuL2FwcFJvdXRlci50c3giOwoKT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7ICJJU19SRUFDVF9BQ1RfRU5WSVJPTk1FTlQiOiB0cnVlIH0pOwpleHBlY3ROb1JlYWN0V2FybmluZ3MoKTsKCnNjcmVlbnMuaXQoCgkic2hhcmVzIHRoZSByb3V0ZSBxdWVyeSwgdmFsaWRhdGVzIHRoZSBmb3JtLCByZXRhaW5zIGEgcmVqZWN0ZWQgdGl0bGUgYW5kIHJlZnJlc2hlcyBhZnRlciBjcmVhdGlvbiIsCglbXSwKCWZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZW50ZXIsIHN1Ym1pdCB9KSB7CgkJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQkJY29uc3QgY2xpZW50ID0gbm90ZXNDbGllbnQoKTsKCQkJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCQkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQkJY29uc3Qgcm91dGVyID0gYXBwUm91dGVyKHZpZXcucmVnaXN0cnksIGNsaWVudCwgc2NyZWVuQXV0aCgpLCBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pKTsKCQkJYXdhaXQgdmlldy5yZW5kZXIoPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnRleHRDb250ZW50KS50b0NvbnRhaW4oIk5vIG5vdGVzIHlldCIpKTsKCQkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiXSk7CgoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIlJlcXVpcmVkIikpOwoJCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFsibGlzdCJdKTsKCQkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJyZXNlcnZlZCIpOwoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNob29zZSBhbm90aGVyIHRpdGxlIikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoInJlc2VydmVkIik7CgkJCWF3YWl0IGVudGVyKHZpZXcuY29udGFpbmVyLCAiRmlyc3Qgbm90ZSIpOwoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSA+IGEiKT8udGV4dENvbnRlbnQpLnRvQmUoIkZpcnN0IG5vdGUiKSk7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgiIik7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKSkudG9CZU51bGwoKTsKCQkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiLCAiY3JlYXRlIiwgImxpc3QiXSk7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCJDb3VudGluZyB3b3Jkc+KApiIpOwoJCQlhd2FpdCBhY3QoKCkgPT4gY2xpZW50LmZpbmlzaE5vdGUoMSwgMikpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCIyIHdvcmRzIikpOwoJCQlleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImxpc3QiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigyKTsKCQkJYXdhaXQgYWN0KCgpID0+IGNsaWVudC5maW5pc2hOb3RlKDEsIDEpKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkiKT8udGV4dENvbnRlbnQpLnRvQ29udGFpbigiMSB3b3JkIikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkiKT8udGV4dENvbnRlbnQpLm5vdC50b0NvbnRhaW4oIjEgd29yZHMiKTsKCQl9KTsKCX0sCik7Cg==","path":"src/client/NotesScreen.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlQXRvbU1vdW50IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgTGluayB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBPcHRpb24gfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlUXVlcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC9yZXN1bHQtc3RhdGUudHMiOwppbXBvcnQgdHlwZSB7IE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBCdXR0b24gfSBmcm9tICIuL0J1dHRvbi50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwppbXBvcnQgeyBOb3RlQ3JlYXRlIH0gZnJvbSAiLi9Ob3RlQ3JlYXRlLnRzeCI7CgpmdW5jdGlvbiB3b3JkQ291bnRMYWJlbChjb3VudDogbnVtYmVyIHwgbnVsbCkgewoJaWYgKGNvdW50ID09PSBudWxsKSB7CgkJcmV0dXJuICJDb3VudGluZyB3b3Jkc+KApiI7Cgl9CglyZXR1cm4gYCR7Y291bnR9ICR7Y291bnQgPT09IDEgPyAid29yZCIgOiAid29yZHMifWA7Cn0KCmZ1bmN0aW9uIFNhdmVkTm90ZSh7IG5vdGUgfTogeyByZWFkb25seSBub3RlOiB0eXBlb2YgTm90ZS5UeXBlIH0pIHsKCXJldHVybiAoCgkJPGxpIGNsYXNzTmFtZT0iYnJlYWstd29yZHMgcm91bmRlZC1sZyBib3JkZXIgYmctY2FyZCBwLTQiPgoJCQk8TGluayBjbGFzc05hbWU9InVuZGVybGluZSIgcGFyYW1zPXt7IG5vdGVJZDogU3RyaW5nKG5vdGUuaWQpIH19IHRvPSIvbm90ZXMvJG5vdGVJZCI+CgkJCQl7bm90ZS50aXRsZX0KCQkJPC9MaW5rPgoJCQk8cCBjbGFzc05hbWU9Im10LTIgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHRleHQtc20iPnt3b3JkQ291bnRMYWJlbChub3RlLndvcmRDb3VudCl9PC9wPgoJCTwvbGk+CgkpOwp9CgpleHBvcnQgZnVuY3Rpb24gTm90ZXNTY3JlZW4oeyBjbGllbnQsIG9uU2lnbk91dCB9OiB7IHJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7IHJlYWRvbmx5IG9uU2lnbk91dD86ICgpID0+IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB9KSB7Cgl1c2VBdG9tTW91bnQoY2xpZW50LmNvbm5lY3Rpb24pOwoJY29uc3QgW3NpZ25pbmdPdXQsIHNldFNpZ25pbmdPdXRdID0gdXNlU3RhdGUoZmFsc2UpOwoJY29uc3QgW2ZhaWx1cmUsIHNldEZhaWx1cmVdID0gdXNlU3RhdGU8c3RyaW5nPigpOwoJYXN5bmMgZnVuY3Rpb24gc2lnbk91dCgpIHsKCQlzZXRTaWduaW5nT3V0KHRydWUpOwoJCXRyeSB7CgkJCXNldEZhaWx1cmUoYXdhaXQgb25TaWduT3V0Py4oKSk7CgkJfSBjYXRjaCB7CgkJCXNldEZhaWx1cmUoIkNvdWxkIG5vdCBzaWduIG91dC4gVHJ5IGFnYWluLiIpOwoJCX0gZmluYWxseSB7CgkJCXNldFNpZ25pbmdPdXQoZmFsc2UpOwoJCX0KCX0KCWNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoY2xpZW50LmFwaS5saXN0LnF1ZXJ5KCkpOwoJY29uc3Qgcm93cyA9IE9wdGlvbi5nZXRPckVsc2UocXVlcnkuZGF0YSwgKCkgPT4gW10pOwoJcmV0dXJuICgKCQk8bWFpbiBjbGFzc05hbWU9Im14LWF1dG8gdy1mdWxsIG1heC13LTJ4bCBzcGFjZS15LTggcHgtNCBweS0xMiBzbTpweC02Ij4KCQkJPGhlYWRlciBjbGFzc05hbWU9InNwYWNlLXktMiI+CgkJCQk8cCBjbGFzc05hbWU9ImZvbnQtbWVkaXVtIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB0ZXh0LXNtIj5Zb3VyIGZpcnN0IGFwcDwvcD4KCQkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwgdHJhY2tpbmctdGlnaHQiPk5vdGVzPC9oMT4KCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIj5BIHNtYWxsIHBsYWNlIGZvciB0aGluZ3Mgd29ydGgga2VlcGluZy48L3A+CgkJCQl7b25TaWduT3V0ICE9PSB1bmRlZmluZWQgJiYgKAoJCQkJCTxCdXR0b24gZGlzYWJsZWQ9e3NpZ25pbmdPdXR9IG9uQ2xpY2s9eygpID0+IHZvaWQgc2lnbk91dCgpfSB2YXJpYW50PSJvdXRsaW5lIj4KCQkJCQkJU2lnbiBvdXQKCQkJCQk8L0J1dHRvbj4KCQkJCSl9CgkJCQl7ZmFpbHVyZSAhPT0gdW5kZWZpbmVkICYmIDxwIHJvbGU9ImFsZXJ0Ij57ZmFpbHVyZX08L3A+fQoJCQk8L2hlYWRlcj4KCQkJPHNlY3Rpb24gYXJpYS1sYWJlbD0iQWRkIGEgbm90ZSIgY2xhc3NOYW1lPSJyb3VuZGVkLWxnIGJvcmRlciBiZy1jYXJkIHAtNSBzaGFkb3ctc20iPgoJCQkJPE5vdGVDcmVhdGUgY2xpZW50PXtjbGllbnR9IC8+CgkJCTwvc2VjdGlvbj4KCQkJPHNlY3Rpb24gYXJpYS1sYWJlbD0iU2F2ZWQgbm90ZXMiIGNsYXNzTmFtZT0ic3BhY2UteS00Ij4KCQkJCTxkaXYgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPgoJCQkJCTxoMiBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+U2F2ZWQgbm90ZXM8L2gyPgoJCQkJCTxCdXR0b24gZGlzYWJsZWQ9e3F1ZXJ5LnBlbmRpbmd9IG9uQ2xpY2s9e3F1ZXJ5LnJlZnJlc2h9IHZhcmlhbnQ9Im91dGxpbmUiPgoJCQkJCQlSZWZyZXNoCgkJCQkJPC9CdXR0b24+CgkJCQk8L2Rpdj4KCQkJCXtPcHRpb24uaXNTb21lKHF1ZXJ5LmNhdXNlKSAmJiA8cCByb2xlPSJhbGVydCI+Q291bGQgbm90IGxvYWQgbm90ZXMuIFRyeSByZWZyZXNoaW5nLjwvcD59CgkJCQl7cXVlcnkucGVuZGluZyA/IDxwIHJvbGU9InN0YXR1cyI+TG9hZGluZyBub3Rlc+KApjwvcD4gOiBudWxsfQoJCQkJeyFxdWVyeS5wZW5kaW5nICYmIHJvd3MubGVuZ3RoID09PSAwICYmIDxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHRleHQtc20iPk5vIG5vdGVzIHlldC4gQWRkIHlvdXIgZmlyc3Qgb25lIGFib3ZlLjwvcD59CgkJCQk8dWwgY2xhc3NOYW1lPSJzcGFjZS15LTMiPgoJCQkJCXtyb3dzLm1hcCgocm93KSA9PiAoCgkJCQkJCTxTYXZlZE5vdGUga2V5PXtyb3cuaWR9IG5vdGU9e3Jvd30gLz4KCQkJCQkpKX0KCQkJCTwvdWw+CgkJCTwvc2VjdGlvbj4KCQk8L21haW4+CgkpOwp9Cg==","path":"src/client/NotesScreen.tsx"},{"content":"aW1wb3J0IHsgdHlwZSBFcnJvckNvbXBvbmVudFByb3BzLCBMaW5rIH0gZnJvbSAiQHRhbnN0YWNrL3JlYWN0LXJvdXRlciI7CmltcG9ydCB7IFByZWRpY2F0ZSB9IGZyb20gImVmZmVjdCI7CgpleHBvcnQgZnVuY3Rpb24gUm91dGVGYWlsdXJlKHsgZXJyb3IsIHJlc2V0OiBoYW5kbGVDbGljayB9OiBFcnJvckNvbXBvbmVudFByb3BzKSB7Cgljb25zdCB1bmF1dGhvcml6ZWQgPSBQcmVkaWNhdGUuaXNUYWdnZWQoZXJyb3IsICJVbmF1dGhvcml6ZWQiKTsKCXJldHVybiAoCgkJPG1haW4gY2xhc3NOYW1lPSJteC1hdXRvIG1heC13LW1kIHNwYWNlLXktNCBweC00IHB5LTEyIj4KCQkJPHAgcm9sZT0iYWxlcnQiPnt1bmF1dGhvcml6ZWQgPyAiU2lnbiBpbiB0byB2aWV3IHlvdXIgbm90ZXMuIiA6ICJDb3VsZCBub3QgbG9hZCBub3Rlcy4ifTwvcD4KCQkJe3VuYXV0aG9yaXplZCA/ICgKCQkJCTxMaW5rIGNsYXNzTmFtZT0idW5kZXJsaW5lIiB0bz0iL3NpZ24taW4iPgoJCQkJCVNpZ24gaW4KCQkJCTwvTGluaz4KCQkJKSA6ICgKCQkJCTxidXR0b24gb25DbGljaz17aGFuZGxlQ2xpY2t9IHR5cGU9ImJ1dHRvbiI+CgkJCQkJUmV0cnkKCQkJCTwvYnV0dG9uPgoJCQkpfQoJCTwvbWFpbj4KCSk7Cn0K","path":"src/client/RouteFailure.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCwgb25UZXN0RmluaXNoZWQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBldmVudHVhbGx5LCBleHBlY3ROb1JlYWN0V2FybmluZ3MsIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBub3Rlc0NsaWVudCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbm90ZXNDbGllbnQudHMiOwppbXBvcnQgeyBzY3JlZW5BdXRoIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zY3JlZW5BdXRoLnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB7IFNlc3Npb25BcHAgfSBmcm9tICIuL1Nlc3Npb25BcHAudHN4IjsKCk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywgeyAiSVNfUkVBQ1RfQUNUX0VOVklST05NRU5UIjogdHJ1ZSB9KTsKZXhwZWN0Tm9SZWFjdFdhcm5pbmdzKCk7CgpzY3JlZW5zLml0KCJyZXBsYWNlcyBjYWNoZWQgbm90ZXMgYW5kIHRoZSBkcmFmdCB3aGVuIHRoZSBhdXRoZW50aWNhdGlvbiBvd25lcidzIHNlc3Npb24gY2hhbmdlcyIsIFtdLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QsIGVudGVyIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgYWxpY2UgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGJvYiA9IG5vdGVzQ2xpZW50KCk7CgkJZnVuY3Rpb24gY29ubmVjdGlvbih7IGlkIH06IHsgcmVhZG9ubHkgaWQ6IHN0cmluZyB9KSB7CgkJCXJldHVybiBpZCA9PT0gImFsaWNlIiA/IGFsaWNlIDogYm9iOwoJCX0KCQljb25zdCBhdXRoID0gc2NyZWVuQXV0aCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pOwoJCWZ1bmN0aW9uIHJlY2hlY2soKSB7CgkJCXJldHVybiB1bmRlZmluZWQ7CgkJfQoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPFNlc3Npb25BcHAgYXV0aD17YXV0aH0gY29ubmVjdD17Y29ubmVjdGlvbn0gaGlzdG9yeT17aGlzdG9yeX0gcmVjaGVjaz17cmVjaGVja30gc2Vzc2lvbklkPSJhbGljZSIgLz4pOwoJCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoYWxpY2UuY2FsbHMpLnRvRXF1YWwoWyJsaXN0Il0pKTsKCgkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJBbGljZSdzIHNhdmVkIG5vdGUiKTsKCQlhd2FpdCBhY3QoKCkgPT4gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiZm9ybSIpPy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgic3VibWl0IiwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkgPiBhIik/LnRleHRDb250ZW50KS50b0JlKCJBbGljZSdzIHNhdmVkIG5vdGUiKSk7CgkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJBbGljZSdzIHByaXZhdGUgZHJhZnQiKTsKCQlhd2FpdCB2aWV3LnJlbmRlcig8U2Vzc2lvbkFwcCBhdXRoPXthdXRofSBjb25uZWN0PXtjb25uZWN0aW9ufSBoaXN0b3J5PXtoaXN0b3J5fSByZWNoZWNrPXtyZWNoZWNrfSBzZXNzaW9uSWQ9ImJvYiIgLz4pOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KGJvYi5jYWxscykudG9FcXVhbChbImxpc3QiXSkpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpKS50b0JlTnVsbCgpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgiIik7Cgl9KTsKfSk7Cg==","path":"src/client/SessionApp.dom.test.tsx"},{"content":"aW1wb3J0IHsgUmVnaXN0cnlDb250ZXh0IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgdHlwZSBSb3V0ZXJIaXN0b3J5LCBSb3V0ZXJQcm92aWRlciB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgU2Vzc2lvbkJvdW5kYXJ5IH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3Qvc2Vzc2lvbi1ib3VuZGFyeS50cyI7CmltcG9ydCB7IGFwcFJvdXRlciB9IGZyb20gIi4vYXBwUm91dGVyLnRzeCI7CmltcG9ydCB0eXBlIHsgQXV0aEFjdGlvbnMgfSBmcm9tICIuL2F1dGgudHMiOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKaW50ZXJmYWNlIFNlc3Npb24gewoJcmVhZG9ubHkgaWQ6IHN0cmluZzsKfQppbnRlcmZhY2UgUm91dGluZyB7CglyZWFkb25seSBhdXRoOiBBdXRoQWN0aW9uczsKCXJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7CglyZWFkb25seSBoaXN0b3J5OiBSb3V0ZXJIaXN0b3J5IHwgdW5kZWZpbmVkOwp9CgpmdW5jdGlvbiBSb3V0ZWRBcHAoeyBjbGllbnQsIGF1dGgsIGhpc3RvcnkgfTogUm91dGluZykgewoJY29uc3QgcmVnaXN0cnkgPSB1c2VDb250ZXh0KFJlZ2lzdHJ5Q29udGV4dCk7Cgljb25zdCBbcm91dGVyXSA9IHVzZVN0YXRlKCgpID0+IGFwcFJvdXRlcihyZWdpc3RyeSwgY2xpZW50LCBhdXRoLCBoaXN0b3J5KSk7CglyZXR1cm4gPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPjsKfQoKZnVuY3Rpb24gaWRlbnRpZnkoc2Vzc2lvbjogU2Vzc2lvbikgewoJcmV0dXJuIHNlc3Npb24uaWQ7Cn0KCmV4cG9ydCBmdW5jdGlvbiBTZXNzaW9uQXBwKHsKCXNlc3Npb25JZCwKCXJlY2hlY2ssCglhdXRoLAoJY29ubmVjdDogY29ubmVjdGlvbiwKCWhpc3RvcnksCn06IHsKCXJlYWRvbmx5IHNlc3Npb25JZDogc3RyaW5nOwoJcmVhZG9ubHkgcmVjaGVjazogKCkgPT4gdm9pZDsKCXJlYWRvbmx5IGF1dGg6IEF1dGhBY3Rpb25zOwoJcmVhZG9ubHkgY29ubmVjdDogKHNlc3Npb246IFNlc3Npb24pID0+IE5vdGVzQ2xpZW50OwoJcmVhZG9ubHkgaGlzdG9yeT86IFJvdXRlckhpc3RvcnkgfCB1bmRlZmluZWQ7Cn0pIHsKCXJldHVybiAoCgkJPFNlc3Npb25Cb3VuZGFyeSBjb25uZWN0PXtjb25uZWN0aW9ufSBpZGVudGlmeT17aWRlbnRpZnl9IHJlY2hlY2s9e3JlY2hlY2t9IHNlc3Npb249e3sgaWQ6IHNlc3Npb25JZCB9fT4KCQkJeyhjbGllbnQpID0+IDxSb3V0ZWRBcHAgYXV0aD17YXV0aH0gY2xpZW50PXtjbGllbnR9IGhpc3Rvcnk9e2hpc3Rvcnl9IC8+fQoJCTwvU2Vzc2lvbkJvdW5kYXJ5PgoJKTsKfQo=","path":"src/client/SessionApp.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlUm9vdFJvdXRlV2l0aENvbnRleHQsIGNyZWF0ZVJvdXRlLCBjcmVhdGVSb3V0ZXIsIHR5cGUgUm91dGVySGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBTY2hlbWEgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgdHlwZSAqIGFzIEF0b21SZWdpc3RyeSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9BdG9tUmVnaXN0cnkiOwppbXBvcnQgeyBsb2FkUXVlcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC9yb3V0ZXIudHMiOwppbXBvcnQgdHlwZSB7IEF1dGhBY3Rpb25zIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgTG9naW5TY3JlZW4gfSBmcm9tICIuL0xvZ2luU2NyZWVuLnRzeCI7CmltcG9ydCB0eXBlIHsgTm90ZXNDbGllbnQgfSBmcm9tICIuL21ha2VOb3Rlcy50cyI7CmltcG9ydCB7IE5vdGVFZGl0IH0gZnJvbSAiLi9Ob3RlRWRpdC50c3giOwppbXBvcnQgeyBOb3Rlc1NjcmVlbiB9IGZyb20gIi4vTm90ZXNTY3JlZW4udHN4IjsKaW1wb3J0IHsgUm91dGVGYWlsdXJlIH0gZnJvbSAiLi9Sb3V0ZUZhaWx1cmUudHN4IjsKCmV4cG9ydCBmdW5jdGlvbiBhcHBSb3V0ZXIocmVnaXN0cnk6IEF0b21SZWdpc3RyeS5BdG9tUmVnaXN0cnksIGNsaWVudDogTm90ZXNDbGllbnQsIGF1dGg6IEF1dGhBY3Rpb25zLCBoaXN0b3J5PzogUm91dGVySGlzdG9yeSkgewoJY29uc3Qgcm9vdCA9IGNyZWF0ZVJvb3RSb3V0ZVdpdGhDb250ZXh0PHsgcmVhZG9ubHkgcmVnaXN0cnk6IEF0b21SZWdpc3RyeS5BdG9tUmVnaXN0cnkgfT4oKSgpOwoJY29uc3Qgbm90ZXMgPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiA8Tm90ZXNTY3JlZW4gY2xpZW50PXtjbGllbnR9IG9uU2lnbk91dD17KCkgPT4gYXV0aC5zaWduT3V0KCl9IC8+LAoJCWVycm9yQ29tcG9uZW50OiBSb3V0ZUZhaWx1cmUsCgkJZ2V0UGFyZW50Um91dGU6ICgpID0+IHJvb3QsCgkJbG9hZGVyOiAoY29udGV4dCkgPT4gbG9hZFF1ZXJ5KGNvbnRleHQuY29udGV4dC5yZWdpc3RyeSwgY2xpZW50LmFwaS5saXN0LnF1ZXJ5KCksIGNvbnRleHQpLAoJCXBhdGg6ICIvIiwKCX0pOwoJY29uc3QgbG9naW4gPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiA8TG9naW5TY3JlZW4gYXV0aD17YXV0aH0gb25BdXRoZW50aWNhdGVkPXsoKSA9PiB2b2lkIHJvdXRlci5uYXZpZ2F0ZSh7IHRvOiAiLyIgfSl9IC8+LAoJCWdldFBhcmVudFJvdXRlOiAoKSA9PiByb290LAoJCXBhdGg6ICIvc2lnbi1pbiIsCgl9KTsKCWNvbnN0IG5vdGUgPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiB7CgkJCWNvbnN0IHsgbm90ZUlkIH0gPSBub3RlLnVzZVBhcmFtcygpOwoJCQlyZXR1cm4gPE5vdGVFZGl0IGNsaWVudD17Y2xpZW50fSBrZXk9e25vdGVJZH0gbm90ZUlkPXtub3RlSWR9IG9uRGVsZXRlZD17KCkgPT4gdm9pZCByb3V0ZXIubmF2aWdhdGUoeyB0bzogIi8iIH0pfSAvPjsKCQl9LAoJCWVycm9yQ29tcG9uZW50OiBSb3V0ZUZhaWx1cmUsCgkJZ2V0UGFyZW50Um91dGU6ICgpID0+IHJvb3QsCgkJbG9hZGVyOiAoY29udGV4dCkgPT4gbG9hZFF1ZXJ5KGNvbnRleHQuY29udGV4dC5yZWdpc3RyeSwgY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogY29udGV4dC5wYXJhbXMubm90ZUlkIH0pLCBjb250ZXh0KSwKCQlwYXJhbXM6IHsKCQkJcGFyc2U6ICh7IG5vdGVJZCB9KSA9PiAoeyBub3RlSWQ6IFNjaGVtYS5kZWNvZGVVbmtub3duU3luYyhTY2hlbWEuTnVtYmVyRnJvbVN0cmluZy5jaGVjayhTY2hlbWEuaXNJbnQoKSwgU2NoZW1hLmlzR3JlYXRlclRoYW4oMCkpKShub3RlSWQpIH0pLAoJCQlzdHJpbmdpZnk6ICh7IG5vdGVJZCB9OiB7IHJlYWRvbmx5IG5vdGVJZDogbnVtYmVyIH0pID0+ICh7IG5vdGVJZDogU3RyaW5nKG5vdGVJZCkgfSksCgkJfSwKCQlwYXRoOiAiL25vdGVzLyRub3RlSWQiLAoJfSk7Cgljb25zdCByb3V0ZXIgPSBjcmVhdGVSb3V0ZXIoewoJCWNvbnRleHQ6IHsgcmVnaXN0cnkgfSwKCQkuLi4oaGlzdG9yeSA9PT0gdW5kZWZpbmVkID8ge30gOiB7IGhpc3RvcnkgfSksCgkJcm91dGVUcmVlOiByb290LmFkZENoaWxkcmVuKFtub3RlcywgbG9naW4sIG5vdGVdKSwKCX0pOwoJcmV0dXJuIHJvdXRlcjsKfQo=","path":"src/client/appRouter.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlQXV0aENsaWVudCB9IGZyb20gImJldHRlci1hdXRoL3JlYWN0IjsKCmV4cG9ydCBpbnRlcmZhY2UgQ3JlZGVudGlhbHMgewoJcmVhZG9ubHkgZW1haWw6IHN0cmluZzsKCXJlYWRvbmx5IG5hbWU6IHN0cmluZzsKCXJlYWRvbmx5IHBhc3N3b3JkOiBzdHJpbmc7Cn0KCmV4cG9ydCBpbnRlcmZhY2UgQXV0aEFjdGlvbnMgewoJcmVhZG9ubHkgc2lnbk91dDogKCkgPT4gUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+OwoJcmVhZG9ubHkgc3VibWl0OiAobW9kZTogInNpZ24taW4iIHwgInNpZ24tdXAiLCBjcmVkZW50aWFsczogQ3JlZGVudGlhbHMpID0+IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPjsKfQoKZXhwb3J0IGZ1bmN0aW9uIG1ha2VBdXRoKG9wdGlvbnM6IHsKCXJlYWRvbmx5IGJhc2VVcmw6IHN0cmluZzsKCXJlYWRvbmx5IGZldGNoT3B0aW9ucz86IE5vbk51bGxhYmxlPFBhcmFtZXRlcnM8dHlwZW9mIGNyZWF0ZUF1dGhDbGllbnQ+WzBdPlsiZmV0Y2hPcHRpb25zIl07Cn0pIHsKCWNvbnN0IGNsaWVudCA9IGNyZWF0ZUF1dGhDbGllbnQoeyAiYmFzZVVSTCI6IG9wdGlvbnMuYmFzZVVybCwgLi4uKCJmZXRjaE9wdGlvbnMiIGluIG9wdGlvbnMgPyB7IGZldGNoT3B0aW9uczogb3B0aW9ucy5mZXRjaE9wdGlvbnMgfSA6IHt9KSB9KTsKCWNvbnN0IGFjdGlvbnM6IEF1dGhBY3Rpb25zID0gewoJCXNpZ25PdXQ6IGFzeW5jICgpID0+IHsKCQkJY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LnNpZ25PdXQoKTsKCQkJcmV0dXJuIHJlc3VsdC5lcnJvcj8ubWVzc2FnZTsKCQl9LAoJCXN1Ym1pdDogYXN5bmMgKG1vZGUsIGNyZWRlbnRpYWxzKSA9PiB7CgkJCWNvbnN0IHJlc3VsdCA9IG1vZGUgPT09ICJzaWduLXVwIiA/IGF3YWl0IGNsaWVudC5zaWduVXAuZW1haWwoY3JlZGVudGlhbHMpIDogYXdhaXQgY2xpZW50LnNpZ25Jbi5lbWFpbChjcmVkZW50aWFscyk7CgkJCXJldHVybiByZXN1bHQuZXJyb3I/Lm1lc3NhZ2U7CgkJfSwKCX07CglyZXR1cm4geyBhY3Rpb25zLCBjbGllbnQgfTsKfQoKZXhwb3J0IHR5cGUgQXV0aCA9IFJldHVyblR5cGU8dHlwZW9mIG1ha2VBdXRoPjsK","path":"src/client/auth.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBiZWZvcmVFYWNoLCBleHBlY3QsIG9uVGVzdEZpbmlzaGVkLCB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGV2ZW50dWFsbHksIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBVbmF1dGhvcml6ZWQgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IG5vdGVzQ2xpZW50IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9ub3Rlc0NsaWVudC50cyI7CmltcG9ydCB7IHNjcmVlbkF1dGggfSBmcm9tICIjdGVzdC1zdXBwb3J0L3NjcmVlbkF1dGgudHMiOwppbXBvcnQgeyBzY3JlZW5zIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzIjsKaW1wb3J0IHsgYXBwUm91dGVyIH0gZnJvbSAiLi9hcHBSb3V0ZXIudHN4IjsKaW1wb3J0IHsgTm90ZXNTY3JlZW4gfSBmcm9tICIuL05vdGVzU2NyZWVuLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmxldCBleHBlY3RlZEVycm9yczogcmVhZG9ubHkgKHJlYWRvbmx5IHVua25vd25bXSlbXSA9IFtdOwpiZWZvcmVFYWNoKCgpID0+IHsKCWV4cGVjdGVkRXJyb3JzID0gW107Cgljb25zdCBlcnJvcnMgPSB2aS5zcHlPbihjb25zb2xlLCAiZXJyb3IiKTsKCW9uVGVzdEZpbmlzaGVkKCgpID0+IHsKCQljb25zdCBjYWxscyA9IGVycm9ycy5tb2NrLmNhbGxzOwoJCWVycm9ycy5tb2NrUmVzdG9yZSgpOwoJCWV4cGVjdChjYWxscykudG9FcXVhbChleHBlY3RlZEVycm9ycyk7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KCJzaG93cyB0aGUgcHJvdGVjdGVkIHJvdXRlJ3MgdHlwZWQgVW5hdXRob3JpemVkIGZhaWx1cmUgYW5kIGxpbmtzIHRvIHNpZ24taW4iLCBbXSwgZnVuY3Rpb24qICh7IGludGVyYWN0IH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgY2xpZW50ID0gbm90ZXNDbGllbnQoKTsKCQljbGllbnQuc2Vzc2lvbi5zaWduZWRJbiA9IGZhbHNlOwoJCWV4cGVjdGVkRXJyb3JzID0gWwoJCQlbCgkJCQlleHBlY3QuYW55KFN0cmluZyksCgkJCQluZXcgVW5hdXRob3JpemVkKHsgbWVzc2FnZTogIkF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkIiB9KSwKCQkJCSJUaGUgYWJvdmUgZXJyb3Igb2NjdXJyZWQgaW4gdGhlIDxNYXRjaElubmVySW1wbD4gY29tcG9uZW50LiIsCgkJCQkiUmVhY3Qgd2lsbCB0cnkgdG8gcmVjcmVhdGUgdGhpcyBjb21wb25lbnQgdHJlZSBmcm9tIHNjcmF0Y2ggdXNpbmcgdGhlIGVycm9yIGJvdW5kYXJ5IHlvdSBwcm92aWRlZCwgQ2F0Y2hCb3VuZGFyeS4iLAoJCQldLAoJCV07CgkJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCQlvblRlc3RGaW5pc2hlZCh2aWV3LnVubW91bnQpOwoJCWNvbnN0IHJvdXRlciA9IGFwcFJvdXRlcih2aWV3LnJlZ2lzdHJ5LCBjbGllbnQsIHNjcmVlbkF1dGgoKSwgY3JlYXRlTWVtb3J5SGlzdG9yeSh7IGluaXRpYWxFbnRyaWVzOiBbIi8iXSB9KSk7CgkJYXdhaXQgdmlldy5yZW5kZXIoPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPik7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIHRvIHZpZXcgeW91ciBub3Rlcy4iKSk7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImEiKT8uZ2V0QXR0cmlidXRlKCJocmVmIikpLnRvQmUoIi9zaWduLWluIik7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImZvcm0iKSkudG9CZU51bGwoKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFtdKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoInNob3dzIHR5cGVkIGNvbW1hbmQgcmVqZWN0aW9uIGFmdGVyIGV4cGlyeSB3aXRob3V0IGNsZWFyaW5nIHRoZSBkcmFmdCIsIFtdLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QgfSkgewoJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPE5vdGVzU2NyZWVuIGNsaWVudD17Y2xpZW50fSAvPik7CgkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdChjbGllbnQuY2FsbHMpLnRvRXF1YWwoWyJsaXN0Il0pKTsKCQljbGllbnQuc2Vzc2lvbi5zaWduZWRJbiA9IGZhbHNlOwoJCWNvbnN0IGlucHV0ID0gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKTsKCQlpZiAoIShpbnB1dCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7CgkJCXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBub3RlIGlucHV0Iik7CgkJfQoJCWF3YWl0IGFjdCgoKSA9PiB7CgkJCU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSFRNTElucHV0RWxlbWVudC5wcm90b3R5cGUsICJ2YWx1ZSIpPy5zZXQ/LmNhbGwoaW5wdXQsICJLZWVwIHRoaXMgZHJhZnQiKTsKCQkJaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0IiwgeyBidWJibGVzOiB0cnVlIH0pKTsKCQl9KTsKCQlhd2FpdCBhY3QoKCkgPT4gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiZm9ybSIpPy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgic3VibWl0IiwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIHRvIGFkZCBhIG5vdGUuIikpOwoJCWV4cGVjdChpbnB1dC52YWx1ZSkudG9CZSgiS2VlcCB0aGlzIGRyYWZ0Iik7CgkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiXSk7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KCJjYWxscyBzaWduLW91dCBhbmQgc2hvd3MgYSBmYWlsZWQgc2lnbi1vdXQgd2l0aG91dCBjbGFpbWluZyBzdWNjZXNzIiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGNsaWVudCA9IG5vdGVzQ2xpZW50KCk7CgkJbGV0IGNhbGxzID0gMDsKCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKAoJCQk8Tm90ZXNTY3JlZW4KCQkJCWNsaWVudD17Y2xpZW50fQoJCQkJb25TaWduT3V0PXsoKSA9PiB7CgkJCQkJY2FsbHMgKz0gMTsKCQkJCQlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJDb3VsZCBub3Qgc2lnbiBvdXQiKTsKCQkJCX19CgkJCS8+LAoJCSk7CgkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQlhd2FpdCBhY3QoYXN5bmMgKCkgPT4gewoJCQlbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiU2lnbiBvdXQiKT8uY2xpY2soKTsKCQkJYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7CgkJfSk7CgkJZXhwZWN0KGNhbGxzKS50b0JlKDEpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNvdWxkIG5vdCBzaWduIG91dCIpOwoJfSk7Cn0pOwo=","path":"src/client/authFailures.dom.spec.tsx"},{"content":"aW1wb3J0IHsgdHlwZSBDbGFzc1ZhbHVlLCBjbHN4IH0gZnJvbSAiY2xzeCI7CmltcG9ydCB7IHR3TWVyZ2UgfSBmcm9tICJ0YWlsd2luZC1tZXJnZSI7CgpleHBvcnQgZnVuY3Rpb24gY24oLi4uaW5wdXRzOiBDbGFzc1ZhbHVlW10pIHsKCXJldHVybiB0d01lcmdlKGNsc3goaW5wdXRzKSk7Cn0K","path":"src/client/cn.ts"},{"content":"QGltcG9ydCAidGFpbHdpbmRjc3MiIHNvdXJjZSgiLi8iKTsKCkB0aGVtZSBpbmxpbmUgewoJLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kKTsKCS0tY29sb3ItZm9yZWdyb3VuZDogdmFyKC0tZm9yZWdyb3VuZCk7CgktLWNvbG9yLWNhcmQ6IHZhcigtLWJhY2tncm91bmQpOwoJLS1jb2xvci1wcmltYXJ5OiB2YXIoLS1mb3JlZ3JvdW5kKTsKCS0tY29sb3ItcHJpbWFyeS1mb3JlZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kKTsKCS0tY29sb3ItbXV0ZWQ6IHZhcigtLW11dGVkKTsKCS0tY29sb3ItbXV0ZWQtZm9yZWdyb3VuZDogdmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCk7CgktLWNvbG9yLWRlc3RydWN0aXZlOiBva2xjaCgwLjU3NyAwLjI0NSAyNy4zMjUpOwoJLS1jb2xvci1ib3JkZXI6IHZhcigtLWJvcmRlcik7CgktLWNvbG9yLWlucHV0OiB2YXIoLS1ib3JkZXIpOwoJLS1jb2xvci1yaW5nOiBva2xjaCgwLjcwOCAwIDApOwoJLS1yYWRpdXMtbWQ6IDAuNXJlbTsKCS0tcmFkaXVzLWxnOiAwLjYyNXJlbTsKfQoKOnJvb3QgewoJLS1iYWNrZ3JvdW5kOiBva2xjaCgxIDAgMCk7CgktLWZvcmVncm91bmQ6IG9rbGNoKDAuMTQ1IDAgMCk7CgktLW11dGVkOiBva2xjaCgwLjk3IDAgMCk7CgktLW11dGVkLWZvcmVncm91bmQ6IG9rbGNoKDAuNTU2IDAgMCk7CgktLWJvcmRlcjogb2tsY2goMC45MjIgMCAwKTsKfQoKQGxheWVyIGJhc2UgewoJKiB7CgkJQGFwcGx5IGJvcmRlci1ib3JkZXI7Cgl9Cglib2R5IHsKCQlAYXBwbHkgYmctYmFja2dyb3VuZCB0ZXh0LWZvcmVncm91bmQ7Cgl9Cn0K","path":"src/client/entry.css"},{"content":"aW1wb3J0IHsgY3JlYXRlUm9vdCB9IGZyb20gInJlYWN0LWRvbS9jbGllbnQiOwppbXBvcnQgeyBBcHAgfSBmcm9tICIuL0FwcC50c3giOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIi4vYXV0aC50cyI7CmltcG9ydCB7IG1ha2VOb3Rlc0NsaWVudCB9IGZyb20gIi4vbWFrZU5vdGVzLnRzIjsKaW1wb3J0ICIjY2xpZW50L2VudHJ5LmNzcyI7Cgpjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicm9vdCIpOwppZiAoY29udGFpbmVyID09PSBudWxsKSB7Cgl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgYXBwbGljYXRpb24gcm9vdCIpOwp9CmNvbnN0IGF1dGggPSBtYWtlQXV0aCh7IGJhc2VVcmw6IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gfSk7CmZ1bmN0aW9uIGNvbm5lY3QoKSB7CglyZXR1cm4gbWFrZU5vdGVzQ2xpZW50KG5ldyBVUkwoIi9ycGMiLCB3aW5kb3cubG9jYXRpb24uaHJlZikuaHJlZik7Cn0KY3JlYXRlUm9vdChjb250YWluZXIpLnJlbmRlcig8QXBwIGF1dGg9e2F1dGh9IGNvbm5lY3Q9e2Nvbm5lY3R9IC8+KTsK","path":"src/client/entry.tsx"},{"content":"aW1wb3J0IHsgTGF5ZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBGZXRjaEh0dHBDbGllbnQgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCAqIGFzIEF0b21ScGMgZnJvbSAiZWZmZWN0L3JlYWN0aXZpdHkvQXRvbVJwYyI7CmltcG9ydCB7IFJwY0NsaWVudCwgUnBjU2VyaWFsaXphdGlvbiB9IGZyb20gImVmZmVjdC9ycGMiOwppbXBvcnQgeyBiaW5kIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvYmluZC50cyI7CmltcG9ydCB7IGxpdmUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9saXZlLnRzIjsKaW1wb3J0IHsgcmVzdW1lU2lnbmFsIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvcmVzdW1lLnRzIjsKaW1wb3J0IHsgTm90ZXMsIFN1YnNjcmliZSB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgZnVuY3Rpb24gbWFrZU5vdGVzQ2xpZW50KHVybDogc3RyaW5nLCB0cmFuc2Zvcm1DbGllbnQ/OiBOb25OdWxsYWJsZTxQYXJhbWV0ZXJzPHR5cGVvZiBScGNDbGllbnQubGF5ZXJQcm90b2NvbEh0dHA+WzBdWyJ0cmFuc2Zvcm1DbGllbnQiXT4pIHsKCWNsYXNzIE5vdGVzQ2xpZW50IGV4dGVuZHMgQXRvbVJwYy5TZXJ2aWNlPE5vdGVzQ2xpZW50PigpKCJzdGFydGVyL05vdGVzQ2xpZW50IiwgewoJCWdyb3VwOiBOb3RlcywKCQlwcm90b2NvbDogUnBjQ2xpZW50LmxheWVyUHJvdG9jb2xIdHRwKHsgLi4uKHRyYW5zZm9ybUNsaWVudCA9PT0gdW5kZWZpbmVkID8ge30gOiB7IHRyYW5zZm9ybUNsaWVudCB9KSwgdXJsIH0pLnBpcGUoCgkJCUxheWVyLnByb3ZpZGUoW0ZldGNoSHR0cENsaWVudC5sYXllciwgUnBjU2VyaWFsaXphdGlvbi5sYXllck5kanNvbl0pLAoJCSksCgl9KSB7fQoJY29uc3QgYXBpID0gYmluZChOb3RlcywgTm90ZXNDbGllbnQpOwoJY29uc3Qgc3Vic2NyaXB0aW9uID0gbGl2ZShOb3Rlc0NsaWVudC5ydW50aW1lLCB7CgkJcmVzdW1lOiByZXN1bWVTaWduYWwodHlwZW9mIHdpbmRvdyA9PT0gInVuZGVmaW5lZCIgPyB7fSA6IHsgd2luZG93IH0pLAoJCXJlc3luY0tleXM6IFN1YnNjcmliZS5yZWFkcyh1bmRlZmluZWQpLAoJCXN0cmVhbTogYXBpLnN1YnNjcmliZS5ydW4odW5kZWZpbmVkKSwKCX0pOwoJcmV0dXJuIHsgYXBpLCBydW50aW1lOiBOb3Rlc0NsaWVudC5ydW50aW1lLCAuLi5zdWJzY3JpcHRpb24gfTsKfQoKZXhwb3J0IHR5cGUgTm90ZXNDbGllbnQgPSBSZXR1cm5UeXBlPHR5cGVvZiBtYWtlTm90ZXNDbGllbnQ+Owo=","path":"src/client/makeNotes.ts"},{"content":"ZGVjbGFyZSBtb2R1bGUgIiouY3NzIiB7fQo=","path":"src/client/styles.d.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTW9kZWwgfSBmcm9tICJlZmZlY3Qvc2NoZW1hIjsKaW1wb3J0IHsgY29udHJhY3QgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9jb250cmFjdC50cyI7CmltcG9ydCB7IGNvbGxlY3Rpb24gfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgTGl2ZUhpbnQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9saXZlLnRzIjsKaW1wb3J0IHsgY29tbWFuZCwgcXVlcnksIHN0cmVhbSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWNvbnRyYWN0L29wZXJhdGlvbi50cyI7CmltcG9ydCB7IGZpZWxkUmVqZWN0aW9uIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvcmVqZWN0aW9uLnRzIjsKaW1wb3J0IHsgQ29uZmxpY3QsIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRVc2VyIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9ycGMvbWlkZGxld2FyZS50cyI7CgpleHBvcnQgY2xhc3MgTm90ZSBleHRlbmRzIE1vZGVsLkNsYXNzPE5vdGU+KCJOb3RlIikoewoJaWQ6IE1vZGVsLkZpZWxkKHsganNvbjogU2NoZW1hLk51bWJlciwgc2VsZWN0OiBTY2hlbWEuTnVtYmVyLCB1cGRhdGU6IFNjaGVtYS5OdW1iZXIgfSksCgl0aXRsZTogU2NoZW1hLk5vbkVtcHR5U3RyaW5nLAoJdmVyc2lvbjogTW9kZWwuRmllbGQoeyBqc29uOiBTY2hlbWEuTnVtYmVyLCBzZWxlY3Q6IFNjaGVtYS5OdW1iZXIsIHVwZGF0ZTogU2NoZW1hLk51bWJlciB9KSwKCXdvcmRDb3VudDogU2NoZW1hLk51bGxPcihTY2hlbWEuTnVtYmVyKSwKfSkge30KZXhwb3J0IGNvbnN0IE5vdGVGaWVsZHMgPSBTY2hlbWEuU3RydWN0KHsgdGl0bGU6IE5vdGUuZmllbGRzLnRpdGxlIH0pOwpleHBvcnQgY29uc3QgTm90ZUVkaXRGaWVsZHMgPSBTY2hlbWEuU3RydWN0KHsgdGl0bGU6IE5vdGUuZmllbGRzLnRpdGxlLCB2ZXJzaW9uOiBOb3RlLmZpZWxkcy52ZXJzaW9uIH0pOwpjb25zdCBOb3RlSWQgPSBTY2hlbWEuU3RydWN0KHsgaWQ6IFNjaGVtYS5OdW1iZXIgfSk7CmNvbnN0IE5vdGVWZXJzaW9uID0gU2NoZW1hLlN0cnVjdCh7IC4uLk5vdGVJZC5maWVsZHMsIHZlcnNpb246IE5vdGUuZmllbGRzLnZlcnNpb24gfSk7CmV4cG9ydCBjb25zdCBub3RlcyA9IGNvbGxlY3Rpb24oInN0YXJ0ZXJOb3RlcyIsIFNjaGVtYS5OdW1iZXIpOwpleHBvcnQgY29uc3QgR2V0ID0gcXVlcnkoImdldCIsIHsKCXBheWxvYWQ6IE5vdGVJZCwKCXJlYWRzOiAoeyBpZCB9KSA9PiBbbm90ZXMuaXRlbShpZCksIG5vdGVzLmxpc3RdLAoJcmVqZWN0aW9uczogeyBOb3RGb3VuZCwgU2VydmljZVVuYXZhaWxhYmxlIH0sCglzdWNjZXNzOiBOb3RlLmpzb24sCn0pOwpleHBvcnQgY29uc3QgTGlzdCA9IHF1ZXJ5KCJsaXN0IiwgewoJcmVhZHM6ICgpID0+IFtub3Rlcy5saXN0XSwKCXJlamVjdGlvbnM6IHsgU2VydmljZVVuYXZhaWxhYmxlIH0sCglzdWNjZXNzOiBTY2hlbWEuQXJyYXkoTm90ZS5qc29uKSwKfSk7CmV4cG9ydCBjb25zdCBDcmVhdGUgPSBjb21tYW5kKCJjcmVhdGUiLCB7CglpbnZhbGlkYXRlczogKF9pbnB1dCwgcm93KSA9PiBbbm90ZXMuaXRlbShyb3cuaWQpXSwKCXBheWxvYWQ6IE5vdGVGaWVsZHMsCglyZWplY3Rpb25zOiB7IEludmFsaWQ6IGZpZWxkUmVqZWN0aW9uKE5vdGVGaWVsZHMpLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSwKCXN1Y2Nlc3M6IE5vdGUuanNvbiwKfSk7CmV4cG9ydCBjb25zdCBTdWJzY3JpYmUgPSBzdHJlYW0oInN1YnNjcmliZSIsIHsKCXJlYWRzOiAoKSA9PiBbbm90ZXMubGlzdF0sCglzdWNjZXNzOiBMaXZlSGludCwKfSk7CmV4cG9ydCBjb25zdCBVcGRhdGUgPSBjb21tYW5kKCJ1cGRhdGUiLCB7CglpbnZhbGlkYXRlczogKHsgaWQgfSkgPT4gW25vdGVzLml0ZW0oaWQpXSwKCXBheWxvYWQ6IFNjaGVtYS5TdHJ1Y3QoeyAuLi5Ob3RlSWQuZmllbGRzLCAuLi5Ob3RlRWRpdEZpZWxkcy5maWVsZHMgfSksCglyZWplY3Rpb25zOiB7IENvbmZsaWN0LCBJbnZhbGlkOiBmaWVsZFJlamVjdGlvbihOb3RlRWRpdEZpZWxkcyksIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSwKCXN1Y2Nlc3M6IE5vdGUuanNvbiwKfSk7CmV4cG9ydCBjb25zdCBEZWxldGUgPSBjb21tYW5kKCJkZWxldGUiLCB7CglpbnZhbGlkYXRlczogKHsgaWQgfSkgPT4gW25vdGVzLml0ZW0oaWQpXSwKCXBheWxvYWQ6IE5vdGVWZXJzaW9uLAoJcmVqZWN0aW9uczogeyBDb25mbGljdCwgTm90Rm91bmQsIFNlcnZpY2VVbmF2YWlsYWJsZSB9LAoJc3VjY2VzczogU2NoZW1hLlZvaWQsCn0pOwpleHBvcnQgY29uc3QgV2hvYW1pID0gcXVlcnkoIndob2FtaSIsIHsKCXJlYWRzOiAoKSA9PiBbXSwKCXN1Y2Nlc3M6IFNjaGVtYS5TdHJ1Y3QoeyBlbWFpbDogU2NoZW1hLlN0cmluZywgaWQ6IFNjaGVtYS5TdHJpbmcsIG5hbWU6IFNjaGVtYS5TdHJpbmcgfSksCn0pOwpleHBvcnQgY29uc3QgTm90ZXMgPSBjb250cmFjdCgibm90ZXMiLCB7IGNvbW1hbmRzOiBbQ3JlYXRlLCBVcGRhdGUsIERlbGV0ZV0sIHF1ZXJpZXM6IFtMaXN0LCBHZXQsIFdob2FtaV0sIHN0cmVhbXM6IFtTdWJzY3JpYmVdIH0pLm1pZGRsZXdhcmUoCglBdXRoZW50aWNhdGVkVXNlciwKKTsK","path":"src/notes.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0ICogYXMgUmVhY3Rpdml0eSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9SZWFjdGl2aXR5IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGludmFsaWRhdGlvbktleXMgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgZGVmaW5lU2VydmljZSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXNlcnZpY2UvZGVmaW5lLXNlcnZpY2UudHMiOwppbXBvcnQgeyBpbnZhbGlkYXRlT25Db21taXQsIHRyYW5zYWN0IH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3Qtc3FsL3RyYW5zYWN0LnRzIjsKaW1wb3J0IHsgQ29uZmxpY3QsIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IENyZWF0ZSwgdHlwZSBEZWxldGUsIG5vdGVzLCBVcGRhdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBtYWtlTm90ZXNSZXBvc2l0b3J5IH0gZnJvbSAiLi9tYWtlTm90ZXNSZXBvc2l0b3J5LnRzIjsKaW1wb3J0IHsgQ291bnRXb3JkcywgTm90ZUpvYnMgfSBmcm9tICIuL25vdGVKb2JzLnRzIjsKCmZ1bmN0aW9uIHVuYXZhaWxhYmxlKCkgewoJcmV0dXJuIG5ldyBTZXJ2aWNlVW5hdmFpbGFibGUoeyBtZXNzYWdlOiAiQ291bGQgbm90IHJlYWNoIHRoZSBub3RlcyBkYXRhYmFzZSIgfSk7Cn0KZnVuY3Rpb24gd3JpdGVGYWlsdXJlKGVycm9yOiB7IHJlYWRvbmx5IF90YWc6IHN0cmluZyB9KSB7CglyZXR1cm4gZXJyb3IuX3RhZyA9PT0gIk9wdGltaXN0aWNDb25jdXJyZW5jeUVycm9yIgoJCT8gbmV3IENvbmZsaWN0KHsgbWVzc2FnZTogIlRoaXMgbm90ZSBjaGFuZ2VkLiBSZWZyZXNoIGFuZCByZXZpZXcgeW91ciBkcmFmdCBiZWZvcmUgdHJ5aW5nIGFnYWluLiIgfSkKCQk6IHVuYXZhaWxhYmxlKCk7Cn0KCmV4cG9ydCBjb25zdCBOb3Rlc1NlcnZpY2UgPSBkZWZpbmVTZXJ2aWNlKHsKCWlkOiAic3RhcnRlci9Ob3Rlc1NlcnZpY2UiLAoJaW5pdGlhbGl6ZTogbWFrZU5vdGVzUmVwb3NpdG9yeSwKCW1ldGhvZHM6IChyZXBvc2l0b3J5KSA9PiB7CgkJZnVuY3Rpb24gZ2V0KGlkOiBudW1iZXIsIG93bmVySWQ6IHN0cmluZykgewoJCQlyZXR1cm4gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgcm93cyA9IHlpZWxkKiByZXBvc2l0b3J5LmZpbmRNYW55KHsgbGltaXQ6IDEsIHdoZXJlOiB7IGlkLCBvd25lcklkIH0gfSkucGlwZShFZmZlY3QubWFwRXJyb3IodW5hdmFpbGFibGUpKTsKCQkJCXJldHVybiByb3dzWzBdID8/ICh5aWVsZCogRWZmZWN0LmZhaWwobmV3IE5vdEZvdW5kKHsgbWVzc2FnZTogIk5vdGUgbm90IGZvdW5kIiB9KSkpOwoJCQl9KTsKCQl9CgkJZnVuY3Rpb24gZW5xdWV1ZShub3RlSWQ6IG51bWJlcikgewoJCQlyZXR1cm4gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgam9icyA9IHlpZWxkKiBOb3RlSm9iczsKCQkJCXlpZWxkKiBqb2JzLmVucXVldWUoQ291bnRXb3JkcywgeyBub3RlSWQgfSkucGlwZShFZmZlY3QuY2F0Y2goKGVycm9yKSA9PiBFZmZlY3QubG9nRXJyb3IoeyBlcnJvciwgZXZlbnQ6ICJub3RlX2VucXVldWVfZmFpbGVkIiwgbm90ZUlkIH0pKSk7CgkJCX0pOwoJCX0KCQlyZXR1cm4gewoJCQljcmVhdGU6ICh7IHRpdGxlIH06IHR5cGVvZiBDcmVhdGUucGF5bG9hZC5UeXBlLCBvd25lcklkOiBzdHJpbmcpID0+CgkJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQkJY29uc3QgdHJpbW1lZCA9IHRpdGxlLnRyaW0oKTsKCQkJCQlpZiAodHJpbW1lZCA9PT0gIiIpIHsKCQkJCQkJcmV0dXJuIHlpZWxkKiBDcmVhdGUucmVqZWN0LkludmFsaWQoeyBmaWVsZDogInRpdGxlIiwgbWVzc2FnZTogIkVudGVyIGEgdGl0bGUiIH0pOwoJCQkJCX0KCQkJCQljb25zdCByb3cgPSB5aWVsZCogcmVwb3NpdG9yeS5pbnNlcnQoeyBvd25lcklkLCB0aXRsZTogdHJpbW1lZCwgd29yZENvdW50OiBudWxsIH0pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHVuYXZhaWxhYmxlKSk7CgkJCQkJeWllbGQqIGludmFsaWRhdGVPbkNvbW1pdChpbnZhbGlkYXRpb25LZXlzKFtub3Rlcy5pdGVtKHJvdy5pZCldKSk7CgkJCQkJcmV0dXJuIHJvdzsKCQkJCX0pLnBpcGUoCgkJCQkJdHJhbnNhY3QoeyBvblNxbEVycm9yOiB1bmF2YWlsYWJsZSB9KSwKCQkJCQlFZmZlY3QudGFwKChyb3cpID0+IGVucXVldWUocm93LmlkKSksCgkJCQkpLAoJCQlkZWxldGU6IChpbnB1dDogdHlwZW9mIERlbGV0ZS5wYXlsb2FkLlR5cGUsIG93bmVySWQ6IHN0cmluZykgPT4KCQkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCQl5aWVsZCogZ2V0KGlucHV0LmlkLCBvd25lcklkKTsKCQkJCQl5aWVsZCogcmVwb3NpdG9yeS5kZWxldGUoaW5wdXQuaWQsIGlucHV0LnZlcnNpb24pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHdyaXRlRmFpbHVyZSkpOwoJCQkJCXlpZWxkKiBpbnZhbGlkYXRlT25Db21taXQoaW52YWxpZGF0aW9uS2V5cyhbbm90ZXMuaXRlbShpbnB1dC5pZCldKSk7CgkJCQl9KS5waXBlKHRyYW5zYWN0KHsgb25TcWxFcnJvcjogdW5hdmFpbGFibGUgfSkpLAoJCQlnZXQsCgkJCWxpc3Q6IChvd25lcklkOiBzdHJpbmcpID0+CgkJCQlyZXBvc2l0b3J5CgkJCQkJLmZpbmRNYW55KHsgb3JkZXJCeTogeyBkaXJlY3Rpb246ICJkZXNjIiwgZmllbGQ6ICJpZCIgfSwgc2VsZWN0OiBbImlkIiwgInRpdGxlIiwgIndvcmRDb3VudCIsICJ2ZXJzaW9uIl0sIHdoZXJlOiB7IG93bmVySWQgfSB9KQoJCQkJCS5waXBlKEVmZmVjdC5tYXBFcnJvcih1bmF2YWlsYWJsZSkpLAoJCQl1cGRhdGU6IChpbnB1dDogdHlwZW9mIFVwZGF0ZS5wYXlsb2FkLlR5cGUsIG93bmVySWQ6IHN0cmluZykgPT4KCQkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCQljb25zdCByb3cgPSB5aWVsZCogZ2V0KGlucHV0LmlkLCBvd25lcklkKTsKCQkJCQljb25zdCB0aXRsZSA9IGlucHV0LnRpdGxlLnRyaW0oKTsKCQkJCQlpZiAodGl0bGUgPT09ICIiKSB7CgkJCQkJCXJldHVybiB5aWVsZCogVXBkYXRlLnJlamVjdC5JbnZhbGlkKHsgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJFbnRlciBhIHRpdGxlIiB9KTsKCQkJCQl9CgkJCQkJY29uc3Qgc2F2ZWQgPSB5aWVsZCogcmVwb3NpdG9yeS51cGRhdGUoeyAuLi5yb3csIC4uLmlucHV0LCB0aXRsZSwgd29yZENvdW50OiBudWxsIH0pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHdyaXRlRmFpbHVyZSkpOwoJCQkJCXlpZWxkKiBpbnZhbGlkYXRlT25Db21taXQoaW52YWxpZGF0aW9uS2V5cyhbbm90ZXMuaXRlbShzYXZlZC5pZCldKSk7CgkJCQkJcmV0dXJuIHNhdmVkOwoJCQkJfSkucGlwZSgKCQkJCQl0cmFuc2FjdCh7IG9uU3FsRXJyb3I6IHVuYXZhaWxhYmxlIH0pLAoJCQkJCUVmZmVjdC50YXAoKHJvdykgPT4gZW5xdWV1ZShyb3cuaWQpKSwKCQkJCSksCgkJfTsKCX0sCglyZXF1aXJlczogW1NxbENsaWVudC5TcWxDbGllbnQsIFJlYWN0aXZpdHkuUmVhY3Rpdml0eSwgTm90ZUpvYnNdLAp9KTsK","path":"src/server/NotesService.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBleHBlY3QgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBVbmF1dGhvcml6ZWQgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IGFwcCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwppbXBvcnQgeyBjcmVkZW50aWFscyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXV0aEh0dHAudHMiOwoKYXBwLml0KCJ0YXJnZXRzIGl0cyBvd24gaG9zdCBmb3IgYXV0aCBhY3Rpb25zIGFuZCBzZXNzaW9uIGNoZWNrcyIsIFtdLCBmdW5jdGlvbiogKHsgYXV0aENsaWVudCwgYXV0aGVudGljYXRlLCBub3RlcyB9KSB7Cgljb25zdCBhdXRoID0gYXV0aENsaWVudCgpOwoJY29uc3QgYWNjb3VudCA9IGNyZWRlbnRpYWxzKCJjbGllbnQtdXNlciIpOwoJZXhwZWN0KCh5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gYXV0aC5jbGllbnQuZ2V0U2Vzc2lvbigpKSkuZGF0YSkudG9CZU51bGwoKTsKCWV4cGVjdCh5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gYXV0aC5hY3Rpb25zLnN1Ym1pdCgic2lnbi11cCIsIGFjY291bnQpKSkudG9CZVVuZGVmaW5lZCgpOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBhdXRoLmFjdGlvbnMuc3VibWl0KCJzaWduLWluIiwgYWNjb3VudCkpKS50b0JlVW5kZWZpbmVkKCk7Cgljb25zdCBjb29raWUgPSB5aWVsZCogYXV0aGVudGljYXRlKCJjbGllbnQtdXNlciIsICJzaWduLWluL2VtYWlsIik7Cgljb25zdCBzaWduZWRJbiA9IGF1dGhDbGllbnQoY29va2llKTsKCWNvbnN0IHNlc3Npb24gPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gc2lnbmVkSW4uY2xpZW50LmdldFNlc3Npb24oKSk7CglleHBlY3Qoc2Vzc2lvbi5kYXRhPy51c2VyKS50b01hdGNoT2JqZWN0KHsgZW1haWw6IGFjY291bnQuZW1haWwsIG5hbWU6IGFjY291bnQubmFtZSB9KTsKCWNvbnN0IGNsaWVudCA9IHlpZWxkKiBub3Rlcyhjb29raWUpOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQud2hvYW1pKCkpLnRvRXF1YWwoeyBlbWFpbDogYWNjb3VudC5lbWFpbCwgaWQ6IHNlc3Npb24uZGF0YT8udXNlci5pZCwgbmFtZTogYWNjb3VudC5uYW1lIH0pOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBzaWduZWRJbi5hY3Rpb25zLnNpZ25PdXQoKSkpLnRvQmVVbmRlZmluZWQoKTsKCWV4cGVjdCgoeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IHNpZ25lZEluLmNsaWVudC5nZXRTZXNzaW9uKCkpKS5kYXRhKS50b0JlTnVsbCgpOwoJY29uc3QgcmV2b2tlZCA9IHlpZWxkKiBjbGllbnQud2hvYW1pKCkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKHJldm9rZWQpICYmIHJldm9rZWQuZmFpbHVyZSkudG9CZUluc3RhbmNlT2YoVW5hdXRob3JpemVkKTsKfSk7Cg==","path":"src/server/authClient.spec.ts"},{"content":"aW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBhdXRoUmF0ZUxpbWl0aW5nLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKZm9yIChjb25zdCB0cnVzdGVkUHJveHkgb2YgWyIxMjcuMC4wLjEiLCAiIDE5Mi4wLjIuMSwgMTI3LjAuMC4wLzgsIDIwMDE6ZGI4OjovMzIgIiwgIjo6ZmZmZjoxMjcuMC4wLjAvMTA0IiwgIjo6ZmZmZjo3ZjAwOjAvMTA0Il0pIHsKCWFwcC5pdCgKCQlgaXNvbGF0ZXMgc2lnbi1pbiBsaW1pdHMgYWNyb3NzIGFwcGVuZGVkIGZvcndhcmRpbmcgY2hhaW5zICgke3RydXN0ZWRQcm94eX0pYCwKCQlbYmVoaW5kUHJveHkoeyB0cnVzdGVkUHJveHkgfSldLAoJCWZ1bmN0aW9uKiAoeyBhdXRoUmF0ZUxpbWl0cyB9KSB7CgkJCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7CgkJCWNvbnN0IGFsaWNlID0gbGltaXRzLnZpc2l0b3IoIjo6MSIpOwoJCQljb25zdCBib2IgPSBsaW1pdHMudmlzaXRvcigiMTI3LjAuMC4xIik7CgkJCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJCQlleHBlY3QoeWllbGQqIGFsaWNlLnNpZ25JbigiMTk4LjUxLjEwMC4xMCIpKS50b0JlKDQwMSk7CgkJCX0KCQkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMTAiKSkudG9CZSg0MjkpOwoJCQlleHBlY3QoeWllbGQqIGJvYi5zaWduSW4oIjE5OC41MS4xMDAuMjAiKSkudG9CZSg0MDEpOwoJCX0sCgkpOwp9CmZvciAoY29uc3QgdHJ1c3RlZFByb3h5IG9mIFt1bmRlZmluZWQsICIxMjcuMC4wLjIiLCAiOjpmZmZmOjEyNi4wLjAuMC8xMDQiXSkgewoJYXBwLml0KAoJCWBpZ25vcmVzIGZvcndhcmRlZCBjbGllbnQgSVBzIHdoZW4gcHJveHkgdHJ1c3QgaXMgJHt0cnVzdGVkUHJveHkgPz8gInVuc2V0In1gLAoJCVtiZWhpbmRQcm94eSh7IHRydXN0ZWRQcm94eSB9KV0sCgkJZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCQkJY29uc3QgbGltaXRzID0gYXV0aFJhdGVMaW1pdHMoKTsKCQkJY29uc3QgYWxpY2UgPSBsaW1pdHMudmlzaXRvcigiOjoxIik7CgkJCWNvbnN0IGJvYiA9IGxpbWl0cy52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCQkJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQkJCWV4cGVjdCh5aWVsZCogYWxpY2Uuc2lnbkluKCkpLnRvQmUoNDAxKTsKCQkJfQoJCQlleHBlY3QoeWllbGQqIGJvYi5zaWduSW4oKSkudG9CZSg0MjkpOwoJCX0sCgkpOwp9CgphcHAuaXQoImVuYWJsZXMgc2lnbi1pbiBsaW1pdHMgdGhyb3VnaCBhcHAgY29uZmlndXJhdGlvbiIsIFtiZWhpbmRQcm94eSgpLCBhdXRoUmF0ZUxpbWl0aW5nKHRydWUpXSwgZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7Cgljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MjkpOwp9KTsKCmZvciAoY29uc3QgdHJ1c3RlZFByb3h5IG9mIFt1bmRlZmluZWQsICIxMjcuMC4wLjEiXSkgewoJYXBwLml0KAoJCWBkaXNhYmxlcyBzaWduLWluIGxpbWl0cyB3aXRoIHByb3h5IHRydXN0ICR7dHJ1c3RlZFByb3h5ID8/ICJ1bnNldCJ9YCwKCQlbYmVoaW5kUHJveHkoeyB0cnVzdGVkUHJveHkgfSksIGF1dGhSYXRlTGltaXRpbmcoZmFsc2UpXSwKCQlmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJCQljb25zdCBsaW1pdHMgPSBhdXRoUmF0ZUxpbWl0cygpOwoJCQljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCQkJY29uc3QgYm9iID0gbGltaXRzLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJCQlmb3IgKGxldCBhdHRlbXB0ID0gMDsgYXR0ZW1wdCA8IDQ7IGF0dGVtcHQgKz0gMSkgewoJCQkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MDEpOwoJCQl9CgkJCWV4cGVjdCh5aWVsZCogYm9iLnNpZ25JbigpKS50b0JlKDQwMSk7CgkJfSwKCSk7Cn0KCmFwcC5pdCgia2VlcHMgdGhlIHNhbWUgc2lnbi1pbiBidWNrZXQgd2hlbiBhIHZpc2l0b3IgZm9yZ2VzIGZvcndhcmRpbmcgaGVhZGVycyIsIFtiZWhpbmRQcm94eSgpXSwgZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7Cgljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCWNvbnN0IGJvYiA9IGxpbWl0cy52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMTAiKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMjAiKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBib2Iuc2lnbkluKCIxOTguNTEuMTAwLjEwIikpLnRvQmUoNDAxKTsKfSk7Cg==","path":"src/server/authClientIp.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IFBvb2wsIHR5cGUgUG9vbENsaWVudCB9IGZyb20gInBnIjsKCmV4cG9ydCBjb25zdCBhdXRoRGF0YWJhc2UgPSBFZmZlY3QuZm4oIlN0YXJ0ZXIuYXV0aERhdGFiYXNlIikoZnVuY3Rpb24qICh1cmw6IFJlZGFjdGVkLlJlZGFjdGVkPHN0cmluZz4pIHsKCWNvbnN0IGNsaWVudHMgPSBuZXcgU2V0PFBvb2xDbGllbnQ+KCk7CglyZXR1cm4geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQlFZmZlY3Quc3luYygoKSA9PiB7CgkJCWNvbnN0IHBvb2wgPSBuZXcgUG9vbCh7IGNvbm5lY3Rpb25TdHJpbmc6IFJlZGFjdGVkLnZhbHVlKHVybCkgfSk7CgkJCXBvb2wub24oImNvbm5lY3QiLCAoY2xpZW50KSA9PiBjbGllbnRzLmFkZChjbGllbnQpKTsKCQkJcG9vbC5vbigicmVtb3ZlIiwgKGNsaWVudCkgPT4gY2xpZW50cy5kZWxldGUoY2xpZW50KSk7CgkJCXJldHVybiBwb29sOwoJCX0pLAoJCShwb29sKSA9PgoJCQlFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkvLyBwZy1wb29sIHJlc29sdmVzIGVuZCBiZWZvcmUgaXRzIGNsaWVudHMgZmluaXNoIGRpc2Nvbm5lY3RpbmcuCgkJCQljb25zdCBkaXNjb25uZWN0ZWQgPSBbLi4uY2xpZW50c10ubWFwKChjbGllbnQpID0+IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiBjbGllbnQub25jZSgiZW5kIiwgcmVzb2x2ZSkpKTsKCQkJCWF3YWl0IHBvb2wuZW5kKCk7CgkJCQlhd2FpdCBQcm9taXNlLmFsbChkaXNjb25uZWN0ZWQpOwoJCQl9KSwKCSk7Cn0pOwo=","path":"src/server/authDatabase.ts"},{"content":"aW1wb3J0IHR5cGUgeyBCZXR0ZXJBdXRoT3B0aW9ucyB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHR5cGUgeyBQb29sIH0gZnJvbSAicGciOwoKZXhwb3J0IGZ1bmN0aW9uIGF1dGhPcHRpb25zKGRhdGFiYXNlOiBQb29sKSB7CglyZXR1cm4geyBkYXRhYmFzZSwgZW1haWxBbmRQYXNzd29yZDogeyBlbmFibGVkOiB0cnVlIH0gfSBzYXRpc2ZpZXMgQmV0dGVyQXV0aE9wdGlvbnM7Cn0K","path":"src/server/authOptions.ts"},{"content":"aW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKY29uc3QgcmVhbElwID0gYmVoaW5kUHJveHkoeyBhdXRoQ2xpZW50SXBIZWFkZXI6ICJ4LXJlYWwtaXAiLCB0cnVzdGVkUHJveHk6ICIxMjcuMC4wLjEiIH0pOwoKYXBwLml0KCJpc29sYXRlcyBzaWduLWluIGxpbWl0cyBieSBYLVJlYWwtSVAgZnJvbSBhIHRydXN0ZWQgcGVlciIsIFtyZWFsSXBdLCBmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJY29uc3QgcHJveHkgPSBhdXRoUmF0ZUxpbWl0cygpLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQlleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4xMCIpKS50b0JlKDQwMSk7Cgl9CglleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4xMCIpKS50b0JlKDQyOSk7CglleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4yMCIpKS50b0JlKDQwMSk7Cn0pOwoKYXBwLml0KCJzaGFyZXMgYSBzaWduLWluIGJ1Y2tldCBmb3IgdGhlIHNhbWUgWC1SZWFsLUlQIGFjcm9zcyBjaGFuZ2luZyBmb3J3YXJkaW5nIGNoYWlucyIsIFtyZWFsSXBdLCBmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJY29uc3QgcHJveHkgPSBhdXRoUmF0ZUxpbWl0cygpLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQlleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbihgMTk4LjUxLjEwMC4ke2F0dGVtcHQgKyAxfWAsICIyMDMuMC4xMTMuMTAiKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBwcm94eS5zaWduSW4oIjE5OC41MS4xMDAuNCIsICIyMDMuMC4xMTMuMTAiKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBwcm94eS5zaWduSW4odW5kZWZpbmVkLCAiMjAzLjAuMTEzLjEwIikpLnRvQmUoNDI5KTsKfSk7Cgpmb3IgKGNvbnN0IHRydXN0ZWRQcm94eSBvZiBbdW5kZWZpbmVkLCAiMTI3LjAuMC4yIl0pIHsKCWFwcC5pdCgKCQlgaWdub3JlcyBYLVJlYWwtSVAgd2hlbiBwcm94eSB0cnVzdCBpcyAke3RydXN0ZWRQcm94eSA/PyAidW5zZXQifWAsCgkJW2JlaGluZFByb3h5KHsgYXV0aENsaWVudElwSGVhZGVyOiAieC1yZWFsLWlwIiwgdHJ1c3RlZFByb3h5IH0pXSwKCQlmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJCQljb25zdCBwZWVyID0gYXV0aFJhdGVMaW1pdHMoKS52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCQkJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQkJCWV4cGVjdCh5aWVsZCogcGVlci5zaWduSW4odW5kZWZpbmVkLCBgMjAzLjAuMTEzLiR7YXR0ZW1wdCArIDF9YCkpLnRvQmUoNDAxKTsKCQkJfQoJCQlleHBlY3QoeWllbGQqIHBlZXIuc2lnbkluKHVuZGVmaW5lZCwgIjIwMy4wLjExMy40IikpLnRvQmUoNDI5KTsKCQl9LAoJKTsKfQo=","path":"src/server/authRealIp.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGRlcGxveW1lbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L2RlcGxveW1lbnQudHMiOwoKZGVwbG95bWVudC5pdCgiYXV0aCBzdGlsbCByZXBvcnRzIGEgbWlzc2luZyBjb2x1bW4gd2hlbiB0aGUgbWlncmF0aW9uIGxlZGdlciBpcyBjdXJyZW50IiwgW10sIGZ1bmN0aW9uKiAoeyBtaWdyYXRlLCBzdGFydFByb2Nlc3MgfSkgewoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkudG9CZSgwKTsKCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgInVzZXIiIGRyb3AgY29sdW1uIGltYWdlYDsKCWNvbnN0IHdlYiA9IHlpZWxkKiBzdGFydFByb2Nlc3MoIndlYiIpOwoJY29uc3QgYWRkcmVzcyA9IHlpZWxkKiB3ZWIucmVhZHk7Cgljb25zdCByZXNwb25zZSA9IHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBmZXRjaChgJHthZGRyZXNzfS9hcGkvYXV0aC9nZXQtc2Vzc2lvbmApKTsKCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoNTAzKTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBleHBlY3QucG9sbCgoKSA9PiB3ZWIuZXJyb3JzLmpvaW4oIlxuIikpLnRvQ29udGFpbigiRGF0YWJhc2Ugc2NoZW1hIG1pc21hdGNoIikpOwoJZXhwZWN0KHdlYi5lcnJvcnMuam9pbigiXG4iKSkudG9Db250YWluKCJNaXNzaW5nIGNvbHVtbnMiKTsKCWV4cGVjdCh3ZWIuZXJyb3JzLmpvaW4oIlxuIikpLnRvQ29udGFpbigidXNlci5pbWFnZSIpOwp9KTsK","path":"src/server/authSchema.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgKiBhcyBBc3luY1Jlc3VsdCBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9Bc3luY1Jlc3VsdCI7CmltcG9ydCB7IFNxbENsaWVudCB9IGZyb20gImVmZmVjdC9zcWwiOwppbXBvcnQgeyBleHBlY3QsIHZpIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgdHJhbnNhY3QgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1zcWwvdHJhbnNhY3QudHMiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CmltcG9ydCB7IE5vdGVzU2VydmljZSB9IGZyb20gIi4vTm90ZXNTZXJ2aWNlLnRzIjsKCmFwcC5pdCgKCSJlbnF1ZXVlcyBpbmRlcGVuZGVudGx5IG9mIGFuIG91dGVyIHJvbGxiYWNrIGFuZCByZWZldGNoZXMgY29tbWl0dGVkIG5vdGVzIHRocm91Z2ggdGhlIHdvcmtlciIsCglbc2lnbmVkSW4oKV0sCglmdW5jdGlvbiogKHsgYWN0b3IsIHJ1bm5pbmdIb3N0LCBzdGFydFdvcmtlciwgbGl2ZU5vdGVzIH0pIHsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQljb25zdCB7IGNvbnRleHQgfSA9IHJ1bm5pbmdIb3N0KCk7CgkJY29uc3QgeyBub3RlczogaHR0cCB9ID0gYWN0b3IoKTsKCQljb25zdCB7IGxpc3QsIHJlZ2lzdHJ5IH0gPSB5aWVsZCogbGl2ZU5vdGVzKCk7CgkJY29uc3Qgbm90ZSA9IHlpZWxkKiBodHRwLmNyZWF0ZSh7IHRpdGxlOiAiQ291bnQgdGhlc2UgdGhyZWUgd29yZHMiIH0pOwoJCWV4cGVjdChub3RlLndvcmRDb3VudCkudG9CZU51bGwoKTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gdmkud2FpdEZvcigoKSA9PiBleHBlY3QoQXN5bmNSZXN1bHQuZ2V0T3JFbHNlKHJlZ2lzdHJ5LmdldChsaXN0KSwgKCkgPT4gW10pKS50b0VxdWFsKFtub3RlXSkpKTsKCQljb25zdCB1c2VycyA9IHlpZWxkKiBzcWw8eyBpZDogc3RyaW5nIH0+YHNlbGVjdCBpZCBmcm9tICJ1c2VyIiB3aGVyZSBlbWFpbCA9ICdhbGljZUBzdGFydGVyLnRlc3QnYDsKCQljb25zdCBvd25lcklkID0gdXNlcnNbMF0/LmlkOwoJCWlmIChvd25lcklkID09PSB1bmRlZmluZWQpIHsKCQkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZGllKCJNaXNzaW5nIGFjY291bnQiKTsKCQl9CgkJY29uc3Qgcm9sbGJhY2sgPSB5aWVsZCogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQljb25zdCBzZXJ2aWNlID0geWllbGQqIE5vdGVzU2VydmljZTsKCQkJeWllbGQqIHNlcnZpY2UuY3JlYXRlKHsgdGl0bGU6ICJSb2xsZWQgYmFjayIgfSwgb3duZXJJZCk7CgkJCXJldHVybiB5aWVsZCogRWZmZWN0LmZhaWwoInJvbGxiYWNrIik7CgkJfSkucGlwZSh0cmFuc2FjdCh7IG9uU3FsRXJyb3I6IChlcnJvcikgPT4gZXJyb3IgfSksIEVmZmVjdC5wcm92aWRlKGNvbnRleHQpLCBFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyb2xsYmFjaykgJiYgcm9sbGJhY2suZmFpbHVyZSkudG9CZSgicm9sbGJhY2siKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHBnYm9zcy5qb2Igd2hlcmUgbmFtZSA9ICdjb3VudC1ub3RlLXdvcmRzJ2ApLnRvRXF1YWwoW3sgY291bnQ6IDIgfV0pOwoJCXlpZWxkKiBFZmZlY3Quc2xlZXAoIjEyMDAgbWlsbGlzIik7CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0ICJ3b3JkQ291bnQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7bm90ZS5pZH1gKS50b0VxdWFsKFt7IHdvcmRDb3VudDogbnVsbCB9XSk7CgkJeWllbGQqIHN0YXJ0V29ya2VyKCk7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCXZpLndhaXRGb3IoKCkgPT4gZXhwZWN0KEFzeW5jUmVzdWx0LmdldE9yRWxzZShyZWdpc3RyeS5nZXQobGlzdCksICgpID0+IFtdKSkudG9FcXVhbChbeyAuLi5ub3RlLCB2ZXJzaW9uOiAxLCB3b3JkQ291bnQ6IDQgfV0pLCB7CgkJCQl0aW1lb3V0OiA1MDAwLAoJCQl9KSwKCQkpOwoJCWNvbnN0IHNlY29uZCA9IHlpZWxkKiBodHRwLmNyZWF0ZSh7IHRpdGxlOiAiQWZ0ZXIgY29tbWl0IiB9KTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQkJdmkud2FpdEZvcigKCQkJCSgpID0+CgkJCQkJZXhwZWN0KEFzeW5jUmVzdWx0LmdldE9yRWxzZShyZWdpc3RyeS5nZXQobGlzdCksICgpID0+IFtdKSkudG9FcXVhbChbCgkJCQkJCXsgaWQ6IHNlY29uZC5pZCwgdGl0bGU6IHNlY29uZC50aXRsZSwgdmVyc2lvbjogMSwgd29yZENvdW50OiAyIH0sCgkJCQkJCXsgLi4ubm90ZSwgdmVyc2lvbjogMSwgd29yZENvdW50OiA0IH0sCgkJCQkJXSksCgkJCQl7IHRpbWVvdXQ6IDUwMDAgfSwKCQkJKSwKCQkpOwoJCWNvbnN0IGNvbXBsZXRlZCA9IHNxbGBzZWxlY3Qgc3RhdGUsIHJldHJ5X2NvdW50IGFzICJyZXRyeUNvdW50IiBmcm9tIHBnYm9zcy5qb2Igd2hlcmUgbmFtZSA9ICdjb3VudC1ub3RlLXdvcmRzJyBvcmRlciBieSBjcmVhdGVkX29uYDsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQkJdmkud2FpdEZvcigKCQkJCWFzeW5jICgpID0+CgkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKGNvbXBsZXRlZCkpLnRvRXF1YWwoWwoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCV0pLAoJCQkJeyB0aW1lb3V0OiA1MDAwIH0sCgkJCSksCgkJKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFt7IGNvdW50OiAyIH1dKTsKCX0sCgkxNV8wMDAsCik7Cg==","path":"src/server/committedJobs.spec.ts"},{"content":"aW1wb3J0IHsgY29va2llQXBwIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9jb29raWVBcHAudHMiOwoKY29va2llQXBwLml0KCJzaWduLXVwIGFuZCBzaWduLWluIGtlZXAgdGhlaXIgY29va2llIHNlc3Npb25zIGFnYWluc3QgdGhlIFBvc3RncmVTUUwgaG9zdCIsIFtdLCBmdW5jdGlvbiogKHsgc2lnblVwLCBzaWduSW4sIHNpZ25PdXQsIHNlc3Npb25JcyB9KSB7Cgl5aWVsZCogc2lnblVwKCk7Cgl5aWVsZCogc2Vzc2lvbklzKCJhbGljZUBzdGFydGVyLnRlc3QiKTsKCXlpZWxkKiBzaWduT3V0KCk7Cgl5aWVsZCogc2Vzc2lvbklzKG51bGwpOwoJeWllbGQqIHNpZ25JbigpOwoJeWllbGQqIHNlc3Npb25JcygiYWxpY2VAc3RhcnRlci50ZXN0Iik7Cgl5aWVsZCogc2lnbk91dCgpOwoJeWllbGQqIHNlc3Npb25JcyhudWxsKTsKfSk7Cg==","path":"src/server/cookieSessions.dom.spec.ts"},{"content":"aW1wb3J0IHR5cGUgeyBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB0eXBlIHsgUG9vbCB9IGZyb20gInBnIjsKaW1wb3J0IHsgbWlncmF0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvbWlncmF0aW9ucy50cyI7CgpleHBvcnQgZnVuY3Rpb24gZGF0YWJhc2VPcHRpb25zKGRhdGFiYXNlOiBQb29sLCBkYXRhYmFzZVVybDogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPikgewoJcmV0dXJuIHsKCQljb25maWc6IHsgY2hhbmdlczogeyBjaGFubmVsOiAic3RhcnRlcl9ub3Rlc19jaGFuZ2VzIiB9LCBkYXRhYmFzZVVybCB9LAoJCW1pZ3JhdGlvbnM6IHsgLi4ubWlncmF0aW9ucyhkYXRhYmFzZSksIG1vZGU6ICJjaGVjayIgYXMgY29uc3QgfSwKCX07Cn0K","path":"src/server/databaseOptions.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGF1dGhQb3N0LCBjcmVkZW50aWFscyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXV0aEh0dHAudHMiOwppbXBvcnQgeyBkZXBsb3ltZW50IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9kZXBsb3ltZW50LnRzIjsKCmRlcGxveW1lbnQuaXQoInRoZSBzZWNyZXQtZnJlZSBtaWdyYXRlIGNvbW1hbmQgYXBwbGllcyB0aGUgc2NoZW1hIG9uY2UgYW5kIHByZXNlcnZlcyBpdHMgbGVkZ2VyIGFuZCByb3dzIG9uIHJlcnVuIiwgW10sIGZ1bmN0aW9uKiAoeyBtaWdyYXRlIH0pIHsKCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJZXhwZWN0KHlpZWxkKiBtaWdyYXRlKCkpLnRvQmUoMCk7Cgljb25zdCBsZWRnZXIgPSBzcWxgc2VsZWN0IG1pZ3JhdGlvbl9pZCwgbmFtZSwgY3JlYXRlZF9hdCBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyBvcmRlciBieSBtaWdyYXRpb25faWRgOwoJY29uc3QgYXBwbGllZCA9IHlpZWxkKiBsZWRnZXI7CglleHBlY3QoYXBwbGllZCkudG9IYXZlTGVuZ3RoKDUpOwoJeWllbGQqIHNxbGBpbnNlcnQgaW50byBzdGFydGVyX25vdGVzICh0aXRsZSkgdmFsdWVzICgnS2VlcCB0aGlzIG5vdGUnKWA7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkudG9CZSgwKTsKCWV4cGVjdCh5aWVsZCogbGVkZ2VyKS50b0VxdWFsKGFwcGxpZWQpOwoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IHRpdGxlIGZyb20gc3RhcnRlcl9ub3Rlc2ApLnRvRXF1YWwoW3sgdGl0bGU6ICJLZWVwIHRoaXMgbm90ZSIgfV0pOwoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IGNvdW50KCopOjppbnQgYXMgY291bnQgZnJvbSAidXNlciJgKS50b0VxdWFsKFt7IGNvdW50OiAwIH1dKTsKfSk7CgpkZXBsb3ltZW50Lml0KAoJIndlYiBhbmQgYSBzZWNyZXQtZnJlZSB3b3JrZXIgcmVmdXNlIGFuIHVubWlncmF0ZWQgc2NoZW1hLCB0aGVuIHN0YXJ0IGFmdGVyIHRoZSBtaWdyYXRlIGNvbW1hbmQiLAoJW10sCglmdW5jdGlvbiogKHsgbWlncmF0ZSwgc3RhcnRQcm9jZXNzLCBwb3J0OiBhdmFpbGFibGVQb3J0IH0pIHsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQljb25zdCBwb3J0ID0geWllbGQqIGF2YWlsYWJsZVBvcnQ7CgkJZm9yIChjb25zdCBraW5kIG9mIFsid29ya2VyIiwgIndlYiJdIGFzIGNvbnN0KSB7CgkJCWNvbnN0IHBlbmRpbmcgPSB5aWVsZCogc3RhcnRQcm9jZXNzKGtpbmQsIHBvcnQpOwoJCQljb25zdCBwcmVtYXR1cmUgPSBwZW5kaW5nLnJlYWR5LnBpcGUoCgkJCQlFZmZlY3QuY2F0Y2goKCkgPT4gRWZmZWN0Lm5ldmVyKSwKCQkJCUVmZmVjdC5hbmRUaGVuKEVmZmVjdC5mYWlsKG5ldyBFcnJvcihgJHtraW5kfSBzdGFydGVkIGJlZm9yZSBtaWdyYXRpb25zIHdlcmUgYXBwbGllZGApKSksCgkJCSk7CgkJCWV4cGVjdCh5aWVsZCogRWZmZWN0LnJhY2VGaXJzdChwZW5kaW5nLmNoaWxkLmV4aXRDb2RlLCBwcmVtYXR1cmUpKS5ub3QudG9CZSgwKTsKCQkJZXhwZWN0KFsuLi5wZW5kaW5nLmxvZ3MsIC4uLnBlbmRpbmcuZXJyb3JzXS5qb2luKCJcbiIpKS50b0NvbnRhaW4oIkRhdGFiYXNlIG1pZ3JhdGlvbnMgYXJlIG5vdCBjdXJyZW50Iik7CgkJCWV4cGVjdChbLi4ucGVuZGluZy5sb2dzLCAuLi5wZW5kaW5nLmVycm9yc10uam9pbigiXG4iKSkubm90LnRvQ29udGFpbigiRGF0YWJhc2Ugc2NoZW1hIG1pc21hdGNoIik7CgkJCWV4cGVjdChwZW5kaW5nLmxvZ3MuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnN0YXJ0c1dpdGgoIkVGRkVDVF9MT0cgV29ya2VyIikpKS50b0VxdWFsKFtdKTsKCQl9CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IHRvX3JlZ2NsYXNzKCdzdGFydGVyX21pZ3JhdGlvbnMnKSBhcyBsZWRnZXJgKS50b0VxdWFsKFt7IGxlZGdlcjogbnVsbCB9XSk7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGV4cGVjdChmZXRjaChgaHR0cDovLzEyNy4wLjAuMToke3BvcnR9L2hlYWx0aGApKS5yZWplY3RzLnRvVGhyb3coKSk7CgkJZXhwZWN0KHlpZWxkKiBtaWdyYXRlKCkpLnRvQmUoMCk7CgkJY29uc3Qgd29ya2VyID0geWllbGQqIHN0YXJ0UHJvY2Vzcygid29ya2VyIik7CgkJY29uc3Qgd2ViID0geWllbGQqIHN0YXJ0UHJvY2Vzcygid2ViIiwgcG9ydCk7CgkJZXhwZWN0KHlpZWxkKiB3b3JrZXIucmVhZHkpLnRvQmUoIndvcmtlciIpOwoJCWNvbnN0IGFkZHJlc3MgPSB5aWVsZCogd2ViLnJlYWR5OwoJCWV4cGVjdCgoeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGZldGNoKGAke2FkZHJlc3N9L2hlYWx0aGApKSkuc3RhdHVzKS50b0JlKDIwMCk7CgkJZXhwZWN0KHlpZWxkKiBhdXRoUG9zdChhZGRyZXNzLCAic2lnbi11cC9lbWFpbCIsIGNyZWRlbnRpYWxzKCJkZXBsb3kiKSkpLnRvQ29udGFpbigic2Vzc2lvbl90b2tlbj0iKTsKCQlleHBlY3QoWy4uLndlYi5sb2dzLCAuLi53ZWIuZXJyb3JzXS5qb2luKCJcbiIpKS5ub3QudG9Db250YWluKCJEYXRhYmFzZSBzY2hlbWEgbWlzbWF0Y2giKTsKCQlleHBlY3Qod29ya2VyLmxvZ3MuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnN0YXJ0c1dpdGgoIkVGRkVDVF9MT0cgV29ya2VyIikpKS50b0VxdWFsKFsKCQkJIkVGRkVDVF9MT0cgV29ya2VyIG1pZ3JhdGlvbnMgYXBwbGllZCIsCgkJCSJFRkZFQ1RfTE9HIFdvcmtlciByZWFkeSB0byB0YWtlIGpvYnMiLAoJCV0pOwoJCWV4cGVjdCh5aWVsZCogd29ya2VyLmNoaWxkLmlzUnVubmluZykudG9CZSh0cnVlKTsKCQlleHBlY3QoeWllbGQqIHdlYi5jaGlsZC5pc1J1bm5pbmcpLnRvQmUodHJ1ZSk7Cgl9LAopOwoKZGVwbG95bWVudC5pdCgiYSBmYWlsZWQgbWlncmF0ZSBjb21tYW5kIGV4aXRzIG5vbnplcm8gd2l0aG91dCByZWNvcmRpbmcgYW4gYXBwbGllZCBtaWdyYXRpb24iLCBbXSwgZnVuY3Rpb24qICh7IG1pZ3JhdGUgfSkgewoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7Cgl5aWVsZCogc3FsYGNyZWF0ZSB0YWJsZSBzdGFydGVyX25vdGVzICh0aXRsZSB0ZXh0KWA7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkubm90LnRvQmUoMCk7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgdG9fcmVnY2xhc3MoJ3N0YXJ0ZXJfbWlncmF0aW9ucycpIGFzIGxlZGdlcmApLnRvRXF1YWwoW3sgbGVkZ2VyOiBudWxsIH1dKTsKfSk7Cg==","path":"src/server/deployReadiness.spec.ts"},{"content":"aW1wb3J0IHByb2Nlc3MgZnJvbSAibm9kZTpwcm9jZXNzIjsKaW1wb3J0IHsgTm9kZVJ1bnRpbWUsIE5vZGVTZXJ2aWNlcyB9IGZyb20gIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IENoaWxkUHJvY2VzcywgQ2hpbGRQcm9jZXNzU3Bhd25lciB9IGZyb20gImVmZmVjdC9wcm9jZXNzIjsKCmNvbnN0IHByb2dyYW0gPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7Cgljb25zdCBzcGF3bmVyID0geWllbGQqIENoaWxkUHJvY2Vzc1NwYXduZXIuQ2hpbGRQcm9jZXNzU3Bhd25lcjsKCWNvbnN0IG9wdGlvbnMgPSB7IHN0ZGVycjogImluaGVyaXQiLCBzdGRvdXQ6ICJpbmhlcml0IiB9IGFzIGNvbnN0OwoJY29uc3Qgc2VydmVyID0gQ2hpbGRQcm9jZXNzLm1ha2UocHJvY2Vzcy5leGVjUGF0aCwgWyItLXdhdGNoIiwgInNyYy9zZXJ2ZXIvc2VydmVyLnRzIl0sIG9wdGlvbnMpOwoJY29uc3Qgdml0ZSA9IENoaWxkUHJvY2Vzcy5tYWtlKCJwbnBtIiwgWyJleGVjIiwgInZpdGUiXSwgb3B0aW9ucyk7Cgljb25zdCB3b3JrZXIgPSBDaGlsZFByb2Nlc3MubWFrZShwcm9jZXNzLmV4ZWNQYXRoLCBbIi0td2F0Y2giLCAic3JjL3NlcnZlci93b3JrZXIudHMiXSwgb3B0aW9ucyk7Cglwcm9jZXNzLmV4aXRDb2RlID0geWllbGQqIEVmZmVjdC5yYWNlQWxsKFtzcGF3bmVyLmV4aXRDb2RlKHNlcnZlciksIHNwYXduZXIuZXhpdENvZGUod29ya2VyKSwgc3Bhd25lci5leGl0Q29kZSh2aXRlKV0pOwp9KTsKCk5vZGVSdW50aW1lLnJ1bk1haW4ocHJvZ3JhbS5waXBlKEVmZmVjdC5wcm92aWRlKE5vZGVTZXJ2aWNlcy5sYXllcikpKTsK","path":"src/server/dev.ts"},{"content":"aW1wb3J0IHsgYmV0dGVyQXV0aCB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIE9wdGlvbiwgUmVkYWN0ZWQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBIdHRwUm91dGVyLCBIdHRwU2VydmVyUmVxdWVzdCwgSHR0cFNlcnZlclJlc3BvbnNlIH0gZnJvbSAiZWZmZWN0L2h0dHAiOwppbXBvcnQgdHlwZSB7IFBvb2wgfSBmcm9tICJwZyI7CmltcG9ydCB7IGJldHRlckF1dGhTZXNzaW9ucyB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9hZGFwdGVycy9iZXR0ZXItYXV0aC1zZXNzaW9ucy50cyI7CmltcG9ydCB7IHRydXN0ZWRQcm94eVBlZXIsIHRydXN0ZWRQcm94eVJhbmdlcyB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9sb2NhbC50cyI7CmltcG9ydCB7IGF1dGhPcHRpb25zIH0gZnJvbSAiI3NlcnZlci9hdXRoT3B0aW9ucy50cyI7CgpleHBvcnQgY29uc3QgbWFrZUF1dGggPSBFZmZlY3QuZm4oIlN0YXJ0ZXIubWFrZUF1dGgiKShmdW5jdGlvbiogKGNvbmZpZzogeyByZWFkb25seSBkYXRhYmFzZTogUG9vbDsgcmVhZG9ubHkgc2VjcmV0PzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPiB9KSB7Cgljb25zdCBzZWNyZXQgPSBjb25maWcuc2VjcmV0ID8/ICh5aWVsZCogQ29uZmlnLlJlZGFjdGVkKCJCRVRURVJfQVVUSF9TRUNSRVQiKSk7Cgljb25zdCBwdWJsaWNVcmwgPSB5aWVsZCogQ29uZmlnLlVSTCgiUFVCTElDX1VSTCIpLnBpcGUoQ29uZmlnLm9wdGlvbik7Cgljb25zdCBvcmlnaW4gPSBPcHRpb24ubWFwKHB1YmxpY1VybCwgKHVybCkgPT4gdXJsLm9yaWdpbik7Cgljb25zdCB0cnVzdGVkUHJveHkgPSBPcHRpb24uZ2V0T3JVbmRlZmluZWQoeWllbGQqIENvbmZpZy5TdHJpbmcoIlRSVVNURURfUFJPWFkiKS5waXBlKENvbmZpZy5vcHRpb24pKTsKCWNvbnN0IGNsaWVudElwSGVhZGVyID0geWllbGQqIENvbmZpZy5TdHJpbmcoIkFVVEhfQ0xJRU5UX0lQX0hFQURFUiIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KCJ4LWZvcndhcmRlZC1mb3IiKSk7Cgljb25zdCByYXRlTGltaXRFbmFibGVkID0geWllbGQqIENvbmZpZy5Cb29sZWFuKCJBVVRIX1JBVEVfTElNSVRfRU5BQkxFRCIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KHRydWUpKTsKCWNvbnN0IGlzVHJ1c3RlZFByb3h5ID0gdHJ1c3RlZFByb3h5UGVlcih0cnVzdGVkUHJveHkpOwoJY29uc3QgdHJ1c3RlZFByb3hpZXMgPSB0cnVzdGVkUHJveHlSYW5nZXModHJ1c3RlZFByb3h5KTsKCWNvbnN0IGF1dGggPSBiZXR0ZXJBdXRoKHsKCQlhZHZhbmNlZDogewoJCQlkYXRhYmFzZTogeyB2YWxpZGF0ZVNjaGVtYTogdHJ1ZSB9LAoJCQlpcEFkZHJlc3M6IHsKCQkJCWlwQWRkcmVzc0hlYWRlcnM6IHRydXN0ZWRQcm94aWVzLmxlbmd0aCA9PT0gMCA/IFtdIDogW2NsaWVudElwSGVhZGVyXSwKCQkJCXRydXN0ZWRQcm94aWVzLAoJCQl9LAoJCQl1c2VTZWN1cmVDb29raWVzOiBPcHRpb24uaXNTb21lKHB1YmxpY1VybCkgJiYgcHVibGljVXJsLnZhbHVlLnByb3RvY29sID09PSAiaHR0cHM6IiwKCQl9LAoJCSJiYXNlVVJMIjogT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+ICh7IGFsbG93ZWRIb3N0czogWyIxMjcuMC4wLjE6KiJdLCBwcm90b2NvbDogImh0dHAiIGFzIGNvbnN0IH0pKSwKCQkuLi5hdXRoT3B0aW9ucyhjb25maWcuZGF0YWJhc2UpLAoJCXJhdGVMaW1pdDogeyBlbmFibGVkOiByYXRlTGltaXRFbmFibGVkIH0sCgkJc2VjcmV0OiBSZWRhY3RlZC52YWx1ZShzZWNyZXQpLAoJCXNlc3Npb246IHsgY29va2llQ2FjaGU6IHsgZW5hYmxlZDogZmFsc2UgfSB9LAoJCXRydXN0ZWRPcmlnaW5zOiBbT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+ICJodHRwOi8vMTI3LjAuMC4xOioiKV0sCgl9KTsKCWNvbnN0IHJvdXRlcyA9IEh0dHBSb3V0ZXIudXNlKChyb3V0ZXIpID0+CgkJcm91dGVyLmFkZCgiKiIsICIvYXBpL2F1dGgvKiIsIChyZXF1ZXN0KSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCB3ZWIgPSB5aWVsZCogSHR0cFNlcnZlclJlcXVlc3QudG9XZWIocmVxdWVzdCk7CgkJCQlpZiAoIU9wdGlvbi5leGlzdHMocmVxdWVzdC5yZW1vdGVBZGRyZXNzLCBpc1RydXN0ZWRQcm94eSkpIHsKCQkJCQl3ZWIuaGVhZGVycy5kZWxldGUoY2xpZW50SXBIZWFkZXIpOwoJCQkJfQoJCQkJcmV0dXJuIEh0dHBTZXJ2ZXJSZXNwb25zZS5mcm9tV2ViKHlpZWxkKiBFZmZlY3QudHJ5UHJvbWlzZSgoKSA9PiBhdXRoLmhhbmRsZXIod2ViKSkpOwoJCQl9KS5waXBlKEVmZmVjdC5jYXRjaCgoKSA9PiBFZmZlY3Quc3VjY2VlZChIdHRwU2VydmVyUmVzcG9uc2UudGV4dCgiQXV0aGVudGljYXRpb24gaXMgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUiLCB7IHN0YXR1czogNTAzIH0pKSkpLAoJCSksCgkpOwoJcmV0dXJuIHsKCQlhdXRoLAoJCXJvdXRlcywKCQlzZXNzaW9uczogewoJCQlvcmlnaW46ICh7IGhlYWRlcnMgfTogeyByZWFkb25seSBoZWFkZXJzOiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB9KSA9PgoJCQkJaGVhZGVycy5vcmlnaW4gPT09IHVuZGVmaW5lZCB8fCBoZWFkZXJzLm9yaWdpbiA9PT0gT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+IGBodHRwOi8vJHtoZWFkZXJzLmhvc3R9YCksCgkJCXByb3ZpZGVyOiBiZXR0ZXJBdXRoU2Vzc2lvbnMoKGhlYWRlcnMpID0+IGF1dGguYXBpLmdldFNlc3Npb24oeyBoZWFkZXJzIH0pKSwKCQl9LAoJfTsKfSk7CgpleHBvcnQgdHlwZSBTdGFydGVyQXV0aCA9IEVmZmVjdC5TdWNjZXNzPFJldHVyblR5cGU8dHlwZW9mIG1ha2VBdXRoPj5bImF1dGgiXTsK","path":"src/server/makeAuth.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTW9kZWwgfSBmcm9tICJlZmZlY3Qvc2NoZW1hIjsKaW1wb3J0IHsgbWFrZVJlcG9zaXRvcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1zcWwvcmVwb3NpdG9yeS50cyI7CmltcG9ydCB7IE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwoKZXhwb3J0IGNsYXNzIFN0b3JlZE5vdGUgZXh0ZW5kcyBNb2RlbC5DbGFzczxTdG9yZWROb3RlPigiU3RvcmVkTm90ZSIpKHsKCWlkOiBNb2RlbC5GaWVsZCh7IGpzb246IFNjaGVtYS5OdW1iZXIsIHNlbGVjdDogU2NoZW1hLk51bWJlciwgdXBkYXRlOiBTY2hlbWEuTnVtYmVyIH0pLAoJb3duZXJJZDogU2NoZW1hLk51bGxPcihTY2hlbWEuU3RyaW5nKSwKCXRpdGxlOiBOb3RlLmZpZWxkcy50aXRsZSwKCXZlcnNpb246IE1vZGVsLkZpZWxkKHsganNvbjogU2NoZW1hLk51bWJlciwgc2VsZWN0OiBTY2hlbWEuTnVtYmVyLCB1cGRhdGU6IFNjaGVtYS5OdW1iZXIgfSksCgl3b3JkQ291bnQ6IE5vdGUuZmllbGRzLndvcmRDb3VudCwKfSkge30KCmV4cG9ydCBjb25zdCBtYWtlTm90ZXNSZXBvc2l0b3J5ID0gbWFrZVJlcG9zaXRvcnkoU3RvcmVkTm90ZSwgewoJaWRDb2x1bW46ICJpZCIsCglzcGFuUHJlZml4OiAiTm90ZXMiLAoJdGFibGVOYW1lOiAic3RhcnRlcl9ub3RlcyIsCgl2ZXJzaW9uQ29sdW1uOiAidmVyc2lvbiIsCn0pOwo=","path":"src/server/makeNotesRepository.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBFZmZlY3QgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBtaWdyYXRlRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL21pZ3JhdGVEYXRhYmFzZS50cyI7CgpOb2RlUnVudGltZS5ydW5NYWluKEVmZmVjdC5zY29wZWQobWlncmF0ZURhdGFiYXNlKCkpKTsK","path":"src/server/migrate.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGFwcERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9hcHBIb3N0LnRzIjsKaW1wb3J0IHsgYXV0aERhdGFiYXNlIH0gZnJvbSAiI3NlcnZlci9hdXRoRGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRpb25zIH0gZnJvbSAiI3NlcnZlci9taWdyYXRpb25zLnRzIjsKaW1wb3J0IHsgbm90ZVByb2R1Y2VyIH0gZnJvbSAiI3NlcnZlci9ub3RlUHJvZHVjZXIudHMiOwoKZXhwb3J0IGNvbnN0IG1pZ3JhdGVEYXRhYmFzZSA9IEVmZmVjdC5mbigiU3RhcnRlci5taWdyYXRlRGF0YWJhc2UiKShmdW5jdGlvbiogKGRhdGFiYXNlVXJsPzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPikgewoJY29uc3QgdXJsID0gZGF0YWJhc2VVcmwgPz8gKHlpZWxkKiBDb25maWcuUmVkYWN0ZWQoIkRBVEFCQVNFX1VSTCIpKTsKCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKHVybCk7Cgl5aWVsZCogTGF5ZXIuYnVpbGQoYXBwRGF0YWJhc2UoeyBjb25maWc6IHsgZGF0YWJhc2VVcmw6IHVybCB9LCBtaWdyYXRpb25zOiBtaWdyYXRpb25zKHBvb2wpIH0pKTsKCXlpZWxkKiBMYXllci5idWlsZChub3RlUHJvZHVjZXIoUmVkYWN0ZWQudmFsdWUodXJsKSwgdHJ1ZSkpOwoJeWllbGQqIEVmZmVjdC5sb2dJbmZvKCJNaWdyYXRpb25zIGFwcGxpZWQiKTsKfSk7Cg==","path":"src/server/migrateDatabase.ts"},{"content":"aW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gImJldHRlci1hdXRoL2RiL21pZ3JhdGlvbiI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IE1pZ3JhdG9yLCBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHR5cGUgeyBQb29sIH0gZnJvbSAicGciOwppbXBvcnQgeyBhdXRoT3B0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvYXV0aE9wdGlvbnMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIG1pZ3JhdGlvbnMoZGF0YWJhc2U6IFBvb2wpIHsKCXJldHVybiB7CgkJbG9hZGVyOiBNaWdyYXRvci5mcm9tUmVjb3JkKHsKCQkJIjAwMV9jcmVhdGVfbm90ZXMiOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJCXlpZWxkKiBzcWxgY3JlYXRlIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgKGlkIHNlcmlhbCBwcmltYXJ5IGtleSwgdGl0bGUgdGV4dCBub3QgbnVsbClgOwoJCQl9KSwKCQkJIjAwMl9jcmVhdGVfYXV0aCI6IEVmZmVjdC50cnlQcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCWNvbnN0IG1pZ3JhdGlvbiA9IGF3YWl0IGdldE1pZ3JhdGlvbnMoYXV0aE9wdGlvbnMoZGF0YWJhc2UpKTsKCQkJCWF3YWl0IG1pZ3JhdGlvbi5ydW5NaWdyYXRpb25zKCk7CgkJCX0pLAoJCQkiMDAzX25vdGVfb3duZXIiOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgc3RhcnRlcl9ub3RlcyBhZGQgY29sdW1uICJvd25lcklkIiB0ZXh0YDsKCQkJfSksCgkJCSIwMDRfbm90ZV93b3JkX2NvdW50IjogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJCQl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgYWRkIGNvbHVtbiAid29yZENvdW50IiBpbnRlZ2VyYDsKCQkJCXlpZWxkKiBzcWxgdXBkYXRlIHN0YXJ0ZXJfbm90ZXMgc2V0ICJ3b3JkQ291bnQiID0gY2FyZGluYWxpdHkocmVnZXhwX3NwbGl0X3RvX2FycmF5KHRyaW0odGl0bGUpLCAnW1s6c3BhY2U6XV0rJykpYDsKCQkJfSksCgkJCSIwMDVfbm90ZV92ZXJzaW9uIjogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJCQl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgYWRkIGNvbHVtbiB2ZXJzaW9uIGludGVnZXIgbm90IG51bGwgZGVmYXVsdCAwYDsKCQkJfSksCgkJfSksCgkJdGFibGU6ICJzdGFydGVyX21pZ3JhdGlvbnMiLAoJfTsKfQo=","path":"src/server/migrations.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJvcGVucywgdXBkYXRlcyBhbmQgZGVsZXRlcyBub3RlcyBvdmVyIEhUVFAsIHJlamVjdGluZyBzdGFsZSB3cml0ZXMgd2l0aG91dCBjaGFuZ2luZyB0aGUgcGVyc2lzdGVkIHJvdyIsIFtzaWduZWRJbigpXSwgZnVuY3Rpb24qICh7IGFjdG9yIH0pIHsKCWNvbnN0IHsgbm90ZXM6IGNsaWVudCB9ID0gYWN0b3IoKTsKCWNvbnN0IG9yaWdpbmFsID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIk9yaWdpbmFsIiB9KTsKCWV4cGVjdChvcmlnaW5hbC52ZXJzaW9uKS50b0JlKDApOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQuZ2V0KHsgaWQ6IG9yaWdpbmFsLmlkIH0pKS50b0VxdWFsKG9yaWdpbmFsKTsKCWNvbnN0IHNhdmVkID0geWllbGQqIGNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICIgIFNhdmVkIG5vdGUgICIgfSk7CglleHBlY3Qoc2F2ZWQpLnRvRXF1YWwoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJTYXZlZCBub3RlIiwgdmVyc2lvbjogMSB9KTsKCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJY29uc3QgYmVmb3JlID0geWllbGQqIHNxbGBzZWxlY3QgKiBmcm9tIHN0YXJ0ZXJfbm90ZXMgd2hlcmUgaWQgPSAke29yaWdpbmFsLmlkfWA7Cglmb3IgKGNvbnN0IGNhbGwgb2YgWwoJCWNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJTdGFsZSBkcmFmdCIgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQuZGVsZXRlKHsgaWQ6IG9yaWdpbmFsLmlkLCB2ZXJzaW9uOiBvcmlnaW5hbC52ZXJzaW9uIH0pLAoJXSkgewoJCWNvbnN0IHJlamVjdGVkID0geWllbGQqIGNhbGwucGlwZShFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZWplY3RlZCkgJiYgcmVqZWN0ZWQuZmFpbHVyZS5fdGFnKS50b0JlKCJDb25mbGljdCIpOwoJCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCAqIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7b3JpZ2luYWwuaWR9YCkudG9FcXVhbChiZWZvcmUpOwoJfQoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IGNvdW50KCopOjppbnQgYXMgY291bnQgZnJvbSBwZ2Jvc3Muam9iIHdoZXJlIG5hbWUgPSAnY291bnQtbm90ZS13b3JkcydgKS50b0VxdWFsKFt7IGNvdW50OiAyIH1dKTsKCWNvbnN0IGludmFsaWQgPSB5aWVsZCogY2xpZW50LnVwZGF0ZSh7IC4uLnNhdmVkLCB0aXRsZTogIiAgICIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKGludmFsaWQpICYmIGludmFsaWQuZmFpbHVyZSkudG9NYXRjaE9iamVjdCh7IF90YWc6ICJJbnZhbGlkIiwgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJFbnRlciBhIHRpdGxlIiB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LmdldCh7IGlkOiBzYXZlZC5pZCB9KSkudG9FcXVhbChzYXZlZCk7Cgl5aWVsZCogY2xpZW50LmRlbGV0ZSh7IGlkOiBzYXZlZC5pZCwgdmVyc2lvbjogc2F2ZWQudmVyc2lvbiB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbXSk7Cglmb3IgKGNvbnN0IGNhbGwgb2YgWwoJCWNsaWVudC5nZXQoeyBpZDogc2F2ZWQuaWQgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQudXBkYXRlKHsgLi4uc2F2ZWQsIHRpdGxlOiAiTWlzc2luZyIgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQuZGVsZXRlKHsgaWQ6IHNhdmVkLmlkLCB2ZXJzaW9uOiBzYXZlZC52ZXJzaW9uIH0pLAoJXSkgewoJCWNvbnN0IG1pc3NpbmcgPSB5aWVsZCogY2FsbC5waXBlKEVmZmVjdC5yZXN1bHQpOwoJCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKG1pc3NpbmcpICYmIG1pc3NpbmcuZmFpbHVyZS5fdGFnKS50b0JlKCJOb3RGb3VuZCIpOwoJfQp9KTsKCmFwcC5pdCgKCSJyZXR1cm5zIE5vdEZvdW5kIHRvIGFub3RoZXIgYWNjb3VudCBmb3IgZ2V0LCB1cGRhdGUgYW5kIGRlbGV0ZSwgYW5kIHJlcXVpcmVzIGEgc2Vzc2lvbiIsCglbc2lnbmVkSW4oKSwgc2lnbmVkSW4oImJvYiIpXSwKCWZ1bmN0aW9uKiAoeyBhY3RvciwgYW5vbnltb3VzIH0pIHsKCQljb25zdCB7IG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBvcmlnaW5hbCA9IHlpZWxkKiBhbGljZS5jcmVhdGUoeyB0aXRsZTogIkFsaWNlJ3Mgbm90ZSIgfSk7CgkJY29uc3QgYm9iID0gYWN0b3IoImJvYiIpLm5vdGVzOwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQlmb3IgKGNvbnN0IFtjbGllbnQsIHRhZ10gb2YgWwoJCQlbYm9iLCAiTm90Rm91bmQiXSwKCQkJW3NpZ25lZE91dCwgIlVuYXV0aG9yaXplZCJdLAoJCV0gYXMgY29uc3QpIHsKCQkJZm9yIChjb25zdCBjYWxsIG9mIFsKCQkJCWNsaWVudC5nZXQoeyBpZDogb3JpZ2luYWwuaWQgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQkJCWNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJBbm90aGVyIGFjY291bnQiIH0pLnBpcGUoRWZmZWN0LmFzVm9pZCksCgkJCQljbGllbnQuZGVsZXRlKHsgaWQ6IG9yaWdpbmFsLmlkLCB2ZXJzaW9uOiBvcmlnaW5hbC52ZXJzaW9uIH0pLAoJCQldKSB7CgkJCQljb25zdCByZWplY3RlZCA9IHlpZWxkKiBjYWxsLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZWplY3RlZCkgJiYgcmVqZWN0ZWQuZmFpbHVyZS5fdGFnKS50b0JlKHRhZyk7CgkJCX0KCQl9CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5nZXQoeyBpZDogb3JpZ2luYWwuaWQgfSkpLnRvRXF1YWwob3JpZ2luYWwpOwoJfSwKKTsK","path":"src/server/noteEditingHost.spec.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZGVmaW5lUXVldWUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1wZy1ib3NzL2RlZmluaXRpb24udHMiOwppbXBvcnQgeyBtYWtlUGdCb3NzIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcy9zZXJ2aWNlLnRzIjsKCmV4cG9ydCBjb25zdCBDb3VudFdvcmRzID0gZGVmaW5lUXVldWUoewoJbmFtZTogImNvdW50LW5vdGUtd29yZHMiLAoJc2NoZW1hOiBTY2hlbWEuU3RydWN0KHsgbm90ZUlkOiBTY2hlbWEuTnVtYmVyIH0pLAoJd29ya2VyOiB7IHBvbGxpbmdJbnRlcnZhbFNlY29uZHM6IDEgfSwKfSk7CgpleHBvcnQgY29uc3QgTm90ZUpvYnMgPSBtYWtlUGdCb3NzKCJzdGFydGVyL05vdGVKb2JzIik7Cg==","path":"src/server/noteJobs.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0LCB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGFwcCwgc2lnbmVkSW4gfSBmcm9tICIjdGVzdC1zdXBwb3J0L2FwcGxpY2F0aW9uLnRzIjsKCmFwcC5pdCgKCSJjb3VudHMgdGhlIGVkaXRlZCB0aXRsZSB0aHJvdWdoIHRoZSB2ZXJzaW9uZWQgcmVwb3NpdG9yeSBhbmQgY29tcGxldGVzIGpvYnMgZm9yIGRlbGV0ZWQgbm90ZXMiLAoJW3NpZ25lZEluKCldLAoJZnVuY3Rpb24qICh7IGFjdG9yLCBzdGFydFdvcmtlciB9KSB7CgkJY29uc3QgeyBub3RlczogY2xpZW50IH0gPSBhY3RvcigpOwoJCWNvbnN0IG9yaWdpbmFsID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIk9sZCB0aXRsZSIgfSk7CgkJY29uc3QgZWRpdGVkID0geWllbGQqIGNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJUaHJlZSBuZXcgd29yZHMiIH0pOwoJCWV4cGVjdChlZGl0ZWQud29yZENvdW50KS50b0JlTnVsbCgpOwoJCWNvbnN0IGRlbGV0ZWQgPSB5aWVsZCogY2xpZW50LmNyZWF0ZSh7IHRpdGxlOiAiRGVsZXRlZCBiZWZvcmUgY291bnRpbmciIH0pOwoJCXlpZWxkKiBjbGllbnQuZGVsZXRlKHsgaWQ6IGRlbGV0ZWQuaWQsIHZlcnNpb246IGRlbGV0ZWQudmVyc2lvbiB9KTsKCQl5aWVsZCogc3RhcnRXb3JrZXIoKTsKCQljb25zdCBjb3VudGVkID0geyAuLi5lZGl0ZWQsIHZlcnNpb246IDIsIHdvcmRDb3VudDogMyB9OwoJCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQl2aS53YWl0Rm9yKAoJCQkJYXN5bmMgKCkgPT4gewoJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShjbGllbnQuZ2V0KHsgaWQ6IGVkaXRlZC5pZCB9KSkpLnRvRXF1YWwoY291bnRlZCk7CgkJCQl9LAoJCQkJeyB0aW1lb3V0OiA1MDAwIH0sCgkJCSksCgkJKTsKCQljb25zdCBzdGFsZSA9IHlpZWxkKiBjbGllbnQudXBkYXRlKHsgLi4uZWRpdGVkLCB0aXRsZTogIkJlZm9yZSBjb3VudGluZyIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShzdGFsZSkgJiYgc3RhbGUuZmFpbHVyZS5fdGFnKS50b0JlKCJDb25mbGljdCIpOwoJCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbY291bnRlZF0pOwoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQl2aS53YWl0Rm9yKAoJCQkJYXN5bmMgKCkgPT4gewoJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShzcWxgc2VsZWN0IHN0YXRlIGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkpLnRvRXF1YWwoWwoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCV0pOwoJCQkJfSwKCQkJCXsgdGltZW91dDogNTAwMCB9LAoJCQkpLAoJCSk7Cgl9LAoJMTVfMDAwLAopOwo=","path":"src/server/noteJobsEditing.spec.ts"},{"content":"aW1wb3J0IHsgQ291bnRXb3JkcywgTm90ZUpvYnMgfSBmcm9tICIjc2VydmVyL25vdGVKb2JzLnRzIjsKCmV4cG9ydCBmdW5jdGlvbiBub3RlUHJvZHVjZXIoY29ubmVjdGlvblN0cmluZzogc3RyaW5nLCBtaWdyYXRlID0gZmFsc2UpIHsKCXJldHVybiBOb3RlSm9icy5sYXllcih7IGNvbm5lY3Rpb25TdHJpbmcsIGpvYnM6IFtDb3VudFdvcmRzXSwgbWlncmF0ZSB9KTsKfQo=","path":"src/server/noteProducer.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGludmFsaWRhdGlvbktleXMgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgaW52YWxpZGF0ZU9uQ29tbWl0LCB0cmFuc2FjdCB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXNxbC90cmFuc2FjdC50cyI7CmltcG9ydCB7IGFwcERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9hcHBIb3N0LnRzIjsKaW1wb3J0IHsgb3RscFRyYWNpbmcgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL290bHBUcmFjaW5nLnRzIjsKaW1wb3J0IHsgbm90ZXMgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBhdXRoRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL2F1dGhEYXRhYmFzZS50cyI7CmltcG9ydCB7IGRhdGFiYXNlT3B0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvZGF0YWJhc2VPcHRpb25zLnRzIjsKaW1wb3J0IHsgbWFrZU5vdGVzUmVwb3NpdG9yeSB9IGZyb20gIiNzZXJ2ZXIvbWFrZU5vdGVzUmVwb3NpdG9yeS50cyI7CmltcG9ydCB7IENvdW50V29yZHMsIE5vdGVKb2JzIH0gZnJvbSAiI3NlcnZlci9ub3RlSm9icy50cyI7Cgpjb25zdCBjb3VudFdvcmRzID0gQ291bnRXb3Jkcy5oYW5kbGUoKHsgbm90ZUlkIH0pID0+CglFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJY29uc3QgcmVwb3NpdG9yeSA9IHlpZWxkKiBtYWtlTm90ZXNSZXBvc2l0b3J5OwoJCWNvbnN0IHJvd3MgPSB5aWVsZCogcmVwb3NpdG9yeS5maW5kTWFueSh7IHdoZXJlOiB7IGlkOiBub3RlSWQsIHdvcmRDb3VudDogbnVsbCB9IH0pOwoJCWZvciAoY29uc3Qgcm93IG9mIHJvd3MpIHsKCQkJeWllbGQqIHJlcG9zaXRvcnkudXBkYXRlKHsgLi4ucm93LCB3b3JkQ291bnQ6IHJvdy50aXRsZS5zcGxpdCgvXHMrL3UpLmxlbmd0aCB9KTsKCQl9CgkJeWllbGQqIGludmFsaWRhdGVPbkNvbW1pdChpbnZhbGlkYXRpb25LZXlzKFtub3Rlcy5pdGVtKG5vdGVJZCldKSk7Cgl9KS5waXBlKHRyYW5zYWN0KHsgb25TcWxFcnJvcjogKGVycm9yKSA9PiBlcnJvciB9KSwgRWZmZWN0LndpdGhTcGFuKCJDb3VudFdvcmRzIiwgeyBraW5kOiAiY29uc3VtZXIiIH0pKSwKKTsKCmV4cG9ydCBmdW5jdGlvbiBub3RlV29ya2VyKGNvbmZpZz86IHsgcmVhZG9ubHkgZGF0YWJhc2VVcmw/OiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+IH0pIHsKCXJldHVybiBMYXllci51bndyYXAoCgkJRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQljb25zdCBkYXRhYmFzZVVybCA9IGNvbmZpZz8uZGF0YWJhc2VVcmwgPz8gKHlpZWxkKiBDb25maWcuUmVkYWN0ZWQoIkRBVEFCQVNFX1VSTCIpKTsKCQkJY29uc3QgcG9vbCA9IHlpZWxkKiBhdXRoRGF0YWJhc2UoZGF0YWJhc2VVcmwpOwoJCQlyZXR1cm4gTm90ZUpvYnMubGF5ZXIoeyBjb25uZWN0aW9uU3RyaW5nOiBSZWRhY3RlZC52YWx1ZShkYXRhYmFzZVVybCksIGpvYnM6IFtjb3VudFdvcmRzXSwgbWlncmF0ZTogZmFsc2UgfSkucGlwZSgKCQkJCUxheWVyLnRhcCgoKSA9PiBFZmZlY3QubG9nSW5mbygiV29ya2VyIHJlYWR5IHRvIHRha2Ugam9icyIpKSwKCQkJCUxheWVyLnByb3ZpZGVNZXJnZShhcHBEYXRhYmFzZShkYXRhYmFzZU9wdGlvbnMocG9vbCwgZGF0YWJhc2VVcmwpKS5waXBlKExheWVyLnRhcCgoKSA9PiBFZmZlY3QubG9nSW5mbygiV29ya2VyIG1pZ3JhdGlvbnMgYXBwbGllZCIpKSkpLAoJCQkpOwoJCX0pLAoJKS5waXBlKExheWVyLnByb3ZpZGUob3RscFRyYWNpbmcpKTsKfQo=","path":"src/server/noteWorker.ts"},{"content":"aW1wb3J0IHsgYXNzZXJ0TW9kZWxDb2x1bW5zIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvYXNzZXJ0TW9kZWxDb2x1bW5zLnRzIjsKaW1wb3J0IHsgYmVmb3JlVmVyc2lvbmVkTm90ZXMsIG1pZ3JhdGlvbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbWlncmF0aW9uLnRzIjsKaW1wb3J0IHsgU3RvcmVkTm90ZSB9IGZyb20gIi4vbWFrZU5vdGVzUmVwb3NpdG9yeS50cyI7CgptaWdyYXRpb24uaXQoCgkidXBncmFkZXMgdGhlIHByZS12ZXJzaW9uIG5vdGVzIHRhYmxlIHRvIGV2ZXJ5IGN1cnJlbnQgbW9kZWwgY29sdW1uIGFuZCBQb3N0Z3JlU1FMIHR5cGUiLAoJW2JlZm9yZVZlcnNpb25lZE5vdGVzKCldLAoJZnVuY3Rpb24qICh7IHVwZ3JhZGUgfSkgewoJCWNvbnN0IGNvbHVtbnMgPSB5aWVsZCogdXBncmFkZSgpOwoJCXlpZWxkKiBhc3NlcnRNb2RlbENvbHVtbnMoY29sdW1ucywgU3RvcmVkTm90ZSwgeyBpZDogImludGVnZXIiLCBvd25lcklkOiAidGV4dCIsIHRpdGxlOiAidGV4dCIsIHZlcnNpb246ICJpbnRlZ2VyIiwgd29yZENvdW50OiAiaW50ZWdlciIgfSk7Cgl9LAopOwo=","path":"src/server/notesMigration.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCByZWplY3RlZE5vdGVDb21taXRzLCByZWplY3RlZE5vdGVKb2JzLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzYXZlcyBhbmQgZWRpdHMgbm90ZXMgd2hlbiBQb3N0Z3JlU1FMIHJlamVjdHMgZW5xdWV1ZWluZyIsIFtzaWduZWRJbigpLCByZWplY3RlZE5vdGVKb2JzKCldLCBmdW5jdGlvbiogKHsgYWN0b3IgfSkgewoJY29uc3QgeyBub3RlcyB9ID0gYWN0b3IoKTsKCWNvbnN0IGNyZWF0ZWQgPSB5aWVsZCogbm90ZXMuY3JlYXRlKHsgdGl0bGU6ICJTdGlsbCBzYXZlZCIgfSk7Cgljb25zdCBlZGl0ZWQgPSB5aWVsZCogbm90ZXMudXBkYXRlKHsgLi4uY3JlYXRlZCwgdGl0bGU6ICJTdGlsbCBlZGl0ZWQiIH0pOwoJZXhwZWN0KHlpZWxkKiBub3Rlcy5nZXQoeyBpZDogY3JlYXRlZC5pZCB9KSkudG9FcXVhbChlZGl0ZWQpOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgdGl0bGUsIHZlcnNpb24sICJ3b3JkQ291bnQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7Y3JlYXRlZC5pZH1gKS50b0VxdWFsKFsKCQl7IHRpdGxlOiAiU3RpbGwgZWRpdGVkIiwgdmVyc2lvbjogMSwgd29yZENvdW50OiBudWxsIH0sCgldKTsKCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCBjb3VudCgqKTo6aW50IGFzIGNvdW50IGZyb20gcGdib3NzLmpvYmApLnRvRXF1YWwoW3sgY291bnQ6IDAgfV0pOwp9KTsKCmFwcC5pdCgiZG9lcyBub3QgZW5xdWV1ZSBhIG5vdGUgd2hlbiBpdHMgd3JpdGUgdHJhbnNhY3Rpb24gZmFpbHMgYXQgY29tbWl0IiwgW3NpZ25lZEluKCksIHJlamVjdGVkTm90ZUNvbW1pdHMoKV0sIGZ1bmN0aW9uKiAoeyBhY3RvciB9KSB7Cgljb25zdCByZXN1bHQgPSB5aWVsZCogYWN0b3IoKS5ub3Rlcy5jcmVhdGUoeyB0aXRsZTogIk5vdCBjb21taXR0ZWQiIH0pLnBpcGUoRWZmZWN0LnJlc3VsdCk7CglleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZXN1bHQpICYmIHJlc3VsdC5mYWlsdXJlLl90YWcpLnRvQmUoIlNlcnZpY2VVbmF2YWlsYWJsZSIpOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFt7IGNvdW50OiAwIH1dKTsKCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCBjb3VudCgqKTo6aW50IGFzIGNvdW50IGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkudG9FcXVhbChbeyBjb3VudDogMCB9XSk7Cn0pOwo=","path":"src/server/queueFailure.spec.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IHN0YXJ0ZXJIb3N0IH0gZnJvbSAiLi9zdGFydGVySG9zdC50cyI7CgpOb2RlUnVudGltZS5ydW5NYWluKExheWVyLmxhdW5jaChzdGFydGVySG9zdCgpKSk7Cg==","path":"src/server/server.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgVW5hdXRob3JpemVkIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9lcnJvcnMvdGF4b25vbXkudHMiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CgphcHAuaXQoCgkicmVhZHMgZWFjaCBzaWduZWQtaW4gdXNlcidzIHByb2ZpbGUgdGhyb3VnaCBTZXNzaW9uVXNlciBvdmVyIFBvc3RncmVTUUwgYW5kIEhUVFAiLAoJW3NpZ25lZEluKCksIHNpZ25lZEluKCJib2IiKV0sCglmdW5jdGlvbiogKHsgYWN0b3IsIGFub255bW91cywgYXV0aGVudGljYXRlIH0pIHsKCQljb25zdCB7IGNvb2tpZTogYWxpY2VDb29raWUsIG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBib2IgPSBhY3RvcigiYm9iIikubm90ZXM7CgkJY29uc3QgcHJvZmlsZXMgPSB5aWVsZCogRWZmZWN0LmFsbCgKCQkJQXJyYXkuZnJvbSh7IGxlbmd0aDogMTIgfSwgKF8sIGluZGV4KSA9PiAoaW5kZXggJSAyID09PSAwID8gYWxpY2UgOiBib2IpLndob2FtaSgpKSwKCQkJewoJCQkJY29uY3VycmVuY3k6ICJ1bmJvdW5kZWQiLAoJCQl9LAoJCSk7CgkJY29uc3QgYWxpY2VQcm9maWxlID0gcHJvZmlsZXNbMF07CgkJY29uc3QgYm9iUHJvZmlsZSA9IHByb2ZpbGVzWzFdOwoJCWV4cGVjdChhbGljZVByb2ZpbGUpLnRvRXF1YWwoeyBlbWFpbDogImFsaWNlQHN0YXJ0ZXIudGVzdCIsIGlkOiBleHBlY3QuYW55KFN0cmluZyksIG5hbWU6ICJhbGljZSIgfSk7CgkJZXhwZWN0KGJvYlByb2ZpbGUpLnRvRXF1YWwoeyBlbWFpbDogImJvYkBzdGFydGVyLnRlc3QiLCBpZDogZXhwZWN0LmFueShTdHJpbmcpLCBuYW1lOiAiYm9iIiB9KTsKCQlleHBlY3QoYWxpY2VQcm9maWxlPy5pZCkubm90LnRvQmUoYm9iUHJvZmlsZT8uaWQpOwoJCXByb2ZpbGVzLmZvckVhY2goKHByb2ZpbGUsIGluZGV4KSA9PiB7CgkJCWV4cGVjdChwcm9maWxlKS50b0VxdWFsKGluZGV4ICUgMiA9PT0gMCA/IGFsaWNlUHJvZmlsZSA6IGJvYlByb2ZpbGUpOwoJCX0pOwoJCWNvbnN0IG5vdGUgPSB5aWVsZCogYWxpY2UuY3JlYXRlKHsgdGl0bGU6ICJPd25lZCBieSB0aGUgY3VycmVudCB1c2VyIiB9KTsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgIm93bmVySWQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7bm90ZS5pZH1gKS50b0VxdWFsKFt7IG93bmVySWQ6IGFsaWNlUHJvZmlsZT8uaWQgfV0pOwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQljb25zdCBkZW5pZWQgPSB5aWVsZCogc2lnbmVkT3V0Lndob2FtaSgpLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUoZGVuaWVkKSAmJiBkZW5pZWQuZmFpbHVyZSkudG9CZUluc3RhbmNlT2YoVW5hdXRob3JpemVkKTsKCQl5aWVsZCogYXV0aGVudGljYXRlKCJhbGljZSIsICJzaWduLW91dCIsIGFsaWNlQ29va2llKTsKCQljb25zdCByZXZva2VkID0geWllbGQqIGFsaWNlLndob2FtaSgpLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUocmV2b2tlZCkgJiYgcmV2b2tlZC5mYWlsdXJlKS50b0JlSW5zdGFuY2VPZihVbmF1dGhvcml6ZWQpOwoJfSwKKTsK","path":"src/server/sessionUser.spec.ts"},{"content":"aW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAibm9kZTpmcyI7CmltcG9ydCB7IENvbmZpZywgRWZmZWN0LCBTY2hlbWEgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBhc3NlcnRMb2NhbERhdGFiYXNlLCBsb2NhbFBvc3RncmVzLCBsb2NhbFNlcnZlciB9IGZyb20gIkBzaGl2YWVkZXYvbG9jYWwtcG9zdGdyZXMvbG9jYWxQb3N0Z3Jlcy50cyI7Cgpjb25zdCB7IG5hbWUgfSA9IFNjaGVtYS5kZWNvZGVVbmtub3duU3luYyhTY2hlbWEuZnJvbUpzb25TdHJpbmcoU2NoZW1hLlN0cnVjdCh7IG5hbWU6IFNjaGVtYS5TdHJpbmcgfSkpKSgKCXJlYWRGaWxlU3luYyhuZXcgVVJMKCIuLi8uLi9wYWNrYWdlLmpzb24iLCBpbXBvcnQubWV0YS51cmwpLCAidXRmOCIpLAopOwpjb25zdCBkYXRhYmFzZSA9IChuYW1lLnNwbGl0KCIvIikuYXQoLTEpID8/IG5hbWUpCgkucmVwbGFjZUFsbCgvWy4tXS9ndSwgIl8iKQoJLnJlcGxhY2UoL15bXmEtel0vdSwgImFwcF8kJiIpCgkuc2xpY2UoMCwgNTgpOwpjb25zdCBkZXZlbG9wbWVudCA9IEVmZmVjdC5ydW5TeW5jKENvbmZpZy5TdHJpbmcoIkRBVEFCQVNFX1VSTCIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KGAke2xvY2FsU2VydmVyfS8ke2RhdGFiYXNlfV9kZXZgKSkpOwpjb25zdCB0ZXN0cyA9IEVmZmVjdC5ydW5TeW5jKENvbmZpZy5TdHJpbmcoIlRFU1RfREFUQUJBU0VfVVJMIikucGlwZShDb25maWcud2l0aERlZmF1bHQoYCR7bG9jYWxTZXJ2ZXJ9LyR7ZGF0YWJhc2V9X3Rlc3RgKSkpOwphc3NlcnRMb2NhbERhdGFiYXNlKGRldmVsb3BtZW50LCBbYCR7ZGF0YWJhc2V9X2RldmBdKTsKYXNzZXJ0TG9jYWxEYXRhYmFzZSh0ZXN0cywgW2Ake2RhdGFiYXNlfV90ZXN0YF0pOwpsb2NhbFBvc3RncmVzKAoJRWZmZWN0LnJ1blN5bmMoCgkJQ29uZmlnLmFsbCh7CgkJCSJET0NLRVJfQ09OVEVYVCI6IENvbmZpZy5TdHJpbmcoIkRPQ0tFUl9DT05URVhUIikucGlwZShDb25maWcud2l0aERlZmF1bHQoIiIpKSwKCQkJIkRPQ0tFUl9IT1NUIjogQ29uZmlnLlN0cmluZygiRE9DS0VSX0hPU1QiKS5waXBlKENvbmZpZy53aXRoRGVmYXVsdCgiIikpLAoJCX0pLAoJKSwKKS5wcmVwYXJlRGF0YWJhc2VzKFtkZXZlbG9wbWVudCwgdGVzdHNdKTsK","path":"src/server/setup-database.ts"},{"content":"aW1wb3J0IHsgc29jaWFsQXBwIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zb2NpYWxBcHAudHMiOwoKT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7ICJJU19SRUFDVF9BQ1RfRU5WSVJPTk1FTlQiOiB0cnVlIH0pOwoKc29jaWFsQXBwLml0KAoJImEgc29jaWFsIHNpZ24taW4gcmV0dXJucyBmcm9tIHRoZSBmYWtlIHByb3ZpZGVyIHdpdGggYSBQb3N0Z3JlU1FMIGNvb2tpZSBzZXNzaW9uIiwKCVtdLAoJZnVuY3Rpb24qICh7IHNpZ25JbldpdGhHaXRIdWIsIHNpZ25lZEluUGFnZUlzIH0pIHsKCQl5aWVsZCogc2lnbkluV2l0aEdpdEh1YigpOwoJCXlpZWxkKiBzaWduZWRJblBhZ2VJcygiYWxpY2VAc29jaWFsLnRlc3QiKTsKCX0sCik7Cg==","path":"src/server/socialSessions.dom.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzZXJ2ZXMgdGhlIGRlcGxveW1lbnQgaGVhbHRoIGNoZWNrIGFmdGVyIGRhdGFiYXNlIG1pZ3JhdGlvbnMiLCBbXSwgZnVuY3Rpb24qICh7IHJ1bm5pbmdIb3N0IH0pIHsKCWNvbnN0IHJlc3BvbnNlID0geWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGZldGNoKGAke3J1bm5pbmdIb3N0KCkuYmFzZVVybH0vaGVhbHRoYCkpOwoJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiByZXNwb25zZS50ZXh0KCkpKS50b0JlKCIiKTsKfSk7CgphcHAuaXQoCgkiYXV0aGVudGljYXRlcyBhbmQgc2VydmVzIHByb3RlY3RlZCBSUEMgYmVoaW5kIGFuIEhUVFBTIGZvcndhcmRpbmcgcHJveHkgdXNpbmcgZW52aXJvbm1lbnQgc2V0dGluZ3MiLAoJW2JlaGluZFByb3h5KCldLAoJZnVuY3Rpb24qICh7IGF1dGhlbnRpY2F0ZSwgbm90ZXMsIGZvcmVpZ25SZXF1ZXN0IH0pIHsKCQlmb3IgKGNvbnN0IHBhdGggb2YgWyJzaWduLXVwL2VtYWlsIiwgInNpZ24taW4vZW1haWwiXSkgewoJCQljb25zdCBjb29raWUgPSB5aWVsZCogYXV0aGVudGljYXRlKCJkZXBsb3llZCIsIHBhdGgpOwoJCQljb25zdCBjbGllbnQgPSB5aWVsZCogbm90ZXMoY29va2llKTsKCQkJZXhwZWN0KHlpZWxkKiBjbGllbnQubGlzdCgpKS50b0VxdWFsKFtdKTsKCQkJeWllbGQqIGZvcmVpZ25SZXF1ZXN0KGNvb2tpZSk7CgkJfQoJfSwKKTsK","path":"src/server/starterDeploy.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBsZWdhY3lOb3RlLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJjcmVhdGVzIGFuZCBxdWVyaWVzIGEgcGVyc2lzdGVkIG5vdGUgb3ZlciBhdXRoZW50aWNhdGVkIEhUVFAvTkRKU09OIiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IgfSkgewoJY29uc3QgeyBub3RlczogY2xpZW50IH0gPSBhY3RvcigpOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQubGlzdCgpKS50b0VxdWFsKFtdKTsKCWNvbnN0IGNyZWF0ZWQgPSB5aWVsZCogY2xpZW50LmNyZWF0ZSh7IHRpdGxlOiAiICBGaXJzdCBub3RlICAiIH0pOwoJZXhwZWN0KGNyZWF0ZWQudGl0bGUpLnRvQmUoIkZpcnN0IG5vdGUiKTsKCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbY3JlYXRlZF0pOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgaWQsIHRpdGxlLCAid29yZENvdW50IiwgdmVyc2lvbiBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFtjcmVhdGVkXSk7Cgljb25zdCBpbnZhbGlkID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIiAgICIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKGludmFsaWQpICYmIGludmFsaWQuZmFpbHVyZS5fdGFnKS50b0JlKCJJbnZhbGlkIik7CglleHBlY3QoeWllbGQqIGNsaWVudC5saXN0KCkpLnRvRXF1YWwoW2NyZWF0ZWRdKTsKfSk7CgphcHAuaXQoCgkicmVydW5zIHRoZSBzdGFydGVyIG1pZ3JhdGlvbiBwYXRoIHdpdGhvdXQgbG9zaW5nIGF1dGggYWNjb3VudHMgb3Igbm90ZXMiLAoJW3NpZ25lZEluKCldLAoJZnVuY3Rpb24qICh7IGFjdG9yLCByZXJ1bk1pZ3JhdGlvbnMsIGF1dGhlbnRpY2F0ZSwgbm90ZXMgfSkgewoJCWNvbnN0IHsgbm90ZXM6IGNsaWVudCB9ID0gYWN0b3IoKTsKCQljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIktlZXAgdGhpcyBub3RlIiB9KTsKCQl5aWVsZCogcmVydW5NaWdyYXRpb25zKCk7CgkJY29uc3QgcmV0dXJuaW5nID0geWllbGQqIGF1dGhlbnRpY2F0ZSgiYWxpY2UiLCAic2lnbi1pbi9lbWFpbCIpOwoJCWNvbnN0IHJlb3BlbmVkID0geWllbGQqIG5vdGVzKHJldHVybmluZyk7CgkJZXhwZWN0KHlpZWxkKiByZW9wZW5lZC5saXN0KCkpLnRvRXF1YWwoW25vdGVdKTsKCX0sCik7CgphcHAuaXQoImFkZHMgd29yZCBjb3VudHMgdG8gbm90ZXMgc2F2ZWQgYmVmb3JlIHRoZSBqb2IgbWlncmF0aW9uIiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IsIHJlcnVuTWlncmF0aW9ucyB9KSB7Cgljb25zdCB7IG5vdGVzOiBjbGllbnQgfSA9IGFjdG9yKCk7Cgljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIktlZXAgdGhpcyBvbGQgbm90ZSIgfSk7Cgljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgc3RhcnRlcl9ub3RlcyBkcm9wIGNvbHVtbiAid29yZENvdW50ImA7Cgl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgZHJvcCBjb2x1bW4gdmVyc2lvbmA7Cgl5aWVsZCogc3FsYGRlbGV0ZSBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyB3aGVyZSBtaWdyYXRpb25faWQgPj0gNGA7Cgl5aWVsZCogcmVydW5NaWdyYXRpb25zKCk7CglleHBlY3QoeWllbGQqIGNsaWVudC5saXN0KCkpLnRvRXF1YWwoW3sgLi4ubm90ZSwgd29yZENvdW50OiA0IH1dKTsKfSk7CgphcHAuaXQoInVwZ3JhZGVzIGV4aXN0aW5nIG5vdGVzIHdpdGggdmVyc2lvbiB6ZXJvIGFuZCBhY2NlcHRzIHRoZWlyIGZpcnN0IHZlcnNpb25lZCBlZGl0IiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IsIHJlcnVuTWlncmF0aW9ucyB9KSB7Cgljb25zdCB7IG5vdGVzOiBjbGllbnQgfSA9IGFjdG9yKCk7Cgljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIkV4aXN0aW5nIG5vdGUiIH0pOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7Cgl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgZHJvcCBjb2x1bW4gdmVyc2lvbmA7Cgl5aWVsZCogc3FsYGRlbGV0ZSBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyB3aGVyZSBtaWdyYXRpb25faWQgPSA1YDsKCXlpZWxkKiByZXJ1bk1pZ3JhdGlvbnMoKTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LmdldCh7IGlkOiBub3RlLmlkIH0pKS50b0VxdWFsKHsgLi4ubm90ZSwgdmVyc2lvbjogMCB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LnVwZGF0ZSh7IC4uLm5vdGUsIHRpdGxlOiAiRWRpdGVkIG9sZCBub3RlIiB9KSkudG9FcXVhbCh7IC4uLm5vdGUsIHRpdGxlOiAiRWRpdGVkIG9sZCBub3RlIiwgdmVyc2lvbjogMSB9KTsKfSk7CgphcHAuaXQoCgkicHJvdGVjdHMgcXVlcmllcyBhbmQgY29tbWFuZHMsIGlzb2xhdGVzIHVzZXJzLCBhbmQgcmV2b2tlcyB0aGUgc2lnbmVkLW91dCBzZXNzaW9uIGJlZm9yZSBzaWduaW5nIGluIGFnYWluIiwKCVtzaWduZWRJbigpLCBzaWduZWRJbigiYm9iIiksIGxlZ2FjeU5vdGUoIkxlZ2FjeSBub3RlIildLAoJZnVuY3Rpb24qICh7IGFjdG9yLCBhdXRoZW50aWNhdGUsIG5vdGVzLCBhbm9ueW1vdXMgfSkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQlmb3IgKGNvbnN0IGNhbGwgb2YgW3NpZ25lZE91dC5saXN0KCkucGlwZShFZmZlY3QuYXNWb2lkKSwgc2lnbmVkT3V0LmNyZWF0ZSh7IHRpdGxlOiAiQW5vbnltb3VzIG5vdGUiIH0pLnBpcGUoRWZmZWN0LmFzVm9pZCldKSB7CgkJCWNvbnN0IHJlc3VsdCA9IHlpZWxkKiBFZmZlY3QucmVzdWx0KGNhbGwpOwoJCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZXN1bHQpICYmIHJlc3VsdC5mYWlsdXJlLl90YWcpLnRvQmUoIlVuYXV0aG9yaXplZCIpOwoJCX0KCQljb25zdCB7IGNvb2tpZTogYWxpY2VDb29raWUsIG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBub3RlID0geWllbGQqIGFsaWNlLmNyZWF0ZSh7IHRpdGxlOiAiQWxpY2UncyBub3RlIiB9KTsKCQljb25zdCBib2IgPSBhY3RvcigiYm9iIikubm90ZXM7CgkJZXhwZWN0KHlpZWxkKiBib2IubGlzdCgpKS50b0VxdWFsKFtdKTsKCQlleHBlY3QoeWllbGQqIGFsaWNlLmxpc3QoKSkudG9FcXVhbChbbm90ZV0pOwoJCWNvbnN0IHVzZXIgPSB5aWVsZCogYWxpY2Uud2hvYW1pKCk7CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0ICJvd25lcklkIiBmcm9tIHN0YXJ0ZXJfbm90ZXMgd2hlcmUgdGl0bGUgPSAke25vdGUudGl0bGV9YCkudG9FcXVhbChbeyBvd25lcklkOiB1c2VyLmlkIH1dKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgIm93bmVySWQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSB0aXRsZSA9ICdMZWdhY3kgbm90ZSdgKS50b0VxdWFsKFt7IG93bmVySWQ6IG51bGwgfV0pOwoJCXlpZWxkKiBhdXRoZW50aWNhdGUoImFsaWNlIiwgInNpZ24tb3V0IiwgYWxpY2VDb29raWUpOwoJCWNvbnN0IHJldm9rZWQgPSB5aWVsZCogYWxpY2UuY3JlYXRlKHsgdGl0bGU6ICJSZXZva2VkIG5vdGUiIH0pLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUocmV2b2tlZCkgJiYgcmV2b2tlZC5mYWlsdXJlLl90YWcpLnRvQmUoIlVuYXV0aG9yaXplZCIpOwoJCWNvbnN0IHJldHVybmluZ0Nvb2tpZSA9IHlpZWxkKiBhdXRoZW50aWNhdGUoImFsaWNlIiwgInNpZ24taW4vZW1haWwiKTsKCQljb25zdCByZXR1cm5pbmcgPSB5aWVsZCogbm90ZXMocmV0dXJuaW5nQ29va2llKTsKCQlleHBlY3QoeWllbGQqIHJldHVybmluZy5saXN0KCkpLnRvRXF1YWwoW25vdGVdKTsKCX0sCik7Cg==","path":"src/server/starterHost.test.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IEh0dHBTdGF0aWNTZXJ2ZXIgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCB7IEFwcENoYW5nZXMsIGFwcEhvc3QgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2FwcEhvc3QudHMiOwppbXBvcnQgeyBTZXNzaW9uVXNlciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjL2lkZW50aXR5LnRzIjsKaW1wb3J0IHsgYXV0aGVudGljYXRlZFVzZXJMYXllciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9zZXNzaW9uLnRzIjsKaW1wb3J0IHsgTm90ZXMsIFN1YnNjcmliZSB9IGZyb20gIiNub3Rlcy50cyI7CmltcG9ydCB7IGF1dGhEYXRhYmFzZSB9IGZyb20gIiNzZXJ2ZXIvYXV0aERhdGFiYXNlLnRzIjsKaW1wb3J0IHsgZGF0YWJhc2VPcHRpb25zIH0gZnJvbSAiI3NlcnZlci9kYXRhYmFzZU9wdGlvbnMudHMiOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIiNzZXJ2ZXIvbWFrZUF1dGgudHMiOwppbXBvcnQgeyBOb3Rlc1NlcnZpY2UgfSBmcm9tICIjc2VydmVyL05vdGVzU2VydmljZS50cyI7CmltcG9ydCB7IG5vdGVQcm9kdWNlciB9IGZyb20gIiNzZXJ2ZXIvbm90ZVByb2R1Y2VyLnRzIjsKCmNvbnN0IGhhbmRsZXJzID0gTm90ZXMudG9MYXllcigKCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQljb25zdCBzZXJ2aWNlID0geWllbGQqIE5vdGVzU2VydmljZTsKCQljb25zdCBjaGFuZ2VzID0geWllbGQqIEFwcENoYW5nZXM7CgkJcmV0dXJuIE5vdGVzLm9mKHsKCQkJIm5vdGVzLmNyZWF0ZSI6IChpbnB1dCkgPT4gRWZmZWN0LmZsYXRNYXAoU2Vzc2lvblVzZXIsICh7IGlkIH0pID0+IHNlcnZpY2UuY3JlYXRlKGlucHV0LCBpZCkpLAoJCQkibm90ZXMuZGVsZXRlIjogKGlucHV0KSA9PiBFZmZlY3QuZmxhdE1hcChTZXNzaW9uVXNlciwgKHsgaWQgfSkgPT4gc2VydmljZS5kZWxldGUoaW5wdXQsIGlkKSksCgkJCSJub3Rlcy5nZXQiOiAoaW5wdXQpID0+IEVmZmVjdC5mbGF0TWFwKFNlc3Npb25Vc2VyLCAoeyBpZCB9KSA9PiBzZXJ2aWNlLmdldChpbnB1dC5pZCwgaWQpKSwKCQkJIm5vdGVzLmxpc3QiOiAoKSA9PiBFZmZlY3QuZmxhdE1hcChTZXNzaW9uVXNlciwgKHsgaWQgfSkgPT4gc2VydmljZS5saXN0KGlkKSksCgkJCSJub3Rlcy5zdWJzY3JpYmUiOiAoKSA9PiBjaGFuZ2VzLnN0cmVhbShTdWJzY3JpYmUucmVhZHModW5kZWZpbmVkKSksCgkJCSJub3Rlcy51cGRhdGUiOiAoaW5wdXQpID0+IEVmZmVjdC5mbGF0TWFwKFNlc3Npb25Vc2VyLCAoeyBpZCB9KSA9PiBzZXJ2aWNlLnVwZGF0ZShpbnB1dCwgaWQpKSwKCQkJIm5vdGVzLndob2FtaSI6ICgpID0+IEVmZmVjdC5tYXAoU2Vzc2lvblVzZXIsICh1c2VyKSA9PiB1c2VyKSwKCQl9KTsKCX0pLAopOwoKZXhwb3J0IGZ1bmN0aW9uIHN0YXJ0ZXJIb3N0KGNvbmZpZz86IHsKCXJlYWRvbmx5IGRhdGFiYXNlVXJsPzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPjsKCXJlYWRvbmx5IHBvcnQ/OiBudW1iZXI7CglyZWFkb25seSBzZWNyZXQ/OiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+Owp9KSB7CglyZXR1cm4gTGF5ZXIudW53cmFwKAoJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJY29uc3QgZGF0YWJhc2VVcmwgPSBjb25maWc/LmRhdGFiYXNlVXJsID8/ICh5aWVsZCogQ29uZmlnLlJlZGFjdGVkKCJEQVRBQkFTRV9VUkwiKSk7CgkJCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlVXJsKTsKCQkJY29uc3QgZGF0YWJhc2UgPSBkYXRhYmFzZU9wdGlvbnMocG9vbCwgZGF0YWJhc2VVcmwpOwoJCQlyZXR1cm4gYXBwSG9zdCh7CgkJCQkuLi5kYXRhYmFzZSwKCQkJCWFwcGxpY2F0aW9uOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQkJY29uc3QgeyByb3V0ZXMsIHNlc3Npb25zIH0gPSB5aWVsZCogbWFrZUF1dGgoeyBkYXRhYmFzZTogcG9vbCwgLi4uKGNvbmZpZz8uc2VjcmV0ID09PSB1bmRlZmluZWQgPyB7fSA6IHsgc2VjcmV0OiBjb25maWcuc2VjcmV0IH0pIH0pOwoJCQkJCWNvbnN0IHByb2R1Y2VyID0gbm90ZVByb2R1Y2VyKFJlZGFjdGVkLnZhbHVlKGRhdGFiYXNlVXJsKSk7CgkJCQkJcmV0dXJuIHsKCQkJCQkJY29uZmlnOiB7IC4uLmRhdGFiYXNlLmNvbmZpZywgLi4uKGNvbmZpZz8ucG9ydCA9PT0gdW5kZWZpbmVkID8ge30gOiB7IHBvcnQ6IGNvbmZpZy5wb3J0IH0pIH0sCgkJCQkJCWdyb3VwOiBOb3RlcywKCQkJCQkJaGFuZGxlcnM6IExheWVyLm1lcmdlQWxsKGhhbmRsZXJzLCBhdXRoZW50aWNhdGVkVXNlckxheWVyKHNlc3Npb25zKSwgcm91dGVzLCBIdHRwU3RhdGljU2VydmVyLmxheWVyKHsgcm9vdDogImRpc3QiLCBzcGE6IHRydWUgfSkpLAoJCQkJCQlzZXJ2aWNlczogTm90ZXNTZXJ2aWNlLmxheWVyLnBpcGUoTGF5ZXIucHJvdmlkZU1lcmdlKHByb2R1Y2VyKSksCgkJCQkJCXNlc3Npb25zLAoJCQkJCX07CgkJCQl9KSwKCQkJfSk7CgkJfSksCgkpOwp9Cg==","path":"src/server/starterHost.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IG5vdGVXb3JrZXIgfSBmcm9tICIuL25vdGVXb3JrZXIudHMiOwoKTm9kZVJ1bnRpbWUucnVuTWFpbihMYXllci5sYXVuY2gobm90ZVdvcmtlcigpKSk7Cg==","path":"src/server/worker.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCwgdmkgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CmltcG9ydCB7IG90bHBSZWNlaXZlciB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvb3RscFJlY2VpdmVyLnRzIjsKCmFwcC5pdCgKCSJleHBvcnRzIHRoZSB3b3JrZXIncyBFZmZlY3Qgam9iIHNwYW5zIHdpdGggdGhlIGNvbmZpZ3VyZWQgc2VydmljZSBuYW1lIiwKCVtzaWduZWRJbigpXSwKCWZ1bmN0aW9uKiAoeyBhY3Rvciwgc3RhcnRXb3JrZXIgfSkgewoJCWNvbnN0IHJlY2VpdmVyID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gb3RscFJlY2VpdmVyKCkpLAoJCQkoY29sbGVjdG9yKSA9PiBFZmZlY3QucHJvbWlzZSgoKSA9PiBjb2xsZWN0b3IuY2xvc2UoKSksCgkJKTsKCQljb25zdCBub3RlID0geWllbGQqIGFjdG9yKCkubm90ZXMuY3JlYXRlKHsgdGl0bGU6ICJDb3VudCB0aGVzZSB3b3JkcyIgfSk7CgkJeWllbGQqIHN0YXJ0V29ya2VyKHsKCQkJIk9URUxfRVhQT1JURVJfT1RMUF9IRUFERVJTIjogIngtY29sbGVjdG9yLXRva2VuPXdvcmtlciUyMGNvbGxlY3RvciUyMHNlY3JldCIsCgkJCSJPVEVMX0VYUE9SVEVSX09UTFBfUFJPVE9DT0wiOiAiaHR0cC9qc29uIiwKCQkJIk9URUxfRVhQT1JURVJfT1RMUF9UUkFDRVNfRU5EUE9JTlQiOiBgJHtyZWNlaXZlci51cmx9L3YxL3RyYWNlc2AsCgkJCSJPVEVMX1JFU09VUkNFX0FUVFJJQlVURVMiOiAiZGVwbG95bWVudC5lbnZpcm9ubWVudD13b3JrZXItdGVzdCIsCgkJCSJPVEVMX1NFUlZJQ0VfTkFNRSI6ICJ3b3JrZXItdGVzdCIsCgkJfSk7CgkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCXZpLndhaXRGb3IoCgkJCQlhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKHNxbGBzZWxlY3QgIndvcmRDb3VudCIgZnJvbSBzdGFydGVyX25vdGVzIHdoZXJlIGlkID0gJHtub3RlLmlkfWApKS50b0VxdWFsKFt7IHdvcmRDb3VudDogMyB9XSk7CgkJCQkJZXhwZWN0KHJlY2VpdmVyLnJlcXVlc3RzLnNvbWUoKHJlcXVlc3QpID0+IHJlcXVlc3QuYm9keS5pbmNsdWRlcygnIm5hbWUiOiJDb3VudFdvcmRzIicpKSkudG9CZSh0cnVlKTsKCQkJCX0sCgkJCQl7IHRpbWVvdXQ6IDgwMDAgfSwKCQkJKSwKCQkpOwoJCWNvbnN0IGJvZHkgPSByZWNlaXZlci5yZXF1ZXN0cy5tYXAoKHJlcXVlc3QpID0+IHJlcXVlc3QuYm9keSkuam9pbigiXG4iKTsKCQlleHBlY3QocmVjZWl2ZXIucmVxdWVzdHMpLnRvQ29udGFpbkVxdWFsKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgcGF0aDogIi92MS90cmFjZXMiLCB0b2tlbjogIndvcmtlciBjb2xsZWN0b3Igc2VjcmV0IiB9KSk7CgkJZXhwZWN0KGJvZHkpLnRvQ29udGFpbignImtleSI6InNlcnZpY2UubmFtZSIsInZhbHVlIjp7InN0cmluZ1ZhbHVlIjoid29ya2VyLXRlc3QifScpOwoJCWV4cGVjdChib2R5KS50b0NvbnRhaW4oJyJrZXkiOiJkZXBsb3ltZW50LmVudmlyb25tZW50IiwidmFsdWUiOnsic3RyaW5nVmFsdWUiOiJ3b3JrZXItdGVzdCJ9Jyk7CgkJZXhwZWN0KGJvZHkpLm5vdC50b0NvbnRhaW4oIndvcmtlciBjb2xsZWN0b3Igc2VjcmV0Iik7CgkJZXhwZWN0KGJvZHkpLm5vdC50b0NvbnRhaW4oInN0YXJ0ZXItdGVzdC1zZWNyZXQiKTsKCX0sCgkxNV8wMDAsCik7Cgpmb3IgKGNvbnN0IHN0YXR1cyBvZiBbdW5kZWZpbmVkLCA1MDBdKSB7CglhcHAuaXQoCgkJYGNvbXBsZXRlcyBhIHdvcmtlciBqb2IgYW5kIHNodXRzIGRvd24gd2hlbiB0aGUgY29sbGVjdG9yICR7c3RhdHVzID09PSB1bmRlZmluZWQgPyAiaXMgZG93biIgOiAicmV0dXJucyBIVFRQIDUwMCJ9YCwKCQlbc2lnbmVkSW4oKV0sCgkJZnVuY3Rpb24qICh7IGFjdG9yLCBzdGFydFdvcmtlciB9KSB7CgkJCWNvbnN0IHJlY2VpdmVyID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJCUVmZmVjdC5wcm9taXNlKCgpID0+IG90bHBSZWNlaXZlcihzdGF0dXMpKSwKCQkJCShjb2xsZWN0b3IpID0+IChzdGF0dXMgPT09IHVuZGVmaW5lZCA/IEVmZmVjdC52b2lkIDogRWZmZWN0LnByb21pc2UoKCkgPT4gY29sbGVjdG9yLmNsb3NlKCkpKSwKCQkJKTsKCQkJaWYgKHN0YXR1cyA9PT0gdW5kZWZpbmVkKSB7CgkJCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVjZWl2ZXIuY2xvc2UoKSk7CgkJCX0KCQkJY29uc3Qgbm90ZSA9IHlpZWxkKiBhY3RvcigpLm5vdGVzLmNyZWF0ZSh7IHRpdGxlOiAiQ29sbGVjdG9yIGhhcyBmYWlsZWQiIH0pOwoJCQl5aWVsZCogc3RhcnRXb3JrZXIoeyAiT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UIjogcmVjZWl2ZXIudXJsIH0pOwoJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCQl2aS53YWl0Rm9yKAoJCQkJCWFzeW5jICgpID0+IHsKCQkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKHNxbGBzZWxlY3QgIndvcmRDb3VudCIgZnJvbSBzdGFydGVyX25vdGVzIHdoZXJlIGlkID0gJHtub3RlLmlkfWApKS50b0VxdWFsKFt7IHdvcmRDb3VudDogMyB9XSk7CgkJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShzcWxgc2VsZWN0IHN0YXRlIGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkpLnRvRXF1YWwoW3sgc3RhdGU6ICJjb21wbGV0ZWQiIH1dKTsKCQkJCQkJaWYgKHN0YXR1cyAhPT0gdW5kZWZpbmVkKSB7CgkJCQkJCQlleHBlY3QocmVjZWl2ZXIucmVxdWVzdHMubGVuZ3RoKS50b0JlR3JlYXRlclRoYW4oMCk7CgkJCQkJCX0KCQkJCQl9LAoJCQkJCXsgdGltZW91dDogODAwMCB9LAoJCQkJKSwKCQkJKTsKCQl9LAoJCTE1XzAwMCwKCSk7Cn0K","path":"src/server/workerTracing.spec.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUsIE5vZGVTZXJ2aWNlcyB9IGZyb20gIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI7CmltcG9ydCB7IEVmZmVjdCwgRmlsZVN5c3RlbSB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IENoaWxkUHJvY2VzcywgQ2hpbGRQcm9jZXNzU3Bhd25lciB9IGZyb20gImVmZmVjdC9wcm9jZXNzIjsKCmNvbnN0IGluc3RhbGxIb29rID0gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJY29uc3QgZnMgPSB5aWVsZCogRmlsZVN5c3RlbS5GaWxlU3lzdGVtOwoJaWYgKCEoeWllbGQqIGZzLmV4aXN0cygiLmdpdCIpKSkgewoJCXJldHVybjsKCX0KCWNvbnN0IHNwYXduZXIgPSB5aWVsZCogQ2hpbGRQcm9jZXNzU3Bhd25lci5DaGlsZFByb2Nlc3NTcGF3bmVyOwoJY29uc3QgY29kZSA9IHlpZWxkKiBzcGF3bmVyLmV4aXRDb2RlKENoaWxkUHJvY2Vzcy5tYWtlKCJwbnBtIiwgWyJleGVjIiwgInF1YWxpdHkiLCAiaG9va3MiLCAiaW5zdGFsbCJdLCB7IHN0ZGVycjogImluaGVyaXQiLCBzdGRvdXQ6ICJpbmhlcml0IiB9KSk7CglpZiAoY29kZSAhPT0gMCkgewoJCXJldHVybiB5aWVsZCogRWZmZWN0LmZhaWwobmV3IEVycm9yKGBJbnN0YWxsaW5nIHRoZSBRdWFsaXR5IGhvb2sgZmFpbGVkIChleGl0ICR7Y29kZX0pLmApKTsKCX0KfSk7CgpOb2RlUnVudGltZS5ydW5NYWluKGluc3RhbGxIb29rLnBpcGUoRWZmZWN0LnByb3ZpZGUoTm9kZVNlcnZpY2VzLmxheWVyKSkpOwo=","path":"src/setup.ts"},{"content":"aW1wb3J0IHsgbWFrZUF1dGggfSBmcm9tICIjY2xpZW50L2F1dGgudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIGFwcEF1dGgob3B0aW9uczogewoJcmVhZG9ubHkgYmFzZVVybDogc3RyaW5nOwoJcmVhZG9ubHkgc2lnbmVkSW4/OiBib29sZWFuOwoJcmVhZG9ubHkgc2Vzc2lvbkZhaWx1cmU/OiBib29sZWFuOwoJcmVhZG9ubHkgc2lnbk91dEZhaWx1cmU/OiBzdHJpbmc7Cn0pIHsKCWxldCBzZXNzaW9uRmFpbHVyZSA9IG9wdGlvbnMuc2Vzc2lvbkZhaWx1cmUgPz8gZmFsc2U7Cgljb25zdCByZXF1ZXN0czogVVJMW10gPSBbXTsKCWNvbnN0IGRhdGUgPSAiMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaIjsKCWNvbnN0IHNlc3Npb24gPSBvcHRpb25zLnNpZ25lZEluCgkJPyB7CgkJCQlzZXNzaW9uOiB7CgkJCQkJY3JlYXRlZEF0OiBkYXRlLAoJCQkJCWV4cGlyZXNBdDogIjIwOTktMDEtMDFUMDA6MDA6MDAuMDAwWiIsCgkJCQkJaWQ6ICJhbGljZS1zZXNzaW9uIiwKCQkJCQl1cGRhdGVkQXQ6IGRhdGUsCgkJCQkJdXNlcklkOiAiYWxpY2UiLAoJCQkJfSwKCQkJCXVzZXI6IHsgY3JlYXRlZEF0OiBkYXRlLCBlbWFpbDogImFsaWNlQHN0YXJ0ZXIudGVzdCIsIGVtYWlsVmVyaWZpZWQ6IHRydWUsIGlkOiAiYWxpY2UiLCBuYW1lOiAiQWxpY2UiLCB1cGRhdGVkQXQ6IGRhdGUgfSwKCQkJfQoJCTogbnVsbDsKCWNvbnN0IGF1dGggPSBtYWtlQXV0aCh7CgkJYmFzZVVybDogb3B0aW9ucy5iYXNlVXJsLAoJCWZldGNoT3B0aW9uczogewoJCQljdXN0b21GZXRjaEltcGw6IChpbnB1dCwgaW5pdCkgPT4gewoJCQkJY29uc3QgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0KGlucHV0LCBpbml0KTsKCQkJCWNvbnN0IHVybCA9IG5ldyBVUkwocmVxdWVzdC51cmwpOwoJCQkJcmVxdWVzdHMucHVzaCh1cmwpOwoJCQkJaWYgKHVybC5wYXRobmFtZSA9PT0gIi9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIpIHsKCQkJCQlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKAoJCQkJCQlSZXNwb25zZS5qc29uKHNlc3Npb25GYWlsdXJlID8geyBjb2RlOiAiVU5BVkFJTEFCTEUiLCBtZXNzYWdlOiAiU2Vzc2lvbiBjaGVjayB1bmF2YWlsYWJsZSIgfSA6IHNlc3Npb24sIHsKCQkJCQkJCXN0YXR1czogc2Vzc2lvbkZhaWx1cmUgPyA1MDAgOiAyMDAsCgkJCQkJCX0pLAoJCQkJCSk7CgkJCQl9CgkJCQlpZiAodXJsLnBhdGhuYW1lID09PSAiL2FwaS9hdXRoL3NpZ24tb3V0IikgewoJCQkJCXJldHVybiBQcm9taXNlLnJlc29sdmUoUmVzcG9uc2UuanNvbih7IGNvZGU6ICJSRUZVU0VEIiwgbWVzc2FnZTogb3B0aW9ucy5zaWduT3V0RmFpbHVyZSB9LCB7IHN0YXR1czogNDAwIH0pKTsKCQkJCX0KCQkJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgYXV0aCByZXF1ZXN0OiAke3VybH1gKSk7CgkJCX0sCgkJCXJldHJ5OiAwLAoJCX0sCgl9KTsKCXJldHVybiB7CgkJYXV0aCwKCQlyZWNvdmVyOiAoKSA9PiB7CgkJCXNlc3Npb25GYWlsdXJlID0gZmFsc2U7CgkJfSwKCQlyZXF1ZXN0cywKCX07Cn0K","path":"src/test-support/appAuth.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnUHJvdmlkZXIsIEVmZmVjdCwgTGF5ZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBzdG9yeUtpdCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9zdG9yeUtpdC50cyI7CmltcG9ydCB7IG1ha2VBdXRoIH0gZnJvbSAiI2NsaWVudC9hdXRoLnRzIjsKaW1wb3J0IHsgbm90ZVdvcmtlciB9IGZyb20gIiNzZXJ2ZXIvbm90ZVdvcmtlci50cyI7CmltcG9ydCB7IGF1dGhSYXRlTGltaXRzIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hdXRoUmF0ZUxpbWl0cy50cyI7CmltcG9ydCB7IHR5cGUgSG9zdE9wdGlvbnMsIHR5cGUgUnVubmluZ0hvc3QsIHN0YXJ0SG9zdCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvaG9zdC50cyI7CmltcG9ydCB7IGxpdmVOb3RlcyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbGl2ZU5vdGVzLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3Bvc3RncmVzLnRzIjsKaW1wb3J0IHsgcmVxdWVzdHMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3JlcXVlc3RzLnRzIjsKCmludGVyZmFjZSBBY3RvciB7CglyZWFkb25seSBjb29raWU6IHN0cmluZzsKCXJlYWRvbmx5IG5vdGVzOiBFZmZlY3QuU3VjY2VzczxSZXR1cm5UeXBlPFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RzPlsibm90ZXMiXT4+Owp9CgppbnRlcmZhY2UgRW5naW5lIHsKCWFjdG9yczogTWFwPHN0cmluZywgQWN0b3I+OwoJaG9zdDogUnVubmluZ0hvc3QgfCB1bmRlZmluZWQ7Cglob3N0T3B0aW9uczogSG9zdE9wdGlvbnM7Cgl0ZWxsOiAobGluZTogc3RyaW5nKSA9PiB2b2lkOwp9CgpleHBvcnQgY29uc3QgYXBwID0gc3RvcnlLaXQoewoJYWZ0ZXI6IHsKCQkqaG9zdGluZyhlbmdpbmUpIHsKCQkJZW5naW5lLmhvc3QgPSB5aWVsZCogc3RhcnRIb3N0KGVuZ2luZS5ob3N0T3B0aW9ucyk7CgkJfSwKCX0sCglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCWNyZWF0ZTogKCk6IEVuZ2luZSA9PiAoeyBhY3RvcnM6IG5ldyBNYXAoKSwgaG9zdDogdW5kZWZpbmVkLCBob3N0T3B0aW9uczoge30sIHRlbGw6ICgpID0+IHVuZGVmaW5lZCB9KSwKCWluc3BlY3Q6IChlbmdpbmUpID0+ICh7IGFjY291bnRzOiBbLi4uZW5naW5lLmFjdG9ycy5rZXlzKCldLCBiYXNlVXJsOiBlbmdpbmUuaG9zdD8uYmFzZVVybCwgZGVwbG95ZWQ6IGVuZ2luZS5ob3N0T3B0aW9ucy5kZXBsb3llZCA/PyBmYWxzZSB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJzdGFydGVyIiwKCXN0YWdlczogWyJob3N0aW5nIiwgImFjY291bnRzIiwgIm5vdGVzIl0sCgl2ZXJiczogKGVuZ2luZSwgc3RvcnkpID0+IHsKCQlmdW5jdGlvbiBob3N0KCkgewoJCQlpZiAoZW5naW5lLmhvc3QgPT09IHVuZGVmaW5lZCkgewoJCQkJdGhyb3cgbmV3IEVycm9yKCJIb3N0IGhhcyBub3Qgc3RhcnRlZCIpOwoJCQl9CgkJCXJldHVybiBlbmdpbmUuaG9zdDsKCQl9CgkJZW5naW5lLnRlbGwgPSBzdG9yeS50ZWxsOwoJCWZ1bmN0aW9uIGh0dHAoKSB7CgkJCXJldHVybiByZXF1ZXN0cyhob3N0KCksIHN0b3J5LnRlbGwpOwoJCX0KCQlyZXR1cm4gewoJCQlhY3RvcjogKG5hbWUgPSAiYWxpY2UiKSA9PiB7CgkJCQljb25zdCBhY3RvciA9IGVuZ2luZS5hY3RvcnMuZ2V0KG5hbWUpOwoJCQkJaWYgKGFjdG9yID09PSB1bmRlZmluZWQpIHsKCQkJCQl0aHJvdyBuZXcgRXJyb3IoYE5vIHNpZ25lZC1pbiBhY2NvdW50ICR7bmFtZX1gKTsKCQkJCX0KCQkJCXJldHVybiBhY3RvcjsKCQkJfSwKCQkJYW5vbnltb3VzOiAoKSA9PiBodHRwKCkubm90ZXMoKSwKCQkJYXV0aENsaWVudDogKGNvb2tpZSA9ICIiKSA9PiB7CgkJCQlzdG9yeS50ZWxsKCJjb25uZWN0IGFuIGF1dGggY2xpZW50IHRvIHRoaXMgc3RvcnkncyBhcHAgaG9zdCIpOwoJCQkJY29uc3QgeyBiYXNlVXJsLCBvcmlnaW4gfSA9IGhvc3QoKTsKCQkJCXJldHVybiBtYWtlQXV0aCh7IGJhc2VVcmwsIGZldGNoT3B0aW9uczogeyBoZWFkZXJzOiB7IGNvb2tpZSwgb3JpZ2luIH0gfSB9KTsKCQkJfSwKCQkJYXV0aGVudGljYXRlOiAobmFtZTogc3RyaW5nLCBwYXRoPzogc3RyaW5nLCBjb29raWU/OiBzdHJpbmcpID0+IGh0dHAoKS5hdXRoZW50aWNhdGUobmFtZSwgcGF0aCwgY29va2llKSwKCQkJYXV0aFJhdGVMaW1pdHM6ICgpID0+IGF1dGhSYXRlTGltaXRzKGhvc3QoKSwgc3RvcnkudGVsbCksCgkJCWZvcmVpZ25SZXF1ZXN0OiAoY29va2llOiBzdHJpbmcpID0+IGh0dHAoKS5mb3JlaWduUmVxdWVzdChjb29raWUpLAoJCQlsaXZlTm90ZXM6IChuYW1lID0gImFsaWNlIikgPT4gewoJCQkJc3RvcnkudGVsbChgJHtuYW1lfSB3YXRjaGVzIHRoZSBsaXZlIG5vdGVzIGxpc3RgKTsKCQkJCWNvbnN0IGFjdG9yID0gZW5naW5lLmFjdG9ycy5nZXQobmFtZSk7CgkJCQlpZiAoYWN0b3IgPT09IHVuZGVmaW5lZCkgewoJCQkJCXRocm93IG5ldyBFcnJvcihgTm8gc2lnbmVkLWluIGFjY291bnQgJHtuYW1lfWApOwoJCQkJfQoJCQkJcmV0dXJuIGxpdmVOb3Rlcyhob3N0KCksIGFjdG9yLmNvb2tpZSk7CgkJCX0sCgkJCW5vdGVzOiAoY29va2llOiBzdHJpbmcpID0+IGh0dHAoKS5ub3Rlcyhjb29raWUpLAoJCQlyZXJ1bk1pZ3JhdGlvbnM6IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnJlcnVuTWlncmF0aW9ucyIpKGZ1bmN0aW9uKiAoKSB7CgkJCQlzdG9yeS50ZWxsKCJydW4gdGhlIGRlcGxveW1lbnQgbWlncmF0aW9ucyBhbmQgb3BlbiBhbm90aGVyIGFwcCBob3N0Iik7CgkJCQllbmdpbmUuaG9zdCA9IHlpZWxkKiBzdGFydEhvc3QoZW5naW5lLmhvc3RPcHRpb25zKTsKCQkJfSksCgkJCXJ1bm5pbmdIb3N0OiBob3N0LAoJCQlzdGFydFdvcmtlcjogRWZmZWN0LmZuKCJTdGFydGVyU3Rvcnkuc3RhcnRXb3JrZXIiKShmdW5jdGlvbiogKGVudj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHsKCQkJCXN0b3J5LnRlbGwoInN0YXJ0IHRoZSB3b3JkLWNvdW50IHdvcmtlciIpOwoJCQkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJCQljb25zdCB3b3JrZXIgPSBub3RlV29ya2VyKHsgZGF0YWJhc2VVcmw6IGRhdGFiYXNlLnVybCB9KTsKCQkJCXlpZWxkKiBMYXllci5idWlsZChlbnYgPT09IHVuZGVmaW5lZCA/IHdvcmtlciA6IHdvcmtlci5waXBlKExheWVyLnByb3ZpZGUoQ29uZmlnUHJvdmlkZXIubGF5ZXIoQ29uZmlnUHJvdmlkZXIuZnJvbUVudih7IGVudiB9KSkpKSk7CgkJCX0pLAoJCX07Cgl9LAp9KTsKCmV4cG9ydCBmdW5jdGlvbiBzaWduZWRJbihuYW1lID0gImFsaWNlIikgewoJcmV0dXJuIGFwcC50cmFpdCgiYWNjb3VudHMiLCBgJHtuYW1lfSBpcyBzaWduZWQgaW5gLCBmdW5jdGlvbiogKGVuZ2luZSkgewoJCWlmIChlbmdpbmUuaG9zdCA9PT0gdW5kZWZpbmVkKSB7CgkJCXJldHVybiB5aWVsZCogRWZmZWN0LmRpZSgiSG9zdCBoYXMgbm90IHN0YXJ0ZWQiKTsKCQl9CgkJY29uc3QgaHR0cCA9IHJlcXVlc3RzKGVuZ2luZS5ob3N0LCAobGluZSkgPT4gZW5naW5lLnRlbGwobGluZSkpOwoJCWNvbnN0IGNvb2tpZSA9IHlpZWxkKiBodHRwLmF1dGhlbnRpY2F0ZShuYW1lKTsKCQllbmdpbmUuYWN0b3JzLnNldChuYW1lLCB7IGNvb2tpZSwgbm90ZXM6IHlpZWxkKiBodHRwLm5vdGVzKGNvb2tpZSkgfSk7Cgl9KTsKfQoKZXhwb3J0IGZ1bmN0aW9uIGJlaGluZFByb3h5KG9wdGlvbnM6IFBpY2s8SG9zdE9wdGlvbnMsICJ0cnVzdGVkUHJveHkiIHwgImF1dGhDbGllbnRJcEhlYWRlciI+ID0geyB0cnVzdGVkUHJveHk6ICIxMjcuMC4wLjEiIH0pIHsKCXJldHVybiBhcHAudHJhaXQoImhvc3RpbmciLCAidGhlIGFwcCBpcyBiZWhpbmQgYW4gSFRUUFMgZm9yd2FyZGluZyBwcm94eSIsIChlbmdpbmUpID0+IHsKCQllbmdpbmUuaG9zdE9wdGlvbnMgPSB7IC4uLmVuZ2luZS5ob3N0T3B0aW9ucywgZGVwbG95ZWQ6IHRydWUsIC4uLm9wdGlvbnMgfTsKCX0pOwp9CgpleHBvcnQgZnVuY3Rpb24gYXV0aFJhdGVMaW1pdGluZyhlbmFibGVkOiBib29sZWFuKSB7CglyZXR1cm4gYXBwLnRyYWl0KCJob3N0aW5nIiwgYGF1dGggcmF0ZSBsaW1pdGluZyBpcyAke2VuYWJsZWQgPyAiZW5hYmxlZCIgOiAiZGlzYWJsZWQifWAsIChlbmdpbmUpID0+IHsKCQllbmdpbmUuaG9zdE9wdGlvbnMgPSB7IC4uLmVuZ2luZS5ob3N0T3B0aW9ucywgcmF0ZUxpbWl0RW5hYmxlZDogZW5hYmxlZCB9OwoJfSk7Cn0KCmV4cG9ydCBmdW5jdGlvbiBsZWdhY3lOb3RlKHRpdGxlOiBzdHJpbmcpIHsKCXJldHVybiBhcHAudHJhaXQoIm5vdGVzIiwgYFBvc3RncmVTUUwgY29udGFpbnMgdGhlIHVub3duZWQgbm90ZSAke0pTT04uc3RyaW5naWZ5KHRpdGxlKX1gLCBmdW5jdGlvbiogKCkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBzcWxgaW5zZXJ0IGludG8gc3RhcnRlcl9ub3RlcyAodGl0bGUpIHZhbHVlcyAoJHt0aXRsZX0pYDsKCX0pOwp9CgpleHBvcnQgZnVuY3Rpb24gcmVqZWN0ZWROb3RlSm9icygpIHsKCXJldHVybiBhcHAudHJhaXQoIm5vdGVzIiwgIlBvc3RncmVTUUwgcmVqZWN0cyB3b3JkLWNvdW50IGpvYnMiLCBmdW5jdGlvbiogKCkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgcGdib3NzLmpvYiBhZGQgY29uc3RyYWludCByZWplY3Rfbm90ZV9qb2JzIGNoZWNrIChuYW1lIDw+ICdjb3VudC1ub3RlLXdvcmRzJylgOwoJfSk7Cn0KCmV4cG9ydCBmdW5jdGlvbiByZWplY3RlZE5vdGVDb21taXRzKCkgewoJcmV0dXJuIGFwcC50cmFpdCgibm90ZXMiLCAiUG9zdGdyZVNRTCByZWplY3RzIG5vdGUgd3JpdGVzIGF0IGNvbW1pdCIsIGZ1bmN0aW9uKiAoKSB7CgkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJeWllbGQqIHNxbGBjcmVhdGUgZnVuY3Rpb24gcmVqZWN0X25vdGVfY29tbWl0KCkgcmV0dXJucyB0cmlnZ2VyIGxhbmd1YWdlIHBscGdzcWwgYXMgJCQKCQkJYmVnaW4gcmFpc2UgZXhjZXB0aW9uICdyZWplY3RlZCBhdCBjb21taXQnOyBlbmQ7CgkJJCRgOwoJCXlpZWxkKiBzcWxgY3JlYXRlIGNvbnN0cmFpbnQgdHJpZ2dlciByZWplY3Rfbm90ZV9jb21taXQgYWZ0ZXIgaW5zZXJ0IG9uIHN0YXJ0ZXJfbm90ZXMKCQkJZGVmZXJyYWJsZSBpbml0aWFsbHkgZGVmZXJyZWQgZm9yIGVhY2ggcm93IGV4ZWN1dGUgZnVuY3Rpb24gcmVqZWN0X25vdGVfY29tbWl0KClgOwoJfSk7Cn0K","path":"src/test-support/application.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IEZldGNoSHR0cENsaWVudCwgSHR0cENsaWVudCwgSHR0cENsaWVudFJlcXVlc3QgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCB7IFJwY0NsaWVudCwgUnBjU2VyaWFsaXphdGlvbiB9IGZyb20gImVmZmVjdC9ycGMiOwppbXBvcnQgeyBleHBlY3QgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBOb3RlcyB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgY29uc3QgYXV0aFBvc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJUZXN0LmF1dGhQb3N0IikoZnVuY3Rpb24qIChiYXNlVXJsOiBzdHJpbmcsIHBhdGg6IHN0cmluZywgYm9keTogb2JqZWN0LCBjb29raWUgPSAiIiwgb3JpZ2luID0gYmFzZVVybCkgewoJY29uc3QgcmVzcG9uc2UgPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQlmZXRjaChgJHtiYXNlVXJsfS9hcGkvYXV0aC8ke3BhdGh9YCwgewoJCQlib2R5OiBKU09OLnN0cmluZ2lmeShib2R5KSwKCQkJaGVhZGVyczogeyAiY29udGVudC10eXBlIjogImFwcGxpY2F0aW9uL2pzb24iLCBjb29raWUsIG9yaWdpbiB9LAoJCQltZXRob2Q6ICJQT1NUIiwKCQl9KSwKCSk7CglleHBlY3QocmVzcG9uc2Uuc3RhdHVzKS50b0JlKDIwMCk7Cgl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVzcG9uc2UudGV4dCgpKTsKCWNvbnN0IGNvb2tpZXMgPSByZXNwb25zZS5oZWFkZXJzLmdldFNldENvb2tpZSgpOwoJaWYgKG9yaWdpbi5zdGFydHNXaXRoKCJodHRwczovLyIpKSB7CgkJZXhwZWN0KGNvb2tpZXMuc29tZSgodmFsdWUpID0+IHZhbHVlLnN0YXJ0c1dpdGgoIl9fU2VjdXJlLWJldHRlci1hdXRoLnNlc3Npb25fdG9rZW49IikgJiYgLzsgU2VjdXJlKD86O3wkKS9pdi50ZXN0KHZhbHVlKSkpLnRvQmUodHJ1ZSk7Cgl9CglyZXR1cm4gY29va2llcy5tYXAoKHZhbHVlKSA9PiB2YWx1ZS5zcGxpdCgiOyIpWzBdKS5qb2luKCI7ICIpOwp9KTsKCmV4cG9ydCBmdW5jdGlvbiBub3Rlc0h0dHAoYmFzZVVybDogc3RyaW5nLCBjb29raWUgPSAiIiwgb3JpZ2luID0gYmFzZVVybCkgewoJY29uc3QgcHJvdG9jb2wgPSBScGNDbGllbnQubGF5ZXJQcm90b2NvbEh0dHAoewoJCXRyYW5zZm9ybUNsaWVudDogKGNsaWVudCkgPT4gSHR0cENsaWVudC5tYXBSZXF1ZXN0KGNsaWVudCwgSHR0cENsaWVudFJlcXVlc3Quc2V0SGVhZGVycyh7IGNvb2tpZSwgb3JpZ2luIH0pKSwKCQl1cmw6IGAke2Jhc2VVcmx9L3JwY2AsCgl9KS5waXBlKExheWVyLnByb3ZpZGUoW0ZldGNoSHR0cENsaWVudC5sYXllciwgUnBjU2VyaWFsaXphdGlvbi5sYXllck5kanNvbl0pKTsKCXJldHVybiBScGNDbGllbnQubWFrZShOb3RlcykucGlwZShFZmZlY3QucHJvdmlkZShwcm90b2NvbCkpOwp9CgpleHBvcnQgZnVuY3Rpb24gY3JlZGVudGlhbHMobmFtZTogc3RyaW5nKSB7CglyZXR1cm4geyBlbWFpbDogYCR7bmFtZX1Ac3RhcnRlci50ZXN0YCwgbmFtZSwgcGFzc3dvcmQ6ICJjb3JyZWN0LWhvcnNlLWJhdHRlcnktc3RhcGxlIiB9Owp9Cg==","path":"src/test-support/authHttp.ts"},{"content":"aW1wb3J0IHsgcmVxdWVzdCB9IGZyb20gIm5vZGU6aHR0cCI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGNyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoSHR0cC50cyI7CmltcG9ydCB0eXBlIHsgUnVubmluZ0hvc3QgfSBmcm9tICIuL2hvc3QudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIGF1dGhSYXRlTGltaXRzKGhvc3Q6IFJ1bm5pbmdIb3N0LCB0ZWxsOiAobGluZTogc3RyaW5nKSA9PiB2b2lkKSB7CglyZXR1cm4gewoJCXZpc2l0b3I6IChjbGllbnRJcDogc3RyaW5nKSA9PiB7CgkJCXRlbGwoYGEgdmlzaXRvciBjb25uZWN0cyBmcm9tICR7Y2xpZW50SXB9YCk7CgkJCXJldHVybiB7CgkJCQlzaWduSW46IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnNpZ25JbiIpKGZ1bmN0aW9uKiAoZm9yd2FyZGVkRm9yPzogc3RyaW5nLCByZWFsSXA/OiBzdHJpbmcpIHsKCQkJCQl0ZWxsKGB0aGUgdmlzaXRvciBhdCAke2NsaWVudElwfSBhdHRlbXB0cyBzaWduLWluIHdpdGggJHtKU09OLnN0cmluZ2lmeSh7IGZvcndhcmRlZEZvciwgcmVhbElwIH0pfWApOwoJCQkJCXJldHVybiB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gc2lnbkluU3RhdHVzKGhvc3QsIGNsaWVudElwLCBmb3J3YXJkZWRGb3IsIHJlYWxJcCkpOwoJCQkJfSksCgkJCX07CgkJfSwKCX07Cn0KCmZ1bmN0aW9uIHNpZ25JblN0YXR1cyhob3N0OiBSdW5uaW5nSG9zdCwgY2xpZW50SXA6IHN0cmluZywgZm9yd2FyZGVkRm9yPzogc3RyaW5nLCByZWFsSXA/OiBzdHJpbmcpIHsKCWNvbnN0IHVybCA9IG5ldyBVUkwoIi9hcGkvYXV0aC9zaWduLWluL2VtYWlsIiwgaG9zdC5iYXNlVXJsKTsKCXVybC5ob3N0bmFtZSA9IGNsaWVudElwLmluY2x1ZGVzKCI6IikgPyAiWzo6MV0iIDogIjEyNy4wLjAuMSI7CglyZXR1cm4gbmV3IFByb21pc2U8bnVtYmVyPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CgkJY29uc3Qgb3V0Z29pbmcgPSByZXF1ZXN0KAoJCQl1cmwsCgkJCXsKCQkJCWhlYWRlcnM6IHsKCQkJCQkiY29udGVudC10eXBlIjogImFwcGxpY2F0aW9uL2pzb24iLAoJCQkJCW9yaWdpbjogaG9zdC5vcmlnaW4sCgkJCQkJLi4uKGZvcndhcmRlZEZvciA9PT0gdW5kZWZpbmVkID8ge30gOiB7ICJ4LWZvcndhcmRlZC1mb3IiOiBmb3J3YXJkZWRGb3IgfSksCgkJCQkJLi4uKHJlYWxJcCA9PT0gdW5kZWZpbmVkID8ge30gOiB7ICJ4LXJlYWwtaXAiOiByZWFsSXAgfSksCgkJCQl9LAoJCQkJbG9jYWxBZGRyZXNzOiBjbGllbnRJcCwKCQkJCW1ldGhvZDogIlBPU1QiLAoJCQl9LAoJCQkocmVzcG9uc2UpID0+IHsKCQkJCXJlc3BvbnNlLm9uKCJlcnJvciIsIHJlamVjdCk7CgkJCQlyZXNwb25zZS5vbigiZW5kIiwgKCkgPT4gcmVzb2x2ZShyZXNwb25zZS5zdGF0dXNDb2RlID8/IDUwMCkpOwoJCQkJcmVzcG9uc2UucmVzdW1lKCk7CgkJCX0sCgkJKTsKCQlvdXRnb2luZy5vbigiZXJyb3IiLCByZWplY3QpOwoJCW91dGdvaW5nLmVuZChKU09OLnN0cmluZ2lmeShjcmVkZW50aWFscygidW5rbm93biIpKSk7Cgl9KTsKfQo=","path":"src/test-support/authRateLimits.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgd2l0aElzb2xhdGVkRGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC93aXRoSXNvbGF0ZWREYXRhYmFzZS50cyI7CmltcG9ydCB7IGRvbUZldGNoIH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L2RvbUZldGNoLnRzIjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIiNjbGllbnQvYXV0aC50cyI7CmltcG9ydCB7IGNyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoSHR0cC50cyI7CmltcG9ydCB7IHN0YXJ0SG9zdCB9IGZyb20gIi4vaG9zdC50cyI7CmltcG9ydCB7IHBvc3RncmVzIH0gZnJvbSAiLi9wb3N0Z3Jlcy50cyI7Cgpjb25zdCBhbGljZSA9IGNyZWRlbnRpYWxzKCJhbGljZSIpOwpleHBvcnQgY29uc3QgY29va2llQXBwID0gc3RvcnlLaXQoewoJYXJvdW5kOiB3aXRoSXNvbGF0ZWREYXRhYmFzZSwKCWNsb2NrOiAibGl2ZSIsCgkqY3JlYXRlKCkgewoJCWNvbnN0IHsgYmFzZVVybCB9ID0geWllbGQqIHN0YXJ0SG9zdCgpOwoJCWNvbnN0IHByZXZpb3VzTG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb24uaHJlZjsKCQljb25zdCBmZXRjaCA9IGRvbUZldGNoKGJhc2VVcmwpOwoJCXlpZWxkKiBFZmZlY3QuYWRkRmluYWxpemVyKCgpID0+CgkJCUVmZmVjdC5wcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCXRyeSB7CgkJCQkJY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgiL2FwaS9hdXRoL3NpZ24tb3V0IiwgeyBib2R5OiAie30iLCBoZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vanNvbiIgfSwgbWV0aG9kOiAiUE9TVCIgfSk7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJCQkJCWF3YWl0IHJlc3BvbnNlLnRleHQoKTsKCQkJCX0gZmluYWxseSB7CgkJCQkJd2luZG93LmxvY2F0aW9uLmhyZWYgPSBwcmV2aW91c0xvY2F0aW9uOwoJCQkJfQoJCQl9KS5waXBlKEVmZmVjdC50aW1lb3V0KCI1IHNlY29uZHMiKSwgRWZmZWN0Lm9yRGllKSwKCQkpOwoJCXJldHVybiB7IGJhc2VVcmwsIGNsaWVudDogbWFrZUF1dGgoeyBiYXNlVXJsLCBmZXRjaE9wdGlvbnM6IHsgY3VzdG9tRmV0Y2hJbXBsOiBmZXRjaCB9IH0pLmNsaWVudCwgZmV0Y2ggfTsKCX0sCglpbnNwZWN0OiAoKSA9PiAoeyBhdXRoZW50aWNhdGlvbjogImNvb2tpZSBzZXNzaW9uIiB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJjb29raWUgYXV0aCIsCglzdGFnZXM6IFsiYWNjb3VudCJdLAoJdmVyYnM6ICh7IGJhc2VVcmwsIGNsaWVudCwgZmV0Y2ggfSwgc3RvcnkpID0+IHsKCQlmdW5jdGlvbiBwb3N0KHBhdGg6IHN0cmluZywgYm9keTogb2JqZWN0KSB7CgkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQljb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKAoJCQkJCW5ldyBSZXF1ZXN0KGAke2Jhc2VVcmx9L2FwaS9hdXRoLyR7cGF0aH1gLCB7CgkJCQkJCWJvZHk6IEpTT04uc3RyaW5naWZ5KGJvZHkpLAoJCQkJCQloZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vanNvbiIgfSwKCQkJCQkJbWV0aG9kOiAiUE9TVCIsCgkJCQkJfSksCgkJCQkpOwoJCQkJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJCQkJYXdhaXQgcmVzcG9uc2UudGV4dCgpOwoJCQl9KTsKCQl9CgkJcmV0dXJuIHsKCQkJc2Vzc2lvbklzOiAoZW1haWw6IHN0cmluZyB8IG51bGwpID0+CgkJCQlFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJc3RvcnkudGVsbChlbWFpbCA9PT0gbnVsbCA/ICJBbGljZSBoYXMgbm8gc2Vzc2lvbiIgOiAiQWxpY2UgcmVhZHMgaGVyIGNvb2tpZSBzZXNzaW9uIik7CgkJCQkJY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChuZXcgUmVxdWVzdChgJHtiYXNlVXJsfS9hcGkvYXV0aC9nZXQtc2Vzc2lvbmAsIHsgY2FjaGU6ICJuby1zdG9yZSIgfSkpOwoJCQkJCWV4cGVjdChyZXNwb25zZS5vaykudG9CZSh0cnVlKTsKCQkJCQlleHBlY3QocmVzcG9uc2Uuc3RhdHVzKS50b0JlKDIwMCk7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCJjb250ZW50LXR5cGUiKSkudG9Db250YWluKCJhcHBsaWNhdGlvbi9qc29uIik7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCJzZXQtY29va2llIikpLnRvQmVOdWxsKCk7CgkJCQkJY29uc3Qgc2Vzc2lvbjogdW5rbm93biA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTsKCQkJCQljb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQuZ2V0U2Vzc2lvbigpOwoJCQkJCWV4cGVjdChyZXN1bHQuZXJyb3IpLnRvQmVOdWxsKCk7CgoJCQkJCWlmIChlbWFpbCA9PT0gbnVsbCkgewoJCQkJCQlleHBlY3Qoc2Vzc2lvbikudG9CZU51bGwoKTsKCQkJCQkJZXhwZWN0KHJlc3VsdC5kYXRhKS50b0JlTnVsbCgpOwoJCQkJCX0gZWxzZSB7CgkJCQkJCWV4cGVjdChzZXNzaW9uKS50b01hdGNoT2JqZWN0KHsgdXNlcjogeyBlbWFpbCB9IH0pOwoJCQkJCQlleHBlY3QocmVzdWx0LmRhdGEpLnRvTWF0Y2hPYmplY3QoeyB1c2VyOiB7IGVtYWlsIH0gfSk7CgkJCQkJfQoJCQkJfSksCgkJCXNpZ25JbjogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgaW4iKTsKCQkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KChhd2FpdCBjbGllbnQuc2lnbkluLmVtYWlsKGFsaWNlKSkuZXJyb3IpLnRvQmVOdWxsKCk7CgkJCQl9KTsKCQkJfSwKCQkJc2lnbk91dDogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgb3V0Iik7CgkJCQlyZXR1cm4gcG9zdCgic2lnbi1vdXQiLCB7fSk7CgkJCX0sCgkJCXNpZ25VcDogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgdXAiKTsKCQkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KChhd2FpdCBjbGllbnQuc2lnblVwLmVtYWlsKGFsaWNlKSkuZXJyb3IpLnRvQmVOdWxsKCk7CgkJCQl9KTsKCQkJfSwKCQl9OwoJfSwKfSk7Cg==","path":"src/test-support/cookieApp.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpuZXQiOwppbXBvcnQgcHJvY2VzcyBmcm9tICJub2RlOnByb2Nlc3MiOwppbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAibm9kZTp1cmwiOwppbXBvcnQgeyBEZWZlcnJlZCwgRWZmZWN0LCBSZWRhY3RlZCwgU3RyZWFtIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgQ2hpbGRQcm9jZXNzLCBDaGlsZFByb2Nlc3NTcGF3bmVyIH0gZnJvbSAiZWZmZWN0L3Byb2Nlc3MiOwoKZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveVBvcnQoKSB7Cgljb25zdCBzZXJ2ZXIgPSBjcmVhdGVTZXJ2ZXIoKTsKCWF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiBzZXJ2ZXIubGlzdGVuKDAsICIxMjcuMC4wLjEiLCByZXNvbHZlKSk7Cgljb25zdCBhZGRyZXNzID0gc2VydmVyLmFkZHJlc3MoKTsKCWlmIChhZGRyZXNzID09PSBudWxsIHx8IHR5cGVvZiBhZGRyZXNzID09PSAic3RyaW5nIikgewoJCXRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgYSBUQ1AgYWRkcmVzcyIpOwoJfQoJYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHNlcnZlci5jbG9zZSgoKSA9PiByZXNvbHZlKCkpKTsKCXJldHVybiBhZGRyZXNzLnBvcnQ7Cn0KCmV4cG9ydCBjb25zdCBkZXBsb3lDaGlsZCA9IEVmZmVjdC5mbigiVGVzdC5kZXBsb3lDaGlsZCIpKGZ1bmN0aW9uKiAoa2luZDogIndvcmtlciIgfCAid2ViIiB8ICJtaWdyYXRlIiwgdXJsOiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+LCBwb3J0ID0gMCkgewoJY29uc3Qgc3Bhd25lciA9IHlpZWxkKiBDaGlsZFByb2Nlc3NTcGF3bmVyLkNoaWxkUHJvY2Vzc1NwYXduZXI7Cgljb25zdCB0YXJnZXQgPSBuZXcgVVJMKFJlZGFjdGVkLnZhbHVlKHVybCkpOwoJdGFyZ2V0LnNlYXJjaFBhcmFtcy5zZXQoImFwcGxpY2F0aW9uX25hbWUiLCBgZGVwbG95XyR7a2luZH1gKTsKCWNvbnN0IGVudHJ5ID0ga2luZCA9PT0gIm1pZ3JhdGUiID8gIi4uL3NlcnZlci9taWdyYXRlLnRzIiA6ICIuL2RlcGxveVByb2Nlc3MudHMiOwoJY29uc3QgY2hpbGQgPSB5aWVsZCogc3Bhd25lci5zcGF3bigKCQlDaGlsZFByb2Nlc3MubWFrZShwcm9jZXNzLmV4ZWNQYXRoLCBbZmlsZVVSTFRvUGF0aChuZXcgVVJMKGVudHJ5LCBpbXBvcnQubWV0YS51cmwpKSwga2luZF0sIHsKCQkJZW52OiB7CgkJCQkiREFUQUJBU0VfVVJMIjogdGFyZ2V0LnRvU3RyaW5nKCksCgkJCQkuLi4oa2luZCA9PT0gIndlYiIgPyB7ICJCRVRURVJfQVVUSF9TRUNSRVQiOiAic3RhcnRlci10ZXN0LXNlY3JldC13aXRoLWF0LWxlYXN0LTMyLWNoYXJhY3RlcnMiLCAiUE9SVCI6IFN0cmluZyhwb3J0KSB9IDoge30pLAoJCQl9LAoJCQlleHRlbmRFbnY6IGZhbHNlLAoJCX0pLAoJKTsKCWNvbnN0IHN0YXJ0ZWQgPSB5aWVsZCogRGVmZXJyZWQubWFrZTxzdHJpbmcsIEVycm9yPigpOwoJY29uc3QgbG9nczogc3RyaW5nW10gPSBbXTsKCWNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTsKCXlpZWxkKiBjaGlsZC5zdGRvdXQucGlwZSgKCQlTdHJlYW0uZGVjb2RlVGV4dCgpLAoJCVN0cmVhbS5zcGxpdExpbmVzLAoJCVN0cmVhbS5ydW5Gb3JFYWNoKChsaW5lKSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQlsb2dzLnB1c2gobGluZSk7CgkJCQlpZiAobGluZS5zdGFydHNXaXRoKCJERVBMT1lfUkVBRFkgIikpIHsKCQkJCQl5aWVsZCogRGVmZXJyZWQuc3VjY2VlZChzdGFydGVkLCBsaW5lLnNsaWNlKCJERVBMT1lfUkVBRFkgIi5sZW5ndGgpKTsKCQkJCX0KCQkJfSksCgkJKSwKCQlFZmZlY3QuZW5zdXJpbmcoRGVmZXJyZWQuZmFpbChzdGFydGVkLCBuZXcgRXJyb3IoYCR7a2luZH0gZXhpdGVkIGJlZm9yZSBzdGFydGluZ2ApKSksCgkJRWZmZWN0LmZvcmtTY29wZWQsCgkpOwoJeWllbGQqIGNoaWxkLnN0ZGVyci5waXBlKAoJCVN0cmVhbS5kZWNvZGVUZXh0KCksCgkJU3RyZWFtLnNwbGl0TGluZXMsCgkJU3RyZWFtLnJ1bkZvckVhY2goKGxpbmUpID0+IEVmZmVjdC5zeW5jKCgpID0+IGVycm9ycy5wdXNoKGxpbmUpKSksCgkJRWZmZWN0LmZvcmtTY29wZWQsCgkpOwoJcmV0dXJuIHsgY2hpbGQsIGVycm9ycywgbG9ncywgcmVhZHk6IERlZmVycmVkLmF3YWl0KHN0YXJ0ZWQpLnBpcGUoRWZmZWN0LnRpbWVvdXQoIjIwIHNlY29uZHMiKSksIHVybDogYGh0dHA6Ly8xMjcuMC4wLjE6JHtwb3J0fWAgfTsKfSk7Cg==","path":"src/test-support/deployChild.ts"},{"content":"aW1wb3J0IHByb2Nlc3MgZnJvbSAibm9kZTpwcm9jZXNzIjsKaW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBFZmZlY3QsIExheWVyLCBMb2dnZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBIdHRwU2VydmVyIH0gZnJvbSAiZWZmZWN0L2h0dHAiOwppbXBvcnQgeyBub3RlV29ya2VyIH0gZnJvbSAiI3NlcnZlci9ub3RlV29ya2VyLnRzIjsKaW1wb3J0IHsgc3RhcnRlckhvc3QgfSBmcm9tICIjc2VydmVyL3N0YXJ0ZXJIb3N0LnRzIjsKCmNvbnN0IHJlYWR5ID0KCXByb2Nlc3MuYXJndlsyXSA9PT0gIndvcmtlciIKCQk/IExheWVyLmJ1aWxkKG5vdGVXb3JrZXIoKSkucGlwZShFZmZlY3QuYXMoIndvcmtlciIpKQoJCTogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3QgY29udGV4dCA9IHlpZWxkKiBMYXllci5idWlsZChzdGFydGVySG9zdCgpKTsKCQkJCWNvbnN0IHNlcnZlciA9IHlpZWxkKiBIdHRwU2VydmVyLkh0dHBTZXJ2ZXIucGlwZShFZmZlY3QucHJvdmlkZUNvbnRleHQoY29udGV4dCkpOwoJCQkJcmV0dXJuIEh0dHBTZXJ2ZXIuZm9ybWF0QWRkcmVzcyhzZXJ2ZXIuYWRkcmVzcyk7CgkJCX0pOwoKY29uc3QgbG9nZ2VyID0gTG9nZ2VyLm1ha2UoKHsgbWVzc2FnZSB9KSA9PiB7Cglwcm9jZXNzLnN0ZG91dC53cml0ZShgRUZGRUNUX0xPRyAke1N0cmluZyhtZXNzYWdlKX1cbmApOwp9KTsKCk5vZGVSdW50aW1lLnJ1bk1haW4oCglFZmZlY3Quc2NvcGVkKAoJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJY29uc3QgYWRkcmVzcyA9IHlpZWxkKiByZWFkeTsKCQkJeWllbGQqIEVmZmVjdC5zeW5jKCgpID0+IHByb2Nlc3Muc3Rkb3V0LndyaXRlKGBERVBMT1lfUkVBRFkgJHthZGRyZXNzfVxuYCkpOwoJCQl5aWVsZCogRWZmZWN0Lm5ldmVyOwoJCX0pLAoJKS5waXBlKEVmZmVjdC5wcm92aWRlKExvZ2dlci5sYXllcihbbG9nZ2VyXSkpKSwKKTsK","path":"src/test-support/deployProcess.ts"},{"content":"aW1wb3J0IHsgTm9kZVNlcnZpY2VzIH0gZnJvbSAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlIjsKaW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBzdG9yeUtpdCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9zdG9yeUtpdC50cyI7CmltcG9ydCB7IGRlcGxveUNoaWxkLCBkZXBsb3lQb3J0IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9kZXBsb3lDaGlsZC50cyI7CmltcG9ydCB7IHBvc3RncmVzIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9wb3N0Z3Jlcy50cyI7CgpleHBvcnQgY29uc3QgZGVwbG95bWVudCA9IHN0b3J5S2l0KHsKCWFyb3VuZDogd2l0aElzb2xhdGVkRGF0YWJhc2UsCgljbG9jazogImxpdmUiLAoJY3JlYXRlOiAoKSA9PiAoe30pLAoJbGF5ZXI6IHBvc3RncmVzLAoJbmFtZTogImRlcGxveW1lbnQiLAoJc3RhZ2VzOiBbInNjaGVtYSJdLAoJdmVyYnM6IChfZW5naW5lLCBzdG9yeSkgPT4gKHsKCQltaWdyYXRlOiBFZmZlY3QuZm4oIkRlcGxveW1lbnRTdG9yeS5taWdyYXRlIikoZnVuY3Rpb24qICgpIHsKCQkJc3RvcnkudGVsbCgicnVuIHRoZSBzZWNyZXQtZnJlZSBkZXBsb3ltZW50IG1pZ3JhdGlvbiBjb21tYW5kIik7CgkJCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJCQljb25zdCBtaWdyYXRpb24gPSB5aWVsZCogZGVwbG95Q2hpbGQoIm1pZ3JhdGUiLCBkYXRhYmFzZS51cmwpLnBpcGUoRWZmZWN0LnByb3ZpZGUoTm9kZVNlcnZpY2VzLmxheWVyKSk7CgkJCWNvbnN0IGNvZGUgPSB5aWVsZCogbWlncmF0aW9uLmNoaWxkLmV4aXRDb2RlOwoJCQlzdG9yeS50ZWxsKFsuLi5taWdyYXRpb24ubG9ncywgLi4ubWlncmF0aW9uLmVycm9yc10uam9pbigiXG4iKSk7CgkJCXJldHVybiBjb2RlOwoJCX0pLAoJCXBvcnQ6IEVmZmVjdC5wcm9taXNlKGRlcGxveVBvcnQpLAoJCXN0YXJ0UHJvY2VzczogRWZmZWN0LmZuKCJEZXBsb3ltZW50U3Rvcnkuc3RhcnRQcm9jZXNzIikoZnVuY3Rpb24qIChraW5kOiAid29ya2VyIiB8ICJ3ZWIiLCBwb3J0ID0gMCkgewoJCQlzdG9yeS50ZWxsKGBzdGFydCB0aGUgJHtraW5kfSBwcm9jZXNzYCk7CgkJCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJCQlyZXR1cm4geWllbGQqIGRlcGxveUNoaWxkKGtpbmQsIGRhdGFiYXNlLnVybCwgcG9ydCkucGlwZShFZmZlY3QucHJvdmlkZShOb2RlU2VydmljZXMubGF5ZXIpKTsKCQl9KSwKCX0pLAp9KTsK","path":"src/test-support/deployment.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyLCByZXF1ZXN0IH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmb3J3YXJkaW5nUHJveHkodXBzdHJlYW06IHN0cmluZykgewoJY29uc3Qgc2VydmVyID0gY3JlYXRlU2VydmVyKChpbmNvbWluZywgcmVzcG9uc2UpID0+IHsKCQljb25zdCBvdXRnb2luZyA9IHJlcXVlc3QoCgkJCWAke3Vwc3RyZWFtfSR7aW5jb21pbmcudXJsfWAsCgkJCXsKCQkJCWhlYWRlcnM6IHsKCQkJCQkuLi5pbmNvbWluZy5oZWFkZXJzLAoJCQkJCWhvc3Q6ICJpbnRlcm5hbC50ZXN0IiwKCQkJCQkieC1mb3J3YXJkZWQtZm9yIjogW2luY29taW5nLmhlYWRlcnNbIngtZm9yd2FyZGVkLWZvciJdLCBpbmNvbWluZy5zb2NrZXQucmVtb3RlQWRkcmVzc10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiwgIiksCgkJCQkJIngtZm9yd2FyZGVkLWhvc3QiOiAiYXBwLmV4YW1wbGUiLAoJCQkJCSJ4LWZvcndhcmRlZC1wcm90byI6ICJodHRwcyIsCgkJCQl9LAoJCQkJbWV0aG9kOiBpbmNvbWluZy5tZXRob2QsCgkJCX0sCgkJCShyZXN1bHQpID0+IHsKCQkJCXJlc3BvbnNlLndyaXRlSGVhZChyZXN1bHQuc3RhdHVzQ29kZSA/PyA1MDIsIHJlc3VsdC5oZWFkZXJzKTsKCQkJCXJlc3VsdC5waXBlKHJlc3BvbnNlKTsKCQkJfSwKCQkpOwoJCW91dGdvaW5nLm9uKCJlcnJvciIsICgpID0+IHsKCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDUwMik7CgkJCXJlc3BvbnNlLmVuZCgpOwoJCX0pOwoJCWluY29taW5nLnBpcGUob3V0Z29pbmcpOwoJfSk7CglzZXJ2ZXIubGlzdGVuKHsgaG9zdDogIjo6IiwgaXB2Nk9ubHk6IGZhbHNlLCBwb3J0OiAwIH0pOwoJYXdhaXQgb25jZShzZXJ2ZXIsICJsaXN0ZW5pbmciKTsKCWNvbnN0IGFkZHJlc3MgPSBzZXJ2ZXIuYWRkcmVzcygpOwoJaWYgKGFkZHJlc3MgPT09IG51bGwgfHwgdHlwZW9mIGFkZHJlc3MgPT09ICJzdHJpbmciKSB7CgkJdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBwcm94eSBUQ1AgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4KCQkJbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gewoJCQkJc2VydmVyLmNsb3NlQWxsQ29ubmVjdGlvbnMoKTsKCQkJCXNlcnZlci5jbG9zZSgoZXJyb3IpID0+IChlcnJvciA9PT0gdW5kZWZpbmVkID8gcmVzb2x2ZSgpIDogcmVqZWN0KGVycm9yKSkpOwoJCQl9KSwKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/forwardingProxy.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnUHJvdmlkZXIsIEVmZmVjdCwgTGF5ZXIsIFJlZGFjdGVkIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgSHR0cFNlcnZlciB9IGZyb20gImVmZmVjdC9odHRwIjsKaW1wb3J0ICogYXMgTmV0QWRkcmVzcyBmcm9tICJlZmZlY3QvbmV0L05ldEFkZHJlc3MiOwppbXBvcnQgeyB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IFBvc3RncmVzVGVzdERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvZGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRlRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL21pZ3JhdGVEYXRhYmFzZS50cyI7CmltcG9ydCB7IGZvcndhcmRpbmdQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvZm9yd2FyZGluZ1Byb3h5LnRzIjsKCmV4cG9ydCBjb25zdCBzZWNyZXQgPSBSZWRhY3RlZC5tYWtlKCJzdGFydGVyLXRlc3Qtc2VjcmV0LXdpdGgtYXQtbGVhc3QtMzItY2hhcmFjdGVycyIpOwpleHBvcnQgY29uc3QgUFVCTElDX1VSTCA9ICJodHRwczovL2FwcC5leGFtcGxlIjsKCmV4cG9ydCBpbnRlcmZhY2UgSG9zdE9wdGlvbnMgewoJcmVhZG9ubHkgYXV0aENsaWVudElwSGVhZGVyPzogc3RyaW5nOwoJcmVhZG9ubHkgZGVwbG95ZWQ/OiBib29sZWFuOwoJcmVhZG9ubHkgcmF0ZUxpbWl0RW5hYmxlZD86IGJvb2xlYW47CglyZWFkb25seSB0cnVzdGVkUHJveHk/OiBzdHJpbmcgfCB1bmRlZmluZWQ7Cn0KCmV4cG9ydCBjb25zdCBzdGFydEhvc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5zdGFydEhvc3QiKShmdW5jdGlvbiogKG9wdGlvbnM6IEhvc3RPcHRpb25zID0ge30pIHsKCS8vIEJldHRlciBBdXRoIGtlZXBzIGl0cyBpbi1tZW1vcnkgcmF0ZS1saW1pdCBidWNrZXRzIGF0IG1vZHVsZSBzY29wZS4KCXZpLnJlc2V0TW9kdWxlcygpOwoJY29uc3QgeyBzdGFydGVySG9zdCB9ID0geWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGltcG9ydCgiI3NlcnZlci9zdGFydGVySG9zdC50cyIpKTsKCWNvbnN0IGRlcGxveWVkID0gb3B0aW9ucy5kZXBsb3llZCA/PyBmYWxzZTsKCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJeWllbGQqIEVmZmVjdC5zY29wZWQobWlncmF0ZURhdGFiYXNlKGRhdGFiYXNlLnVybCkpOwoJY29uc3QgZW52OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0gZGVwbG95ZWQgPyB7ICJIT1NUIjogIjAuMC4wLjAiLCAiUE9SVCI6ICIwIiwgIlBVQkxJQ19VUkwiOiBQVUJMSUNfVVJMIH0gOiB7fTsKCWlmIChvcHRpb25zLnRydXN0ZWRQcm94eSAhPT0gdW5kZWZpbmVkKSB7CgkJZW52LlRSVVNURURfUFJPWFkgPSBvcHRpb25zLnRydXN0ZWRQcm94eTsKCX0KCWlmIChvcHRpb25zLnJhdGVMaW1pdEVuYWJsZWQgIT09IHVuZGVmaW5lZCkgewoJCWVudi5BVVRIX1JBVEVfTElNSVRfRU5BQkxFRCA9IFN0cmluZyhvcHRpb25zLnJhdGVMaW1pdEVuYWJsZWQpOwoJfQoJaWYgKG9wdGlvbnMuYXV0aENsaWVudElwSGVhZGVyICE9PSB1bmRlZmluZWQpIHsKCQllbnYuQVVUSF9DTElFTlRfSVBfSEVBREVSID0gb3B0aW9ucy5hdXRoQ2xpZW50SXBIZWFkZXI7Cgl9Cgljb25zdCBob3N0ID0gc3RhcnRlckhvc3QoeyBkYXRhYmFzZVVybDogZGF0YWJhc2UudXJsLCBzZWNyZXQsIC4uLihkZXBsb3llZCA/IHt9IDogeyBwb3J0OiAwIH0pIH0pLnBpcGUoCgkJTGF5ZXIucHJvdmlkZShDb25maWdQcm92aWRlci5sYXllcihDb25maWdQcm92aWRlci5mcm9tRW52KHsgZW52IH0pKSksCgkpOwoJY29uc3QgY29udGV4dCA9IHlpZWxkKiBMYXllci5idWlsZChob3N0KTsKCWNvbnN0IHNlcnZlciA9IHlpZWxkKiBIdHRwU2VydmVyLkh0dHBTZXJ2ZXIucGlwZShFZmZlY3QucHJvdmlkZUNvbnRleHQoY29udGV4dCkpOwoJaWYgKCFOZXRBZGRyZXNzLmlzSW5ldEFkZHJlc3Moc2VydmVyLmFkZHJlc3MpKSB7CgkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZGllKCJFeHBlY3RlZCBhIFRDUCBzZXJ2ZXIiKTsKCX0KCWNvbnN0IHVwc3RyZWFtID0gYGh0dHA6Ly8xMjcuMC4wLjE6JHtzZXJ2ZXIuYWRkcmVzcy5wb3J0fWA7Cgljb25zdCBwcm94eSA9IGRlcGxveWVkCgkJPyB5aWVsZCogRWZmZWN0LmFjcXVpcmVSZWxlYXNlKAoJCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gZm9yd2FyZGluZ1Byb3h5KHVwc3RyZWFtKSksCgkJCQkoZml4dHVyZSkgPT4gRWZmZWN0LnByb21pc2UoKCkgPT4gZml4dHVyZS5jbG9zZSgpKSwKCQkJKQoJCTogdW5kZWZpbmVkOwoJY29uc3QgYmFzZVVybCA9IHByb3h5Py51cmwgPz8gdXBzdHJlYW07CglyZXR1cm4geyBiYXNlVXJsLCBjb250ZXh0LCBvcmlnaW46IGRlcGxveWVkID8gUFVCTElDX1VSTCA6IGJhc2VVcmwgfTsKfSk7CgpleHBvcnQgdHlwZSBSdW5uaW5nSG9zdCA9IEVmZmVjdC5TdWNjZXNzPFJldHVyblR5cGU8dHlwZW9mIHN0YXJ0SG9zdD4+Owo=","path":"src/test-support/host.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cENsaWVudFJlcXVlc3QgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCAqIGFzIEF0b21SZWdpc3RyeSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9BdG9tUmVnaXN0cnkiOwppbXBvcnQgeyBleHBlY3QsIHZpIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgbWFrZU5vdGVzQ2xpZW50IH0gZnJvbSAiI2NsaWVudC9tYWtlTm90ZXMudHMiOwppbXBvcnQgdHlwZSB7IFJ1bm5pbmdIb3N0IH0gZnJvbSAiLi9ob3N0LnRzIjsKCmV4cG9ydCBjb25zdCBsaXZlTm90ZXMgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5saXZlTm90ZXMiKShmdW5jdGlvbiogKGhvc3Q6IFJ1bm5pbmdIb3N0LCBjb29raWU6IHN0cmluZykgewoJY29uc3QgY2xpZW50ID0gbWFrZU5vdGVzQ2xpZW50KGAke2hvc3QuYmFzZVVybH0vcnBjYCwgKHRyYW5zcG9ydCkgPT4KCQlIdHRwQ2xpZW50Lm1hcFJlcXVlc3QodHJhbnNwb3J0LCBIdHRwQ2xpZW50UmVxdWVzdC5zZXRIZWFkZXJzKHsgY29va2llLCBvcmlnaW46IGhvc3Qub3JpZ2luIH0pKSwKCSk7Cgljb25zdCByZWdpc3RyeSA9IHlpZWxkKiBFZmZlY3QuYWNxdWlyZVJlbGVhc2UoCgkJRWZmZWN0LnN5bmMoKCkgPT4gQXRvbVJlZ2lzdHJ5Lm1ha2UoKSksCgkJKHZhbHVlKSA9PiBFZmZlY3Quc3luYygoKSA9PiB2YWx1ZS5kaXNwb3NlKCkpLAoJKTsKCWNvbnN0IGxpc3QgPSBjbGllbnQuYXBpLmxpc3QucXVlcnkoKTsKCXJlZ2lzdHJ5Lm1vdW50KGxpc3QpOwoJcmVnaXN0cnkubW91bnQoY2xpZW50LmNvbm5lY3Rpb24pOwoJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IHZpLndhaXRGb3IoKCkgPT4gZXhwZWN0KHJlZ2lzdHJ5LmdldChjbGllbnQuc3RhdHVzKS5jb25uZWN0aW9uKS50b0JlKCJsaXZlIikpKTsKCXJldHVybiB7IGNsaWVudCwgbGlzdCwgcmVnaXN0cnkgfTsKfSk7Cg==","path":"src/test-support/liveNotes.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IG1pZ3JhdGlvblVwZ3JhZGUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9taWdyYXRpb25VcGdyYWRlLnRzIjsKaW1wb3J0IHsgd2l0aElzb2xhdGVkRGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC93aXRoSXNvbGF0ZWREYXRhYmFzZS50cyI7CmltcG9ydCB7IHN0b3J5S2l0IH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L3N0b3J5S2l0LnRzIjsKaW1wb3J0IHsgYXV0aERhdGFiYXNlIH0gZnJvbSAiI3NlcnZlci9hdXRoRGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRpb25zIH0gZnJvbSAiI3NlcnZlci9taWdyYXRpb25zLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3Bvc3RncmVzLnRzIjsKCmV4cG9ydCBjb25zdCBtaWdyYXRpb24gPSBzdG9yeUtpdCh7Cglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCWNyZWF0ZTogKCkgPT4gKHsgdXBUbzogMCB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJub3RlcyBtaWdyYXRpb24iLAoJc3RhZ2VzOiBbInNjaGVtYSJdLAoJdmVyYnM6IChlbmdpbmUsIHN0b3J5KSA9PiAoewoJCXVwZ3JhZGU6IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnVwZ3JhZGUiKShmdW5jdGlvbiogKCkgewoJCQlzdG9yeS50ZWxsKGB1cGdyYWRlIHRoZSBub3RlcyBzY2hlbWEgZnJvbSBtaWdyYXRpb24gJHtlbmdpbmUudXBUb31gKTsKCQkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlLnVybCk7CgkJCXJldHVybiB5aWVsZCogbWlncmF0aW9uVXBncmFkZSh7IG1pZ3JhdGlvbnM6IHsgLi4ubWlncmF0aW9ucyhwb29sKSwgbG9ja1RpbWVvdXQ6ICI1IHNlY29uZHMiIH0sIHRhYmxlOiAic3RhcnRlcl9ub3RlcyIsIHVwVG86IGVuZ2luZS51cFRvIH0pOwoJCX0pLAoJfSksCn0pOwoKZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZVZlcnNpb25lZE5vdGVzKCkgewoJcmV0dXJuIG1pZ3JhdGlvbi50cmFpdCgic2NoZW1hIiwgInRoZSBub3RlcyBzY2hlbWEgcHJlZGF0ZXMgdmVyc2lvbmVkIHdyaXRlcyIsIChlbmdpbmUpID0+IHsKCQllbmdpbmUudXBUbyA9IDQ7Cgl9KTsKfQo=","path":"src/test-support/migration.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBMYXllciwgUHViU3ViLCBTdHJlYW0gfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgKiBhcyBBdG9tUnBjIGZyb20gImVmZmVjdC9yZWFjdGl2aXR5L0F0b21ScGMiOwppbXBvcnQgeyBScGNUZXN0IH0gZnJvbSAiZWZmZWN0L3JwYyI7CmltcG9ydCB7IGJpbmQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9iaW5kLnRzIjsKaW1wb3J0IHsgdHlwZSBMaXZlSGludCwgbGl2ZSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWNvbnRyYWN0L2xpdmUudHMiOwppbXBvcnQgeyBDb25mbGljdCwgTm90Rm91bmQsIFVuYXV0aG9yaXplZCB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vZXJyb3JzL3RheG9ub215LnRzIjsKaW1wb3J0IHsgSWRlbnRpdHksIFNlc3Npb25Vc2VyIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9ycGMvaWRlbnRpdHkudHMiOwppbXBvcnQgeyBBdXRoZW50aWNhdGVkVXNlciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjL21pZGRsZXdhcmUudHMiOwppbXBvcnQgeyBDcmVhdGUsIHR5cGUgTm90ZSwgTm90ZXMsIG5vdGVzLCBTdWJzY3JpYmUsIFVwZGF0ZSB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgZnVuY3Rpb24gbm90ZXNDbGllbnQoaW5pdGlhbDogcmVhZG9ubHkgKHR5cGVvZiBOb3RlLlR5cGUpW10gPSBbXSkgewoJY29uc3Qgcm93cyA9IFsuLi5pbml0aWFsXTsKCWNvbnN0IGNhbGxzOiBzdHJpbmdbXSA9IFtdOwoJY29uc3QgaGludHMgPSBFZmZlY3QucnVuU3luYyhQdWJTdWIudW5ib3VuZGVkPExpdmVIaW50PigpKTsKCWNvbnN0IHNlc3Npb24gPSB7IHNpZ25lZEluOiB0cnVlIH07Cgljb25zdCBhdXRoZW50aWNhdGlvbiA9IExheWVyLnN1Y2NlZWQoQXV0aGVudGljYXRlZFVzZXIsIChlZmZlY3QpID0+CgkJc2Vzc2lvbi5zaWduZWRJbgoJCQk/IGVmZmVjdC5waXBlKAoJCQkJCUVmZmVjdC5wcm92aWRlU2VydmljZShJZGVudGl0eSwgeyBpZDogImFsaWNlIiB9KSwKCQkJCQlFZmZlY3QucHJvdmlkZVNlcnZpY2UoU2Vzc2lvblVzZXIsIHsgZW1haWw6ICJhbGljZUBzdGFydGVyLnRlc3QiLCBpZDogImFsaWNlIiwgbmFtZTogIkFsaWNlIiB9KSwKCQkJCSkKCQkJOiBFZmZlY3QuZmFpbChuZXcgVW5hdXRob3JpemVkKHsgbWVzc2FnZTogIkF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkIiB9KSksCgkpOwoJZnVuY3Rpb24gZ2V0KGlkOiBudW1iZXIpIHsKCQlyZXR1cm4gRWZmZWN0LnN1c3BlbmQoKCkgPT4gewoJCQljb25zdCByb3cgPSByb3dzLmZpbmQoKG5vdGUpID0+IG5vdGUuaWQgPT09IGlkKTsKCQkJcmV0dXJuIHJvdyA9PT0gdW5kZWZpbmVkID8gRWZmZWN0LmZhaWwobmV3IE5vdEZvdW5kKHsgbWVzc2FnZTogIk5vdGUgbm90IGZvdW5kIiB9KSkgOiBFZmZlY3Quc3VjY2VlZCh7IC4uLnJvdyB9KTsKCQl9KTsKCX0KCWZ1bmN0aW9uIGNvbmZsaWN0KCkgewoJCXJldHVybiBuZXcgQ29uZmxpY3QoeyBtZXNzYWdlOiAiVGhpcyBub3RlIGNoYW5nZWQuIFJlZnJlc2ggYW5kIHJldmlldyB5b3VyIGRyYWZ0IGJlZm9yZSB0cnlpbmcgYWdhaW4uIiB9KTsKCX0KCWNvbnN0IGhhbmRsZXJzID0gTm90ZXMudG9MYXllcih7CgkJIm5vdGVzLmNyZWF0ZSI6ICh7IHRpdGxlIH0pID0+CgkJCXRpdGxlLnRyaW0oKSA9PT0gInJlc2VydmVkIgoJCQkJPyBDcmVhdGUucmVqZWN0LkludmFsaWQoeyBmaWVsZDogInRpdGxlIiwgbWVzc2FnZTogIkNob29zZSBhbm90aGVyIHRpdGxlIiB9KQoJCQkJOiBFZmZlY3Quc3luYygoKSA9PiB7CgkJCQkJCWNhbGxzLnB1c2goImNyZWF0ZSIpOwoJCQkJCQljb25zdCByb3cgPSB7IGlkOiByb3dzLmxlbmd0aCArIDEsIHRpdGxlOiB0aXRsZS50cmltKCksIHZlcnNpb246IDAsIHdvcmRDb3VudDogbnVsbCB9OwoJCQkJCQlyb3dzLnVuc2hpZnQocm93KTsKCQkJCQkJcmV0dXJuIHJvdzsKCQkJCQl9KSwKCQkibm90ZXMuZGVsZXRlIjogKGlucHV0KSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljYWxscy5wdXNoKCJkZWxldGUiKTsKCQkJCWNvbnN0IHJvdyA9IHlpZWxkKiBnZXQoaW5wdXQuaWQpOwoJCQkJaWYgKHJvdy52ZXJzaW9uICE9PSBpbnB1dC52ZXJzaW9uKSB7CgkJCQkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZmFpbChjb25mbGljdCgpKTsKCQkJCX0KCQkJCXJvd3Muc3BsaWNlKAoJCQkJCXJvd3MuZmluZEluZGV4KChub3RlKSA9PiBub3RlLmlkID09PSByb3cuaWQpLAoJCQkJCTEsCgkJCQkpOwoJCQl9KSwKCQkibm90ZXMuZ2V0IjogKHsgaWQgfSkgPT4KCQkJRWZmZWN0LnRhcChnZXQoaWQpLCAoKSA9PgoJCQkJRWZmZWN0LnN5bmMoKCkgPT4gewoJCQkJCWNhbGxzLnB1c2goImdldCIpOwoJCQkJfSksCgkJCSksCgkJIm5vdGVzLmxpc3QiOiAoKSA9PgoJCQlFZmZlY3Quc3luYygoKSA9PiB7CgkJCQljYWxscy5wdXNoKCJsaXN0Iik7CgkJCQlyZXR1cm4gWy4uLnJvd3NdOwoJCQl9KSwKCQkibm90ZXMuc3Vic2NyaWJlIjogKCkgPT4gU3RyZWFtLmZyb21QdWJTdWIoaGludHMpLAoJCSJub3Rlcy51cGRhdGUiOiAoaW5wdXQpID0+CgkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCWNhbGxzLnB1c2goInVwZGF0ZSIpOwoJCQkJY29uc3Qgcm93ID0geWllbGQqIGdldChpbnB1dC5pZCk7CgkJCQlpZiAocm93LnZlcnNpb24gIT09IGlucHV0LnZlcnNpb24pIHsKCQkJCQlyZXR1cm4geWllbGQqIEVmZmVjdC5mYWlsKGNvbmZsaWN0KCkpOwoJCQkJfQoJCQkJaWYgKGlucHV0LnRpdGxlLnRyaW0oKSA9PT0gInJlc2VydmVkIikgewoJCQkJCXJldHVybiB5aWVsZCogVXBkYXRlLnJlamVjdC5JbnZhbGlkKHsgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJDaG9vc2UgYW5vdGhlciB0aXRsZSIgfSk7CgkJCQl9CgkJCQljb25zdCBzYXZlZCA9IHsgLi4ucm93LCB0aXRsZTogaW5wdXQudGl0bGUudHJpbSgpLCB2ZXJzaW9uOiByb3cudmVyc2lvbiArIDEsIHdvcmRDb3VudDogbnVsbCB9OwoJCQkJcm93c1tyb3dzLmZpbmRJbmRleCgobm90ZSkgPT4gbm90ZS5pZCA9PT0gcm93LmlkKV0gPSBzYXZlZDsKCQkJCXJldHVybiBzYXZlZDsKCQkJfSksCgkJIm5vdGVzLndob2FtaSI6ICgpID0+IEVmZmVjdC5tYXAoU2Vzc2lvblVzZXIsICh1c2VyKSA9PiB1c2VyKSwKCX0pOwoJY2xhc3MgQ2xpZW50IGV4dGVuZHMgQXRvbVJwYy5TZXJ2aWNlPENsaWVudD4oKSgic3RhcnRlci9Ob3Rlc0NsaWVudCIsIHsKCQlncm91cDogTm90ZXMsCgkJbWFrZUVmZmVjdDogUnBjVGVzdC5tYWtlQ2xpZW50KE5vdGVzLCB7IGZsYXR0ZW46IHRydWUgfSksCgkJcHJvdG9jb2w6IGhhbmRsZXJzLnBpcGUoTGF5ZXIucHJvdmlkZU1lcmdlKGF1dGhlbnRpY2F0aW9uKSksCgl9KSB7fQoJY29uc3QgYXBpID0gYmluZChOb3RlcywgQ2xpZW50KTsKCWNvbnN0IHN1YnNjcmlwdGlvbiA9IGxpdmUoQ2xpZW50LnJ1bnRpbWUsIHsgcmVzeW5jS2V5czogU3Vic2NyaWJlLnJlYWRzKHVuZGVmaW5lZCksIHN0cmVhbTogYXBpLnN1YnNjcmliZS5ydW4odW5kZWZpbmVkKSB9KTsKCWZ1bmN0aW9uIGZpbmlzaE5vdGUoaWQ6IG51bWJlciwgd29yZENvdW50OiBudW1iZXIpIHsKCQljb25zdCBpbmRleCA9IHJvd3MuZmluZEluZGV4KChub3RlKSA9PiBub3RlLmlkID09PSBpZCk7CgkJY29uc3Qgcm93ID0gcm93c1tpbmRleF07CgkJaWYgKHJvdyAhPT0gdW5kZWZpbmVkKSB7CgkJCXJvd3NbaW5kZXhdID0geyAuLi5yb3csIHZlcnNpb246IHJvdy52ZXJzaW9uICsgMSwgd29yZENvdW50IH07CgkJfQoJCXJldHVybiBFZmZlY3QucnVuUHJvbWlzZShQdWJTdWIucHVibGlzaChoaW50cywgeyBfdGFnOiAiQ2hhbmdlZCIsIGtleXM6IFtub3Rlcy5pdGVtKGlkKV0gfSkpOwoJfQoJZnVuY3Rpb24gcmV2aXNlTm90ZShpZDogbnVtYmVyLCB0aXRsZTogc3RyaW5nLCBub3RpZnkgPSB0cnVlKSB7CgkJY29uc3QgaW5kZXggPSByb3dzLmZpbmRJbmRleCgobm90ZSkgPT4gbm90ZS5pZCA9PT0gaWQpOwoJCWNvbnN0IHJvdyA9IHJvd3NbaW5kZXhdOwoJCWlmIChyb3cgIT09IHVuZGVmaW5lZCkgewoJCQlyb3dzW2luZGV4XSA9IHsgLi4ucm93LCB0aXRsZSwgdmVyc2lvbjogcm93LnZlcnNpb24gKyAxIH07CgkJfQoJCXJldHVybiBub3RpZnkgPyBFZmZlY3QucnVuUHJvbWlzZShQdWJTdWIucHVibGlzaChoaW50cywgeyBfdGFnOiAiQ2hhbmdlZCIsIGtleXM6IFtub3Rlcy5pdGVtKGlkKV0gfSkpLnRoZW4oKCkgPT4gdW5kZWZpbmVkKSA6IFByb21pc2UucmVzb2x2ZSgpOwoJfQoJcmV0dXJuIHsgYXBpLCBjYWxscywgZmluaXNoTm90ZSwgcmV2aXNlTm90ZSwgcnVudGltZTogQ2xpZW50LnJ1bnRpbWUsIHNlc3Npb24sIC4uLnN1YnNjcmlwdGlvbiB9Owp9Cg==","path":"src/test-support/notesClient.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvYXV0aFByb3ZpZGVyKCkgewoJY29uc3QgcmVxdWVzdHM6IHsgcmVhZG9ubHkgbWV0aG9kOiBzdHJpbmcgfCB1bmRlZmluZWQ7IHJlYWRvbmx5IHBhdGg6IHN0cmluZzsgcmVhZG9ubHkgYm9keTogc3RyaW5nOyByZWFkb25seSBjb29raWU6IHN0cmluZyB8IHVuZGVmaW5lZCB9W10gPSBbXTsKCWNvbnN0IHNlcnZlciA9IGNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQljb25zdCB1cmwgPSBuZXcgVVJMKHJlcXVlc3QudXJsID8/ICIvIiwgImh0dHBzOi8vZ2l0aHViLmNvbSIpOwoJCWNvbnN0IGNodW5rczogQnVmZmVyW10gPSBbXTsKCQlmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIHJlcXVlc3QpIHsKCQkJY2h1bmtzLnB1c2goQnVmZmVyLmZyb20oY2h1bmspKTsKCQl9CgkJcmVxdWVzdHMucHVzaCh7IGJvZHk6IEJ1ZmZlci5jb25jYXQoY2h1bmtzKS50b1N0cmluZygpLCBjb29raWU6IHJlcXVlc3QuaGVhZGVycy5jb29raWUsIG1ldGhvZDogcmVxdWVzdC5tZXRob2QsIHBhdGg6IHVybC5wYXRobmFtZSB9KTsKCQlpZiAodXJsLnBhdGhuYW1lID09PSAiL2xvZ2luL29hdXRoL2F1dGhvcml6ZSIpIHsKCQkJY29uc3QgY2FsbGJhY2sgPSBuZXcgVVJMKHVybC5zZWFyY2hQYXJhbXMuZ2V0KCJyZWRpcmVjdF91cmkiKSA/PyAiIik7CgkJCWNhbGxiYWNrLnNlYXJjaFBhcmFtcy5zZXQoInN0YXRlIiwgdXJsLnNlYXJjaFBhcmFtcy5nZXQoInN0YXRlIikgPz8gIiIpOwoJCQljYWxsYmFjay5zZWFyY2hQYXJhbXMuc2V0KCJjb2RlIiwgInN0b3J5LWNvZGUiKTsKCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDMwMiwgeyBsb2NhdGlvbjogY2FsbGJhY2suaHJlZiB9KTsKCQkJcmVzcG9uc2UuZW5kKCk7CgkJCXJldHVybjsKCQl9CgkJcmVzcG9uc2Uuc2V0SGVhZGVyKCJjb250ZW50LXR5cGUiLCAiYXBwbGljYXRpb24vanNvbiIpOwoJCXN3aXRjaCAodXJsLnBhdGhuYW1lKSB7CgkJCWNhc2UgIi9sb2dpbi9vYXV0aC9hY2Nlc3NfdG9rZW4iOgoJCQkJcmVzcG9uc2UuZW5kKEpTT04uc3RyaW5naWZ5KHsgImFjY2Vzc190b2tlbiI6ICJzdG9yeS10b2tlbiIsIHNjb3BlOiAicmVhZDp1c2VyLHVzZXI6ZW1haWwiLCAidG9rZW5fdHlwZSI6ICJiZWFyZXIiIH0pKTsKCQkJCWJyZWFrOwoJCQljYXNlICIvdXNlciI6CgkJCQlyZXNwb25zZS5lbmQoSlNPTi5zdHJpbmdpZnkoeyAiYXZhdGFyX3VybCI6IG51bGwsIGVtYWlsOiAiYWxpY2VAc29jaWFsLnRlc3QiLCBpZDogMTIzLCBsb2dpbjogImFsaWNlIiwgbmFtZTogIkFsaWNlIiB9KSk7CgkJCQlicmVhazsKCQkJY2FzZSAiL3VzZXIvZW1haWxzIjoKCQkJCXJlc3BvbnNlLmVuZChKU09OLnN0cmluZ2lmeShbeyBlbWFpbDogImFsaWNlQHNvY2lhbC50ZXN0IiwgcHJpbWFyeTogdHJ1ZSwgdmVyaWZpZWQ6IHRydWUgfV0pKTsKCQkJCWJyZWFrOwoJCQlkZWZhdWx0OgoJCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDQwNCkuZW5kKCk7CgkJfQoJfSk7CglzZXJ2ZXIubGlzdGVuKDAsICIxMjcuMC4wLjEiKTsKCWF3YWl0IG9uY2Uoc2VydmVyLCAibGlzdGVuaW5nIik7Cgljb25zdCBhZGRyZXNzID0gc2VydmVyLmFkZHJlc3MoKTsKCWlmIChhZGRyZXNzID09PSBudWxsIHx8IHR5cGVvZiBhZGRyZXNzID09PSAic3RyaW5nIikgewoJCXRocm93IG5ldyBFcnJvcigiT0F1dGggcHJvdmlkZXIgbmVlZHMgYSBUQ1AgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gc2VydmVyLmNsb3NlKChlcnJvcikgPT4gKGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUoKSkpKSwKCQlyZXF1ZXN0cywKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/oauthProvider.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgcmVuZGVyIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvdGVzdGluZy50cyI7CmltcG9ydCB7IGFwcFJvdXRlciB9IGZyb20gIiNjbGllbnQvYXBwUm91dGVyLnRzeCI7CmltcG9ydCB7IG5vdGVzQ2xpZW50IH0gZnJvbSAiLi9ub3Rlc0NsaWVudC50cyI7CmltcG9ydCB7IHNjcmVlbkF1dGggfSBmcm9tICIuL3NjcmVlbkF1dGgudHMiOwoKZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9wZW5Ob3RlKHRlbGw6IChsaW5lOiBzdHJpbmcpID0+IHZvaWQpIHsKCWNvbnN0IGNsaWVudCA9IG5vdGVzQ2xpZW50KFt7IGlkOiAxLCB0aXRsZTogIkZpcnN0IG5vdGUiLCB2ZXJzaW9uOiAwLCB3b3JkQ291bnQ6IG51bGwgfV0pOwoJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7Cgljb25zdCByb3V0ZXIgPSBhcHBSb3V0ZXIodmlldy5yZWdpc3RyeSwgY2xpZW50LCBzY3JlZW5BdXRoKCksIGNyZWF0ZU1lbW9yeUhpc3RvcnkoeyBpbml0aWFsRW50cmllczogWyIvbm90ZXMvMSJdIH0pKTsKCWF3YWl0IHZpZXcucmVuZGVyKDxSb3V0ZXJQcm92aWRlciByb3V0ZXI9e3JvdXRlcn0gLz4pOwoJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIkZpcnN0IG5vdGUiKSk7Cglhc3luYyBmdW5jdGlvbiBlbnRlcih2YWx1ZTogc3RyaW5nKSB7CgkJdGVsbChgZW50ZXIgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9IGluIHRoZSB0aXRsZWApOwoJCWNvbnN0IGlucHV0ID0gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKTsKCQlpZiAoIShpbnB1dCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7CgkJCXRocm93IG5ldyBFcnJvcigiTWlzc2luZyB0aXRsZSBpbnB1dCIpOwoJCX0KCQlhd2FpdCBhY3QoKCkgPT4gewoJCQlPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEhUTUxJbnB1dEVsZW1lbnQucHJvdG90eXBlLCAidmFsdWUiKT8uc2V0Py5jYWxsKGlucHV0LCB2YWx1ZSk7CgkJCWlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIsIHsgYnViYmxlczogdHJ1ZSB9KSk7CgkJfSk7Cgl9Cglhc3luYyBmdW5jdGlvbiBjbGljayhsYWJlbDogc3RyaW5nKSB7CgkJdGVsbChgY2xpY2sgJHtsYWJlbH1gKTsKCQljb25zdCBidXR0b24gPSBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGNhbmRpZGF0ZSkgPT4gY2FuZGlkYXRlLnRleHRDb250ZW50ID09PSBsYWJlbCk7CgkJaWYgKGJ1dHRvbiA9PT0gdW5kZWZpbmVkKSB7CgkJCXRocm93IG5ldyBFcnJvcihgTWlzc2luZyAke2xhYmVsfSBidXR0b25gKTsKCQl9CgkJYXdhaXQgYWN0KCgpID0+IGJ1dHRvbi5jbGljaygpKTsKCX0KCXJldHVybiB7IGNsaWNrLCBjbGllbnQsIGVudGVyLCByb3V0ZXIsIHZpZXcgfTsKfQo=","path":"src/test-support/openNote.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvdGxwUmVjZWl2ZXIoc3RhdHVzID0gMjAwKSB7Cgljb25zdCByZXF1ZXN0czogeyBib2R5OiBzdHJpbmc7IHBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDsgdG9rZW46IHN0cmluZyB8IHVuZGVmaW5lZCB9W10gPSBbXTsKCWNvbnN0IHNlcnZlciA9IGNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQljb25zdCBjaHVua3M6IEJ1ZmZlcltdID0gW107CgkJZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiByZXF1ZXN0KSB7CgkJCWNodW5rcy5wdXNoKEJ1ZmZlci5mcm9tKGNodW5rKSk7CgkJfQoJCXJlcXVlc3RzLnB1c2goeyBib2R5OiBCdWZmZXIuY29uY2F0KGNodW5rcykudG9TdHJpbmcoKSwgcGF0aDogcmVxdWVzdC51cmwsIHRva2VuOiByZXF1ZXN0LmhlYWRlcnNbIngtY29sbGVjdG9yLXRva2VuIl0/LnRvU3RyaW5nKCkgfSk7CgkJcmVzcG9uc2Uud3JpdGVIZWFkKHN0YXR1cykuZW5kKCJ7fSIpOwoJfSk7Cglhd2FpdCBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4gc2VydmVyLmxpc3RlbigwLCAiMTI3LjAuMC4xIiwgcmVzb2x2ZSkpOwoJY29uc3QgYWRkcmVzcyA9IHNlcnZlci5hZGRyZXNzKCk7CglpZiAoYWRkcmVzcyA9PT0gbnVsbCB8fCB0eXBlb2YgYWRkcmVzcyA9PT0gInN0cmluZyIpIHsKCQl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgcmVjZWl2ZXIgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gc2VydmVyLmNsb3NlKChlcnJvcikgPT4gKGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUoKSkpKSwKCQlyZXF1ZXN0cywKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/otlpReceiver.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTWlncmF0b3IgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgbWFrZVBvc3RncmVzVGVzdExheWVyIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvcG9zdGdyZXMudHMiOwoKZXhwb3J0IGNvbnN0IHBvc3RncmVzID0gTGF5ZXIudW53cmFwKAoJRWZmZWN0Lm1hcChDb25maWcuUmVkYWN0ZWQoIlBMQVRGT1JNX0VGRkVDVF9TUUxfVEVTVF9EQVRBQkFTRV9VUkwiKS5waXBlKENvbmZpZy5vckVsc2UoKCkgPT4gQ29uZmlnLlJlZGFjdGVkKCJURVNUX0RBVEFCQVNFX1VSTCIpKSksICh1cmwpID0+CgkJbWFrZVBvc3RncmVzVGVzdExheWVyKHsgbWlncmF0aW9uczogeyBsb2FkZXI6IE1pZ3JhdG9yLmZyb21SZWNvcmQoe30pLCBsb2NrVGltZW91dDogIjUgc2Vjb25kcyIgfSwgdXJsIH0pLAoJKSwKKTsK","path":"src/test-support/postgres.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXV0aFBvc3QsIGNyZWRlbnRpYWxzLCBub3Rlc0h0dHAgfSBmcm9tICIuL2F1dGhIdHRwLnRzIjsKaW1wb3J0IHR5cGUgeyBSdW5uaW5nSG9zdCB9IGZyb20gIi4vaG9zdC50cyI7CgpleHBvcnQgZnVuY3Rpb24gcmVxdWVzdHMoaG9zdDogUnVubmluZ0hvc3QsIHRlbGw6IChsaW5lOiBzdHJpbmcpID0+IHZvaWQpIHsKCWNvbnN0IGF1dGhlbnRpY2F0ZSA9IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LmF1dGhlbnRpY2F0ZSIpKGZ1bmN0aW9uKiAobmFtZTogc3RyaW5nLCBwYXRoID0gInNpZ24tdXAvZW1haWwiLCBjb29raWUgPSAiIikgewoJCXRlbGwoYCR7bmFtZX0gY2FsbHMgJHtwYXRofWApOwoJCXJldHVybiB5aWVsZCogYXV0aFBvc3QoaG9zdC5iYXNlVXJsLCBwYXRoLCBwYXRoID09PSAic2lnbi1vdXQiID8ge30gOiBjcmVkZW50aWFscyhuYW1lKSwgY29va2llLCBob3N0Lm9yaWdpbik7Cgl9KTsKCWNvbnN0IG5vdGVzID0gRWZmZWN0LmZuKCJTdGFydGVyU3Rvcnkubm90ZXMiKShmdW5jdGlvbiogKGNvb2tpZSA9ICIiKSB7CgkJY29uc3QgY2xpZW50ID0geWllbGQqIG5vdGVzSHR0cChob3N0LmJhc2VVcmwsIGNvb2tpZSwgaG9zdC5vcmlnaW4pOwoJCWZ1bmN0aW9uIGNhbGw8QSwgRSwgUj4obGluZTogc3RyaW5nLCBlZmZlY3Q6IEVmZmVjdC5FZmZlY3Q8QSwgRSwgUj4pIHsKCQkJcmV0dXJuIEVmZmVjdC5zdXNwZW5kKCgpID0+IHsKCQkJCXRlbGwobGluZSk7CgkJCQlyZXR1cm4gZWZmZWN0OwoJCQl9KTsKCQl9CgkJcmV0dXJuIHsKCQkJY3JlYXRlOiAoaW5wdXQ6IFBhcmFtZXRlcnM8KHR5cGVvZiBjbGllbnQpWyJub3Rlcy5jcmVhdGUiXT5bMF0pID0+CgkJCQljYWxsKGBjcmVhdGUgbm90ZSAke0pTT04uc3RyaW5naWZ5KGlucHV0LnRpdGxlKX1gLCBjbGllbnRbIm5vdGVzLmNyZWF0ZSJdKGlucHV0KSksCgkJCWRlbGV0ZTogKGlucHV0OiBQYXJhbWV0ZXJzPCh0eXBlb2YgY2xpZW50KVsibm90ZXMuZGVsZXRlIl0+WzBdKSA9PgoJCQkJY2FsbChgZGVsZXRlIG5vdGUgJHtpbnB1dC5pZH0gYXQgdmVyc2lvbiAke2lucHV0LnZlcnNpb259YCwgY2xpZW50WyJub3Rlcy5kZWxldGUiXShpbnB1dCkpLAoJCQlnZXQ6IChpbnB1dDogUGFyYW1ldGVyczwodHlwZW9mIGNsaWVudClbIm5vdGVzLmdldCJdPlswXSkgPT4gY2FsbChgb3BlbiBub3RlICR7aW5wdXQuaWR9YCwgY2xpZW50WyJub3Rlcy5nZXQiXShpbnB1dCkpLAoJCQlsaXN0OiAoKSA9PiBjYWxsKCJsaXN0IG5vdGVzIiwgY2xpZW50WyJub3Rlcy5saXN0Il0oKSksCgkJCXVwZGF0ZTogKGlucHV0OiBQYXJhbWV0ZXJzPCh0eXBlb2YgY2xpZW50KVsibm90ZXMudXBkYXRlIl0+WzBdKSA9PgoJCQkJY2FsbChgZWRpdCBub3RlICR7aW5wdXQuaWR9IGF0IHZlcnNpb24gJHtpbnB1dC52ZXJzaW9ufWAsIGNsaWVudFsibm90ZXMudXBkYXRlIl0oaW5wdXQpKSwKCQkJd2hvYW1pOiAoKSA9PiBjYWxsKCJyZWFkIHRoZSBzaWduZWQtaW4gcHJvZmlsZSIsIGNsaWVudFsibm90ZXMud2hvYW1pIl0oKSksCgkJfTsKCX0pOwoJY29uc3QgZm9yZWlnblJlcXVlc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5mb3JlaWduUmVxdWVzdCIpKGZ1bmN0aW9uKiAoY29va2llOiBzdHJpbmcpIHsKCQl0ZWxsKCJhIGZvcmVpZ24gb3JpZ2luIGNhbGxzIHByb3RlY3RlZCBSUEMiKTsKCQljb25zdCByZXNwb25zZSA9IHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQlmZXRjaChgJHtob3N0LmJhc2VVcmx9L3JwY2AsIHsKCQkJCWJvZHk6ICJbXSIsCgkJCQloZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vbmRqc29uIiwgY29va2llLCBvcmlnaW46ICJodHRwczovL2ZvcmVpZ24uZXhhbXBsZSIgfSwKCQkJCW1ldGhvZDogIlBPU1QiLAoJCQl9KSwKCQkpOwoJCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoNDAzKTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVzcG9uc2UudGV4dCgpKTsKCX0pOwoJcmV0dXJuIHsgYXV0aGVudGljYXRlLCBmb3JlaWduUmVxdWVzdCwgbm90ZXMgfTsKfQo=","path":"src/test-support/requests.ts"},{"content":"aW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwoKZXhwb3J0IGZ1bmN0aW9uIHNjcmVlbkFjdGlvbnModGVsbDogKGxpbmU6IHN0cmluZykgPT4gdm9pZCkgewoJcmV0dXJuIHsKCQllbnRlcjogYXN5bmMgKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogc3RyaW5nKSA9PiB7CgkJCXRlbGwoYGVudGVyICR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSBpbiAke2xhYmVsID8/ICJ0aGUgdGl0bGUifWApOwoJCQljb25zdCBmaWVsZCA9IGxhYmVsID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBbLi4uY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwoImxhYmVsIildLmZpbmQoKGVsZW1lbnQpID0+IGVsZW1lbnQudGV4dENvbnRlbnQgPT09IGxhYmVsKTsKCQkJY29uc3QgaW5wdXQgPSBsYWJlbCA9PT0gdW5kZWZpbmVkID8gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikgOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChmaWVsZD8uaHRtbEZvciA/PyAiIik7CgkJCWlmICghKGlucHV0IGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCkpIHsKCQkJCXRocm93IG5ldyBFcnJvcihgTWlzc2luZyAke2xhYmVsID8/ICJ0aXRsZSJ9IGlucHV0YCk7CgkJCX0KCQkJYXdhaXQgYWN0KCgpID0+IHsKCQkJCU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSFRNTElucHV0RWxlbWVudC5wcm90b3R5cGUsICJ2YWx1ZSIpPy5zZXQ/LmNhbGwoaW5wdXQsIHZhbHVlKTsKCQkJCWlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIsIHsgYnViYmxlczogdHJ1ZSB9KSk7CgkJCX0pOwoJCX0sCgkJc3VibWl0OiBhc3luYyAoY29udGFpbmVyOiBIVE1MRWxlbWVudCkgPT4gewoJCQl0ZWxsKCJzdWJtaXQgdGhlIGZvcm0iKTsKCQkJY29uc3QgZm9ybSA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJmb3JtIik7CgkJCWlmIChmb3JtID09PSBudWxsKSB7CgkJCQl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgZm9ybSIpOwoJCQl9CgkJCWF3YWl0IGFjdChhc3luYyAoKSA9PiB7CgkJCQlmb3JtLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJzdWJtaXQiLCB7IGJ1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUgfSkpOwoJCQkJYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7CgkJCX0pOwoJCX0sCgl9Owp9Cg==","path":"src/test-support/screenActions.ts"},{"content":"aW1wb3J0IHR5cGUgeyBBdXRoQWN0aW9ucyB9IGZyb20gIiNjbGllbnQvYXV0aC50cyI7CgpleHBvcnQgZnVuY3Rpb24gc2NyZWVuQXV0aCgpOiBBdXRoQWN0aW9ucyB7CglmdW5jdGlvbiB1bmF2YWlsYWJsZSgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4gewoJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIlRoaXMgc2NyZWVuIGZpeHR1cmUgZG9lcyBub3QgcHJvdmlkZSBhdXRoZW50aWNhdGlvbiIpKTsKCX0KCXJldHVybiB7IHNpZ25PdXQ6IHVuYXZhaWxhYmxlLCBzdWJtaXQ6IHVuYXZhaWxhYmxlIH07Cn0K","path":"src/test-support/screenAuth.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBvcGVuTm90ZSB9IGZyb20gIi4vb3Blbk5vdGUudHN4IjsKaW1wb3J0IHsgc2NyZWVuQWN0aW9ucyB9IGZyb20gIi4vc2NyZWVuQWN0aW9ucy50cyI7CgppbnRlcmZhY2UgU2NyZWVuIHsKCWVkaXRvcjogQXdhaXRlZDxSZXR1cm5UeXBlPHR5cGVvZiBvcGVuTm90ZT4+IHwgdW5kZWZpbmVkOwoJdGVsbDogKGxpbmU6IHN0cmluZykgPT4gdm9pZDsKfQoKZXhwb3J0IGNvbnN0IHNjcmVlbnMgPSBzdG9yeUtpdCh7CgljbG9jazogImxpdmUiLAoJY3JlYXRlOiAoKTogU2NyZWVuID0+ICh7IGVkaXRvcjogdW5kZWZpbmVkLCB0ZWxsOiAoKSA9PiB1bmRlZmluZWQgfSksCglpbnNwZWN0OiAoZW5naW5lKSA9PiAoeyB0ZXh0OiBlbmdpbmUuZWRpdG9yPy52aWV3LmNvbnRhaW5lci50ZXh0Q29udGVudCB9KSwKCW5hbWU6ICJzdGFydGVyIHNjcmVlbiIsCglzdGFnZXM6IFsic2NyZWVuIl0sCgl2ZXJiczogKGVuZ2luZSwgc3RvcnkpID0+IHsKCQllbmdpbmUudGVsbCA9IHN0b3J5LnRlbGw7CgkJcmV0dXJuIHsKCQkJZWRpdG9yOiAoKSA9PiB7CgkJCQlpZiAoZW5naW5lLmVkaXRvciA9PT0gdW5kZWZpbmVkKSB7CgkJCQkJdGhyb3cgbmV3IEVycm9yKCJUaGUgZWRpdG9yIGlzIG5vdCBvcGVuIik7CgkJCQl9CgkJCQlyZXR1cm4gZW5naW5lLmVkaXRvcjsKCQkJfSwKCQkJaW50ZXJhY3Q6IChydW46ICgpID0+IFByb21pc2U8dm9pZD4pID0+IEVmZmVjdC5wcm9taXNlKHJ1biksCgkJCS4uLnNjcmVlbkFjdGlvbnMoc3RvcnkudGVsbCksCgkJfTsKCX0sCn0pOwoKZXhwb3J0IGZ1bmN0aW9uIGVkaXRpbmdOb3RlKCkgewoJcmV0dXJuIHNjcmVlbnMudHJhaXQoInNjcmVlbiIsICJ0aGUgZmlyc3Qgbm90ZSBpcyBvcGVuIGluIHRoZSBlZGl0b3IiLCBmdW5jdGlvbiogKGVuZ2luZSkgewoJCWVuZ2luZS5lZGl0b3IgPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gb3Blbk5vdGUoKGxpbmUpID0+IGVuZ2luZS50ZWxsKGxpbmUpKSk7Cgl9KTsKfQo=","path":"src/test-support/screens.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgYWZ0ZXJBbGwsIGJlZm9yZUFsbCwgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBkb21GZXRjaCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9kb21GZXRjaC50cyI7CmltcG9ydCB7IGRvbU5hdmlnYXRlIH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L2RvbU5hdmlnYXRlLnRzIjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBvYXV0aFByb3ZpZGVyIH0gZnJvbSAiLi9vYXV0aFByb3ZpZGVyLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIuL3Bvc3RncmVzLnRzIjsKaW1wb3J0IHsgc29jaWFsSG9zdCB9IGZyb20gIi4vc29jaWFsSG9zdC50cyI7CmltcG9ydCB7IHNvY2lhbFNjcmVlbiB9IGZyb20gIi4vc29jaWFsU2NyZWVuLnRzeCI7Cgpjb25zdCBvdXRib3VuZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9OwpsZXQgcHJvdmlkZXI6IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2Ygb2F1dGhQcm92aWRlcj4+OwpiZWZvcmVBbGwoYXN5bmMgKCkgPT4gewoJcHJvdmlkZXIgPSBhd2FpdCBvYXV0aFByb3ZpZGVyKCk7CglPYmplY3QuYXNzaWduKG91dGJvdW5kLCB7ICJhcGkuZ2l0aHViLmNvbSI6IHByb3ZpZGVyLnVybCwgImdpdGh1Yi5jb20iOiBwcm92aWRlci51cmwgfSk7Cn0pOwphZnRlckFsbChhc3luYyAoKSA9PiBwcm92aWRlci5jbG9zZSgpKTsKCmV4cG9ydCBjb25zdCBzb2NpYWxBcHAgPSBzdG9yeUtpdCh7Cglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCSpjcmVhdGUoKSB7CgkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJY29uc3QgaG9zdCA9IHlpZWxkKiBzb2NpYWxIb3N0KGRhdGFiYXNlLnVybCk7CgkJY29uc3QgcHJldmlvdXNMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmOwoJCXlpZWxkKiBFZmZlY3QuYWRkRmluYWxpemVyKCgpID0+CgkJCUVmZmVjdC5zeW5jKCgpID0+IHsKCQkJCXdpbmRvdy5sb2NhdGlvbi5ocmVmID0gcHJldmlvdXNMb2NhdGlvbjsKCQkJfSksCgkJKTsKCQljb25zdCBmZXRjaCA9IGRvbUZldGNoKGhvc3QuYmFzZVVybCk7CgkJY29uc3Qgc2NyZWVuID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gc29jaWFsU2NyZWVuKGhvc3QuYmFzZVVybCwgZmV0Y2gpKSwKCQkJKG1vdW50ZWQpID0+IEVmZmVjdC5wcm9taXNlKCgpID0+IG1vdW50ZWQuY2xvc2UoKSksCgkJKTsKCQlyZXR1cm4geyAuLi5ob3N0LCBmZXRjaCwgc2NyZWVuIH07Cgl9LAoJaW5zcGVjdDogKCkgPT4gKHsgbG9jYXRpb246IHdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pLAoJbGF5ZXI6IHBvc3RncmVzLAoJbmFtZTogInNvY2lhbCBhdXRoIiwKCW91dGJvdW5kLAoJc3RhZ2VzOiBbImFjY291bnQiXSwKCXZlcmJzOiAoeyBiYXNlVXJsLCBmZXRjaCwgcG9vbCwgc2NyZWVuIH0sIHN0b3J5KSA9PiAoewoJCXNpZ25lZEluUGFnZUlzOiAoZW1haWw6IHN0cmluZykgPT4KCQkJRWZmZWN0LnByb21pc2UoYXN5bmMgKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2VlcyBoZXIgc2lnbmVkLWluIHBhZ2UgYW5kIHJlYWRzIGhlciBjb29raWUgc2Vzc2lvbiIpOwoJCQkJZXhwZWN0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImgxIik/LnRleHRDb250ZW50KS50b0JlKGBTaWduZWQgaW4gYXMgJHtlbWFpbH1gKTsKCQkJCWV4cGVjdChkb2N1bWVudC5jb29raWUpLm5vdC50b0NvbnRhaW4oInNlc3Npb25fdG9rZW4iKTsKCQkJCWV4cGVjdChhd2FpdCAoYXdhaXQgZmV0Y2goIi9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIpKS5qc29uKCkpLnRvTWF0Y2hPYmplY3QoeyB1c2VyOiB7IGVtYWlsIH0gfSk7CgkJCQlleHBlY3QoKGF3YWl0IHBvb2wucXVlcnkoJ3NlbGVjdCAiZW1haWwiIGZyb20gInVzZXIiJykpLnJvd3MpLnRvRXF1YWwoW3sgZW1haWwgfV0pOwoJCQkJZXhwZWN0KChhd2FpdCBwb29sLnF1ZXJ5KCdzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tICJzZXNzaW9uIicpKS5yb3dzKS50b0VxdWFsKFt7IGNvdW50OiAxIH1dKTsKCQkJCWV4cGVjdChwcm92aWRlci5yZXF1ZXN0cy5tYXAoKHsgbWV0aG9kLCBwYXRoIH0pID0+IGAke21ldGhvZH0gJHtwYXRofWApKS50b0VxdWFsKFsKCQkJCQkiR0VUIC9sb2dpbi9vYXV0aC9hdXRob3JpemUiLAoJCQkJCSJQT1NUIC9sb2dpbi9vYXV0aC9hY2Nlc3NfdG9rZW4iLAoJCQkJCSJHRVQgL3VzZXIiLAoJCQkJCSJHRVQgL3VzZXIvZW1haWxzIiwKCQkJCV0pOwoJCQkJZXhwZWN0KHByb3ZpZGVyLnJlcXVlc3RzWzFdPy5ib2R5KS50b0NvbnRhaW4oImNvZGU9c3RvcnktY29kZSIpOwoJCQkJZXhwZWN0KHByb3ZpZGVyLnJlcXVlc3RzLmV2ZXJ5KCh7IGNvb2tpZSB9KSA9PiBjb29raWUgPT09IHVuZGVmaW5lZCkpLnRvQmUodHJ1ZSk7CgkJCX0pLAoJCXNpZ25JbldpdGhHaXRIdWI6ICgpID0+CgkJCUVmZmVjdC5wcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCXN0b3J5LnRlbGwoIkFsaWNlIGNsaWNrcyBTaWduIGluIHdpdGggR2l0SHViIik7CgkJCQlhd2FpdCBzY3JlZW4uY2xpY2soKTsKCQkJCWV4cGVjdCh3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpLnRvQmUoImdpdGh1Yi5jb20iKTsKCQkJCWNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZG9tTmF2aWdhdGUoKTsKCQkJCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoMjAwKTsKCQkJCWV4cGVjdChyZXNwb25zZS5yZWRpcmVjdGVkKS50b0JlKHRydWUpOwoJCQkJZXhwZWN0KGF3YWl0IHJlc3BvbnNlLnRleHQoKSkudG9Db250YWluKCJTaWduZWQgaW4gYXMgYWxpY2VAc29jaWFsLnRlc3QiKTsKCQkJCWV4cGVjdCh3aW5kb3cubG9jYXRpb24uaHJlZikudG9CZShgJHtiYXNlVXJsfS9zaWduZWQtaW5gKTsKCQkJfSksCgl9KSwKfSk7Cg==","path":"src/test-support/socialApp.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKaW1wb3J0IHsgYmV0dGVyQXV0aCB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gImJldHRlci1hdXRoL2RiL21pZ3JhdGlvbiI7CmltcG9ydCB7IGZyb21Ob2RlSGVhZGVycywgdG9Ob2RlSGFuZGxlciB9IGZyb20gImJldHRlci1hdXRoL25vZGUiOwppbXBvcnQgeyBFZmZlY3QsIHR5cGUgUmVkYWN0ZWQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBhdXRoRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL2F1dGhEYXRhYmFzZS50cyI7CgpleHBvcnQgY29uc3Qgc29jaWFsSG9zdCA9IEVmZmVjdC5mbigiU29jaWFsU3Rvcnkuc29jaWFsSG9zdCIpKGZ1bmN0aW9uKiAoZGF0YWJhc2VVcmw6IFJlZGFjdGVkLlJlZGFjdGVkPHN0cmluZz4pIHsKCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlVXJsKTsKCWNvbnN0IGF1dGggPSBiZXR0ZXJBdXRoKHsKCQlhZHZhbmNlZDogeyB1c2VTZWN1cmVDb29raWVzOiBmYWxzZSB9LAoJCSJiYXNlVVJMIjogeyBhbGxvd2VkSG9zdHM6IFsiMTI3LjAuMC4xOioiXSwgcHJvdG9jb2w6ICJodHRwIiB9LAoJCWRhdGFiYXNlOiBwb29sLAoJCXNlY3JldDogInNvY2lhbC1zdG9yeS1zZWNyZXQtd2l0aC1hdC1sZWFzdC0zMi1jaGFyYWN0ZXJzIiwKCQlzb2NpYWxQcm92aWRlcnM6IHsgZ2l0aHViOiB7IGNsaWVudElkOiAic3RvcnktY2xpZW50IiwgY2xpZW50U2VjcmV0OiAic3Rvcnktc2VjcmV0IiB9IH0sCgkJdHJ1c3RlZE9yaWdpbnM6IFsiaHR0cDovLzEyNy4wLjAuMToqIl0sCgl9KTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJYXdhaXQgKGF3YWl0IGdldE1pZ3JhdGlvbnMoYXV0aC5vcHRpb25zKSkucnVuTWlncmF0aW9ucygpOwoJfSk7Cgljb25zdCBzZXJ2ZXIgPSB5aWVsZCogRWZmZWN0LmFjcXVpcmVSZWxlYXNlKAoJCUVmZmVjdC5zeW5jKCgpID0+CgkJCWNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQkJCWlmIChyZXF1ZXN0LnVybD8uc3RhcnRzV2l0aCgiL2FwaS9hdXRoLyIpKSB7CgkJCQkJYXdhaXQgdG9Ob2RlSGFuZGxlcihhdXRoKShyZXF1ZXN0LCByZXNwb25zZSk7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJY29uc3Qgc2Vzc2lvbiA9IGF3YWl0IGF1dGguYXBpLmdldFNlc3Npb24oeyBoZWFkZXJzOiBmcm9tTm9kZUhlYWRlcnMocmVxdWVzdC5oZWFkZXJzKSB9KTsKCQkJCXJlc3BvbnNlLnNldEhlYWRlcigiY29udGVudC10eXBlIiwgInRleHQvaHRtbCIpOwoJCQkJcmVzcG9uc2UuZW5kKGA8bWFpbj48aDE+JHtzZXNzaW9uID09PSBudWxsID8gIlNpZ24gaW4iIDogYFNpZ25lZCBpbiBhcyAke3Nlc3Npb24udXNlci5lbWFpbH1gfTwvaDE+PC9tYWluPmApOwoJCQl9KSwKCQkpLAoJCShsaXN0ZW5pbmcpID0+IEVmZmVjdC5wcm9taXNlKCgpID0+IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IGxpc3RlbmluZy5jbG9zZSgoZXJyb3IpID0+IChlcnJvciA/IHJlamVjdChlcnJvcikgOiByZXNvbHZlKCkpKSkpLAoJKTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJc2VydmVyLmxpc3RlbigwLCAiMTI3LjAuMC4xIik7CgkJYXdhaXQgb25jZShzZXJ2ZXIsICJsaXN0ZW5pbmciKTsKCX0pOwoJY29uc3QgYWRkcmVzcyA9IHNlcnZlci5hZGRyZXNzKCk7CglpZiAoYWRkcmVzcyA9PT0gbnVsbCB8fCB0eXBlb2YgYWRkcmVzcyA9PT0gInN0cmluZyIpIHsKCQlyZXR1cm4geWllbGQqIEVmZmVjdC5kaWUoIlNvY2lhbCBzdG9yeSBob3N0IG5lZWRzIGEgVENQIGFkZHJlc3MiKTsKCX0KCXJldHVybiB7IGJhc2VVcmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsIHBvb2wgfTsKfSk7Cg==","path":"src/test-support/socialHost.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlQXV0aENsaWVudCB9IGZyb20gImJldHRlci1hdXRoL3JlYWN0IjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBjcmVhdGVSb290IH0gZnJvbSAicmVhY3QtZG9tL2NsaWVudCI7CgpleHBvcnQgYXN5bmMgZnVuY3Rpb24gc29jaWFsU2NyZWVuKGJhc2VVcmw6IHN0cmluZywgZmV0Y2g6IHR5cGVvZiBnbG9iYWxUaGlzLmZldGNoKSB7Cgljb25zdCBjbGllbnQgPSBjcmVhdGVBdXRoQ2xpZW50KHsgImJhc2VVUkwiOiBiYXNlVXJsLCBmZXRjaE9wdGlvbnM6IHsgY3VzdG9tRmV0Y2hJbXBsOiBmZXRjaCB9IH0pOwoJY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Cglkb2N1bWVudC5ib2R5LmFwcGVuZChjb250YWluZXIpOwoJY29uc3Qgcm9vdCA9IGNyZWF0ZVJvb3QoY29udGFpbmVyKTsKCWxldCBwZW5kaW5nOiBSZXR1cm5UeXBlPHR5cGVvZiBjbGllbnQuc2lnbkluLnNvY2lhbD4gfCB1bmRlZmluZWQ7Cglhd2FpdCBhY3QoYXN5bmMgKCkgPT4KCQlyb290LnJlbmRlcigKCQkJPGJ1dHRvbgoJCQkJb25DbGljaz17KCkgPT4gewoJCQkJCXBlbmRpbmcgPSBjbGllbnQuc2lnbkluLnNvY2lhbCh7ICJjYWxsYmFja1VSTCI6IGAke2Jhc2VVcmx9L3NpZ25lZC1pbmAsIHByb3ZpZGVyOiAiZ2l0aHViIiB9KTsKCQkJCX19CgkJCQl0eXBlPSJidXR0b24iCgkJCT4KCQkJCVNpZ24gaW4gd2l0aCBHaXRIdWIKCQkJPC9idXR0b24+LAoJCSksCgkpOwoJcmV0dXJuIHsKCQlhc3luYyBjbGljaygpIHsKCQkJYXdhaXQgYWN0KGFzeW5jICgpID0+IHsKCQkJCWNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJidXR0b24iKT8uY2xpY2soKTsKCQkJCWNvbnN0IHJlc3VsdCA9IGF3YWl0IHBlbmRpbmc7CgkJCQlpZiAocmVzdWx0Py5lcnJvciAhPT0gbnVsbCkgewoJCQkJCXRocm93IG5ldyBFcnJvcihgU29jaWFsIHNpZ24taW4gZmFpbGVkOiAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7CgkJCQl9CgkJCX0pOwoJCX0sCgkJYXN5bmMgY2xvc2UoKSB7CgkJCWF3YWl0IGFjdChhc3luYyAoKSA9PiByb290LnVubW91bnQoKSk7CgkJCWNvbnRhaW5lci5yZW1vdmUoKTsKCQl9LAoJfTsKfQo=","path":"src/test-support/socialScreen.tsx"},{"content":"ewoJImNvbXBpbGVyT3B0aW9ucyI6IHsKCQkiY3VzdG9tQ29uZGl0aW9ucyI6IFtdLAoJCSJqc3giOiAicmVhY3QtanN4IiwKCQkibGliIjogWyJFU05leHQiLCAiRE9NIiwgIkRPTS5JdGVyYWJsZSJdLAoJCSJza2lwTGliQ2hlY2siOiB0cnVlLAoJCSJ0eXBlcyI6IFsibm9kZSIsICJyZWFjdCIsICJyZWFjdC1kb20iXQoJfSwKCSJleHRlbmRzIjogIkBzaGl2YWVkZXYvcXVhbGl0eS90c2NvbmZpZy9iYXNlLmpzb24iLAoJImluY2x1ZGUiOiBbInNyYyIsICJzY3JpcHQiLCAiLnJhaWx3YXkiLCAidml0ZS5jb25maWcudHMiLCAidml0ZXN0LmNvbmZpZy50cyJdCn0K","path":"tsconfig.json"},{"content":"aW1wb3J0IHRhaWx3aW5kY3NzIGZyb20gIkB0YWlsd2luZGNzcy92aXRlIjsKaW1wb3J0IHJlYWN0IGZyb20gIkB2aXRlanMvcGx1Z2luLXJlYWN0IjsKaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAidml0ZSI7CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoewoJcGx1Z2luczogW3RhaWx3aW5kY3NzKCksIHJlYWN0KCldLAoJcmVzb2x2ZTogeyBjb25kaXRpb25zOiBbXSwgdHNjb25maWdQYXRoczogdHJ1ZSB9LAoJc2VydmVyOiB7CgkJaG9zdDogIjEyNy4wLjAuMSIsCgkJcG9ydDogNTE3MywKCQlwcm94eTogewoJCQkiL2FwaS9hdXRoIjogeyBjaGFuZ2VPcmlnaW46IGZhbHNlLCB0YXJnZXQ6ICJodHRwOi8vMTI3LjAuMC4xOjMwMDAiIH0sCgkJCSIvcnBjIjogeyBjaGFuZ2VPcmlnaW46IGZhbHNlLCB0YXJnZXQ6ICJodHRwOi8vMTI3LjAuMC4xOjMwMDAiIH0sCgkJfSwKCQlzdHJpY3RQb3J0OiB0cnVlLAoJfSwKfSk7Cg==","path":"vite.config.ts"},{"content":"aW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gIm5vZGU6dXJsIjsKaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAidml0ZXN0L2NvbmZpZyI7CmltcG9ydCB7IHRlc3RQcm9qZWN0cyB9IGZyb20gIkBzaGl2YWVkZXYvcXVhbGl0eS90ZXN0UHJvamVjdHMudHMiOwoKY29uc3QgdGVzdCA9IHRlc3RQcm9qZWN0cygpOwpmb3IgKGNvbnN0IHByb2plY3Qgb2YgdGVzdC5wcm9qZWN0cyA/PyBbXSkgewoJaWYgKHR5cGVvZiBwcm9qZWN0ID09PSAib2JqZWN0IiAmJiAidGVzdCIgaW4gcHJvamVjdCAmJiBwcm9qZWN0LnRlc3Q/Lm5hbWUgPT09ICJkb20iKSB7CgkJcHJvamVjdC50ZXN0LmVudmlyb25tZW50ID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS5yZXNvbHZlKCJAc2hpdmFlZGV2L3Rlc3Qtc3RvcnkvZG9tRW52aXJvbm1lbnQuY29uZmlnLnRzIikpOwoJfQp9CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoewoJcmVzb2x2ZTogeyBjb25kaXRpb25zOiBbIm1vZHVsZSIsICJicm93c2VyIiwgImRldmVsb3BtZW50fHByb2R1Y3Rpb24iXSB9LAoJc3NyOiB7IHJlc29sdmU6IHsgY29uZGl0aW9uczogWyJub2RlIiwgImRldmVsb3BtZW50fHByb2R1Y3Rpb24iXSB9IH0sCgl0ZXN0OiB7IC4uLnRlc3QsIHNlcnZlcjogeyBkZXBzOiB7IGlubGluZTogWyJiZXR0ZXItYXV0aCJdIH0gfSB9LAp9KTsK","path":"vitest.config.ts"}]
1
+ [{"content":"REFUQUJBU0VfVVJMPXBvc3RncmVzcWw6Ly9wb3N0Z3Jlczpwb3N0Z3Jlc0AxMjcuMC4wLjE6NTU0MzIvc3RhcnRlcl9kZXYKVEVTVF9EQVRBQkFTRV9VUkw9cG9zdGdyZXNxbDovL3Bvc3RncmVzOnBvc3RncmVzQDEyNy4wLjAuMTo1NTQzMi9zdGFydGVyX3Rlc3QKQkVUVEVSX0FVVEhfU0VDUkVUPXJlcGxhY2Utd2l0aC1hLXJhbmRvbS1zZWNyZXQtb2YtYXQtbGVhc3QtMzItY2hhcmFjdGVycwpBVVRIX1JBVEVfTElNSVRfRU5BQkxFRD10cnVlCiMgUFVCTElDX1VSTD1odHRwczovL2FwcC5leGFtcGxlCg==","path":".env.example"},{"content":"bmFtZTogQ0kKCm9uOgogIHB1c2g6CiAgcHVsbF9yZXF1ZXN0OgoKcGVybWlzc2lvbnM6CiAgY29udGVudHM6IHJlYWQKCmpvYnM6CiAgY2hlY2s6CiAgICBydW5zLW9uOiB1YnVudHUtbGF0ZXN0CiAgICB0aW1lb3V0LW1pbnV0ZXM6IDEwCiAgICBzZXJ2aWNlczoKICAgICAgcG9zdGdyZXM6CiAgICAgICAgaW1hZ2U6IHBvc3RncmVzOjE4CiAgICAgICAgZW52OgogICAgICAgICAgUE9TVEdSRVNfVVNFUjogcG9zdGdyZXMKICAgICAgICAgIFBPU1RHUkVTX1BBU1NXT1JEOiBwb3N0Z3JlcwogICAgICAgICAgUE9TVEdSRVNfREI6IGFwcF90ZXN0CiAgICAgICAgcG9ydHM6CiAgICAgICAgICAtIDU0MzI6NTQzMgogICAgICAgIG9wdGlvbnM6ID4tCiAgICAgICAgICAtLWhlYWx0aC1jbWQgcGdfaXNyZWFkeQogICAgICAgICAgLS1oZWFsdGgtaW50ZXJ2YWwgMTBzCiAgICAgICAgICAtLWhlYWx0aC10aW1lb3V0IDVzCiAgICAgICAgICAtLWhlYWx0aC1yZXRyaWVzIDUKICAgIGVudjoKICAgICAgVEVTVF9EQVRBQkFTRV9VUkw6IHBvc3RncmVzOi8vcG9zdGdyZXM6cG9zdGdyZXNAbG9jYWxob3N0OjU0MzIvYXBwX3Rlc3QKICAgIHN0ZXBzOgogICAgICAtIHVzZXM6IGFjdGlvbnMvY2hlY2tvdXRAM2QzYzQyZTVhYWM1YmE4MDU4MjVkYTc2NDEwYzE4MTI3M2JhOTBiMSAjIHY3CiAgICAgICAgd2l0aDoKICAgICAgICAgIHBlcnNpc3QtY3JlZGVudGlhbHM6IGZhbHNlCiAgICAgIC0gdXNlczogYWN0aW9ucy9zZXR1cC1ub2RlQDgyMDc2Mjc4NjAyNjc0MGM3NmYzNjA4NWIwZWZjNDdhMzFmZTUwMjAgIyB2NwogICAgICAgIHdpdGg6CiAgICAgICAgICBub2RlLXZlcnNpb246IDI0CiAgICAgICAgICBwYWNrYWdlLW1hbmFnZXItY2FjaGU6IGZhbHNlCiAgICAgIC0gdXNlczogcG5wbS9zZXR1cEBmYmRhNGM4NWZjMmUxZTA4NzIxY2Q4NzYzYWZlYThmNDhkNjBmMDI0ICMgdjMuMC4wCiAgICAgICAgd2l0aDoKICAgICAgICAgIGNhY2hlOiBmYWxzZQogICAgICAgICAgbm9kZS12ZXJzaW9uLWZpbGU6IGZhbHNlCiAgICAgIC0gcnVuOiBwbnBtIGluc3RhbGwgLS1mcm96ZW4tbG9ja2ZpbGUKICAgICAgLSBuYW1lOiBMaW50LCB0eXBlY2hlY2ssIGJ1aWxkIGFuZCB0ZXN0CiAgICAgICAgcnVuOiBwbnBtIHJ1biBjaQo=","path":".github/workflows/ci.yml"},{"content":"bm9kZV9tb2R1bGVzLwpkaXN0LwouZW52LmxvY2FsCmNvdmVyYWdlLwo=","path":".gitignore"},{"content":"aW1wb3J0IHsgY3JlYXRlUmFpbHdheUNvbnRleHQsIHByb2plY3QgfSBmcm9tICJyYWlsd2F5L2lhYyI7CmltcG9ydCB7IGV4cGVjdCwgaXQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgcmFpbHdheSBmcm9tICIuL3JhaWx3YXkudHMiOwoKaXQoImdpdmVzIG9ubHkgd2ViIGF1dGggc2V0dGluZ3MgYW5kIHByZS1kZXBsb3kgbWlncmF0aW9ucywgd2l0aCBhIGRhdGFiYXNlLW9ubHkgcmVzdGFydGluZyB3b3JrZXIiLCBhc3luYyAoKSA9PiB7Cgljb25zdCBkZWZpbml0aW9uID0gYXdhaXQgcmFpbHdheShjcmVhdGVSYWlsd2F5Q29udGV4dCh7IHByb2plY3ROYW1lOiAibm90ZXMiIH0pLCBwcm9qZWN0KTsKCWV4cGVjdChkZWZpbml0aW9uLm5hbWUpLnRvQmUoIm5vdGVzIik7CglleHBlY3QoZGVmaW5pdGlvbi5yZXNvdXJjZXMpLnRvRXF1YWwoWwoJCWV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgYWRkcmVzczogImRhdGFiYXNlLlBvc3RncmVzIiwgZW5naW5lOiAicG9zdGdyZXMiIH0pLAoJCWV4cGVjdC5vYmplY3RDb250YWluaW5nKHsKCQkJYWRkcmVzczogInNlcnZpY2Uud2ViIiwKCQkJYnVpbGQ6IHsgYnVpbGRDb21tYW5kOiAicG5wbSBidWlsZCIsIGJ1aWxkZXI6ICJSQUlMUEFDSyIgfSwKCQkJZGVwbG95OiB7CgkJCQloZWFsdGhjaGVja1BhdGg6ICIvaGVhbHRoIiwKCQkJCWhlYWx0aGNoZWNrVGltZW91dDogMTIwLAoJCQkJcHJlRGVwbG95Q29tbWFuZDogWyJwbnBtIG1pZ3JhdGUiXSwKCQkJCXN0YXJ0Q29tbWFuZDogInBucG0gc3RhcnQiLAoJCQl9LAoJCQl2YXJpYWJsZXM6IHsKCQkJCSJBVVRIX0NMSUVOVF9JUF9IRUFERVIiOiB7IHR5cGU6ICJsaXRlcmFsIiwgdmFsdWU6ICJ4LXJlYWwtaXAiIH0sCgkJCQkiQkVUVEVSX0FVVEhfU0VDUkVUIjogeyBuYW1lOiAiQkVUVEVSX0FVVEhfU0VDUkVUIiwgdHlwZTogInNoYXJlZFJlZmVyZW5jZSIgfSwKCQkJCSJEQVRBQkFTRV9VUkwiOiB7IG91dHB1dDogIkRBVEFCQVNFX1VSTCIsIHJlc291cmNlOiAiZGF0YWJhc2UuUG9zdGdyZXMiLCB0eXBlOiAicmVmZXJlbmNlIiB9LAoJCQkJIkhPU1QiOiB7IHR5cGU6ICJsaXRlcmFsIiwgdmFsdWU6ICIwLjAuMC4wIiB9LAoJCQkJIlBVQkxJQ19VUkwiOiB7IG5hbWU6ICJQVUJMSUNfVVJMIiwgdHlwZTogInNoYXJlZFJlZmVyZW5jZSIgfSwKCQkJCSJUUlVTVEVEX1BST1hZIjogeyB0eXBlOiAibGl0ZXJhbCIsIHZhbHVlOiAiMTAwLjY0LjAuMC8xMCIgfSwKCQkJfSwKCQl9KSwKCQlleHBlY3Qub2JqZWN0Q29udGFpbmluZyh7CgkJCWFkZHJlc3M6ICJzZXJ2aWNlLndvcmtlciIsCgkJCWJ1aWxkOiB7IGJ1aWxkQ29tbWFuZDogInBucG0gYnVpbGQiLCBidWlsZGVyOiAiUkFJTFBBQ0siIH0sCgkJCWRlcGxveTogeyByZXN0YXJ0UG9saWN5VHlwZTogIk9OX0ZBSUxVUkUiLCBzdGFydENvbW1hbmQ6ICJwbnBtIHdvcmtlciIgfSwKCQkJdmFyaWFibGVzOiB7CgkJCQkiREFUQUJBU0VfVVJMIjogeyBvdXRwdXQ6ICJEQVRBQkFTRV9VUkwiLCByZXNvdXJjZTogImRhdGFiYXNlLlBvc3RncmVzIiwgdHlwZTogInJlZmVyZW5jZSIgfSwKCQkJfSwKCQl9KSwKCV0pOwp9KTsK","path":".railway/railway.test.ts"},{"content":"aW1wb3J0IHsgZGVmaW5lUmFpbHdheSwgcG9zdGdyZXMsIHByb2plY3QsIHNlcnZpY2UgfSBmcm9tICJyYWlsd2F5L2lhYyI7CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVSYWlsd2F5KChjdHgpID0+IHsKCWNvbnN0IGRhdGFiYXNlID0gcG9zdGdyZXMoIlBvc3RncmVzIik7Cgljb25zdCB3ZWIgPSBzZXJ2aWNlKCJ3ZWIiLCB7CgkJYnVpbGQ6IHsgYnVpbGRDb21tYW5kOiAicG5wbSBidWlsZCIsIGJ1aWxkZXI6ICJSQUlMUEFDSyIgfSwKCQllbnY6IHsKCQkJIkFVVEhfQ0xJRU5UX0lQX0hFQURFUiI6ICJ4LXJlYWwtaXAiLAoJCQkiQkVUVEVSX0FVVEhfU0VDUkVUIjogY3R4LnNoYXJlZC5CRVRURVJfQVVUSF9TRUNSRVQsCgkJCSJEQVRBQkFTRV9VUkwiOiBkYXRhYmFzZS5lbnYuREFUQUJBU0VfVVJMLAoJCQkiSE9TVCI6ICIwLjAuMC4wIiwKCQkJIlBVQkxJQ19VUkwiOiBjdHguc2hhcmVkLlBVQkxJQ19VUkwsCgkJCSJUUlVTVEVEX1BST1hZIjogIjEwMC42NC4wLjAvMTAiLAoJCX0sCgkJaGVhbHRoY2hlY2s6ICIvaGVhbHRoIiwKCQloZWFsdGhjaGVja1RpbWVvdXQ6IDEyMCwKCQlwcmVEZXBsb3k6ICJwbnBtIG1pZ3JhdGUiLAoJCXN0YXJ0OiAicG5wbSBzdGFydCIsCgl9KTsKCWNvbnN0IHdvcmtlciA9IHNlcnZpY2UoIndvcmtlciIsIHsKCQlidWlsZDogeyBidWlsZENvbW1hbmQ6ICJwbnBtIGJ1aWxkIiwgYnVpbGRlcjogIlJBSUxQQUNLIiB9LAoJCWRlcGxveTogeyByZXN0YXJ0UG9saWN5VHlwZTogIk9OX0ZBSUxVUkUiIH0sCgkJZW52OiB7CgkJCSJEQVRBQkFTRV9VUkwiOiBkYXRhYmFzZS5lbnYuREFUQUJBU0VfVVJMLAoJCX0sCgkJc3RhcnQ6ICJwbnBtIHdvcmtlciIsCgl9KTsKCXJldHVybiBwcm9qZWN0KGN0eC5wcm9qZWN0TmFtZSA/PyAiYXBwIiwgeyByZXNvdXJjZXM6IFtkYXRhYmFzZSwgd2ViLCB3b3JrZXJdIH0pOwp9KTsK","path":".railway/railway.ts"},{"content":"IyBTdGFydGVyIGFwcGxpY2F0aW9uCgpUaGlzIHByaXZhdGUgYXBwbGljYXRpb24gaXMgdGhlIHNvdXJjZSB0ZW1wbGF0ZSB0aGF0IGBAc2hpdmFlZGV2L2NyZWF0ZS1hcHBgIHBhY2thZ2VzIGZvciBuZXcgUGxhdGZvcm0gYXBwcy4gS2VlcCBpdCBzbWFsbCBlbm91Z2ggdG8gdW5kZXJzdGFuZCBpbiBvbmUgc2l0dGluZzogb25lIGRvbWFpbiB0YWJsZSwgYW4gYXV0aGVudGljYXRlZCBub3RlcyB3b3JrZmxvdyBhbmQgYSBzaWduLWluIHNjcmVlbi4gQmV0dGVyIEF1dGggb3ducyBpdHMgYWNjb3VudCBhbmQgc2Vzc2lvbiB0YWJsZXM7IHRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyB0aGVtLiBQcmVmZXIgbmF0aXZlIEVmZmVjdCBjb21wb3NpdGlvbiBhbmQgdGhlIGZyYW1ld29yaydzIGV4aXN0aW5nIHBhdGggb3ZlciBoZWxwZXJzIHRoYXQgb2JzY3VyZSBpdC4KClRoZSBhcHBsaWNhdGlvbiBvd25zIGl0cyBVSSBhbmQgbG9jYWwgc2Vzc2lvbiBwb2xpY3kuIFNoYXJlZCBkZWNsYXJhdGlvbnMgc3RheSBicm93c2VyIHNhZmU7IFBvc3RncmVTUUwsIHNlcnZpY2VzIGFuZCB0aGUgYXBwIGhvc3Qgc3RheSBvbiB0aGUgc2VydmVyLiBLZWVwIHRoZSBwbnBtIGNhdGFsb2cgYW5kIFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiBzZWxmLWNvbnRhaW5lZCBzbyBnZW5lcmF0aW5nIHRoZSBhcHAgZG9lcyBub3QgcmVxdWlyZSByZXBvc2l0b3J5IGZpbGVzLgoKVXNlIHRoZSByb290IHJlcG9zaXRvcnkgZ3VpZGFuY2Ugd2hpbGUgZGV2ZWxvcGluZyB0aGlzIHRlbXBsYXRlLiBUaGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpIGV4cGxhaW5zIGNyZWF0aW5nIGFuZCBydW5uaW5nIHRoZSBhcHAuIEEgc2VydmVyIGNoYW5nZSBuZWVkcyB0aGUgcmVhbCBQb3N0Z3JlU1FMIHJvdW5kLXRyaXAgdGVzdDsgYSBmb3JtIGNoYW5nZSBuZWVkcyBpdHMgaGFwcHktZG9tIHRlc3QuCgpXcml0ZSBuZXcgdGVzdHMgYXMgc3RvcmllcyBvbiB0aGUga2l0cyBpbiBgc3JjL3Rlc3Qtc3VwcG9ydC9gOiBgYXBwbGljYXRpb24udHNgIGZvciByZWFsIFBvc3RncmVTUUwgYW5kIEhUVFAsIGBzY3JlZW5zLnRzYCBmb3IgZm9jdXNlZCBoYXBweS1kb20gYmVoYXZpb3IsIGFuZCBgbWlncmF0aW9uLnRzYCBmb3Igc2NoZW1hIHVwZ3JhZGVzLiBBZGQgZG9tYWluIHRyYWl0cyBhbmQgdmVyYnMgdG8gdGhlIGtpdCBpbnN0ZWFkIG9mIGJ1aWxkaW5nIGhvc3RzLCBwcm94aWVzLCBzZXNzaW9ucyBvciByZXF1ZXN0cyBpbmxpbmUgaW4gc3BlY3MuIEtlZXAgaW5mcmFzdHJ1Y3R1cmUgc2NvcGVkLCB1c2UgYSBsaXZlIGNsb2NrIGZvciBIVFRQIGFuZCBET00gc3RvcmllcywgYW5kIHJldGFpbiBpbmRlcGVuZGVudCBTUUwgYXNzZXJ0aW9ucyB3aGVyZSBwZXJzaXN0ZW5jZSBpcyB0aGUgYmVoYXZpb3IuIFNlZSB0aGUgUkVBRE1FIGZvciB0aGUgc21hbGxlc3Qgc3RvcnkuCg==","path":"AGENTS.md"},{"content":"IyBTdGFydGVyIGFwcGxpY2F0aW9uCgpUaGlzIHByaXZhdGUgYXBwbGljYXRpb24gaXMgdGhlIHNvdXJjZSB0ZW1wbGF0ZSB0aGF0IGBAc2hpdmFlZGV2L2NyZWF0ZS1hcHBgIHBhY2thZ2VzIGZvciBuZXcgUGxhdGZvcm0gYXBwcy4gS2VlcCBpdCBzbWFsbCBlbm91Z2ggdG8gdW5kZXJzdGFuZCBpbiBvbmUgc2l0dGluZzogb25lIGRvbWFpbiB0YWJsZSwgYW4gYXV0aGVudGljYXRlZCBub3RlcyB3b3JrZmxvdyBhbmQgYSBzaWduLWluIHNjcmVlbi4gQmV0dGVyIEF1dGggb3ducyBpdHMgYWNjb3VudCBhbmQgc2Vzc2lvbiB0YWJsZXM7IHRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyB0aGVtLiBQcmVmZXIgbmF0aXZlIEVmZmVjdCBjb21wb3NpdGlvbiBhbmQgdGhlIGZyYW1ld29yaydzIGV4aXN0aW5nIHBhdGggb3ZlciBoZWxwZXJzIHRoYXQgb2JzY3VyZSBpdC4KClRoZSBhcHBsaWNhdGlvbiBvd25zIGl0cyBVSSBhbmQgbG9jYWwgc2Vzc2lvbiBwb2xpY3kuIFNoYXJlZCBkZWNsYXJhdGlvbnMgc3RheSBicm93c2VyIHNhZmU7IFBvc3RncmVTUUwsIHNlcnZpY2VzIGFuZCB0aGUgYXBwIGhvc3Qgc3RheSBvbiB0aGUgc2VydmVyLiBLZWVwIHRoZSBwbnBtIGNhdGFsb2cgYW5kIFR5cGVTY3JpcHQgY29uZmlndXJhdGlvbiBzZWxmLWNvbnRhaW5lZCBzbyBnZW5lcmF0aW5nIHRoZSBhcHAgZG9lcyBub3QgcmVxdWlyZSByZXBvc2l0b3J5IGZpbGVzLgoKVXNlIHRoZSByb290IHJlcG9zaXRvcnkgZ3VpZGFuY2Ugd2hpbGUgZGV2ZWxvcGluZyB0aGlzIHRlbXBsYXRlLiBUaGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpIGV4cGxhaW5zIGNyZWF0aW5nIGFuZCBydW5uaW5nIHRoZSBhcHAuIEEgc2VydmVyIGNoYW5nZSBuZWVkcyB0aGUgcmVhbCBQb3N0Z3JlU1FMIHJvdW5kLXRyaXAgdGVzdDsgYSBmb3JtIGNoYW5nZSBuZWVkcyBpdHMgaGFwcHktZG9tIHRlc3QuCgpXcml0ZSBuZXcgdGVzdHMgYXMgc3RvcmllcyBvbiB0aGUga2l0cyBpbiBgc3JjL3Rlc3Qtc3VwcG9ydC9gOiBgYXBwbGljYXRpb24udHNgIGZvciByZWFsIFBvc3RncmVTUUwgYW5kIEhUVFAsIGBzY3JlZW5zLnRzYCBmb3IgZm9jdXNlZCBoYXBweS1kb20gYmVoYXZpb3IsIGFuZCBgbWlncmF0aW9uLnRzYCBmb3Igc2NoZW1hIHVwZ3JhZGVzLiBBZGQgZG9tYWluIHRyYWl0cyBhbmQgdmVyYnMgdG8gdGhlIGtpdCBpbnN0ZWFkIG9mIGJ1aWxkaW5nIGhvc3RzLCBwcm94aWVzLCBzZXNzaW9ucyBvciByZXF1ZXN0cyBpbmxpbmUgaW4gc3BlY3MuIEtlZXAgaW5mcmFzdHJ1Y3R1cmUgc2NvcGVkLCB1c2UgYSBsaXZlIGNsb2NrIGZvciBIVFRQIGFuZCBET00gc3RvcmllcywgYW5kIHJldGFpbiBpbmRlcGVuZGVudCBTUUwgYXNzZXJ0aW9ucyB3aGVyZSBwZXJzaXN0ZW5jZSBpcyB0aGUgYmVoYXZpb3IuIFNlZSB0aGUgUkVBRE1FIGZvciB0aGUgc21hbGxlc3Qgc3RvcnkuCg==","path":"CLAUDE.md"},{"content":"IyBAc2hpdmFlZGV2L3N0YXJ0ZXIKCkEgc21hbGwgbm90ZXMgYXBwIHNob3dpbmcgUGxhdGZvcm0ncyBwYXRoIGZyb20gYSBtaWdyYXRlZCBQb3N0Z3JlU1FMIHRhYmxlIHRocm91Z2ggUlBDIHRvIGEgUmVhY3QgZm9ybS4gQ3JlYXRlIHlvdXIgb3duIGFwcGxpY2F0aW9uIHdpdGggYHBucG0gY3JlYXRlIEBzaGl2YWVkZXYvYXBwIG15LWFwcGAuCgpgYGB0c3gKY29uc3QgcXVlcnkgPSB1c2VRdWVyeShjbGllbnQuYXBpLmxpc3QucXVlcnkoKSk7CmBgYAoKVGhlIGF1dGhlbnRpY2F0ZWQgcm91dGUgbG9hZGVycyBhbmQgc2NyZWVucyBzaGFyZSB0aGUgc2FtZSBuYXRpdmUgcXVlcnkgcmVnaXN0cnkuIENyZWF0ZSBhIG5vdGUsIG9wZW4gaXRzIHRpdGxlIHRvIGVkaXQgaXQsIG9yIGRlbGV0ZSBpdCBhbmQgcmV0dXJuIHRvIHRoZSByZWZyZXNoZWQgbGlzdC4gQmV0dGVyIEF1dGggc3VwcGxpZXMgc2lnbnVwLCBzaWduLWluIGFuZCBzaWduLW91dDsgZWFjaCBhY2NvdW50IHNlZXMgaXRzIG93biBub3Rlcy4KClRoZSBgL25vdGVzLyRub3RlSWRgIHJvdXRlIHBhcnNlcyBhIG51bWVyaWMgSUQgYW5kIGxvYWRzIGBub3Rlcy5nZXRgIHRocm91Z2ggYGxvYWRRdWVyeWAuIEl0cyBmb3JtIHVzZXMgYHVzZUVkaXRvcmA6IGEgbGl2ZSByZWZyZXNoIGtlZXBzIGVkaXRlZCBmaWVsZHMsIGEgcmVqZWN0ZWQgc2F2ZSBrZWVwcyB0aGUgaW5wdXQsIGFuZCBhIHN1Y2Nlc3NmdWwgc2F2ZSBhcHBsaWVzIHRoZSByZXR1cm5lZCB0aXRsZS4gVXBkYXRlcyBhbmQgZGVsZXRlcyBzZW5kIHRoZSB2ZXJzaW9uIHRoZSBjbGllbnQgcmVhZC4gQSBzdGFsZSB2ZXJzaW9uIHJldHVybnMgUGxhdGZvcm0ncyBgQ29uZmxpY3RgIHdpdGhvdXQgY2hhbmdpbmcgdGhlIHJvdzsgcmVmcmVzaCBhbmQgcmV2aWV3IHRoZSByZXRhaW5lZCBkcmFmdCBiZWZvcmUgc2F2aW5nIGFnYWluLiBBbm90aGVyIGFjY291bnQgcmVjZWl2ZXMgYE5vdEZvdW5kYCBmb3IgYW4gaW5kaXZpZHVhbCBub3RlLiBUaGUgd29yZC1jb3VudCB3b3JrZXIgdXNlcyB0aGUgc2FtZSB2ZXJzaW9uZWQgbm90ZXMgcmVwb3NpdG9yeSBhbmQgcmVjYWxjdWxhdGVzIHRoZSBjb3VudCBhZnRlciBhbiBlZGl0LiBUaGUgcmVxdWVzdCBydW50aW1lIHJlZ2lzdGVycyBxdWV1ZSBkZWZpbml0aW9ucyB0aHJvdWdoIGBOb3RlSm9icy5sYXllcmAsIHdoaWNoIGNyZWF0ZXMgcXVldWVzIGFuZCBkZWFkLWxldHRlciBxdWV1ZXMgd2l0aG91dCBzdGFydGluZyBhIHdvcmtlci4gQ3JlYXRlIGFuZCBlZGl0IGVucXVldWUgYWZ0ZXIgdGhlaXIgd3JpdGUgdHJhbnNhY3Rpb247IHF1ZXVlIGVycm9ycyBhcmUgbG9nZ2VkIGFuZCB0aGUgc2F2ZWQgbm90ZSBpcyByZXR1cm5lZCB3aXRoIGEgcGVuZGluZyB3b3JkIGNvdW50LiBFbnF1ZXVlaW5nIHVzZXMgYW4gaW5kZXBlbmRlbnQgY29ubmVjdGlvbiwgc28gYSBjYWxsZXIncyBvdXRlciB0cmFuc2FjdGlvbiByb2xsYmFjayBkb2VzIG5vdCByZW1vdmUgaXRzIGpvYi4KCiMjIENyZWF0ZSBvciBydW4gaXQKCkZvbGxvdyB0aGUgW3F1aWNrc3RhcnRdKGh0dHBzOi8vZ2l0aHViLmNvbS9TaGl2YWVEZXYvcGxhdGZvcm0vYmxvYi9tYWluL2RvY3MvZnJhbWV3b3JrL3F1aWNrc3RhcnQubWQpLiBHZW5lcmF0ZWQgYXBwcyBhbHJlYWR5IGhhdmUgYSBnaXQtaWdub3JlZCBgLmVudi5sb2NhbGAgd2l0aCBhIGZyZXNoIGF1dGhlbnRpY2F0aW9uIHNlY3JldCBhbmQgZGV2ZWxvcG1lbnQgYW5kIHRlc3QgZGF0YWJhc2UgVVJMcy4gSW4gdGhpcyByZXBvc2l0b3J5LCBydW4gYC4vc2NyaXB0L3VwZGF0ZWAgYXQgdGhlIHJvb3QsIGNvcHkgYC5lbnYuZXhhbXBsZWAgdG8gYC5lbnYubG9jYWxgIGhlcmUsIGFuZCByZXBsYWNlIHRoZSBleGFtcGxlIHNlY3JldCB3aXRoIHRoZSBvdXRwdXQgb2YgYG9wZW5zc2wgcmFuZCAtYmFzZTY0IDMyYC4gUnVuIGBwbnBtIGRldmAgYW5kIG9wZW4gYGh0dHA6Ly8xMjcuMC4wLjE6NTE3M2AuCgpgcG5wbSBkZXZgIGZpcnN0IHJ1bnMgYHBucG0gZGI6c2V0dXBgLCB3aGljaCBwcmVwYXJlcyBib3RoIGxvY2FsIGRhdGFiYXNlcyB0aHJvdWdoIGBAc2hpdmFlZGV2L2xvY2FsLXBvc3RncmVzYC4gSGF2ZSBQb3N0Z3JlU1FMIDE4LjYgb24gbG9vcGJhY2sgcG9ydCA1NTQzMiBvciBsb2NhbCBEb2NrZXIgYXZhaWxhYmxlLiBUaGVuIGBwbnBtIG1pZ3JhdGVgIGFwcGxpZXMgbWlncmF0aW9ucyBiZWZvcmUgdGhlIHdhdGNoZXJzIHN0YXJ0LiBSdW4gYHBucG0gZGI6c2V0dXBgIHNlcGFyYXRlbHkgdG8gcHJlcGFyZSBkYXRhYmFzZXMgd2l0aG91dCBzdGFydGluZyB0aGUgYXBwLgoKVGhlIGFwcCB1c2VzIFRhaWx3aW5kJ3MgbmV1dHJhbCBzaGFkY24gdGhlbWUgYW5kIGFwcGxpY2F0aW9uLW93bmVkIGBCdXR0b25gIGFuZCBgSW5wdXRgIGNvbXBvbmVudHMuIFNlcnZlciBlbnRyeSBwb2ludHMgYXJlIGluIGBzcmMvc2VydmVyYDsgdGhlIHNoYXJlZCBjb250cmFjdCBpcyBgc3JjL25vdGVzLnRzYDsgdGhlIGJyb3dzZXIgc3RhcnRzIGluIGBzcmMvY2xpZW50L2VudHJ5LnRzeGAuCgpgcG5wbSBidWlsZCAmJiBwbnBtIG1pZ3JhdGUgJiYgcG5wbSBzdGFydGAgc2VydmVzIHRoZSBidWlsdCBVSSwgQmV0dGVyIEF1dGggZW5kcG9pbnRzIGFuZCBIVFRQL05ESlNPTiBSUEMgdG9nZXRoZXIgYXQgYGh0dHA6Ly8xMjcuMC4wLjE6MzAwMGAuIFNldCBgREFUQUJBU0VfVVJMYCBhbmQgYEJFVFRFUl9BVVRIX1NFQ1JFVGAgaW4gYC5lbnYubG9jYWxgIG9yIHRoZSBzaGVsbC4gVGhlIHNlY3JldCBuZWVkcyBhdCBsZWFzdCAzMiByYW5kb20gY2hhcmFjdGVyczsgZ2VuZXJhdGUgb25lIHdpdGggYG9wZW5zc2wgcmFuZCAtYmFzZTY0IDMyYC4gRm9yIGhvc3RpbmcgYmVoaW5kIGEgcHJveHksIGZvbGxvdyB0aGUgcXVpY2tzdGFydCdzIFtEZXBsb3kgc2VjdGlvbl0oaHR0cHM6Ly9naXRodWIuY29tL1NoaXZhZURldi9wbGF0Zm9ybS9ibG9iL21haW4vZG9jcy9mcmFtZXdvcmsvcXVpY2tzdGFydC5tZCNkZXBsb3kpLCBzZXR0aW5nIGBQVUJMSUNfVVJMYCB0byB5b3VyIHB1YmxpYyBhcHAgVVJMLgoKYEFVVEhfUkFURV9MSU1JVF9FTkFCTEVEYCBpcyBhbiBFZmZlY3QgQ29uZmlnIGJvb2xlYW4gdGhhdCBkZWZhdWx0cyB0byBgdHJ1ZWAgaW4gZXZlcnkgZW52aXJvbm1lbnQsIGluY2x1ZGluZyB0ZXN0cy4gU2V0IGl0IHRvIGBmYWxzZWAgdG8gZGlzYWJsZSBCZXR0ZXIgQXV0aCByYXRlIGxpbWl0aW5nIGZvciB0aGlzIGFwcC4KCmBUUlVTVEVEX1BST1hZYCBjb250cm9scyBib3RoIHRoZSBob3N0J3MgZm9yd2FyZGVkIGF1dGhvcml0eSBhbmQgQmV0dGVyIEF1dGgncyBjbGllbnQgSVBzIGZvciBhdXRoIHJhdGUgbGltaXRpbmcuIGBBVVRIX0NMSUVOVF9JUF9IRUFERVJgIGlzIGFuIEVmZmVjdCBDb25maWcgc3RyaW5nIHRoYXQgZGVmYXVsdHMgdG8gYHgtZm9yd2FyZGVkLWZvcmA7IHNldCBpdCB0byBhbm90aGVyIGhlYWRlciBuYW1lIHRvIGNoYW5nZSB3aGljaCBoZWFkZXIgYXV0aCByZWFkcy4gQXV0aCBhY2NlcHRzIHRoYXQgaGVhZGVyIG9ubHkgZnJvbSBhIG1hdGNoaW5nIHRyYW5zcG9ydCBwZWVyIGFuZCBwYXNzZXMgaXQgdG8gQmV0dGVyIEF1dGgncyBJUCBhZGRyZXNzIG9wdGlvbnMsIHdpdGggdGhlIHNhbWUgdHJ1c3RlZCBwcm94eSBhZGRyZXNzZXMgYW5kIHJhbmdlcy4gRm9yIHRoZSBkZWZhdWx0IGBYLUZvcndhcmRlZC1Gb3JgLCB0aGUgcHJveHkgbXVzdCBvdmVyd3JpdGUgdGhlIGhlYWRlciBvciBhcHBlbmQgdGhlIGFjdHVhbCBjbGllbnQgSVAuIFdoZW4gYFRSVVNURURfUFJPWFlgIGlzIHVuc2V0LCBhdXRoIGlnbm9yZXMgZm9yd2FyZGVkIElQIGhlYWRlcnM7IHdoZW4gcmF0ZSBsaW1pdGluZyBpcyBlbmFibGVkLCB2aXNpdG9ycyBzaGFyZSBvbmUgcmF0ZS1saW1pdCBidWNrZXQgcGVyIHBhdGguCgpUaGUgUmFpbHdheSB3ZWIgY29uZmlndXJhdGlvbiBzZXRzIGBBVVRIX0NMSUVOVF9JUF9IRUFERVI9eC1yZWFsLWlwYCBiZWNhdXNlIFJhaWx3YXkgZG9jdW1lbnRzIGBYLVJlYWwtSVBgIGFzIHRoZSBjbGllbnQncyByZW1vdGUgSVAuIEl0cyBgWC1Gb3J3YXJkZWQtRm9yYCBjaGFpbiBjYW4gaW5jbHVkZSBlZGdlIGhvcHMgb3V0c2lkZSB0aGUgdHJ1c3RlZCBgMTAwLjY0LjAuMC8xMGAgcmFuZ2UsIHdoaWNoIEJldHRlciBBdXRoIHdvdWxkIHNlbGVjdCBpbnN0ZWFkIG9mIHRoZSB2aXNpdG9yLiBSYWlsd2F5IGRvZXMgbm90IGRvY3VtZW50IHdoZXRoZXIgaXQgcmVwbGFjZXMgYSBjYWxsZXItc3VwcGxpZWQgYFgtUmVhbC1JUGA7IHZlcmlmeSB0aGF0IGJlaGF2aW9yIGluIHlvdXIgcHJvZHVjdGlvbiBkZXBsb3ltZW50IGJlZm9yZSByZWx5aW5nIG9uIHZpc2l0b3IgaXNvbGF0aW9uLgoKQSBnZW5lcmF0ZWQgYXBwIHJ1bnMgYHBucG0gcnVuIHNldHVwYCBiZWZvcmUgaXRzIGZpcnN0IGNvbW1pdDogZGVwZW5kZW5jaWVzIGFuZCBRdWFsaXR5J3MgcHJlLWNvbW1pdCBob29rIGFyZSBpbnN0YWxsZWQsIGFuZCB0aGUgY29tbWl0IHJ1bnMgbGludCBhbmQgdHlwZWNoZWNrLiBBZnRlciBjbG9uaW5nIHRoZSBnZW5lcmF0ZWQgcmVwb3NpdG9yeSwgcnVuIGBwbnBtIHJ1biBzZXR1cGAgYWdhaW4gZm9yIHRoYXQgY2hlY2tvdXQuIFNldHVwIGluc3RhbGxzIGEgaG9vayBvbmx5IHdoZW4gdGhlIGFwcCBoYXMgaXRzIG93biBgLmdpdGA7IGl0IGxlYXZlcyBhbiBlbmNsb3NpbmcgcmVwb3NpdG9yeSdzIGhvb2tzIGFsb25lLiBSdW4gYHBucG0gcmVhZHlgIGZvciB0aGUgZnVsbCBsb2NhbCBnYXRlLiBJdCB1c2VzIHRoZSBzYW1lIGxpbnQsIHR5cGVjaGVjaywgYnVpbGQgYW5kIHRlc3Qgc2NyaXB0IGFzIGAuZ2l0aHViL3dvcmtmbG93cy9jaS55bWxgIGFuZCB0aGUgcHVibGlzaGVkLXN0YXJ0ZXIgY2hlY2ssIHdpdGggUG9zdGdyZVNRTCBiYWNraW5nIHRoZSB0ZXN0cy4gVGhlIFJhaWx3YXkgQ0xJIGFwcGxpZXMgYC5yYWlsd2F5L3JhaWx3YXkudHNgIHRvIGNvbmZpZ3VyZSBQb3N0Z3JlU1FMLCB3ZWIgYW5kIHdvcmtlciBzZXJ2aWNlcy4gQm90aCBzZXJ2aWNlcyBidWlsZC4gV2ViIHJ1bnMgYHBucG0gbWlncmF0ZWAgaW4gaXRzIHByZS1kZXBsb3kgY29udGFpbmVyLCB0aGVuIHN0YXJ0cyBIVFRQIGFuZCBjaGVja3MgdGhlIGRhdGFiYXNlLWJhY2tlZCBgL2hlYWx0aGAgcm91dGUuIFRoZSB3b3JrZXIgc3RhcnRzIGBwbnBtIHdvcmtlcmAgYW5kIGZhaWxzIHVudGlsIHRoZSBzY2hlbWEgaXMgY3VycmVudCwgc28gUmFpbHdheSByZXN0YXJ0cyBpdC4gTmVpdGhlciBwcm9jZXNzIG1pZ3JhdGVzIGF0IGJvb3QuIFRoZSB3b3JrZXIgYW5kIG1pZ3JhdGUgY29tbWFuZCBuZWVkIG9ubHkgYERBVEFCQVNFX1VSTGA7IHdlYiBhbHNvIG5lZWRzIGl0cyBhdXRoIHNlY3JldCBhbmQgcHVibGljIFVSTC4gRm9sbG93IHRoZSBxdWlja3N0YXJ0IHRvIHBsYW4gYW5kIGFwcGx5IHRoZSBjb25maWd1cmF0aW9uLCBjb25uZWN0IHRoZSByZXBvc2l0b3J5IGFuZCBkZXBsb3kgYm90aCBzZXJ2aWNlcy4KClRoZSBzdGFydGVyJ3MgbnVtYmVyZWQgbWlncmF0aW9uIHBhdGggY3JlYXRlcyBCZXR0ZXIgQXV0aCdzIHRhYmxlcyB3aXRoIGBnZXRNaWdyYXRpb25zKGF1dGhPcHRpb25zKGRhdGFiYXNlKSlgIGZvbGxvd2VkIGJ5IGBydW5NaWdyYXRpb25zKClgLiBUaGUgYXV0aCBpbnN0YW5jZSBzaGFyZXMgdGhlc2Ugc2NoZW1hIG9wdGlvbnM7IG1pZ3JhdGlvbnMgY29uc3RydWN0IG5vIGF1dGggaW5zdGFuY2UgYW5kIG5lZWQgbm8gc2VjcmV0LiBObyBzZXBhcmF0ZSBhdXRoIG1pZ3JhdGlvbiBjb21tYW5kIGlzIG5lZWRlZC4gUHJvdGVjdGVkIG9wZXJhdGlvbnMgZGVjbGFyZSBgQXV0aGVudGljYXRlZFVzZXJgOyBgYXV0aGVudGljYXRlZFVzZXJMYXllcihzZXNzaW9ucylgIHN1cHBsaWVzIGBTZXNzaW9uVXNlcmAgZnJvbSB0aGUgYGJldHRlckF1dGhTZXNzaW9uc2AgcHJvdmlkZXIuIE5vdGUgaGFuZGxlcnMgdXNlIGl0cyBpZCBmb3Igb3duZXJzaGlwLCBhbmQgYG5vdGVzLndob2FtaWAgcmV0dXJucyBpZCwgbmFtZSBhbmQgZW1haWwgd2l0aG91dCBxdWVyeWluZyBhdXRoIHRhYmxlczsgc2lnbmVkLW91dCBjYWxscyByZXR1cm4gdHlwZWQgYFVuYXV0aG9yaXplZGAgZmFpbHVyZXMuIFRoZSBVSSBzaG93cyBhIHNpZ24taW4gcHJvbXB0LCBhbmQgYFNlc3Npb25Cb3VuZGFyeWAgcmVwbGFjZXMgY2FjaGVkIHF1ZXJpZXMgYW5kIGRyYWZ0cyB3aGVuIHRoZSBzZXNzaW9uIGNoYW5nZXMuCgpUaGUgd29ya2VyIGxvZ3MgYFdvcmtlciBtaWdyYXRpb25zIGFwcGxpZWRgIGFmdGVyIGl0cyBzY2hlbWEgY2hlY2sgYW5kIGBXb3JrZXIgcmVhZHkgdG8gdGFrZSBqb2JzYCBhZnRlciByZWdpc3RlcmluZyBoYW5kbGVycywgdGhyb3VnaCBFZmZlY3TigJlzIGxvZ2dlci4KClRoZSBicm93c2VyIGVudHJ5IHBvaW50IGNyZWF0ZXMgYG1ha2VBdXRoKHsgYmFzZVVybCB9KWAgYW5kIHN1cHBsaWVzIGl0IHRvIGBBcHBgLiBTZXNzaW9uIGNoZWNraW5nIGFuZCBhdXRoIGFjdGlvbnMgdXNlIHRoYXQgaW5zdGFuY2UuIFN0b3JpZXMgY2FuIGNyZWF0ZSBhbiBhdXRoIGNsaWVudCBmb3IgdGhlaXIgb3duIEhUVFAgaG9zdCB3aXRoIHRoZSBhcHBsaWNhdGlvbiBraXTigJlzIGBhdXRoQ2xpZW50KClgIHZlcmIuCgpUaGUgVHlwZVNjcmlwdCBjb25maWd1cmF0aW9uIGtlZXBzIHN0cmljdCBhcHBsaWNhdGlvbiBjaGVja2luZyBhbmQgc2V0cyBgc2tpcExpYkNoZWNrOiB0cnVlYCBmb3IgZGVwZW5kZW5jaWVzIHRoYXQgZGVjbGFyZSB1bnVzZWQgcnVudGltZSB0eXBlcy4gRXhpc3Rpbmcgbm90ZXMgZnJvbSB0aGUgdW5hdXRoZW50aWNhdGVkIHN0YXJ0ZXIgaGF2ZSBubyBhY2NvdW50IG93bmVyIGFuZCBhcmUgbm90IHNob3duIHRvIHNpZ25lZC1pbiB1c2Vycy4KClRvIGV4cG9ydCBFZmZlY3Qgc3BhbnMsIGVuYWJsZSBSYWlsd2F5J3MgdHJhY2luZyBzZXR0aW5nIG9uIGVhY2ggd2ViIGFuZCB3b3JrZXIgc2VydmljZS4gSXQgc3VwcGxpZXMgYE9URUxfRVhQT1JURVJfT1RMUF9FTkRQT0lOVGAgb3IgYE9URUxfRVhQT1JURVJfT1RMUF9UUkFDRVNfRU5EUE9JTlRgLCBwbHVzIGV4cG9ydGVyIGhlYWRlcnMgYW5kIHNlcnZpY2UgbWV0YWRhdGEuIEZvciBhbm90aGVyIGNvbGxlY3Rvciwgc2V0IHRoZSBiYXNlIGVuZHBvaW50ICh0aGUgZXhwb3J0ZXIgYXBwZW5kcyBgL3YxL3RyYWNlc2ApIG9yIHRoZSBjb21wbGV0ZSB0cmFjZXMgZW5kcG9pbnQsIGBPVEVMX0VYUE9SVEVSX09UTFBfSEVBREVSU2AgYXMgY29tbWEtc2VwYXJhdGVkIGBrZXk9dmFsdWVgIHBhaXJzIHdpdGggVVJMLWVuY29kZWQgdmFsdWVzLCBgT1RFTF9TRVJWSUNFX05BTUVgLCBhbmQgb3B0aW9uYWwgYE9URUxfUkVTT1VSQ0VfQVRUUklCVVRFU2AuIFRoZSBjb21wbGV0ZSB0cmFjZXMgZW5kcG9pbnQgdGFrZXMgcHJlY2VkZW5jZS4gVGhlIGhvc3QgYW5kIGBub3RlV29ya2VyYCBwcm92aWRlIHRoZSBzYW1lIGBvdGxwVHJhY2luZ2AgTGF5ZXIuIFdpdGggbm8gZW5kcG9pbnQsIG5vIGV4cG9ydGVyIHJ1bnMuIFRoaXMgZXhwb3J0cyBFZmZlY3Qgc3BhbnM7IGVCUEYgYXV0by1pbnN0cnVtZW50YXRpb24gaXMgbm90IHBhcnQgb2YgdGhlIGZyYW1ld29yayBwYXRoLiBUaGUgd29ya2VyIHJlY2VpdmVyIHN0b3J5IHByb3ZlcyBhIHJlYWwgUG9zdGdyZVNRTCBqb2IgZXhwb3J0cyBhIGBDb3VudFdvcmRzYCBzcGFuIGFuZCBzdGlsbCBjb21wbGV0ZXMgd2l0aCBhIGNvbGxlY3RvciBkb3duOyBpdCBkb2VzIG5vdCBwcm92ZSBhIHByb3ZpZGVyJ3MgZGVwbG95bWVudCBzZXR1cC4KCldyaXRlIG5ldyB0ZXN0cyBhcyBzdG9yaWVzLiBUaGUga2l0IGluIFtgc3JjL3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50c2BdKHNyYy90ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMpIG93bnMgYSBkaXNwb3NhYmxlIFBvc3RncmVTUUwgZGF0YWJhc2UgYW5kIHRoZSByZWFsIEhUVFAgYXBwIGhvc3QuIFRyYWl0cyBzdWNoIGFzIGBzaWduZWRJbigpYCwgYGxlZ2FjeU5vdGUodGl0bGUpYCBhbmQgYGJlaGluZFByb3h5KClgIGRlc2NyaWJlIHNldHVwOyB2ZXJicyBkcml2ZSBhdXRoZW50aWNhdGVkIG5vdGVzIHJlcXVlc3RzLCByZXJ1biBtaWdyYXRpb25zIHRocm91Z2ggYW5vdGhlciBob3N0IGFuZCBzdGFydCB0aGUgd29yZC1jb3VudCB3b3JrZXIuIEV4dGVuZCB0aGUga2l0IHdpdGggYSB0cmFpdCBvciB2ZXJiIHdoZW4gYSBmZWF0dXJlIG5lZWRzIGFub3RoZXIgc2V0dXAgb3IgYWN0aW9uLgoKYGBgdHMKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzYXZlcyBhIHRpdGxlIGZvciB0aGUgc2lnbmVkLWluIGFjY291bnQiLCBbc2lnbmVkSW4oKV0sIGZ1bmN0aW9uKiAoeyBhY3RvciB9KSB7CiBjb25zdCBub3RlcyA9IGFjdG9yKCkubm90ZXM7CiBjb25zdCBzYXZlZCA9IHlpZWxkKiBub3Rlcy5jcmVhdGUoeyB0aXRsZTogIkZpcnN0IG5vdGUiIH0pOwogZXhwZWN0KHlpZWxkKiBub3Rlcy5saXN0KCkpLnRvRXF1YWwoW3NhdmVkXSk7Cn0pOwpgYGAKClRoZSBraXQgdXNlcyBgQHNoaXZhZWRldi90ZXN0LXN0b3J5YCBvbiBgZWZmZWN0LXRlc3RgLiBEYXRhYmFzZSBzdG9yaWVzIHJ1biBzZXJpYWxseSB3aXRoaW4gZWFjaCB3b3JrZXIsIHVzZSBhIGxpdmUgY2xvY2ssIGNvbW1pdCBIVFRQIHdyaXRlcyBhbmQgZGlzcG9zZSB0aGVpciBkYXRhYmFzZSBjbG9uZXMgYWZ0ZXIgdGhlIGhvc3QgYW5kIHBvb2xzIGNsb3NlLiBGYWlsdXJlcyBwcmludCB0aGUgc3RvcnkgYW5kIGFjY291bnQgYWxpYXNlcyBhbmQgaG9zdCBkZXRhaWxzLCB3aXRob3V0IHNlc3Npb24gY29va2llcy4gVGhlIGRlcGxveSBzdG9yeSB1c2VzIGEgbG9vcGJhY2sgcHJveHkgd2l0aCBIVFRQUyBmb3J3YXJkaW5nIGhlYWRlcnMgYW5kIGNoZWNrcyBzZWN1cmUgc2Vzc2lvbiBjb29raWVzIGFuZCBmb3JlaWduLW9yaWdpbiByZWplY3Rpb24uIEl0IGRvZXMgbm90IGV4ZXJjaXNlIGEgYnJvd3NlciBvciBUTFMgdGVybWluYXRpb24uIFtgc3JjL3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzYF0oc3JjL3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzKSBzdXBwbGllcyB0aGUgc2VwYXJhdGUgaGFwcHktZG9tIHN0b3J5IGtpdDsgdGhvc2Ugc3RvcmllcyB1c2UgdGhlIGluLW1lbW9yeSBSUEMgZml4dHVyZSB0byBwcm92ZSBzY3JlZW4gYW5kIGZvcm0gYmVoYXZpb3IuIFtgc3JjL3Rlc3Qtc3VwcG9ydC9taWdyYXRpb24udHNgXShzcmMvdGVzdC1zdXBwb3J0L21pZ3JhdGlvbi50cykgaXNvbGF0ZXMgdGhlIG1pZ3JhdGlvbiB1cGdyYWRlIHN0b3J5IHdpdGhvdXQgc3RhcnRpbmcgYSBob3N0LgoKYHBucG0gdGVzdGAgbG9hZHMgYC5lbnYubG9jYWxgIGFuZCBydW5zIHRoZSBSZWFjdCB0ZXN0cywgdGhlIFBvc3RncmVTUUwvSFRUUCByb3VuZCB0cmlwcyBhbmQgdGhlIG5vdGVzIG1pZ3JhdGlvbiB1cGdyYWRlIGNoZWNrLiBUaGUgdXBncmFkZSBjaGVjayBhcHBsaWVzIGFuIG9sZGVyIG1pZ3JhdGlvbiBwcmVmaXgsIHVwZ3JhZGVzIHRvIHRoZSBsYXRlc3QgbWlncmF0aW9ucywgYW5kIGNvbXBhcmVzIHRoZSBsaXZlIGNvbHVtbiBuYW1lcyBhbmQgUG9zdGdyZVNRTCB0eXBlcyB3aXRoIHRoZSBub3RlcyByZXBvc2l0b3J5IG1vZGVsLiBTZXQgYFRFU1RfREFUQUJBU0VfVVJMYCB0byBhIGRlZGljYXRlZCBQb3N0Z3JlU1FMIGRhdGFiYXNlIHdob3NlIHJvbGUgY2FuIGNyZWF0ZSBkYXRhYmFzZXM7IHRoZSB0ZXN0cyBjcmVhdGUgZGlzcG9zYWJsZSBjbG9uZXMuIFJlcG9zaXRvcnkgdGVzdCBydW5zIHN1cHBseSBgUExBVEZPUk1fRUZGRUNUX1NRTF9URVNUX0RBVEFCQVNFX1VSTGAgaW5zdGVhZC4gTWlzc2luZyBkYXRhYmFzZSBjb25maWd1cmF0aW9uIGZhaWxzIHRoZSB0ZXN0LgoKVG8gdmVyaWZ5IHRoZSBnZW5lcmF0ZWQgYXBwLCBydW4gYHBucG0gLS1maWx0ZXIgQHNoaXZhZWRldi9zdGFydGVyIGNoZWNrOnB1Ymxpc2hlZGAgZnJvbSB0aGUgcmVwb3NpdG9yeSByb290LiBJdCBpbnN0YWxscyB0aGUgZXhhY3QgdmVyc2lvbnMgaW4gYHB1Ymxpc2hlZC12ZXJzaW9ucy5qc29uYCBpbnRvIHRlbXBvcmFyeSBmb2xkZXJzIG91dHNpZGUgdGhlIHdvcmtzcGFjZSwgY2hlY2tzIGltcG9ydHMgZnJvbSB0aGUgZnJhbWV3b3JrIFJFQURNRXMgYW5kIHF1aWNrc3RhcnQsIHBhY2tzIHRoZSBjcmVhdGUgY29tbWFuZCwgZ2VuZXJhdGVzIGFuIGFwcCwgYW5kIHJ1bnMgaXRzIFF1YWxpdHkgbGludCwgdHlwZWNoZWNrLCBidWlsZCwgUG9zdGdyZVNRTC9hdXRoZW50aWNhdGVkIEhUVFAgdGVzdHMgYW5kIG5vdGVzIG1pZ3JhdGlvbiB1cGdyYWRlIGNoZWNrLiBJdCBleGVyY2lzZXMgcHVibGlzaGVkIGRlY2xhcmF0aW9uIGFuZCBydW50aW1lIGV4cG9ydHMgd2l0aG91dCB0aGUgd29ya3NwYWNlJ3MgYHNvdXJjZWAgY29uZGl0aW9uLiBVc2UgdGhlIGxvY2FsIHRlc3QgZGF0YWJhc2UgZnJvbSBzZXR1cCBvciBzZXQgYFRFU1RfREFUQUJBU0VfVVJMYDsgdGhlIGNoZWNrIGZhaWxzIGlmIFBvc3RncmVTUUwgaXMgdW5hdmFpbGFibGUuIFVwZGF0ZSB0aGUgdmVyc2lvbiBmaWxlIHdoZW4gYWRvcHRpbmcgYW5vdGhlciBwdWJsaXNoZWQgZnJhbWV3b3JrIHJlbGVhc2UsIHRoZW4gcnVuIHRoZSBjaGVjayBhZ2Fpbi4KCkFkZCBgLS1yZWdpc3RyeWAgdG8gZ2VuZXJhdGUgdGhlIGFwcCB3aXRoIHRoZSBwdWJsaXNoZWQgYHBucG0gY3JlYXRlIEBzaGl2YWVkZXYvYXBwYCBjb21tYW5kIGluc3RlYWQgb2YgcGFja2luZyB0aGUgbG9jYWwgZ2VuZXJhdG9yLiBUaGUgUHVibGlzaGVkIHN0YXJ0ZXIgd29ya2Zsb3cgcnVucyB0aGlzIG1vZGUgYWdhaW5zdCBhIFBvc3RncmVTUUwgc2VydmljZSBkYWlseSBhdCAwNjoxNyBVVEMsIG9uIG1hbnVhbCBkaXNwYXRjaCwgYWZ0ZXIgZWFjaCBzdWNjZXNzZnVsIHBhY2thZ2UgcHVibGlzaCwgYW5kIG9uIHB1bGwgcmVxdWVzdHMgdGhhdCBjaGFuZ2UgdGhlIGNoZWNrLiBBIHB1bGwgcmVxdWVzdCB3aG9zZSBwaW5uZWQgdmVyc2lvbnMgYXJlIG5vdCBvbiBucG0geWV0IGlzIGEgcmVsZWFzZSwgc28gdGhlIHdvcmtmbG93IHNraXBzIHJlZ2lzdHJ5IG1vZGUgdGhlcmU7IHRoZSBwYWNrZWQgc3RhcnRlciBjaGVja3MgdGhvc2UgdmVyc2lvbnMgaW4gQ0ksIGFuZCB0aGUgcnVuIGFmdGVyIHB1Ymxpc2hpbmcgY2hlY2tzIHRoZW0gb24gbnBtLiBUaGF0IHJ1biBnZW5lcmF0ZXMgdGhlIGFwcCB3aXRoIHRoZSBjcmVhdGUtYXBwIHZlcnNpb24gdGhhdCBqdXN0IHB1Ymxpc2hlZDsgdGhlIG90aGVyIHJ1bnMgdXNlIGBsYXRlc3RgLCB3aGljaCBwbnBtIHJlc29sdmVzIHRvIHRoZSBuZXdlc3QgdmVyc2lvbiBwYXN0IGl0cyBvbmUtZGF5IHJlbGVhc2UgYWdlLCB0aGUgdmVyc2lvbiBhIG5ldyB1c2VyIGdldHMuIEl0cyBvcHRpb25hbCBgY3JlYXRlLWFwcC12ZXJzaW9uYCBpbnB1dCBzZWxlY3RzIGEgcHVibGlzaGVkIGdlbmVyYXRvciB2ZXJzaW9uOyBhbiB1bmF2YWlsYWJsZSB2ZXJzaW9uIGZhaWxzIHRoZSBydW4uIFJlZ2lzdHJ5IG1vZGUgY2Fubm90IHVzZSBgLS1hcmNoaXZlc2AuCg==","path":"README.md"},{"content":"ewoJImV4dGVuZHMiOiBbIkBzaGl2YWVkZXYvcXVhbGl0eS9iaW9tZSJdLAoJInJvb3QiOiB0cnVlCn0K","path":"biome.json"},{"content":"PCFkb2N0eXBlIGh0bWw+CjxodG1sIGxhbmc9ImVuIj4KCTxoZWFkPgoJCTxtZXRhIGNoYXJzZXQ9IlVURi04IiAvPgoJCTxtZXRhIGNvbnRlbnQ9IndpZHRoPWRldmljZS13aWR0aCwgaW5pdGlhbC1zY2FsZT0xLjAiIG5hbWU9InZpZXdwb3J0IiAvPgoJCTx0aXRsZT5Ob3RlczwvdGl0bGU+Cgk8L2hlYWQ+Cgk8Ym9keT4KCQk8ZGl2IGlkPSJyb290Ij48L2Rpdj4KCQk8c2NyaXB0IHNyYz0iL3NyYy9jbGllbnQvZW50cnkudHN4IiB0eXBlPSJtb2R1bGUiPjwvc2NyaXB0PgoJPC9ib2R5Pgo8L2h0bWw+Cg==","path":"index.html"},{"content":"ewoJIm5hbWUiOiAiQHNoaXZhZWRldi9zdGFydGVyIiwKCSJ2ZXJzaW9uIjogIjAuMC4wIiwKCSJwcml2YXRlIjogdHJ1ZSwKCSJ0eXBlIjogIm1vZHVsZSIsCgkiaW1wb3J0cyI6IHsKCQkiIyoiOiAiLi9zcmMvKiIKCX0sCgkic2NyaXB0cyI6IHsKCQkiYnVpbGQiOiAidml0ZSBidWlsZCIsCgkJImNpIjogInBucG0gbGludCAmJiBwbnBtIHR5cGVjaGVjayAmJiBwbnBtIGJ1aWxkICYmIHBucG0gdGVzdCIsCgkJImRiOnNldHVwIjogIm5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBzcmMvc2VydmVyL3NldHVwLWRhdGFiYXNlLnRzIiwKCQkiZGV2IjogInBucG0gZGI6c2V0dXAgJiYgcG5wbSBtaWdyYXRlICYmIG5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBzcmMvc2VydmVyL2Rldi50cyIsCgkJImZvcm1hdCI6ICJxdWFsaXR5IGZpeCIsCgkJImxpbnQiOiAicXVhbGl0eSBsaW50IiwKCQkibWlncmF0ZSI6ICJub2RlIC0tZW52LWZpbGUtaWYtZXhpc3RzPS5lbnYubG9jYWwgc3JjL3NlcnZlci9taWdyYXRlLnRzIiwKCQkicmVhZHkiOiAicG5wbSBydW4gY2kiLAoJCSJzZXR1cCI6ICJwbnBtIGluc3RhbGwgJiYgbm9kZSBzcmMvc2V0dXAudHMiLAoJCSJzdGFydCI6ICJub2RlIC0tZW52LWZpbGUtaWYtZXhpc3RzPS5lbnYubG9jYWwgc3JjL3NlcnZlci9zZXJ2ZXIudHMiLAoJCSJ0ZXN0IjogIm5vZGUgLS1lbnYtZmlsZS1pZi1leGlzdHM9LmVudi5sb2NhbCBub2RlX21vZHVsZXMvdml0ZXN0L3ZpdGVzdC5tanMgcnVuIiwKCQkidHlwZWNoZWNrIjogInRzYzYgLS1ub0VtaXQiLAoJCSJ3b3JrZXIiOiAibm9kZSAtLWVudi1maWxlLWlmLWV4aXN0cz0uZW52LmxvY2FsIHNyYy9zZXJ2ZXIvd29ya2VyLnRzIgoJfSwKCSJkZXBlbmRlbmNpZXMiOiB7CgkJIkBlZmZlY3QvYXRvbS1yZWFjdCI6ICJjYXRhbG9nOiIsCgkJIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI6ICJjYXRhbG9nOiIsCgkJIkBlZmZlY3Qvc3FsLXBnIjogImNhdGFsb2c6IiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QiOiAiMC41LjEiLAoJCSJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtIjogIjAuNC4wIiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcyI6ICIwLjguMCIsCgkJIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0IjogIjAuNC4xIiwKCQkiQHNoaXZhZWRldi9lZmZlY3Qtc2VydmljZSI6ICIwLjMuMCIsCgkJIkBzaGl2YWVkZXYvZWZmZWN0LXNxbCI6ICIwLjUuMCIsCgkJIkBzaGl2YWVkZXYvbG9jYWwtcG9zdGdyZXMiOiAiMC4yLjEiLAoJCSJAc2hpdmFlZGV2L3BsYXRmb3JtIjogIjAuMTQuMSIsCgkJIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOiAiY2F0YWxvZzoiLAoJCSJiZXR0ZXItYXV0aCI6ICJjYXRhbG9nOiIsCgkJImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eSI6ICJjYXRhbG9nOiIsCgkJImNsc3giOiAiY2F0YWxvZzoiLAoJCSJlZmZlY3QiOiAiY2F0YWxvZzoiLAoJCSJwZyI6ICJjYXRhbG9nOiIsCgkJInJlYWN0IjogImNhdGFsb2c6IiwKCQkicmVhY3QtZG9tIjogImNhdGFsb2c6IiwKCQkidGFpbHdpbmQtbWVyZ2UiOiAiY2F0YWxvZzoiCgl9LAoJImRldkRlcGVuZGVuY2llcyI6IHsKCQkiQGVmZmVjdC92aXRlc3QiOiAiY2F0YWxvZzoiLAoJCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0IjogIjAuNS4wIiwKCQkiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwiOiAiMC41LjAiLAoJCSJAc2hpdmFlZGV2L3F1YWxpdHkiOiAiMC4yMi4wIiwKCQkiQHNoaXZhZWRldi90ZXN0LXN0b3J5IjogIjAuNC4xIiwKCQkiQHRhaWx3aW5kY3NzL3ZpdGUiOiAiY2F0YWxvZzoiLAoJCSJAdHlwZXMvbm9kZSI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9wZyI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9yZWFjdCI6ICJjYXRhbG9nOiIsCgkJIkB0eXBlcy9yZWFjdC1kb20iOiAiY2F0YWxvZzoiLAoJCSJAdml0ZWpzL3BsdWdpbi1yZWFjdCI6ICJjYXRhbG9nOiIsCgkJImhhcHB5LWRvbSI6ICJjYXRhbG9nOiIsCgkJInJhaWx3YXkiOiAiY2F0YWxvZzoiLAoJCSJ0YWlsd2luZGNzcyI6ICJjYXRhbG9nOiIsCgkJInR5cGVzY3JpcHQiOiAiY2F0YWxvZzoiLAoJCSJ2aXRlIjogImNhdGFsb2c6IiwKCQkidml0ZXN0IjogImNhdGFsb2c6IgoJfSwKCSJwYWNrYWdlTWFuYWdlciI6ICJwbnBtQDEyLjguMSIsCgkiZW5naW5lcyI6IHsKCQkibm9kZSI6ICI+PTI0IgoJfQp9Cg==","path":"package.json"},{"content":"cGFja2FnZXM6IFtdCgojIEZyYW1ld29yayByZWxlYXNlcyBtdXN0IGJlIHVzYWJsZSB0b2dldGhlciBhcyBzb29uIGFzIHRoZXkgcHVibGlzaC4KbWluaW11bVJlbGVhc2VBZ2VFeGNsdWRlOiBbIkBzaGl2YWVkZXYvKiJdCgpvdmVycmlkZXM6CiAgIkBlZmZlY3QvcGxhdGZvcm0tbm9kZS1zaGFyZWQiOiAiY2F0YWxvZzoiCgphbGxvd0J1aWxkczoKICBlc2J1aWxkOiB0cnVlCiAgbXNncGFja3ItZXh0cmFjdDogdHJ1ZQoKY2F0YWxvZzoKICByYWlsd2F5OiAzLjEzLjEKICAiQGVmZmVjdC9hdG9tLXJlYWN0IjogNC4wLjQKICAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlIjogNC4wLjQKICAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlLXNoYXJlZCI6IDQuMC40CiAgIkBlZmZlY3Qvc3FsLXBnIjogNC4wLjQKICAiQGVmZmVjdC92aXRlc3QiOiA0LjAuNAogICJAdGFpbHdpbmRjc3Mvdml0ZSI6IDQuMy4zCiAgIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOiAxLjE3MC40MQogICJAdHlwZXMvbm9kZSI6IDI0LjE5LjEKICAiQHR5cGVzL3BnIjogOC4yMC4wCiAgIkB0eXBlcy9yZWFjdCI6IDE5LjIuMTgKICAiQHR5cGVzL3JlYWN0LWRvbSI6IDE5LjIuNAogICJAdml0ZWpzL3BsdWdpbi1yZWFjdCI6IDYuMC41CiAgY2xhc3MtdmFyaWFuY2UtYXV0aG9yaXR5OiAwLjcuMQogIGJldHRlci1hdXRoOiAxLjcuNwogIGNsc3g6IDIuMS4xCiAgZWZmZWN0OiA0LjAuNAogIGhhcHB5LWRvbTogMjAuMTQuNgogIHBnOiA4LjIzLjAKICByZWFjdDogMTkuMi44CiAgcmVhY3QtZG9tOiAxOS4yLjgKICB0YWlsd2luZC1tZXJnZTogMy43LjAKICB0YWlsd2luZGNzczogNC4zLjMKICB0eXBlc2NyaXB0OiBucG06QHR5cGVzY3JpcHQvdHlwZXNjcmlwdDZANi4wLjIKICB2aXRlOiA4LjIuMAogIHZpdGVzdDogNS4wLjMK","path":"pnpm-workspace.yaml"},{"content":"ewoJIkBzaGl2YWVkZXYvZWZmZWN0LWNoYW5nZXMiOiAiMC4zLjAiLAoJIkBzaGl2YWVkZXYvZWZmZWN0LWNoYW5nZXMtcHJpc21hIjogIjAuNS4xIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdCI6ICIwLjUuMSIsCgkiQHNoaXZhZWRldi9lZmZlY3QtZm9ybSI6ICIwLjQuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcyI6ICIwLjguMCIsCgkiQHNoaXZhZWRldi9lZmZlY3QtcHJpc21hIjogIjAuOS4xIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdCI6ICIwLjQuMSIsCgkiQHNoaXZhZWRldi9lZmZlY3Qtc2VydmljZSI6ICIwLjMuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3Qtc3FsIjogIjAuNS4wIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0IjogIjAuNS4wIiwKCSJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbCI6ICIwLjUuMCIsCgkiQHNoaXZhZWRldi9lZmZlY3QtdHJwYyI6ICIwLjcuMSIsCgkiQHNoaXZhZWRldi9sb2NhbC1wb3N0Z3JlcyI6ICIwLjIuMSIsCgkiQHNoaXZhZWRldi9wbGF0Zm9ybSI6ICIwLjE0LjEiLAoJIkBzaGl2YWVkZXYvcXVhbGl0eSI6ICIwLjIyLjAiLAoJIkBzaGl2YWVkZXYvdGVzdC1zdG9yeSI6ICIwLjQuMSIsCgkiQHNoaXZhZWRldi90eXBlcyI6ICIwLjIuMSIKfQo=","path":"published-versions.json"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCwgb25UZXN0RmluaXNoZWQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBldmVudHVhbGx5LCBleHBlY3ROb1JlYWN0V2FybmluZ3MsIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBhcHBBdXRoIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBBdXRoLnRzIjsKaW1wb3J0IHsgbm90ZXNDbGllbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L25vdGVzQ2xpZW50LnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB7IEFwcCB9IGZyb20gIi4vQXBwLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgiY2hlY2tzIGFuZCByZXRyaWVzIHRoZSBzZXNzaW9uIHRocm91Z2ggaXRzIGluamVjdGVkIGF1dGggY2xpZW50IiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGZpeHR1cmUgPSBhcHBBdXRoKHsgYmFzZVVybDogImh0dHA6Ly9zZXNzaW9uLnN0b3J5LnRlc3QiLCBzZXNzaW9uRmFpbHVyZTogdHJ1ZSB9KTsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiL3NpZ24taW4iXSB9KTsKCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKDxBcHAgYXV0aD17Zml4dHVyZS5hdXRofSBjb25uZWN0PXsoKSA9PiBjbGllbnR9IGhpc3Rvcnk9e2hpc3Rvcnl9IC8+KTsKCQlvblRlc3RGaW5pc2hlZCh2aWV3LnVubW91bnQpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpPy50ZXh0Q29udGVudCkudG9CZSgiQ291bGQgbm90IGNoZWNrIHlvdXIgc2Vzc2lvbi4iKSk7CgkJZml4dHVyZS5yZWNvdmVyKCk7CgkJYXdhaXQgYWN0KGFzeW5jICgpID0+IHsKCQkJdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcjxIVE1MQnV0dG9uRWxlbWVudD4oImJ1dHRvbiIpPy5jbGljaygpOwoJCQlhd2FpdCBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4gc2V0VGltZW91dChyZXNvbHZlLCAxMCkpOwoJCX0pOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImgxIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIikpOwoJCWV4cGVjdChmaXh0dXJlLnJlcXVlc3RzLm1hcCgodXJsKSA9PiB1cmwuaHJlZikpLnRvRXF1YWwoWwoJCQkiaHR0cDovL3Nlc3Npb24uc3RvcnkudGVzdC9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIsCgkJCSJodHRwOi8vc2Vzc2lvbi5zdG9yeS50ZXN0L2FwaS9hdXRoL2dldC1zZXNzaW9uIiwKCQldKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoInJvdXRlcyBzaWduLW91dCB0aHJvdWdoIHRoZSBzYW1lIGluamVjdGVkIGF1dGggY2xpZW50IGFzIGl0cyBzZXNzaW9uIGNoZWNrIiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGZpeHR1cmUgPSBhcHBBdXRoKHsgYmFzZVVybDogImh0dHA6Ly9hY3Rpb25zLnN0b3J5LnRlc3QiLCBzaWduZWRJbjogdHJ1ZSwgc2lnbk91dEZhaWx1cmU6ICJQcm92aWRlciByZWZ1c2VkIHNpZ24tb3V0IiB9KTsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pOwoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPEFwcCBhdXRoPXtmaXh0dXJlLmF1dGh9IGNvbm5lY3Q9eygpID0+IGNsaWVudH0gaGlzdG9yeT17aGlzdG9yeX0gLz4pOwoJCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiTm8gbm90ZXMgeWV0IikpOwoJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiU2lnbiBvdXQiKT8uY2xpY2soKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJQcm92aWRlciByZWZ1c2VkIHNpZ24tb3V0IikpOwoJCWV4cGVjdChmaXh0dXJlLnJlcXVlc3RzLnNvbWUoKHVybCkgPT4gdXJsLnBhdGhuYW1lID09PSAiL2FwaS9hdXRoL3NpZ24tb3V0IikpLnRvQmUodHJ1ZSk7CgkJZXhwZWN0KGZpeHR1cmUucmVxdWVzdHMuZXZlcnkoKHVybCkgPT4gdXJsLm9yaWdpbiA9PT0gImh0dHA6Ly9hY3Rpb25zLnN0b3J5LnRlc3QiKSkudG9CZSh0cnVlKTsKCX0pOwp9KTsK","path":"src/client/App.dom.test.tsx"},{"content":"aW1wb3J0IHR5cGUgeyBBdXRoIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgU2Vzc2lvbkFwcCB9IGZyb20gIi4vU2Vzc2lvbkFwcC50c3giOwoKdHlwZSBTZXNzaW9uUHJvcHMgPSBQYXJhbWV0ZXJzPHR5cGVvZiBTZXNzaW9uQXBwPlswXTsKCmV4cG9ydCBmdW5jdGlvbiBBcHAoeyBhdXRoLCBjb25uZWN0LCBoaXN0b3J5IH06IHsgcmVhZG9ubHkgYXV0aDogQXV0aCB9ICYgUGljazxTZXNzaW9uUHJvcHMsICJjb25uZWN0IiB8ICJoaXN0b3J5Ij4pIHsKCWNvbnN0IHNlc3Npb24gPSBhdXRoLmNsaWVudC51c2VTZXNzaW9uKCk7CglpZiAoc2Vzc2lvbi5pc1BlbmRpbmcpIHsKCQlyZXR1cm4gKAoJCQk8cCBjbGFzc05hbWU9InAtOCIgcm9sZT0ic3RhdHVzIj4KCQkJCUNoZWNraW5nIHlvdXIgc2Vzc2lvbuKApgoJCQk8L3A+CgkJKTsKCX0KCWlmIChzZXNzaW9uLmVycm9yICE9PSBudWxsKSB7CgkJcmV0dXJuICgKCQkJPG1haW4gY2xhc3NOYW1lPSJzcGFjZS15LTQgcC04Ij4KCQkJCTxwIHJvbGU9ImFsZXJ0Ij5Db3VsZCBub3QgY2hlY2sgeW91ciBzZXNzaW9uLjwvcD4KCQkJCTxidXR0b24gb25DbGljaz17KCkgPT4gdm9pZCBzZXNzaW9uLnJlZmV0Y2goKX0gdHlwZT0iYnV0dG9uIj4KCQkJCQlSZXRyeQoJCQkJPC9idXR0b24+CgkJCTwvbWFpbj4KCQkpOwoJfQoJcmV0dXJuICgKCQk8U2Vzc2lvbkFwcAoJCQlhdXRoPXthdXRoLmFjdGlvbnN9CgkJCWNvbm5lY3Q9e2Nvbm5lY3R9CgkJCWhpc3Rvcnk9e2hpc3Rvcnl9CgkJCXJlY2hlY2s9eygpID0+IHZvaWQgc2Vzc2lvbi5yZWZldGNoKCl9CgkJCXNlc3Npb25JZD17c2Vzc2lvbi5kYXRhPy5zZXNzaW9uLmlkID8/ICJhbm9ueW1vdXMifQoJCS8+CgkpOwp9Cg==","path":"src/client/App.tsx"},{"content":"aW1wb3J0IHsgY3ZhLCB0eXBlIFZhcmlhbnRQcm9wcyB9IGZyb20gImNsYXNzLXZhcmlhbmNlLWF1dGhvcml0eSI7CmltcG9ydCB0eXBlIHsgQ29tcG9uZW50UHJvcHMgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGNuIH0gZnJvbSAiLi9jbi50cyI7Cgpjb25zdCBidXR0b25WYXJpYW50cyA9IGN2YSgKCSJpbmxpbmUtZmxleCBoLTEwIHNocmluay0wIGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWNlbnRlciB3aGl0ZXNwYWNlLW5vd3JhcCByb3VuZGVkLW1kIHB4LTQgZm9udC1tZWRpdW0gdGV4dC1zbSB0cmFuc2l0aW9uLWNvbG9ycyBmb2N1cy12aXNpYmxlOm91dGxpbmUtbm9uZSBmb2N1cy12aXNpYmxlOnJpbmctMiBmb2N1cy12aXNpYmxlOnJpbmctcmluZyBkaXNhYmxlZDpwb2ludGVyLWV2ZW50cy1ub25lIGRpc2FibGVkOm9wYWNpdHktNTAiLAoJewoJCWRlZmF1bHRWYXJpYW50czogeyB2YXJpYW50OiAiZGVmYXVsdCIgfSwKCQl2YXJpYW50czogewoJCQl2YXJpYW50OiB7IGRlZmF1bHQ6ICJiZy1wcmltYXJ5IHRleHQtcHJpbWFyeS1mb3JlZ3JvdW5kIGhvdmVyOmJnLXByaW1hcnkvOTAiLCBvdXRsaW5lOiAiYm9yZGVyIGJvcmRlci1pbnB1dCBiZy1iYWNrZ3JvdW5kIGhvdmVyOmJnLW11dGVkIiB9LAoJCX0sCgl9LAopOwoKZXhwb3J0IGZ1bmN0aW9uIEJ1dHRvbih7IGNsYXNzTmFtZSwgdmFyaWFudCwgdHlwZSA9ICJidXR0b24iLCAuLi5wcm9wcyB9OiBDb21wb25lbnRQcm9wczwiYnV0dG9uIj4gJiBWYXJpYW50UHJvcHM8dHlwZW9mIGJ1dHRvblZhcmlhbnRzPikgewoJcmV0dXJuIDxidXR0b24gY2xhc3NOYW1lPXtjbihidXR0b25WYXJpYW50cyh7IHZhcmlhbnQgfSksIGNsYXNzTmFtZSl9IHR5cGU9e3R5cGV9IHsuLi5wcm9wc30gLz47Cn0K","path":"src/client/Button.tsx"},{"content":"aW1wb3J0IHR5cGUgeyBDb21wb25lbnRQcm9wcyB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgY24gfSBmcm9tICIuL2NuLnRzIjsKCmV4cG9ydCBmdW5jdGlvbiBJbnB1dCh7IGNsYXNzTmFtZSwgLi4ucHJvcHMgfTogQ29tcG9uZW50UHJvcHM8ImlucHV0Ij4pIHsKCXJldHVybiAoCgkJPGlucHV0CgkJCWNsYXNzTmFtZT17Y24oCgkJCQkiaC0xMCB3LWZ1bGwgbWluLXctMCByb3VuZGVkLW1kIGJvcmRlciBib3JkZXItaW5wdXQgYmctYmFja2dyb3VuZCBweC0zIHRleHQtc20gZm9jdXMtdmlzaWJsZTpvdXRsaW5lLW5vbmUgZm9jdXMtdmlzaWJsZTpyaW5nLTIgZm9jdXMtdmlzaWJsZTpyaW5nLXJpbmcgZGlzYWJsZWQ6b3BhY2l0eS01MCIsCgkJCQljbGFzc05hbWUsCgkJCSl9CgkJCXsuLi5wcm9wc30KCQkvPgoJKTsKfQo=","path":"src/client/Input.tsx"},{"content":"aW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgZXhwZWN0Tm9SZWFjdFdhcm5pbmdzLCByZW5kZXIgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC90ZXN0aW5nLnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB0eXBlIHsgQXV0aEFjdGlvbnMsIENyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgTG9naW5TY3JlZW4gfSBmcm9tICIuL0xvZ2luU2NyZWVuLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgKCSJzdWJtaXRzIHNpZ251cCBhbmQgc2lnbi1pbiwgcmV0YWlucyByZWplY3RlZCBpbnB1dCwgYW5kIHNob3dzIHByb3ZpZGVyIGFuZCBuZXR3b3JrIGZhaWx1cmVzIiwKCVtdLAoJZnVuY3Rpb24qICh7IGludGVyYWN0LCBlbnRlciwgc3VibWl0IH0pIHsKCQl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCQljb25zdCBjYWxsczogeyBtb2RlOiBzdHJpbmc7IGNyZWRlbnRpYWxzOiBDcmVkZW50aWFscyB9W10gPSBbXTsKCQkJbGV0IG91dGNvbWU6IHN0cmluZyB8IHVuZGVmaW5lZCA9ICJFbWFpbCBpcyBhbHJlYWR5IHJlZ2lzdGVyZWQiOwoJCQlsZXQgdW5hdmFpbGFibGUgPSBmYWxzZTsKCQkJbGV0IGF1dGhlbnRpY2F0ZWQgPSAwOwoJCQljb25zdCBhdXRoOiBBdXRoQWN0aW9ucyA9IHsKCQkJCXNpZ25PdXQ6ICgpID0+IFByb21pc2UucmVzb2x2ZSh1bmRlZmluZWQpLAoJCQkJc3VibWl0OiAobW9kZSwgY3JlZGVudGlhbHMpID0+IHsKCQkJCQljYWxscy5wdXNoKHsgY3JlZGVudGlhbHMsIG1vZGUgfSk7CgkJCQkJaWYgKHVuYXZhaWxhYmxlKSB7CgkJCQkJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIm9mZmxpbmUiKSk7CgkJCQkJfQoJCQkJCXJldHVybiBQcm9taXNlLnJlc29sdmUob3V0Y29tZSk7CgkJCQl9LAoJCQl9OwoJCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKAoJCQkJPExvZ2luU2NyZWVuCgkJCQkJYXV0aD17YXV0aH0KCQkJCQlvbkF1dGhlbnRpY2F0ZWQ9eygpID0+IHsKCQkJCQkJYXV0aGVudGljYXRlZCArPSAxOwoJCQkJCX19CgkJCQkvPiwKCQkJKTsKCQkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCgkJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiQ3JlYXRlIGFuIGFjY291bnQiKT8uY2xpY2soKSk7CgkJCWF3YWl0IGVudGVyKHZpZXcuY29udGFpbmVyLCAiQWxpY2UiLCAiTmFtZSIpOwoJCQlhd2FpdCBlbnRlcih2aWV3LmNvbnRhaW5lciwgImFsaWNlQHN0YXJ0ZXIudGVzdCIsICJFbWFpbCIpOwoJCQlhd2FpdCBlbnRlcih2aWV3LmNvbnRhaW5lciwgImNvcnJlY3QtaG9yc2UiLCAiUGFzc3dvcmQiKTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGNhbGxzKS50b0VxdWFsKFt7IGNyZWRlbnRpYWxzOiB7IGVtYWlsOiAiYWxpY2VAc3RhcnRlci50ZXN0IiwgbmFtZTogIkFsaWNlIiwgcGFzc3dvcmQ6ICJjb3JyZWN0LWhvcnNlIiB9LCBtb2RlOiAic2lnbi11cCIgfV0pOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKG91dGNvbWUpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcjxIVE1MSW5wdXRFbGVtZW50PigiaW5wdXRbdHlwZT1lbWFpbF0iKT8udmFsdWUpLnRvQmUoImFsaWNlQHN0YXJ0ZXIudGVzdCIpOwoJCQlleHBlY3QoYXV0aGVudGljYXRlZCkudG9CZSgwKTsKCQkJb3V0Y29tZSA9IHVuZGVmaW5lZDsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoYXV0aGVudGljYXRlZCkudG9CZSgxKSk7CgkJCWF3YWl0IGFjdCgoKSA9PiBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiVXNlIGFuIGV4aXN0aW5nIGFjY291bnQiKT8uY2xpY2soKSk7CgkJCXVuYXZhaWxhYmxlID0gdHJ1ZTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGNhbGxzLmF0KC0xKT8ubW9kZSkudG9CZSgic2lnbi1pbiIpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJDb3VsZCBub3QgcmVhY2ggYXV0aGVudGljYXRpb24uIFRyeSBhZ2Fpbi4iKTsKCQkJdW5hdmFpbGFibGUgPSBmYWxzZTsKCQkJYXdhaXQgc3VibWl0KHZpZXcuY29udGFpbmVyKTsKCQkJZXhwZWN0KGF1dGhlbnRpY2F0ZWQpLnRvQmUoMik7CgkJfSk7Cgl9LAopOwo=","path":"src/client/LoginScreen.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlSWQsIHVzZVN0YXRlIH0gZnJvbSAicmVhY3QiOwppbXBvcnQgdHlwZSB7IEF1dGhBY3Rpb25zIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAiLi9CdXR0b24udHN4IjsKaW1wb3J0IHsgSW5wdXQgfSBmcm9tICIuL0lucHV0LnRzeCI7CgpleHBvcnQgZnVuY3Rpb24gTG9naW5TY3JlZW4oeyBhdXRoLCBvbkF1dGhlbnRpY2F0ZWQgfTogeyByZWFkb25seSBhdXRoOiBBdXRoQWN0aW9uczsgcmVhZG9ubHkgb25BdXRoZW50aWNhdGVkOiAoKSA9PiB2b2lkIH0pIHsKCWNvbnN0IGlkID0gdXNlSWQoKTsKCWNvbnN0IFttb2RlLCBzZXRNb2RlXSA9IHVzZVN0YXRlPCJzaWduLWluIiB8ICJzaWduLXVwIj4oInNpZ24taW4iKTsKCWNvbnN0IFtjcmVkZW50aWFscywgc2V0Q3JlZGVudGlhbHNdID0gdXNlU3RhdGUoeyBlbWFpbDogIiIsIG5hbWU6ICIiLCBwYXNzd29yZDogIiIgfSk7Cgljb25zdCBbcGVuZGluZywgc2V0UGVuZGluZ10gPSB1c2VTdGF0ZShmYWxzZSk7Cgljb25zdCBbZmFpbHVyZSwgc2V0RmFpbHVyZV0gPSB1c2VTdGF0ZTxzdHJpbmc+KCk7Cgljb25zdCBzdWJtaXRMYWJlbCA9IG1vZGUgPT09ICJzaWduLWluIiA/ICJTaWduIGluIiA6ICJDcmVhdGUgYWNjb3VudCI7Cgljb25zdCBidXR0b25MYWJlbCA9IHBlbmRpbmcgPyAiUGxlYXNlIHdhaXTigKYiIDogc3VibWl0TGFiZWw7Cglhc3luYyBmdW5jdGlvbiBzdWJtaXQoKSB7CgkJc2V0UGVuZGluZyh0cnVlKTsKCQlzZXRGYWlsdXJlKHVuZGVmaW5lZCk7CgkJdHJ5IHsKCQkJY29uc3QgZXJyb3IgPSBhd2FpdCBhdXRoLnN1Ym1pdChtb2RlLCBjcmVkZW50aWFscyk7CgkJCWlmIChlcnJvciA9PT0gdW5kZWZpbmVkKSB7CgkJCQlvbkF1dGhlbnRpY2F0ZWQoKTsKCQkJfSBlbHNlIHsKCQkJCXNldEZhaWx1cmUoZXJyb3IpOwoJCQl9CgkJfSBjYXRjaCB7CgkJCXNldEZhaWx1cmUoIkNvdWxkIG5vdCByZWFjaCBhdXRoZW50aWNhdGlvbi4gVHJ5IGFnYWluLiIpOwoJCX0gZmluYWxseSB7CgkJCXNldFBlbmRpbmcoZmFsc2UpOwoJCX0KCX0KCXJldHVybiAoCgkJPG1haW4gY2xhc3NOYW1lPSJteC1hdXRvIHctZnVsbCBtYXgtdy1tZCBzcGFjZS15LTYgcHgtNCBweS0xMiI+CgkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwiPnttb2RlID09PSAic2lnbi1pbiIgPyAiU2lnbiBpbiIgOiAiQ3JlYXRlIGFuIGFjY291bnQifTwvaDE+CgkJCTxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIj5TaWduIGluIHRvIHZpZXcgYW5kIGFkZCB5b3VyIG5vdGVzLjwvcD4KCQkJPGZvcm0KCQkJCWNsYXNzTmFtZT0ic3BhY2UteS00IgoJCQkJb25TdWJtaXQ9eyhldmVudCkgPT4gewoJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJdm9pZCBzdWJtaXQoKTsKCQkJCX19CgkJCT4KCQkJCXttb2RlID09PSAic2lnbi11cCIgJiYgKAoJCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCQk8bGFiZWwgaHRtbEZvcj17YCR7aWR9LW5hbWVgfT5OYW1lPC9sYWJlbD4KCQkJCQkJPElucHV0CgkJCQkJCQlhdXRvQ29tcGxldGU9Im5hbWUiCgkJCQkJCQlpZD17YCR7aWR9LW5hbWVgfQoJCQkJCQkJb25DaGFuZ2U9eyhldmVudCkgPT4gc2V0Q3JlZGVudGlhbHMoeyAuLi5jcmVkZW50aWFscywgbmFtZTogZXZlbnQudGFyZ2V0LnZhbHVlIH0pfQoJCQkJCQkJcmVxdWlyZWQKCQkJCQkJCXZhbHVlPXtjcmVkZW50aWFscy5uYW1lfQoJCQkJCQkvPgoJCQkJCTwvZGl2PgoJCQkJKX0KCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCTxsYWJlbCBodG1sRm9yPXtgJHtpZH0tZW1haWxgfT5FbWFpbDwvbGFiZWw+CgkJCQkJPElucHV0CgkJCQkJCWF1dG9Db21wbGV0ZT0iZW1haWwiCgkJCQkJCWlkPXtgJHtpZH0tZW1haWxgfQoJCQkJCQlvbkNoYW5nZT17KGV2ZW50KSA9PiBzZXRDcmVkZW50aWFscyh7IC4uLmNyZWRlbnRpYWxzLCBlbWFpbDogZXZlbnQudGFyZ2V0LnZhbHVlIH0pfQoJCQkJCQlyZXF1aXJlZAoJCQkJCQl0eXBlPSJlbWFpbCIKCQkJCQkJdmFsdWU9e2NyZWRlbnRpYWxzLmVtYWlsfQoJCQkJCS8+CgkJCQk8L2Rpdj4KCQkJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQkJCTxsYWJlbCBodG1sRm9yPXtgJHtpZH0tcGFzc3dvcmRgfT5QYXNzd29yZDwvbGFiZWw+CgkJCQkJPElucHV0CgkJCQkJCWF1dG9Db21wbGV0ZT17bW9kZSA9PT0gInNpZ24taW4iID8gImN1cnJlbnQtcGFzc3dvcmQiIDogIm5ldy1wYXNzd29yZCJ9CgkJCQkJCWlkPXtgJHtpZH0tcGFzc3dvcmRgfQoJCQkJCQltaW5MZW5ndGg9ezh9CgkJCQkJCW9uQ2hhbmdlPXsoZXZlbnQpID0+IHNldENyZWRlbnRpYWxzKHsgLi4uY3JlZGVudGlhbHMsIHBhc3N3b3JkOiBldmVudC50YXJnZXQudmFsdWUgfSl9CgkJCQkJCXJlcXVpcmVkCgkJCQkJCXR5cGU9InBhc3N3b3JkIgoJCQkJCQl2YWx1ZT17Y3JlZGVudGlhbHMucGFzc3dvcmR9CgkJCQkJLz4KCQkJCTwvZGl2PgoJCQkJe2ZhaWx1cmUgIT09IHVuZGVmaW5lZCAmJiAoCgkJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIiByb2xlPSJhbGVydCI+CgkJCQkJCXtmYWlsdXJlfQoJCQkJCTwvcD4KCQkJCSl9CgkJCQk8QnV0dG9uIGRpc2FibGVkPXtwZW5kaW5nfSB0eXBlPSJzdWJtaXQiPgoJCQkJCXtidXR0b25MYWJlbH0KCQkJCTwvQnV0dG9uPgoJCQk8L2Zvcm0+CgkJCTxCdXR0b24KCQkJCWRpc2FibGVkPXtwZW5kaW5nfQoJCQkJb25DbGljaz17KCkgPT4gewoJCQkJCXNldE1vZGUobW9kZSA9PT0gInNpZ24taW4iID8gInNpZ24tdXAiIDogInNpZ24taW4iKTsKCQkJCQlzZXRGYWlsdXJlKHVuZGVmaW5lZCk7CgkJCQl9fQoJCQkJdmFyaWFudD0ib3V0bGluZSIKCQkJPgoJCQkJe21vZGUgPT09ICJzaWduLWluIiA/ICJDcmVhdGUgYW4gYWNjb3VudCIgOiAiVXNlIGFuIGV4aXN0aW5nIGFjY291bnQifQoJCQk8L0J1dHRvbj4KCQk8L21haW4+CgkpOwp9Cg==","path":"src/client/LoginScreen.tsx"},{"content":"aW1wb3J0IHsgT3B0aW9uLCBQcmVkaWNhdGUgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyB1c2VJZCB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlRmllbGQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtL3JlYWN0LnRzIjsKaW1wb3J0IHsgdXNlQ3JlYXRlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvY3JlYXRlLnRzIjsKaW1wb3J0IHsgTm90ZUZpZWxkcyB9IGZyb20gIiNub3Rlcy50cyI7CmltcG9ydCB7IEJ1dHRvbiB9IGZyb20gIi4vQnV0dG9uLnRzeCI7CmltcG9ydCB7IElucHV0IH0gZnJvbSAiLi9JbnB1dC50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVDcmVhdGUoeyBjbGllbnQgfTogeyByZWFkb25seSBjbGllbnQ6IE5vdGVzQ2xpZW50IH0pIHsKCWNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpOwoJY29uc3QgZXJyb3JJZCA9IHVzZUlkKCk7Cgljb25zdCBjcmVhdGUgPSB1c2VDcmVhdGUoeyBjcmVhdGU6IGNsaWVudC5hcGkuY3JlYXRlLnJ1biwgZmllbGRzOiBOb3RlRmllbGRzLCBpbml0aWFsVmFsdWVzOiB7IHRpdGxlOiAiIiB9LCBydW50aW1lOiBjbGllbnQucnVudGltZSB9KTsKCWNvbnN0IHRpdGxlID0gdXNlRmllbGQoY3JlYXRlLmZvcm0sICJ0aXRsZSIpOwoJcmV0dXJuICgKCQk8Zm9ybQoJCQljbGFzc05hbWU9InNwYWNlLXktMyIKCQkJb25TdWJtaXQ9eyhldmVudCkgPT4gewoJCQkJZXZlbnQucHJldmVudERlZmF1bHQoKTsKCQkJCWNyZWF0ZS5zYXZlKCk7CgkJCX19CgkJPgoJCQk8bGFiZWwgY2xhc3NOYW1lPSJibG9jayBmb250LW1lZGl1bSB0ZXh0LXNtIiBodG1sRm9yPXt0aXRsZUlkfT4KCQkJCU5ldyBub3RlCgkJCTwvbGFiZWw+CgkJCTxkaXYgY2xhc3NOYW1lPSJmbGV4IGZsZXgtY29sIGdhcC0zIHNtOmZsZXgtcm93Ij4KCQkJCTxJbnB1dAoJCQkJCWFyaWEtZGVzY3JpYmVkYnk9e3RpdGxlLmVycm9yID8gZXJyb3JJZCA6IHVuZGVmaW5lZH0KCQkJCQlhcmlhLWludmFsaWQ9e0Jvb2xlYW4odGl0bGUuZXJyb3IpfQoJCQkJCWlkPXt0aXRsZUlkfQoJCQkJCW9uQmx1cj17dGl0bGUub25CbHVyfQoJCQkJCW9uQ2hhbmdlPXsoZXZlbnQpID0+IHRpdGxlLm9uQ2hhbmdlKGV2ZW50LnRhcmdldC52YWx1ZSl9CgkJCQkJcGxhY2Vob2xkZXI9IlNvbWV0aGluZyB0byByZW1lbWJlciIKCQkJCQl2YWx1ZT17dGl0bGUudmFsdWV9CgkJCQkvPgoJCQkJPEJ1dHRvbiBkaXNhYmxlZD17Y3JlYXRlLnNhdmluZ30gdHlwZT0ic3VibWl0Ij4KCQkJCQl7Y3JlYXRlLnNhdmluZyA/ICJBZGRpbmfigKYiIDogIkFkZCBub3RlIn0KCQkJCTwvQnV0dG9uPgoJCQk8L2Rpdj4KCQkJe0Jvb2xlYW4odGl0bGUuZXJyb3IpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiBpZD17ZXJyb3JJZH0gcm9sZT0iYWxlcnQiPgoJCQkJCXt0aXRsZS5lcnJvcn0KCQkJCTwvcD4KCQkJKX0KCQkJe09wdGlvbi5pc1NvbWUoY3JlYXRlLmZhaWx1cmUpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiByb2xlPSJhbGVydCI+CgkJCQkJe1ByZWRpY2F0ZS5pc1RhZ2dlZChjcmVhdGUuZmFpbHVyZS52YWx1ZSwgIlVuYXV0aG9yaXplZCIpID8gIlNpZ24gaW4gdG8gYWRkIGEgbm90ZS4iIDogIkNvdWxkIG5vdCBhZGQgdGhlIG5vdGUuIFRyeSBhZ2Fpbi4ifQoJCQkJPC9wPgoJCQkpfQoJCQk8cCBhcmlhLWxpdmU9InBvbGl0ZSIgY2xhc3NOYW1lPSJ0ZXh0LW11dGVkLWZvcmVncm91bmQgdGV4dC1zbSI+CgkJCQl7T3B0aW9uLmlzU29tZShjcmVhdGUuY3JlYXRlZCkgPyBgQWRkZWQgJHtjcmVhdGUuY3JlYXRlZC52YWx1ZS50aXRsZX1gIDogIk5vdGVzIGFyZSBzYXZlZCB0byBQb3N0Z3JlU1FMLiJ9CgkJCTwvcD4KCQk8L2Zvcm0+CgkpOwp9Cg==","path":"src/client/NoteCreate.tsx"},{"content":"aW1wb3J0IHsgQ2F1c2UsIE9wdGlvbiwgUHJlZGljYXRlIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgdXNlRWZmZWN0LCB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlQWN0aW9uIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvcmVzdWx0LXN0YXRlLnRzIjsKaW1wb3J0IHR5cGUgeyBEZWxldGUsIE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBCdXR0b24gfSBmcm9tICIuL0J1dHRvbi50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVEZWxldGUoewoJY2xpZW50LAoJbm90ZSwKCW9uRGVsZXRlZCwKCXNhdmluZywKfTogewoJcmVhZG9ubHkgY2xpZW50OiBOb3Rlc0NsaWVudDsKCXJlYWRvbmx5IG5vdGU6IHR5cGVvZiBOb3RlLlR5cGU7CglyZWFkb25seSBvbkRlbGV0ZWQ6ICgpID0+IHZvaWQ7CglyZWFkb25seSBzYXZpbmc6IGJvb2xlYW47Cn0pIHsKCWNvbnN0IFtyZW1vdmVdID0gdXNlU3RhdGUoKCkgPT4gY2xpZW50LnJ1bnRpbWUuZm4oKGlucHV0OiB0eXBlb2YgRGVsZXRlLnBheWxvYWQuVHlwZSkgPT4gY2xpZW50LmFwaS5kZWxldGUucnVuKGlucHV0KSkpOwoJY29uc3QgYWN0aW9uID0gdXNlQWN0aW9uKHJlbW92ZSk7Cgl1c2VFZmZlY3QoKCkgPT4gewoJCWlmIChPcHRpb24uaXNTb21lKGFjdGlvbi5kYXRhKSkgewoJCQlvbkRlbGV0ZWQoKTsKCQl9Cgl9LCBbYWN0aW9uLmRhdGEsIG9uRGVsZXRlZF0pOwoJY29uc3QgZmFpbHVyZSA9IE9wdGlvbi5mbGF0TWFwKGFjdGlvbi5jYXVzZSwgQ2F1c2UuZmluZEVycm9yT3B0aW9uKTsKCXJldHVybiAoCgkJPGRpdiBjbGFzc05hbWU9InNwYWNlLXktMyI+CgkJCTxCdXR0b24gZGlzYWJsZWQ9e3NhdmluZyB8fCBhY3Rpb24ucGVuZGluZ30gb25DbGljaz17KCkgPT4gYWN0aW9uLmRpc3BhdGNoKHsgaWQ6IG5vdGUuaWQsIHZlcnNpb246IG5vdGUudmVyc2lvbiB9KX0gdmFyaWFudD0ib3V0bGluZSI+CgkJCQl7YWN0aW9uLnBlbmRpbmcgPyAiRGVsZXRpbmfigKYiIDogIkRlbGV0ZSBub3RlIn0KCQkJPC9CdXR0b24+CgkJCXtPcHRpb24uaXNTb21lKGZhaWx1cmUpICYmICgKCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1kZXN0cnVjdGl2ZSB0ZXh0LXNtIiByb2xlPSJhbGVydCI+CgkJCQkJe1ByZWRpY2F0ZS5pc1RhZ2dlZChmYWlsdXJlLnZhbHVlLCAiQ29uZmxpY3QiKSA/IGZhaWx1cmUudmFsdWUubWVzc2FnZSA6ICJDb3VsZCBub3QgZGVsZXRlIHRoZSBub3RlLiBUcnkgYWdhaW4uIn0KCQkJCTwvcD4KCQkJKX0KCQk8L2Rpdj4KCSk7Cn0K","path":"src/client/NoteDelete.tsx"},{"content":"aW1wb3J0ICogYXMgQXN5bmNSZXN1bHQgZnJvbSAiZWZmZWN0L3JlYWN0aXZpdHkvQXN5bmNSZXN1bHQiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGV2ZW50dWFsbHksIGV4cGVjdE5vUmVhY3RXYXJuaW5ncyB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBlZGl0aW5nTm90ZSwgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmV4cGVjdE5vUmVhY3RXYXJuaW5ncygpOwoKc2NyZWVucy5pdCgic2hhcmVzIHRoZSB0eXBlZCBkZXRhaWwgcm91dGUncyBxdWVyeSBhbmQgcmV0YWlucyBhbiBlZGl0IHRocm91Z2ggYSBsaXZlIHJlZnJlc2giLCBbZWRpdGluZ05vdGUoKV0sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgeyBjbGllbnQsIGVudGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFsiZ2V0Il0pOwoJCWF3YWl0IGVudGVyKCJLZWVwIG15IGRyYWZ0Iik7CgkJYXdhaXQgYWN0KCgpID0+IGNsaWVudC5yZXZpc2VOb3RlKDEsICJDaGFuZ2VkIGVsc2V3aGVyZSIpKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+CgkJCWV4cGVjdChBc3luY1Jlc3VsdC5nZXRPckVsc2Uodmlldy5yZWdpc3RyeS5nZXQoY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogMSB9KSksICgpID0+IHVuZGVmaW5lZCk/LnRpdGxlKS50b0JlKCJDaGFuZ2VkIGVsc2V3aGVyZSIpLAoJCSk7CgkJZXhwZWN0KGNsaWVudC5jYWxscy5maWx0ZXIoKGNhbGwpID0+IGNhbGwgPT09ICJnZXQiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigxKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIktlZXAgbXkgZHJhZnQiKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiVW5zYXZlZCBjaGFuZ2VzIik7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KAoJInNob3dzIGEgc3RhbGUgZWRpdCBjb25mbGljdCwga2VlcHMgdGhlIGlucHV0LCB0aGVuIHJlZnJlc2hlcyBhbmQgc2F2ZXMgdGhlIHJldmlld2VkIGRyYWZ0IiwKCVtlZGl0aW5nTm90ZSgpXSwKCWZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCQl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCQljb25zdCB7IGNsaWNrLCBjbGllbnQsIGVudGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQkJYXdhaXQgZW50ZXIoIiAgTXkgZHJhZnQgICIpOwoJCQlhd2FpdCBjbGllbnQucmV2aXNlTm90ZSgxLCAiU2F2ZWQgZWxzZXdoZXJlIiwgZmFsc2UpOwoJCQlhd2FpdCBjbGljaygiU2F2ZSBub3RlIik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCJUaGlzIG5vdGUgY2hhbmdlZCIpKTsKCQkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCIgIE15IGRyYWZ0ICAiKTsKCQkJYXdhaXQgY2xpY2soIlJlZnJlc2giKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImdldCIpKS50b0hhdmVMZW5ndGgoMikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIiAgTXkgZHJhZnQgICIpOwoJCQlhd2FpdCBjbGljaygiU2F2ZSBub3RlIik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCJNeSBkcmFmdCIpKTsKCQkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoIltyb2xlPWFsZXJ0XSIpKS50b0JlTnVsbCgpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIudGV4dENvbnRlbnQpLnRvQ29udGFpbigiQWxsIGNoYW5nZXMgc2F2ZWQiKTsKCQl9KTsKCX0sCik7CgpzY3JlZW5zLml0KCJyZXRhaW5zIGEgZmllbGQgcmVqZWN0aW9uIHdoaWxlIGVkaXRpbmciLCBbZWRpdGluZ05vdGUoKV0sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZWRpdG9yIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgeyBjbGljaywgZW50ZXIsIHZpZXcgfSA9IGVkaXRvcigpOwoJCWF3YWl0IGVudGVyKCJyZXNlcnZlZCIpOwoJCWF3YWl0IGNsaWNrKCJTYXZlIG5vdGUiKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNob29zZSBhbm90aGVyIHRpdGxlIikpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgicmVzZXJ2ZWQiKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoImRlbGV0ZXMgYSBub3RlIGFuZCByZXR1cm5zIHRvIHRoZSByZWZyZXNoZWQgbGlzdCB3aXRob3V0IGl0IiwgW2VkaXRpbmdOb3RlKCldLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QsIGVkaXRvciB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IHsgY2xpY2ssIGNsaWVudCwgcm91dGVyLCB2aWV3IH0gPSBlZGl0b3IoKTsKCQlhd2FpdCBhY3QoKCkgPT4gcm91dGVyLm5hdmlnYXRlKHsgdG86ICIvIiB9KSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkgPiBhIik/LnRleHRDb250ZW50KS50b0JlKCJGaXJzdCBub3RlIikpOwoJCWF3YWl0IGFjdCgoKSA9PiB2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yPEhUTUxBbmNob3JFbGVtZW50PigibGkgPiBhIik/LmNsaWNrKCkpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0Iik/LnZhbHVlKS50b0JlKCJGaXJzdCBub3RlIikpOwoJCWF3YWl0IGNsaWNrKCJEZWxldGUgbm90ZSIpOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHJvdXRlci5zdGF0ZS5sb2NhdGlvbi5wYXRobmFtZSkudG9CZSgiLyIpKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci50ZXh0Q29udGVudCkudG9Db250YWluKCJObyBub3RlcyB5ZXQiKSk7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImxpIikpLnRvQmVOdWxsKCk7CgkJZXhwZWN0KGNsaWVudC5jYWxscykudG9Db250YWluKCJkZWxldGUiKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImxpc3QiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigxKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoImtlZXBzIHRoZSBlZGl0b3Igb3BlbiB3aGVuIGRlbGV0aW9uIGNvbmZsaWN0cyB3aXRoIGEgbmV3ZXIgdmVyc2lvbiIsIFtlZGl0aW5nTm90ZSgpXSwgZnVuY3Rpb24qICh7IGludGVyYWN0LCBlZGl0b3IgfSkgewoJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQljb25zdCB7IGNsaWNrLCBjbGllbnQsIHJvdXRlciwgdmlldyB9ID0gZWRpdG9yKCk7CgkJYXdhaXQgY2xpZW50LnJldmlzZU5vdGUoMSwgIlNhdmVkIGVsc2V3aGVyZSIsIGZhbHNlKTsKCQlhd2FpdCBjbGljaygiRGVsZXRlIG5vdGUiKTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQ29udGFpbigiVGhpcyBub3RlIGNoYW5nZWQiKSk7CgkJZXhwZWN0KHJvdXRlci5zdGF0ZS5sb2NhdGlvbi5wYXRobmFtZSkudG9CZSgiL25vdGVzLzEiKTsKCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIkZpcnN0IG5vdGUiKTsKCX0pOwp9KTsK","path":"src/client/NoteEdit.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlQXRvbU1vdW50IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgTGluayB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBPcHRpb24sIFByZWRpY2F0ZSB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IHVzZUlkIH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyB1c2VGaWVsZCB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWZvcm0vcmVhY3QudHMiOwppbXBvcnQgdHlwZSB7IEZvcm0gfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1mb3JtL3NoYXBlLnRzIjsKaW1wb3J0IHsgdXNlRWRpdG9yIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvZWRpdG9yLnRzIjsKaW1wb3J0IHsgZmllbGRSZWplY3Rpb25PZiB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L2ZpZWxkLXJlamVjdGlvbi50cyI7CmltcG9ydCB7IE5vdGVFZGl0RmllbGRzIH0gZnJvbSAiI25vdGVzLnRzIjsKaW1wb3J0IHsgQnV0dG9uIH0gZnJvbSAiLi9CdXR0b24udHN4IjsKaW1wb3J0IHsgSW5wdXQgfSBmcm9tICIuL0lucHV0LnRzeCI7CmltcG9ydCB0eXBlIHsgTm90ZXNDbGllbnQgfSBmcm9tICIuL21ha2VOb3Rlcy50cyI7CmltcG9ydCB7IE5vdGVEZWxldGUgfSBmcm9tICIuL05vdGVEZWxldGUudHN4IjsKCmZ1bmN0aW9uIFRpdGxlPEEsIEUsIFRSdW50aW1lRXJyb3I+KHsgZm9ybSB9OiB7IHJlYWRvbmx5IGZvcm06IEZvcm08dHlwZW9mIE5vdGVFZGl0RmllbGRzLmZpZWxkcywgQSwgRSwgVFJ1bnRpbWVFcnJvcj4gfSkgewoJY29uc3QgdGl0bGUgPSB1c2VGaWVsZChmb3JtLCAidGl0bGUiKTsKCWNvbnN0IHRpdGxlSWQgPSB1c2VJZCgpOwoJY29uc3QgZXJyb3JJZCA9IHVzZUlkKCk7CglyZXR1cm4gKAoJCTxkaXYgY2xhc3NOYW1lPSJzcGFjZS15LTIiPgoJCQk8bGFiZWwgY2xhc3NOYW1lPSJibG9jayBmb250LW1lZGl1bSB0ZXh0LXNtIiBodG1sRm9yPXt0aXRsZUlkfT4KCQkJCVRpdGxlCgkJCTwvbGFiZWw+CgkJCTxJbnB1dAoJCQkJYXJpYS1kZXNjcmliZWRieT17dGl0bGUuZXJyb3IgPyBlcnJvcklkIDogdW5kZWZpbmVkfQoJCQkJYXJpYS1pbnZhbGlkPXtCb29sZWFuKHRpdGxlLmVycm9yKX0KCQkJCWlkPXt0aXRsZUlkfQoJCQkJb25CbHVyPXt0aXRsZS5vbkJsdXJ9CgkJCQlvbkNoYW5nZT17KGV2ZW50KSA9PiB0aXRsZS5vbkNoYW5nZShldmVudC50YXJnZXQudmFsdWUpfQoJCQkJdmFsdWU9e3RpdGxlLnZhbHVlfQoJCQkvPgoJCQl7Qm9vbGVhbih0aXRsZS5lcnJvcikgJiYgKAoJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIHRleHQtc20iIGlkPXtlcnJvcklkfSByb2xlPSJhbGVydCI+CgkJCQkJe3RpdGxlLmVycm9yfQoJCQkJPC9wPgoJCQkpfQoJCTwvZGl2PgoJKTsKfQoKZXhwb3J0IGZ1bmN0aW9uIE5vdGVFZGl0KHsgY2xpZW50LCBub3RlSWQsIG9uRGVsZXRlZCB9OiB7IHJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7IHJlYWRvbmx5IG5vdGVJZDogbnVtYmVyOyByZWFkb25seSBvbkRlbGV0ZWQ6ICgpID0+IHZvaWQgfSkgewoJdXNlQXRvbU1vdW50KGNsaWVudC5jb25uZWN0aW9uKTsKCWNvbnN0IGVkaXRvciA9IHVzZUVkaXRvcih7CgkJZmllbGRzOiBOb3RlRWRpdEZpZWxkcywKCQlxdWVyeTogY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogbm90ZUlkIH0pLAoJCXJlamVjdEZpZWxkOiBmaWVsZFJlamVjdGlvbk9mKE5vdGVFZGl0RmllbGRzKSwKCQlydW50aW1lOiBjbGllbnQucnVudGltZSwKCQlzYXZlOiAodmFsdWVzKSA9PiBjbGllbnQuYXBpLnVwZGF0ZS5ydW4oeyBpZDogbm90ZUlkLCAuLi52YWx1ZXMgfSksCgkJdmFsdWVzOiAocm93KSA9PiAoeyB0aXRsZTogcm93LnRpdGxlLCB2ZXJzaW9uOiByb3cudmVyc2lvbiB9KSwKCX0pOwoJY29uc3QgY3VycmVudE5vdGUgPSBPcHRpb24uZ2V0T3JVbmRlZmluZWQoZWRpdG9yLnF1ZXJ5LmRhdGEpOwoJY29uc3QgZmFpbHVyZSA9IE9wdGlvbi5tYXAoZWRpdG9yLmZhaWx1cmUsIChlcnJvcikgPT4gewoJCWlmIChQcmVkaWNhdGUuaXNUYWdnZWQoZXJyb3IsICJDb25mbGljdCIpKSB7CgkJCXJldHVybiBlcnJvci5tZXNzYWdlOwoJCX0KCQlpZiAoUHJlZGljYXRlLmlzVGFnZ2VkKGVycm9yLCAiVW5hdXRob3JpemVkIikpIHsKCQkJcmV0dXJuICJTaWduIGluIHRvIHNhdmUgdGhpcyBub3RlLiI7CgkJfQoJCXJldHVybiAiQ291bGQgbm90IHNhdmUgdGhlIG5vdGUuIFRyeSBhZ2Fpbi4iOwoJfSk7CglyZXR1cm4gKAoJCTxtYWluIGNsYXNzTmFtZT0ibXgtYXV0byB3LWZ1bGwgbWF4LXctMnhsIHNwYWNlLXktNiBweC00IHB5LTEyIHNtOnB4LTYiPgoJCQk8TGluayBjbGFzc05hbWU9InVuZGVybGluZSIgdG89Ii8iPgoJCQkJQmFjayB0byBub3RlcwoJCQk8L0xpbms+CgkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwgdHJhY2tpbmctdGlnaHQiPkVkaXQgbm90ZTwvaDE+CgkJCTxCdXR0b24gZGlzYWJsZWQ9e2VkaXRvci5xdWVyeS5wZW5kaW5nfSBvbkNsaWNrPXtlZGl0b3IucXVlcnkucmVmcmVzaH0gdmFyaWFudD0ib3V0bGluZSI+CgkJCQlSZWZyZXNoCgkJCTwvQnV0dG9uPgoJCQl7T3B0aW9uLmlzU29tZShlZGl0b3IucXVlcnkuY2F1c2UpICYmIDxwIHJvbGU9ImFsZXJ0Ij5Db3VsZCBub3QgbG9hZCB0aGlzIG5vdGUuIFRyeSByZWZyZXNoaW5nLjwvcD59CgkJCXtlZGl0b3IuZm9ybSA9PT0gdW5kZWZpbmVkID8gKAoJCQkJPHAgcm9sZT0ic3RhdHVzIj5Mb2FkaW5nIG5vdGXigKY8L3A+CgkJCSkgOiAoCgkJCQk8Zm9ybQoJCQkJCWNsYXNzTmFtZT0ic3BhY2UteS00IHJvdW5kZWQtbGcgYm9yZGVyIGJnLWNhcmQgcC01IHNoYWRvdy1zbSIKCQkJCQlvblN1Ym1pdD17KGV2ZW50KSA9PiB7CgkJCQkJCWV2ZW50LnByZXZlbnREZWZhdWx0KCk7CgkJCQkJCWVkaXRvci5zYXZlKCk7CgkJCQkJfX0KCQkJCT4KCQkJCQk8VGl0bGUgZm9ybT17ZWRpdG9yLmZvcm19IC8+CgkJCQkJPEJ1dHRvbiBkaXNhYmxlZD17ZWRpdG9yLnNhdmluZ30gdHlwZT0ic3VibWl0Ij4KCQkJCQkJe2VkaXRvci5zYXZpbmcgPyAiU2F2aW5n4oCmIiA6ICJTYXZlIG5vdGUifQoJCQkJCTwvQnV0dG9uPgoJCQkJCXtPcHRpb24uaXNTb21lKGZhaWx1cmUpICYmICgKCQkJCQkJPHAgY2xhc3NOYW1lPSJ0ZXh0LWRlc3RydWN0aXZlIHRleHQtc20iIHJvbGU9ImFsZXJ0Ij4KCQkJCQkJCXtmYWlsdXJlLnZhbHVlfQoJCQkJCQk8L3A+CgkJCQkJKX0KCQkJCQk8cCBhcmlhLWxpdmU9InBvbGl0ZSIgY2xhc3NOYW1lPSJ0ZXh0LW11dGVkLWZvcmVncm91bmQgdGV4dC1zbSI+CgkJCQkJCXtlZGl0b3IuZGlydHkgPyAiVW5zYXZlZCBjaGFuZ2VzIiA6ICJBbGwgY2hhbmdlcyBzYXZlZCJ9CgkJCQkJPC9wPgoJCQkJPC9mb3JtPgoJCQkpfQoJCQl7Y3VycmVudE5vdGUgIT09IHVuZGVmaW5lZCAmJiA8Tm90ZURlbGV0ZSBjbGllbnQ9e2NsaWVudH0gbm90ZT17Y3VycmVudE5vdGV9IG9uRGVsZXRlZD17b25EZWxldGVkfSBzYXZpbmc9e2VkaXRvci5zYXZpbmd9IC8+fQoJCTwvbWFpbj4KCSk7Cn0K","path":"src/client/NoteEdit.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgZXhwZWN0Tm9SZWFjdFdhcm5pbmdzLCByZW5kZXIgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC90ZXN0aW5nLnRzIjsKaW1wb3J0IHsgbm90ZXNDbGllbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L25vdGVzQ2xpZW50LnRzIjsKaW1wb3J0IHsgc2NyZWVuQXV0aCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVuQXV0aC50cyI7CmltcG9ydCB7IHNjcmVlbnMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3NjcmVlbnMudHMiOwppbXBvcnQgeyBhcHBSb3V0ZXIgfSBmcm9tICIuL2FwcFJvdXRlci50c3giOwoKT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7ICJJU19SRUFDVF9BQ1RfRU5WSVJPTk1FTlQiOiB0cnVlIH0pOwpleHBlY3ROb1JlYWN0V2FybmluZ3MoKTsKCnNjcmVlbnMuaXQoCgkic2hhcmVzIHRoZSByb3V0ZSBxdWVyeSwgdmFsaWRhdGVzIHRoZSBmb3JtLCByZXRhaW5zIGEgcmVqZWN0ZWQgdGl0bGUgYW5kIHJlZnJlc2hlcyBhZnRlciBjcmVhdGlvbiIsCglbXSwKCWZ1bmN0aW9uKiAoeyBpbnRlcmFjdCwgZW50ZXIsIHN1Ym1pdCB9KSB7CgkJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQkJY29uc3QgY2xpZW50ID0gbm90ZXNDbGllbnQoKTsKCQkJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCQkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQkJY29uc3Qgcm91dGVyID0gYXBwUm91dGVyKHZpZXcucmVnaXN0cnksIGNsaWVudCwgc2NyZWVuQXV0aCgpLCBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pKTsKCQkJYXdhaXQgdmlldy5yZW5kZXIoPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPik7CgkJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KHZpZXcuY29udGFpbmVyLnRleHRDb250ZW50KS50b0NvbnRhaW4oIk5vIG5vdGVzIHlldCIpKTsKCQkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiXSk7CgoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIlJlcXVpcmVkIikpOwoJCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFsibGlzdCJdKTsKCQkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJyZXNlcnZlZCIpOwoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNob29zZSBhbm90aGVyIHRpdGxlIikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoInJlc2VydmVkIik7CgkJCWF3YWl0IGVudGVyKHZpZXcuY29udGFpbmVyLCAiRmlyc3Qgbm90ZSIpOwoJCQlhd2FpdCBzdWJtaXQodmlldy5jb250YWluZXIpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSA+IGEiKT8udGV4dENvbnRlbnQpLnRvQmUoIkZpcnN0IG5vdGUiKSk7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgiIik7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKSkudG9CZU51bGwoKTsKCQkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiLCAiY3JlYXRlIiwgImxpc3QiXSk7CgkJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCJDb3VudGluZyB3b3Jkc+KApiIpOwoJCQlhd2FpdCBhY3QoKCkgPT4gY2xpZW50LmZpbmlzaE5vdGUoMSwgMikpOwoJCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpPy50ZXh0Q29udGVudCkudG9Db250YWluKCIyIHdvcmRzIikpOwoJCQlleHBlY3QoY2xpZW50LmNhbGxzLmZpbHRlcigoY2FsbCkgPT4gY2FsbCA9PT0gImxpc3QiKS5sZW5ndGgpLnRvQmVHcmVhdGVyVGhhbigyKTsKCQkJYXdhaXQgYWN0KCgpID0+IGNsaWVudC5maW5pc2hOb3RlKDEsIDEpKTsKCQkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkiKT8udGV4dENvbnRlbnQpLnRvQ29udGFpbigiMSB3b3JkIikpOwoJCQlleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkiKT8udGV4dENvbnRlbnQpLm5vdC50b0NvbnRhaW4oIjEgd29yZHMiKTsKCQl9KTsKCX0sCik7Cg==","path":"src/client/NotesScreen.dom.test.tsx"},{"content":"aW1wb3J0IHsgdXNlQXRvbU1vdW50IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgTGluayB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBPcHRpb24gfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgdXNlUXVlcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC9yZXN1bHQtc3RhdGUudHMiOwppbXBvcnQgdHlwZSB7IE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBCdXR0b24gfSBmcm9tICIuL0J1dHRvbi50c3giOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwppbXBvcnQgeyBOb3RlQ3JlYXRlIH0gZnJvbSAiLi9Ob3RlQ3JlYXRlLnRzeCI7CgpmdW5jdGlvbiB3b3JkQ291bnRMYWJlbChjb3VudDogbnVtYmVyIHwgbnVsbCkgewoJaWYgKGNvdW50ID09PSBudWxsKSB7CgkJcmV0dXJuICJDb3VudGluZyB3b3Jkc+KApiI7Cgl9CglyZXR1cm4gYCR7Y291bnR9ICR7Y291bnQgPT09IDEgPyAid29yZCIgOiAid29yZHMifWA7Cn0KCmZ1bmN0aW9uIFNhdmVkTm90ZSh7IG5vdGUgfTogeyByZWFkb25seSBub3RlOiB0eXBlb2YgTm90ZS5UeXBlIH0pIHsKCXJldHVybiAoCgkJPGxpIGNsYXNzTmFtZT0iYnJlYWstd29yZHMgcm91bmRlZC1sZyBib3JkZXIgYmctY2FyZCBwLTQiPgoJCQk8TGluayBjbGFzc05hbWU9InVuZGVybGluZSIgcGFyYW1zPXt7IG5vdGVJZDogU3RyaW5nKG5vdGUuaWQpIH19IHRvPSIvbm90ZXMvJG5vdGVJZCI+CgkJCQl7bm90ZS50aXRsZX0KCQkJPC9MaW5rPgoJCQk8cCBjbGFzc05hbWU9Im10LTIgdGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHRleHQtc20iPnt3b3JkQ291bnRMYWJlbChub3RlLndvcmRDb3VudCl9PC9wPgoJCTwvbGk+CgkpOwp9CgpleHBvcnQgZnVuY3Rpb24gTm90ZXNTY3JlZW4oeyBjbGllbnQsIG9uU2lnbk91dCB9OiB7IHJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7IHJlYWRvbmx5IG9uU2lnbk91dD86ICgpID0+IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPiB9KSB7Cgl1c2VBdG9tTW91bnQoY2xpZW50LmNvbm5lY3Rpb24pOwoJY29uc3QgW3NpZ25pbmdPdXQsIHNldFNpZ25pbmdPdXRdID0gdXNlU3RhdGUoZmFsc2UpOwoJY29uc3QgW2ZhaWx1cmUsIHNldEZhaWx1cmVdID0gdXNlU3RhdGU8c3RyaW5nPigpOwoJYXN5bmMgZnVuY3Rpb24gc2lnbk91dCgpIHsKCQlzZXRTaWduaW5nT3V0KHRydWUpOwoJCXRyeSB7CgkJCXNldEZhaWx1cmUoYXdhaXQgb25TaWduT3V0Py4oKSk7CgkJfSBjYXRjaCB7CgkJCXNldEZhaWx1cmUoIkNvdWxkIG5vdCBzaWduIG91dC4gVHJ5IGFnYWluLiIpOwoJCX0gZmluYWxseSB7CgkJCXNldFNpZ25pbmdPdXQoZmFsc2UpOwoJCX0KCX0KCWNvbnN0IHF1ZXJ5ID0gdXNlUXVlcnkoY2xpZW50LmFwaS5saXN0LnF1ZXJ5KCkpOwoJY29uc3Qgcm93cyA9IE9wdGlvbi5nZXRPckVsc2UocXVlcnkuZGF0YSwgKCkgPT4gW10pOwoJcmV0dXJuICgKCQk8bWFpbiBjbGFzc05hbWU9Im14LWF1dG8gdy1mdWxsIG1heC13LTJ4bCBzcGFjZS15LTggcHgtNCBweS0xMiBzbTpweC02Ij4KCQkJPGhlYWRlciBjbGFzc05hbWU9InNwYWNlLXktMiI+CgkJCQk8cCBjbGFzc05hbWU9ImZvbnQtbWVkaXVtIHRleHQtbXV0ZWQtZm9yZWdyb3VuZCB0ZXh0LXNtIj5Zb3VyIGZpcnN0IGFwcDwvcD4KCQkJCTxoMSBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC0zeGwgdHJhY2tpbmctdGlnaHQiPk5vdGVzPC9oMT4KCQkJCTxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIj5BIHNtYWxsIHBsYWNlIGZvciB0aGluZ3Mgd29ydGgga2VlcGluZy48L3A+CgkJCQl7b25TaWduT3V0ICE9PSB1bmRlZmluZWQgJiYgKAoJCQkJCTxCdXR0b24gZGlzYWJsZWQ9e3NpZ25pbmdPdXR9IG9uQ2xpY2s9eygpID0+IHZvaWQgc2lnbk91dCgpfSB2YXJpYW50PSJvdXRsaW5lIj4KCQkJCQkJU2lnbiBvdXQKCQkJCQk8L0J1dHRvbj4KCQkJCSl9CgkJCQl7ZmFpbHVyZSAhPT0gdW5kZWZpbmVkICYmIDxwIHJvbGU9ImFsZXJ0Ij57ZmFpbHVyZX08L3A+fQoJCQk8L2hlYWRlcj4KCQkJPHNlY3Rpb24gYXJpYS1sYWJlbD0iQWRkIGEgbm90ZSIgY2xhc3NOYW1lPSJyb3VuZGVkLWxnIGJvcmRlciBiZy1jYXJkIHAtNSBzaGFkb3ctc20iPgoJCQkJPE5vdGVDcmVhdGUgY2xpZW50PXtjbGllbnR9IC8+CgkJCTwvc2VjdGlvbj4KCQkJPHNlY3Rpb24gYXJpYS1sYWJlbD0iU2F2ZWQgbm90ZXMiIGNsYXNzTmFtZT0ic3BhY2UteS00Ij4KCQkJCTxkaXYgY2xhc3NOYW1lPSJmbGV4IGl0ZW1zLWNlbnRlciBqdXN0aWZ5LWJldHdlZW4iPgoJCQkJCTxoMiBjbGFzc05hbWU9ImZvbnQtc2VtaWJvbGQgdGV4dC1sZyI+U2F2ZWQgbm90ZXM8L2gyPgoJCQkJCTxCdXR0b24gZGlzYWJsZWQ9e3F1ZXJ5LnBlbmRpbmd9IG9uQ2xpY2s9e3F1ZXJ5LnJlZnJlc2h9IHZhcmlhbnQ9Im91dGxpbmUiPgoJCQkJCQlSZWZyZXNoCgkJCQkJPC9CdXR0b24+CgkJCQk8L2Rpdj4KCQkJCXtPcHRpb24uaXNTb21lKHF1ZXJ5LmNhdXNlKSAmJiA8cCByb2xlPSJhbGVydCI+Q291bGQgbm90IGxvYWQgbm90ZXMuIFRyeSByZWZyZXNoaW5nLjwvcD59CgkJCQl7cXVlcnkucGVuZGluZyA/IDxwIHJvbGU9InN0YXR1cyI+TG9hZGluZyBub3Rlc+KApjwvcD4gOiBudWxsfQoJCQkJeyFxdWVyeS5wZW5kaW5nICYmIHJvd3MubGVuZ3RoID09PSAwICYmIDxwIGNsYXNzTmFtZT0idGV4dC1tdXRlZC1mb3JlZ3JvdW5kIHRleHQtc20iPk5vIG5vdGVzIHlldC4gQWRkIHlvdXIgZmlyc3Qgb25lIGFib3ZlLjwvcD59CgkJCQk8dWwgY2xhc3NOYW1lPSJzcGFjZS15LTMiPgoJCQkJCXtyb3dzLm1hcCgocm93KSA9PiAoCgkJCQkJCTxTYXZlZE5vdGUga2V5PXtyb3cuaWR9IG5vdGU9e3Jvd30gLz4KCQkJCQkpKX0KCQkJCTwvdWw+CgkJCTwvc2VjdGlvbj4KCQk8L21haW4+CgkpOwp9Cg==","path":"src/client/NotesScreen.tsx"},{"content":"aW1wb3J0IHsgdHlwZSBFcnJvckNvbXBvbmVudFByb3BzLCBMaW5rIH0gZnJvbSAiQHRhbnN0YWNrL3JlYWN0LXJvdXRlciI7CmltcG9ydCB7IFByZWRpY2F0ZSB9IGZyb20gImVmZmVjdCI7CgpleHBvcnQgZnVuY3Rpb24gUm91dGVGYWlsdXJlKHsgZXJyb3IsIHJlc2V0OiBoYW5kbGVDbGljayB9OiBFcnJvckNvbXBvbmVudFByb3BzKSB7Cgljb25zdCB1bmF1dGhvcml6ZWQgPSBQcmVkaWNhdGUuaXNUYWdnZWQoZXJyb3IsICJVbmF1dGhvcml6ZWQiKTsKCXJldHVybiAoCgkJPG1haW4gY2xhc3NOYW1lPSJteC1hdXRvIG1heC13LW1kIHNwYWNlLXktNCBweC00IHB5LTEyIj4KCQkJPHAgcm9sZT0iYWxlcnQiPnt1bmF1dGhvcml6ZWQgPyAiU2lnbiBpbiB0byB2aWV3IHlvdXIgbm90ZXMuIiA6ICJDb3VsZCBub3QgbG9hZCBub3Rlcy4ifTwvcD4KCQkJe3VuYXV0aG9yaXplZCA/ICgKCQkJCTxMaW5rIGNsYXNzTmFtZT0idW5kZXJsaW5lIiB0bz0iL3NpZ24taW4iPgoJCQkJCVNpZ24gaW4KCQkJCTwvTGluaz4KCQkJKSA6ICgKCQkJCTxidXR0b24gb25DbGljaz17aGFuZGxlQ2xpY2t9IHR5cGU9ImJ1dHRvbiI+CgkJCQkJUmV0cnkKCQkJCTwvYnV0dG9uPgoJCQkpfQoJCTwvbWFpbj4KCSk7Cn0K","path":"src/client/RouteFailure.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBhY3QgfSBmcm9tICJyZWFjdCI7CmltcG9ydCB7IGV4cGVjdCwgb25UZXN0RmluaXNoZWQgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBldmVudHVhbGx5LCBleHBlY3ROb1JlYWN0V2FybmluZ3MsIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBub3Rlc0NsaWVudCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbm90ZXNDbGllbnQudHMiOwppbXBvcnQgeyBzY3JlZW5BdXRoIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zY3JlZW5BdXRoLnRzIjsKaW1wb3J0IHsgc2NyZWVucyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvc2NyZWVucy50cyI7CmltcG9ydCB7IFNlc3Npb25BcHAgfSBmcm9tICIuL1Nlc3Npb25BcHAudHN4IjsKCk9iamVjdC5hc3NpZ24oZ2xvYmFsVGhpcywgeyAiSVNfUkVBQ1RfQUNUX0VOVklST05NRU5UIjogdHJ1ZSB9KTsKZXhwZWN0Tm9SZWFjdFdhcm5pbmdzKCk7CgpzY3JlZW5zLml0KCJyZXBsYWNlcyBjYWNoZWQgbm90ZXMgYW5kIHRoZSBkcmFmdCB3aGVuIHRoZSBhdXRoZW50aWNhdGlvbiBvd25lcidzIHNlc3Npb24gY2hhbmdlcyIsIFtdLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QsIGVudGVyIH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgYWxpY2UgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IGJvYiA9IG5vdGVzQ2xpZW50KCk7CgkJZnVuY3Rpb24gY29ubmVjdGlvbih7IGlkIH06IHsgcmVhZG9ubHkgaWQ6IHN0cmluZyB9KSB7CgkJCXJldHVybiBpZCA9PT0gImFsaWNlIiA/IGFsaWNlIDogYm9iOwoJCX0KCQljb25zdCBhdXRoID0gc2NyZWVuQXV0aCgpOwoJCWNvbnN0IGhpc3RvcnkgPSBjcmVhdGVNZW1vcnlIaXN0b3J5KHsgaW5pdGlhbEVudHJpZXM6IFsiLyJdIH0pOwoJCWZ1bmN0aW9uIHJlY2hlY2soKSB7CgkJCXJldHVybiB1bmRlZmluZWQ7CgkJfQoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPFNlc3Npb25BcHAgYXV0aD17YXV0aH0gY29ubmVjdD17Y29ubmVjdGlvbn0gaGlzdG9yeT17aGlzdG9yeX0gcmVjaGVjaz17cmVjaGVja30gc2Vzc2lvbklkPSJhbGljZSIgLz4pOwoJCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3QoYWxpY2UuY2FsbHMpLnRvRXF1YWwoWyJsaXN0Il0pKTsKCgkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJBbGljZSdzIHNhdmVkIG5vdGUiKTsKCQlhd2FpdCBhY3QoKCkgPT4gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiZm9ybSIpPy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgic3VibWl0IiwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigibGkgPiBhIik/LnRleHRDb250ZW50KS50b0JlKCJBbGljZSdzIHNhdmVkIG5vdGUiKSk7CgkJYXdhaXQgZW50ZXIodmlldy5jb250YWluZXIsICJBbGljZSdzIHByaXZhdGUgZHJhZnQiKTsKCQlhd2FpdCB2aWV3LnJlbmRlcig8U2Vzc2lvbkFwcCBhdXRoPXthdXRofSBjb25uZWN0PXtjb25uZWN0aW9ufSBoaXN0b3J5PXtoaXN0b3J5fSByZWNoZWNrPXtyZWNoZWNrfSBzZXNzaW9uSWQ9ImJvYiIgLz4pOwoJCWF3YWl0IGV2ZW50dWFsbHkoKCkgPT4gZXhwZWN0KGJvYi5jYWxscykudG9FcXVhbChbImxpc3QiXSkpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJsaSIpKS50b0JlTnVsbCgpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJpbnB1dCIpPy52YWx1ZSkudG9CZSgiIik7Cgl9KTsKfSk7Cg==","path":"src/client/SessionApp.dom.test.tsx"},{"content":"aW1wb3J0IHsgUmVnaXN0cnlDb250ZXh0IH0gZnJvbSAiQGVmZmVjdC9hdG9tLXJlYWN0IjsKaW1wb3J0IHsgdHlwZSBSb3V0ZXJIaXN0b3J5LCBSb3V0ZXJQcm92aWRlciB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyB1c2VDb250ZXh0LCB1c2VTdGF0ZSB9IGZyb20gInJlYWN0IjsKaW1wb3J0IHsgU2Vzc2lvbkJvdW5kYXJ5IH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3Qvc2Vzc2lvbi1ib3VuZGFyeS50cyI7CmltcG9ydCB7IGFwcFJvdXRlciB9IGZyb20gIi4vYXBwUm91dGVyLnRzeCI7CmltcG9ydCB0eXBlIHsgQXV0aEFjdGlvbnMgfSBmcm9tICIuL2F1dGgudHMiOwppbXBvcnQgdHlwZSB7IE5vdGVzQ2xpZW50IH0gZnJvbSAiLi9tYWtlTm90ZXMudHMiOwoKaW50ZXJmYWNlIFNlc3Npb24gewoJcmVhZG9ubHkgaWQ6IHN0cmluZzsKfQppbnRlcmZhY2UgUm91dGluZyB7CglyZWFkb25seSBhdXRoOiBBdXRoQWN0aW9uczsKCXJlYWRvbmx5IGNsaWVudDogTm90ZXNDbGllbnQ7CglyZWFkb25seSBoaXN0b3J5OiBSb3V0ZXJIaXN0b3J5IHwgdW5kZWZpbmVkOwp9CgpmdW5jdGlvbiBSb3V0ZWRBcHAoeyBjbGllbnQsIGF1dGgsIGhpc3RvcnkgfTogUm91dGluZykgewoJY29uc3QgcmVnaXN0cnkgPSB1c2VDb250ZXh0KFJlZ2lzdHJ5Q29udGV4dCk7Cgljb25zdCBbcm91dGVyXSA9IHVzZVN0YXRlKCgpID0+IGFwcFJvdXRlcihyZWdpc3RyeSwgY2xpZW50LCBhdXRoLCBoaXN0b3J5KSk7CglyZXR1cm4gPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPjsKfQoKZnVuY3Rpb24gaWRlbnRpZnkoc2Vzc2lvbjogU2Vzc2lvbikgewoJcmV0dXJuIHNlc3Npb24uaWQ7Cn0KCmV4cG9ydCBmdW5jdGlvbiBTZXNzaW9uQXBwKHsKCXNlc3Npb25JZCwKCXJlY2hlY2ssCglhdXRoLAoJY29ubmVjdDogY29ubmVjdGlvbiwKCWhpc3RvcnksCn06IHsKCXJlYWRvbmx5IHNlc3Npb25JZDogc3RyaW5nOwoJcmVhZG9ubHkgcmVjaGVjazogKCkgPT4gdm9pZDsKCXJlYWRvbmx5IGF1dGg6IEF1dGhBY3Rpb25zOwoJcmVhZG9ubHkgY29ubmVjdDogKHNlc3Npb246IFNlc3Npb24pID0+IE5vdGVzQ2xpZW50OwoJcmVhZG9ubHkgaGlzdG9yeT86IFJvdXRlckhpc3RvcnkgfCB1bmRlZmluZWQ7Cn0pIHsKCXJldHVybiAoCgkJPFNlc3Npb25Cb3VuZGFyeSBjb25uZWN0PXtjb25uZWN0aW9ufSBpZGVudGlmeT17aWRlbnRpZnl9IHJlY2hlY2s9e3JlY2hlY2t9IHNlc3Npb249e3sgaWQ6IHNlc3Npb25JZCB9fT4KCQkJeyhjbGllbnQpID0+IDxSb3V0ZWRBcHAgYXV0aD17YXV0aH0gY2xpZW50PXtjbGllbnR9IGhpc3Rvcnk9e2hpc3Rvcnl9IC8+fQoJCTwvU2Vzc2lvbkJvdW5kYXJ5PgoJKTsKfQo=","path":"src/client/SessionApp.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlUm9vdFJvdXRlV2l0aENvbnRleHQsIGNyZWF0ZVJvdXRlLCBjcmVhdGVSb3V0ZXIsIHR5cGUgUm91dGVySGlzdG9yeSB9IGZyb20gIkB0YW5zdGFjay9yZWFjdC1yb3V0ZXIiOwppbXBvcnQgeyBTY2hlbWEgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgdHlwZSAqIGFzIEF0b21SZWdpc3RyeSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9BdG9tUmVnaXN0cnkiOwppbXBvcnQgeyBsb2FkUXVlcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1yZWFjdC9yb3V0ZXIudHMiOwppbXBvcnQgdHlwZSB7IEF1dGhBY3Rpb25zIH0gZnJvbSAiLi9hdXRoLnRzIjsKaW1wb3J0IHsgTG9naW5TY3JlZW4gfSBmcm9tICIuL0xvZ2luU2NyZWVuLnRzeCI7CmltcG9ydCB0eXBlIHsgTm90ZXNDbGllbnQgfSBmcm9tICIuL21ha2VOb3Rlcy50cyI7CmltcG9ydCB7IE5vdGVFZGl0IH0gZnJvbSAiLi9Ob3RlRWRpdC50c3giOwppbXBvcnQgeyBOb3Rlc1NjcmVlbiB9IGZyb20gIi4vTm90ZXNTY3JlZW4udHN4IjsKaW1wb3J0IHsgUm91dGVGYWlsdXJlIH0gZnJvbSAiLi9Sb3V0ZUZhaWx1cmUudHN4IjsKCmV4cG9ydCBmdW5jdGlvbiBhcHBSb3V0ZXIocmVnaXN0cnk6IEF0b21SZWdpc3RyeS5BdG9tUmVnaXN0cnksIGNsaWVudDogTm90ZXNDbGllbnQsIGF1dGg6IEF1dGhBY3Rpb25zLCBoaXN0b3J5PzogUm91dGVySGlzdG9yeSkgewoJY29uc3Qgcm9vdCA9IGNyZWF0ZVJvb3RSb3V0ZVdpdGhDb250ZXh0PHsgcmVhZG9ubHkgcmVnaXN0cnk6IEF0b21SZWdpc3RyeS5BdG9tUmVnaXN0cnkgfT4oKSgpOwoJY29uc3Qgbm90ZXMgPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiA8Tm90ZXNTY3JlZW4gY2xpZW50PXtjbGllbnR9IG9uU2lnbk91dD17KCkgPT4gYXV0aC5zaWduT3V0KCl9IC8+LAoJCWVycm9yQ29tcG9uZW50OiBSb3V0ZUZhaWx1cmUsCgkJZ2V0UGFyZW50Um91dGU6ICgpID0+IHJvb3QsCgkJbG9hZGVyOiAoY29udGV4dCkgPT4gbG9hZFF1ZXJ5KGNvbnRleHQuY29udGV4dC5yZWdpc3RyeSwgY2xpZW50LmFwaS5saXN0LnF1ZXJ5KCksIGNvbnRleHQpLAoJCXBhdGg6ICIvIiwKCX0pOwoJY29uc3QgbG9naW4gPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiA8TG9naW5TY3JlZW4gYXV0aD17YXV0aH0gb25BdXRoZW50aWNhdGVkPXsoKSA9PiB2b2lkIHJvdXRlci5uYXZpZ2F0ZSh7IHRvOiAiLyIgfSl9IC8+LAoJCWdldFBhcmVudFJvdXRlOiAoKSA9PiByb290LAoJCXBhdGg6ICIvc2lnbi1pbiIsCgl9KTsKCWNvbnN0IG5vdGUgPSBjcmVhdGVSb3V0ZSh7CgkJY29tcG9uZW50OiAoKSA9PiB7CgkJCWNvbnN0IHsgbm90ZUlkIH0gPSBub3RlLnVzZVBhcmFtcygpOwoJCQlyZXR1cm4gPE5vdGVFZGl0IGNsaWVudD17Y2xpZW50fSBrZXk9e25vdGVJZH0gbm90ZUlkPXtub3RlSWR9IG9uRGVsZXRlZD17KCkgPT4gdm9pZCByb3V0ZXIubmF2aWdhdGUoeyB0bzogIi8iIH0pfSAvPjsKCQl9LAoJCWVycm9yQ29tcG9uZW50OiBSb3V0ZUZhaWx1cmUsCgkJZ2V0UGFyZW50Um91dGU6ICgpID0+IHJvb3QsCgkJbG9hZGVyOiAoY29udGV4dCkgPT4gbG9hZFF1ZXJ5KGNvbnRleHQuY29udGV4dC5yZWdpc3RyeSwgY2xpZW50LmFwaS5nZXQucXVlcnkoeyBpZDogY29udGV4dC5wYXJhbXMubm90ZUlkIH0pLCBjb250ZXh0KSwKCQlwYXJhbXM6IHsKCQkJcGFyc2U6ICh7IG5vdGVJZCB9KSA9PiAoeyBub3RlSWQ6IFNjaGVtYS5kZWNvZGVVbmtub3duU3luYyhTY2hlbWEuTnVtYmVyRnJvbVN0cmluZy5jaGVjayhTY2hlbWEuaXNJbnQoKSwgU2NoZW1hLmlzR3JlYXRlclRoYW4oMCkpKShub3RlSWQpIH0pLAoJCQlzdHJpbmdpZnk6ICh7IG5vdGVJZCB9OiB7IHJlYWRvbmx5IG5vdGVJZDogbnVtYmVyIH0pID0+ICh7IG5vdGVJZDogU3RyaW5nKG5vdGVJZCkgfSksCgkJfSwKCQlwYXRoOiAiL25vdGVzLyRub3RlSWQiLAoJfSk7Cgljb25zdCByb3V0ZXIgPSBjcmVhdGVSb3V0ZXIoewoJCWNvbnRleHQ6IHsgcmVnaXN0cnkgfSwKCQkuLi4oaGlzdG9yeSA9PT0gdW5kZWZpbmVkID8ge30gOiB7IGhpc3RvcnkgfSksCgkJcm91dGVUcmVlOiByb290LmFkZENoaWxkcmVuKFtub3RlcywgbG9naW4sIG5vdGVdKSwKCX0pOwoJcmV0dXJuIHJvdXRlcjsKfQo=","path":"src/client/appRouter.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlQXV0aENsaWVudCB9IGZyb20gImJldHRlci1hdXRoL3JlYWN0IjsKCmV4cG9ydCBpbnRlcmZhY2UgQ3JlZGVudGlhbHMgewoJcmVhZG9ubHkgZW1haWw6IHN0cmluZzsKCXJlYWRvbmx5IG5hbWU6IHN0cmluZzsKCXJlYWRvbmx5IHBhc3N3b3JkOiBzdHJpbmc7Cn0KCmV4cG9ydCBpbnRlcmZhY2UgQXV0aEFjdGlvbnMgewoJcmVhZG9ubHkgc2lnbk91dDogKCkgPT4gUHJvbWlzZTxzdHJpbmcgfCB1bmRlZmluZWQ+OwoJcmVhZG9ubHkgc3VibWl0OiAobW9kZTogInNpZ24taW4iIHwgInNpZ24tdXAiLCBjcmVkZW50aWFsczogQ3JlZGVudGlhbHMpID0+IFByb21pc2U8c3RyaW5nIHwgdW5kZWZpbmVkPjsKfQoKZXhwb3J0IGZ1bmN0aW9uIG1ha2VBdXRoKG9wdGlvbnM6IHsKCXJlYWRvbmx5IGJhc2VVcmw6IHN0cmluZzsKCXJlYWRvbmx5IGZldGNoT3B0aW9ucz86IE5vbk51bGxhYmxlPFBhcmFtZXRlcnM8dHlwZW9mIGNyZWF0ZUF1dGhDbGllbnQ+WzBdPlsiZmV0Y2hPcHRpb25zIl07Cn0pIHsKCWNvbnN0IGNsaWVudCA9IGNyZWF0ZUF1dGhDbGllbnQoeyAiYmFzZVVSTCI6IG9wdGlvbnMuYmFzZVVybCwgLi4uKCJmZXRjaE9wdGlvbnMiIGluIG9wdGlvbnMgPyB7IGZldGNoT3B0aW9uczogb3B0aW9ucy5mZXRjaE9wdGlvbnMgfSA6IHt9KSB9KTsKCWNvbnN0IGFjdGlvbnM6IEF1dGhBY3Rpb25zID0gewoJCXNpZ25PdXQ6IGFzeW5jICgpID0+IHsKCQkJY29uc3QgcmVzdWx0ID0gYXdhaXQgY2xpZW50LnNpZ25PdXQoKTsKCQkJcmV0dXJuIHJlc3VsdC5lcnJvcj8ubWVzc2FnZTsKCQl9LAoJCXN1Ym1pdDogYXN5bmMgKG1vZGUsIGNyZWRlbnRpYWxzKSA9PiB7CgkJCWNvbnN0IHJlc3VsdCA9IG1vZGUgPT09ICJzaWduLXVwIiA/IGF3YWl0IGNsaWVudC5zaWduVXAuZW1haWwoY3JlZGVudGlhbHMpIDogYXdhaXQgY2xpZW50LnNpZ25Jbi5lbWFpbChjcmVkZW50aWFscyk7CgkJCXJldHVybiByZXN1bHQuZXJyb3I/Lm1lc3NhZ2U7CgkJfSwKCX07CglyZXR1cm4geyBhY3Rpb25zLCBjbGllbnQgfTsKfQoKZXhwb3J0IHR5cGUgQXV0aCA9IFJldHVyblR5cGU8dHlwZW9mIG1ha2VBdXRoPjsK","path":"src/client/auth.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBiZWZvcmVFYWNoLCBleHBlY3QsIG9uVGVzdEZpbmlzaGVkLCB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGV2ZW50dWFsbHksIHJlbmRlciB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXJlYWN0L3Rlc3RpbmcudHMiOwppbXBvcnQgeyBVbmF1dGhvcml6ZWQgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IG5vdGVzQ2xpZW50IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9ub3Rlc0NsaWVudC50cyI7CmltcG9ydCB7IHNjcmVlbkF1dGggfSBmcm9tICIjdGVzdC1zdXBwb3J0L3NjcmVlbkF1dGgudHMiOwppbXBvcnQgeyBzY3JlZW5zIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zY3JlZW5zLnRzIjsKaW1wb3J0IHsgYXBwUm91dGVyIH0gZnJvbSAiLi9hcHBSb3V0ZXIudHN4IjsKaW1wb3J0IHsgTm90ZXNTY3JlZW4gfSBmcm9tICIuL05vdGVzU2NyZWVuLnRzeCI7CgpPYmplY3QuYXNzaWduKGdsb2JhbFRoaXMsIHsgIklTX1JFQUNUX0FDVF9FTlZJUk9OTUVOVCI6IHRydWUgfSk7CmxldCBleHBlY3RlZEVycm9yczogcmVhZG9ubHkgKHJlYWRvbmx5IHVua25vd25bXSlbXSA9IFtdOwpiZWZvcmVFYWNoKCgpID0+IHsKCWV4cGVjdGVkRXJyb3JzID0gW107Cgljb25zdCBlcnJvcnMgPSB2aS5zcHlPbihjb25zb2xlLCAiZXJyb3IiKTsKCW9uVGVzdEZpbmlzaGVkKCgpID0+IHsKCQljb25zdCBjYWxscyA9IGVycm9ycy5tb2NrLmNhbGxzOwoJCWVycm9ycy5tb2NrUmVzdG9yZSgpOwoJCWV4cGVjdChjYWxscykudG9FcXVhbChleHBlY3RlZEVycm9ycyk7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KCJzaG93cyB0aGUgcHJvdGVjdGVkIHJvdXRlJ3MgdHlwZWQgVW5hdXRob3JpemVkIGZhaWx1cmUgYW5kIGxpbmtzIHRvIHNpZ24taW4iLCBbXSwgZnVuY3Rpb24qICh7IGludGVyYWN0IH0pIHsKCXlpZWxkKiBpbnRlcmFjdChhc3luYyAoKSA9PiB7CgkJY29uc3QgY2xpZW50ID0gbm90ZXNDbGllbnQoKTsKCQljbGllbnQuc2Vzc2lvbi5zaWduZWRJbiA9IGZhbHNlOwoJCWV4cGVjdGVkRXJyb3JzID0gWwoJCQlbCgkJCQlleHBlY3QuYW55KFN0cmluZyksCgkJCQluZXcgVW5hdXRob3JpemVkKHsgbWVzc2FnZTogIkF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkIiB9KSwKCQkJCSJUaGUgYWJvdmUgZXJyb3Igb2NjdXJyZWQgaW4gdGhlIDxNYXRjaElubmVySW1wbD4gY29tcG9uZW50LiIsCgkJCQkiUmVhY3Qgd2lsbCB0cnkgdG8gcmVjcmVhdGUgdGhpcyBjb21wb25lbnQgdHJlZSBmcm9tIHNjcmF0Y2ggdXNpbmcgdGhlIGVycm9yIGJvdW5kYXJ5IHlvdSBwcm92aWRlZCwgQ2F0Y2hCb3VuZGFyeS4iLAoJCQldLAoJCV07CgkJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCQlvblRlc3RGaW5pc2hlZCh2aWV3LnVubW91bnQpOwoJCWNvbnN0IHJvdXRlciA9IGFwcFJvdXRlcih2aWV3LnJlZ2lzdHJ5LCBjbGllbnQsIHNjcmVlbkF1dGgoKSwgY3JlYXRlTWVtb3J5SGlzdG9yeSh7IGluaXRpYWxFbnRyaWVzOiBbIi8iXSB9KSk7CgkJYXdhaXQgdmlldy5yZW5kZXIoPFJvdXRlclByb3ZpZGVyIHJvdXRlcj17cm91dGVyfSAvPik7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIHRvIHZpZXcgeW91ciBub3Rlcy4iKSk7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImEiKT8uZ2V0QXR0cmlidXRlKCJocmVmIikpLnRvQmUoIi9zaWduLWluIik7CgkJZXhwZWN0KHZpZXcuY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImZvcm0iKSkudG9CZU51bGwoKTsKCQlleHBlY3QoY2xpZW50LmNhbGxzKS50b0VxdWFsKFtdKTsKCX0pOwp9KTsKCnNjcmVlbnMuaXQoInNob3dzIHR5cGVkIGNvbW1hbmQgcmVqZWN0aW9uIGFmdGVyIGV4cGlyeSB3aXRob3V0IGNsZWFyaW5nIHRoZSBkcmFmdCIsIFtdLCBmdW5jdGlvbiogKHsgaW50ZXJhY3QgfSkgewoJeWllbGQqIGludGVyYWN0KGFzeW5jICgpID0+IHsKCQljb25zdCBjbGllbnQgPSBub3Rlc0NsaWVudCgpOwoJCWNvbnN0IHZpZXcgPSBhd2FpdCByZW5kZXIoPE5vdGVzU2NyZWVuIGNsaWVudD17Y2xpZW50fSAvPik7CgkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQlhd2FpdCBldmVudHVhbGx5KCgpID0+IGV4cGVjdChjbGllbnQuY2FsbHMpLnRvRXF1YWwoWyJsaXN0Il0pKTsKCQljbGllbnQuc2Vzc2lvbi5zaWduZWRJbiA9IGZhbHNlOwoJCWNvbnN0IGlucHV0ID0gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKTsKCQlpZiAoIShpbnB1dCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7CgkJCXRocm93IG5ldyBFcnJvcigiTWlzc2luZyBub3RlIGlucHV0Iik7CgkJfQoJCWF3YWl0IGFjdCgoKSA9PiB7CgkJCU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSFRNTElucHV0RWxlbWVudC5wcm90b3R5cGUsICJ2YWx1ZSIpPy5zZXQ/LmNhbGwoaW5wdXQsICJLZWVwIHRoaXMgZHJhZnQiKTsKCQkJaW5wdXQuZGlzcGF0Y2hFdmVudChuZXcgRXZlbnQoImlucHV0IiwgeyBidWJibGVzOiB0cnVlIH0pKTsKCQl9KTsKCQlhd2FpdCBhY3QoKCkgPT4gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiZm9ybSIpPy5kaXNwYXRjaEV2ZW50KG5ldyBFdmVudCgic3VibWl0IiwgeyBidWJibGVzOiB0cnVlLCBjYW5jZWxhYmxlOiB0cnVlIH0pKSk7CgkJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiW3JvbGU9YWxlcnRdIik/LnRleHRDb250ZW50KS50b0JlKCJTaWduIGluIHRvIGFkZCBhIG5vdGUuIikpOwoJCWV4cGVjdChpbnB1dC52YWx1ZSkudG9CZSgiS2VlcCB0aGlzIGRyYWZ0Iik7CgkJZXhwZWN0KGNsaWVudC5jYWxscykudG9FcXVhbChbImxpc3QiXSk7Cgl9KTsKfSk7CgpzY3JlZW5zLml0KCJjYWxscyBzaWduLW91dCBhbmQgc2hvd3MgYSBmYWlsZWQgc2lnbi1vdXQgd2l0aG91dCBjbGFpbWluZyBzdWNjZXNzIiwgW10sIGZ1bmN0aW9uKiAoeyBpbnRlcmFjdCB9KSB7Cgl5aWVsZCogaW50ZXJhY3QoYXN5bmMgKCkgPT4gewoJCWNvbnN0IGNsaWVudCA9IG5vdGVzQ2xpZW50KCk7CgkJbGV0IGNhbGxzID0gMDsKCQljb25zdCB2aWV3ID0gYXdhaXQgcmVuZGVyKAoJCQk8Tm90ZXNTY3JlZW4KCQkJCWNsaWVudD17Y2xpZW50fQoJCQkJb25TaWduT3V0PXsoKSA9PiB7CgkJCQkJY2FsbHMgKz0gMTsKCQkJCQlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKCJDb3VsZCBub3Qgc2lnbiBvdXQiKTsKCQkJCX19CgkJCS8+LAoJCSk7CgkJb25UZXN0RmluaXNoZWQodmlldy51bm1vdW50KTsKCQlhd2FpdCBhY3QoYXN5bmMgKCkgPT4gewoJCQlbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGJ1dHRvbikgPT4gYnV0dG9uLnRleHRDb250ZW50ID09PSAiU2lnbiBvdXQiKT8uY2xpY2soKTsKCQkJYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7CgkJfSk7CgkJZXhwZWN0KGNhbGxzKS50b0JlKDEpOwoJCWV4cGVjdCh2aWV3LmNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJbcm9sZT1hbGVydF0iKT8udGV4dENvbnRlbnQpLnRvQmUoIkNvdWxkIG5vdCBzaWduIG91dCIpOwoJfSk7Cn0pOwo=","path":"src/client/authFailures.dom.spec.tsx"},{"content":"aW1wb3J0IHsgdHlwZSBDbGFzc1ZhbHVlLCBjbHN4IH0gZnJvbSAiY2xzeCI7CmltcG9ydCB7IHR3TWVyZ2UgfSBmcm9tICJ0YWlsd2luZC1tZXJnZSI7CgpleHBvcnQgZnVuY3Rpb24gY24oLi4uaW5wdXRzOiBDbGFzc1ZhbHVlW10pIHsKCXJldHVybiB0d01lcmdlKGNsc3goaW5wdXRzKSk7Cn0K","path":"src/client/cn.ts"},{"content":"QGltcG9ydCAidGFpbHdpbmRjc3MiIHNvdXJjZSgiLi8iKTsKCkB0aGVtZSBpbmxpbmUgewoJLS1jb2xvci1iYWNrZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kKTsKCS0tY29sb3ItZm9yZWdyb3VuZDogdmFyKC0tZm9yZWdyb3VuZCk7CgktLWNvbG9yLWNhcmQ6IHZhcigtLWJhY2tncm91bmQpOwoJLS1jb2xvci1wcmltYXJ5OiB2YXIoLS1mb3JlZ3JvdW5kKTsKCS0tY29sb3ItcHJpbWFyeS1mb3JlZ3JvdW5kOiB2YXIoLS1iYWNrZ3JvdW5kKTsKCS0tY29sb3ItbXV0ZWQ6IHZhcigtLW11dGVkKTsKCS0tY29sb3ItbXV0ZWQtZm9yZWdyb3VuZDogdmFyKC0tbXV0ZWQtZm9yZWdyb3VuZCk7CgktLWNvbG9yLWRlc3RydWN0aXZlOiBva2xjaCgwLjU3NyAwLjI0NSAyNy4zMjUpOwoJLS1jb2xvci1ib3JkZXI6IHZhcigtLWJvcmRlcik7CgktLWNvbG9yLWlucHV0OiB2YXIoLS1ib3JkZXIpOwoJLS1jb2xvci1yaW5nOiBva2xjaCgwLjcwOCAwIDApOwoJLS1yYWRpdXMtbWQ6IDAuNXJlbTsKCS0tcmFkaXVzLWxnOiAwLjYyNXJlbTsKfQoKOnJvb3QgewoJLS1iYWNrZ3JvdW5kOiBva2xjaCgxIDAgMCk7CgktLWZvcmVncm91bmQ6IG9rbGNoKDAuMTQ1IDAgMCk7CgktLW11dGVkOiBva2xjaCgwLjk3IDAgMCk7CgktLW11dGVkLWZvcmVncm91bmQ6IG9rbGNoKDAuNTU2IDAgMCk7CgktLWJvcmRlcjogb2tsY2goMC45MjIgMCAwKTsKfQoKQGxheWVyIGJhc2UgewoJKiB7CgkJQGFwcGx5IGJvcmRlci1ib3JkZXI7Cgl9Cglib2R5IHsKCQlAYXBwbHkgYmctYmFja2dyb3VuZCB0ZXh0LWZvcmVncm91bmQ7Cgl9Cn0K","path":"src/client/entry.css"},{"content":"aW1wb3J0IHsgY3JlYXRlUm9vdCB9IGZyb20gInJlYWN0LWRvbS9jbGllbnQiOwppbXBvcnQgeyBBcHAgfSBmcm9tICIuL0FwcC50c3giOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIi4vYXV0aC50cyI7CmltcG9ydCB7IG1ha2VOb3Rlc0NsaWVudCB9IGZyb20gIi4vbWFrZU5vdGVzLnRzIjsKaW1wb3J0ICIjY2xpZW50L2VudHJ5LmNzcyI7Cgpjb25zdCBjb250YWluZXIgPSBkb2N1bWVudC5nZXRFbGVtZW50QnlJZCgicm9vdCIpOwppZiAoY29udGFpbmVyID09PSBudWxsKSB7Cgl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgYXBwbGljYXRpb24gcm9vdCIpOwp9CmNvbnN0IGF1dGggPSBtYWtlQXV0aCh7IGJhc2VVcmw6IHdpbmRvdy5sb2NhdGlvbi5vcmlnaW4gfSk7CmZ1bmN0aW9uIGNvbm5lY3QoKSB7CglyZXR1cm4gbWFrZU5vdGVzQ2xpZW50KG5ldyBVUkwoIi9ycGMiLCB3aW5kb3cubG9jYXRpb24uaHJlZikuaHJlZik7Cn0KY3JlYXRlUm9vdChjb250YWluZXIpLnJlbmRlcig8QXBwIGF1dGg9e2F1dGh9IGNvbm5lY3Q9e2Nvbm5lY3R9IC8+KTsK","path":"src/client/entry.tsx"},{"content":"aW1wb3J0IHsgTGF5ZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBGZXRjaEh0dHBDbGllbnQgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCAqIGFzIEF0b21ScGMgZnJvbSAiZWZmZWN0L3JlYWN0aXZpdHkvQXRvbVJwYyI7CmltcG9ydCB7IFJwY0NsaWVudCwgUnBjU2VyaWFsaXphdGlvbiB9IGZyb20gImVmZmVjdC9ycGMiOwppbXBvcnQgeyBiaW5kIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvYmluZC50cyI7CmltcG9ydCB7IGxpdmUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9saXZlLnRzIjsKaW1wb3J0IHsgcmVzdW1lU2lnbmFsIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvcmVzdW1lLnRzIjsKaW1wb3J0IHsgTm90ZXMsIFN1YnNjcmliZSB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgZnVuY3Rpb24gbWFrZU5vdGVzQ2xpZW50KHVybDogc3RyaW5nLCB0cmFuc2Zvcm1DbGllbnQ/OiBOb25OdWxsYWJsZTxQYXJhbWV0ZXJzPHR5cGVvZiBScGNDbGllbnQubGF5ZXJQcm90b2NvbEh0dHA+WzBdWyJ0cmFuc2Zvcm1DbGllbnQiXT4pIHsKCWNsYXNzIE5vdGVzQ2xpZW50IGV4dGVuZHMgQXRvbVJwYy5TZXJ2aWNlPE5vdGVzQ2xpZW50PigpKCJzdGFydGVyL05vdGVzQ2xpZW50IiwgewoJCWdyb3VwOiBOb3RlcywKCQlwcm90b2NvbDogUnBjQ2xpZW50LmxheWVyUHJvdG9jb2xIdHRwKHsgLi4uKHRyYW5zZm9ybUNsaWVudCA9PT0gdW5kZWZpbmVkID8ge30gOiB7IHRyYW5zZm9ybUNsaWVudCB9KSwgdXJsIH0pLnBpcGUoCgkJCUxheWVyLnByb3ZpZGUoW0ZldGNoSHR0cENsaWVudC5sYXllciwgUnBjU2VyaWFsaXphdGlvbi5sYXllck5kanNvbl0pLAoJCSksCgl9KSB7fQoJY29uc3QgYXBpID0gYmluZChOb3RlcywgTm90ZXNDbGllbnQpOwoJY29uc3Qgc3Vic2NyaXB0aW9uID0gbGl2ZShOb3Rlc0NsaWVudC5ydW50aW1lLCB7CgkJcmVzdW1lOiByZXN1bWVTaWduYWwodHlwZW9mIHdpbmRvdyA9PT0gInVuZGVmaW5lZCIgPyB7fSA6IHsgd2luZG93IH0pLAoJCXJlc3luY0tleXM6IFN1YnNjcmliZS5yZWFkcyh1bmRlZmluZWQpLAoJCXN0cmVhbTogYXBpLnN1YnNjcmliZS5ydW4odW5kZWZpbmVkKSwKCX0pOwoJcmV0dXJuIHsgYXBpLCBydW50aW1lOiBOb3Rlc0NsaWVudC5ydW50aW1lLCAuLi5zdWJzY3JpcHRpb24gfTsKfQoKZXhwb3J0IHR5cGUgTm90ZXNDbGllbnQgPSBSZXR1cm5UeXBlPHR5cGVvZiBtYWtlTm90ZXNDbGllbnQ+Owo=","path":"src/client/makeNotes.ts"},{"content":"ZGVjbGFyZSBtb2R1bGUgIiouY3NzIiB7fQo=","path":"src/client/styles.d.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTW9kZWwgfSBmcm9tICJlZmZlY3Qvc2NoZW1hIjsKaW1wb3J0IHsgY29udHJhY3QgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9jb250cmFjdC50cyI7CmltcG9ydCB7IGNvbGxlY3Rpb24gfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgTGl2ZUhpbnQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9saXZlLnRzIjsKaW1wb3J0IHsgY29tbWFuZCwgcXVlcnksIHN0cmVhbSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWNvbnRyYWN0L29wZXJhdGlvbi50cyI7CmltcG9ydCB7IGZpZWxkUmVqZWN0aW9uIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtY29udHJhY3QvcmVqZWN0aW9uLnRzIjsKaW1wb3J0IHsgQ29uZmxpY3QsIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IEF1dGhlbnRpY2F0ZWRVc2VyIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9ycGMvbWlkZGxld2FyZS50cyI7CgpleHBvcnQgY2xhc3MgTm90ZSBleHRlbmRzIE1vZGVsLkNsYXNzPE5vdGU+KCJOb3RlIikoewoJaWQ6IE1vZGVsLkZpZWxkKHsganNvbjogU2NoZW1hLk51bWJlciwgc2VsZWN0OiBTY2hlbWEuTnVtYmVyLCB1cGRhdGU6IFNjaGVtYS5OdW1iZXIgfSksCgl0aXRsZTogU2NoZW1hLk5vbkVtcHR5U3RyaW5nLAoJdmVyc2lvbjogTW9kZWwuRmllbGQoeyBqc29uOiBTY2hlbWEuTnVtYmVyLCBzZWxlY3Q6IFNjaGVtYS5OdW1iZXIsIHVwZGF0ZTogU2NoZW1hLk51bWJlciB9KSwKCXdvcmRDb3VudDogU2NoZW1hLk51bGxPcihTY2hlbWEuTnVtYmVyKSwKfSkge30KZXhwb3J0IGNvbnN0IE5vdGVGaWVsZHMgPSBTY2hlbWEuU3RydWN0KHsgdGl0bGU6IE5vdGUuZmllbGRzLnRpdGxlIH0pOwpleHBvcnQgY29uc3QgTm90ZUVkaXRGaWVsZHMgPSBTY2hlbWEuU3RydWN0KHsgdGl0bGU6IE5vdGUuZmllbGRzLnRpdGxlLCB2ZXJzaW9uOiBOb3RlLmZpZWxkcy52ZXJzaW9uIH0pOwpjb25zdCBOb3RlSWQgPSBTY2hlbWEuU3RydWN0KHsgaWQ6IFNjaGVtYS5OdW1iZXIgfSk7CmNvbnN0IE5vdGVWZXJzaW9uID0gU2NoZW1hLlN0cnVjdCh7IC4uLk5vdGVJZC5maWVsZHMsIHZlcnNpb246IE5vdGUuZmllbGRzLnZlcnNpb24gfSk7CmV4cG9ydCBjb25zdCBub3RlcyA9IGNvbGxlY3Rpb24oInN0YXJ0ZXJOb3RlcyIsIFNjaGVtYS5OdW1iZXIpOwpleHBvcnQgY29uc3QgR2V0ID0gcXVlcnkoImdldCIsIHsKCXBheWxvYWQ6IE5vdGVJZCwKCXJlYWRzOiAoeyBpZCB9KSA9PiBbbm90ZXMuaXRlbShpZCksIG5vdGVzLmxpc3RdLAoJcmVqZWN0aW9uczogeyBOb3RGb3VuZCwgU2VydmljZVVuYXZhaWxhYmxlIH0sCglzdWNjZXNzOiBOb3RlLmpzb24sCn0pOwpleHBvcnQgY29uc3QgTGlzdCA9IHF1ZXJ5KCJsaXN0IiwgewoJcmVhZHM6ICgpID0+IFtub3Rlcy5saXN0XSwKCXJlamVjdGlvbnM6IHsgU2VydmljZVVuYXZhaWxhYmxlIH0sCglzdWNjZXNzOiBTY2hlbWEuQXJyYXkoTm90ZS5qc29uKSwKfSk7CmV4cG9ydCBjb25zdCBDcmVhdGUgPSBjb21tYW5kKCJjcmVhdGUiLCB7CglpbnZhbGlkYXRlczogKF9pbnB1dCwgcm93KSA9PiBbbm90ZXMuaXRlbShyb3cuaWQpXSwKCXBheWxvYWQ6IE5vdGVGaWVsZHMsCglyZWplY3Rpb25zOiB7IEludmFsaWQ6IGZpZWxkUmVqZWN0aW9uKE5vdGVGaWVsZHMpLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSwKCXN1Y2Nlc3M6IE5vdGUuanNvbiwKfSk7CmV4cG9ydCBjb25zdCBTdWJzY3JpYmUgPSBzdHJlYW0oInN1YnNjcmliZSIsIHsKCXJlYWRzOiAoKSA9PiBbbm90ZXMubGlzdF0sCglzdWNjZXNzOiBMaXZlSGludCwKfSk7CmV4cG9ydCBjb25zdCBVcGRhdGUgPSBjb21tYW5kKCJ1cGRhdGUiLCB7CglpbnZhbGlkYXRlczogKHsgaWQgfSkgPT4gW25vdGVzLml0ZW0oaWQpXSwKCXBheWxvYWQ6IFNjaGVtYS5TdHJ1Y3QoeyAuLi5Ob3RlSWQuZmllbGRzLCAuLi5Ob3RlRWRpdEZpZWxkcy5maWVsZHMgfSksCglyZWplY3Rpb25zOiB7IENvbmZsaWN0LCBJbnZhbGlkOiBmaWVsZFJlamVjdGlvbihOb3RlRWRpdEZpZWxkcyksIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSwKCXN1Y2Nlc3M6IE5vdGUuanNvbiwKfSk7CmV4cG9ydCBjb25zdCBEZWxldGUgPSBjb21tYW5kKCJkZWxldGUiLCB7CglpbnZhbGlkYXRlczogKHsgaWQgfSkgPT4gW25vdGVzLml0ZW0oaWQpXSwKCXBheWxvYWQ6IE5vdGVWZXJzaW9uLAoJcmVqZWN0aW9uczogeyBDb25mbGljdCwgTm90Rm91bmQsIFNlcnZpY2VVbmF2YWlsYWJsZSB9LAoJc3VjY2VzczogU2NoZW1hLlZvaWQsCn0pOwpleHBvcnQgY29uc3QgV2hvYW1pID0gcXVlcnkoIndob2FtaSIsIHsKCXJlYWRzOiAoKSA9PiBbXSwKCXN1Y2Nlc3M6IFNjaGVtYS5TdHJ1Y3QoeyBlbWFpbDogU2NoZW1hLlN0cmluZywgaWQ6IFNjaGVtYS5TdHJpbmcsIG5hbWU6IFNjaGVtYS5TdHJpbmcgfSksCn0pOwpleHBvcnQgY29uc3QgTm90ZXMgPSBjb250cmFjdCgibm90ZXMiLCB7IGNvbW1hbmRzOiBbQ3JlYXRlLCBVcGRhdGUsIERlbGV0ZV0sIHF1ZXJpZXM6IFtMaXN0LCBHZXQsIFdob2FtaV0sIHN0cmVhbXM6IFtTdWJzY3JpYmVdIH0pLm1pZGRsZXdhcmUoCglBdXRoZW50aWNhdGVkVXNlciwKKTsK","path":"src/notes.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0ICogYXMgUmVhY3Rpdml0eSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9SZWFjdGl2aXR5IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGludmFsaWRhdGlvbktleXMgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgZGVmaW5lU2VydmljZSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXNlcnZpY2UvZGVmaW5lLXNlcnZpY2UudHMiOwppbXBvcnQgeyBpbnZhbGlkYXRlT25Db21taXQsIHRyYW5zYWN0IH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3Qtc3FsL3RyYW5zYWN0LnRzIjsKaW1wb3J0IHsgQ29uZmxpY3QsIE5vdEZvdW5kLCBTZXJ2aWNlVW5hdmFpbGFibGUgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IENyZWF0ZSwgdHlwZSBEZWxldGUsIG5vdGVzLCBVcGRhdGUgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBtYWtlTm90ZXNSZXBvc2l0b3J5IH0gZnJvbSAiLi9tYWtlTm90ZXNSZXBvc2l0b3J5LnRzIjsKaW1wb3J0IHsgQ291bnRXb3JkcywgTm90ZUpvYnMgfSBmcm9tICIuL25vdGVKb2JzLnRzIjsKCmZ1bmN0aW9uIHVuYXZhaWxhYmxlKCkgewoJcmV0dXJuIG5ldyBTZXJ2aWNlVW5hdmFpbGFibGUoeyBtZXNzYWdlOiAiQ291bGQgbm90IHJlYWNoIHRoZSBub3RlcyBkYXRhYmFzZSIgfSk7Cn0KZnVuY3Rpb24gd3JpdGVGYWlsdXJlKGVycm9yOiB7IHJlYWRvbmx5IF90YWc6IHN0cmluZyB9KSB7CglyZXR1cm4gZXJyb3IuX3RhZyA9PT0gIk9wdGltaXN0aWNDb25jdXJyZW5jeUVycm9yIgoJCT8gbmV3IENvbmZsaWN0KHsgbWVzc2FnZTogIlRoaXMgbm90ZSBjaGFuZ2VkLiBSZWZyZXNoIGFuZCByZXZpZXcgeW91ciBkcmFmdCBiZWZvcmUgdHJ5aW5nIGFnYWluLiIgfSkKCQk6IHVuYXZhaWxhYmxlKCk7Cn0KCmV4cG9ydCBjb25zdCBOb3Rlc1NlcnZpY2UgPSBkZWZpbmVTZXJ2aWNlKHsKCWlkOiAic3RhcnRlci9Ob3Rlc1NlcnZpY2UiLAoJaW5pdGlhbGl6ZTogbWFrZU5vdGVzUmVwb3NpdG9yeSwKCW1ldGhvZHM6IChyZXBvc2l0b3J5KSA9PiB7CgkJZnVuY3Rpb24gZ2V0KGlkOiBudW1iZXIsIG93bmVySWQ6IHN0cmluZykgewoJCQlyZXR1cm4gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgcm93cyA9IHlpZWxkKiByZXBvc2l0b3J5LmZpbmRNYW55KHsgbGltaXQ6IDEsIHdoZXJlOiB7IGlkLCBvd25lcklkIH0gfSkucGlwZShFZmZlY3QubWFwRXJyb3IodW5hdmFpbGFibGUpKTsKCQkJCXJldHVybiByb3dzWzBdID8/ICh5aWVsZCogRWZmZWN0LmZhaWwobmV3IE5vdEZvdW5kKHsgbWVzc2FnZTogIk5vdGUgbm90IGZvdW5kIiB9KSkpOwoJCQl9KTsKCQl9CgkJZnVuY3Rpb24gZW5xdWV1ZShub3RlSWQ6IG51bWJlcikgewoJCQlyZXR1cm4gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgam9icyA9IHlpZWxkKiBOb3RlSm9iczsKCQkJCXlpZWxkKiBqb2JzLmVucXVldWUoQ291bnRXb3JkcywgeyBub3RlSWQgfSkucGlwZShFZmZlY3QuY2F0Y2goKGVycm9yKSA9PiBFZmZlY3QubG9nRXJyb3IoeyBlcnJvciwgZXZlbnQ6ICJub3RlX2VucXVldWVfZmFpbGVkIiwgbm90ZUlkIH0pKSk7CgkJCX0pOwoJCX0KCQlyZXR1cm4gewoJCQljcmVhdGU6ICh7IHRpdGxlIH06IHR5cGVvZiBDcmVhdGUucGF5bG9hZC5UeXBlLCBvd25lcklkOiBzdHJpbmcpID0+CgkJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQkJY29uc3QgdHJpbW1lZCA9IHRpdGxlLnRyaW0oKTsKCQkJCQlpZiAodHJpbW1lZCA9PT0gIiIpIHsKCQkJCQkJcmV0dXJuIHlpZWxkKiBDcmVhdGUucmVqZWN0LkludmFsaWQoeyBmaWVsZDogInRpdGxlIiwgbWVzc2FnZTogIkVudGVyIGEgdGl0bGUiIH0pOwoJCQkJCX0KCQkJCQljb25zdCByb3cgPSB5aWVsZCogcmVwb3NpdG9yeS5pbnNlcnQoeyBvd25lcklkLCB0aXRsZTogdHJpbW1lZCwgd29yZENvdW50OiBudWxsIH0pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHVuYXZhaWxhYmxlKSk7CgkJCQkJeWllbGQqIGludmFsaWRhdGVPbkNvbW1pdChpbnZhbGlkYXRpb25LZXlzKFtub3Rlcy5pdGVtKHJvdy5pZCldKSk7CgkJCQkJcmV0dXJuIHJvdzsKCQkJCX0pLnBpcGUoCgkJCQkJdHJhbnNhY3QoeyBvblNxbEVycm9yOiB1bmF2YWlsYWJsZSB9KSwKCQkJCQlFZmZlY3QudGFwKChyb3cpID0+IGVucXVldWUocm93LmlkKSksCgkJCQkpLAoJCQlkZWxldGU6IChpbnB1dDogdHlwZW9mIERlbGV0ZS5wYXlsb2FkLlR5cGUsIG93bmVySWQ6IHN0cmluZykgPT4KCQkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCQl5aWVsZCogZ2V0KGlucHV0LmlkLCBvd25lcklkKTsKCQkJCQl5aWVsZCogcmVwb3NpdG9yeS5kZWxldGUoaW5wdXQuaWQsIGlucHV0LnZlcnNpb24pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHdyaXRlRmFpbHVyZSkpOwoJCQkJCXlpZWxkKiBpbnZhbGlkYXRlT25Db21taXQoaW52YWxpZGF0aW9uS2V5cyhbbm90ZXMuaXRlbShpbnB1dC5pZCldKSk7CgkJCQl9KS5waXBlKHRyYW5zYWN0KHsgb25TcWxFcnJvcjogdW5hdmFpbGFibGUgfSkpLAoJCQlnZXQsCgkJCWxpc3Q6IChvd25lcklkOiBzdHJpbmcpID0+CgkJCQlyZXBvc2l0b3J5CgkJCQkJLmZpbmRNYW55KHsgb3JkZXJCeTogeyBkaXJlY3Rpb246ICJkZXNjIiwgZmllbGQ6ICJpZCIgfSwgc2VsZWN0OiBbImlkIiwgInRpdGxlIiwgIndvcmRDb3VudCIsICJ2ZXJzaW9uIl0sIHdoZXJlOiB7IG93bmVySWQgfSB9KQoJCQkJCS5waXBlKEVmZmVjdC5tYXBFcnJvcih1bmF2YWlsYWJsZSkpLAoJCQl1cGRhdGU6IChpbnB1dDogdHlwZW9mIFVwZGF0ZS5wYXlsb2FkLlR5cGUsIG93bmVySWQ6IHN0cmluZykgPT4KCQkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCQljb25zdCByb3cgPSB5aWVsZCogZ2V0KGlucHV0LmlkLCBvd25lcklkKTsKCQkJCQljb25zdCB0aXRsZSA9IGlucHV0LnRpdGxlLnRyaW0oKTsKCQkJCQlpZiAodGl0bGUgPT09ICIiKSB7CgkJCQkJCXJldHVybiB5aWVsZCogVXBkYXRlLnJlamVjdC5JbnZhbGlkKHsgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJFbnRlciBhIHRpdGxlIiB9KTsKCQkJCQl9CgkJCQkJY29uc3Qgc2F2ZWQgPSB5aWVsZCogcmVwb3NpdG9yeS51cGRhdGUoeyAuLi5yb3csIC4uLmlucHV0LCB0aXRsZSwgd29yZENvdW50OiBudWxsIH0pLnBpcGUoRWZmZWN0Lm1hcEVycm9yKHdyaXRlRmFpbHVyZSkpOwoJCQkJCXlpZWxkKiBpbnZhbGlkYXRlT25Db21taXQoaW52YWxpZGF0aW9uS2V5cyhbbm90ZXMuaXRlbShzYXZlZC5pZCldKSk7CgkJCQkJcmV0dXJuIHNhdmVkOwoJCQkJfSkucGlwZSgKCQkJCQl0cmFuc2FjdCh7IG9uU3FsRXJyb3I6IHVuYXZhaWxhYmxlIH0pLAoJCQkJCUVmZmVjdC50YXAoKHJvdykgPT4gZW5xdWV1ZShyb3cuaWQpKSwKCQkJCSksCgkJfTsKCX0sCglyZXF1aXJlczogW1NxbENsaWVudC5TcWxDbGllbnQsIFJlYWN0aXZpdHkuUmVhY3Rpdml0eSwgTm90ZUpvYnNdLAp9KTsK","path":"src/server/NotesService.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBleHBlY3QgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBVbmF1dGhvcml6ZWQgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2Vycm9ycy90YXhvbm9teS50cyI7CmltcG9ydCB7IGFwcCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwppbXBvcnQgeyBjcmVkZW50aWFscyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXV0aEh0dHAudHMiOwoKYXBwLml0KCJ0YXJnZXRzIGl0cyBvd24gaG9zdCBmb3IgYXV0aCBhY3Rpb25zIGFuZCBzZXNzaW9uIGNoZWNrcyIsIFtdLCBmdW5jdGlvbiogKHsgYXV0aENsaWVudCwgYXV0aGVudGljYXRlLCBub3RlcyB9KSB7Cgljb25zdCBhdXRoID0gYXV0aENsaWVudCgpOwoJY29uc3QgYWNjb3VudCA9IGNyZWRlbnRpYWxzKCJjbGllbnQtdXNlciIpOwoJZXhwZWN0KCh5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gYXV0aC5jbGllbnQuZ2V0U2Vzc2lvbigpKSkuZGF0YSkudG9CZU51bGwoKTsKCWV4cGVjdCh5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gYXV0aC5hY3Rpb25zLnN1Ym1pdCgic2lnbi11cCIsIGFjY291bnQpKSkudG9CZVVuZGVmaW5lZCgpOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBhdXRoLmFjdGlvbnMuc3VibWl0KCJzaWduLWluIiwgYWNjb3VudCkpKS50b0JlVW5kZWZpbmVkKCk7Cgljb25zdCBjb29raWUgPSB5aWVsZCogYXV0aGVudGljYXRlKCJjbGllbnQtdXNlciIsICJzaWduLWluL2VtYWlsIik7Cgljb25zdCBzaWduZWRJbiA9IGF1dGhDbGllbnQoY29va2llKTsKCWNvbnN0IHNlc3Npb24gPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gc2lnbmVkSW4uY2xpZW50LmdldFNlc3Npb24oKSk7CglleHBlY3Qoc2Vzc2lvbi5kYXRhPy51c2VyKS50b01hdGNoT2JqZWN0KHsgZW1haWw6IGFjY291bnQuZW1haWwsIG5hbWU6IGFjY291bnQubmFtZSB9KTsKCWNvbnN0IGNsaWVudCA9IHlpZWxkKiBub3Rlcyhjb29raWUpOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQud2hvYW1pKCkpLnRvRXF1YWwoeyBlbWFpbDogYWNjb3VudC5lbWFpbCwgaWQ6IHNlc3Npb24uZGF0YT8udXNlci5pZCwgbmFtZTogYWNjb3VudC5uYW1lIH0pOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBzaWduZWRJbi5hY3Rpb25zLnNpZ25PdXQoKSkpLnRvQmVVbmRlZmluZWQoKTsKCWV4cGVjdCgoeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IHNpZ25lZEluLmNsaWVudC5nZXRTZXNzaW9uKCkpKS5kYXRhKS50b0JlTnVsbCgpOwoJY29uc3QgcmV2b2tlZCA9IHlpZWxkKiBjbGllbnQud2hvYW1pKCkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKHJldm9rZWQpICYmIHJldm9rZWQuZmFpbHVyZSkudG9CZUluc3RhbmNlT2YoVW5hdXRob3JpemVkKTsKfSk7Cg==","path":"src/server/authClient.spec.ts"},{"content":"aW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBhdXRoUmF0ZUxpbWl0aW5nLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKZm9yIChjb25zdCB0cnVzdGVkUHJveHkgb2YgWyIxMjcuMC4wLjEiLCAiIDE5Mi4wLjIuMSwgMTI3LjAuMC4wLzgsIDIwMDE6ZGI4OjovMzIgIiwgIjo6ZmZmZjoxMjcuMC4wLjAvMTA0IiwgIjo6ZmZmZjo3ZjAwOjAvMTA0Il0pIHsKCWFwcC5pdCgKCQlgaXNvbGF0ZXMgc2lnbi1pbiBsaW1pdHMgYWNyb3NzIGFwcGVuZGVkIGZvcndhcmRpbmcgY2hhaW5zICgke3RydXN0ZWRQcm94eX0pYCwKCQlbYmVoaW5kUHJveHkoeyB0cnVzdGVkUHJveHkgfSldLAoJCWZ1bmN0aW9uKiAoeyBhdXRoUmF0ZUxpbWl0cyB9KSB7CgkJCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7CgkJCWNvbnN0IGFsaWNlID0gbGltaXRzLnZpc2l0b3IoIjo6MSIpOwoJCQljb25zdCBib2IgPSBsaW1pdHMudmlzaXRvcigiMTI3LjAuMC4xIik7CgkJCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJCQlleHBlY3QoeWllbGQqIGFsaWNlLnNpZ25JbigiMTk4LjUxLjEwMC4xMCIpKS50b0JlKDQwMSk7CgkJCX0KCQkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMTAiKSkudG9CZSg0MjkpOwoJCQlleHBlY3QoeWllbGQqIGJvYi5zaWduSW4oIjE5OC41MS4xMDAuMjAiKSkudG9CZSg0MDEpOwoJCX0sCgkpOwp9CmZvciAoY29uc3QgdHJ1c3RlZFByb3h5IG9mIFt1bmRlZmluZWQsICIxMjcuMC4wLjIiLCAiOjpmZmZmOjEyNi4wLjAuMC8xMDQiXSkgewoJYXBwLml0KAoJCWBpZ25vcmVzIGZvcndhcmRlZCBjbGllbnQgSVBzIHdoZW4gcHJveHkgdHJ1c3QgaXMgJHt0cnVzdGVkUHJveHkgPz8gInVuc2V0In1gLAoJCVtiZWhpbmRQcm94eSh7IHRydXN0ZWRQcm94eSB9KV0sCgkJZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCQkJY29uc3QgbGltaXRzID0gYXV0aFJhdGVMaW1pdHMoKTsKCQkJY29uc3QgYWxpY2UgPSBsaW1pdHMudmlzaXRvcigiOjoxIik7CgkJCWNvbnN0IGJvYiA9IGxpbWl0cy52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCQkJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQkJCWV4cGVjdCh5aWVsZCogYWxpY2Uuc2lnbkluKCkpLnRvQmUoNDAxKTsKCQkJfQoJCQlleHBlY3QoeWllbGQqIGJvYi5zaWduSW4oKSkudG9CZSg0MjkpOwoJCX0sCgkpOwp9CgphcHAuaXQoImVuYWJsZXMgc2lnbi1pbiBsaW1pdHMgdGhyb3VnaCBhcHAgY29uZmlndXJhdGlvbiIsIFtiZWhpbmRQcm94eSgpLCBhdXRoUmF0ZUxpbWl0aW5nKHRydWUpXSwgZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7Cgljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MjkpOwp9KTsKCmZvciAoY29uc3QgdHJ1c3RlZFByb3h5IG9mIFt1bmRlZmluZWQsICIxMjcuMC4wLjEiXSkgewoJYXBwLml0KAoJCWBkaXNhYmxlcyBzaWduLWluIGxpbWl0cyB3aXRoIHByb3h5IHRydXN0ICR7dHJ1c3RlZFByb3h5ID8/ICJ1bnNldCJ9YCwKCQlbYmVoaW5kUHJveHkoeyB0cnVzdGVkUHJveHkgfSksIGF1dGhSYXRlTGltaXRpbmcoZmFsc2UpXSwKCQlmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJCQljb25zdCBsaW1pdHMgPSBhdXRoUmF0ZUxpbWl0cygpOwoJCQljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCQkJY29uc3QgYm9iID0gbGltaXRzLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJCQlmb3IgKGxldCBhdHRlbXB0ID0gMDsgYXR0ZW1wdCA8IDQ7IGF0dGVtcHQgKz0gMSkgewoJCQkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MDEpOwoJCQl9CgkJCWV4cGVjdCh5aWVsZCogYm9iLnNpZ25JbigpKS50b0JlKDQwMSk7CgkJfSwKCSk7Cn0KCmFwcC5pdCgia2VlcHMgdGhlIHNhbWUgc2lnbi1pbiBidWNrZXQgd2hlbiBhIHZpc2l0b3IgZm9yZ2VzIGZvcndhcmRpbmcgaGVhZGVycyIsIFtiZWhpbmRQcm94eSgpXSwgZnVuY3Rpb24qICh7IGF1dGhSYXRlTGltaXRzIH0pIHsKCWNvbnN0IGxpbWl0cyA9IGF1dGhSYXRlTGltaXRzKCk7Cgljb25zdCBhbGljZSA9IGxpbWl0cy52aXNpdG9yKCI6OjEiKTsKCWNvbnN0IGJvYiA9IGxpbWl0cy52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCWZvciAobGV0IGF0dGVtcHQgPSAwOyBhdHRlbXB0IDwgMzsgYXR0ZW1wdCArPSAxKSB7CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMTAiKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oIjE5OC41MS4xMDAuMjAiKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBhbGljZS5zaWduSW4oKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBib2Iuc2lnbkluKCIxOTguNTEuMTAwLjEwIikpLnRvQmUoNDAxKTsKfSk7Cg==","path":"src/server/authClientIp.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IFBvb2wsIHR5cGUgUG9vbENsaWVudCB9IGZyb20gInBnIjsKCmV4cG9ydCBjb25zdCBhdXRoRGF0YWJhc2UgPSBFZmZlY3QuZm4oIlN0YXJ0ZXIuYXV0aERhdGFiYXNlIikoZnVuY3Rpb24qICh1cmw6IFJlZGFjdGVkLlJlZGFjdGVkPHN0cmluZz4pIHsKCWNvbnN0IGNsaWVudHMgPSBuZXcgU2V0PFBvb2xDbGllbnQ+KCk7CglyZXR1cm4geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQlFZmZlY3Quc3luYygoKSA9PiB7CgkJCWNvbnN0IHBvb2wgPSBuZXcgUG9vbCh7IGNvbm5lY3Rpb25TdHJpbmc6IFJlZGFjdGVkLnZhbHVlKHVybCkgfSk7CgkJCXBvb2wub24oImNvbm5lY3QiLCAoY2xpZW50KSA9PiBjbGllbnRzLmFkZChjbGllbnQpKTsKCQkJcG9vbC5vbigicmVtb3ZlIiwgKGNsaWVudCkgPT4gY2xpZW50cy5kZWxldGUoY2xpZW50KSk7CgkJCXJldHVybiBwb29sOwoJCX0pLAoJCShwb29sKSA9PgoJCQlFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkvLyBwZy1wb29sIHJlc29sdmVzIGVuZCBiZWZvcmUgaXRzIGNsaWVudHMgZmluaXNoIGRpc2Nvbm5lY3RpbmcuCgkJCQljb25zdCBkaXNjb25uZWN0ZWQgPSBbLi4uY2xpZW50c10ubWFwKChjbGllbnQpID0+IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiBjbGllbnQub25jZSgiZW5kIiwgcmVzb2x2ZSkpKTsKCQkJCWF3YWl0IHBvb2wuZW5kKCk7CgkJCQlhd2FpdCBQcm9taXNlLmFsbChkaXNjb25uZWN0ZWQpOwoJCQl9KSwKCSk7Cn0pOwo=","path":"src/server/authDatabase.ts"},{"content":"aW1wb3J0IHR5cGUgeyBCZXR0ZXJBdXRoT3B0aW9ucyB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHR5cGUgeyBQb29sIH0gZnJvbSAicGciOwoKZXhwb3J0IGZ1bmN0aW9uIGF1dGhPcHRpb25zKGRhdGFiYXNlOiBQb29sKSB7CglyZXR1cm4geyBkYXRhYmFzZSwgZW1haWxBbmRQYXNzd29yZDogeyBlbmFibGVkOiB0cnVlIH0gfSBzYXRpc2ZpZXMgQmV0dGVyQXV0aE9wdGlvbnM7Cn0K","path":"src/server/authOptions.ts"},{"content":"aW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKY29uc3QgcmVhbElwID0gYmVoaW5kUHJveHkoeyBhdXRoQ2xpZW50SXBIZWFkZXI6ICJ4LXJlYWwtaXAiLCB0cnVzdGVkUHJveHk6ICIxMjcuMC4wLjEiIH0pOwoKYXBwLml0KCJpc29sYXRlcyBzaWduLWluIGxpbWl0cyBieSBYLVJlYWwtSVAgZnJvbSBhIHRydXN0ZWQgcGVlciIsIFtyZWFsSXBdLCBmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJY29uc3QgcHJveHkgPSBhdXRoUmF0ZUxpbWl0cygpLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQlleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4xMCIpKS50b0JlKDQwMSk7Cgl9CglleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4xMCIpKS50b0JlKDQyOSk7CglleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbigiMTk4LjUxLjEwMC4xIiwgIjIwMy4wLjExMy4yMCIpKS50b0JlKDQwMSk7Cn0pOwoKYXBwLml0KCJzaGFyZXMgYSBzaWduLWluIGJ1Y2tldCBmb3IgdGhlIHNhbWUgWC1SZWFsLUlQIGFjcm9zcyBjaGFuZ2luZyBmb3J3YXJkaW5nIGNoYWlucyIsIFtyZWFsSXBdLCBmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJY29uc3QgcHJveHkgPSBhdXRoUmF0ZUxpbWl0cygpLnZpc2l0b3IoIjEyNy4wLjAuMSIpOwoJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQlleHBlY3QoeWllbGQqIHByb3h5LnNpZ25JbihgMTk4LjUxLjEwMC4ke2F0dGVtcHQgKyAxfWAsICIyMDMuMC4xMTMuMTAiKSkudG9CZSg0MDEpOwoJfQoJZXhwZWN0KHlpZWxkKiBwcm94eS5zaWduSW4oIjE5OC41MS4xMDAuNCIsICIyMDMuMC4xMTMuMTAiKSkudG9CZSg0MjkpOwoJZXhwZWN0KHlpZWxkKiBwcm94eS5zaWduSW4odW5kZWZpbmVkLCAiMjAzLjAuMTEzLjEwIikpLnRvQmUoNDI5KTsKfSk7Cgpmb3IgKGNvbnN0IHRydXN0ZWRQcm94eSBvZiBbdW5kZWZpbmVkLCAiMTI3LjAuMC4yIl0pIHsKCWFwcC5pdCgKCQlgaWdub3JlcyBYLVJlYWwtSVAgd2hlbiBwcm94eSB0cnVzdCBpcyAke3RydXN0ZWRQcm94eSA/PyAidW5zZXQifWAsCgkJW2JlaGluZFByb3h5KHsgYXV0aENsaWVudElwSGVhZGVyOiAieC1yZWFsLWlwIiwgdHJ1c3RlZFByb3h5IH0pXSwKCQlmdW5jdGlvbiogKHsgYXV0aFJhdGVMaW1pdHMgfSkgewoJCQljb25zdCBwZWVyID0gYXV0aFJhdGVMaW1pdHMoKS52aXNpdG9yKCIxMjcuMC4wLjEiKTsKCQkJZm9yIChsZXQgYXR0ZW1wdCA9IDA7IGF0dGVtcHQgPCAzOyBhdHRlbXB0ICs9IDEpIHsKCQkJCWV4cGVjdCh5aWVsZCogcGVlci5zaWduSW4odW5kZWZpbmVkLCBgMjAzLjAuMTEzLiR7YXR0ZW1wdCArIDF9YCkpLnRvQmUoNDAxKTsKCQkJfQoJCQlleHBlY3QoeWllbGQqIHBlZXIuc2lnbkluKHVuZGVmaW5lZCwgIjIwMy4wLjExMy40IikpLnRvQmUoNDI5KTsKCQl9LAoJKTsKfQo=","path":"src/server/authRealIp.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGRlcGxveW1lbnQgfSBmcm9tICIjdGVzdC1zdXBwb3J0L2RlcGxveW1lbnQudHMiOwoKZGVwbG95bWVudC5pdCgiYXV0aCBzdGlsbCByZXBvcnRzIGEgbWlzc2luZyBjb2x1bW4gd2hlbiB0aGUgbWlncmF0aW9uIGxlZGdlciBpcyBjdXJyZW50IiwgW10sIGZ1bmN0aW9uKiAoeyBtaWdyYXRlLCBzdGFydFByb2Nlc3MgfSkgewoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkudG9CZSgwKTsKCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgInVzZXIiIGRyb3AgY29sdW1uIGltYWdlYDsKCWNvbnN0IHdlYiA9IHlpZWxkKiBzdGFydFByb2Nlc3MoIndlYiIpOwoJY29uc3QgYWRkcmVzcyA9IHlpZWxkKiB3ZWIucmVhZHk7Cgljb25zdCByZXNwb25zZSA9IHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBmZXRjaChgJHthZGRyZXNzfS9hcGkvYXV0aC9nZXQtc2Vzc2lvbmApKTsKCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoNTAzKTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiBleHBlY3QucG9sbCgoKSA9PiB3ZWIuZXJyb3JzLmpvaW4oIlxuIikpLnRvQ29udGFpbigiRGF0YWJhc2Ugc2NoZW1hIG1pc21hdGNoIikpOwoJZXhwZWN0KHdlYi5lcnJvcnMuam9pbigiXG4iKSkudG9Db250YWluKCJNaXNzaW5nIGNvbHVtbnMiKTsKCWV4cGVjdCh3ZWIuZXJyb3JzLmpvaW4oIlxuIikpLnRvQ29udGFpbigidXNlci5pbWFnZSIpOwp9KTsK","path":"src/server/authSchema.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgKiBhcyBBc3luY1Jlc3VsdCBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9Bc3luY1Jlc3VsdCI7CmltcG9ydCB7IFNxbENsaWVudCB9IGZyb20gImVmZmVjdC9zcWwiOwppbXBvcnQgeyBleHBlY3QsIHZpIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgdHJhbnNhY3QgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1zcWwvdHJhbnNhY3QudHMiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CmltcG9ydCB7IE5vdGVzU2VydmljZSB9IGZyb20gIi4vTm90ZXNTZXJ2aWNlLnRzIjsKCmFwcC5pdCgKCSJlbnF1ZXVlcyBpbmRlcGVuZGVudGx5IG9mIGFuIG91dGVyIHJvbGxiYWNrIGFuZCByZWZldGNoZXMgY29tbWl0dGVkIG5vdGVzIHRocm91Z2ggdGhlIHdvcmtlciIsCglbc2lnbmVkSW4oKV0sCglmdW5jdGlvbiogKHsgYWN0b3IsIHJ1bm5pbmdIb3N0LCBzdGFydFdvcmtlciwgbGl2ZU5vdGVzIH0pIHsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQljb25zdCB7IGNvbnRleHQgfSA9IHJ1bm5pbmdIb3N0KCk7CgkJY29uc3QgeyBub3RlczogaHR0cCB9ID0gYWN0b3IoKTsKCQljb25zdCB7IGxpc3QsIHJlZ2lzdHJ5IH0gPSB5aWVsZCogbGl2ZU5vdGVzKCk7CgkJY29uc3Qgbm90ZSA9IHlpZWxkKiBodHRwLmNyZWF0ZSh7IHRpdGxlOiAiQ291bnQgdGhlc2UgdGhyZWUgd29yZHMiIH0pOwoJCWV4cGVjdChub3RlLndvcmRDb3VudCkudG9CZU51bGwoKTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gdmkud2FpdEZvcigoKSA9PiBleHBlY3QoQXN5bmNSZXN1bHQuZ2V0T3JFbHNlKHJlZ2lzdHJ5LmdldChsaXN0KSwgKCkgPT4gW10pKS50b0VxdWFsKFtub3RlXSkpKTsKCQljb25zdCB1c2VycyA9IHlpZWxkKiBzcWw8eyBpZDogc3RyaW5nIH0+YHNlbGVjdCBpZCBmcm9tICJ1c2VyIiB3aGVyZSBlbWFpbCA9ICdhbGljZUBzdGFydGVyLnRlc3QnYDsKCQljb25zdCBvd25lcklkID0gdXNlcnNbMF0/LmlkOwoJCWlmIChvd25lcklkID09PSB1bmRlZmluZWQpIHsKCQkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZGllKCJNaXNzaW5nIGFjY291bnQiKTsKCQl9CgkJY29uc3Qgcm9sbGJhY2sgPSB5aWVsZCogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQljb25zdCBzZXJ2aWNlID0geWllbGQqIE5vdGVzU2VydmljZTsKCQkJeWllbGQqIHNlcnZpY2UuY3JlYXRlKHsgdGl0bGU6ICJSb2xsZWQgYmFjayIgfSwgb3duZXJJZCk7CgkJCXJldHVybiB5aWVsZCogRWZmZWN0LmZhaWwoInJvbGxiYWNrIik7CgkJfSkucGlwZSh0cmFuc2FjdCh7IG9uU3FsRXJyb3I6IChlcnJvcikgPT4gZXJyb3IgfSksIEVmZmVjdC5wcm92aWRlKGNvbnRleHQpLCBFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyb2xsYmFjaykgJiYgcm9sbGJhY2suZmFpbHVyZSkudG9CZSgicm9sbGJhY2siKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHBnYm9zcy5qb2Igd2hlcmUgbmFtZSA9ICdjb3VudC1ub3RlLXdvcmRzJ2ApLnRvRXF1YWwoW3sgY291bnQ6IDIgfV0pOwoJCXlpZWxkKiBFZmZlY3Quc2xlZXAoIjEyMDAgbWlsbGlzIik7CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0ICJ3b3JkQ291bnQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7bm90ZS5pZH1gKS50b0VxdWFsKFt7IHdvcmRDb3VudDogbnVsbCB9XSk7CgkJeWllbGQqIHN0YXJ0V29ya2VyKCk7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCXZpLndhaXRGb3IoKCkgPT4gZXhwZWN0KEFzeW5jUmVzdWx0LmdldE9yRWxzZShyZWdpc3RyeS5nZXQobGlzdCksICgpID0+IFtdKSkudG9FcXVhbChbeyAuLi5ub3RlLCB2ZXJzaW9uOiAxLCB3b3JkQ291bnQ6IDQgfV0pLCB7CgkJCQl0aW1lb3V0OiA1MDAwLAoJCQl9KSwKCQkpOwoJCWNvbnN0IHNlY29uZCA9IHlpZWxkKiBodHRwLmNyZWF0ZSh7IHRpdGxlOiAiQWZ0ZXIgY29tbWl0IiB9KTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQkJdmkud2FpdEZvcigKCQkJCSgpID0+CgkJCQkJZXhwZWN0KEFzeW5jUmVzdWx0LmdldE9yRWxzZShyZWdpc3RyeS5nZXQobGlzdCksICgpID0+IFtdKSkudG9FcXVhbChbCgkJCQkJCXsgaWQ6IHNlY29uZC5pZCwgdGl0bGU6IHNlY29uZC50aXRsZSwgdmVyc2lvbjogMSwgd29yZENvdW50OiAyIH0sCgkJCQkJCXsgLi4ubm90ZSwgdmVyc2lvbjogMSwgd29yZENvdW50OiA0IH0sCgkJCQkJXSksCgkJCQl7IHRpbWVvdXQ6IDUwMDAgfSwKCQkJKSwKCQkpOwoJCWNvbnN0IGNvbXBsZXRlZCA9IHNxbGBzZWxlY3Qgc3RhdGUsIHJldHJ5X2NvdW50IGFzICJyZXRyeUNvdW50IiBmcm9tIHBnYm9zcy5qb2Igd2hlcmUgbmFtZSA9ICdjb3VudC1ub3RlLXdvcmRzJyBvcmRlciBieSBjcmVhdGVkX29uYDsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQkJdmkud2FpdEZvcigKCQkJCWFzeW5jICgpID0+CgkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKGNvbXBsZXRlZCkpLnRvRXF1YWwoWwoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHJldHJ5Q291bnQ6IDAsIHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCV0pLAoJCQkJeyB0aW1lb3V0OiA1MDAwIH0sCgkJCSksCgkJKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFt7IGNvdW50OiAyIH1dKTsKCX0sCgkxNV8wMDAsCik7Cg==","path":"src/server/committedJobs.spec.ts"},{"content":"aW1wb3J0IHsgY29va2llQXBwIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9jb29raWVBcHAudHMiOwoKY29va2llQXBwLml0KCJzaWduLXVwIGFuZCBzaWduLWluIGtlZXAgdGhlaXIgY29va2llIHNlc3Npb25zIGFnYWluc3QgdGhlIFBvc3RncmVTUUwgaG9zdCIsIFtdLCBmdW5jdGlvbiogKHsgc2lnblVwLCBzaWduSW4sIHNpZ25PdXQsIHNlc3Npb25JcyB9KSB7Cgl5aWVsZCogc2lnblVwKCk7Cgl5aWVsZCogc2Vzc2lvbklzKCJhbGljZUBzdGFydGVyLnRlc3QiKTsKCXlpZWxkKiBzaWduT3V0KCk7Cgl5aWVsZCogc2Vzc2lvbklzKG51bGwpOwoJeWllbGQqIHNpZ25JbigpOwoJeWllbGQqIHNlc3Npb25JcygiYWxpY2VAc3RhcnRlci50ZXN0Iik7Cgl5aWVsZCogc2lnbk91dCgpOwoJeWllbGQqIHNlc3Npb25JcyhudWxsKTsKfSk7Cg==","path":"src/server/cookieSessions.dom.spec.ts"},{"content":"aW1wb3J0IHR5cGUgeyBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB0eXBlIHsgUG9vbCB9IGZyb20gInBnIjsKaW1wb3J0IHsgbWlncmF0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvbWlncmF0aW9ucy50cyI7CgpleHBvcnQgZnVuY3Rpb24gZGF0YWJhc2VPcHRpb25zKGRhdGFiYXNlOiBQb29sLCBkYXRhYmFzZVVybDogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPikgewoJcmV0dXJuIHsKCQljb25maWc6IHsgY2hhbmdlczogeyBjaGFubmVsOiAic3RhcnRlcl9ub3Rlc19jaGFuZ2VzIiB9LCBkYXRhYmFzZVVybCB9LAoJCW1pZ3JhdGlvbnM6IHsgLi4ubWlncmF0aW9ucyhkYXRhYmFzZSksIG1vZGU6ICJjaGVjayIgYXMgY29uc3QgfSwKCX07Cn0K","path":"src/server/databaseOptions.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGF1dGhQb3N0LCBjcmVkZW50aWFscyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXV0aEh0dHAudHMiOwppbXBvcnQgeyBkZXBsb3ltZW50IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9kZXBsb3ltZW50LnRzIjsKCmRlcGxveW1lbnQuaXQoInRoZSBzZWNyZXQtZnJlZSBtaWdyYXRlIGNvbW1hbmQgYXBwbGllcyB0aGUgc2NoZW1hIG9uY2UgYW5kIHByZXNlcnZlcyBpdHMgbGVkZ2VyIGFuZCByb3dzIG9uIHJlcnVuIiwgW10sIGZ1bmN0aW9uKiAoeyBtaWdyYXRlIH0pIHsKCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJZXhwZWN0KHlpZWxkKiBtaWdyYXRlKCkpLnRvQmUoMCk7Cgljb25zdCBsZWRnZXIgPSBzcWxgc2VsZWN0IG1pZ3JhdGlvbl9pZCwgbmFtZSwgY3JlYXRlZF9hdCBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyBvcmRlciBieSBtaWdyYXRpb25faWRgOwoJY29uc3QgYXBwbGllZCA9IHlpZWxkKiBsZWRnZXI7CglleHBlY3QoYXBwbGllZCkudG9IYXZlTGVuZ3RoKDUpOwoJeWllbGQqIHNxbGBpbnNlcnQgaW50byBzdGFydGVyX25vdGVzICh0aXRsZSkgdmFsdWVzICgnS2VlcCB0aGlzIG5vdGUnKWA7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkudG9CZSgwKTsKCWV4cGVjdCh5aWVsZCogbGVkZ2VyKS50b0VxdWFsKGFwcGxpZWQpOwoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IHRpdGxlIGZyb20gc3RhcnRlcl9ub3Rlc2ApLnRvRXF1YWwoW3sgdGl0bGU6ICJLZWVwIHRoaXMgbm90ZSIgfV0pOwoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IGNvdW50KCopOjppbnQgYXMgY291bnQgZnJvbSAidXNlciJgKS50b0VxdWFsKFt7IGNvdW50OiAwIH1dKTsKfSk7CgpkZXBsb3ltZW50Lml0KAoJIndlYiBhbmQgYSBzZWNyZXQtZnJlZSB3b3JrZXIgcmVmdXNlIGFuIHVubWlncmF0ZWQgc2NoZW1hLCB0aGVuIHN0YXJ0IGFmdGVyIHRoZSBtaWdyYXRlIGNvbW1hbmQiLAoJW10sCglmdW5jdGlvbiogKHsgbWlncmF0ZSwgc3RhcnRQcm9jZXNzLCBwb3J0OiBhdmFpbGFibGVQb3J0IH0pIHsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQljb25zdCBwb3J0ID0geWllbGQqIGF2YWlsYWJsZVBvcnQ7CgkJZm9yIChjb25zdCBraW5kIG9mIFsid29ya2VyIiwgIndlYiJdIGFzIGNvbnN0KSB7CgkJCWNvbnN0IHBlbmRpbmcgPSB5aWVsZCogc3RhcnRQcm9jZXNzKGtpbmQsIHBvcnQpOwoJCQljb25zdCBwcmVtYXR1cmUgPSBwZW5kaW5nLnJlYWR5LnBpcGUoCgkJCQlFZmZlY3QuY2F0Y2goKCkgPT4gRWZmZWN0Lm5ldmVyKSwKCQkJCUVmZmVjdC5hbmRUaGVuKEVmZmVjdC5mYWlsKG5ldyBFcnJvcihgJHtraW5kfSBzdGFydGVkIGJlZm9yZSBtaWdyYXRpb25zIHdlcmUgYXBwbGllZGApKSksCgkJCSk7CgkJCWV4cGVjdCh5aWVsZCogRWZmZWN0LnJhY2VGaXJzdChwZW5kaW5nLmNoaWxkLmV4aXRDb2RlLCBwcmVtYXR1cmUpKS5ub3QudG9CZSgwKTsKCQkJZXhwZWN0KFsuLi5wZW5kaW5nLmxvZ3MsIC4uLnBlbmRpbmcuZXJyb3JzXS5qb2luKCJcbiIpKS50b0NvbnRhaW4oIkRhdGFiYXNlIG1pZ3JhdGlvbnMgYXJlIG5vdCBjdXJyZW50Iik7CgkJCWV4cGVjdChbLi4ucGVuZGluZy5sb2dzLCAuLi5wZW5kaW5nLmVycm9yc10uam9pbigiXG4iKSkubm90LnRvQ29udGFpbigiRGF0YWJhc2Ugc2NoZW1hIG1pc21hdGNoIik7CgkJCWV4cGVjdChwZW5kaW5nLmxvZ3MuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnN0YXJ0c1dpdGgoIkVGRkVDVF9MT0cgV29ya2VyIikpKS50b0VxdWFsKFtdKTsKCQl9CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IHRvX3JlZ2NsYXNzKCdzdGFydGVyX21pZ3JhdGlvbnMnKSBhcyBsZWRnZXJgKS50b0VxdWFsKFt7IGxlZGdlcjogbnVsbCB9XSk7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGV4cGVjdChmZXRjaChgaHR0cDovLzEyNy4wLjAuMToke3BvcnR9L2hlYWx0aGApKS5yZWplY3RzLnRvVGhyb3coKSk7CgkJZXhwZWN0KHlpZWxkKiBtaWdyYXRlKCkpLnRvQmUoMCk7CgkJY29uc3Qgd29ya2VyID0geWllbGQqIHN0YXJ0UHJvY2Vzcygid29ya2VyIik7CgkJY29uc3Qgd2ViID0geWllbGQqIHN0YXJ0UHJvY2Vzcygid2ViIiwgcG9ydCk7CgkJZXhwZWN0KHlpZWxkKiB3b3JrZXIucmVhZHkpLnRvQmUoIndvcmtlciIpOwoJCWNvbnN0IGFkZHJlc3MgPSB5aWVsZCogd2ViLnJlYWR5OwoJCWV4cGVjdCgoeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGZldGNoKGAke2FkZHJlc3N9L2hlYWx0aGApKSkuc3RhdHVzKS50b0JlKDIwMCk7CgkJZXhwZWN0KHlpZWxkKiBhdXRoUG9zdChhZGRyZXNzLCAic2lnbi11cC9lbWFpbCIsIGNyZWRlbnRpYWxzKCJkZXBsb3kiKSkpLnRvQ29udGFpbigic2Vzc2lvbl90b2tlbj0iKTsKCQlleHBlY3QoWy4uLndlYi5sb2dzLCAuLi53ZWIuZXJyb3JzXS5qb2luKCJcbiIpKS5ub3QudG9Db250YWluKCJEYXRhYmFzZSBzY2hlbWEgbWlzbWF0Y2giKTsKCQlleHBlY3Qod29ya2VyLmxvZ3MuZmlsdGVyKChsaW5lKSA9PiBsaW5lLnN0YXJ0c1dpdGgoIkVGRkVDVF9MT0cgV29ya2VyIikpKS50b0VxdWFsKFsKCQkJIkVGRkVDVF9MT0cgV29ya2VyIG1pZ3JhdGlvbnMgYXBwbGllZCIsCgkJCSJFRkZFQ1RfTE9HIFdvcmtlciByZWFkeSB0byB0YWtlIGpvYnMiLAoJCV0pOwoJCWV4cGVjdCh5aWVsZCogd29ya2VyLmNoaWxkLmlzUnVubmluZykudG9CZSh0cnVlKTsKCQlleHBlY3QoeWllbGQqIHdlYi5jaGlsZC5pc1J1bm5pbmcpLnRvQmUodHJ1ZSk7Cgl9LAopOwoKZGVwbG95bWVudC5pdCgiYSBmYWlsZWQgbWlncmF0ZSBjb21tYW5kIGV4aXRzIG5vbnplcm8gd2l0aG91dCByZWNvcmRpbmcgYW4gYXBwbGllZCBtaWdyYXRpb24iLCBbXSwgZnVuY3Rpb24qICh7IG1pZ3JhdGUgfSkgewoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7Cgl5aWVsZCogc3FsYGNyZWF0ZSB0YWJsZSBzdGFydGVyX25vdGVzICh0aXRsZSB0ZXh0KWA7CglleHBlY3QoeWllbGQqIG1pZ3JhdGUoKSkubm90LnRvQmUoMCk7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgdG9fcmVnY2xhc3MoJ3N0YXJ0ZXJfbWlncmF0aW9ucycpIGFzIGxlZGdlcmApLnRvRXF1YWwoW3sgbGVkZ2VyOiBudWxsIH1dKTsKfSk7Cg==","path":"src/server/deployReadiness.spec.ts"},{"content":"aW1wb3J0IHByb2Nlc3MgZnJvbSAibm9kZTpwcm9jZXNzIjsKaW1wb3J0IHsgTm9kZVJ1bnRpbWUsIE5vZGVTZXJ2aWNlcyB9IGZyb20gIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IENoaWxkUHJvY2VzcywgQ2hpbGRQcm9jZXNzU3Bhd25lciB9IGZyb20gImVmZmVjdC9wcm9jZXNzIjsKCmNvbnN0IHByb2dyYW0gPSBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7Cgljb25zdCBzcGF3bmVyID0geWllbGQqIENoaWxkUHJvY2Vzc1NwYXduZXIuQ2hpbGRQcm9jZXNzU3Bhd25lcjsKCWNvbnN0IG9wdGlvbnMgPSB7IHN0ZGVycjogImluaGVyaXQiLCBzdGRvdXQ6ICJpbmhlcml0IiB9IGFzIGNvbnN0OwoJY29uc3Qgc2VydmVyID0gQ2hpbGRQcm9jZXNzLm1ha2UocHJvY2Vzcy5leGVjUGF0aCwgWyItLXdhdGNoIiwgInNyYy9zZXJ2ZXIvc2VydmVyLnRzIl0sIG9wdGlvbnMpOwoJY29uc3Qgdml0ZSA9IENoaWxkUHJvY2Vzcy5tYWtlKCJwbnBtIiwgWyJleGVjIiwgInZpdGUiXSwgb3B0aW9ucyk7Cgljb25zdCB3b3JrZXIgPSBDaGlsZFByb2Nlc3MubWFrZShwcm9jZXNzLmV4ZWNQYXRoLCBbIi0td2F0Y2giLCAic3JjL3NlcnZlci93b3JrZXIudHMiXSwgb3B0aW9ucyk7Cglwcm9jZXNzLmV4aXRDb2RlID0geWllbGQqIEVmZmVjdC5yYWNlQWxsKFtzcGF3bmVyLmV4aXRDb2RlKHNlcnZlciksIHNwYXduZXIuZXhpdENvZGUod29ya2VyKSwgc3Bhd25lci5leGl0Q29kZSh2aXRlKV0pOwp9KTsKCk5vZGVSdW50aW1lLnJ1bk1haW4ocHJvZ3JhbS5waXBlKEVmZmVjdC5wcm92aWRlKE5vZGVTZXJ2aWNlcy5sYXllcikpKTsK","path":"src/server/dev.ts"},{"content":"aW1wb3J0IHsgYmV0dGVyQXV0aCB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIE9wdGlvbiwgUmVkYWN0ZWQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBIdHRwUm91dGVyLCBIdHRwU2VydmVyUmVxdWVzdCwgSHR0cFNlcnZlclJlc3BvbnNlIH0gZnJvbSAiZWZmZWN0L2h0dHAiOwppbXBvcnQgdHlwZSB7IFBvb2wgfSBmcm9tICJwZyI7CmltcG9ydCB7IGJldHRlckF1dGhTZXNzaW9ucyB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9hZGFwdGVycy9iZXR0ZXItYXV0aC1zZXNzaW9ucy50cyI7CmltcG9ydCB7IHRydXN0ZWRQcm94eVBlZXIsIHRydXN0ZWRQcm94eVJhbmdlcyB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9sb2NhbC50cyI7CmltcG9ydCB7IGF1dGhPcHRpb25zIH0gZnJvbSAiI3NlcnZlci9hdXRoT3B0aW9ucy50cyI7CgpleHBvcnQgY29uc3QgbWFrZUF1dGggPSBFZmZlY3QuZm4oIlN0YXJ0ZXIubWFrZUF1dGgiKShmdW5jdGlvbiogKGNvbmZpZzogeyByZWFkb25seSBkYXRhYmFzZTogUG9vbDsgcmVhZG9ubHkgc2VjcmV0PzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPiB9KSB7Cgljb25zdCBzZWNyZXQgPSBjb25maWcuc2VjcmV0ID8/ICh5aWVsZCogQ29uZmlnLlJlZGFjdGVkKCJCRVRURVJfQVVUSF9TRUNSRVQiKSk7Cgljb25zdCBwdWJsaWNVcmwgPSB5aWVsZCogQ29uZmlnLlVSTCgiUFVCTElDX1VSTCIpLnBpcGUoQ29uZmlnLm9wdGlvbik7Cgljb25zdCBvcmlnaW4gPSBPcHRpb24ubWFwKHB1YmxpY1VybCwgKHVybCkgPT4gdXJsLm9yaWdpbik7Cgljb25zdCB0cnVzdGVkUHJveHkgPSBPcHRpb24uZ2V0T3JVbmRlZmluZWQoeWllbGQqIENvbmZpZy5TdHJpbmcoIlRSVVNURURfUFJPWFkiKS5waXBlKENvbmZpZy5vcHRpb24pKTsKCWNvbnN0IGNsaWVudElwSGVhZGVyID0geWllbGQqIENvbmZpZy5TdHJpbmcoIkFVVEhfQ0xJRU5UX0lQX0hFQURFUiIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KCJ4LWZvcndhcmRlZC1mb3IiKSk7Cgljb25zdCByYXRlTGltaXRFbmFibGVkID0geWllbGQqIENvbmZpZy5Cb29sZWFuKCJBVVRIX1JBVEVfTElNSVRfRU5BQkxFRCIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KHRydWUpKTsKCWNvbnN0IGlzVHJ1c3RlZFByb3h5ID0gdHJ1c3RlZFByb3h5UGVlcih0cnVzdGVkUHJveHkpOwoJY29uc3QgdHJ1c3RlZFByb3hpZXMgPSB0cnVzdGVkUHJveHlSYW5nZXModHJ1c3RlZFByb3h5KTsKCWNvbnN0IGF1dGggPSBiZXR0ZXJBdXRoKHsKCQlhZHZhbmNlZDogewoJCQlkYXRhYmFzZTogeyB2YWxpZGF0ZVNjaGVtYTogdHJ1ZSB9LAoJCQlpcEFkZHJlc3M6IHsKCQkJCWlwQWRkcmVzc0hlYWRlcnM6IHRydXN0ZWRQcm94aWVzLmxlbmd0aCA9PT0gMCA/IFtdIDogW2NsaWVudElwSGVhZGVyXSwKCQkJCXRydXN0ZWRQcm94aWVzLAoJCQl9LAoJCQl1c2VTZWN1cmVDb29raWVzOiBPcHRpb24uaXNTb21lKHB1YmxpY1VybCkgJiYgcHVibGljVXJsLnZhbHVlLnByb3RvY29sID09PSAiaHR0cHM6IiwKCQl9LAoJCSJiYXNlVVJMIjogT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+ICh7IGFsbG93ZWRIb3N0czogWyIxMjcuMC4wLjE6KiJdLCBwcm90b2NvbDogImh0dHAiIGFzIGNvbnN0IH0pKSwKCQkuLi5hdXRoT3B0aW9ucyhjb25maWcuZGF0YWJhc2UpLAoJCXJhdGVMaW1pdDogeyBlbmFibGVkOiByYXRlTGltaXRFbmFibGVkIH0sCgkJc2VjcmV0OiBSZWRhY3RlZC52YWx1ZShzZWNyZXQpLAoJCXNlc3Npb246IHsgY29va2llQ2FjaGU6IHsgZW5hYmxlZDogZmFsc2UgfSB9LAoJCXRydXN0ZWRPcmlnaW5zOiBbT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+ICJodHRwOi8vMTI3LjAuMC4xOioiKV0sCgl9KTsKCWNvbnN0IHJvdXRlcyA9IEh0dHBSb3V0ZXIudXNlKChyb3V0ZXIpID0+CgkJcm91dGVyLmFkZCgiKiIsICIvYXBpL2F1dGgvKiIsIChyZXF1ZXN0KSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCB3ZWIgPSB5aWVsZCogSHR0cFNlcnZlclJlcXVlc3QudG9XZWIocmVxdWVzdCk7CgkJCQlpZiAoIU9wdGlvbi5leGlzdHMocmVxdWVzdC5yZW1vdGVBZGRyZXNzLCBpc1RydXN0ZWRQcm94eSkpIHsKCQkJCQl3ZWIuaGVhZGVycy5kZWxldGUoY2xpZW50SXBIZWFkZXIpOwoJCQkJfQoJCQkJcmV0dXJuIEh0dHBTZXJ2ZXJSZXNwb25zZS5mcm9tV2ViKHlpZWxkKiBFZmZlY3QudHJ5UHJvbWlzZSgoKSA9PiBhdXRoLmhhbmRsZXIod2ViKSkpOwoJCQl9KS5waXBlKEVmZmVjdC5jYXRjaCgoKSA9PiBFZmZlY3Quc3VjY2VlZChIdHRwU2VydmVyUmVzcG9uc2UudGV4dCgiQXV0aGVudGljYXRpb24gaXMgdGVtcG9yYXJpbHkgdW5hdmFpbGFibGUiLCB7IHN0YXR1czogNTAzIH0pKSkpLAoJCSksCgkpOwoJcmV0dXJuIHsKCQlhdXRoLAoJCXJvdXRlcywKCQlzZXNzaW9uczogewoJCQlvcmlnaW46ICh7IGhlYWRlcnMgfTogeyByZWFkb25seSBoZWFkZXJzOiBSZWFkb25seTxSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+PiB9KSA9PgoJCQkJaGVhZGVycy5vcmlnaW4gPT09IHVuZGVmaW5lZCB8fCBoZWFkZXJzLm9yaWdpbiA9PT0gT3B0aW9uLmdldE9yRWxzZShvcmlnaW4sICgpID0+IGBodHRwOi8vJHtoZWFkZXJzLmhvc3R9YCksCgkJCXByb3ZpZGVyOiBiZXR0ZXJBdXRoU2Vzc2lvbnMoKGhlYWRlcnMpID0+IGF1dGguYXBpLmdldFNlc3Npb24oeyBoZWFkZXJzIH0pKSwKCQl9LAoJfTsKfSk7CgpleHBvcnQgdHlwZSBTdGFydGVyQXV0aCA9IEVmZmVjdC5TdWNjZXNzPFJldHVyblR5cGU8dHlwZW9mIG1ha2VBdXRoPj5bImF1dGgiXTsK","path":"src/server/makeAuth.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTW9kZWwgfSBmcm9tICJlZmZlY3Qvc2NoZW1hIjsKaW1wb3J0IHsgbWFrZVJlcG9zaXRvcnkgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1zcWwvcmVwb3NpdG9yeS50cyI7CmltcG9ydCB7IE5vdGUgfSBmcm9tICIjbm90ZXMudHMiOwoKZXhwb3J0IGNsYXNzIFN0b3JlZE5vdGUgZXh0ZW5kcyBNb2RlbC5DbGFzczxTdG9yZWROb3RlPigiU3RvcmVkTm90ZSIpKHsKCWlkOiBNb2RlbC5GaWVsZCh7IGpzb246IFNjaGVtYS5OdW1iZXIsIHNlbGVjdDogU2NoZW1hLk51bWJlciwgdXBkYXRlOiBTY2hlbWEuTnVtYmVyIH0pLAoJb3duZXJJZDogU2NoZW1hLk51bGxPcihTY2hlbWEuU3RyaW5nKSwKCXRpdGxlOiBOb3RlLmZpZWxkcy50aXRsZSwKCXZlcnNpb246IE1vZGVsLkZpZWxkKHsganNvbjogU2NoZW1hLk51bWJlciwgc2VsZWN0OiBTY2hlbWEuTnVtYmVyLCB1cGRhdGU6IFNjaGVtYS5OdW1iZXIgfSksCgl3b3JkQ291bnQ6IE5vdGUuZmllbGRzLndvcmRDb3VudCwKfSkge30KCmV4cG9ydCBjb25zdCBtYWtlTm90ZXNSZXBvc2l0b3J5ID0gbWFrZVJlcG9zaXRvcnkoU3RvcmVkTm90ZSwgewoJaWRDb2x1bW46ICJpZCIsCglzcGFuUHJlZml4OiAiTm90ZXMiLAoJdGFibGVOYW1lOiAic3RhcnRlcl9ub3RlcyIsCgl2ZXJzaW9uQ29sdW1uOiAidmVyc2lvbiIsCn0pOwo=","path":"src/server/makeNotesRepository.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBFZmZlY3QgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBtaWdyYXRlRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL21pZ3JhdGVEYXRhYmFzZS50cyI7CgpOb2RlUnVudGltZS5ydW5NYWluKEVmZmVjdC5zY29wZWQobWlncmF0ZURhdGFiYXNlKCkpKTsK","path":"src/server/migrate.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGFwcERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9hcHBIb3N0LnRzIjsKaW1wb3J0IHsgYXV0aERhdGFiYXNlIH0gZnJvbSAiI3NlcnZlci9hdXRoRGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRpb25zIH0gZnJvbSAiI3NlcnZlci9taWdyYXRpb25zLnRzIjsKaW1wb3J0IHsgbm90ZVByb2R1Y2VyIH0gZnJvbSAiI3NlcnZlci9ub3RlUHJvZHVjZXIudHMiOwoKZXhwb3J0IGNvbnN0IG1pZ3JhdGVEYXRhYmFzZSA9IEVmZmVjdC5mbigiU3RhcnRlci5taWdyYXRlRGF0YWJhc2UiKShmdW5jdGlvbiogKGRhdGFiYXNlVXJsPzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPikgewoJY29uc3QgdXJsID0gZGF0YWJhc2VVcmwgPz8gKHlpZWxkKiBDb25maWcuUmVkYWN0ZWQoIkRBVEFCQVNFX1VSTCIpKTsKCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKHVybCk7Cgl5aWVsZCogTGF5ZXIuYnVpbGQoYXBwRGF0YWJhc2UoeyBjb25maWc6IHsgZGF0YWJhc2VVcmw6IHVybCB9LCBtaWdyYXRpb25zOiBtaWdyYXRpb25zKHBvb2wpIH0pKTsKCXlpZWxkKiBMYXllci5idWlsZChub3RlUHJvZHVjZXIoUmVkYWN0ZWQudmFsdWUodXJsKSwgdHJ1ZSkpOwoJeWllbGQqIEVmZmVjdC5sb2dJbmZvKCJNaWdyYXRpb25zIGFwcGxpZWQiKTsKfSk7Cg==","path":"src/server/migrateDatabase.ts"},{"content":"aW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gImJldHRlci1hdXRoL2RiL21pZ3JhdGlvbiI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IE1pZ3JhdG9yLCBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHR5cGUgeyBQb29sIH0gZnJvbSAicGciOwppbXBvcnQgeyBhdXRoT3B0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvYXV0aE9wdGlvbnMudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIG1pZ3JhdGlvbnMoZGF0YWJhc2U6IFBvb2wpIHsKCXJldHVybiB7CgkJbG9hZGVyOiBNaWdyYXRvci5mcm9tUmVjb3JkKHsKCQkJIjAwMV9jcmVhdGVfbm90ZXMiOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJCXlpZWxkKiBzcWxgY3JlYXRlIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgKGlkIHNlcmlhbCBwcmltYXJ5IGtleSwgdGl0bGUgdGV4dCBub3QgbnVsbClgOwoJCQl9KSwKCQkJIjAwMl9jcmVhdGVfYXV0aCI6IEVmZmVjdC50cnlQcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCWNvbnN0IG1pZ3JhdGlvbiA9IGF3YWl0IGdldE1pZ3JhdGlvbnMoYXV0aE9wdGlvbnMoZGF0YWJhc2UpKTsKCQkJCWF3YWl0IG1pZ3JhdGlvbi5ydW5NaWdyYXRpb25zKCk7CgkJCX0pLAoJCQkiMDAzX25vdGVfb3duZXIiOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgc3RhcnRlcl9ub3RlcyBhZGQgY29sdW1uICJvd25lcklkIiB0ZXh0YDsKCQkJfSksCgkJCSIwMDRfbm90ZV93b3JkX2NvdW50IjogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJCQl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgYWRkIGNvbHVtbiAid29yZENvdW50IiBpbnRlZ2VyYDsKCQkJCXlpZWxkKiBzcWxgdXBkYXRlIHN0YXJ0ZXJfbm90ZXMgc2V0ICJ3b3JkQ291bnQiID0gY2FyZGluYWxpdHkocmVnZXhwX3NwbGl0X3RvX2FycmF5KHRyaW0odGl0bGUpLCAnW1s6c3BhY2U6XV0rJykpYDsKCQkJfSksCgkJCSIwMDVfbm90ZV92ZXJzaW9uIjogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJCQl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgYWRkIGNvbHVtbiB2ZXJzaW9uIGludGVnZXIgbm90IG51bGwgZGVmYXVsdCAwYDsKCQkJfSksCgkJfSksCgkJdGFibGU6ICJzdGFydGVyX21pZ3JhdGlvbnMiLAoJfTsKfQo=","path":"src/server/migrations.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJvcGVucywgdXBkYXRlcyBhbmQgZGVsZXRlcyBub3RlcyBvdmVyIEhUVFAsIHJlamVjdGluZyBzdGFsZSB3cml0ZXMgd2l0aG91dCBjaGFuZ2luZyB0aGUgcGVyc2lzdGVkIHJvdyIsIFtzaWduZWRJbigpXSwgZnVuY3Rpb24qICh7IGFjdG9yIH0pIHsKCWNvbnN0IHsgbm90ZXM6IGNsaWVudCB9ID0gYWN0b3IoKTsKCWNvbnN0IG9yaWdpbmFsID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIk9yaWdpbmFsIiB9KTsKCWV4cGVjdChvcmlnaW5hbC52ZXJzaW9uKS50b0JlKDApOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQuZ2V0KHsgaWQ6IG9yaWdpbmFsLmlkIH0pKS50b0VxdWFsKG9yaWdpbmFsKTsKCWNvbnN0IHNhdmVkID0geWllbGQqIGNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICIgIFNhdmVkIG5vdGUgICIgfSk7CglleHBlY3Qoc2F2ZWQpLnRvRXF1YWwoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJTYXZlZCBub3RlIiwgdmVyc2lvbjogMSB9KTsKCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJY29uc3QgYmVmb3JlID0geWllbGQqIHNxbGBzZWxlY3QgKiBmcm9tIHN0YXJ0ZXJfbm90ZXMgd2hlcmUgaWQgPSAke29yaWdpbmFsLmlkfWA7Cglmb3IgKGNvbnN0IGNhbGwgb2YgWwoJCWNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJTdGFsZSBkcmFmdCIgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQuZGVsZXRlKHsgaWQ6IG9yaWdpbmFsLmlkLCB2ZXJzaW9uOiBvcmlnaW5hbC52ZXJzaW9uIH0pLAoJXSkgewoJCWNvbnN0IHJlamVjdGVkID0geWllbGQqIGNhbGwucGlwZShFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZWplY3RlZCkgJiYgcmVqZWN0ZWQuZmFpbHVyZS5fdGFnKS50b0JlKCJDb25mbGljdCIpOwoJCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCAqIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7b3JpZ2luYWwuaWR9YCkudG9FcXVhbChiZWZvcmUpOwoJfQoJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0IGNvdW50KCopOjppbnQgYXMgY291bnQgZnJvbSBwZ2Jvc3Muam9iIHdoZXJlIG5hbWUgPSAnY291bnQtbm90ZS13b3JkcydgKS50b0VxdWFsKFt7IGNvdW50OiAyIH1dKTsKCWNvbnN0IGludmFsaWQgPSB5aWVsZCogY2xpZW50LnVwZGF0ZSh7IC4uLnNhdmVkLCB0aXRsZTogIiAgICIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKGludmFsaWQpICYmIGludmFsaWQuZmFpbHVyZSkudG9NYXRjaE9iamVjdCh7IF90YWc6ICJJbnZhbGlkIiwgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJFbnRlciBhIHRpdGxlIiB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LmdldCh7IGlkOiBzYXZlZC5pZCB9KSkudG9FcXVhbChzYXZlZCk7Cgl5aWVsZCogY2xpZW50LmRlbGV0ZSh7IGlkOiBzYXZlZC5pZCwgdmVyc2lvbjogc2F2ZWQudmVyc2lvbiB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbXSk7Cglmb3IgKGNvbnN0IGNhbGwgb2YgWwoJCWNsaWVudC5nZXQoeyBpZDogc2F2ZWQuaWQgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQudXBkYXRlKHsgLi4uc2F2ZWQsIHRpdGxlOiAiTWlzc2luZyIgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQljbGllbnQuZGVsZXRlKHsgaWQ6IHNhdmVkLmlkLCB2ZXJzaW9uOiBzYXZlZC52ZXJzaW9uIH0pLAoJXSkgewoJCWNvbnN0IG1pc3NpbmcgPSB5aWVsZCogY2FsbC5waXBlKEVmZmVjdC5yZXN1bHQpOwoJCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKG1pc3NpbmcpICYmIG1pc3NpbmcuZmFpbHVyZS5fdGFnKS50b0JlKCJOb3RGb3VuZCIpOwoJfQp9KTsKCmFwcC5pdCgKCSJyZXR1cm5zIE5vdEZvdW5kIHRvIGFub3RoZXIgYWNjb3VudCBmb3IgZ2V0LCB1cGRhdGUgYW5kIGRlbGV0ZSwgYW5kIHJlcXVpcmVzIGEgc2Vzc2lvbiIsCglbc2lnbmVkSW4oKSwgc2lnbmVkSW4oImJvYiIpXSwKCWZ1bmN0aW9uKiAoeyBhY3RvciwgYW5vbnltb3VzIH0pIHsKCQljb25zdCB7IG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBvcmlnaW5hbCA9IHlpZWxkKiBhbGljZS5jcmVhdGUoeyB0aXRsZTogIkFsaWNlJ3Mgbm90ZSIgfSk7CgkJY29uc3QgYm9iID0gYWN0b3IoImJvYiIpLm5vdGVzOwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQlmb3IgKGNvbnN0IFtjbGllbnQsIHRhZ10gb2YgWwoJCQlbYm9iLCAiTm90Rm91bmQiXSwKCQkJW3NpZ25lZE91dCwgIlVuYXV0aG9yaXplZCJdLAoJCV0gYXMgY29uc3QpIHsKCQkJZm9yIChjb25zdCBjYWxsIG9mIFsKCQkJCWNsaWVudC5nZXQoeyBpZDogb3JpZ2luYWwuaWQgfSkucGlwZShFZmZlY3QuYXNWb2lkKSwKCQkJCWNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJBbm90aGVyIGFjY291bnQiIH0pLnBpcGUoRWZmZWN0LmFzVm9pZCksCgkJCQljbGllbnQuZGVsZXRlKHsgaWQ6IG9yaWdpbmFsLmlkLCB2ZXJzaW9uOiBvcmlnaW5hbC52ZXJzaW9uIH0pLAoJCQldKSB7CgkJCQljb25zdCByZWplY3RlZCA9IHlpZWxkKiBjYWxsLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZWplY3RlZCkgJiYgcmVqZWN0ZWQuZmFpbHVyZS5fdGFnKS50b0JlKHRhZyk7CgkJCX0KCQl9CgkJZXhwZWN0KHlpZWxkKiBhbGljZS5nZXQoeyBpZDogb3JpZ2luYWwuaWQgfSkpLnRvRXF1YWwob3JpZ2luYWwpOwoJfSwKKTsK","path":"src/server/noteEditingHost.spec.ts"},{"content":"aW1wb3J0IHsgU2NoZW1hIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZGVmaW5lUXVldWUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1wZy1ib3NzL2RlZmluaXRpb24udHMiOwppbXBvcnQgeyBtYWtlUGdCb3NzIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcGctYm9zcy9zZXJ2aWNlLnRzIjsKCmV4cG9ydCBjb25zdCBDb3VudFdvcmRzID0gZGVmaW5lUXVldWUoewoJbmFtZTogImNvdW50LW5vdGUtd29yZHMiLAoJc2NoZW1hOiBTY2hlbWEuU3RydWN0KHsgbm90ZUlkOiBTY2hlbWEuTnVtYmVyIH0pLAoJd29ya2VyOiB7IHBvbGxpbmdJbnRlcnZhbFNlY29uZHM6IDEgfSwKfSk7CgpleHBvcnQgY29uc3QgTm90ZUpvYnMgPSBtYWtlUGdCb3NzKCJzdGFydGVyL05vdGVKb2JzIik7Cg==","path":"src/server/noteJobs.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0LCB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IGFwcCwgc2lnbmVkSW4gfSBmcm9tICIjdGVzdC1zdXBwb3J0L2FwcGxpY2F0aW9uLnRzIjsKCmFwcC5pdCgKCSJjb3VudHMgdGhlIGVkaXRlZCB0aXRsZSB0aHJvdWdoIHRoZSB2ZXJzaW9uZWQgcmVwb3NpdG9yeSBhbmQgY29tcGxldGVzIGpvYnMgZm9yIGRlbGV0ZWQgbm90ZXMiLAoJW3NpZ25lZEluKCldLAoJZnVuY3Rpb24qICh7IGFjdG9yLCBzdGFydFdvcmtlciB9KSB7CgkJY29uc3QgeyBub3RlczogY2xpZW50IH0gPSBhY3RvcigpOwoJCWNvbnN0IG9yaWdpbmFsID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIk9sZCB0aXRsZSIgfSk7CgkJY29uc3QgZWRpdGVkID0geWllbGQqIGNsaWVudC51cGRhdGUoeyAuLi5vcmlnaW5hbCwgdGl0bGU6ICJUaHJlZSBuZXcgd29yZHMiIH0pOwoJCWV4cGVjdChlZGl0ZWQud29yZENvdW50KS50b0JlTnVsbCgpOwoJCWNvbnN0IGRlbGV0ZWQgPSB5aWVsZCogY2xpZW50LmNyZWF0ZSh7IHRpdGxlOiAiRGVsZXRlZCBiZWZvcmUgY291bnRpbmciIH0pOwoJCXlpZWxkKiBjbGllbnQuZGVsZXRlKHsgaWQ6IGRlbGV0ZWQuaWQsIHZlcnNpb246IGRlbGV0ZWQudmVyc2lvbiB9KTsKCQl5aWVsZCogc3RhcnRXb3JrZXIoKTsKCQljb25zdCBjb3VudGVkID0geyAuLi5lZGl0ZWQsIHZlcnNpb246IDIsIHdvcmRDb3VudDogMyB9OwoJCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQl2aS53YWl0Rm9yKAoJCQkJYXN5bmMgKCkgPT4gewoJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShjbGllbnQuZ2V0KHsgaWQ6IGVkaXRlZC5pZCB9KSkpLnRvRXF1YWwoY291bnRlZCk7CgkJCQl9LAoJCQkJeyB0aW1lb3V0OiA1MDAwIH0sCgkJCSksCgkJKTsKCQljb25zdCBzdGFsZSA9IHlpZWxkKiBjbGllbnQudXBkYXRlKHsgLi4uZWRpdGVkLCB0aXRsZTogIkJlZm9yZSBjb3VudGluZyIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShzdGFsZSkgJiYgc3RhbGUuZmFpbHVyZS5fdGFnKS50b0JlKCJDb25mbGljdCIpOwoJCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbY291bnRlZF0pOwoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQl2aS53YWl0Rm9yKAoJCQkJYXN5bmMgKCkgPT4gewoJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShzcWxgc2VsZWN0IHN0YXRlIGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkpLnRvRXF1YWwoWwoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCQl7IHN0YXRlOiAiY29tcGxldGVkIiB9LAoJCQkJCV0pOwoJCQkJfSwKCQkJCXsgdGltZW91dDogNTAwMCB9LAoJCQkpLAoJCSk7Cgl9LAoJMTVfMDAwLAopOwo=","path":"src/server/noteJobsEditing.spec.ts"},{"content":"aW1wb3J0IHsgQ291bnRXb3JkcywgTm90ZUpvYnMgfSBmcm9tICIjc2VydmVyL25vdGVKb2JzLnRzIjsKCmV4cG9ydCBmdW5jdGlvbiBub3RlUHJvZHVjZXIoY29ubmVjdGlvblN0cmluZzogc3RyaW5nLCBtaWdyYXRlID0gZmFsc2UpIHsKCXJldHVybiBOb3RlSm9icy5sYXllcih7IGNvbm5lY3Rpb25TdHJpbmcsIGpvYnM6IFtDb3VudFdvcmRzXSwgbWlncmF0ZSB9KTsKfQo=","path":"src/server/noteProducer.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGludmFsaWRhdGlvbktleXMgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9rZXlzLnRzIjsKaW1wb3J0IHsgaW52YWxpZGF0ZU9uQ29tbWl0LCB0cmFuc2FjdCB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LXNxbC90cmFuc2FjdC50cyI7CmltcG9ydCB7IGFwcERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9hcHBIb3N0LnRzIjsKaW1wb3J0IHsgb3RscFRyYWNpbmcgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL290bHBUcmFjaW5nLnRzIjsKaW1wb3J0IHsgbm90ZXMgfSBmcm9tICIjbm90ZXMudHMiOwppbXBvcnQgeyBhdXRoRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL2F1dGhEYXRhYmFzZS50cyI7CmltcG9ydCB7IGRhdGFiYXNlT3B0aW9ucyB9IGZyb20gIiNzZXJ2ZXIvZGF0YWJhc2VPcHRpb25zLnRzIjsKaW1wb3J0IHsgbWFrZU5vdGVzUmVwb3NpdG9yeSB9IGZyb20gIiNzZXJ2ZXIvbWFrZU5vdGVzUmVwb3NpdG9yeS50cyI7CmltcG9ydCB7IENvdW50V29yZHMsIE5vdGVKb2JzIH0gZnJvbSAiI3NlcnZlci9ub3RlSm9icy50cyI7Cgpjb25zdCBjb3VudFdvcmRzID0gQ291bnRXb3Jkcy5oYW5kbGUoKHsgbm90ZUlkIH0pID0+CglFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJY29uc3QgcmVwb3NpdG9yeSA9IHlpZWxkKiBtYWtlTm90ZXNSZXBvc2l0b3J5OwoJCWNvbnN0IHJvd3MgPSB5aWVsZCogcmVwb3NpdG9yeS5maW5kTWFueSh7IHdoZXJlOiB7IGlkOiBub3RlSWQsIHdvcmRDb3VudDogbnVsbCB9IH0pOwoJCWZvciAoY29uc3Qgcm93IG9mIHJvd3MpIHsKCQkJeWllbGQqIHJlcG9zaXRvcnkudXBkYXRlKHsgLi4ucm93LCB3b3JkQ291bnQ6IHJvdy50aXRsZS5zcGxpdCgvXHMrL3UpLmxlbmd0aCB9KTsKCQl9CgkJeWllbGQqIGludmFsaWRhdGVPbkNvbW1pdChpbnZhbGlkYXRpb25LZXlzKFtub3Rlcy5pdGVtKG5vdGVJZCldKSk7Cgl9KS5waXBlKHRyYW5zYWN0KHsgb25TcWxFcnJvcjogKGVycm9yKSA9PiBlcnJvciB9KSwgRWZmZWN0LndpdGhTcGFuKCJDb3VudFdvcmRzIiwgeyBraW5kOiAiY29uc3VtZXIiIH0pKSwKKTsKCmV4cG9ydCBmdW5jdGlvbiBub3RlV29ya2VyKGNvbmZpZz86IHsgcmVhZG9ubHkgZGF0YWJhc2VVcmw/OiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+IH0pIHsKCXJldHVybiBMYXllci51bndyYXAoCgkJRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQljb25zdCBkYXRhYmFzZVVybCA9IGNvbmZpZz8uZGF0YWJhc2VVcmwgPz8gKHlpZWxkKiBDb25maWcuUmVkYWN0ZWQoIkRBVEFCQVNFX1VSTCIpKTsKCQkJY29uc3QgcG9vbCA9IHlpZWxkKiBhdXRoRGF0YWJhc2UoZGF0YWJhc2VVcmwpOwoJCQlyZXR1cm4gTm90ZUpvYnMubGF5ZXIoeyBjb25uZWN0aW9uU3RyaW5nOiBSZWRhY3RlZC52YWx1ZShkYXRhYmFzZVVybCksIGpvYnM6IFtjb3VudFdvcmRzXSwgbWlncmF0ZTogZmFsc2UgfSkucGlwZSgKCQkJCUxheWVyLnRhcCgoKSA9PiBFZmZlY3QubG9nSW5mbygiV29ya2VyIHJlYWR5IHRvIHRha2Ugam9icyIpKSwKCQkJCUxheWVyLnByb3ZpZGVNZXJnZShhcHBEYXRhYmFzZShkYXRhYmFzZU9wdGlvbnMocG9vbCwgZGF0YWJhc2VVcmwpKS5waXBlKExheWVyLnRhcCgoKSA9PiBFZmZlY3QubG9nSW5mbygiV29ya2VyIG1pZ3JhdGlvbnMgYXBwbGllZCIpKSkpLAoJCQkpOwoJCX0pLAoJKS5waXBlKExheWVyLnByb3ZpZGUob3RscFRyYWNpbmcpKTsKfQo=","path":"src/server/noteWorker.ts"},{"content":"aW1wb3J0IHsgYXNzZXJ0TW9kZWxDb2x1bW5zIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvYXNzZXJ0TW9kZWxDb2x1bW5zLnRzIjsKaW1wb3J0IHsgYmVmb3JlVmVyc2lvbmVkTm90ZXMsIG1pZ3JhdGlvbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbWlncmF0aW9uLnRzIjsKaW1wb3J0IHsgU3RvcmVkTm90ZSB9IGZyb20gIi4vbWFrZU5vdGVzUmVwb3NpdG9yeS50cyI7CgptaWdyYXRpb24uaXQoCgkidXBncmFkZXMgdGhlIHByZS12ZXJzaW9uIG5vdGVzIHRhYmxlIHRvIGV2ZXJ5IGN1cnJlbnQgbW9kZWwgY29sdW1uIGFuZCBQb3N0Z3JlU1FMIHR5cGUiLAoJW2JlZm9yZVZlcnNpb25lZE5vdGVzKCldLAoJZnVuY3Rpb24qICh7IHVwZ3JhZGUgfSkgewoJCWNvbnN0IGNvbHVtbnMgPSB5aWVsZCogdXBncmFkZSgpOwoJCXlpZWxkKiBhc3NlcnRNb2RlbENvbHVtbnMoY29sdW1ucywgU3RvcmVkTm90ZSwgeyBpZDogImludGVnZXIiLCBvd25lcklkOiAidGV4dCIsIHRpdGxlOiAidGV4dCIsIHZlcnNpb246ICJpbnRlZ2VyIiwgd29yZENvdW50OiAiaW50ZWdlciIgfSk7Cgl9LAopOwo=","path":"src/server/notesMigration.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCByZWplY3RlZE5vdGVDb21taXRzLCByZWplY3RlZE5vdGVKb2JzLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzYXZlcyBhbmQgZWRpdHMgbm90ZXMgd2hlbiBQb3N0Z3JlU1FMIHJlamVjdHMgZW5xdWV1ZWluZyIsIFtzaWduZWRJbigpLCByZWplY3RlZE5vdGVKb2JzKCldLCBmdW5jdGlvbiogKHsgYWN0b3IgfSkgewoJY29uc3QgeyBub3RlcyB9ID0gYWN0b3IoKTsKCWNvbnN0IGNyZWF0ZWQgPSB5aWVsZCogbm90ZXMuY3JlYXRlKHsgdGl0bGU6ICJTdGlsbCBzYXZlZCIgfSk7Cgljb25zdCBlZGl0ZWQgPSB5aWVsZCogbm90ZXMudXBkYXRlKHsgLi4uY3JlYXRlZCwgdGl0bGU6ICJTdGlsbCBlZGl0ZWQiIH0pOwoJZXhwZWN0KHlpZWxkKiBub3Rlcy5nZXQoeyBpZDogY3JlYXRlZC5pZCB9KSkudG9FcXVhbChlZGl0ZWQpOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgdGl0bGUsIHZlcnNpb24sICJ3b3JkQ291bnQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7Y3JlYXRlZC5pZH1gKS50b0VxdWFsKFsKCQl7IHRpdGxlOiAiU3RpbGwgZWRpdGVkIiwgdmVyc2lvbjogMSwgd29yZENvdW50OiBudWxsIH0sCgldKTsKCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCBjb3VudCgqKTo6aW50IGFzIGNvdW50IGZyb20gcGdib3NzLmpvYmApLnRvRXF1YWwoW3sgY291bnQ6IDAgfV0pOwp9KTsKCmFwcC5pdCgiZG9lcyBub3QgZW5xdWV1ZSBhIG5vdGUgd2hlbiBpdHMgd3JpdGUgdHJhbnNhY3Rpb24gZmFpbHMgYXQgY29tbWl0IiwgW3NpZ25lZEluKCksIHJlamVjdGVkTm90ZUNvbW1pdHMoKV0sIGZ1bmN0aW9uKiAoeyBhY3RvciB9KSB7Cgljb25zdCByZXN1bHQgPSB5aWVsZCogYWN0b3IoKS5ub3Rlcy5jcmVhdGUoeyB0aXRsZTogIk5vdCBjb21taXR0ZWQiIH0pLnBpcGUoRWZmZWN0LnJlc3VsdCk7CglleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZXN1bHQpICYmIHJlc3VsdC5mYWlsdXJlLl90YWcpLnRvQmUoIlNlcnZpY2VVbmF2YWlsYWJsZSIpOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFt7IGNvdW50OiAwIH1dKTsKCWV4cGVjdCh5aWVsZCogc3FsYHNlbGVjdCBjb3VudCgqKTo6aW50IGFzIGNvdW50IGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkudG9FcXVhbChbeyBjb3VudDogMCB9XSk7Cn0pOwo=","path":"src/server/queueFailure.spec.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IHN0YXJ0ZXJIb3N0IH0gZnJvbSAiLi9zdGFydGVySG9zdC50cyI7CgpOb2RlUnVudGltZS5ydW5NYWluKExheWVyLmxhdW5jaChzdGFydGVySG9zdCgpKSk7Cg==","path":"src/server/server.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgVW5hdXRob3JpemVkIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9lcnJvcnMvdGF4b25vbXkudHMiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CgphcHAuaXQoCgkicmVhZHMgZWFjaCBzaWduZWQtaW4gdXNlcidzIHByb2ZpbGUgdGhyb3VnaCBTZXNzaW9uVXNlciBvdmVyIFBvc3RncmVTUUwgYW5kIEhUVFAiLAoJW3NpZ25lZEluKCksIHNpZ25lZEluKCJib2IiKV0sCglmdW5jdGlvbiogKHsgYWN0b3IsIGFub255bW91cywgYXV0aGVudGljYXRlIH0pIHsKCQljb25zdCB7IGNvb2tpZTogYWxpY2VDb29raWUsIG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBib2IgPSBhY3RvcigiYm9iIikubm90ZXM7CgkJY29uc3QgcHJvZmlsZXMgPSB5aWVsZCogRWZmZWN0LmFsbCgKCQkJQXJyYXkuZnJvbSh7IGxlbmd0aDogMTIgfSwgKF8sIGluZGV4KSA9PiAoaW5kZXggJSAyID09PSAwID8gYWxpY2UgOiBib2IpLndob2FtaSgpKSwKCQkJewoJCQkJY29uY3VycmVuY3k6ICJ1bmJvdW5kZWQiLAoJCQl9LAoJCSk7CgkJY29uc3QgYWxpY2VQcm9maWxlID0gcHJvZmlsZXNbMF07CgkJY29uc3QgYm9iUHJvZmlsZSA9IHByb2ZpbGVzWzFdOwoJCWV4cGVjdChhbGljZVByb2ZpbGUpLnRvRXF1YWwoeyBlbWFpbDogImFsaWNlQHN0YXJ0ZXIudGVzdCIsIGlkOiBleHBlY3QuYW55KFN0cmluZyksIG5hbWU6ICJhbGljZSIgfSk7CgkJZXhwZWN0KGJvYlByb2ZpbGUpLnRvRXF1YWwoeyBlbWFpbDogImJvYkBzdGFydGVyLnRlc3QiLCBpZDogZXhwZWN0LmFueShTdHJpbmcpLCBuYW1lOiAiYm9iIiB9KTsKCQlleHBlY3QoYWxpY2VQcm9maWxlPy5pZCkubm90LnRvQmUoYm9iUHJvZmlsZT8uaWQpOwoJCXByb2ZpbGVzLmZvckVhY2goKHByb2ZpbGUsIGluZGV4KSA9PiB7CgkJCWV4cGVjdChwcm9maWxlKS50b0VxdWFsKGluZGV4ICUgMiA9PT0gMCA/IGFsaWNlUHJvZmlsZSA6IGJvYlByb2ZpbGUpOwoJCX0pOwoJCWNvbnN0IG5vdGUgPSB5aWVsZCogYWxpY2UuY3JlYXRlKHsgdGl0bGU6ICJPd25lZCBieSB0aGUgY3VycmVudCB1c2VyIiB9KTsKCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgIm93bmVySWQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSBpZCA9ICR7bm90ZS5pZH1gKS50b0VxdWFsKFt7IG93bmVySWQ6IGFsaWNlUHJvZmlsZT8uaWQgfV0pOwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQljb25zdCBkZW5pZWQgPSB5aWVsZCogc2lnbmVkT3V0Lndob2FtaSgpLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUoZGVuaWVkKSAmJiBkZW5pZWQuZmFpbHVyZSkudG9CZUluc3RhbmNlT2YoVW5hdXRob3JpemVkKTsKCQl5aWVsZCogYXV0aGVudGljYXRlKCJhbGljZSIsICJzaWduLW91dCIsIGFsaWNlQ29va2llKTsKCQljb25zdCByZXZva2VkID0geWllbGQqIGFsaWNlLndob2FtaSgpLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUocmV2b2tlZCkgJiYgcmV2b2tlZC5mYWlsdXJlKS50b0JlSW5zdGFuY2VPZihVbmF1dGhvcml6ZWQpOwoJfSwKKTsK","path":"src/server/sessionUser.spec.ts"},{"content":"aW1wb3J0IHsgcmVhZEZpbGVTeW5jIH0gZnJvbSAibm9kZTpmcyI7CmltcG9ydCB7IENvbmZpZywgRWZmZWN0LCBTY2hlbWEgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBhc3NlcnRMb2NhbERhdGFiYXNlLCBsb2NhbFBvc3RncmVzLCBsb2NhbFNlcnZlciB9IGZyb20gIkBzaGl2YWVkZXYvbG9jYWwtcG9zdGdyZXMvbG9jYWxQb3N0Z3Jlcy50cyI7Cgpjb25zdCB7IG5hbWUgfSA9IFNjaGVtYS5kZWNvZGVVbmtub3duU3luYyhTY2hlbWEuZnJvbUpzb25TdHJpbmcoU2NoZW1hLlN0cnVjdCh7IG5hbWU6IFNjaGVtYS5TdHJpbmcgfSkpKSgKCXJlYWRGaWxlU3luYyhuZXcgVVJMKCIuLi8uLi9wYWNrYWdlLmpzb24iLCBpbXBvcnQubWV0YS51cmwpLCAidXRmOCIpLAopOwpjb25zdCBkYXRhYmFzZSA9IChuYW1lLnNwbGl0KCIvIikuYXQoLTEpID8/IG5hbWUpCgkucmVwbGFjZUFsbCgvWy4tXS9ndSwgIl8iKQoJLnJlcGxhY2UoL15bXmEtel0vdSwgImFwcF8kJiIpCgkuc2xpY2UoMCwgNTgpOwpjb25zdCBkZXZlbG9wbWVudCA9IEVmZmVjdC5ydW5TeW5jKENvbmZpZy5TdHJpbmcoIkRBVEFCQVNFX1VSTCIpLnBpcGUoQ29uZmlnLndpdGhEZWZhdWx0KGAke2xvY2FsU2VydmVyfS8ke2RhdGFiYXNlfV9kZXZgKSkpOwpjb25zdCB0ZXN0cyA9IEVmZmVjdC5ydW5TeW5jKENvbmZpZy5TdHJpbmcoIlRFU1RfREFUQUJBU0VfVVJMIikucGlwZShDb25maWcud2l0aERlZmF1bHQoYCR7bG9jYWxTZXJ2ZXJ9LyR7ZGF0YWJhc2V9X3Rlc3RgKSkpOwphc3NlcnRMb2NhbERhdGFiYXNlKGRldmVsb3BtZW50LCBbYCR7ZGF0YWJhc2V9X2RldmBdKTsKYXNzZXJ0TG9jYWxEYXRhYmFzZSh0ZXN0cywgW2Ake2RhdGFiYXNlfV90ZXN0YF0pOwpsb2NhbFBvc3RncmVzKAoJRWZmZWN0LnJ1blN5bmMoCgkJQ29uZmlnLmFsbCh7CgkJCSJET0NLRVJfQ09OVEVYVCI6IENvbmZpZy5TdHJpbmcoIkRPQ0tFUl9DT05URVhUIikucGlwZShDb25maWcud2l0aERlZmF1bHQoIiIpKSwKCQkJIkRPQ0tFUl9IT1NUIjogQ29uZmlnLlN0cmluZygiRE9DS0VSX0hPU1QiKS5waXBlKENvbmZpZy53aXRoRGVmYXVsdCgiIikpLAoJCX0pLAoJKSwKKS5wcmVwYXJlRGF0YWJhc2VzKFtkZXZlbG9wbWVudCwgdGVzdHNdKTsK","path":"src/server/setup-database.ts"},{"content":"aW1wb3J0IHsgc29jaWFsQXBwIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9zb2NpYWxBcHAudHMiOwoKT2JqZWN0LmFzc2lnbihnbG9iYWxUaGlzLCB7ICJJU19SRUFDVF9BQ1RfRU5WSVJPTk1FTlQiOiB0cnVlIH0pOwoKc29jaWFsQXBwLml0KAoJImEgc29jaWFsIHNpZ24taW4gcmV0dXJucyBmcm9tIHRoZSBmYWtlIHByb3ZpZGVyIHdpdGggYSBQb3N0Z3JlU1FMIGNvb2tpZSBzZXNzaW9uIiwKCVtdLAoJZnVuY3Rpb24qICh7IHNpZ25JbldpdGhHaXRIdWIsIHNpZ25lZEluUGFnZUlzIH0pIHsKCQl5aWVsZCogc2lnbkluV2l0aEdpdEh1YigpOwoJCXlpZWxkKiBzaWduZWRJblBhZ2VJcygiYWxpY2VAc29jaWFsLnRlc3QiKTsKCX0sCik7Cg==","path":"src/server/socialSessions.dom.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBiZWhpbmRQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJzZXJ2ZXMgdGhlIGRlcGxveW1lbnQgaGVhbHRoIGNoZWNrIGFmdGVyIGRhdGFiYXNlIG1pZ3JhdGlvbnMiLCBbXSwgZnVuY3Rpb24qICh7IHJ1bm5pbmdIb3N0IH0pIHsKCWNvbnN0IHJlc3BvbnNlID0geWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGZldGNoKGAke3J1bm5pbmdIb3N0KCkuYmFzZVVybH0vaGVhbHRoYCkpOwoJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJZXhwZWN0KHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PiByZXNwb25zZS50ZXh0KCkpKS50b0JlKCIiKTsKfSk7CgphcHAuaXQoCgkiYXV0aGVudGljYXRlcyBhbmQgc2VydmVzIHByb3RlY3RlZCBSUEMgYmVoaW5kIGFuIEhUVFBTIGZvcndhcmRpbmcgcHJveHkgdXNpbmcgZW52aXJvbm1lbnQgc2V0dGluZ3MiLAoJW2JlaGluZFByb3h5KCldLAoJZnVuY3Rpb24qICh7IGF1dGhlbnRpY2F0ZSwgbm90ZXMsIGZvcmVpZ25SZXF1ZXN0IH0pIHsKCQlmb3IgKGNvbnN0IHBhdGggb2YgWyJzaWduLXVwL2VtYWlsIiwgInNpZ24taW4vZW1haWwiXSkgewoJCQljb25zdCBjb29raWUgPSB5aWVsZCogYXV0aGVudGljYXRlKCJkZXBsb3llZCIsIHBhdGgpOwoJCQljb25zdCBjbGllbnQgPSB5aWVsZCogbm90ZXMoY29va2llKTsKCQkJZXhwZWN0KHlpZWxkKiBjbGllbnQubGlzdCgpKS50b0VxdWFsKFtdKTsKCQkJeWllbGQqIGZvcmVpZ25SZXF1ZXN0KGNvb2tpZSk7CgkJfQoJfSwKKTsK","path":"src/server/starterDeploy.spec.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBSZXN1bHQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXBwLCBsZWdhY3lOb3RlLCBzaWduZWRJbiB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvYXBwbGljYXRpb24udHMiOwoKYXBwLml0KCJjcmVhdGVzIGFuZCBxdWVyaWVzIGEgcGVyc2lzdGVkIG5vdGUgb3ZlciBhdXRoZW50aWNhdGVkIEhUVFAvTkRKU09OIiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IgfSkgewoJY29uc3QgeyBub3RlczogY2xpZW50IH0gPSBhY3RvcigpOwoJZXhwZWN0KHlpZWxkKiBjbGllbnQubGlzdCgpKS50b0VxdWFsKFtdKTsKCWNvbnN0IGNyZWF0ZWQgPSB5aWVsZCogY2xpZW50LmNyZWF0ZSh7IHRpdGxlOiAiICBGaXJzdCBub3RlICAiIH0pOwoJZXhwZWN0KGNyZWF0ZWQudGl0bGUpLnRvQmUoIkZpcnN0IG5vdGUiKTsKCWV4cGVjdCh5aWVsZCogY2xpZW50Lmxpc3QoKSkudG9FcXVhbChbY3JlYXRlZF0pOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CglleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgaWQsIHRpdGxlLCAid29yZENvdW50IiwgdmVyc2lvbiBmcm9tIHN0YXJ0ZXJfbm90ZXNgKS50b0VxdWFsKFtjcmVhdGVkXSk7Cgljb25zdCBpbnZhbGlkID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIiAgICIgfSkucGlwZShFZmZlY3QucmVzdWx0KTsKCWV4cGVjdChSZXN1bHQuaXNGYWlsdXJlKGludmFsaWQpICYmIGludmFsaWQuZmFpbHVyZS5fdGFnKS50b0JlKCJJbnZhbGlkIik7CglleHBlY3QoeWllbGQqIGNsaWVudC5saXN0KCkpLnRvRXF1YWwoW2NyZWF0ZWRdKTsKfSk7CgphcHAuaXQoCgkicmVydW5zIHRoZSBzdGFydGVyIG1pZ3JhdGlvbiBwYXRoIHdpdGhvdXQgbG9zaW5nIGF1dGggYWNjb3VudHMgb3Igbm90ZXMiLAoJW3NpZ25lZEluKCldLAoJZnVuY3Rpb24qICh7IGFjdG9yLCByZXJ1bk1pZ3JhdGlvbnMsIGF1dGhlbnRpY2F0ZSwgbm90ZXMgfSkgewoJCWNvbnN0IHsgbm90ZXM6IGNsaWVudCB9ID0gYWN0b3IoKTsKCQljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIktlZXAgdGhpcyBub3RlIiB9KTsKCQl5aWVsZCogcmVydW5NaWdyYXRpb25zKCk7CgkJY29uc3QgcmV0dXJuaW5nID0geWllbGQqIGF1dGhlbnRpY2F0ZSgiYWxpY2UiLCAic2lnbi1pbi9lbWFpbCIpOwoJCWNvbnN0IHJlb3BlbmVkID0geWllbGQqIG5vdGVzKHJldHVybmluZyk7CgkJZXhwZWN0KHlpZWxkKiByZW9wZW5lZC5saXN0KCkpLnRvRXF1YWwoW25vdGVdKTsKCX0sCik7CgphcHAuaXQoImFkZHMgd29yZCBjb3VudHMgdG8gbm90ZXMgc2F2ZWQgYmVmb3JlIHRoZSBqb2IgbWlncmF0aW9uIiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IsIHJlcnVuTWlncmF0aW9ucyB9KSB7Cgljb25zdCB7IG5vdGVzOiBjbGllbnQgfSA9IGFjdG9yKCk7Cgljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIktlZXAgdGhpcyBvbGQgbm90ZSIgfSk7Cgljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgc3RhcnRlcl9ub3RlcyBkcm9wIGNvbHVtbiAid29yZENvdW50ImA7Cgl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgZHJvcCBjb2x1bW4gdmVyc2lvbmA7Cgl5aWVsZCogc3FsYGRlbGV0ZSBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyB3aGVyZSBtaWdyYXRpb25faWQgPj0gNGA7Cgl5aWVsZCogcmVydW5NaWdyYXRpb25zKCk7CglleHBlY3QoeWllbGQqIGNsaWVudC5saXN0KCkpLnRvRXF1YWwoW3sgLi4ubm90ZSwgd29yZENvdW50OiA0IH1dKTsKfSk7CgphcHAuaXQoInVwZ3JhZGVzIGV4aXN0aW5nIG5vdGVzIHdpdGggdmVyc2lvbiB6ZXJvIGFuZCBhY2NlcHRzIHRoZWlyIGZpcnN0IHZlcnNpb25lZCBlZGl0IiwgW3NpZ25lZEluKCldLCBmdW5jdGlvbiogKHsgYWN0b3IsIHJlcnVuTWlncmF0aW9ucyB9KSB7Cgljb25zdCB7IG5vdGVzOiBjbGllbnQgfSA9IGFjdG9yKCk7Cgljb25zdCBub3RlID0geWllbGQqIGNsaWVudC5jcmVhdGUoeyB0aXRsZTogIkV4aXN0aW5nIG5vdGUiIH0pOwoJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7Cgl5aWVsZCogc3FsYGFsdGVyIHRhYmxlIHN0YXJ0ZXJfbm90ZXMgZHJvcCBjb2x1bW4gdmVyc2lvbmA7Cgl5aWVsZCogc3FsYGRlbGV0ZSBmcm9tIHN0YXJ0ZXJfbWlncmF0aW9ucyB3aGVyZSBtaWdyYXRpb25faWQgPSA1YDsKCXlpZWxkKiByZXJ1bk1pZ3JhdGlvbnMoKTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LmdldCh7IGlkOiBub3RlLmlkIH0pKS50b0VxdWFsKHsgLi4ubm90ZSwgdmVyc2lvbjogMCB9KTsKCWV4cGVjdCh5aWVsZCogY2xpZW50LnVwZGF0ZSh7IC4uLm5vdGUsIHRpdGxlOiAiRWRpdGVkIG9sZCBub3RlIiB9KSkudG9FcXVhbCh7IC4uLm5vdGUsIHRpdGxlOiAiRWRpdGVkIG9sZCBub3RlIiwgdmVyc2lvbjogMSB9KTsKfSk7CgphcHAuaXQoCgkicHJvdGVjdHMgcXVlcmllcyBhbmQgY29tbWFuZHMsIGlzb2xhdGVzIHVzZXJzLCBhbmQgcmV2b2tlcyB0aGUgc2lnbmVkLW91dCBzZXNzaW9uIGJlZm9yZSBzaWduaW5nIGluIGFnYWluIiwKCVtzaWduZWRJbigpLCBzaWduZWRJbigiYm9iIiksIGxlZ2FjeU5vdGUoIkxlZ2FjeSBub3RlIildLAoJZnVuY3Rpb24qICh7IGFjdG9yLCBhdXRoZW50aWNhdGUsIG5vdGVzLCBhbm9ueW1vdXMgfSkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCWNvbnN0IHNpZ25lZE91dCA9IHlpZWxkKiBhbm9ueW1vdXMoKTsKCQlmb3IgKGNvbnN0IGNhbGwgb2YgW3NpZ25lZE91dC5saXN0KCkucGlwZShFZmZlY3QuYXNWb2lkKSwgc2lnbmVkT3V0LmNyZWF0ZSh7IHRpdGxlOiAiQW5vbnltb3VzIG5vdGUiIH0pLnBpcGUoRWZmZWN0LmFzVm9pZCldKSB7CgkJCWNvbnN0IHJlc3VsdCA9IHlpZWxkKiBFZmZlY3QucmVzdWx0KGNhbGwpOwoJCQlleHBlY3QoUmVzdWx0LmlzRmFpbHVyZShyZXN1bHQpICYmIHJlc3VsdC5mYWlsdXJlLl90YWcpLnRvQmUoIlVuYXV0aG9yaXplZCIpOwoJCX0KCQljb25zdCB7IGNvb2tpZTogYWxpY2VDb29raWUsIG5vdGVzOiBhbGljZSB9ID0gYWN0b3IoKTsKCQljb25zdCBub3RlID0geWllbGQqIGFsaWNlLmNyZWF0ZSh7IHRpdGxlOiAiQWxpY2UncyBub3RlIiB9KTsKCQljb25zdCBib2IgPSBhY3RvcigiYm9iIikubm90ZXM7CgkJZXhwZWN0KHlpZWxkKiBib2IubGlzdCgpKS50b0VxdWFsKFtdKTsKCQlleHBlY3QoeWllbGQqIGFsaWNlLmxpc3QoKSkudG9FcXVhbChbbm90ZV0pOwoJCWNvbnN0IHVzZXIgPSB5aWVsZCogYWxpY2Uud2hvYW1pKCk7CgkJZXhwZWN0KHlpZWxkKiBzcWxgc2VsZWN0ICJvd25lcklkIiBmcm9tIHN0YXJ0ZXJfbm90ZXMgd2hlcmUgdGl0bGUgPSAke25vdGUudGl0bGV9YCkudG9FcXVhbChbeyBvd25lcklkOiB1c2VyLmlkIH1dKTsKCQlleHBlY3QoeWllbGQqIHNxbGBzZWxlY3QgIm93bmVySWQiIGZyb20gc3RhcnRlcl9ub3RlcyB3aGVyZSB0aXRsZSA9ICdMZWdhY3kgbm90ZSdgKS50b0VxdWFsKFt7IG93bmVySWQ6IG51bGwgfV0pOwoJCXlpZWxkKiBhdXRoZW50aWNhdGUoImFsaWNlIiwgInNpZ24tb3V0IiwgYWxpY2VDb29raWUpOwoJCWNvbnN0IHJldm9rZWQgPSB5aWVsZCogYWxpY2UuY3JlYXRlKHsgdGl0bGU6ICJSZXZva2VkIG5vdGUiIH0pLnBpcGUoRWZmZWN0LnJlc3VsdCk7CgkJZXhwZWN0KFJlc3VsdC5pc0ZhaWx1cmUocmV2b2tlZCkgJiYgcmV2b2tlZC5mYWlsdXJlLl90YWcpLnRvQmUoIlVuYXV0aG9yaXplZCIpOwoJCWNvbnN0IHJldHVybmluZ0Nvb2tpZSA9IHlpZWxkKiBhdXRoZW50aWNhdGUoImFsaWNlIiwgInNpZ24taW4vZW1haWwiKTsKCQljb25zdCByZXR1cm5pbmcgPSB5aWVsZCogbm90ZXMocmV0dXJuaW5nQ29va2llKTsKCQlleHBlY3QoeWllbGQqIHJldHVybmluZy5saXN0KCkpLnRvRXF1YWwoW25vdGVdKTsKCX0sCik7Cg==","path":"src/server/starterHost.test.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyLCBSZWRhY3RlZCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IEh0dHBTdGF0aWNTZXJ2ZXIgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCB7IEFwcENoYW5nZXMsIGFwcEhvc3QgfSBmcm9tICJAc2hpdmFlZGV2L3BsYXRmb3JtL2FwcEhvc3QudHMiOwppbXBvcnQgeyBTZXNzaW9uVXNlciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjL2lkZW50aXR5LnRzIjsKaW1wb3J0IHsgYXV0aGVudGljYXRlZFVzZXJMYXllciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjLXNlcnZlci9zZXNzaW9uLnRzIjsKaW1wb3J0IHsgTm90ZXMsIFN1YnNjcmliZSB9IGZyb20gIiNub3Rlcy50cyI7CmltcG9ydCB7IGF1dGhEYXRhYmFzZSB9IGZyb20gIiNzZXJ2ZXIvYXV0aERhdGFiYXNlLnRzIjsKaW1wb3J0IHsgZGF0YWJhc2VPcHRpb25zIH0gZnJvbSAiI3NlcnZlci9kYXRhYmFzZU9wdGlvbnMudHMiOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIiNzZXJ2ZXIvbWFrZUF1dGgudHMiOwppbXBvcnQgeyBOb3Rlc1NlcnZpY2UgfSBmcm9tICIjc2VydmVyL05vdGVzU2VydmljZS50cyI7CmltcG9ydCB7IG5vdGVQcm9kdWNlciB9IGZyb20gIiNzZXJ2ZXIvbm90ZVByb2R1Y2VyLnRzIjsKCmNvbnN0IGhhbmRsZXJzID0gTm90ZXMudG9MYXllcigKCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQljb25zdCBzZXJ2aWNlID0geWllbGQqIE5vdGVzU2VydmljZTsKCQljb25zdCBjaGFuZ2VzID0geWllbGQqIEFwcENoYW5nZXM7CgkJcmV0dXJuIE5vdGVzLm9mKHsKCQkJIm5vdGVzLmNyZWF0ZSI6IChpbnB1dCkgPT4gRWZmZWN0LmZsYXRNYXAoU2Vzc2lvblVzZXIsICh7IGlkIH0pID0+IHNlcnZpY2UuY3JlYXRlKGlucHV0LCBpZCkpLAoJCQkibm90ZXMuZGVsZXRlIjogKGlucHV0KSA9PiBFZmZlY3QuZmxhdE1hcChTZXNzaW9uVXNlciwgKHsgaWQgfSkgPT4gc2VydmljZS5kZWxldGUoaW5wdXQsIGlkKSksCgkJCSJub3Rlcy5nZXQiOiAoaW5wdXQpID0+IEVmZmVjdC5mbGF0TWFwKFNlc3Npb25Vc2VyLCAoeyBpZCB9KSA9PiBzZXJ2aWNlLmdldChpbnB1dC5pZCwgaWQpKSwKCQkJIm5vdGVzLmxpc3QiOiAoKSA9PiBFZmZlY3QuZmxhdE1hcChTZXNzaW9uVXNlciwgKHsgaWQgfSkgPT4gc2VydmljZS5saXN0KGlkKSksCgkJCSJub3Rlcy5zdWJzY3JpYmUiOiAoKSA9PiBjaGFuZ2VzLnN0cmVhbShTdWJzY3JpYmUucmVhZHModW5kZWZpbmVkKSksCgkJCSJub3Rlcy51cGRhdGUiOiAoaW5wdXQpID0+IEVmZmVjdC5mbGF0TWFwKFNlc3Npb25Vc2VyLCAoeyBpZCB9KSA9PiBzZXJ2aWNlLnVwZGF0ZShpbnB1dCwgaWQpKSwKCQkJIm5vdGVzLndob2FtaSI6ICgpID0+IEVmZmVjdC5tYXAoU2Vzc2lvblVzZXIsICh1c2VyKSA9PiB1c2VyKSwKCQl9KTsKCX0pLAopOwoKZXhwb3J0IGZ1bmN0aW9uIHN0YXJ0ZXJIb3N0KGNvbmZpZz86IHsKCXJlYWRvbmx5IGRhdGFiYXNlVXJsPzogUmVkYWN0ZWQuUmVkYWN0ZWQ8c3RyaW5nPjsKCXJlYWRvbmx5IHBvcnQ/OiBudW1iZXI7CglyZWFkb25seSBzZWNyZXQ/OiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+Owp9KSB7CglyZXR1cm4gTGF5ZXIudW53cmFwKAoJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJY29uc3QgZGF0YWJhc2VVcmwgPSBjb25maWc/LmRhdGFiYXNlVXJsID8/ICh5aWVsZCogQ29uZmlnLlJlZGFjdGVkKCJEQVRBQkFTRV9VUkwiKSk7CgkJCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlVXJsKTsKCQkJY29uc3QgZGF0YWJhc2UgPSBkYXRhYmFzZU9wdGlvbnMocG9vbCwgZGF0YWJhc2VVcmwpOwoJCQlyZXR1cm4gYXBwSG9zdCh7CgkJCQkuLi5kYXRhYmFzZSwKCQkJCWFwcGxpY2F0aW9uOiBFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQkJY29uc3QgeyByb3V0ZXMsIHNlc3Npb25zIH0gPSB5aWVsZCogbWFrZUF1dGgoeyBkYXRhYmFzZTogcG9vbCwgLi4uKGNvbmZpZz8uc2VjcmV0ID09PSB1bmRlZmluZWQgPyB7fSA6IHsgc2VjcmV0OiBjb25maWcuc2VjcmV0IH0pIH0pOwoJCQkJCWNvbnN0IHByb2R1Y2VyID0gbm90ZVByb2R1Y2VyKFJlZGFjdGVkLnZhbHVlKGRhdGFiYXNlVXJsKSk7CgkJCQkJcmV0dXJuIHsKCQkJCQkJY29uZmlnOiB7IC4uLmRhdGFiYXNlLmNvbmZpZywgLi4uKGNvbmZpZz8ucG9ydCA9PT0gdW5kZWZpbmVkID8ge30gOiB7IHBvcnQ6IGNvbmZpZy5wb3J0IH0pIH0sCgkJCQkJCWdyb3VwOiBOb3RlcywKCQkJCQkJaGFuZGxlcnM6IExheWVyLm1lcmdlQWxsKGhhbmRsZXJzLCBhdXRoZW50aWNhdGVkVXNlckxheWVyKHNlc3Npb25zKSwgcm91dGVzLCBIdHRwU3RhdGljU2VydmVyLmxheWVyKHsgcm9vdDogImRpc3QiLCBzcGE6IHRydWUgfSkpLAoJCQkJCQlzZXJ2aWNlczogTm90ZXNTZXJ2aWNlLmxheWVyLnBpcGUoTGF5ZXIucHJvdmlkZU1lcmdlKHByb2R1Y2VyKSksCgkJCQkJCXNlc3Npb25zLAoJCQkJCX07CgkJCQl9KSwKCQkJfSk7CgkJfSksCgkpOwp9Cg==","path":"src/server/starterHost.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IG5vdGVXb3JrZXIgfSBmcm9tICIuL25vdGVXb3JrZXIudHMiOwoKTm9kZVJ1bnRpbWUucnVuTWFpbihMYXllci5sYXVuY2gobm90ZVdvcmtlcigpKSk7Cg==","path":"src/server/worker.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgU3FsQ2xpZW50IH0gZnJvbSAiZWZmZWN0L3NxbCI7CmltcG9ydCB7IGV4cGVjdCwgdmkgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBhcHAsIHNpZ25lZEluIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hcHBsaWNhdGlvbi50cyI7CmltcG9ydCB7IG90bHBSZWNlaXZlciB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvb3RscFJlY2VpdmVyLnRzIjsKCmFwcC5pdCgKCSJleHBvcnRzIHRoZSB3b3JrZXIncyBFZmZlY3Qgam9iIHNwYW5zIHdpdGggdGhlIGNvbmZpZ3VyZWQgc2VydmljZSBuYW1lIiwKCVtzaWduZWRJbigpXSwKCWZ1bmN0aW9uKiAoeyBhY3Rvciwgc3RhcnRXb3JrZXIgfSkgewoJCWNvbnN0IHJlY2VpdmVyID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gb3RscFJlY2VpdmVyKCkpLAoJCQkoY29sbGVjdG9yKSA9PiBFZmZlY3QucHJvbWlzZSgoKSA9PiBjb2xsZWN0b3IuY2xvc2UoKSksCgkJKTsKCQljb25zdCBub3RlID0geWllbGQqIGFjdG9yKCkubm90ZXMuY3JlYXRlKHsgdGl0bGU6ICJDb3VudCB0aGVzZSB3b3JkcyIgfSk7CgkJeWllbGQqIHN0YXJ0V29ya2VyKHsKCQkJIk9URUxfRVhQT1JURVJfT1RMUF9IRUFERVJTIjogIngtY29sbGVjdG9yLXRva2VuPXdvcmtlciUyMGNvbGxlY3RvciUyMHNlY3JldCIsCgkJCSJPVEVMX0VYUE9SVEVSX09UTFBfUFJPVE9DT0wiOiAiaHR0cC9qc29uIiwKCQkJIk9URUxfRVhQT1JURVJfT1RMUF9UUkFDRVNfRU5EUE9JTlQiOiBgJHtyZWNlaXZlci51cmx9L3YxL3RyYWNlc2AsCgkJCSJPVEVMX1JFU09VUkNFX0FUVFJJQlVURVMiOiAiZGVwbG95bWVudC5lbnZpcm9ubWVudD13b3JrZXItdGVzdCIsCgkJCSJPVEVMX1NFUlZJQ0VfTkFNRSI6ICJ3b3JrZXItdGVzdCIsCgkJfSk7CgkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCXZpLndhaXRGb3IoCgkJCQlhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKHNxbGBzZWxlY3QgIndvcmRDb3VudCIgZnJvbSBzdGFydGVyX25vdGVzIHdoZXJlIGlkID0gJHtub3RlLmlkfWApKS50b0VxdWFsKFt7IHdvcmRDb3VudDogMyB9XSk7CgkJCQkJZXhwZWN0KHJlY2VpdmVyLnJlcXVlc3RzLnNvbWUoKHJlcXVlc3QpID0+IHJlcXVlc3QuYm9keS5pbmNsdWRlcygnIm5hbWUiOiJDb3VudFdvcmRzIicpKSkudG9CZSh0cnVlKTsKCQkJCX0sCgkJCQl7IHRpbWVvdXQ6IDgwMDAgfSwKCQkJKSwKCQkpOwoJCWNvbnN0IGJvZHkgPSByZWNlaXZlci5yZXF1ZXN0cy5tYXAoKHJlcXVlc3QpID0+IHJlcXVlc3QuYm9keSkuam9pbigiXG4iKTsKCQlleHBlY3QocmVjZWl2ZXIucmVxdWVzdHMpLnRvQ29udGFpbkVxdWFsKGV4cGVjdC5vYmplY3RDb250YWluaW5nKHsgcGF0aDogIi92MS90cmFjZXMiLCB0b2tlbjogIndvcmtlciBjb2xsZWN0b3Igc2VjcmV0IiB9KSk7CgkJZXhwZWN0KGJvZHkpLnRvQ29udGFpbignImtleSI6InNlcnZpY2UubmFtZSIsInZhbHVlIjp7InN0cmluZ1ZhbHVlIjoid29ya2VyLXRlc3QifScpOwoJCWV4cGVjdChib2R5KS50b0NvbnRhaW4oJyJrZXkiOiJkZXBsb3ltZW50LmVudmlyb25tZW50IiwidmFsdWUiOnsic3RyaW5nVmFsdWUiOiJ3b3JrZXItdGVzdCJ9Jyk7CgkJZXhwZWN0KGJvZHkpLm5vdC50b0NvbnRhaW4oIndvcmtlciBjb2xsZWN0b3Igc2VjcmV0Iik7CgkJZXhwZWN0KGJvZHkpLm5vdC50b0NvbnRhaW4oInN0YXJ0ZXItdGVzdC1zZWNyZXQiKTsKCX0sCgkxNV8wMDAsCik7Cgpmb3IgKGNvbnN0IHN0YXR1cyBvZiBbdW5kZWZpbmVkLCA1MDBdKSB7CglhcHAuaXQoCgkJYGNvbXBsZXRlcyBhIHdvcmtlciBqb2IgYW5kIHNodXRzIGRvd24gd2hlbiB0aGUgY29sbGVjdG9yICR7c3RhdHVzID09PSB1bmRlZmluZWQgPyAiaXMgZG93biIgOiAicmV0dXJucyBIVFRQIDUwMCJ9YCwKCQlbc2lnbmVkSW4oKV0sCgkJZnVuY3Rpb24qICh7IGFjdG9yLCBzdGFydFdvcmtlciB9KSB7CgkJCWNvbnN0IHJlY2VpdmVyID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJCUVmZmVjdC5wcm9taXNlKCgpID0+IG90bHBSZWNlaXZlcihzdGF0dXMpKSwKCQkJCShjb2xsZWN0b3IpID0+IChzdGF0dXMgPT09IHVuZGVmaW5lZCA/IEVmZmVjdC52b2lkIDogRWZmZWN0LnByb21pc2UoKCkgPT4gY29sbGVjdG9yLmNsb3NlKCkpKSwKCQkJKTsKCQkJaWYgKHN0YXR1cyA9PT0gdW5kZWZpbmVkKSB7CgkJCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVjZWl2ZXIuY2xvc2UoKSk7CgkJCX0KCQkJY29uc3Qgbm90ZSA9IHlpZWxkKiBhY3RvcigpLm5vdGVzLmNyZWF0ZSh7IHRpdGxlOiAiQ29sbGVjdG9yIGhhcyBmYWlsZWQiIH0pOwoJCQl5aWVsZCogc3RhcnRXb3JrZXIoeyAiT1RFTF9FWFBPUlRFUl9PVExQX0VORFBPSU5UIjogcmVjZWl2ZXIudXJsIH0pOwoJCQljb25zdCBzcWwgPSB5aWVsZCogU3FsQ2xpZW50LlNxbENsaWVudDsKCQkJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+CgkJCQl2aS53YWl0Rm9yKAoJCQkJCWFzeW5jICgpID0+IHsKCQkJCQkJZXhwZWN0KGF3YWl0IEVmZmVjdC5ydW5Qcm9taXNlKHNxbGBzZWxlY3QgIndvcmRDb3VudCIgZnJvbSBzdGFydGVyX25vdGVzIHdoZXJlIGlkID0gJHtub3RlLmlkfWApKS50b0VxdWFsKFt7IHdvcmRDb3VudDogMyB9XSk7CgkJCQkJCWV4cGVjdChhd2FpdCBFZmZlY3QucnVuUHJvbWlzZShzcWxgc2VsZWN0IHN0YXRlIGZyb20gcGdib3NzLmpvYiB3aGVyZSBuYW1lID0gJ2NvdW50LW5vdGUtd29yZHMnYCkpLnRvRXF1YWwoW3sgc3RhdGU6ICJjb21wbGV0ZWQiIH1dKTsKCQkJCQkJaWYgKHN0YXR1cyAhPT0gdW5kZWZpbmVkKSB7CgkJCQkJCQlleHBlY3QocmVjZWl2ZXIucmVxdWVzdHMubGVuZ3RoKS50b0JlR3JlYXRlclRoYW4oMCk7CgkJCQkJCX0KCQkJCQl9LAoJCQkJCXsgdGltZW91dDogODAwMCB9LAoJCQkJKSwKCQkJKTsKCQl9LAoJCTE1XzAwMCwKCSk7Cn0K","path":"src/server/workerTracing.spec.ts"},{"content":"aW1wb3J0IHsgTm9kZVJ1bnRpbWUsIE5vZGVTZXJ2aWNlcyB9IGZyb20gIkBlZmZlY3QvcGxhdGZvcm0tbm9kZSI7CmltcG9ydCB7IEVmZmVjdCwgRmlsZVN5c3RlbSB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IENoaWxkUHJvY2VzcywgQ2hpbGRQcm9jZXNzU3Bhd25lciB9IGZyb20gImVmZmVjdC9wcm9jZXNzIjsKCmNvbnN0IGluc3RhbGxIb29rID0gRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJY29uc3QgZnMgPSB5aWVsZCogRmlsZVN5c3RlbS5GaWxlU3lzdGVtOwoJaWYgKCEoeWllbGQqIGZzLmV4aXN0cygiLmdpdCIpKSkgewoJCXJldHVybjsKCX0KCWNvbnN0IHNwYXduZXIgPSB5aWVsZCogQ2hpbGRQcm9jZXNzU3Bhd25lci5DaGlsZFByb2Nlc3NTcGF3bmVyOwoJY29uc3QgY29kZSA9IHlpZWxkKiBzcGF3bmVyLmV4aXRDb2RlKENoaWxkUHJvY2Vzcy5tYWtlKCJwbnBtIiwgWyJleGVjIiwgInF1YWxpdHkiLCAiaG9va3MiLCAiaW5zdGFsbCJdLCB7IHN0ZGVycjogImluaGVyaXQiLCBzdGRvdXQ6ICJpbmhlcml0IiB9KSk7CglpZiAoY29kZSAhPT0gMCkgewoJCXJldHVybiB5aWVsZCogRWZmZWN0LmZhaWwobmV3IEVycm9yKGBJbnN0YWxsaW5nIHRoZSBRdWFsaXR5IGhvb2sgZmFpbGVkIChleGl0ICR7Y29kZX0pLmApKTsKCX0KfSk7CgpOb2RlUnVudGltZS5ydW5NYWluKGluc3RhbGxIb29rLnBpcGUoRWZmZWN0LnByb3ZpZGUoTm9kZVNlcnZpY2VzLmxheWVyKSkpOwo=","path":"src/setup.ts"},{"content":"aW1wb3J0IHsgbWFrZUF1dGggfSBmcm9tICIjY2xpZW50L2F1dGgudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIGFwcEF1dGgob3B0aW9uczogewoJcmVhZG9ubHkgYmFzZVVybDogc3RyaW5nOwoJcmVhZG9ubHkgc2lnbmVkSW4/OiBib29sZWFuOwoJcmVhZG9ubHkgc2Vzc2lvbkZhaWx1cmU/OiBib29sZWFuOwoJcmVhZG9ubHkgc2lnbk91dEZhaWx1cmU/OiBzdHJpbmc7Cn0pIHsKCWxldCBzZXNzaW9uRmFpbHVyZSA9IG9wdGlvbnMuc2Vzc2lvbkZhaWx1cmUgPz8gZmFsc2U7Cgljb25zdCByZXF1ZXN0czogVVJMW10gPSBbXTsKCWNvbnN0IGRhdGUgPSAiMjAyNi0wMS0wMVQwMDowMDowMC4wMDBaIjsKCWNvbnN0IHNlc3Npb24gPSBvcHRpb25zLnNpZ25lZEluCgkJPyB7CgkJCQlzZXNzaW9uOiB7CgkJCQkJY3JlYXRlZEF0OiBkYXRlLAoJCQkJCWV4cGlyZXNBdDogIjIwOTktMDEtMDFUMDA6MDA6MDAuMDAwWiIsCgkJCQkJaWQ6ICJhbGljZS1zZXNzaW9uIiwKCQkJCQl1cGRhdGVkQXQ6IGRhdGUsCgkJCQkJdXNlcklkOiAiYWxpY2UiLAoJCQkJfSwKCQkJCXVzZXI6IHsgY3JlYXRlZEF0OiBkYXRlLCBlbWFpbDogImFsaWNlQHN0YXJ0ZXIudGVzdCIsIGVtYWlsVmVyaWZpZWQ6IHRydWUsIGlkOiAiYWxpY2UiLCBuYW1lOiAiQWxpY2UiLCB1cGRhdGVkQXQ6IGRhdGUgfSwKCQkJfQoJCTogbnVsbDsKCWNvbnN0IGF1dGggPSBtYWtlQXV0aCh7CgkJYmFzZVVybDogb3B0aW9ucy5iYXNlVXJsLAoJCWZldGNoT3B0aW9uczogewoJCQljdXN0b21GZXRjaEltcGw6IChpbnB1dCwgaW5pdCkgPT4gewoJCQkJY29uc3QgcmVxdWVzdCA9IG5ldyBSZXF1ZXN0KGlucHV0LCBpbml0KTsKCQkJCWNvbnN0IHVybCA9IG5ldyBVUkwocmVxdWVzdC51cmwpOwoJCQkJcmVxdWVzdHMucHVzaCh1cmwpOwoJCQkJaWYgKHVybC5wYXRobmFtZSA9PT0gIi9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIpIHsKCQkJCQlyZXR1cm4gUHJvbWlzZS5yZXNvbHZlKAoJCQkJCQlSZXNwb25zZS5qc29uKHNlc3Npb25GYWlsdXJlID8geyBjb2RlOiAiVU5BVkFJTEFCTEUiLCBtZXNzYWdlOiAiU2Vzc2lvbiBjaGVjayB1bmF2YWlsYWJsZSIgfSA6IHNlc3Npb24sIHsKCQkJCQkJCXN0YXR1czogc2Vzc2lvbkZhaWx1cmUgPyA1MDAgOiAyMDAsCgkJCQkJCX0pLAoJCQkJCSk7CgkJCQl9CgkJCQlpZiAodXJsLnBhdGhuYW1lID09PSAiL2FwaS9hdXRoL3NpZ24tb3V0IikgewoJCQkJCXJldHVybiBQcm9taXNlLnJlc29sdmUoUmVzcG9uc2UuanNvbih7IGNvZGU6ICJSRUZVU0VEIiwgbWVzc2FnZTogb3B0aW9ucy5zaWduT3V0RmFpbHVyZSB9LCB7IHN0YXR1czogNDAwIH0pKTsKCQkJCX0KCQkJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoYFVuZXhwZWN0ZWQgYXV0aCByZXF1ZXN0OiAke3VybH1gKSk7CgkJCX0sCgkJCXJldHJ5OiAwLAoJCX0sCgl9KTsKCXJldHVybiB7CgkJYXV0aCwKCQlyZWNvdmVyOiAoKSA9PiB7CgkJCXNlc3Npb25GYWlsdXJlID0gZmFsc2U7CgkJfSwKCQlyZXF1ZXN0cywKCX07Cn0K","path":"src/test-support/appAuth.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnUHJvdmlkZXIsIEVmZmVjdCwgTGF5ZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBTcWxDbGllbnQgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBzdG9yeUtpdCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9zdG9yeUtpdC50cyI7CmltcG9ydCB7IG1ha2VBdXRoIH0gZnJvbSAiI2NsaWVudC9hdXRoLnRzIjsKaW1wb3J0IHsgbm90ZVdvcmtlciB9IGZyb20gIiNzZXJ2ZXIvbm90ZVdvcmtlci50cyI7CmltcG9ydCB7IGF1dGhSYXRlTGltaXRzIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9hdXRoUmF0ZUxpbWl0cy50cyI7CmltcG9ydCB7IHR5cGUgSG9zdE9wdGlvbnMsIHR5cGUgUnVubmluZ0hvc3QsIHN0YXJ0SG9zdCB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvaG9zdC50cyI7CmltcG9ydCB7IGxpdmVOb3RlcyB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvbGl2ZU5vdGVzLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3Bvc3RncmVzLnRzIjsKaW1wb3J0IHsgcmVxdWVzdHMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3JlcXVlc3RzLnRzIjsKCmludGVyZmFjZSBBY3RvciB7CglyZWFkb25seSBjb29raWU6IHN0cmluZzsKCXJlYWRvbmx5IG5vdGVzOiBFZmZlY3QuU3VjY2VzczxSZXR1cm5UeXBlPFJldHVyblR5cGU8dHlwZW9mIHJlcXVlc3RzPlsibm90ZXMiXT4+Owp9CgppbnRlcmZhY2UgRW5naW5lIHsKCWFjdG9yczogTWFwPHN0cmluZywgQWN0b3I+OwoJaG9zdDogUnVubmluZ0hvc3QgfCB1bmRlZmluZWQ7Cglob3N0T3B0aW9uczogSG9zdE9wdGlvbnM7Cgl0ZWxsOiAobGluZTogc3RyaW5nKSA9PiB2b2lkOwp9CgpleHBvcnQgY29uc3QgYXBwID0gc3RvcnlLaXQoewoJYWZ0ZXI6IHsKCQkqaG9zdGluZyhlbmdpbmUpIHsKCQkJZW5naW5lLmhvc3QgPSB5aWVsZCogc3RhcnRIb3N0KGVuZ2luZS5ob3N0T3B0aW9ucyk7CgkJfSwKCX0sCglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCWNyZWF0ZTogKCk6IEVuZ2luZSA9PiAoeyBhY3RvcnM6IG5ldyBNYXAoKSwgaG9zdDogdW5kZWZpbmVkLCBob3N0T3B0aW9uczoge30sIHRlbGw6ICgpID0+IHVuZGVmaW5lZCB9KSwKCWluc3BlY3Q6IChlbmdpbmUpID0+ICh7IGFjY291bnRzOiBbLi4uZW5naW5lLmFjdG9ycy5rZXlzKCldLCBiYXNlVXJsOiBlbmdpbmUuaG9zdD8uYmFzZVVybCwgZGVwbG95ZWQ6IGVuZ2luZS5ob3N0T3B0aW9ucy5kZXBsb3llZCA/PyBmYWxzZSB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJzdGFydGVyIiwKCXN0YWdlczogWyJob3N0aW5nIiwgImFjY291bnRzIiwgIm5vdGVzIl0sCgl2ZXJiczogKGVuZ2luZSwgc3RvcnkpID0+IHsKCQlmdW5jdGlvbiBob3N0KCkgewoJCQlpZiAoZW5naW5lLmhvc3QgPT09IHVuZGVmaW5lZCkgewoJCQkJdGhyb3cgbmV3IEVycm9yKCJIb3N0IGhhcyBub3Qgc3RhcnRlZCIpOwoJCQl9CgkJCXJldHVybiBlbmdpbmUuaG9zdDsKCQl9CgkJZW5naW5lLnRlbGwgPSBzdG9yeS50ZWxsOwoJCWZ1bmN0aW9uIGh0dHAoKSB7CgkJCXJldHVybiByZXF1ZXN0cyhob3N0KCksIHN0b3J5LnRlbGwpOwoJCX0KCQlyZXR1cm4gewoJCQlhY3RvcjogKG5hbWUgPSAiYWxpY2UiKSA9PiB7CgkJCQljb25zdCBhY3RvciA9IGVuZ2luZS5hY3RvcnMuZ2V0KG5hbWUpOwoJCQkJaWYgKGFjdG9yID09PSB1bmRlZmluZWQpIHsKCQkJCQl0aHJvdyBuZXcgRXJyb3IoYE5vIHNpZ25lZC1pbiBhY2NvdW50ICR7bmFtZX1gKTsKCQkJCX0KCQkJCXJldHVybiBhY3RvcjsKCQkJfSwKCQkJYW5vbnltb3VzOiAoKSA9PiBodHRwKCkubm90ZXMoKSwKCQkJYXV0aENsaWVudDogKGNvb2tpZSA9ICIiKSA9PiB7CgkJCQlzdG9yeS50ZWxsKCJjb25uZWN0IGFuIGF1dGggY2xpZW50IHRvIHRoaXMgc3RvcnkncyBhcHAgaG9zdCIpOwoJCQkJY29uc3QgeyBiYXNlVXJsLCBvcmlnaW4gfSA9IGhvc3QoKTsKCQkJCXJldHVybiBtYWtlQXV0aCh7IGJhc2VVcmwsIGZldGNoT3B0aW9uczogeyBoZWFkZXJzOiB7IGNvb2tpZSwgb3JpZ2luIH0gfSB9KTsKCQkJfSwKCQkJYXV0aGVudGljYXRlOiAobmFtZTogc3RyaW5nLCBwYXRoPzogc3RyaW5nLCBjb29raWU/OiBzdHJpbmcpID0+IGh0dHAoKS5hdXRoZW50aWNhdGUobmFtZSwgcGF0aCwgY29va2llKSwKCQkJYXV0aFJhdGVMaW1pdHM6ICgpID0+IGF1dGhSYXRlTGltaXRzKGhvc3QoKSwgc3RvcnkudGVsbCksCgkJCWZvcmVpZ25SZXF1ZXN0OiAoY29va2llOiBzdHJpbmcpID0+IGh0dHAoKS5mb3JlaWduUmVxdWVzdChjb29raWUpLAoJCQlsaXZlTm90ZXM6IChuYW1lID0gImFsaWNlIikgPT4gewoJCQkJc3RvcnkudGVsbChgJHtuYW1lfSB3YXRjaGVzIHRoZSBsaXZlIG5vdGVzIGxpc3RgKTsKCQkJCWNvbnN0IGFjdG9yID0gZW5naW5lLmFjdG9ycy5nZXQobmFtZSk7CgkJCQlpZiAoYWN0b3IgPT09IHVuZGVmaW5lZCkgewoJCQkJCXRocm93IG5ldyBFcnJvcihgTm8gc2lnbmVkLWluIGFjY291bnQgJHtuYW1lfWApOwoJCQkJfQoJCQkJcmV0dXJuIGxpdmVOb3Rlcyhob3N0KCksIGFjdG9yLmNvb2tpZSk7CgkJCX0sCgkJCW5vdGVzOiAoY29va2llOiBzdHJpbmcpID0+IGh0dHAoKS5ub3Rlcyhjb29raWUpLAoJCQlyZXJ1bk1pZ3JhdGlvbnM6IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnJlcnVuTWlncmF0aW9ucyIpKGZ1bmN0aW9uKiAoKSB7CgkJCQlzdG9yeS50ZWxsKCJydW4gdGhlIGRlcGxveW1lbnQgbWlncmF0aW9ucyBhbmQgb3BlbiBhbm90aGVyIGFwcCBob3N0Iik7CgkJCQllbmdpbmUuaG9zdCA9IHlpZWxkKiBzdGFydEhvc3QoZW5naW5lLmhvc3RPcHRpb25zKTsKCQkJfSksCgkJCXJ1bm5pbmdIb3N0OiBob3N0LAoJCQlzdGFydFdvcmtlcjogRWZmZWN0LmZuKCJTdGFydGVyU3Rvcnkuc3RhcnRXb3JrZXIiKShmdW5jdGlvbiogKGVudj86IFJlY29yZDxzdHJpbmcsIHN0cmluZz4pIHsKCQkJCXN0b3J5LnRlbGwoInN0YXJ0IHRoZSB3b3JkLWNvdW50IHdvcmtlciIpOwoJCQkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJCQljb25zdCB3b3JrZXIgPSBub3RlV29ya2VyKHsgZGF0YWJhc2VVcmw6IGRhdGFiYXNlLnVybCB9KTsKCQkJCXlpZWxkKiBMYXllci5idWlsZChlbnYgPT09IHVuZGVmaW5lZCA/IHdvcmtlciA6IHdvcmtlci5waXBlKExheWVyLnByb3ZpZGUoQ29uZmlnUHJvdmlkZXIubGF5ZXIoQ29uZmlnUHJvdmlkZXIuZnJvbUVudih7IGVudiB9KSkpKSk7CgkJCX0pLAoJCX07Cgl9LAp9KTsKCmV4cG9ydCBmdW5jdGlvbiBzaWduZWRJbihuYW1lID0gImFsaWNlIikgewoJcmV0dXJuIGFwcC50cmFpdCgiYWNjb3VudHMiLCBgJHtuYW1lfSBpcyBzaWduZWQgaW5gLCBmdW5jdGlvbiogKGVuZ2luZSkgewoJCWlmIChlbmdpbmUuaG9zdCA9PT0gdW5kZWZpbmVkKSB7CgkJCXJldHVybiB5aWVsZCogRWZmZWN0LmRpZSgiSG9zdCBoYXMgbm90IHN0YXJ0ZWQiKTsKCQl9CgkJY29uc3QgaHR0cCA9IHJlcXVlc3RzKGVuZ2luZS5ob3N0LCAobGluZSkgPT4gZW5naW5lLnRlbGwobGluZSkpOwoJCWNvbnN0IGNvb2tpZSA9IHlpZWxkKiBodHRwLmF1dGhlbnRpY2F0ZShuYW1lKTsKCQllbmdpbmUuYWN0b3JzLnNldChuYW1lLCB7IGNvb2tpZSwgbm90ZXM6IHlpZWxkKiBodHRwLm5vdGVzKGNvb2tpZSkgfSk7Cgl9KTsKfQoKZXhwb3J0IGZ1bmN0aW9uIGJlaGluZFByb3h5KG9wdGlvbnM6IFBpY2s8SG9zdE9wdGlvbnMsICJ0cnVzdGVkUHJveHkiIHwgImF1dGhDbGllbnRJcEhlYWRlciI+ID0geyB0cnVzdGVkUHJveHk6ICIxMjcuMC4wLjEiIH0pIHsKCXJldHVybiBhcHAudHJhaXQoImhvc3RpbmciLCAidGhlIGFwcCBpcyBiZWhpbmQgYW4gSFRUUFMgZm9yd2FyZGluZyBwcm94eSIsIChlbmdpbmUpID0+IHsKCQllbmdpbmUuaG9zdE9wdGlvbnMgPSB7IC4uLmVuZ2luZS5ob3N0T3B0aW9ucywgZGVwbG95ZWQ6IHRydWUsIC4uLm9wdGlvbnMgfTsKCX0pOwp9CgpleHBvcnQgZnVuY3Rpb24gYXV0aFJhdGVMaW1pdGluZyhlbmFibGVkOiBib29sZWFuKSB7CglyZXR1cm4gYXBwLnRyYWl0KCJob3N0aW5nIiwgYGF1dGggcmF0ZSBsaW1pdGluZyBpcyAke2VuYWJsZWQgPyAiZW5hYmxlZCIgOiAiZGlzYWJsZWQifWAsIChlbmdpbmUpID0+IHsKCQllbmdpbmUuaG9zdE9wdGlvbnMgPSB7IC4uLmVuZ2luZS5ob3N0T3B0aW9ucywgcmF0ZUxpbWl0RW5hYmxlZDogZW5hYmxlZCB9OwoJfSk7Cn0KCmV4cG9ydCBmdW5jdGlvbiBsZWdhY3lOb3RlKHRpdGxlOiBzdHJpbmcpIHsKCXJldHVybiBhcHAudHJhaXQoIm5vdGVzIiwgYFBvc3RncmVTUUwgY29udGFpbnMgdGhlIHVub3duZWQgbm90ZSAke0pTT04uc3RyaW5naWZ5KHRpdGxlKX1gLCBmdW5jdGlvbiogKCkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBzcWxgaW5zZXJ0IGludG8gc3RhcnRlcl9ub3RlcyAodGl0bGUpIHZhbHVlcyAoJHt0aXRsZX0pYDsKCX0pOwp9CgpleHBvcnQgZnVuY3Rpb24gcmVqZWN0ZWROb3RlSm9icygpIHsKCXJldHVybiBhcHAudHJhaXQoIm5vdGVzIiwgIlBvc3RncmVTUUwgcmVqZWN0cyB3b3JkLWNvdW50IGpvYnMiLCBmdW5jdGlvbiogKCkgewoJCWNvbnN0IHNxbCA9IHlpZWxkKiBTcWxDbGllbnQuU3FsQ2xpZW50OwoJCXlpZWxkKiBzcWxgYWx0ZXIgdGFibGUgcGdib3NzLmpvYiBhZGQgY29uc3RyYWludCByZWplY3Rfbm90ZV9qb2JzIGNoZWNrIChuYW1lIDw+ICdjb3VudC1ub3RlLXdvcmRzJylgOwoJfSk7Cn0KCmV4cG9ydCBmdW5jdGlvbiByZWplY3RlZE5vdGVDb21taXRzKCkgewoJcmV0dXJuIGFwcC50cmFpdCgibm90ZXMiLCAiUG9zdGdyZVNRTCByZWplY3RzIG5vdGUgd3JpdGVzIGF0IGNvbW1pdCIsIGZ1bmN0aW9uKiAoKSB7CgkJY29uc3Qgc3FsID0geWllbGQqIFNxbENsaWVudC5TcWxDbGllbnQ7CgkJeWllbGQqIHNxbGBjcmVhdGUgZnVuY3Rpb24gcmVqZWN0X25vdGVfY29tbWl0KCkgcmV0dXJucyB0cmlnZ2VyIGxhbmd1YWdlIHBscGdzcWwgYXMgJCQKCQkJYmVnaW4gcmFpc2UgZXhjZXB0aW9uICdyZWplY3RlZCBhdCBjb21taXQnOyBlbmQ7CgkJJCRgOwoJCXlpZWxkKiBzcWxgY3JlYXRlIGNvbnN0cmFpbnQgdHJpZ2dlciByZWplY3Rfbm90ZV9jb21taXQgYWZ0ZXIgaW5zZXJ0IG9uIHN0YXJ0ZXJfbm90ZXMKCQkJZGVmZXJyYWJsZSBpbml0aWFsbHkgZGVmZXJyZWQgZm9yIGVhY2ggcm93IGV4ZWN1dGUgZnVuY3Rpb24gcmVqZWN0X25vdGVfY29tbWl0KClgOwoJfSk7Cn0K","path":"src/test-support/application.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBMYXllciB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IEZldGNoSHR0cENsaWVudCwgSHR0cENsaWVudCwgSHR0cENsaWVudFJlcXVlc3QgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCB7IFJwY0NsaWVudCwgUnBjU2VyaWFsaXphdGlvbiB9IGZyb20gImVmZmVjdC9ycGMiOwppbXBvcnQgeyBleHBlY3QgfSBmcm9tICJ2aXRlc3QiOwppbXBvcnQgeyBOb3RlcyB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgY29uc3QgYXV0aFBvc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJUZXN0LmF1dGhQb3N0IikoZnVuY3Rpb24qIChiYXNlVXJsOiBzdHJpbmcsIHBhdGg6IHN0cmluZywgYm9keTogb2JqZWN0LCBjb29raWUgPSAiIiwgb3JpZ2luID0gYmFzZVVybCkgewoJY29uc3QgcmVzcG9uc2UgPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4KCQlmZXRjaChgJHtiYXNlVXJsfS9hcGkvYXV0aC8ke3BhdGh9YCwgewoJCQlib2R5OiBKU09OLnN0cmluZ2lmeShib2R5KSwKCQkJaGVhZGVyczogeyAiY29udGVudC10eXBlIjogImFwcGxpY2F0aW9uL2pzb24iLCBjb29raWUsIG9yaWdpbiB9LAoJCQltZXRob2Q6ICJQT1NUIiwKCQl9KSwKCSk7CglleHBlY3QocmVzcG9uc2Uuc3RhdHVzKS50b0JlKDIwMCk7Cgl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVzcG9uc2UudGV4dCgpKTsKCWNvbnN0IGNvb2tpZXMgPSByZXNwb25zZS5oZWFkZXJzLmdldFNldENvb2tpZSgpOwoJaWYgKG9yaWdpbi5zdGFydHNXaXRoKCJodHRwczovLyIpKSB7CgkJZXhwZWN0KGNvb2tpZXMuc29tZSgodmFsdWUpID0+IHZhbHVlLnN0YXJ0c1dpdGgoIl9fU2VjdXJlLWJldHRlci1hdXRoLnNlc3Npb25fdG9rZW49IikgJiYgLzsgU2VjdXJlKD86O3wkKS9pdi50ZXN0KHZhbHVlKSkpLnRvQmUodHJ1ZSk7Cgl9CglyZXR1cm4gY29va2llcy5tYXAoKHZhbHVlKSA9PiB2YWx1ZS5zcGxpdCgiOyIpWzBdKS5qb2luKCI7ICIpOwp9KTsKCmV4cG9ydCBmdW5jdGlvbiBub3Rlc0h0dHAoYmFzZVVybDogc3RyaW5nLCBjb29raWUgPSAiIiwgb3JpZ2luID0gYmFzZVVybCkgewoJY29uc3QgcHJvdG9jb2wgPSBScGNDbGllbnQubGF5ZXJQcm90b2NvbEh0dHAoewoJCXRyYW5zZm9ybUNsaWVudDogKGNsaWVudCkgPT4gSHR0cENsaWVudC5tYXBSZXF1ZXN0KGNsaWVudCwgSHR0cENsaWVudFJlcXVlc3Quc2V0SGVhZGVycyh7IGNvb2tpZSwgb3JpZ2luIH0pKSwKCQl1cmw6IGAke2Jhc2VVcmx9L3JwY2AsCgl9KS5waXBlKExheWVyLnByb3ZpZGUoW0ZldGNoSHR0cENsaWVudC5sYXllciwgUnBjU2VyaWFsaXphdGlvbi5sYXllck5kanNvbl0pKTsKCXJldHVybiBScGNDbGllbnQubWFrZShOb3RlcykucGlwZShFZmZlY3QucHJvdmlkZShwcm90b2NvbCkpOwp9CgpleHBvcnQgZnVuY3Rpb24gY3JlZGVudGlhbHMobmFtZTogc3RyaW5nKSB7CglyZXR1cm4geyBlbWFpbDogYCR7bmFtZX1Ac3RhcnRlci50ZXN0YCwgbmFtZSwgcGFzc3dvcmQ6ICJjb3JyZWN0LWhvcnNlLWJhdHRlcnktc3RhcGxlIiB9Owp9Cg==","path":"src/test-support/authHttp.ts"},{"content":"aW1wb3J0IHsgcmVxdWVzdCB9IGZyb20gIm5vZGU6aHR0cCI7CmltcG9ydCB7IEVmZmVjdCB9IGZyb20gImVmZmVjdCI7CmltcG9ydCB7IGNyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoSHR0cC50cyI7CmltcG9ydCB0eXBlIHsgUnVubmluZ0hvc3QgfSBmcm9tICIuL2hvc3QudHMiOwoKZXhwb3J0IGZ1bmN0aW9uIGF1dGhSYXRlTGltaXRzKGhvc3Q6IFJ1bm5pbmdIb3N0LCB0ZWxsOiAobGluZTogc3RyaW5nKSA9PiB2b2lkKSB7CglyZXR1cm4gewoJCXZpc2l0b3I6IChjbGllbnRJcDogc3RyaW5nKSA9PiB7CgkJCXRlbGwoYGEgdmlzaXRvciBjb25uZWN0cyBmcm9tICR7Y2xpZW50SXB9YCk7CgkJCXJldHVybiB7CgkJCQlzaWduSW46IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnNpZ25JbiIpKGZ1bmN0aW9uKiAoZm9yd2FyZGVkRm9yPzogc3RyaW5nLCByZWFsSXA/OiBzdHJpbmcpIHsKCQkJCQl0ZWxsKGB0aGUgdmlzaXRvciBhdCAke2NsaWVudElwfSBhdHRlbXB0cyBzaWduLWluIHdpdGggJHtKU09OLnN0cmluZ2lmeSh7IGZvcndhcmRlZEZvciwgcmVhbElwIH0pfWApOwoJCQkJCXJldHVybiB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gc2lnbkluU3RhdHVzKGhvc3QsIGNsaWVudElwLCBmb3J3YXJkZWRGb3IsIHJlYWxJcCkpOwoJCQkJfSksCgkJCX07CgkJfSwKCX07Cn0KCmZ1bmN0aW9uIHNpZ25JblN0YXR1cyhob3N0OiBSdW5uaW5nSG9zdCwgY2xpZW50SXA6IHN0cmluZywgZm9yd2FyZGVkRm9yPzogc3RyaW5nLCByZWFsSXA/OiBzdHJpbmcpIHsKCWNvbnN0IHVybCA9IG5ldyBVUkwoIi9hcGkvYXV0aC9zaWduLWluL2VtYWlsIiwgaG9zdC5iYXNlVXJsKTsKCXVybC5ob3N0bmFtZSA9IGNsaWVudElwLmluY2x1ZGVzKCI6IikgPyAiWzo6MV0iIDogIjEyNy4wLjAuMSI7CglyZXR1cm4gbmV3IFByb21pc2U8bnVtYmVyPigocmVzb2x2ZSwgcmVqZWN0KSA9PiB7CgkJY29uc3Qgb3V0Z29pbmcgPSByZXF1ZXN0KAoJCQl1cmwsCgkJCXsKCQkJCWhlYWRlcnM6IHsKCQkJCQkiY29udGVudC10eXBlIjogImFwcGxpY2F0aW9uL2pzb24iLAoJCQkJCW9yaWdpbjogaG9zdC5vcmlnaW4sCgkJCQkJLi4uKGZvcndhcmRlZEZvciA9PT0gdW5kZWZpbmVkID8ge30gOiB7ICJ4LWZvcndhcmRlZC1mb3IiOiBmb3J3YXJkZWRGb3IgfSksCgkJCQkJLi4uKHJlYWxJcCA9PT0gdW5kZWZpbmVkID8ge30gOiB7ICJ4LXJlYWwtaXAiOiByZWFsSXAgfSksCgkJCQl9LAoJCQkJbG9jYWxBZGRyZXNzOiBjbGllbnRJcCwKCQkJCW1ldGhvZDogIlBPU1QiLAoJCQl9LAoJCQkocmVzcG9uc2UpID0+IHsKCQkJCXJlc3BvbnNlLm9uKCJlcnJvciIsIHJlamVjdCk7CgkJCQlyZXNwb25zZS5vbigiZW5kIiwgKCkgPT4gcmVzb2x2ZShyZXNwb25zZS5zdGF0dXNDb2RlID8/IDUwMCkpOwoJCQkJcmVzcG9uc2UucmVzdW1lKCk7CgkJCX0sCgkJKTsKCQlvdXRnb2luZy5vbigiZXJyb3IiLCByZWplY3QpOwoJCW91dGdvaW5nLmVuZChKU09OLnN0cmluZ2lmeShjcmVkZW50aWFscygidW5rbm93biIpKSk7Cgl9KTsKfQo=","path":"src/test-support/authRateLimits.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgd2l0aElzb2xhdGVkRGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC93aXRoSXNvbGF0ZWREYXRhYmFzZS50cyI7CmltcG9ydCB7IGRvbUZldGNoIH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L2RvbUZldGNoLnRzIjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBtYWtlQXV0aCB9IGZyb20gIiNjbGllbnQvYXV0aC50cyI7CmltcG9ydCB7IGNyZWRlbnRpYWxzIH0gZnJvbSAiLi9hdXRoSHR0cC50cyI7CmltcG9ydCB7IHN0YXJ0SG9zdCB9IGZyb20gIi4vaG9zdC50cyI7CmltcG9ydCB7IHBvc3RncmVzIH0gZnJvbSAiLi9wb3N0Z3Jlcy50cyI7Cgpjb25zdCBhbGljZSA9IGNyZWRlbnRpYWxzKCJhbGljZSIpOwpleHBvcnQgY29uc3QgY29va2llQXBwID0gc3RvcnlLaXQoewoJYXJvdW5kOiB3aXRoSXNvbGF0ZWREYXRhYmFzZSwKCWNsb2NrOiAibGl2ZSIsCgkqY3JlYXRlKCkgewoJCWNvbnN0IHsgYmFzZVVybCB9ID0geWllbGQqIHN0YXJ0SG9zdCgpOwoJCWNvbnN0IHByZXZpb3VzTG9jYXRpb24gPSB3aW5kb3cubG9jYXRpb24uaHJlZjsKCQljb25zdCBmZXRjaCA9IGRvbUZldGNoKGJhc2VVcmwpOwoJCXlpZWxkKiBFZmZlY3QuYWRkRmluYWxpemVyKCgpID0+CgkJCUVmZmVjdC5wcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCXRyeSB7CgkJCQkJY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaCgiL2FwaS9hdXRoL3NpZ24tb3V0IiwgeyBib2R5OiAie30iLCBoZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vanNvbiIgfSwgbWV0aG9kOiAiUE9TVCIgfSk7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJCQkJCWF3YWl0IHJlc3BvbnNlLnRleHQoKTsKCQkJCX0gZmluYWxseSB7CgkJCQkJd2luZG93LmxvY2F0aW9uLmhyZWYgPSBwcmV2aW91c0xvY2F0aW9uOwoJCQkJfQoJCQl9KS5waXBlKEVmZmVjdC50aW1lb3V0KCI1IHNlY29uZHMiKSwgRWZmZWN0Lm9yRGllKSwKCQkpOwoJCXJldHVybiB7IGJhc2VVcmwsIGNsaWVudDogbWFrZUF1dGgoeyBiYXNlVXJsLCBmZXRjaE9wdGlvbnM6IHsgY3VzdG9tRmV0Y2hJbXBsOiBmZXRjaCB9IH0pLmNsaWVudCwgZmV0Y2ggfTsKCX0sCglpbnNwZWN0OiAoKSA9PiAoeyBhdXRoZW50aWNhdGlvbjogImNvb2tpZSBzZXNzaW9uIiB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJjb29raWUgYXV0aCIsCglzdGFnZXM6IFsiYWNjb3VudCJdLAoJdmVyYnM6ICh7IGJhc2VVcmwsIGNsaWVudCwgZmV0Y2ggfSwgc3RvcnkpID0+IHsKCQlmdW5jdGlvbiBwb3N0KHBhdGg6IHN0cmluZywgYm9keTogb2JqZWN0KSB7CgkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQljb25zdCByZXNwb25zZSA9IGF3YWl0IGZldGNoKAoJCQkJCW5ldyBSZXF1ZXN0KGAke2Jhc2VVcmx9L2FwaS9hdXRoLyR7cGF0aH1gLCB7CgkJCQkJCWJvZHk6IEpTT04uc3RyaW5naWZ5KGJvZHkpLAoJCQkJCQloZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vanNvbiIgfSwKCQkJCQkJbWV0aG9kOiAiUE9TVCIsCgkJCQkJfSksCgkJCQkpOwoJCQkJZXhwZWN0KHJlc3BvbnNlLnN0YXR1cykudG9CZSgyMDApOwoJCQkJYXdhaXQgcmVzcG9uc2UudGV4dCgpOwoJCQl9KTsKCQl9CgkJcmV0dXJuIHsKCQkJc2Vzc2lvbklzOiAoZW1haWw6IHN0cmluZyB8IG51bGwpID0+CgkJCQlFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJc3RvcnkudGVsbChlbWFpbCA9PT0gbnVsbCA/ICJBbGljZSBoYXMgbm8gc2Vzc2lvbiIgOiAiQWxpY2UgcmVhZHMgaGVyIGNvb2tpZSBzZXNzaW9uIik7CgkJCQkJY29uc3QgcmVzcG9uc2UgPSBhd2FpdCBmZXRjaChuZXcgUmVxdWVzdChgJHtiYXNlVXJsfS9hcGkvYXV0aC9nZXQtc2Vzc2lvbmAsIHsgY2FjaGU6ICJuby1zdG9yZSIgfSkpOwoJCQkJCWV4cGVjdChyZXNwb25zZS5vaykudG9CZSh0cnVlKTsKCQkJCQlleHBlY3QocmVzcG9uc2Uuc3RhdHVzKS50b0JlKDIwMCk7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCJjb250ZW50LXR5cGUiKSkudG9Db250YWluKCJhcHBsaWNhdGlvbi9qc29uIik7CgkJCQkJZXhwZWN0KHJlc3BvbnNlLmhlYWRlcnMuZ2V0KCJzZXQtY29va2llIikpLnRvQmVOdWxsKCk7CgkJCQkJY29uc3Qgc2Vzc2lvbjogdW5rbm93biA9IGF3YWl0IHJlc3BvbnNlLmpzb24oKTsKCQkJCQljb25zdCByZXN1bHQgPSBhd2FpdCBjbGllbnQuZ2V0U2Vzc2lvbigpOwoJCQkJCWV4cGVjdChyZXN1bHQuZXJyb3IpLnRvQmVOdWxsKCk7CgoJCQkJCWlmIChlbWFpbCA9PT0gbnVsbCkgewoJCQkJCQlleHBlY3Qoc2Vzc2lvbikudG9CZU51bGwoKTsKCQkJCQkJZXhwZWN0KHJlc3VsdC5kYXRhKS50b0JlTnVsbCgpOwoJCQkJCX0gZWxzZSB7CgkJCQkJCWV4cGVjdChzZXNzaW9uKS50b01hdGNoT2JqZWN0KHsgdXNlcjogeyBlbWFpbCB9IH0pOwoJCQkJCQlleHBlY3QocmVzdWx0LmRhdGEpLnRvTWF0Y2hPYmplY3QoeyB1c2VyOiB7IGVtYWlsIH0gfSk7CgkJCQkJfQoJCQkJfSksCgkJCXNpZ25JbjogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgaW4iKTsKCQkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KChhd2FpdCBjbGllbnQuc2lnbkluLmVtYWlsKGFsaWNlKSkuZXJyb3IpLnRvQmVOdWxsKCk7CgkJCQl9KTsKCQkJfSwKCQkJc2lnbk91dDogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgb3V0Iik7CgkJCQlyZXR1cm4gcG9zdCgic2lnbi1vdXQiLCB7fSk7CgkJCX0sCgkJCXNpZ25VcDogKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2lnbnMgdXAiKTsKCQkJCXJldHVybiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJCQkJZXhwZWN0KChhd2FpdCBjbGllbnQuc2lnblVwLmVtYWlsKGFsaWNlKSkuZXJyb3IpLnRvQmVOdWxsKCk7CgkJCQl9KTsKCQkJfSwKCQl9OwoJfSwKfSk7Cg==","path":"src/test-support/cookieApp.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpuZXQiOwppbXBvcnQgcHJvY2VzcyBmcm9tICJub2RlOnByb2Nlc3MiOwppbXBvcnQgeyBmaWxlVVJMVG9QYXRoIH0gZnJvbSAibm9kZTp1cmwiOwppbXBvcnQgeyBEZWZlcnJlZCwgRWZmZWN0LCBSZWRhY3RlZCwgU3RyZWFtIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgQ2hpbGRQcm9jZXNzLCBDaGlsZFByb2Nlc3NTcGF3bmVyIH0gZnJvbSAiZWZmZWN0L3Byb2Nlc3MiOwoKZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIGRlcGxveVBvcnQoKSB7Cgljb25zdCBzZXJ2ZXIgPSBjcmVhdGVTZXJ2ZXIoKTsKCWF3YWl0IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlKSA9PiBzZXJ2ZXIubGlzdGVuKDAsICIxMjcuMC4wLjEiLCByZXNvbHZlKSk7Cgljb25zdCBhZGRyZXNzID0gc2VydmVyLmFkZHJlc3MoKTsKCWlmIChhZGRyZXNzID09PSBudWxsIHx8IHR5cGVvZiBhZGRyZXNzID09PSAic3RyaW5nIikgewoJCXRocm93IG5ldyBFcnJvcigiRXhwZWN0ZWQgYSBUQ1AgYWRkcmVzcyIpOwoJfQoJYXdhaXQgbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUpID0+IHNlcnZlci5jbG9zZSgoKSA9PiByZXNvbHZlKCkpKTsKCXJldHVybiBhZGRyZXNzLnBvcnQ7Cn0KCmV4cG9ydCBjb25zdCBkZXBsb3lDaGlsZCA9IEVmZmVjdC5mbigiVGVzdC5kZXBsb3lDaGlsZCIpKGZ1bmN0aW9uKiAoa2luZDogIndvcmtlciIgfCAid2ViIiB8ICJtaWdyYXRlIiwgdXJsOiBSZWRhY3RlZC5SZWRhY3RlZDxzdHJpbmc+LCBwb3J0ID0gMCkgewoJY29uc3Qgc3Bhd25lciA9IHlpZWxkKiBDaGlsZFByb2Nlc3NTcGF3bmVyLkNoaWxkUHJvY2Vzc1NwYXduZXI7Cgljb25zdCB0YXJnZXQgPSBuZXcgVVJMKFJlZGFjdGVkLnZhbHVlKHVybCkpOwoJdGFyZ2V0LnNlYXJjaFBhcmFtcy5zZXQoImFwcGxpY2F0aW9uX25hbWUiLCBgZGVwbG95XyR7a2luZH1gKTsKCWNvbnN0IGVudHJ5ID0ga2luZCA9PT0gIm1pZ3JhdGUiID8gIi4uL3NlcnZlci9taWdyYXRlLnRzIiA6ICIuL2RlcGxveVByb2Nlc3MudHMiOwoJY29uc3QgY2hpbGQgPSB5aWVsZCogc3Bhd25lci5zcGF3bigKCQlDaGlsZFByb2Nlc3MubWFrZShwcm9jZXNzLmV4ZWNQYXRoLCBbZmlsZVVSTFRvUGF0aChuZXcgVVJMKGVudHJ5LCBpbXBvcnQubWV0YS51cmwpKSwga2luZF0sIHsKCQkJZW52OiB7CgkJCQkiREFUQUJBU0VfVVJMIjogdGFyZ2V0LnRvU3RyaW5nKCksCgkJCQkuLi4oa2luZCA9PT0gIndlYiIgPyB7ICJCRVRURVJfQVVUSF9TRUNSRVQiOiAic3RhcnRlci10ZXN0LXNlY3JldC13aXRoLWF0LWxlYXN0LTMyLWNoYXJhY3RlcnMiLCAiUE9SVCI6IFN0cmluZyhwb3J0KSB9IDoge30pLAoJCQl9LAoJCQlleHRlbmRFbnY6IGZhbHNlLAoJCX0pLAoJKTsKCWNvbnN0IHN0YXJ0ZWQgPSB5aWVsZCogRGVmZXJyZWQubWFrZTxzdHJpbmcsIEVycm9yPigpOwoJY29uc3QgbG9nczogc3RyaW5nW10gPSBbXTsKCWNvbnN0IGVycm9yczogc3RyaW5nW10gPSBbXTsKCXlpZWxkKiBjaGlsZC5zdGRvdXQucGlwZSgKCQlTdHJlYW0uZGVjb2RlVGV4dCgpLAoJCVN0cmVhbS5zcGxpdExpbmVzLAoJCVN0cmVhbS5ydW5Gb3JFYWNoKChsaW5lKSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQlsb2dzLnB1c2gobGluZSk7CgkJCQlpZiAobGluZS5zdGFydHNXaXRoKCJERVBMT1lfUkVBRFkgIikpIHsKCQkJCQl5aWVsZCogRGVmZXJyZWQuc3VjY2VlZChzdGFydGVkLCBsaW5lLnNsaWNlKCJERVBMT1lfUkVBRFkgIi5sZW5ndGgpKTsKCQkJCX0KCQkJfSksCgkJKSwKCQlFZmZlY3QuZW5zdXJpbmcoRGVmZXJyZWQuZmFpbChzdGFydGVkLCBuZXcgRXJyb3IoYCR7a2luZH0gZXhpdGVkIGJlZm9yZSBzdGFydGluZ2ApKSksCgkJRWZmZWN0LmZvcmtTY29wZWQsCgkpOwoJeWllbGQqIGNoaWxkLnN0ZGVyci5waXBlKAoJCVN0cmVhbS5kZWNvZGVUZXh0KCksCgkJU3RyZWFtLnNwbGl0TGluZXMsCgkJU3RyZWFtLnJ1bkZvckVhY2goKGxpbmUpID0+IEVmZmVjdC5zeW5jKCgpID0+IGVycm9ycy5wdXNoKGxpbmUpKSksCgkJRWZmZWN0LmZvcmtTY29wZWQsCgkpOwoJcmV0dXJuIHsgY2hpbGQsIGVycm9ycywgbG9ncywgcmVhZHk6IERlZmVycmVkLmF3YWl0KHN0YXJ0ZWQpLnBpcGUoRWZmZWN0LnRpbWVvdXQoIjIwIHNlY29uZHMiKSksIHVybDogYGh0dHA6Ly8xMjcuMC4wLjE6JHtwb3J0fWAgfTsKfSk7Cg==","path":"src/test-support/deployChild.ts"},{"content":"aW1wb3J0IHByb2Nlc3MgZnJvbSAibm9kZTpwcm9jZXNzIjsKaW1wb3J0IHsgTm9kZVJ1bnRpbWUgfSBmcm9tICJAZWZmZWN0L3BsYXRmb3JtLW5vZGUiOwppbXBvcnQgeyBFZmZlY3QsIExheWVyLCBMb2dnZXIgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBIdHRwU2VydmVyIH0gZnJvbSAiZWZmZWN0L2h0dHAiOwppbXBvcnQgeyBub3RlV29ya2VyIH0gZnJvbSAiI3NlcnZlci9ub3RlV29ya2VyLnRzIjsKaW1wb3J0IHsgc3RhcnRlckhvc3QgfSBmcm9tICIjc2VydmVyL3N0YXJ0ZXJIb3N0LnRzIjsKCmNvbnN0IHJlYWR5ID0KCXByb2Nlc3MuYXJndlsyXSA9PT0gIndvcmtlciIKCQk/IExheWVyLmJ1aWxkKG5vdGVXb3JrZXIoKSkucGlwZShFZmZlY3QuYXMoIndvcmtlciIpKQoJCTogRWZmZWN0LmdlbihmdW5jdGlvbiogKCkgewoJCQkJY29uc3QgY29udGV4dCA9IHlpZWxkKiBMYXllci5idWlsZChzdGFydGVySG9zdCgpKTsKCQkJCWNvbnN0IHNlcnZlciA9IHlpZWxkKiBIdHRwU2VydmVyLkh0dHBTZXJ2ZXIucGlwZShFZmZlY3QucHJvdmlkZUNvbnRleHQoY29udGV4dCkpOwoJCQkJcmV0dXJuIEh0dHBTZXJ2ZXIuZm9ybWF0QWRkcmVzcyhzZXJ2ZXIuYWRkcmVzcyk7CgkJCX0pOwoKY29uc3QgbG9nZ2VyID0gTG9nZ2VyLm1ha2UoKHsgbWVzc2FnZSB9KSA9PiB7Cglwcm9jZXNzLnN0ZG91dC53cml0ZShgRUZGRUNUX0xPRyAke1N0cmluZyhtZXNzYWdlKX1cbmApOwp9KTsKCk5vZGVSdW50aW1lLnJ1bk1haW4oCglFZmZlY3Quc2NvcGVkKAoJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJY29uc3QgYWRkcmVzcyA9IHlpZWxkKiByZWFkeTsKCQkJeWllbGQqIEVmZmVjdC5zeW5jKCgpID0+IHByb2Nlc3Muc3Rkb3V0LndyaXRlKGBERVBMT1lfUkVBRFkgJHthZGRyZXNzfVxuYCkpOwoJCQl5aWVsZCogRWZmZWN0Lm5ldmVyOwoJCX0pLAoJKS5waXBlKEVmZmVjdC5wcm92aWRlKExvZ2dlci5sYXllcihbbG9nZ2VyXSkpKSwKKTsK","path":"src/test-support/deployProcess.ts"},{"content":"aW1wb3J0IHsgTm9kZVNlcnZpY2VzIH0gZnJvbSAiQGVmZmVjdC9wbGF0Zm9ybS1ub2RlIjsKaW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBzdG9yeUtpdCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9zdG9yeUtpdC50cyI7CmltcG9ydCB7IGRlcGxveUNoaWxkLCBkZXBsb3lQb3J0IH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9kZXBsb3lDaGlsZC50cyI7CmltcG9ydCB7IHBvc3RncmVzIH0gZnJvbSAiI3Rlc3Qtc3VwcG9ydC9wb3N0Z3Jlcy50cyI7CgpleHBvcnQgY29uc3QgZGVwbG95bWVudCA9IHN0b3J5S2l0KHsKCWFyb3VuZDogd2l0aElzb2xhdGVkRGF0YWJhc2UsCgljbG9jazogImxpdmUiLAoJY3JlYXRlOiAoKSA9PiAoe30pLAoJbGF5ZXI6IHBvc3RncmVzLAoJbmFtZTogImRlcGxveW1lbnQiLAoJc3RhZ2VzOiBbInNjaGVtYSJdLAoJdmVyYnM6IChfZW5naW5lLCBzdG9yeSkgPT4gKHsKCQltaWdyYXRlOiBFZmZlY3QuZm4oIkRlcGxveW1lbnRTdG9yeS5taWdyYXRlIikoZnVuY3Rpb24qICgpIHsKCQkJc3RvcnkudGVsbCgicnVuIHRoZSBzZWNyZXQtZnJlZSBkZXBsb3ltZW50IG1pZ3JhdGlvbiBjb21tYW5kIik7CgkJCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJCQljb25zdCBtaWdyYXRpb24gPSB5aWVsZCogZGVwbG95Q2hpbGQoIm1pZ3JhdGUiLCBkYXRhYmFzZS51cmwpLnBpcGUoRWZmZWN0LnByb3ZpZGUoTm9kZVNlcnZpY2VzLmxheWVyKSk7CgkJCWNvbnN0IGNvZGUgPSB5aWVsZCogbWlncmF0aW9uLmNoaWxkLmV4aXRDb2RlOwoJCQlzdG9yeS50ZWxsKFsuLi5taWdyYXRpb24ubG9ncywgLi4ubWlncmF0aW9uLmVycm9yc10uam9pbigiXG4iKSk7CgkJCXJldHVybiBjb2RlOwoJCX0pLAoJCXBvcnQ6IEVmZmVjdC5wcm9taXNlKGRlcGxveVBvcnQpLAoJCXN0YXJ0UHJvY2VzczogRWZmZWN0LmZuKCJEZXBsb3ltZW50U3Rvcnkuc3RhcnRQcm9jZXNzIikoZnVuY3Rpb24qIChraW5kOiAid29ya2VyIiB8ICJ3ZWIiLCBwb3J0ID0gMCkgewoJCQlzdG9yeS50ZWxsKGBzdGFydCB0aGUgJHtraW5kfSBwcm9jZXNzYCk7CgkJCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJCQlyZXR1cm4geWllbGQqIGRlcGxveUNoaWxkKGtpbmQsIGRhdGFiYXNlLnVybCwgcG9ydCkucGlwZShFZmZlY3QucHJvdmlkZShOb2RlU2VydmljZXMubGF5ZXIpKTsKCQl9KSwKCX0pLAp9KTsK","path":"src/test-support/deployment.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyLCByZXF1ZXN0IH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBmb3J3YXJkaW5nUHJveHkodXBzdHJlYW06IHN0cmluZykgewoJY29uc3Qgc2VydmVyID0gY3JlYXRlU2VydmVyKChpbmNvbWluZywgcmVzcG9uc2UpID0+IHsKCQljb25zdCBvdXRnb2luZyA9IHJlcXVlc3QoCgkJCWAke3Vwc3RyZWFtfSR7aW5jb21pbmcudXJsfWAsCgkJCXsKCQkJCWhlYWRlcnM6IHsKCQkJCQkuLi5pbmNvbWluZy5oZWFkZXJzLAoJCQkJCWhvc3Q6ICJpbnRlcm5hbC50ZXN0IiwKCQkJCQkieC1mb3J3YXJkZWQtZm9yIjogW2luY29taW5nLmhlYWRlcnNbIngtZm9yd2FyZGVkLWZvciJdLCBpbmNvbWluZy5zb2NrZXQucmVtb3RlQWRkcmVzc10uZmlsdGVyKEJvb2xlYW4pLmpvaW4oIiwgIiksCgkJCQkJIngtZm9yd2FyZGVkLWhvc3QiOiAiYXBwLmV4YW1wbGUiLAoJCQkJCSJ4LWZvcndhcmRlZC1wcm90byI6ICJodHRwcyIsCgkJCQl9LAoJCQkJbWV0aG9kOiBpbmNvbWluZy5tZXRob2QsCgkJCX0sCgkJCShyZXN1bHQpID0+IHsKCQkJCXJlc3BvbnNlLndyaXRlSGVhZChyZXN1bHQuc3RhdHVzQ29kZSA/PyA1MDIsIHJlc3VsdC5oZWFkZXJzKTsKCQkJCXJlc3VsdC5waXBlKHJlc3BvbnNlKTsKCQkJfSwKCQkpOwoJCW91dGdvaW5nLm9uKCJlcnJvciIsICgpID0+IHsKCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDUwMik7CgkJCXJlc3BvbnNlLmVuZCgpOwoJCX0pOwoJCWluY29taW5nLnBpcGUob3V0Z29pbmcpOwoJfSk7CglzZXJ2ZXIubGlzdGVuKHsgaG9zdDogIjo6IiwgaXB2Nk9ubHk6IGZhbHNlLCBwb3J0OiAwIH0pOwoJYXdhaXQgb25jZShzZXJ2ZXIsICJsaXN0ZW5pbmciKTsKCWNvbnN0IGFkZHJlc3MgPSBzZXJ2ZXIuYWRkcmVzcygpOwoJaWYgKGFkZHJlc3MgPT09IG51bGwgfHwgdHlwZW9mIGFkZHJlc3MgPT09ICJzdHJpbmciKSB7CgkJdGhyb3cgbmV3IEVycm9yKCJFeHBlY3RlZCBwcm94eSBUQ1AgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4KCQkJbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gewoJCQkJc2VydmVyLmNsb3NlQWxsQ29ubmVjdGlvbnMoKTsKCQkJCXNlcnZlci5jbG9zZSgoZXJyb3IpID0+IChlcnJvciA9PT0gdW5kZWZpbmVkID8gcmVzb2x2ZSgpIDogcmVqZWN0KGVycm9yKSkpOwoJCQl9KSwKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/forwardingProxy.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnUHJvdmlkZXIsIEVmZmVjdCwgTGF5ZXIsIFJlZGFjdGVkIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgSHR0cFNlcnZlciB9IGZyb20gImVmZmVjdC9odHRwIjsKaW1wb3J0ICogYXMgTmV0QWRkcmVzcyBmcm9tICJlZmZlY3QvbmV0L05ldEFkZHJlc3MiOwppbXBvcnQgeyB2aSB9IGZyb20gInZpdGVzdCI7CmltcG9ydCB7IFBvc3RncmVzVGVzdERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvZGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRlRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL21pZ3JhdGVEYXRhYmFzZS50cyI7CmltcG9ydCB7IGZvcndhcmRpbmdQcm94eSB9IGZyb20gIiN0ZXN0LXN1cHBvcnQvZm9yd2FyZGluZ1Byb3h5LnRzIjsKCmV4cG9ydCBjb25zdCBzZWNyZXQgPSBSZWRhY3RlZC5tYWtlKCJzdGFydGVyLXRlc3Qtc2VjcmV0LXdpdGgtYXQtbGVhc3QtMzItY2hhcmFjdGVycyIpOwpleHBvcnQgY29uc3QgUFVCTElDX1VSTCA9ICJodHRwczovL2FwcC5leGFtcGxlIjsKCmV4cG9ydCBpbnRlcmZhY2UgSG9zdE9wdGlvbnMgewoJcmVhZG9ubHkgYXV0aENsaWVudElwSGVhZGVyPzogc3RyaW5nOwoJcmVhZG9ubHkgZGVwbG95ZWQ/OiBib29sZWFuOwoJcmVhZG9ubHkgcmF0ZUxpbWl0RW5hYmxlZD86IGJvb2xlYW47CglyZWFkb25seSB0cnVzdGVkUHJveHk/OiBzdHJpbmcgfCB1bmRlZmluZWQ7Cn0KCmV4cG9ydCBjb25zdCBzdGFydEhvc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5zdGFydEhvc3QiKShmdW5jdGlvbiogKG9wdGlvbnM6IEhvc3RPcHRpb25zID0ge30pIHsKCS8vIEJldHRlciBBdXRoIGtlZXBzIGl0cyBpbi1tZW1vcnkgcmF0ZS1saW1pdCBidWNrZXRzIGF0IG1vZHVsZSBzY29wZS4KCXZpLnJlc2V0TW9kdWxlcygpOwoJY29uc3QgeyBzdGFydGVySG9zdCB9ID0geWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IGltcG9ydCgiI3NlcnZlci9zdGFydGVySG9zdC50cyIpKTsKCWNvbnN0IGRlcGxveWVkID0gb3B0aW9ucy5kZXBsb3llZCA/PyBmYWxzZTsKCWNvbnN0IGRhdGFiYXNlID0geWllbGQqIFBvc3RncmVzVGVzdERhdGFiYXNlOwoJeWllbGQqIEVmZmVjdC5zY29wZWQobWlncmF0ZURhdGFiYXNlKGRhdGFiYXNlLnVybCkpOwoJY29uc3QgZW52OiBSZWNvcmQ8c3RyaW5nLCBzdHJpbmc+ID0gZGVwbG95ZWQgPyB7ICJIT1NUIjogIjAuMC4wLjAiLCAiUE9SVCI6ICIwIiwgIlBVQkxJQ19VUkwiOiBQVUJMSUNfVVJMIH0gOiB7fTsKCWlmIChvcHRpb25zLnRydXN0ZWRQcm94eSAhPT0gdW5kZWZpbmVkKSB7CgkJZW52LlRSVVNURURfUFJPWFkgPSBvcHRpb25zLnRydXN0ZWRQcm94eTsKCX0KCWlmIChvcHRpb25zLnJhdGVMaW1pdEVuYWJsZWQgIT09IHVuZGVmaW5lZCkgewoJCWVudi5BVVRIX1JBVEVfTElNSVRfRU5BQkxFRCA9IFN0cmluZyhvcHRpb25zLnJhdGVMaW1pdEVuYWJsZWQpOwoJfQoJaWYgKG9wdGlvbnMuYXV0aENsaWVudElwSGVhZGVyICE9PSB1bmRlZmluZWQpIHsKCQllbnYuQVVUSF9DTElFTlRfSVBfSEVBREVSID0gb3B0aW9ucy5hdXRoQ2xpZW50SXBIZWFkZXI7Cgl9Cgljb25zdCBob3N0ID0gc3RhcnRlckhvc3QoeyBkYXRhYmFzZVVybDogZGF0YWJhc2UudXJsLCBzZWNyZXQsIC4uLihkZXBsb3llZCA/IHt9IDogeyBwb3J0OiAwIH0pIH0pLnBpcGUoCgkJTGF5ZXIucHJvdmlkZShDb25maWdQcm92aWRlci5sYXllcihDb25maWdQcm92aWRlci5mcm9tRW52KHsgZW52IH0pKSksCgkpOwoJY29uc3QgY29udGV4dCA9IHlpZWxkKiBMYXllci5idWlsZChob3N0KTsKCWNvbnN0IHNlcnZlciA9IHlpZWxkKiBIdHRwU2VydmVyLkh0dHBTZXJ2ZXIucGlwZShFZmZlY3QucHJvdmlkZUNvbnRleHQoY29udGV4dCkpOwoJaWYgKCFOZXRBZGRyZXNzLmlzSW5ldEFkZHJlc3Moc2VydmVyLmFkZHJlc3MpKSB7CgkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZGllKCJFeHBlY3RlZCBhIFRDUCBzZXJ2ZXIiKTsKCX0KCWNvbnN0IHVwc3RyZWFtID0gYGh0dHA6Ly8xMjcuMC4wLjE6JHtzZXJ2ZXIuYWRkcmVzcy5wb3J0fWA7Cgljb25zdCBwcm94eSA9IGRlcGxveWVkCgkJPyB5aWVsZCogRWZmZWN0LmFjcXVpcmVSZWxlYXNlKAoJCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gZm9yd2FyZGluZ1Byb3h5KHVwc3RyZWFtKSksCgkJCQkoZml4dHVyZSkgPT4gRWZmZWN0LnByb21pc2UoKCkgPT4gZml4dHVyZS5jbG9zZSgpKSwKCQkJKQoJCTogdW5kZWZpbmVkOwoJY29uc3QgYmFzZVVybCA9IHByb3h5Py51cmwgPz8gdXBzdHJlYW07CglyZXR1cm4geyBiYXNlVXJsLCBjb250ZXh0LCBvcmlnaW46IGRlcGxveWVkID8gUFVCTElDX1VSTCA6IGJhc2VVcmwgfTsKfSk7CgpleHBvcnQgdHlwZSBSdW5uaW5nSG9zdCA9IEVmZmVjdC5TdWNjZXNzPFJldHVyblR5cGU8dHlwZW9mIHN0YXJ0SG9zdD4+Owo=","path":"src/test-support/host.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgSHR0cENsaWVudCwgSHR0cENsaWVudFJlcXVlc3QgfSBmcm9tICJlZmZlY3QvaHR0cCI7CmltcG9ydCAqIGFzIEF0b21SZWdpc3RyeSBmcm9tICJlZmZlY3QvcmVhY3Rpdml0eS9BdG9tUmVnaXN0cnkiOwppbXBvcnQgeyBleHBlY3QsIHZpIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgbWFrZU5vdGVzQ2xpZW50IH0gZnJvbSAiI2NsaWVudC9tYWtlTm90ZXMudHMiOwppbXBvcnQgdHlwZSB7IFJ1bm5pbmdIb3N0IH0gZnJvbSAiLi9ob3N0LnRzIjsKCmV4cG9ydCBjb25zdCBsaXZlTm90ZXMgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5saXZlTm90ZXMiKShmdW5jdGlvbiogKGhvc3Q6IFJ1bm5pbmdIb3N0LCBjb29raWU6IHN0cmluZykgewoJY29uc3QgY2xpZW50ID0gbWFrZU5vdGVzQ2xpZW50KGAke2hvc3QuYmFzZVVybH0vcnBjYCwgKHRyYW5zcG9ydCkgPT4KCQlIdHRwQ2xpZW50Lm1hcFJlcXVlc3QodHJhbnNwb3J0LCBIdHRwQ2xpZW50UmVxdWVzdC5zZXRIZWFkZXJzKHsgY29va2llLCBvcmlnaW46IGhvc3Qub3JpZ2luIH0pKSwKCSk7Cgljb25zdCByZWdpc3RyeSA9IHlpZWxkKiBFZmZlY3QuYWNxdWlyZVJlbGVhc2UoCgkJRWZmZWN0LnN5bmMoKCkgPT4gQXRvbVJlZ2lzdHJ5Lm1ha2UoKSksCgkJKHZhbHVlKSA9PiBFZmZlY3Quc3luYygoKSA9PiB2YWx1ZS5kaXNwb3NlKCkpLAoJKTsKCWNvbnN0IGxpc3QgPSBjbGllbnQuYXBpLmxpc3QucXVlcnkoKTsKCXJlZ2lzdHJ5Lm1vdW50KGxpc3QpOwoJcmVnaXN0cnkubW91bnQoY2xpZW50LmNvbm5lY3Rpb24pOwoJeWllbGQqIEVmZmVjdC5wcm9taXNlKCgpID0+IHZpLndhaXRGb3IoKCkgPT4gZXhwZWN0KHJlZ2lzdHJ5LmdldChjbGllbnQuc3RhdHVzKS5jb25uZWN0aW9uKS50b0JlKCJsaXZlIikpKTsKCXJldHVybiB7IGNsaWVudCwgbGlzdCwgcmVnaXN0cnkgfTsKfSk7Cg==","path":"src/test-support/liveNotes.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IG1pZ3JhdGlvblVwZ3JhZGUgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9taWdyYXRpb25VcGdyYWRlLnRzIjsKaW1wb3J0IHsgd2l0aElzb2xhdGVkRGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC93aXRoSXNvbGF0ZWREYXRhYmFzZS50cyI7CmltcG9ydCB7IHN0b3J5S2l0IH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L3N0b3J5S2l0LnRzIjsKaW1wb3J0IHsgYXV0aERhdGFiYXNlIH0gZnJvbSAiI3NlcnZlci9hdXRoRGF0YWJhc2UudHMiOwppbXBvcnQgeyBtaWdyYXRpb25zIH0gZnJvbSAiI3NlcnZlci9taWdyYXRpb25zLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIjdGVzdC1zdXBwb3J0L3Bvc3RncmVzLnRzIjsKCmV4cG9ydCBjb25zdCBtaWdyYXRpb24gPSBzdG9yeUtpdCh7Cglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCWNyZWF0ZTogKCkgPT4gKHsgdXBUbzogMCB9KSwKCWxheWVyOiBwb3N0Z3JlcywKCW5hbWU6ICJub3RlcyBtaWdyYXRpb24iLAoJc3RhZ2VzOiBbInNjaGVtYSJdLAoJdmVyYnM6IChlbmdpbmUsIHN0b3J5KSA9PiAoewoJCXVwZ3JhZGU6IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LnVwZ3JhZGUiKShmdW5jdGlvbiogKCkgewoJCQlzdG9yeS50ZWxsKGB1cGdyYWRlIHRoZSBub3RlcyBzY2hlbWEgZnJvbSBtaWdyYXRpb24gJHtlbmdpbmUudXBUb31gKTsKCQkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlLnVybCk7CgkJCXJldHVybiB5aWVsZCogbWlncmF0aW9uVXBncmFkZSh7IG1pZ3JhdGlvbnM6IHsgLi4ubWlncmF0aW9ucyhwb29sKSwgbG9ja1RpbWVvdXQ6ICI1IHNlY29uZHMiIH0sIHRhYmxlOiAic3RhcnRlcl9ub3RlcyIsIHVwVG86IGVuZ2luZS51cFRvIH0pOwoJCX0pLAoJfSksCn0pOwoKZXhwb3J0IGZ1bmN0aW9uIGJlZm9yZVZlcnNpb25lZE5vdGVzKCkgewoJcmV0dXJuIG1pZ3JhdGlvbi50cmFpdCgic2NoZW1hIiwgInRoZSBub3RlcyBzY2hlbWEgcHJlZGF0ZXMgdmVyc2lvbmVkIHdyaXRlcyIsIChlbmdpbmUpID0+IHsKCQllbmdpbmUudXBUbyA9IDQ7Cgl9KTsKfQo=","path":"src/test-support/migration.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0LCBMYXllciwgUHViU3ViLCBTdHJlYW0gfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgKiBhcyBBdG9tUnBjIGZyb20gImVmZmVjdC9yZWFjdGl2aXR5L0F0b21ScGMiOwppbXBvcnQgeyBScGNUZXN0IH0gZnJvbSAiZWZmZWN0L3JwYyI7CmltcG9ydCB7IGJpbmQgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC1jb250cmFjdC9iaW5kLnRzIjsKaW1wb3J0IHsgdHlwZSBMaXZlSGludCwgbGl2ZSB9IGZyb20gIkBzaGl2YWVkZXYvZWZmZWN0LWNvbnRyYWN0L2xpdmUudHMiOwppbXBvcnQgeyBDb25mbGljdCwgTm90Rm91bmQsIFVuYXV0aG9yaXplZCB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vZXJyb3JzL3RheG9ub215LnRzIjsKaW1wb3J0IHsgSWRlbnRpdHksIFNlc3Npb25Vc2VyIH0gZnJvbSAiQHNoaXZhZWRldi9wbGF0Zm9ybS9ycGMvaWRlbnRpdHkudHMiOwppbXBvcnQgeyBBdXRoZW50aWNhdGVkVXNlciB9IGZyb20gIkBzaGl2YWVkZXYvcGxhdGZvcm0vcnBjL21pZGRsZXdhcmUudHMiOwppbXBvcnQgeyBDcmVhdGUsIHR5cGUgTm90ZSwgTm90ZXMsIG5vdGVzLCBTdWJzY3JpYmUsIFVwZGF0ZSB9IGZyb20gIiNub3Rlcy50cyI7CgpleHBvcnQgZnVuY3Rpb24gbm90ZXNDbGllbnQoaW5pdGlhbDogcmVhZG9ubHkgKHR5cGVvZiBOb3RlLlR5cGUpW10gPSBbXSkgewoJY29uc3Qgcm93cyA9IFsuLi5pbml0aWFsXTsKCWNvbnN0IGNhbGxzOiBzdHJpbmdbXSA9IFtdOwoJY29uc3QgaGludHMgPSBFZmZlY3QucnVuU3luYyhQdWJTdWIudW5ib3VuZGVkPExpdmVIaW50PigpKTsKCWNvbnN0IHNlc3Npb24gPSB7IHNpZ25lZEluOiB0cnVlIH07Cgljb25zdCBhdXRoZW50aWNhdGlvbiA9IExheWVyLnN1Y2NlZWQoQXV0aGVudGljYXRlZFVzZXIsIChlZmZlY3QpID0+CgkJc2Vzc2lvbi5zaWduZWRJbgoJCQk/IGVmZmVjdC5waXBlKAoJCQkJCUVmZmVjdC5wcm92aWRlU2VydmljZShJZGVudGl0eSwgeyBpZDogImFsaWNlIiB9KSwKCQkJCQlFZmZlY3QucHJvdmlkZVNlcnZpY2UoU2Vzc2lvblVzZXIsIHsgZW1haWw6ICJhbGljZUBzdGFydGVyLnRlc3QiLCBpZDogImFsaWNlIiwgbmFtZTogIkFsaWNlIiB9KSwKCQkJCSkKCQkJOiBFZmZlY3QuZmFpbChuZXcgVW5hdXRob3JpemVkKHsgbWVzc2FnZTogIkF1dGhlbnRpY2F0aW9uIHJlcXVpcmVkIiB9KSksCgkpOwoJZnVuY3Rpb24gZ2V0KGlkOiBudW1iZXIpIHsKCQlyZXR1cm4gRWZmZWN0LnN1c3BlbmQoKCkgPT4gewoJCQljb25zdCByb3cgPSByb3dzLmZpbmQoKG5vdGUpID0+IG5vdGUuaWQgPT09IGlkKTsKCQkJcmV0dXJuIHJvdyA9PT0gdW5kZWZpbmVkID8gRWZmZWN0LmZhaWwobmV3IE5vdEZvdW5kKHsgbWVzc2FnZTogIk5vdGUgbm90IGZvdW5kIiB9KSkgOiBFZmZlY3Quc3VjY2VlZCh7IC4uLnJvdyB9KTsKCQl9KTsKCX0KCWZ1bmN0aW9uIGNvbmZsaWN0KCkgewoJCXJldHVybiBuZXcgQ29uZmxpY3QoeyBtZXNzYWdlOiAiVGhpcyBub3RlIGNoYW5nZWQuIFJlZnJlc2ggYW5kIHJldmlldyB5b3VyIGRyYWZ0IGJlZm9yZSB0cnlpbmcgYWdhaW4uIiB9KTsKCX0KCWNvbnN0IGhhbmRsZXJzID0gTm90ZXMudG9MYXllcih7CgkJIm5vdGVzLmNyZWF0ZSI6ICh7IHRpdGxlIH0pID0+CgkJCXRpdGxlLnRyaW0oKSA9PT0gInJlc2VydmVkIgoJCQkJPyBDcmVhdGUucmVqZWN0LkludmFsaWQoeyBmaWVsZDogInRpdGxlIiwgbWVzc2FnZTogIkNob29zZSBhbm90aGVyIHRpdGxlIiB9KQoJCQkJOiBFZmZlY3Quc3luYygoKSA9PiB7CgkJCQkJCWNhbGxzLnB1c2goImNyZWF0ZSIpOwoJCQkJCQljb25zdCByb3cgPSB7IGlkOiByb3dzLmxlbmd0aCArIDEsIHRpdGxlOiB0aXRsZS50cmltKCksIHZlcnNpb246IDAsIHdvcmRDb3VudDogbnVsbCB9OwoJCQkJCQlyb3dzLnVuc2hpZnQocm93KTsKCQkJCQkJcmV0dXJuIHJvdzsKCQkJCQl9KSwKCQkibm90ZXMuZGVsZXRlIjogKGlucHV0KSA9PgoJCQlFZmZlY3QuZ2VuKGZ1bmN0aW9uKiAoKSB7CgkJCQljYWxscy5wdXNoKCJkZWxldGUiKTsKCQkJCWNvbnN0IHJvdyA9IHlpZWxkKiBnZXQoaW5wdXQuaWQpOwoJCQkJaWYgKHJvdy52ZXJzaW9uICE9PSBpbnB1dC52ZXJzaW9uKSB7CgkJCQkJcmV0dXJuIHlpZWxkKiBFZmZlY3QuZmFpbChjb25mbGljdCgpKTsKCQkJCX0KCQkJCXJvd3Muc3BsaWNlKAoJCQkJCXJvd3MuZmluZEluZGV4KChub3RlKSA9PiBub3RlLmlkID09PSByb3cuaWQpLAoJCQkJCTEsCgkJCQkpOwoJCQl9KSwKCQkibm90ZXMuZ2V0IjogKHsgaWQgfSkgPT4KCQkJRWZmZWN0LnRhcChnZXQoaWQpLCAoKSA9PgoJCQkJRWZmZWN0LnN5bmMoKCkgPT4gewoJCQkJCWNhbGxzLnB1c2goImdldCIpOwoJCQkJfSksCgkJCSksCgkJIm5vdGVzLmxpc3QiOiAoKSA9PgoJCQlFZmZlY3Quc3luYygoKSA9PiB7CgkJCQljYWxscy5wdXNoKCJsaXN0Iik7CgkJCQlyZXR1cm4gWy4uLnJvd3NdOwoJCQl9KSwKCQkibm90ZXMuc3Vic2NyaWJlIjogKCkgPT4gU3RyZWFtLmZyb21QdWJTdWIoaGludHMpLAoJCSJub3Rlcy51cGRhdGUiOiAoaW5wdXQpID0+CgkJCUVmZmVjdC5nZW4oZnVuY3Rpb24qICgpIHsKCQkJCWNhbGxzLnB1c2goInVwZGF0ZSIpOwoJCQkJY29uc3Qgcm93ID0geWllbGQqIGdldChpbnB1dC5pZCk7CgkJCQlpZiAocm93LnZlcnNpb24gIT09IGlucHV0LnZlcnNpb24pIHsKCQkJCQlyZXR1cm4geWllbGQqIEVmZmVjdC5mYWlsKGNvbmZsaWN0KCkpOwoJCQkJfQoJCQkJaWYgKGlucHV0LnRpdGxlLnRyaW0oKSA9PT0gInJlc2VydmVkIikgewoJCQkJCXJldHVybiB5aWVsZCogVXBkYXRlLnJlamVjdC5JbnZhbGlkKHsgZmllbGQ6ICJ0aXRsZSIsIG1lc3NhZ2U6ICJDaG9vc2UgYW5vdGhlciB0aXRsZSIgfSk7CgkJCQl9CgkJCQljb25zdCBzYXZlZCA9IHsgLi4ucm93LCB0aXRsZTogaW5wdXQudGl0bGUudHJpbSgpLCB2ZXJzaW9uOiByb3cudmVyc2lvbiArIDEsIHdvcmRDb3VudDogbnVsbCB9OwoJCQkJcm93c1tyb3dzLmZpbmRJbmRleCgobm90ZSkgPT4gbm90ZS5pZCA9PT0gcm93LmlkKV0gPSBzYXZlZDsKCQkJCXJldHVybiBzYXZlZDsKCQkJfSksCgkJIm5vdGVzLndob2FtaSI6ICgpID0+IEVmZmVjdC5tYXAoU2Vzc2lvblVzZXIsICh1c2VyKSA9PiB1c2VyKSwKCX0pOwoJY2xhc3MgQ2xpZW50IGV4dGVuZHMgQXRvbVJwYy5TZXJ2aWNlPENsaWVudD4oKSgic3RhcnRlci9Ob3Rlc0NsaWVudCIsIHsKCQlncm91cDogTm90ZXMsCgkJbWFrZUVmZmVjdDogUnBjVGVzdC5tYWtlQ2xpZW50KE5vdGVzLCB7IGZsYXR0ZW46IHRydWUgfSksCgkJcHJvdG9jb2w6IGhhbmRsZXJzLnBpcGUoTGF5ZXIucHJvdmlkZU1lcmdlKGF1dGhlbnRpY2F0aW9uKSksCgl9KSB7fQoJY29uc3QgYXBpID0gYmluZChOb3RlcywgQ2xpZW50KTsKCWNvbnN0IHN1YnNjcmlwdGlvbiA9IGxpdmUoQ2xpZW50LnJ1bnRpbWUsIHsgcmVzeW5jS2V5czogU3Vic2NyaWJlLnJlYWRzKHVuZGVmaW5lZCksIHN0cmVhbTogYXBpLnN1YnNjcmliZS5ydW4odW5kZWZpbmVkKSB9KTsKCWZ1bmN0aW9uIGZpbmlzaE5vdGUoaWQ6IG51bWJlciwgd29yZENvdW50OiBudW1iZXIpIHsKCQljb25zdCBpbmRleCA9IHJvd3MuZmluZEluZGV4KChub3RlKSA9PiBub3RlLmlkID09PSBpZCk7CgkJY29uc3Qgcm93ID0gcm93c1tpbmRleF07CgkJaWYgKHJvdyAhPT0gdW5kZWZpbmVkKSB7CgkJCXJvd3NbaW5kZXhdID0geyAuLi5yb3csIHZlcnNpb246IHJvdy52ZXJzaW9uICsgMSwgd29yZENvdW50IH07CgkJfQoJCXJldHVybiBFZmZlY3QucnVuUHJvbWlzZShQdWJTdWIucHVibGlzaChoaW50cywgeyBfdGFnOiAiQ2hhbmdlZCIsIGtleXM6IFtub3Rlcy5pdGVtKGlkKV0gfSkpOwoJfQoJZnVuY3Rpb24gcmV2aXNlTm90ZShpZDogbnVtYmVyLCB0aXRsZTogc3RyaW5nLCBub3RpZnkgPSB0cnVlKSB7CgkJY29uc3QgaW5kZXggPSByb3dzLmZpbmRJbmRleCgobm90ZSkgPT4gbm90ZS5pZCA9PT0gaWQpOwoJCWNvbnN0IHJvdyA9IHJvd3NbaW5kZXhdOwoJCWlmIChyb3cgIT09IHVuZGVmaW5lZCkgewoJCQlyb3dzW2luZGV4XSA9IHsgLi4ucm93LCB0aXRsZSwgdmVyc2lvbjogcm93LnZlcnNpb24gKyAxIH07CgkJfQoJCXJldHVybiBub3RpZnkgPyBFZmZlY3QucnVuUHJvbWlzZShQdWJTdWIucHVibGlzaChoaW50cywgeyBfdGFnOiAiQ2hhbmdlZCIsIGtleXM6IFtub3Rlcy5pdGVtKGlkKV0gfSkpLnRoZW4oKCkgPT4gdW5kZWZpbmVkKSA6IFByb21pc2UucmVzb2x2ZSgpOwoJfQoJcmV0dXJuIHsgYXBpLCBjYWxscywgZmluaXNoTm90ZSwgcmV2aXNlTm90ZSwgcnVudGltZTogQ2xpZW50LnJ1bnRpbWUsIHNlc3Npb24sIC4uLnN1YnNjcmlwdGlvbiB9Owp9Cg==","path":"src/test-support/notesClient.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvYXV0aFByb3ZpZGVyKCkgewoJY29uc3QgcmVxdWVzdHM6IHsgcmVhZG9ubHkgbWV0aG9kOiBzdHJpbmcgfCB1bmRlZmluZWQ7IHJlYWRvbmx5IHBhdGg6IHN0cmluZzsgcmVhZG9ubHkgYm9keTogc3RyaW5nOyByZWFkb25seSBjb29raWU6IHN0cmluZyB8IHVuZGVmaW5lZCB9W10gPSBbXTsKCWNvbnN0IHNlcnZlciA9IGNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQljb25zdCB1cmwgPSBuZXcgVVJMKHJlcXVlc3QudXJsID8/ICIvIiwgImh0dHBzOi8vZ2l0aHViLmNvbSIpOwoJCWNvbnN0IGNodW5rczogQnVmZmVyW10gPSBbXTsKCQlmb3IgYXdhaXQgKGNvbnN0IGNodW5rIG9mIHJlcXVlc3QpIHsKCQkJY2h1bmtzLnB1c2goQnVmZmVyLmZyb20oY2h1bmspKTsKCQl9CgkJcmVxdWVzdHMucHVzaCh7IGJvZHk6IEJ1ZmZlci5jb25jYXQoY2h1bmtzKS50b1N0cmluZygpLCBjb29raWU6IHJlcXVlc3QuaGVhZGVycy5jb29raWUsIG1ldGhvZDogcmVxdWVzdC5tZXRob2QsIHBhdGg6IHVybC5wYXRobmFtZSB9KTsKCQlpZiAodXJsLnBhdGhuYW1lID09PSAiL2xvZ2luL29hdXRoL2F1dGhvcml6ZSIpIHsKCQkJY29uc3QgY2FsbGJhY2sgPSBuZXcgVVJMKHVybC5zZWFyY2hQYXJhbXMuZ2V0KCJyZWRpcmVjdF91cmkiKSA/PyAiIik7CgkJCWNhbGxiYWNrLnNlYXJjaFBhcmFtcy5zZXQoInN0YXRlIiwgdXJsLnNlYXJjaFBhcmFtcy5nZXQoInN0YXRlIikgPz8gIiIpOwoJCQljYWxsYmFjay5zZWFyY2hQYXJhbXMuc2V0KCJjb2RlIiwgInN0b3J5LWNvZGUiKTsKCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDMwMiwgeyBsb2NhdGlvbjogY2FsbGJhY2suaHJlZiB9KTsKCQkJcmVzcG9uc2UuZW5kKCk7CgkJCXJldHVybjsKCQl9CgkJcmVzcG9uc2Uuc2V0SGVhZGVyKCJjb250ZW50LXR5cGUiLCAiYXBwbGljYXRpb24vanNvbiIpOwoJCXN3aXRjaCAodXJsLnBhdGhuYW1lKSB7CgkJCWNhc2UgIi9sb2dpbi9vYXV0aC9hY2Nlc3NfdG9rZW4iOgoJCQkJcmVzcG9uc2UuZW5kKEpTT04uc3RyaW5naWZ5KHsgImFjY2Vzc190b2tlbiI6ICJzdG9yeS10b2tlbiIsIHNjb3BlOiAicmVhZDp1c2VyLHVzZXI6ZW1haWwiLCAidG9rZW5fdHlwZSI6ICJiZWFyZXIiIH0pKTsKCQkJCWJyZWFrOwoJCQljYXNlICIvdXNlciI6CgkJCQlyZXNwb25zZS5lbmQoSlNPTi5zdHJpbmdpZnkoeyAiYXZhdGFyX3VybCI6IG51bGwsIGVtYWlsOiAiYWxpY2VAc29jaWFsLnRlc3QiLCBpZDogMTIzLCBsb2dpbjogImFsaWNlIiwgbmFtZTogIkFsaWNlIiB9KSk7CgkJCQlicmVhazsKCQkJY2FzZSAiL3VzZXIvZW1haWxzIjoKCQkJCXJlc3BvbnNlLmVuZChKU09OLnN0cmluZ2lmeShbeyBlbWFpbDogImFsaWNlQHNvY2lhbC50ZXN0IiwgcHJpbWFyeTogdHJ1ZSwgdmVyaWZpZWQ6IHRydWUgfV0pKTsKCQkJCWJyZWFrOwoJCQlkZWZhdWx0OgoJCQkJcmVzcG9uc2Uud3JpdGVIZWFkKDQwNCkuZW5kKCk7CgkJfQoJfSk7CglzZXJ2ZXIubGlzdGVuKDAsICIxMjcuMC4wLjEiKTsKCWF3YWl0IG9uY2Uoc2VydmVyLCAibGlzdGVuaW5nIik7Cgljb25zdCBhZGRyZXNzID0gc2VydmVyLmFkZHJlc3MoKTsKCWlmIChhZGRyZXNzID09PSBudWxsIHx8IHR5cGVvZiBhZGRyZXNzID09PSAic3RyaW5nIikgewoJCXRocm93IG5ldyBFcnJvcigiT0F1dGggcHJvdmlkZXIgbmVlZHMgYSBUQ1AgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gc2VydmVyLmNsb3NlKChlcnJvcikgPT4gKGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUoKSkpKSwKCQlyZXF1ZXN0cywKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/oauthProvider.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlTWVtb3J5SGlzdG9yeSwgUm91dGVyUHJvdmlkZXIgfSBmcm9tICJAdGFuc3RhY2svcmVhY3Qtcm91dGVyIjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBleHBlY3QsIG9uVGVzdEZpbmlzaGVkIH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgZXZlbnR1YWxseSwgcmVuZGVyIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtcmVhY3QvdGVzdGluZy50cyI7CmltcG9ydCB7IGFwcFJvdXRlciB9IGZyb20gIiNjbGllbnQvYXBwUm91dGVyLnRzeCI7CmltcG9ydCB7IG5vdGVzQ2xpZW50IH0gZnJvbSAiLi9ub3Rlc0NsaWVudC50cyI7CmltcG9ydCB7IHNjcmVlbkF1dGggfSBmcm9tICIuL3NjcmVlbkF1dGgudHMiOwoKZXhwb3J0IGFzeW5jIGZ1bmN0aW9uIG9wZW5Ob3RlKHRlbGw6IChsaW5lOiBzdHJpbmcpID0+IHZvaWQpIHsKCWNvbnN0IGNsaWVudCA9IG5vdGVzQ2xpZW50KFt7IGlkOiAxLCB0aXRsZTogIkZpcnN0IG5vdGUiLCB2ZXJzaW9uOiAwLCB3b3JkQ291bnQ6IG51bGwgfV0pOwoJY29uc3QgdmlldyA9IGF3YWl0IHJlbmRlcihudWxsKTsKCW9uVGVzdEZpbmlzaGVkKHZpZXcudW5tb3VudCk7Cgljb25zdCByb3V0ZXIgPSBhcHBSb3V0ZXIodmlldy5yZWdpc3RyeSwgY2xpZW50LCBzY3JlZW5BdXRoKCksIGNyZWF0ZU1lbW9yeUhpc3RvcnkoeyBpbml0aWFsRW50cmllczogWyIvbm90ZXMvMSJdIH0pKTsKCWF3YWl0IHZpZXcucmVuZGVyKDxSb3V0ZXJQcm92aWRlciByb3V0ZXI9e3JvdXRlcn0gLz4pOwoJYXdhaXQgZXZlbnR1YWxseSgoKSA9PiBleHBlY3Qodmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKT8udmFsdWUpLnRvQmUoIkZpcnN0IG5vdGUiKSk7Cglhc3luYyBmdW5jdGlvbiBlbnRlcih2YWx1ZTogc3RyaW5nKSB7CgkJdGVsbChgZW50ZXIgJHtKU09OLnN0cmluZ2lmeSh2YWx1ZSl9IGluIHRoZSB0aXRsZWApOwoJCWNvbnN0IGlucHV0ID0gdmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvcigiaW5wdXQiKTsKCQlpZiAoIShpbnB1dCBpbnN0YW5jZW9mIEhUTUxJbnB1dEVsZW1lbnQpKSB7CgkJCXRocm93IG5ldyBFcnJvcigiTWlzc2luZyB0aXRsZSBpbnB1dCIpOwoJCX0KCQlhd2FpdCBhY3QoKCkgPT4gewoJCQlPYmplY3QuZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yKEhUTUxJbnB1dEVsZW1lbnQucHJvdG90eXBlLCAidmFsdWUiKT8uc2V0Py5jYWxsKGlucHV0LCB2YWx1ZSk7CgkJCWlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIsIHsgYnViYmxlczogdHJ1ZSB9KSk7CgkJfSk7Cgl9Cglhc3luYyBmdW5jdGlvbiBjbGljayhsYWJlbDogc3RyaW5nKSB7CgkJdGVsbChgY2xpY2sgJHtsYWJlbH1gKTsKCQljb25zdCBidXR0b24gPSBbLi4udmlldy5jb250YWluZXIucXVlcnlTZWxlY3RvckFsbCgiYnV0dG9uIildLmZpbmQoKGNhbmRpZGF0ZSkgPT4gY2FuZGlkYXRlLnRleHRDb250ZW50ID09PSBsYWJlbCk7CgkJaWYgKGJ1dHRvbiA9PT0gdW5kZWZpbmVkKSB7CgkJCXRocm93IG5ldyBFcnJvcihgTWlzc2luZyAke2xhYmVsfSBidXR0b25gKTsKCQl9CgkJYXdhaXQgYWN0KCgpID0+IGJ1dHRvbi5jbGljaygpKTsKCX0KCXJldHVybiB7IGNsaWNrLCBjbGllbnQsIGVudGVyLCByb3V0ZXIsIHZpZXcgfTsKfQo=","path":"src/test-support/openNote.tsx"},{"content":"aW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKCmV4cG9ydCBhc3luYyBmdW5jdGlvbiBvdGxwUmVjZWl2ZXIoc3RhdHVzID0gMjAwKSB7Cgljb25zdCByZXF1ZXN0czogeyBib2R5OiBzdHJpbmc7IHBhdGg6IHN0cmluZyB8IHVuZGVmaW5lZDsgdG9rZW46IHN0cmluZyB8IHVuZGVmaW5lZCB9W10gPSBbXTsKCWNvbnN0IHNlcnZlciA9IGNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQljb25zdCBjaHVua3M6IEJ1ZmZlcltdID0gW107CgkJZm9yIGF3YWl0IChjb25zdCBjaHVuayBvZiByZXF1ZXN0KSB7CgkJCWNodW5rcy5wdXNoKEJ1ZmZlci5mcm9tKGNodW5rKSk7CgkJfQoJCXJlcXVlc3RzLnB1c2goeyBib2R5OiBCdWZmZXIuY29uY2F0KGNodW5rcykudG9TdHJpbmcoKSwgcGF0aDogcmVxdWVzdC51cmwsIHRva2VuOiByZXF1ZXN0LmhlYWRlcnNbIngtY29sbGVjdG9yLXRva2VuIl0/LnRvU3RyaW5nKCkgfSk7CgkJcmVzcG9uc2Uud3JpdGVIZWFkKHN0YXR1cykuZW5kKCJ7fSIpOwoJfSk7Cglhd2FpdCBuZXcgUHJvbWlzZTx2b2lkPigocmVzb2x2ZSkgPT4gc2VydmVyLmxpc3RlbigwLCAiMTI3LjAuMC4xIiwgcmVzb2x2ZSkpOwoJY29uc3QgYWRkcmVzcyA9IHNlcnZlci5hZGRyZXNzKCk7CglpZiAoYWRkcmVzcyA9PT0gbnVsbCB8fCB0eXBlb2YgYWRkcmVzcyA9PT0gInN0cmluZyIpIHsKCQl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgcmVjZWl2ZXIgYWRkcmVzcyIpOwoJfQoJcmV0dXJuIHsKCQljbG9zZTogKCkgPT4gbmV3IFByb21pc2U8dm9pZD4oKHJlc29sdmUsIHJlamVjdCkgPT4gc2VydmVyLmNsb3NlKChlcnJvcikgPT4gKGVycm9yID8gcmVqZWN0KGVycm9yKSA6IHJlc29sdmUoKSkpKSwKCQlyZXF1ZXN0cywKCQl1cmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsCgl9Owp9Cg==","path":"src/test-support/otlpReceiver.ts"},{"content":"aW1wb3J0IHsgQ29uZmlnLCBFZmZlY3QsIExheWVyIH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgTWlncmF0b3IgfSBmcm9tICJlZmZlY3Qvc3FsIjsKaW1wb3J0IHsgbWFrZVBvc3RncmVzVGVzdExheWVyIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvcG9zdGdyZXMudHMiOwoKZXhwb3J0IGNvbnN0IHBvc3RncmVzID0gTGF5ZXIudW53cmFwKAoJRWZmZWN0Lm1hcChDb25maWcuUmVkYWN0ZWQoIlBMQVRGT1JNX0VGRkVDVF9TUUxfVEVTVF9EQVRBQkFTRV9VUkwiKS5waXBlKENvbmZpZy5vckVsc2UoKCkgPT4gQ29uZmlnLlJlZGFjdGVkKCJURVNUX0RBVEFCQVNFX1VSTCIpKSksICh1cmwpID0+CgkJbWFrZVBvc3RncmVzVGVzdExheWVyKHsgbWlncmF0aW9uczogeyBsb2FkZXI6IE1pZ3JhdG9yLmZyb21SZWNvcmQoe30pLCBsb2NrVGltZW91dDogIjUgc2Vjb25kcyIgfSwgdXJsIH0pLAoJKSwKKTsK","path":"src/test-support/postgres.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgYXV0aFBvc3QsIGNyZWRlbnRpYWxzLCBub3Rlc0h0dHAgfSBmcm9tICIuL2F1dGhIdHRwLnRzIjsKaW1wb3J0IHR5cGUgeyBSdW5uaW5nSG9zdCB9IGZyb20gIi4vaG9zdC50cyI7CgpleHBvcnQgZnVuY3Rpb24gcmVxdWVzdHMoaG9zdDogUnVubmluZ0hvc3QsIHRlbGw6IChsaW5lOiBzdHJpbmcpID0+IHZvaWQpIHsKCWNvbnN0IGF1dGhlbnRpY2F0ZSA9IEVmZmVjdC5mbigiU3RhcnRlclN0b3J5LmF1dGhlbnRpY2F0ZSIpKGZ1bmN0aW9uKiAobmFtZTogc3RyaW5nLCBwYXRoID0gInNpZ24tdXAvZW1haWwiLCBjb29raWUgPSAiIikgewoJCXRlbGwoYCR7bmFtZX0gY2FsbHMgJHtwYXRofWApOwoJCXJldHVybiB5aWVsZCogYXV0aFBvc3QoaG9zdC5iYXNlVXJsLCBwYXRoLCBwYXRoID09PSAic2lnbi1vdXQiID8ge30gOiBjcmVkZW50aWFscyhuYW1lKSwgY29va2llLCBob3N0Lm9yaWdpbik7Cgl9KTsKCWNvbnN0IG5vdGVzID0gRWZmZWN0LmZuKCJTdGFydGVyU3Rvcnkubm90ZXMiKShmdW5jdGlvbiogKGNvb2tpZSA9ICIiKSB7CgkJY29uc3QgY2xpZW50ID0geWllbGQqIG5vdGVzSHR0cChob3N0LmJhc2VVcmwsIGNvb2tpZSwgaG9zdC5vcmlnaW4pOwoJCWZ1bmN0aW9uIGNhbGw8QSwgRSwgUj4obGluZTogc3RyaW5nLCBlZmZlY3Q6IEVmZmVjdC5FZmZlY3Q8QSwgRSwgUj4pIHsKCQkJcmV0dXJuIEVmZmVjdC5zdXNwZW5kKCgpID0+IHsKCQkJCXRlbGwobGluZSk7CgkJCQlyZXR1cm4gZWZmZWN0OwoJCQl9KTsKCQl9CgkJcmV0dXJuIHsKCQkJY3JlYXRlOiAoaW5wdXQ6IFBhcmFtZXRlcnM8KHR5cGVvZiBjbGllbnQpWyJub3Rlcy5jcmVhdGUiXT5bMF0pID0+CgkJCQljYWxsKGBjcmVhdGUgbm90ZSAke0pTT04uc3RyaW5naWZ5KGlucHV0LnRpdGxlKX1gLCBjbGllbnRbIm5vdGVzLmNyZWF0ZSJdKGlucHV0KSksCgkJCWRlbGV0ZTogKGlucHV0OiBQYXJhbWV0ZXJzPCh0eXBlb2YgY2xpZW50KVsibm90ZXMuZGVsZXRlIl0+WzBdKSA9PgoJCQkJY2FsbChgZGVsZXRlIG5vdGUgJHtpbnB1dC5pZH0gYXQgdmVyc2lvbiAke2lucHV0LnZlcnNpb259YCwgY2xpZW50WyJub3Rlcy5kZWxldGUiXShpbnB1dCkpLAoJCQlnZXQ6IChpbnB1dDogUGFyYW1ldGVyczwodHlwZW9mIGNsaWVudClbIm5vdGVzLmdldCJdPlswXSkgPT4gY2FsbChgb3BlbiBub3RlICR7aW5wdXQuaWR9YCwgY2xpZW50WyJub3Rlcy5nZXQiXShpbnB1dCkpLAoJCQlsaXN0OiAoKSA9PiBjYWxsKCJsaXN0IG5vdGVzIiwgY2xpZW50WyJub3Rlcy5saXN0Il0oKSksCgkJCXVwZGF0ZTogKGlucHV0OiBQYXJhbWV0ZXJzPCh0eXBlb2YgY2xpZW50KVsibm90ZXMudXBkYXRlIl0+WzBdKSA9PgoJCQkJY2FsbChgZWRpdCBub3RlICR7aW5wdXQuaWR9IGF0IHZlcnNpb24gJHtpbnB1dC52ZXJzaW9ufWAsIGNsaWVudFsibm90ZXMudXBkYXRlIl0oaW5wdXQpKSwKCQkJd2hvYW1pOiAoKSA9PiBjYWxsKCJyZWFkIHRoZSBzaWduZWQtaW4gcHJvZmlsZSIsIGNsaWVudFsibm90ZXMud2hvYW1pIl0oKSksCgkJfTsKCX0pOwoJY29uc3QgZm9yZWlnblJlcXVlc3QgPSBFZmZlY3QuZm4oIlN0YXJ0ZXJTdG9yeS5mb3JlaWduUmVxdWVzdCIpKGZ1bmN0aW9uKiAoY29va2llOiBzdHJpbmcpIHsKCQl0ZWxsKCJhIGZvcmVpZ24gb3JpZ2luIGNhbGxzIHByb3RlY3RlZCBSUEMiKTsKCQljb25zdCByZXNwb25zZSA9IHlpZWxkKiBFZmZlY3QucHJvbWlzZSgoKSA9PgoJCQlmZXRjaChgJHtob3N0LmJhc2VVcmx9L3JwY2AsIHsKCQkJCWJvZHk6ICJbXSIsCgkJCQloZWFkZXJzOiB7ICJjb250ZW50LXR5cGUiOiAiYXBwbGljYXRpb24vbmRqc29uIiwgY29va2llLCBvcmlnaW46ICJodHRwczovL2ZvcmVpZ24uZXhhbXBsZSIgfSwKCQkJCW1ldGhvZDogIlBPU1QiLAoJCQl9KSwKCQkpOwoJCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoNDAzKTsKCQl5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gcmVzcG9uc2UudGV4dCgpKTsKCX0pOwoJcmV0dXJuIHsgYXV0aGVudGljYXRlLCBmb3JlaWduUmVxdWVzdCwgbm90ZXMgfTsKfQo=","path":"src/test-support/requests.ts"},{"content":"aW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwoKZXhwb3J0IGZ1bmN0aW9uIHNjcmVlbkFjdGlvbnModGVsbDogKGxpbmU6IHN0cmluZykgPT4gdm9pZCkgewoJcmV0dXJuIHsKCQllbnRlcjogYXN5bmMgKGNvbnRhaW5lcjogSFRNTEVsZW1lbnQsIHZhbHVlOiBzdHJpbmcsIGxhYmVsPzogc3RyaW5nKSA9PiB7CgkJCXRlbGwoYGVudGVyICR7SlNPTi5zdHJpbmdpZnkodmFsdWUpfSBpbiAke2xhYmVsID8/ICJ0aGUgdGl0bGUifWApOwoJCQljb25zdCBmaWVsZCA9IGxhYmVsID09PSB1bmRlZmluZWQgPyB1bmRlZmluZWQgOiBbLi4uY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3JBbGwoImxhYmVsIildLmZpbmQoKGVsZW1lbnQpID0+IGVsZW1lbnQudGV4dENvbnRlbnQgPT09IGxhYmVsKTsKCQkJY29uc3QgaW5wdXQgPSBsYWJlbCA9PT0gdW5kZWZpbmVkID8gY29udGFpbmVyLnF1ZXJ5U2VsZWN0b3IoImlucHV0IikgOiBkb2N1bWVudC5nZXRFbGVtZW50QnlJZChmaWVsZD8uaHRtbEZvciA/PyAiIik7CgkJCWlmICghKGlucHV0IGluc3RhbmNlb2YgSFRNTElucHV0RWxlbWVudCkpIHsKCQkJCXRocm93IG5ldyBFcnJvcihgTWlzc2luZyAke2xhYmVsID8/ICJ0aXRsZSJ9IGlucHV0YCk7CgkJCX0KCQkJYXdhaXQgYWN0KCgpID0+IHsKCQkJCU9iamVjdC5nZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IoSFRNTElucHV0RWxlbWVudC5wcm90b3R5cGUsICJ2YWx1ZSIpPy5zZXQ/LmNhbGwoaW5wdXQsIHZhbHVlKTsKCQkJCWlucHV0LmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJpbnB1dCIsIHsgYnViYmxlczogdHJ1ZSB9KSk7CgkJCX0pOwoJCX0sCgkJc3VibWl0OiBhc3luYyAoY29udGFpbmVyOiBIVE1MRWxlbWVudCkgPT4gewoJCQl0ZWxsKCJzdWJtaXQgdGhlIGZvcm0iKTsKCQkJY29uc3QgZm9ybSA9IGNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJmb3JtIik7CgkJCWlmIChmb3JtID09PSBudWxsKSB7CgkJCQl0aHJvdyBuZXcgRXJyb3IoIk1pc3NpbmcgZm9ybSIpOwoJCQl9CgkJCWF3YWl0IGFjdChhc3luYyAoKSA9PiB7CgkJCQlmb3JtLmRpc3BhdGNoRXZlbnQobmV3IEV2ZW50KCJzdWJtaXQiLCB7IGJ1YmJsZXM6IHRydWUsIGNhbmNlbGFibGU6IHRydWUgfSkpOwoJCQkJYXdhaXQgUHJvbWlzZS5yZXNvbHZlKCk7CgkJCX0pOwoJCX0sCgl9Owp9Cg==","path":"src/test-support/screenActions.ts"},{"content":"aW1wb3J0IHR5cGUgeyBBdXRoQWN0aW9ucyB9IGZyb20gIiNjbGllbnQvYXV0aC50cyI7CgpleHBvcnQgZnVuY3Rpb24gc2NyZWVuQXV0aCgpOiBBdXRoQWN0aW9ucyB7CglmdW5jdGlvbiB1bmF2YWlsYWJsZSgpOiBQcm9taXNlPHN0cmluZyB8IHVuZGVmaW5lZD4gewoJCXJldHVybiBQcm9taXNlLnJlamVjdChuZXcgRXJyb3IoIlRoaXMgc2NyZWVuIGZpeHR1cmUgZG9lcyBub3QgcHJvdmlkZSBhdXRoZW50aWNhdGlvbiIpKTsKCX0KCXJldHVybiB7IHNpZ25PdXQ6IHVuYXZhaWxhYmxlLCBzdWJtaXQ6IHVuYXZhaWxhYmxlIH07Cn0K","path":"src/test-support/screenAuth.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBvcGVuTm90ZSB9IGZyb20gIi4vb3Blbk5vdGUudHN4IjsKaW1wb3J0IHsgc2NyZWVuQWN0aW9ucyB9IGZyb20gIi4vc2NyZWVuQWN0aW9ucy50cyI7CgppbnRlcmZhY2UgU2NyZWVuIHsKCWVkaXRvcjogQXdhaXRlZDxSZXR1cm5UeXBlPHR5cGVvZiBvcGVuTm90ZT4+IHwgdW5kZWZpbmVkOwoJdGVsbDogKGxpbmU6IHN0cmluZykgPT4gdm9pZDsKfQoKZXhwb3J0IGNvbnN0IHNjcmVlbnMgPSBzdG9yeUtpdCh7CgljbG9jazogImxpdmUiLAoJY3JlYXRlOiAoKTogU2NyZWVuID0+ICh7IGVkaXRvcjogdW5kZWZpbmVkLCB0ZWxsOiAoKSA9PiB1bmRlZmluZWQgfSksCglpbnNwZWN0OiAoZW5naW5lKSA9PiAoeyB0ZXh0OiBlbmdpbmUuZWRpdG9yPy52aWV3LmNvbnRhaW5lci50ZXh0Q29udGVudCB9KSwKCW5hbWU6ICJzdGFydGVyIHNjcmVlbiIsCglzdGFnZXM6IFsic2NyZWVuIl0sCgl2ZXJiczogKGVuZ2luZSwgc3RvcnkpID0+IHsKCQllbmdpbmUudGVsbCA9IHN0b3J5LnRlbGw7CgkJcmV0dXJuIHsKCQkJZWRpdG9yOiAoKSA9PiB7CgkJCQlpZiAoZW5naW5lLmVkaXRvciA9PT0gdW5kZWZpbmVkKSB7CgkJCQkJdGhyb3cgbmV3IEVycm9yKCJUaGUgZWRpdG9yIGlzIG5vdCBvcGVuIik7CgkJCQl9CgkJCQlyZXR1cm4gZW5naW5lLmVkaXRvcjsKCQkJfSwKCQkJaW50ZXJhY3Q6IChydW46ICgpID0+IFByb21pc2U8dm9pZD4pID0+IEVmZmVjdC5wcm9taXNlKHJ1biksCgkJCS4uLnNjcmVlbkFjdGlvbnMoc3RvcnkudGVsbCksCgkJfTsKCX0sCn0pOwoKZXhwb3J0IGZ1bmN0aW9uIGVkaXRpbmdOb3RlKCkgewoJcmV0dXJuIHNjcmVlbnMudHJhaXQoInNjcmVlbiIsICJ0aGUgZmlyc3Qgbm90ZSBpcyBvcGVuIGluIHRoZSBlZGl0b3IiLCBmdW5jdGlvbiogKGVuZ2luZSkgewoJCWVuZ2luZS5lZGl0b3IgPSB5aWVsZCogRWZmZWN0LnByb21pc2UoKCkgPT4gb3Blbk5vdGUoKGxpbmUpID0+IGVuZ2luZS50ZWxsKGxpbmUpKSk7Cgl9KTsKfQo=","path":"src/test-support/screens.ts"},{"content":"aW1wb3J0IHsgRWZmZWN0IH0gZnJvbSAiZWZmZWN0IjsKaW1wb3J0IHsgYWZ0ZXJBbGwsIGJlZm9yZUFsbCwgZXhwZWN0IH0gZnJvbSAidml0ZXN0IjsKaW1wb3J0IHsgUG9zdGdyZXNUZXN0RGF0YWJhc2UgfSBmcm9tICJAc2hpdmFlZGV2L2VmZmVjdC10ZXN0LXNxbC9kYXRhYmFzZS50cyI7CmltcG9ydCB7IHdpdGhJc29sYXRlZERhdGFiYXNlIH0gZnJvbSAiQHNoaXZhZWRldi9lZmZlY3QtdGVzdC1zcWwvd2l0aElzb2xhdGVkRGF0YWJhc2UudHMiOwppbXBvcnQgeyBkb21GZXRjaCB9IGZyb20gIkBzaGl2YWVkZXYvdGVzdC1zdG9yeS9kb21GZXRjaC50cyI7CmltcG9ydCB7IGRvbU5hdmlnYXRlIH0gZnJvbSAiQHNoaXZhZWRldi90ZXN0LXN0b3J5L2RvbU5hdmlnYXRlLnRzIjsKaW1wb3J0IHsgc3RvcnlLaXQgfSBmcm9tICJAc2hpdmFlZGV2L3Rlc3Qtc3Rvcnkvc3RvcnlLaXQudHMiOwppbXBvcnQgeyBvYXV0aFByb3ZpZGVyIH0gZnJvbSAiLi9vYXV0aFByb3ZpZGVyLnRzIjsKaW1wb3J0IHsgcG9zdGdyZXMgfSBmcm9tICIuL3Bvc3RncmVzLnRzIjsKaW1wb3J0IHsgc29jaWFsSG9zdCB9IGZyb20gIi4vc29jaWFsSG9zdC50cyI7CmltcG9ydCB7IHNvY2lhbFNjcmVlbiB9IGZyb20gIi4vc29jaWFsU2NyZWVuLnRzeCI7Cgpjb25zdCBvdXRib3VuZDogUmVjb3JkPHN0cmluZywgc3RyaW5nPiA9IHt9OwpsZXQgcHJvdmlkZXI6IEF3YWl0ZWQ8UmV0dXJuVHlwZTx0eXBlb2Ygb2F1dGhQcm92aWRlcj4+OwpiZWZvcmVBbGwoYXN5bmMgKCkgPT4gewoJcHJvdmlkZXIgPSBhd2FpdCBvYXV0aFByb3ZpZGVyKCk7CglPYmplY3QuYXNzaWduKG91dGJvdW5kLCB7ICJhcGkuZ2l0aHViLmNvbSI6IHByb3ZpZGVyLnVybCwgImdpdGh1Yi5jb20iOiBwcm92aWRlci51cmwgfSk7Cn0pOwphZnRlckFsbChhc3luYyAoKSA9PiBwcm92aWRlci5jbG9zZSgpKTsKCmV4cG9ydCBjb25zdCBzb2NpYWxBcHAgPSBzdG9yeUtpdCh7Cglhcm91bmQ6IHdpdGhJc29sYXRlZERhdGFiYXNlLAoJY2xvY2s6ICJsaXZlIiwKCSpjcmVhdGUoKSB7CgkJY29uc3QgZGF0YWJhc2UgPSB5aWVsZCogUG9zdGdyZXNUZXN0RGF0YWJhc2U7CgkJY29uc3QgaG9zdCA9IHlpZWxkKiBzb2NpYWxIb3N0KGRhdGFiYXNlLnVybCk7CgkJY29uc3QgcHJldmlvdXNMb2NhdGlvbiA9IHdpbmRvdy5sb2NhdGlvbi5ocmVmOwoJCXlpZWxkKiBFZmZlY3QuYWRkRmluYWxpemVyKCgpID0+CgkJCUVmZmVjdC5zeW5jKCgpID0+IHsKCQkJCXdpbmRvdy5sb2NhdGlvbi5ocmVmID0gcHJldmlvdXNMb2NhdGlvbjsKCQkJfSksCgkJKTsKCQljb25zdCBmZXRjaCA9IGRvbUZldGNoKGhvc3QuYmFzZVVybCk7CgkJY29uc3Qgc2NyZWVuID0geWllbGQqIEVmZmVjdC5hY3F1aXJlUmVsZWFzZSgKCQkJRWZmZWN0LnByb21pc2UoKCkgPT4gc29jaWFsU2NyZWVuKGhvc3QuYmFzZVVybCwgZmV0Y2gpKSwKCQkJKG1vdW50ZWQpID0+IEVmZmVjdC5wcm9taXNlKCgpID0+IG1vdW50ZWQuY2xvc2UoKSksCgkJKTsKCQlyZXR1cm4geyAuLi5ob3N0LCBmZXRjaCwgc2NyZWVuIH07Cgl9LAoJaW5zcGVjdDogKCkgPT4gKHsgbG9jYXRpb246IHdpbmRvdy5sb2NhdGlvbi5ocmVmIH0pLAoJbGF5ZXI6IHBvc3RncmVzLAoJbmFtZTogInNvY2lhbCBhdXRoIiwKCW91dGJvdW5kLAoJc3RhZ2VzOiBbImFjY291bnQiXSwKCXZlcmJzOiAoeyBiYXNlVXJsLCBmZXRjaCwgcG9vbCwgc2NyZWVuIH0sIHN0b3J5KSA9PiAoewoJCXNpZ25lZEluUGFnZUlzOiAoZW1haWw6IHN0cmluZykgPT4KCQkJRWZmZWN0LnByb21pc2UoYXN5bmMgKCkgPT4gewoJCQkJc3RvcnkudGVsbCgiQWxpY2Ugc2VlcyBoZXIgc2lnbmVkLWluIHBhZ2UgYW5kIHJlYWRzIGhlciBjb29raWUgc2Vzc2lvbiIpOwoJCQkJZXhwZWN0KGRvY3VtZW50LnF1ZXJ5U2VsZWN0b3IoImgxIik/LnRleHRDb250ZW50KS50b0JlKGBTaWduZWQgaW4gYXMgJHtlbWFpbH1gKTsKCQkJCWV4cGVjdChkb2N1bWVudC5jb29raWUpLm5vdC50b0NvbnRhaW4oInNlc3Npb25fdG9rZW4iKTsKCQkJCWV4cGVjdChhd2FpdCAoYXdhaXQgZmV0Y2goIi9hcGkvYXV0aC9nZXQtc2Vzc2lvbiIpKS5qc29uKCkpLnRvTWF0Y2hPYmplY3QoeyB1c2VyOiB7IGVtYWlsIH0gfSk7CgkJCQlleHBlY3QoKGF3YWl0IHBvb2wucXVlcnkoJ3NlbGVjdCAiZW1haWwiIGZyb20gInVzZXIiJykpLnJvd3MpLnRvRXF1YWwoW3sgZW1haWwgfV0pOwoJCQkJZXhwZWN0KChhd2FpdCBwb29sLnF1ZXJ5KCdzZWxlY3QgY291bnQoKik6OmludCBhcyBjb3VudCBmcm9tICJzZXNzaW9uIicpKS5yb3dzKS50b0VxdWFsKFt7IGNvdW50OiAxIH1dKTsKCQkJCWV4cGVjdChwcm92aWRlci5yZXF1ZXN0cy5tYXAoKHsgbWV0aG9kLCBwYXRoIH0pID0+IGAke21ldGhvZH0gJHtwYXRofWApKS50b0VxdWFsKFsKCQkJCQkiR0VUIC9sb2dpbi9vYXV0aC9hdXRob3JpemUiLAoJCQkJCSJQT1NUIC9sb2dpbi9vYXV0aC9hY2Nlc3NfdG9rZW4iLAoJCQkJCSJHRVQgL3VzZXIiLAoJCQkJCSJHRVQgL3VzZXIvZW1haWxzIiwKCQkJCV0pOwoJCQkJZXhwZWN0KHByb3ZpZGVyLnJlcXVlc3RzWzFdPy5ib2R5KS50b0NvbnRhaW4oImNvZGU9c3RvcnktY29kZSIpOwoJCQkJZXhwZWN0KHByb3ZpZGVyLnJlcXVlc3RzLmV2ZXJ5KCh7IGNvb2tpZSB9KSA9PiBjb29raWUgPT09IHVuZGVmaW5lZCkpLnRvQmUodHJ1ZSk7CgkJCX0pLAoJCXNpZ25JbldpdGhHaXRIdWI6ICgpID0+CgkJCUVmZmVjdC5wcm9taXNlKGFzeW5jICgpID0+IHsKCQkJCXN0b3J5LnRlbGwoIkFsaWNlIGNsaWNrcyBTaWduIGluIHdpdGggR2l0SHViIik7CgkJCQlhd2FpdCBzY3JlZW4uY2xpY2soKTsKCQkJCWV4cGVjdCh3aW5kb3cubG9jYXRpb24uaG9zdG5hbWUpLnRvQmUoImdpdGh1Yi5jb20iKTsKCQkJCWNvbnN0IHJlc3BvbnNlID0gYXdhaXQgZG9tTmF2aWdhdGUoKTsKCQkJCWV4cGVjdChyZXNwb25zZS5zdGF0dXMpLnRvQmUoMjAwKTsKCQkJCWV4cGVjdChyZXNwb25zZS5yZWRpcmVjdGVkKS50b0JlKHRydWUpOwoJCQkJZXhwZWN0KGF3YWl0IHJlc3BvbnNlLnRleHQoKSkudG9Db250YWluKCJTaWduZWQgaW4gYXMgYWxpY2VAc29jaWFsLnRlc3QiKTsKCQkJCWV4cGVjdCh3aW5kb3cubG9jYXRpb24uaHJlZikudG9CZShgJHtiYXNlVXJsfS9zaWduZWQtaW5gKTsKCQkJfSksCgl9KSwKfSk7Cg==","path":"src/test-support/socialApp.ts"},{"content":"aW1wb3J0IHsgb25jZSB9IGZyb20gIm5vZGU6ZXZlbnRzIjsKaW1wb3J0IHsgY3JlYXRlU2VydmVyIH0gZnJvbSAibm9kZTpodHRwIjsKaW1wb3J0IHsgYmV0dGVyQXV0aCB9IGZyb20gImJldHRlci1hdXRoIjsKaW1wb3J0IHsgZ2V0TWlncmF0aW9ucyB9IGZyb20gImJldHRlci1hdXRoL2RiL21pZ3JhdGlvbiI7CmltcG9ydCB7IGZyb21Ob2RlSGVhZGVycywgdG9Ob2RlSGFuZGxlciB9IGZyb20gImJldHRlci1hdXRoL25vZGUiOwppbXBvcnQgeyBFZmZlY3QsIHR5cGUgUmVkYWN0ZWQgfSBmcm9tICJlZmZlY3QiOwppbXBvcnQgeyBhdXRoRGF0YWJhc2UgfSBmcm9tICIjc2VydmVyL2F1dGhEYXRhYmFzZS50cyI7CgpleHBvcnQgY29uc3Qgc29jaWFsSG9zdCA9IEVmZmVjdC5mbigiU29jaWFsU3Rvcnkuc29jaWFsSG9zdCIpKGZ1bmN0aW9uKiAoZGF0YWJhc2VVcmw6IFJlZGFjdGVkLlJlZGFjdGVkPHN0cmluZz4pIHsKCWNvbnN0IHBvb2wgPSB5aWVsZCogYXV0aERhdGFiYXNlKGRhdGFiYXNlVXJsKTsKCWNvbnN0IGF1dGggPSBiZXR0ZXJBdXRoKHsKCQlhZHZhbmNlZDogeyB1c2VTZWN1cmVDb29raWVzOiBmYWxzZSB9LAoJCSJiYXNlVVJMIjogeyBhbGxvd2VkSG9zdHM6IFsiMTI3LjAuMC4xOioiXSwgcHJvdG9jb2w6ICJodHRwIiB9LAoJCWRhdGFiYXNlOiBwb29sLAoJCXNlY3JldDogInNvY2lhbC1zdG9yeS1zZWNyZXQtd2l0aC1hdC1sZWFzdC0zMi1jaGFyYWN0ZXJzIiwKCQlzb2NpYWxQcm92aWRlcnM6IHsgZ2l0aHViOiB7IGNsaWVudElkOiAic3RvcnktY2xpZW50IiwgY2xpZW50U2VjcmV0OiAic3Rvcnktc2VjcmV0IiB9IH0sCgkJdHJ1c3RlZE9yaWdpbnM6IFsiaHR0cDovLzEyNy4wLjAuMToqIl0sCgl9KTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJYXdhaXQgKGF3YWl0IGdldE1pZ3JhdGlvbnMoYXV0aC5vcHRpb25zKSkucnVuTWlncmF0aW9ucygpOwoJfSk7Cgljb25zdCBzZXJ2ZXIgPSB5aWVsZCogRWZmZWN0LmFjcXVpcmVSZWxlYXNlKAoJCUVmZmVjdC5zeW5jKCgpID0+CgkJCWNyZWF0ZVNlcnZlcihhc3luYyAocmVxdWVzdCwgcmVzcG9uc2UpID0+IHsKCQkJCWlmIChyZXF1ZXN0LnVybD8uc3RhcnRzV2l0aCgiL2FwaS9hdXRoLyIpKSB7CgkJCQkJYXdhaXQgdG9Ob2RlSGFuZGxlcihhdXRoKShyZXF1ZXN0LCByZXNwb25zZSk7CgkJCQkJcmV0dXJuOwoJCQkJfQoJCQkJY29uc3Qgc2Vzc2lvbiA9IGF3YWl0IGF1dGguYXBpLmdldFNlc3Npb24oeyBoZWFkZXJzOiBmcm9tTm9kZUhlYWRlcnMocmVxdWVzdC5oZWFkZXJzKSB9KTsKCQkJCXJlc3BvbnNlLnNldEhlYWRlcigiY29udGVudC10eXBlIiwgInRleHQvaHRtbCIpOwoJCQkJcmVzcG9uc2UuZW5kKGA8bWFpbj48aDE+JHtzZXNzaW9uID09PSBudWxsID8gIlNpZ24gaW4iIDogYFNpZ25lZCBpbiBhcyAke3Nlc3Npb24udXNlci5lbWFpbH1gfTwvaDE+PC9tYWluPmApOwoJCQl9KSwKCQkpLAoJCShsaXN0ZW5pbmcpID0+IEVmZmVjdC5wcm9taXNlKCgpID0+IG5ldyBQcm9taXNlPHZvaWQ+KChyZXNvbHZlLCByZWplY3QpID0+IGxpc3RlbmluZy5jbG9zZSgoZXJyb3IpID0+IChlcnJvciA/IHJlamVjdChlcnJvcikgOiByZXNvbHZlKCkpKSkpLAoJKTsKCXlpZWxkKiBFZmZlY3QucHJvbWlzZShhc3luYyAoKSA9PiB7CgkJc2VydmVyLmxpc3RlbigwLCAiMTI3LjAuMC4xIik7CgkJYXdhaXQgb25jZShzZXJ2ZXIsICJsaXN0ZW5pbmciKTsKCX0pOwoJY29uc3QgYWRkcmVzcyA9IHNlcnZlci5hZGRyZXNzKCk7CglpZiAoYWRkcmVzcyA9PT0gbnVsbCB8fCB0eXBlb2YgYWRkcmVzcyA9PT0gInN0cmluZyIpIHsKCQlyZXR1cm4geWllbGQqIEVmZmVjdC5kaWUoIlNvY2lhbCBzdG9yeSBob3N0IG5lZWRzIGEgVENQIGFkZHJlc3MiKTsKCX0KCXJldHVybiB7IGJhc2VVcmw6IGBodHRwOi8vMTI3LjAuMC4xOiR7YWRkcmVzcy5wb3J0fWAsIHBvb2wgfTsKfSk7Cg==","path":"src/test-support/socialHost.ts"},{"content":"aW1wb3J0IHsgY3JlYXRlQXV0aENsaWVudCB9IGZyb20gImJldHRlci1hdXRoL3JlYWN0IjsKaW1wb3J0IHsgYWN0IH0gZnJvbSAicmVhY3QiOwppbXBvcnQgeyBjcmVhdGVSb290IH0gZnJvbSAicmVhY3QtZG9tL2NsaWVudCI7CgpleHBvcnQgYXN5bmMgZnVuY3Rpb24gc29jaWFsU2NyZWVuKGJhc2VVcmw6IHN0cmluZywgZmV0Y2g6IHR5cGVvZiBnbG9iYWxUaGlzLmZldGNoKSB7Cgljb25zdCBjbGllbnQgPSBjcmVhdGVBdXRoQ2xpZW50KHsgImJhc2VVUkwiOiBiYXNlVXJsLCBmZXRjaE9wdGlvbnM6IHsgY3VzdG9tRmV0Y2hJbXBsOiBmZXRjaCB9IH0pOwoJY29uc3QgY29udGFpbmVyID0gZG9jdW1lbnQuY3JlYXRlRWxlbWVudCgiZGl2Iik7Cglkb2N1bWVudC5ib2R5LmFwcGVuZChjb250YWluZXIpOwoJY29uc3Qgcm9vdCA9IGNyZWF0ZVJvb3QoY29udGFpbmVyKTsKCWxldCBwZW5kaW5nOiBSZXR1cm5UeXBlPHR5cGVvZiBjbGllbnQuc2lnbkluLnNvY2lhbD4gfCB1bmRlZmluZWQ7Cglhd2FpdCBhY3QoYXN5bmMgKCkgPT4KCQlyb290LnJlbmRlcigKCQkJPGJ1dHRvbgoJCQkJb25DbGljaz17KCkgPT4gewoJCQkJCXBlbmRpbmcgPSBjbGllbnQuc2lnbkluLnNvY2lhbCh7ICJjYWxsYmFja1VSTCI6IGAke2Jhc2VVcmx9L3NpZ25lZC1pbmAsIHByb3ZpZGVyOiAiZ2l0aHViIiB9KTsKCQkJCX19CgkJCQl0eXBlPSJidXR0b24iCgkJCT4KCQkJCVNpZ24gaW4gd2l0aCBHaXRIdWIKCQkJPC9idXR0b24+LAoJCSksCgkpOwoJcmV0dXJuIHsKCQlhc3luYyBjbGljaygpIHsKCQkJYXdhaXQgYWN0KGFzeW5jICgpID0+IHsKCQkJCWNvbnRhaW5lci5xdWVyeVNlbGVjdG9yKCJidXR0b24iKT8uY2xpY2soKTsKCQkJCWNvbnN0IHJlc3VsdCA9IGF3YWl0IHBlbmRpbmc7CgkJCQlpZiAocmVzdWx0Py5lcnJvciAhPT0gbnVsbCkgewoJCQkJCXRocm93IG5ldyBFcnJvcihgU29jaWFsIHNpZ24taW4gZmFpbGVkOiAke0pTT04uc3RyaW5naWZ5KHJlc3VsdCl9YCk7CgkJCQl9CgkJCX0pOwoJCX0sCgkJYXN5bmMgY2xvc2UoKSB7CgkJCWF3YWl0IGFjdChhc3luYyAoKSA9PiByb290LnVubW91bnQoKSk7CgkJCWNvbnRhaW5lci5yZW1vdmUoKTsKCQl9LAoJfTsKfQo=","path":"src/test-support/socialScreen.tsx"},{"content":"ewoJImNvbXBpbGVyT3B0aW9ucyI6IHsKCQkiY3VzdG9tQ29uZGl0aW9ucyI6IFtdLAoJCSJqc3giOiAicmVhY3QtanN4IiwKCQkibGliIjogWyJFU05leHQiLCAiRE9NIiwgIkRPTS5JdGVyYWJsZSJdLAoJCSJza2lwTGliQ2hlY2siOiB0cnVlLAoJCSJ0eXBlcyI6IFsibm9kZSIsICJyZWFjdCIsICJyZWFjdC1kb20iXQoJfSwKCSJleHRlbmRzIjogIkBzaGl2YWVkZXYvcXVhbGl0eS90c2NvbmZpZy9iYXNlLmpzb24iLAoJImluY2x1ZGUiOiBbInNyYyIsICJzY3JpcHQiLCAiLnJhaWx3YXkiLCAidml0ZS5jb25maWcudHMiLCAidml0ZXN0LmNvbmZpZy50cyJdCn0K","path":"tsconfig.json"},{"content":"aW1wb3J0IHRhaWx3aW5kY3NzIGZyb20gIkB0YWlsd2luZGNzcy92aXRlIjsKaW1wb3J0IHJlYWN0IGZyb20gIkB2aXRlanMvcGx1Z2luLXJlYWN0IjsKaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAidml0ZSI7CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoewoJcGx1Z2luczogW3RhaWx3aW5kY3NzKCksIHJlYWN0KCldLAoJcmVzb2x2ZTogeyBjb25kaXRpb25zOiBbXSwgdHNjb25maWdQYXRoczogdHJ1ZSB9LAoJc2VydmVyOiB7CgkJaG9zdDogIjEyNy4wLjAuMSIsCgkJcG9ydDogNTE3MywKCQlwcm94eTogewoJCQkiL2FwaS9hdXRoIjogeyBjaGFuZ2VPcmlnaW46IGZhbHNlLCB0YXJnZXQ6ICJodHRwOi8vMTI3LjAuMC4xOjMwMDAiIH0sCgkJCSIvcnBjIjogeyBjaGFuZ2VPcmlnaW46IGZhbHNlLCB0YXJnZXQ6ICJodHRwOi8vMTI3LjAuMC4xOjMwMDAiIH0sCgkJfSwKCQlzdHJpY3RQb3J0OiB0cnVlLAoJfSwKfSk7Cg==","path":"vite.config.ts"},{"content":"aW1wb3J0IHsgZmlsZVVSTFRvUGF0aCB9IGZyb20gIm5vZGU6dXJsIjsKaW1wb3J0IHsgZGVmaW5lQ29uZmlnIH0gZnJvbSAidml0ZXN0L2NvbmZpZyI7CmltcG9ydCB7IHRlc3RQcm9qZWN0cyB9IGZyb20gIkBzaGl2YWVkZXYvcXVhbGl0eS90ZXN0UHJvamVjdHMudHMiOwoKY29uc3QgdGVzdCA9IHRlc3RQcm9qZWN0cygpOwpmb3IgKGNvbnN0IHByb2plY3Qgb2YgdGVzdC5wcm9qZWN0cyA/PyBbXSkgewoJaWYgKHR5cGVvZiBwcm9qZWN0ID09PSAib2JqZWN0IiAmJiAidGVzdCIgaW4gcHJvamVjdCAmJiBwcm9qZWN0LnRlc3Q/Lm5hbWUgPT09ICJkb20iKSB7CgkJcHJvamVjdC50ZXN0LmVudmlyb25tZW50ID0gZmlsZVVSTFRvUGF0aChpbXBvcnQubWV0YS5yZXNvbHZlKCJAc2hpdmFlZGV2L3Rlc3Qtc3RvcnkvZG9tRW52aXJvbm1lbnQuY29uZmlnLnRzIikpOwoJfQp9CgpleHBvcnQgZGVmYXVsdCBkZWZpbmVDb25maWcoewoJcmVzb2x2ZTogeyBjb25kaXRpb25zOiBbIm1vZHVsZSIsICJicm93c2VyIiwgImRldmVsb3BtZW50fHByb2R1Y3Rpb24iXSB9LAoJc3NyOiB7IHJlc29sdmU6IHsgY29uZGl0aW9uczogWyJub2RlIiwgImRldmVsb3BtZW50fHByb2R1Y3Rpb24iXSB9IH0sCgl0ZXN0OiB7IC4uLnRlc3QsIHNlcnZlcjogeyBkZXBzOiB7IGlubGluZTogWyJiZXR0ZXItYXV0aCJdIH0gfSB9LAp9KTsK","path":"vitest.config.ts"}]