@welshman/app 0.12.4 → 0.12.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (149) hide show
  1. package/dist/app/src/index.d.ts +1 -0
  2. package/dist/app/src/index.d.ts.map +1 -1
  3. package/dist/app/src/index.js +1 -0
  4. package/dist/app/src/index.js.map +1 -1
  5. package/dist/app/src/plugins/base.d.ts +3 -20
  6. package/dist/app/src/plugins/base.d.ts.map +1 -1
  7. package/dist/app/src/plugins/base.js +7 -22
  8. package/dist/app/src/plugins/base.js.map +1 -1
  9. package/dist/app/src/plugins/blockedRelayLists.d.ts +1 -1
  10. package/dist/app/src/plugins/blockedRelayLists.d.ts.map +1 -1
  11. package/dist/app/src/plugins/blockedRelayLists.js +1 -7
  12. package/dist/app/src/plugins/blockedRelayLists.js.map +1 -1
  13. package/dist/app/src/plugins/blossomServerLists.d.ts +1 -1
  14. package/dist/app/src/plugins/blossomServerLists.d.ts.map +1 -1
  15. package/dist/app/src/plugins/blossomServerLists.js +1 -7
  16. package/dist/app/src/plugins/blossomServerLists.js.map +1 -1
  17. package/dist/app/src/plugins/domain.d.ts +7 -0
  18. package/dist/app/src/plugins/domain.d.ts.map +1 -1
  19. package/dist/app/src/plugins/domain.js +11 -0
  20. package/dist/app/src/plugins/domain.js.map +1 -1
  21. package/dist/app/src/plugins/events.d.ts +5 -6
  22. package/dist/app/src/plugins/events.d.ts.map +1 -1
  23. package/dist/app/src/plugins/events.js +24 -38
  24. package/dist/app/src/plugins/events.js.map +1 -1
  25. package/dist/app/src/plugins/feedLists.d.ts +1 -1
  26. package/dist/app/src/plugins/feedLists.d.ts.map +1 -1
  27. package/dist/app/src/plugins/feedLists.js +1 -7
  28. package/dist/app/src/plugins/feedLists.js.map +1 -1
  29. package/dist/app/src/plugins/feeds.d.ts +1 -1
  30. package/dist/app/src/plugins/feeds.d.ts.map +1 -1
  31. package/dist/app/src/plugins/feeds.js +2 -1
  32. package/dist/app/src/plugins/feeds.js.map +1 -1
  33. package/dist/app/src/plugins/followLists.d.ts.map +1 -1
  34. package/dist/app/src/plugins/followLists.js +1 -7
  35. package/dist/app/src/plugins/followLists.js.map +1 -1
  36. package/dist/app/src/plugins/handles.d.ts +1 -1
  37. package/dist/app/src/plugins/handles.d.ts.map +1 -1
  38. package/dist/app/src/plugins/handles.js +2 -2
  39. package/dist/app/src/plugins/handles.js.map +1 -1
  40. package/dist/app/src/plugins/logger.d.ts +1 -1
  41. package/dist/app/src/plugins/logger.d.ts.map +1 -1
  42. package/dist/app/src/plugins/logger.js +1 -1
  43. package/dist/app/src/plugins/logger.js.map +1 -1
  44. package/dist/app/src/plugins/messagingRelayLists.d.ts +1 -1
  45. package/dist/app/src/plugins/messagingRelayLists.d.ts.map +1 -1
  46. package/dist/app/src/plugins/messagingRelayLists.js +1 -9
  47. package/dist/app/src/plugins/messagingRelayLists.js.map +1 -1
  48. package/dist/app/src/plugins/muteLists.d.ts.map +1 -1
  49. package/dist/app/src/plugins/muteLists.js +1 -7
  50. package/dist/app/src/plugins/muteLists.js.map +1 -1
  51. package/dist/app/src/plugins/notify.d.ts +23 -0
  52. package/dist/app/src/plugins/notify.d.ts.map +1 -0
  53. package/dist/app/src/plugins/notify.js +28 -0
  54. package/dist/app/src/plugins/notify.js.map +1 -0
  55. package/dist/app/src/plugins/pinboards.d.ts +1 -1
  56. package/dist/app/src/plugins/pinboards.d.ts.map +1 -1
  57. package/dist/app/src/plugins/pinboards.js +2 -1
  58. package/dist/app/src/plugins/pinboards.js.map +1 -1
  59. package/dist/app/src/plugins/pins.d.ts.map +1 -1
  60. package/dist/app/src/plugins/pins.js +1 -7
  61. package/dist/app/src/plugins/pins.js.map +1 -1
  62. package/dist/app/src/plugins/profiles.d.ts +2 -1
  63. package/dist/app/src/plugins/profiles.d.ts.map +1 -1
  64. package/dist/app/src/plugins/profiles.js +3 -9
  65. package/dist/app/src/plugins/profiles.js.map +1 -1
  66. package/dist/app/src/plugins/relayLists.d.ts +1 -1
  67. package/dist/app/src/plugins/relayLists.d.ts.map +1 -1
  68. package/dist/app/src/plugins/relayLists.js +2 -8
  69. package/dist/app/src/plugins/relayLists.js.map +1 -1
  70. package/dist/app/src/plugins/relayRoles.d.ts +1 -1
  71. package/dist/app/src/plugins/relayRoles.d.ts.map +1 -1
  72. package/dist/app/src/plugins/relayRoles.js +1 -1
  73. package/dist/app/src/plugins/relayRoles.js.map +1 -1
  74. package/dist/app/src/plugins/relays.d.ts +2 -1
  75. package/dist/app/src/plugins/relays.d.ts.map +1 -1
  76. package/dist/app/src/plugins/relays.js.map +1 -1
  77. package/dist/app/src/plugins/roomLists.d.ts +1 -1
  78. package/dist/app/src/plugins/roomLists.d.ts.map +1 -1
  79. package/dist/app/src/plugins/roomLists.js +3 -7
  80. package/dist/app/src/plugins/roomLists.js.map +1 -1
  81. package/dist/app/src/plugins/roomPins.d.ts +1 -1
  82. package/dist/app/src/plugins/roomPins.d.ts.map +1 -1
  83. package/dist/app/src/plugins/roomPins.js +1 -1
  84. package/dist/app/src/plugins/roomPins.js.map +1 -1
  85. package/dist/app/src/plugins/rooms.d.ts +1 -2
  86. package/dist/app/src/plugins/rooms.d.ts.map +1 -1
  87. package/dist/app/src/plugins/rooms.js +1 -2
  88. package/dist/app/src/plugins/rooms.js.map +1 -1
  89. package/dist/app/src/plugins/searchRelayLists.d.ts +1 -1
  90. package/dist/app/src/plugins/searchRelayLists.d.ts.map +1 -1
  91. package/dist/app/src/plugins/searchRelayLists.js +1 -7
  92. package/dist/app/src/plugins/searchRelayLists.js.map +1 -1
  93. package/dist/app/src/plugins/topics.d.ts +2 -1
  94. package/dist/app/src/plugins/topics.d.ts.map +1 -1
  95. package/dist/app/src/plugins/topics.js +2 -2
  96. package/dist/app/src/plugins/topics.js.map +1 -1
  97. package/dist/app/src/plugins/wot.d.ts +1 -1
  98. package/dist/app/src/plugins/wot.d.ts.map +1 -1
  99. package/dist/app/src/plugins/wot.js +1 -2
  100. package/dist/app/src/plugins/wot.js.map +1 -1
  101. package/dist/app/src/plugins/zapGoals.d.ts +1 -1
  102. package/dist/app/src/plugins/zapGoals.d.ts.map +1 -1
  103. package/dist/app/src/plugins/zapGoals.js +1 -1
  104. package/dist/app/src/plugins/zapGoals.js.map +1 -1
  105. package/dist/app/src/plugins/zappers.d.ts +1 -1
  106. package/dist/app/src/plugins/zappers.d.ts.map +1 -1
  107. package/dist/app/src/plugins/zappers.js +2 -2
  108. package/dist/app/src/plugins/zappers.js.map +1 -1
  109. package/dist/app/src/policy.d.ts +4 -0
  110. package/dist/app/src/policy.d.ts.map +1 -1
  111. package/dist/app/src/policy.js +8 -0
  112. package/dist/app/src/policy.js.map +1 -1
  113. package/dist/domain/src/behaviors/Imeta.d.ts +2 -2
  114. package/dist/domain/src/behaviors/Imeta.d.ts.map +1 -1
  115. package/dist/domain/src/behaviors/Imeta.js +3 -5
  116. package/dist/domain/src/behaviors/Imeta.js.map +1 -1
  117. package/dist/domain/src/core/EventWriter.d.ts +3 -7
  118. package/dist/domain/src/core/EventWriter.d.ts.map +1 -1
  119. package/dist/domain/src/core/EventWriter.js +4 -8
  120. package/dist/domain/src/core/EventWriter.js.map +1 -1
  121. package/dist/domain/src/other/Relay.d.ts +21 -0
  122. package/dist/domain/src/other/Relay.d.ts.map +1 -1
  123. package/dist/domain/src/other/Relay.js +6 -0
  124. package/dist/domain/src/other/Relay.js.map +1 -1
  125. package/dist/lib/src/Tools.d.ts +1 -1
  126. package/dist/lib/src/Tools.d.ts.map +1 -1
  127. package/dist/lib/src/Tools.js.map +1 -1
  128. package/dist/net/src/message.d.ts +4 -0
  129. package/dist/net/src/message.d.ts.map +1 -1
  130. package/dist/net/src/message.js +2 -0
  131. package/dist/net/src/message.js.map +1 -1
  132. package/dist/net/src/repository.d.ts +9 -0
  133. package/dist/net/src/repository.d.ts.map +1 -1
  134. package/dist/net/src/repository.js +42 -24
  135. package/dist/net/src/repository.js.map +1 -1
  136. package/dist/net/src/util.d.ts +2 -1
  137. package/dist/net/src/util.d.ts.map +1 -1
  138. package/dist/net/src/util.js +6 -5
  139. package/dist/net/src/util.js.map +1 -1
  140. package/dist/store/src/misc.d.ts +18 -0
  141. package/dist/store/src/misc.d.ts.map +1 -1
  142. package/dist/store/src/misc.js +14 -0
  143. package/dist/store/src/misc.js.map +1 -1
  144. package/dist/store/src/repository.d.ts +24 -12
  145. package/dist/store/src/repository.d.ts.map +1 -1
  146. package/dist/store/src/repository.js +186 -141
  147. package/dist/store/src/repository.js.map +1 -1
  148. package/dist/tsconfig.build.tsbuildinfo +1 -1
  149. package/package.json +15 -15
@@ -1,7 +1,7 @@
1
- import { readable } from "svelte/store";
1
+ import { derived, readable } from "svelte/store";
2
2
  import { on, gt, now, noop, mapPop, LRUCache, call, sortBy, first, } from "@welshman/lib";
3
3
  import { matchFilters, getIdFilters, sortEventsAsc, sortEventsDesc, getIdOrAddress, } from "@welshman/util";
4
- import { deriveDeduplicated } from "./misc.js";
4
+ import { deriveDeduplicated, projection, projectFrom } from "./misc.js";
5
5
  export const getEventsById = ({ filters, repository, includeDeleted }) => {
6
6
  const eventsById = new Map();
7
7
  for (const event of repository.query(filters, { includeDeleted })) {
@@ -9,38 +9,42 @@ export const getEventsById = ({ filters, repository, includeDeleted }) => {
9
9
  }
10
10
  return eventsById;
11
11
  };
12
- export const deriveEventsById = ({ filters, repository, includeDeleted }) => readable(new Map(), set => {
13
- const eventsById = getEventsById({ filters, repository, includeDeleted });
14
- set(eventsById);
15
- return on(repository, "update", ({ added, removed }) => {
16
- let dirty = false;
17
- for (const event of added) {
18
- if (matchFilters(filters, event)) {
19
- dirty = true;
20
- eventsById.set(event.id, event);
21
- }
22
- }
23
- if (!includeDeleted) {
24
- for (const id of removed) {
25
- if (mapPop(id, eventsById)) {
12
+ export const deriveEventsById = (options) => {
13
+ const { filters, repository, includeDeleted } = options;
14
+ const store = readable(new Map(), set => {
15
+ const eventsById = getEventsById(options);
16
+ set(eventsById);
17
+ return on(repository, "update", ({ added, removed }) => {
18
+ let dirty = false;
19
+ for (const event of added) {
20
+ if (matchFilters(filters, event)) {
26
21
  dirty = true;
22
+ eventsById.set(event.id, event);
27
23
  }
28
24
  }
29
- }
30
- if (dirty) {
31
- set(eventsById);
32
- }
25
+ if (!includeDeleted) {
26
+ for (const id of removed) {
27
+ if (mapPop(id, eventsById)) {
28
+ dirty = true;
29
+ }
30
+ }
31
+ }
32
+ if (dirty) {
33
+ set(eventsById);
34
+ }
35
+ });
33
36
  });
34
- });
35
- export const deriveArray = (itemsByIdStore) => deriveDeduplicated(itemsByIdStore, itemsById => Array.from(itemsById.values()));
36
- export const deriveEventsAsc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsAsc(eventsById.values()));
37
- export const deriveEventsDesc = (eventsByIdStore) => deriveDeduplicated(eventsByIdStore, eventsById => sortEventsDesc(eventsById.values()));
37
+ return projection(store, () => getEventsById(options));
38
+ };
39
+ export const deriveArray = (itemsById) => projectFrom(itemsById, $itemsById => Array.from($itemsById.values()));
40
+ export const deriveEventsAsc = (eventsById) => projectFrom(eventsById, $eventsById => sortEventsAsc($eventsById.values()));
41
+ export const deriveEventsDesc = (eventsById) => projectFrom(eventsById, $eventsById => sortEventsDesc($eventsById.values()));
38
42
  export const deriveEvents = (options) => deriveArray(deriveEventsById(options));
39
43
  export const makeDeriveEvent = ({ repository, includeDeleted = false, onDerive }) => {
40
44
  return (idOrAddress, ...args) => {
41
45
  const filters = getIdFilters([idOrAddress]);
42
46
  onDerive?.(filters, ...args);
43
- return readable(undefined, set => {
47
+ const store = readable(undefined, set => {
44
48
  let event = first(repository.query(filters, { includeDeleted }));
45
49
  set(event);
46
50
  return on(repository, "update", ({ added, removed }) => {
@@ -59,6 +63,7 @@ export const makeDeriveEvent = ({ repository, includeDeleted = false, onDerive }
59
63
  }
60
64
  });
61
65
  });
66
+ return projection(store, () => first(repository.query(filters, { includeDeleted })));
62
67
  };
63
68
  };
64
69
  export const getEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => {
@@ -75,83 +80,87 @@ export const getEventsByIdByUrl = ({ filters, tracker, repository, includeDelete
75
80
  }
76
81
  return eventsByIdByUrl;
77
82
  };
78
- export const deriveEventsByIdByUrl = ({ filters, tracker, repository, includeDeleted, }) => readable(new Map(), set => {
79
- const eventsByIdByUrl = getEventsByIdByUrl({ filters, tracker, repository, includeDeleted });
80
- const addEvent = (url, event) => {
81
- if (!matchFilters(filters, event))
82
- return false;
83
- const eventsById = eventsByIdByUrl.get(url);
84
- // The repository swaps a changed copy of a held event in under the same id.
85
- if (eventsById?.get(event.id) === event)
86
- return false;
87
- // Create a new map so we can detect which key changed
88
- const newEventsById = new Map(eventsById);
89
- newEventsById.set(event.id, event);
90
- eventsByIdByUrl.set(url, newEventsById);
91
- return true;
92
- };
93
- const removeEvent = (url, id) => {
94
- const eventsById = eventsByIdByUrl.get(url);
95
- if (eventsById?.has(id)) {
96
- eventsById.delete(id);
97
- if (eventsById.size === 0) {
98
- eventsByIdByUrl.delete(url);
99
- }
100
- else {
101
- // Create a new map so we can detect which key changed
102
- eventsByIdByUrl.set(url, new Map(eventsById));
103
- }
83
+ export const deriveEventsByIdByUrl = (options) => {
84
+ const { filters, tracker, repository, includeDeleted } = options;
85
+ const store = readable(new Map(), set => {
86
+ const eventsByIdByUrl = getEventsByIdByUrl(options);
87
+ const addEvent = (url, event) => {
88
+ if (!matchFilters(filters, event))
89
+ return false;
90
+ const eventsById = eventsByIdByUrl.get(url);
91
+ // The repository swaps a changed copy of a held event in under the same id.
92
+ if (eventsById?.get(event.id) === event)
93
+ return false;
94
+ // Create a new map so we can detect which key changed
95
+ const newEventsById = new Map(eventsById);
96
+ newEventsById.set(event.id, event);
97
+ eventsByIdByUrl.set(url, newEventsById);
104
98
  return true;
105
- }
106
- return false;
107
- };
108
- set(eventsByIdByUrl);
109
- const unsubscribers = [
110
- on(repository, "update", ({ added, removed }) => {
111
- let dirty = false;
112
- for (const event of added) {
113
- for (const url of tracker.getRelays(event.id)) {
114
- dirty = dirty || addEvent(url, event);
99
+ };
100
+ const removeEvent = (url, id) => {
101
+ const eventsById = eventsByIdByUrl.get(url);
102
+ if (eventsById?.has(id)) {
103
+ eventsById.delete(id);
104
+ if (eventsById.size === 0) {
105
+ eventsByIdByUrl.delete(url);
106
+ }
107
+ else {
108
+ // Create a new map so we can detect which key changed
109
+ eventsByIdByUrl.set(url, new Map(eventsById));
115
110
  }
111
+ return true;
116
112
  }
117
- if (!includeDeleted) {
118
- for (const id of removed) {
119
- for (const url of tracker.getRelays(id)) {
120
- dirty = dirty || removeEvent(url, id);
113
+ return false;
114
+ };
115
+ set(eventsByIdByUrl);
116
+ const unsubscribers = [
117
+ on(repository, "update", ({ added, removed }) => {
118
+ let dirty = false;
119
+ for (const event of added) {
120
+ for (const url of tracker.getRelays(event.id)) {
121
+ dirty = dirty || addEvent(url, event);
122
+ }
123
+ }
124
+ if (!includeDeleted) {
125
+ for (const id of removed) {
126
+ for (const url of tracker.getRelays(id)) {
127
+ dirty = dirty || removeEvent(url, id);
128
+ }
129
+ }
130
+ }
131
+ if (dirty) {
132
+ set(eventsByIdByUrl);
133
+ }
134
+ }),
135
+ on(tracker, "add", (id, url) => {
136
+ const event = repository.getEvent(id);
137
+ if (event && addEvent(url, event)) {
138
+ set(eventsByIdByUrl);
139
+ }
140
+ }),
141
+ on(tracker, "remove", (id, url) => {
142
+ if (removeEvent(url, id)) {
143
+ set(eventsByIdByUrl);
144
+ }
145
+ }),
146
+ on(tracker, "load", () => {
147
+ eventsByIdByUrl.clear();
148
+ for (const event of repository.query(filters, { includeDeleted })) {
149
+ for (const url of tracker.getRelays(event.id)) {
150
+ addEvent(url, event);
121
151
  }
122
152
  }
123
- }
124
- if (dirty) {
125
- set(eventsByIdByUrl);
126
- }
127
- }),
128
- on(tracker, "add", (id, url) => {
129
- const event = repository.getEvent(id);
130
- if (event && addEvent(url, event)) {
131
153
  set(eventsByIdByUrl);
132
- }
133
- }),
134
- on(tracker, "remove", (id, url) => {
135
- if (removeEvent(url, id)) {
154
+ }),
155
+ on(tracker, "clear", () => {
156
+ eventsByIdByUrl.clear();
136
157
  set(eventsByIdByUrl);
137
- }
138
- }),
139
- on(tracker, "load", () => {
140
- eventsByIdByUrl.clear();
141
- for (const event of repository.query(filters, { includeDeleted })) {
142
- for (const url of tracker.getRelays(event.id)) {
143
- addEvent(url, event);
144
- }
145
- }
146
- set(eventsByIdByUrl);
147
- }),
148
- on(tracker, "clear", () => {
149
- eventsByIdByUrl.clear();
150
- set(eventsByIdByUrl);
151
- }),
152
- ];
153
- return () => unsubscribers.forEach(call);
154
- });
158
+ }),
159
+ ];
160
+ return () => unsubscribers.forEach(call);
161
+ });
162
+ return projection(store, () => getEventsByIdByUrl(options));
163
+ };
155
164
  export const getEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
156
165
  const initialIds = Array.from(tracker.getIds(url));
157
166
  const initialFilters = filters.map(filter => ({ ids: initialIds, ...filter }));
@@ -161,11 +170,12 @@ export const getEventsByIdForUrl = ({ url, filters, tracker, repository, include
161
170
  }
162
171
  return eventsById;
163
172
  };
164
- export const deriveEventsByIdForUrl = ({ url, filters, tracker, repository, includeDeleted, }) => {
165
- let eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
166
- return readable(eventsById, set => {
173
+ export const deriveEventsByIdForUrl = (options) => {
174
+ const { url, filters, tracker, repository, includeDeleted } = options;
175
+ let eventsById = getEventsByIdForUrl(options);
176
+ const store = readable(eventsById, set => {
167
177
  const reset = () => {
168
- eventsById = getEventsByIdForUrl({ url, filters, tracker, repository, includeDeleted });
178
+ eventsById = getEventsByIdForUrl(options);
169
179
  set(eventsById);
170
180
  };
171
181
  reset();
@@ -210,16 +220,23 @@ export const deriveEventsByIdForUrl = ({ url, filters, tracker, repository, incl
210
220
  ];
211
221
  return () => unsubscribers.forEach(call);
212
222
  });
223
+ return projection(store, () => getEventsByIdForUrl(options));
224
+ };
225
+ const asCollection = (store, pending) => {
226
+ const self = projection(store);
227
+ // Subscribing queues the parses, so a key the index lacks is read, drained, and read again
228
+ const read = (key) => self.get().get(key) ?? Promise.all(pending.values()).then(() => self.get().get(key));
229
+ return { ...self, read };
213
230
  };
231
+ const onParseError = (error) => console.warn("Failed to build an item from an event", error);
214
232
  export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, includeDeleted, }) => {
215
- const deferred = new Map();
233
+ const pending = new Map();
216
234
  const itemsByKey = new Map();
217
235
  const idsByKey = new Map();
218
236
  const keysById = new Map();
219
- return readable(itemsByKey, set => {
220
- const onError = (error) => console.warn("Failed to build an item from an event", error);
237
+ const store = readable(itemsByKey, set => {
221
238
  const addEvent = (event) => {
222
- if (deferred.has(event.id))
239
+ if (pending.has(event.id))
223
240
  return;
224
241
  if (keysById.has(event.id))
225
242
  return;
@@ -237,18 +254,16 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
237
254
  // Commit synchronously when `eventToItem` doesn't need IO, so items are in
238
255
  // place before the initial subscription returns rather than a microtask later
239
256
  if (itemOrPromise instanceof Promise) {
240
- deferred.set(event.id, itemOrPromise);
241
- itemOrPromise
242
- .then(commit)
243
- .catch(onError)
244
- .finally(() => deferred.delete(event.id));
257
+ // Hold the committed promise, so awaiting it means the item is in the index
258
+ const forget = () => pending.delete(event.id);
259
+ pending.set(event.id, itemOrPromise.then(commit).catch(onParseError).finally(forget));
245
260
  }
246
261
  else {
247
262
  commit(itemOrPromise);
248
263
  }
249
264
  }
250
265
  catch (error) {
251
- onError(error);
266
+ onParseError(error);
252
267
  }
253
268
  };
254
269
  for (const event of repository.query(filters, { includeDeleted })) {
@@ -279,6 +294,7 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
279
294
  }
280
295
  });
281
296
  });
297
+ return asCollection(store, pending);
282
298
  };
283
299
  /**
284
300
  * Like `deriveItemsByKey`, but relay-scoped: an event is keyed once per relay
@@ -288,14 +304,18 @@ export const deriveItemsByKey = ({ getKey, filters, repository, eventToItem, inc
288
304
  * on multiple relays.
289
305
  */
290
306
  export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, eventToItem, includeDeleted, revalidateOn, }) => {
291
- const deferred = new Set();
307
+ const pending = new Map();
292
308
  const itemsByKey = new Map();
293
309
  // Which event currently owns each composite key, so a stale event's removal
294
310
  // doesn't clobber the entry a newer replaceable event has taken over.
295
311
  const ownerByKey = new Map();
296
312
  // The composite keys contributed by each event, per relay url, for teardown.
297
313
  const keysById = new Map();
298
- return readable(itemsByKey, set => {
314
+ // What each event parsed to, so a rebuild re-keys it without parsing it again.
315
+ const itemsById = new Map();
316
+ const store = readable(itemsByKey, set => {
317
+ // Held while a catch-up keys its events, so a rebuild emits once rather than per event
318
+ let holding = false;
299
319
  const setKey = (key, id, url, item) => {
300
320
  itemsByKey.set(key, item);
301
321
  ownerByKey.set(key, id);
@@ -316,45 +336,55 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
316
336
  }
317
337
  return false;
318
338
  };
319
- const onError = (error) => console.warn("Failed to build an item from an event", error);
320
339
  const addEvent = (event, urls) => {
321
- const pending = Array.from(urls).filter(url => keysById.get(event.id)?.get(url) === undefined);
322
- if (pending.length === 0)
323
- return;
324
- if (deferred.has(event.id))
325
- return;
340
+ const unkeyed = Array.from(urls).filter(url => keysById.get(event.id)?.get(url) === undefined);
341
+ if (unkeyed.length === 0)
342
+ return false;
343
+ if (pending.has(event.id))
344
+ return false;
326
345
  const commit = (item) => {
346
+ let keyed = false;
327
347
  if (item) {
328
- for (const url of pending) {
348
+ itemsById.set(event.id, item);
349
+ for (const url of unkeyed) {
329
350
  const key = getKey(item, url);
330
351
  if (key !== undefined) {
331
352
  setKey(key, event.id, url, item);
353
+ keyed = true;
332
354
  }
333
355
  }
334
- set(itemsByKey);
356
+ // An item no url keys leaves the index alone, so it owes no emission
357
+ if (keyed && !holding)
358
+ set(itemsByKey);
335
359
  }
360
+ return keyed;
336
361
  };
362
+ const parsed = itemsById.get(event.id);
363
+ // A rebuild clears the keys and keeps the items, so re-keying needs no parse
364
+ if (parsed)
365
+ return commit(parsed);
366
+ let changed = false;
337
367
  try {
338
368
  const itemOrPromise = eventToItem(event);
339
369
  // Commit synchronously when `eventToItem` doesn't need IO, so items are in
340
370
  // place before the initial subscription returns rather than a microtask later
341
371
  if (itemOrPromise instanceof Promise) {
342
- deferred.add(event.id);
343
- itemOrPromise
344
- .then(commit)
345
- .catch(onError)
346
- .finally(() => deferred.delete(event.id));
372
+ // Hold the committed promise, so awaiting it means the item is in the index
373
+ const forget = () => pending.delete(event.id);
374
+ pending.set(event.id, itemOrPromise.then(commit).catch(onParseError).finally(forget));
347
375
  }
348
376
  else {
349
- commit(itemOrPromise);
377
+ changed = commit(itemOrPromise);
350
378
  }
351
379
  }
352
380
  catch (error) {
353
- onError(error);
381
+ onParseError(error);
354
382
  }
383
+ return changed;
355
384
  };
356
385
  const removeEvent = (id) => {
357
386
  const byUrl = mapPop(id, keysById);
387
+ itemsById.delete(id);
358
388
  if (!byUrl)
359
389
  return false;
360
390
  let dirty = false;
@@ -374,16 +404,32 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
374
404
  }
375
405
  return dropKey(key, id);
376
406
  };
377
- const rebuild = () => {
407
+ const catchUp = (cleared = false) => {
408
+ const events = repository.query(filters, { includeDeleted });
409
+ const ids = new Set(events.map(event => event.id));
410
+ let dirty = cleared;
411
+ for (const id of Array.from(keysById.keys())) {
412
+ if (!ids.has(id)) {
413
+ dirty = removeEvent(id) || dirty;
414
+ }
415
+ }
416
+ holding = true;
417
+ for (const event of events) {
418
+ dirty = addEvent(event, tracker.getRelays(event.id)) || dirty;
419
+ }
420
+ holding = false;
421
+ if (dirty)
422
+ set(itemsByKey);
423
+ };
424
+ const clear = () => {
425
+ const dirty = itemsByKey.size > 0;
378
426
  itemsByKey.clear();
379
427
  ownerByKey.clear();
380
428
  keysById.clear();
381
- for (const event of repository.query(filters, { includeDeleted })) {
382
- addEvent(event, tracker.getRelays(event.id));
383
- }
384
- set(itemsByKey);
429
+ return dirty;
385
430
  };
386
- rebuild();
431
+ const rebuild = () => catchUp(clear());
432
+ catchUp();
387
433
  const unsubscribers = [
388
434
  on(repository, "update", ({ added, removed }) => {
389
435
  for (const event of added) {
@@ -413,10 +459,8 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
413
459
  }),
414
460
  on(tracker, "load", rebuild),
415
461
  on(tracker, "clear", () => {
416
- itemsByKey.clear();
417
- ownerByKey.clear();
418
- keysById.clear();
419
- set(itemsByKey);
462
+ if (clear())
463
+ set(itemsByKey);
420
464
  }),
421
465
  ];
422
466
  // Re-evaluate everything when external key state (e.g. relay self pubkeys)
@@ -435,9 +479,10 @@ export const deriveItemsByKeyByUrl = ({ getKey, filters, repository, tracker, ev
435
479
  }
436
480
  return () => unsubscribers.forEach(call);
437
481
  });
482
+ return asCollection(store, pending);
438
483
  };
439
- export const deriveItems = (itemsByKeyStore) => deriveDeduplicated(itemsByKeyStore, itemsByKey => Array.from(itemsByKey.values()));
440
- export const deriveItemsSorted = (sortFn, itemsStore) => deriveDeduplicated(itemsStore, items => sortBy(sortFn, items));
484
+ export const deriveItems = (itemsByKeyStore) => derived(itemsByKeyStore, itemsByKey => Array.from(itemsByKey.values()));
485
+ export const deriveItemsSorted = (sortFn, itemsStore) => derived(itemsStore, items => sortBy(sortFn, items));
441
486
  export const makeDeriveItem = (itemsByKeyStore, onDerive) => {
442
487
  return (key, ...args) => {
443
488
  if (!key)
@@ -464,7 +509,7 @@ export const makeLoadItem = (loadItem, getItem, options = {}) => {
464
509
  const attempts = new LRUCache(maxSize);
465
510
  const pending = new Map();
466
511
  return async (key, ...args) => {
467
- const stale = getItem(key);
512
+ const stale = await getItem(key);
468
513
  // If we have an item, reload if it's relatively recent
469
514
  if (stale && getFetched(key) > now() - timeout) {
470
515
  return stale;
@@ -499,7 +544,7 @@ export const makeLoadItem = (loadItem, getItem, options = {}) => {
499
544
  };
500
545
  };
501
546
  // Miscellaneous other stuff
502
- export const deriveIsDeleted = (repository, event) => readable(false, set => {
547
+ export const deriveIsDeleted = (repository, event) => projection(readable(false, set => {
503
548
  const idOrAddress = getIdOrAddress(event);
504
549
  set(repository.isDeleted(event));
505
550
  return on(repository, "update", ({ removed, added }) => {
@@ -512,5 +557,5 @@ export const deriveIsDeleted = (repository, event) => readable(false, set => {
512
557
  }
513
558
  }
514
559
  });
515
- });
560
+ }), () => repository.isDeleted(event));
516
561
  //# sourceMappingURL=repository.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,QAAQ,EAAW,MAAM,cAAc,CAAA;AAC/C,OAAO,EACL,EAAE,EACF,EAAE,EACF,GAAG,EACH,IAAI,EACJ,MAAM,EACN,QAAQ,EAGR,IAAI,EACJ,MAAM,EACN,KAAK,GACN,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAC,kBAAkB,EAAC,MAAM,WAAW,CAAA;AAY5C,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAoB,EAAE,EAAE;IACxF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAwB,CAAA;IAElD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QAChE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAoB,EAAE,EAAE,CAC3F,QAAQ,CAAa,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE;IACpC,MAAM,UAAU,GAAG,aAAa,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,CAAC,CAAA;IAEvE,GAAG,CAAC,UAAU,CAAC,CAAA;IAEf,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;QACrE,IAAI,KAAK,GAAG,KAAK,CAAA;QAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;gBACjC,KAAK,GAAG,IAAI,CAAA;gBACZ,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACjC,CAAC;QACH,CAAC;QAED,IAAI,CAAC,cAAc,EAAE,CAAC;YACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;gBACzB,IAAI,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC;oBAC3B,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,KAAK,EAAE,CAAC;YACV,GAAG,CAAC,UAAU,CAAC,CAAA;QACjB,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA;AAEJ,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,cAAwC,EAAE,EAAE,CACzE,kBAAkB,CAAC,cAAc,EAAE,SAAS,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEjF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,eAAqC,EAAE,EAAE,CACvE,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,aAAa,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEvF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,eAAqC,EAAE,EAAE,CACxE,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,cAAc,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAExF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAA0B,EAAE,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;AAQlG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAC,UAAU,EAAE,cAAc,GAAG,KAAK,EAAE,QAAQ,EAAe,EAAE,EAAE;IAC9F,OAAO,CAAC,WAAmB,EAAE,GAAG,IAAW,EAAE,EAAE;QAC7C,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;QAE3C,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAA;QAE5B,OAAO,QAAQ,CAAsB,SAAS,EAAE,GAAG,CAAC,EAAE;YACpD,IAAI,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,CAAC,CAAA;YAE9D,GAAG,CAAC,KAAK,CAAC,CAAA;YAEV,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBACrE,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,IAAI,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;4BACrB,GAAG,CAAC,SAAS,CAAC,CAAA;wBAChB,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;oBAC7B,IAAI,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;wBACpC,KAAK,GAAG,QAAQ,CAAA;wBAChB,GAAG,CAAC,KAAK,CAAC,CAAA;oBACZ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAA;AACH,CAAC,CAAA;AAUD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACS,EAAE,EAAE;IAC3B,MAAM,eAAe,GAAoB,IAAI,GAAG,EAAE,CAAA;IAElD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9C,IAAI,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,IAAI,GAAG,EAAE,CAAA;gBACtB,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;YACtC,CAAC;YAED,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,EACpC,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACS,EAAE,EAAE,CAC3B,QAAQ,CAAkB,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE;IACzC,MAAM,eAAe,GAAG,kBAAkB,CAAC,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,CAAC,CAAA;IAE1F,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,KAAmB,EAAE,EAAE;QACpD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;YAAE,OAAO,KAAK,CAAA;QAE/C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAE3C,4EAA4E;QAC5E,IAAI,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK;YAAE,OAAO,KAAK,CAAA;QAErD,sDAAsD;QACtD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;QAEzC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QAClC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;QAEvC,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;IAED,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE;QAC9C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAE3C,IAAI,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;YACxB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAErB,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBAC1B,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAC7B,CAAC;iBAAM,CAAC;gBACN,sDAAsD;gBACtD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;YAC/C,CAAC;YAED,OAAO,IAAI,CAAA;QACb,CAAC;QAED,OAAO,KAAK,CAAA;IACd,CAAC,CAAA;IAED,GAAG,CAAC,eAAe,CAAC,CAAA;IAEpB,MAAM,aAAa,GAAG;QACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;YAC9D,IAAI,KAAK,GAAG,KAAK,CAAA;YAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9C,KAAK,GAAG,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gBACvC,CAAC;YACH,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;wBACxC,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;oBACvC,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,KAAK,EAAE,CAAC;gBACV,GAAG,CAAC,eAAe,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;YAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;YAErC,IAAI,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;gBAClC,GAAG,CAAC,eAAe,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;YAChD,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;gBACzB,GAAG,CAAC,eAAe,CAAC,CAAA;YACtB,CAAC;QACH,CAAC,CAAC;QACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;YACvB,eAAe,CAAC,KAAK,EAAE,CAAA;YAEvB,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;gBAChE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC9C,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC;YAED,GAAG,CAAC,eAAe,CAAC,CAAA;QACtB,CAAC,CAAC;QACF,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;YACxB,eAAe,CAAC,KAAK,EAAE,CAAA;YAEvB,GAAG,CAAC,eAAe,CAAC,CAAA;QACtB,CAAC,CAAC;KACH,CAAA;IAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1C,CAAC,CAAC,CAAA;AAOJ,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,GAAG,EACH,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACU,EAAE,EAAE;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAClD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAC,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,EAAC,CAAC,CAAC,CAAA;IAC5E,MAAM,UAAU,GAAe,IAAI,GAAG,EAAE,CAAA;IAExC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QACvE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CAAC,EACrC,GAAG,EACH,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACU,EAAE,EAAE;IAC5B,IAAI,UAAU,GAAG,mBAAmB,CAAC,EAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,CAAC,CAAA;IAEzF,OAAO,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QAChC,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,UAAU,GAAG,mBAAmB,CAAC,EAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,CAAC,CAAA;YACrF,GAAG,CAAC,UAAU,CAAC,CAAA;QACjB,CAAC,CAAA;QAED,KAAK,EAAE,CAAA;QAEP,MAAM,aAAa,GAAG;YACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBAC9D,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBACpE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;wBAC/B,KAAK,GAAG,IAAI,CAAA;oBACd,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BACvB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;4BACrB,KAAK,GAAG,IAAI,CAAA;wBACd,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,UAAkB,EAAE,EAAE;gBACpD,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBAErC,IAAI,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBAC9E,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;wBACzB,GAAG,CAAC,UAAU,CAAC,CAAA;oBACjB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,UAAkB,EAAE,EAAE;gBACvD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7C,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACrB,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;YAC1B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC;SAC5B,CAAA;QAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAkBD,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAI,EAClC,MAAM,EACN,OAAO,EACP,UAAU,EACV,WAAW,EACX,cAAc,GACO,EAAE,EAAE;IACzB,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA6B,CAAA;IACrD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAa,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAE1C,OAAO,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QAChC,MAAM,OAAO,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;QAEhG,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,EAAE;YACvC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAM;YAClC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAM;YAElC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAE,EAAE;gBAChC,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;oBAExB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;oBACzB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;oBAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;oBAE3B,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAA;YAED,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAExC,2EAA2E;gBAC3E,8EAA8E;gBAC9E,IAAI,aAAa,YAAY,OAAO,EAAE,CAAC;oBACrC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC,CAAA;oBAErC,aAAa;yBACV,IAAI,CAAC,MAAM,CAAC;yBACZ,KAAK,CAAC,OAAO,CAAC;yBACd,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC7C,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,aAAa,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAA;QAED,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;YAChE,QAAQ,CAAC,KAAK,CAAC,CAAA;QACjB,CAAC;QAED,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;YACrE,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBACjC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;oBAEhC,4EAA4E;oBAC5E,0EAA0E;oBAC1E,sDAAsD;oBACtD,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;wBACpC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBACpB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBACtB,KAAK,GAAG,IAAI,CAAA;oBACd,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAsBD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAI,EACvC,MAAM,EACN,OAAO,EACP,UAAU,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,YAAY,GACc,EAAE,EAAE;IAC9B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAU,CAAA;IAClC,MAAM,UAAU,GAAG,IAAI,GAAG,EAAa,CAAA;IACvC,4EAA4E;IAC5E,sEAAsE;IACtE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC5C,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAA;IAEvD,OAAO,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QAChC,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,GAAW,EAAE,IAAO,EAAE,EAAE;YAC/D,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACzB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAEvB,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAE5B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;gBACjB,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACzB,CAAC;YAED,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QACrB,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE;YAC1C,0EAA0E;YAC1E,uCAAuC;YACvC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC/B,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACtB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAEtB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,CAAC,KAAc,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;QAEhG,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,IAAsB,EAAE,EAAE;YAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAA;YAE9F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAM;YAChC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAM;YAElC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAE,EAAE;gBAChC,IAAI,IAAI,EAAE,CAAC;oBACT,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;wBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;wBAE7B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;4BACtB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;wBAClC,CAAC;oBACH,CAAC;oBAED,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAA;YAED,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAExC,2EAA2E;gBAC3E,8EAA8E;gBAC9E,IAAI,aAAa,YAAY,OAAO,EAAE,CAAC;oBACrC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAEtB,aAAa;yBACV,IAAI,CAAC,MAAM,CAAC;yBACZ,KAAK,CAAC,OAAO,CAAC;yBACd,OAAO,CAAC,GAAG,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;gBAC7C,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,aAAa,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,OAAO,CAAC,KAAK,CAAC,CAAA;YAChB,CAAC;QACH,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;YAElC,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAA;YAExB,IAAI,KAAK,GAAG,KAAK,CAAA;YAEjB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,KAAK,CAAA;YACnC,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;YACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC9B,MAAM,GAAG,GAAG,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;YAE3B,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAE7C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAEjB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACrB,CAAC;YAED,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QACzB,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,GAAG,EAAE;YACnB,UAAU,CAAC,KAAK,EAAE,CAAA;YAClB,UAAU,CAAC,KAAK,EAAE,CAAA;YAClB,QAAQ,CAAC,KAAK,EAAE,CAAA;YAEhB,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;gBAChE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;YAC9C,CAAC;YAED,GAAG,CAAC,UAAU,CAAC,CAAA;QACjB,CAAC,CAAA;QAED,OAAO,EAAE,CAAA;QAET,MAAM,aAAa,GAAG;YACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBAC9D,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBACjC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;oBAC9C,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,IAAI,KAAK,GAAG,KAAK,CAAA;oBAEjB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,KAAK,CAAA;oBAClC,CAAC;oBAED,IAAI,KAAK;wBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAErC,IAAI,KAAK,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC1C,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAChD,IAAI,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC5B,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;YAC5B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;gBACxB,UAAU,CAAC,KAAK,EAAE,CAAA;gBAClB,UAAU,CAAC,KAAK,EAAE,CAAA;gBAClB,QAAQ,CAAC,KAAK,EAAE,CAAA;gBAEhB,GAAG,CAAC,UAAU,CAAC,CAAA;YACjB,CAAC,CAAC;SACH,CAAA;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,8CAA8C;QAC9C,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,WAAW,GAAG,KAAK,CAAA;YAEvB,aAAa,CAAC,IAAI,CAChB,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE;gBAC1B,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,EAAE,CAAA;gBACX,CAAC;qBAAM,CAAC;oBACN,WAAW,GAAG,IAAI,CAAA;gBACpB,CAAC;YACH,CAAC,CAAC,CACH,CAAA;QACH,CAAC;QAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;AACJ,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,eAAwC,EAAE,EAAE,CACzE,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEpF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,MAA2B,EAAE,UAAyB,EAAE,EAAE,CAC7F,kBAAkB,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;AAEhE,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,eAAwC,EACxC,QAAmD,EACnD,EAAE;IACF,OAAO,CAAC,GAAY,EAAE,GAAG,IAAW,EAAE,EAAE;QACtC,IAAI,CAAC,GAAG;YAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAA;QAEpC,0DAA0D;QAC1D,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAErD,OAAO,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/E,CAAC,CAAA;AACH,CAAC,CAAA;AAMD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,QAAkB,EAAE,OAAmB,EAAE,EAAE;IAC9E,OAAO,KAAK,EAAE,GAAW,EAAE,GAAG,IAAW,EAAE,EAAE;QAC3C,MAAM,QAAQ,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;QAE5B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC,CAAA;AACH,CAAC,CAAA;AAUD,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,QAAkB,EAClB,OAAmB,EACnB,UAA+B,EAAE,EACjC,EAAE;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAA;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAA;IACzC,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;IAC5F,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IAC3D,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAA;IAEpD,OAAO,KAAK,EAAE,GAAW,EAAE,GAAG,IAAW,EAAqB,EAAE;QAC9D,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,CAAA;QAE1B,uDAAuD;QACvD,IAAI,KAAK,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAA;QACd,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;QAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEvC,+DAA+D;QAC/D,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAA;QACpB,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEzC,8EAA8E;QAC9E,IAAI,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO,KAAK,CAAA;QACd,CAAC;QAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,CAAA;QACjC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAEhC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;QAE/D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAA;QAER,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAA;QACtB,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxB,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;AACH,CAAC,CAAA;AAED,4BAA4B;AAE5B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAsB,EAAE,KAAmB,EAAE,EAAE,CAC7E,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;IACpB,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IAEzC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;IAEhC,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,OAAO,EAAE,KAAK,EAAmB,EAAE,EAAE;QACrE,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,CAAA;QACX,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,WAAW,EAAE,CAAC;gBAC1C,GAAG,CAAC,KAAK,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,CAAA"}
1
+ {"version":3,"file":"repository.js","sourceRoot":"","sources":["../../../../store/src/repository.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,QAAQ,EAAW,MAAM,cAAc,CAAA;AACxD,OAAO,EACL,EAAE,EACF,EAAE,EACF,GAAG,EACH,IAAI,EACJ,MAAM,EACN,QAAQ,EAGR,IAAI,EACJ,MAAM,EACN,KAAK,GACN,MAAM,eAAe,CAAA;AACtB,OAAO,EACL,YAAY,EACZ,YAAY,EAGZ,aAAa,EACb,cAAc,EACd,cAAc,GACf,MAAM,gBAAgB,CAAA;AAEvB,OAAO,EAAC,kBAAkB,EAAE,UAAU,EAAE,WAAW,EAAC,MAAM,WAAW,CAAA;AAarE,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,EAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAoB,EAAE,EAAE;IACxF,MAAM,UAAU,GAAG,IAAI,GAAG,EAAwB,CAAA;IAElD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QAChE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,OAA0B,EAA0B,EAAE;IACrF,MAAM,EAAC,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,GAAG,OAAO,CAAA;IAErD,MAAM,KAAK,GAAG,QAAQ,CAAa,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE;QAClD,MAAM,UAAU,GAAG,aAAa,CAAC,OAAO,CAAC,CAAA;QAEzC,GAAG,CAAC,UAAU,CAAC,CAAA;QAEf,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;YACrE,IAAI,KAAK,GAAG,KAAK,CAAA;YAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBACjC,KAAK,GAAG,IAAI,CAAA;oBACZ,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,IAAI,MAAM,CAAC,EAAE,EAAE,UAAU,CAAC,EAAE,CAAC;wBAC3B,KAAK,GAAG,IAAI,CAAA;oBACd,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,KAAK,EAAE,CAAC;gBACV,GAAG,CAAC,UAAU,CAAC,CAAA;YACjB,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAA;AACxD,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,SAAqC,EAAE,EAAE,CACtE,WAAW,CAAC,SAAS,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEvE,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAkC,EAAE,EAAE,CACpE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAE7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,UAAkC,EAAE,EAAE,CACrE,WAAW,CAAC,UAAU,EAAE,WAAW,CAAC,EAAE,CAAC,cAAc,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAE9E,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,OAA0B,EAAE,EAAE,CAAC,WAAW,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,CAAA;AAQlG,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAAC,UAAU,EAAE,cAAc,GAAG,KAAK,EAAE,QAAQ,EAAe,EAAE,EAAE;IAC9F,OAAO,CAAC,WAAmB,EAAE,GAAG,IAAW,EAAmC,EAAE;QAC9E,MAAM,OAAO,GAAG,YAAY,CAAC,CAAC,WAAW,CAAC,CAAC,CAAA;QAE3C,QAAQ,EAAE,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAA;QAE5B,MAAM,KAAK,GAAG,QAAQ,CAAsB,SAAS,EAAE,GAAG,CAAC,EAAE;YAC3D,IAAI,KAAK,GAAG,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,CAAC,CAAA;YAE9D,GAAG,CAAC,KAAK,CAAC,CAAA;YAEV,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBACrE,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,IAAI,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,CAAC;4BACrB,GAAG,CAAC,SAAS,CAAC,CAAA;wBAChB,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,KAAK,MAAM,QAAQ,IAAI,KAAK,EAAE,CAAC;oBAC7B,IAAI,YAAY,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;wBACpC,KAAK,GAAG,QAAQ,CAAA;wBAChB,GAAG,CAAC,KAAK,CAAC,CAAA;oBACZ,CAAC;gBACH,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;QAEF,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,CAAC,CAAC,CAAA;IACpF,CAAC,CAAA;AACH,CAAC,CAAA;AAUD,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EACjC,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACS,EAAE,EAAE;IAC3B,MAAM,eAAe,GAAoB,IAAI,GAAG,EAAE,CAAA;IAElD,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QAChE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC9C,IAAI,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YACzC,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,UAAU,GAAG,IAAI,GAAG,EAAE,CAAA;gBACtB,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,UAAU,CAAC,CAAA;YACtC,CAAC;YAED,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;QACjC,CAAC;IACH,CAAC;IAED,OAAO,eAAe,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,qBAAqB,GAAG,CACnC,OAA+B,EACF,EAAE;IAC/B,MAAM,EAAC,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,GAAG,OAAO,CAAA;IAE9D,MAAM,KAAK,GAAG,QAAQ,CAAkB,IAAI,GAAG,EAAE,EAAE,GAAG,CAAC,EAAE;QACvD,MAAM,eAAe,GAAG,kBAAkB,CAAC,OAAO,CAAC,CAAA;QAEnD,MAAM,QAAQ,GAAG,CAAC,GAAW,EAAE,KAAmB,EAAE,EAAE;YACpD,IAAI,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YAE/C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAE3C,4EAA4E;YAC5E,IAAI,UAAU,EAAE,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,KAAK;gBAAE,OAAO,KAAK,CAAA;YAErD,sDAAsD;YACtD,MAAM,aAAa,GAAG,IAAI,GAAG,CAAC,UAAU,CAAC,CAAA;YAEzC,aAAa,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YAClC,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,aAAa,CAAC,CAAA;YAEvC,OAAO,IAAI,CAAA;QACb,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE;YAC9C,MAAM,UAAU,GAAG,eAAe,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;YAE3C,IAAI,UAAU,EAAE,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;gBACxB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;gBAErB,IAAI,UAAU,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;oBAC1B,eAAe,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAC7B,CAAC;qBAAM,CAAC;oBACN,sDAAsD;oBACtD,eAAe,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,UAAU,CAAC,CAAC,CAAA;gBAC/C,CAAC;gBAED,OAAO,IAAI,CAAA;YACb,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,GAAG,CAAC,eAAe,CAAC,CAAA;QAEpB,MAAM,aAAa,GAAG;YACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBAC9D,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC9C,KAAK,GAAG,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;oBACvC,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC,EAAE,CAAC;4BACxC,KAAK,GAAG,KAAK,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;wBACvC,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,eAAe,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAErC,IAAI,KAAK,IAAI,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC;oBAClC,GAAG,CAAC,eAAe,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAChD,IAAI,WAAW,CAAC,GAAG,EAAE,EAAE,CAAC,EAAE,CAAC;oBACzB,GAAG,CAAC,eAAe,CAAC,CAAA;gBACtB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE;gBACvB,eAAe,CAAC,KAAK,EAAE,CAAA;gBAEvB,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;oBAChE,KAAK,MAAM,GAAG,IAAI,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;wBAC9C,QAAQ,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;oBACtB,CAAC;gBACH,CAAC;gBAED,GAAG,CAAC,eAAe,CAAC,CAAA;YACtB,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;gBACxB,eAAe,CAAC,KAAK,EAAE,CAAA;gBAEvB,GAAG,CAAC,eAAe,CAAC,CAAA;YACtB,CAAC,CAAC;SACH,CAAA;QAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAA;AAC7D,CAAC,CAAA;AAOD,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAClC,GAAG,EACH,OAAO,EACP,OAAO,EACP,UAAU,EACV,cAAc,GACU,EAAE,EAAE;IAC5B,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAA;IAClD,MAAM,cAAc,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,EAAC,GAAG,EAAE,UAAU,EAAE,GAAG,MAAM,EAAC,CAAC,CAAC,CAAA;IAC5E,MAAM,UAAU,GAAe,IAAI,GAAG,EAAE,CAAA;IAExC,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,cAAc,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;QACvE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;IACjC,CAAC;IAED,OAAO,UAAU,CAAA;AACnB,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,sBAAsB,GAAG,CACpC,OAAgC,EACR,EAAE;IAC1B,MAAM,EAAC,GAAG,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,cAAc,EAAC,GAAG,OAAO,CAAA;IAEnE,IAAI,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;IAE7C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QACvC,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,UAAU,GAAG,mBAAmB,CAAC,OAAO,CAAC,CAAA;YACzC,GAAG,CAAC,UAAU,CAAC,CAAA;QACjB,CAAC,CAAA;QAED,KAAK,EAAE,CAAA;QAEP,MAAM,aAAa,GAAG;YACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBAC9D,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBACpE,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;wBAC/B,KAAK,GAAG,IAAI,CAAA;oBACd,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;4BACvB,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;4BACrB,KAAK,GAAG,IAAI,CAAA;wBACd,CAAC;oBACH,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,UAAkB,EAAE,EAAE;gBACpD,IAAI,UAAU,KAAK,GAAG,EAAE,CAAC;oBACvB,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;oBAErC,IAAI,KAAK,IAAI,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBAC9E,UAAU,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;wBACzB,GAAG,CAAC,UAAU,CAAC,CAAA;oBACjB,CAAC;gBACH,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,UAAkB,EAAE,EAAE;gBACvD,IAAI,UAAU,KAAK,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBAC7C,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;oBACrB,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC;YAC1B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC;SAC5B,CAAA;QAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,OAAO,UAAU,CAAC,KAAK,EAAE,GAAG,EAAE,CAAC,mBAAmB,CAAC,OAAO,CAAC,CAAC,CAAA;AAC9D,CAAC,CAAA;AAsBD,MAAM,YAAY,GAAG,CACnB,KAA8B,EAC9B,OAAsC,EACnB,EAAE;IACrB,MAAM,IAAI,GAAG,UAAU,CAAC,KAAK,CAAC,CAAA;IAE9B,2FAA2F;IAC3F,MAAM,IAAI,GAAG,CAAC,GAAW,EAAE,EAAE,CAC3B,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAEtF,OAAO,EAAC,GAAG,IAAI,EAAE,IAAI,EAAC,CAAA;AACxB,CAAC,CAAA;AAED,MAAM,YAAY,GAAG,CAAC,KAAc,EAAE,EAAE,CACtC,OAAO,CAAC,IAAI,CAAC,uCAAuC,EAAE,KAAK,CAAC,CAAA;AAU9D,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAI,EAClC,MAAM,EACN,OAAO,EACP,UAAU,EACV,WAAW,EACX,cAAc,GACO,EAAqB,EAAE;IAC5C,MAAM,OAAO,GAAG,IAAI,GAAG,EAAyB,CAAA;IAChD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAa,CAAA;IACvC,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC1C,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAA;IAE1C,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QACvC,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,EAAE;YACvC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAM;YACjC,IAAI,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAM;YAElC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAE,EAAE;gBAChC,IAAI,IAAI,EAAE,CAAC;oBACT,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,CAAC,CAAA;oBAExB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;oBACzB,QAAQ,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,CAAC,CAAA;oBAC3B,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,GAAG,CAAC,CAAA;oBAE3B,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAA;YAED,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAExC,2EAA2E;gBAC3E,8EAA8E;gBAC9E,IAAI,aAAa,YAAY,OAAO,EAAE,CAAC;oBACrC,4EAA4E;oBAC5E,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAE7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;gBACvF,CAAC;qBAAM,CAAC;oBACN,MAAM,CAAC,aAAa,CAAC,CAAA;gBACvB,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,KAAK,CAAC,CAAA;YACrB,CAAC;QACH,CAAC,CAAA;QAED,KAAK,MAAM,KAAK,IAAI,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,EAAE,CAAC;YAChE,QAAQ,CAAC,KAAK,CAAC,CAAA;QACjB,CAAC;QAED,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;YACrE,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;gBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBACjC,QAAQ,CAAC,KAAK,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC;YAED,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;oBACzB,MAAM,GAAG,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;oBAEhC,4EAA4E;oBAC5E,0EAA0E;oBAC1E,sDAAsD;oBACtD,IAAI,GAAG,IAAI,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;wBACpC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBACpB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;wBACtB,KAAK,GAAG,IAAI,CAAA;oBACd,CAAC;gBACH,CAAC;gBAED,IAAI,KAAK,EAAE,CAAC;oBACV,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC;QACH,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC,CAAA;AAsBD;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAI,EACvC,MAAM,EACN,OAAO,EACP,UAAU,EACV,OAAO,EACP,WAAW,EACX,cAAc,EACd,YAAY,GACc,EAAqB,EAAE;IACjD,MAAM,OAAO,GAAG,IAAI,GAAG,EAA4B,CAAA;IACnD,MAAM,UAAU,GAAG,IAAI,GAAG,EAAa,CAAA;IACvC,4EAA4E;IAC5E,sEAAsE;IACtE,MAAM,UAAU,GAAG,IAAI,GAAG,EAAkB,CAAA;IAC5C,6EAA6E;IAC7E,MAAM,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAA;IACvD,+EAA+E;IAC/E,MAAM,SAAS,GAAG,IAAI,GAAG,EAAa,CAAA;IAEtC,MAAM,KAAK,GAAG,QAAQ,CAAC,UAAU,EAAE,GAAG,CAAC,EAAE;QACvC,uFAAuF;QACvF,IAAI,OAAO,GAAG,KAAK,CAAA;QAEnB,MAAM,MAAM,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,GAAW,EAAE,IAAO,EAAE,EAAE;YAC/D,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;YACzB,UAAU,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;YAEvB,IAAI,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAE5B,IAAI,CAAC,KAAK,EAAE,CAAC;gBACX,KAAK,GAAG,IAAI,GAAG,EAAE,CAAA;gBACjB,QAAQ,CAAC,GAAG,CAAC,EAAE,EAAE,KAAK,CAAC,CAAA;YACzB,CAAC;YAED,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAA;QACrB,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE;YAC1C,0EAA0E;YAC1E,uCAAuC;YACvC,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,KAAK,EAAE,EAAE,CAAC;gBAC/B,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBACtB,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;gBAEtB,OAAO,IAAI,CAAA;YACb,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,QAAQ,GAAG,CAAC,KAAmB,EAAE,IAAsB,EAAE,EAAE;YAC/D,MAAM,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG,CAAC,KAAK,SAAS,CAAC,CAAA;YAE9F,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;gBAAE,OAAO,KAAK,CAAA;YACtC,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC;gBAAE,OAAO,KAAK,CAAA;YAEvC,MAAM,MAAM,GAAG,CAAC,IAAc,EAAE,EAAE;gBAChC,IAAI,KAAK,GAAG,KAAK,CAAA;gBAEjB,IAAI,IAAI,EAAE,CAAC;oBACT,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,IAAI,CAAC,CAAA;oBAE7B,KAAK,MAAM,GAAG,IAAI,OAAO,EAAE,CAAC;wBAC1B,MAAM,GAAG,GAAG,MAAM,CAAC,IAAI,EAAE,GAAG,CAAC,CAAA;wBAE7B,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;4BACtB,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,GAAG,EAAE,IAAI,CAAC,CAAA;4BAChC,KAAK,GAAG,IAAI,CAAA;wBACd,CAAC;oBACH,CAAC;oBAED,qEAAqE;oBACrE,IAAI,KAAK,IAAI,CAAC,OAAO;wBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;gBACxC,CAAC;gBAED,OAAO,KAAK,CAAA;YACd,CAAC,CAAA;YAED,MAAM,MAAM,GAAG,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;YAEtC,6EAA6E;YAC7E,IAAI,MAAM;gBAAE,OAAO,MAAM,CAAC,MAAM,CAAC,CAAA;YAEjC,IAAI,OAAO,GAAG,KAAK,CAAA;YAEnB,IAAI,CAAC;gBACH,MAAM,aAAa,GAAG,WAAW,CAAC,KAAK,CAAC,CAAA;gBAExC,2EAA2E;gBAC3E,8EAA8E;gBAC9E,IAAI,aAAa,YAAY,OAAO,EAAE,CAAC;oBACrC,4EAA4E;oBAC5E,MAAM,MAAM,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAA;oBAE7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,EAAE,aAAa,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAA;gBACvF,CAAC;qBAAM,CAAC;oBACN,OAAO,GAAG,MAAM,CAAC,aAAa,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,YAAY,CAAC,KAAK,CAAC,CAAA;YACrB,CAAC;YAED,OAAO,OAAO,CAAA;QAChB,CAAC,CAAA;QAED,MAAM,WAAW,GAAG,CAAC,EAAU,EAAE,EAAE;YACjC,MAAM,KAAK,GAAG,MAAM,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;YAElC,SAAS,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YAEpB,IAAI,CAAC,KAAK;gBAAE,OAAO,KAAK,CAAA;YAExB,IAAI,KAAK,GAAG,KAAK,CAAA;YAEjB,KAAK,MAAM,GAAG,IAAI,KAAK,CAAC,MAAM,EAAE,EAAE,CAAC;gBACjC,KAAK,GAAG,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,KAAK,CAAA;YACnC,CAAC;YAED,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,cAAc,GAAG,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;YACjD,MAAM,KAAK,GAAG,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC,CAAA;YAC9B,MAAM,GAAG,GAAG,KAAK,EAAE,GAAG,CAAC,GAAG,CAAC,CAAA;YAE3B,IAAI,CAAC,KAAK,IAAI,GAAG,KAAK,SAAS;gBAAE,OAAO,KAAK,CAAA;YAE7C,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAA;YAEjB,IAAI,KAAK,CAAC,IAAI,KAAK,CAAC,EAAE,CAAC;gBACrB,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAA;YACrB,CAAC;YAED,OAAO,OAAO,CAAC,GAAG,EAAE,EAAE,CAAC,CAAA;QACzB,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,CAAC,OAAO,GAAG,KAAK,EAAE,EAAE;YAClC,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,OAAO,EAAE,EAAC,cAAc,EAAC,CAAC,CAAA;YAC1D,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;YAClD,IAAI,KAAK,GAAG,OAAO,CAAA;YAEnB,KAAK,MAAM,EAAE,IAAI,KAAK,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC7C,IAAI,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC;oBACjB,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,KAAK,CAAA;gBAClC,CAAC;YACH,CAAC;YAED,OAAO,GAAG,IAAI,CAAA;YAEd,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;gBAC3B,KAAK,GAAG,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAA;YAC/D,CAAC;YAED,OAAO,GAAG,KAAK,CAAA;YAEf,IAAI,KAAK;gBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;QAC5B,CAAC,CAAA;QAED,MAAM,KAAK,GAAG,GAAG,EAAE;YACjB,MAAM,KAAK,GAAG,UAAU,CAAC,IAAI,GAAG,CAAC,CAAA;YAEjC,UAAU,CAAC,KAAK,EAAE,CAAA;YAClB,UAAU,CAAC,KAAK,EAAE,CAAA;YAClB,QAAQ,CAAC,KAAK,EAAE,CAAA;YAEhB,OAAO,KAAK,CAAA;QACd,CAAC,CAAA;QAED,MAAM,OAAO,GAAG,GAAG,EAAE,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC,CAAA;QAEtC,OAAO,EAAE,CAAA;QAET,MAAM,aAAa,GAAG;YACpB,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,KAAK,EAAE,OAAO,EAAmB,EAAE,EAAE;gBAC9D,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;oBAC1B,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;wBACjC,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAA;oBAC9C,CAAC;gBACH,CAAC;gBAED,IAAI,CAAC,cAAc,EAAE,CAAC;oBACpB,IAAI,KAAK,GAAG,KAAK,CAAA;oBAEjB,KAAK,MAAM,EAAE,IAAI,OAAO,EAAE,CAAC;wBACzB,KAAK,GAAG,WAAW,CAAC,EAAE,CAAC,IAAI,KAAK,CAAA;oBAClC,CAAC;oBAED,IAAI,KAAK;wBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;gBAC5B,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,KAAK,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAC7C,MAAM,KAAK,GAAG,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;gBAErC,IAAI,KAAK,IAAI,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,EAAE,CAAC;oBAC1C,QAAQ,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAU,EAAE,GAAW,EAAE,EAAE;gBAChD,IAAI,cAAc,CAAC,EAAE,EAAE,GAAG,CAAC,EAAE,CAAC;oBAC5B,GAAG,CAAC,UAAU,CAAC,CAAA;gBACjB,CAAC;YACH,CAAC,CAAC;YACF,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,CAAC;YAC5B,EAAE,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,EAAE;gBACxB,IAAI,KAAK,EAAE;oBAAE,GAAG,CAAC,UAAU,CAAC,CAAA;YAC9B,CAAC,CAAC;SACH,CAAA;QAED,2EAA2E;QAC3E,0EAA0E;QAC1E,8CAA8C;QAC9C,IAAI,YAAY,EAAE,CAAC;YACjB,IAAI,WAAW,GAAG,KAAK,CAAA;YAEvB,aAAa,CAAC,IAAI,CAChB,YAAY,CAAC,SAAS,CAAC,GAAG,EAAE;gBAC1B,IAAI,WAAW,EAAE,CAAC;oBAChB,OAAO,EAAE,CAAA;gBACX,CAAC;qBAAM,CAAC;oBACN,WAAW,GAAG,IAAI,CAAA;gBACpB,CAAC;YACH,CAAC,CAAC,CACH,CAAA;QACH,CAAC;QAED,OAAO,GAAG,EAAE,CAAC,aAAa,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC1C,CAAC,CAAC,CAAA;IAEF,OAAO,YAAY,CAAC,KAAK,EAAE,OAAO,CAAC,CAAA;AACrC,CAAC,CAAA;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,CAAI,eAAwC,EAAE,EAAE,CACzE,OAAO,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAA;AAEzE,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,MAA2B,EAAE,UAAyB,EAAE,EAAE,CAC7F,OAAO,CAAC,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;AAErD,MAAM,CAAC,MAAM,cAAc,GAAG,CAC5B,eAAwC,EACxC,QAAmD,EACnD,EAAE;IACF,OAAO,CAAC,GAAY,EAAE,GAAG,IAAW,EAAE,EAAE;QACtC,IAAI,CAAC,GAAG;YAAE,OAAO,QAAQ,CAAC,SAAS,CAAC,CAAA;QAEpC,0DAA0D;QAC1D,OAAO,CAAC,OAAO,CAAC,QAAQ,EAAE,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QAErD,OAAO,kBAAkB,CAAC,eAAe,EAAE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;IAC/E,CAAC,CAAA;AACH,CAAC,CAAA;AAMD,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAI,QAAkB,EAAE,OAAmB,EAAE,EAAE;IAC9E,OAAO,KAAK,EAAE,GAAW,EAAE,GAAG,IAAW,EAAE,EAAE;QAC3C,MAAM,QAAQ,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAA;QAE5B,OAAO,OAAO,CAAC,GAAG,CAAC,CAAA;IACrB,CAAC,CAAA;AACH,CAAC,CAAA;AAUD,MAAM,CAAC,MAAM,YAAY,GAAG,CAC1B,QAAkB,EAClB,OAAmB,EACnB,UAA+B,EAAE,EACjC,EAAE;IACF,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,IAAI,CAAA;IACvC,MAAM,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,MAAM,CAAA;IACzC,MAAM,OAAO,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IACrD,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,GAAW,EAAE,EAAU,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAA;IAC5F,MAAM,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,CAAC,CAAC,GAAG,IAAW,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IACjF,MAAM,aAAa,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IAC3D,MAAM,QAAQ,GAAG,IAAI,QAAQ,CAAiB,OAAO,CAAC,CAAA;IACtD,MAAM,OAAO,GAAG,IAAI,GAAG,EAA6B,CAAA;IAEpD,OAAO,KAAK,EAAE,GAAW,EAAE,GAAG,IAAW,EAAqB,EAAE;QAC9D,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,CAAA;QAEhC,uDAAuD;QACvD,IAAI,KAAK,IAAI,UAAU,CAAC,GAAG,CAAC,GAAG,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;YAC/C,OAAO,KAAK,CAAA;QACd,CAAC;QAED,MAAM,MAAM,GAAG,GAAG,GAAG,IAAI,SAAS,CAAC,GAAG,IAAI,CAAC,EAAE,CAAA;QAC7C,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QAEvC,+DAA+D;QAC/D,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,WAAW,CAAA;QACpB,CAAC;QAED,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;QAEzC,8EAA8E;QAC9E,IAAI,EAAE,CAAC,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,EAAE,CAAC;YAChE,OAAO,KAAK,CAAA;QACd,CAAC;QAED,QAAQ,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,GAAG,CAAC,CAAC,CAAA;QACjC,aAAa,CAAC,GAAG,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAA;QAEhC,UAAU,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,CAAA;QAEtB,MAAM,OAAO,GAAG,QAAQ,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAA;QAE/D,OAAO,CAAC,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;QAE5B,IAAI,IAAI,CAAA;QAER,IAAI,CAAC;YACH,IAAI,GAAG,MAAM,OAAO,CAAA;QACtB,CAAC;gBAAS,CAAC;YACT,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;QACxB,CAAC;QAED,IAAI,IAAI,EAAE,CAAC;YACT,QAAQ,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;QACtB,CAAC;QAED,OAAO,IAAI,CAAA;IACb,CAAC,CAAA;AACH,CAAC,CAAA;AAED,4BAA4B;AAE5B,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,UAAsB,EAAE,KAAmB,EAAuB,EAAE,CAClG,UAAU,CACR,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,EAAE;IACpB,MAAM,WAAW,GAAG,cAAc,CAAC,KAAK,CAAC,CAAA;IAEzC,GAAG,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAA;IAEhC,OAAO,EAAE,CAAC,UAAU,EAAE,QAAQ,EAAE,CAAC,EAAC,OAAO,EAAE,KAAK,EAAmB,EAAE,EAAE;QACrE,IAAI,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC;YAC1B,GAAG,CAAC,IAAI,CAAC,CAAA;QACX,CAAC;QAED,KAAK,MAAM,KAAK,IAAI,KAAK,EAAE,CAAC;YAC1B,IAAI,cAAc,CAAC,KAAK,CAAC,KAAK,WAAW,EAAE,CAAC;gBAC1C,GAAG,CAAC,KAAK,CAAC,CAAA;YACZ,CAAC;QACH,CAAC;IACH,CAAC,CAAC,CAAA;AACJ,CAAC,CAAC,EACF,GAAG,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,KAAK,CAAC,CAClC,CAAA"}
@@ -1 +1 @@
1
- {"root":["../src/app.ts","../src/command.ts","../src/createapp.ts","../src/index.ts","../src/policy.ts","../src/session.ts","../src/user.ts","../src/plugins/base.ts","../src/plugins/blockedrelaylists.ts","../src/plugins/blossomserverlists.ts","../src/plugins/deletes.ts","../src/plugins/domain.ts","../src/plugins/events.ts","../src/plugins/feedlists.ts","../src/plugins/feeds.ts","../src/plugins/followlists.ts","../src/plugins/handles.ts","../src/plugins/logger.ts","../src/plugins/messagingrelaylists.ts","../src/plugins/mutelists.ts","../src/plugins/network.ts","../src/plugins/pinboards.ts","../src/plugins/pins.ts","../src/plugins/plaintext.ts","../src/plugins/profiles.ts","../src/plugins/publisher.ts","../src/plugins/reactions.ts","../src/plugins/relaylists.ts","../src/plugins/relaymanagement.ts","../src/plugins/relaymembers.ts","../src/plugins/relayroles.ts","../src/plugins/relaystats.ts","../src/plugins/relays.ts","../src/plugins/roomlists.ts","../src/plugins/roompins.ts","../src/plugins/rooms.ts","../src/plugins/router.ts","../src/plugins/searchrelaylists.ts","../src/plugins/sync.ts","../src/plugins/topics.ts","../src/plugins/wot.ts","../src/plugins/wraps.ts","../src/plugins/zapgoals.ts","../src/plugins/zappers.ts"],"version":"5.8.3"}
1
+ {"root":["../src/app.ts","../src/command.ts","../src/createapp.ts","../src/index.ts","../src/policy.ts","../src/session.ts","../src/user.ts","../src/plugins/base.ts","../src/plugins/blockedrelaylists.ts","../src/plugins/blossomserverlists.ts","../src/plugins/deletes.ts","../src/plugins/domain.ts","../src/plugins/events.ts","../src/plugins/feedlists.ts","../src/plugins/feeds.ts","../src/plugins/followlists.ts","../src/plugins/handles.ts","../src/plugins/logger.ts","../src/plugins/messagingrelaylists.ts","../src/plugins/mutelists.ts","../src/plugins/network.ts","../src/plugins/notify.ts","../src/plugins/pinboards.ts","../src/plugins/pins.ts","../src/plugins/plaintext.ts","../src/plugins/profiles.ts","../src/plugins/publisher.ts","../src/plugins/reactions.ts","../src/plugins/relaylists.ts","../src/plugins/relaymanagement.ts","../src/plugins/relaymembers.ts","../src/plugins/relayroles.ts","../src/plugins/relaystats.ts","../src/plugins/relays.ts","../src/plugins/roomlists.ts","../src/plugins/roompins.ts","../src/plugins/rooms.ts","../src/plugins/router.ts","../src/plugins/searchrelaylists.ts","../src/plugins/sync.ts","../src/plugins/topics.ts","../src/plugins/wot.ts","../src/plugins/wraps.ts","../src/plugins/zapgoals.ts","../src/plugins/zappers.ts"],"version":"5.8.3"}