@langchain/langgraph-checkpoint 0.1.1 → 1.0.0

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 (121) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/dist/_virtual/rolldown_runtime.cjs +25 -0
  3. package/dist/base.cjs +74 -88
  4. package/dist/base.cjs.map +1 -0
  5. package/dist/base.d.cts +95 -0
  6. package/dist/base.d.cts.map +1 -0
  7. package/dist/base.d.ts +79 -73
  8. package/dist/base.d.ts.map +1 -0
  9. package/dist/base.js +69 -80
  10. package/dist/base.js.map +1 -1
  11. package/dist/cache/base.cjs +17 -21
  12. package/dist/cache/base.cjs.map +1 -0
  13. package/dist/cache/base.d.cts +43 -0
  14. package/dist/cache/base.d.cts.map +1 -0
  15. package/dist/cache/base.d.ts +41 -36
  16. package/dist/cache/base.d.ts.map +1 -0
  17. package/dist/cache/base.js +16 -16
  18. package/dist/cache/base.js.map +1 -1
  19. package/dist/cache/index.cjs +2 -19
  20. package/dist/cache/index.js +4 -3
  21. package/dist/cache/memory.cjs +53 -58
  22. package/dist/cache/memory.cjs.map +1 -0
  23. package/dist/cache/memory.d.cts +19 -0
  24. package/dist/cache/memory.d.cts.map +1 -0
  25. package/dist/cache/memory.d.ts +18 -13
  26. package/dist/cache/memory.d.ts.map +1 -0
  27. package/dist/cache/memory.js +52 -53
  28. package/dist/cache/memory.js.map +1 -1
  29. package/dist/id.cjs +12 -16
  30. package/dist/id.cjs.map +1 -0
  31. package/dist/id.d.cts +10 -0
  32. package/dist/id.d.cts.map +1 -0
  33. package/dist/id.d.ts +10 -2
  34. package/dist/id.d.ts.map +1 -0
  35. package/dist/id.js +10 -12
  36. package/dist/id.js.map +1 -1
  37. package/dist/index.cjs +36 -27
  38. package/dist/index.d.cts +12 -0
  39. package/dist/index.d.ts +12 -8
  40. package/dist/index.js +12 -9
  41. package/dist/memory.cjs +194 -268
  42. package/dist/memory.cjs.map +1 -0
  43. package/dist/memory.d.cts +22 -0
  44. package/dist/memory.d.cts.map +1 -0
  45. package/dist/memory.d.ts +19 -12
  46. package/dist/memory.d.ts.map +1 -0
  47. package/dist/memory.js +193 -263
  48. package/dist/memory.js.map +1 -1
  49. package/dist/serde/base.d.cts +10 -0
  50. package/dist/serde/base.d.cts.map +1 -0
  51. package/dist/serde/base.d.ts +9 -3
  52. package/dist/serde/base.d.ts.map +1 -0
  53. package/dist/serde/jsonplus.cjs +92 -141
  54. package/dist/serde/jsonplus.cjs.map +1 -0
  55. package/dist/serde/jsonplus.js +90 -136
  56. package/dist/serde/jsonplus.js.map +1 -1
  57. package/dist/serde/types.cjs +15 -9
  58. package/dist/serde/types.cjs.map +1 -0
  59. package/dist/serde/types.d.cts +55 -0
  60. package/dist/serde/types.d.cts.map +1 -0
  61. package/dist/serde/types.d.ts +53 -47
  62. package/dist/serde/types.d.ts.map +1 -0
  63. package/dist/serde/types.js +9 -5
  64. package/dist/serde/types.js.map +1 -1
  65. package/dist/serde/utils/fast-safe-stringify/index.cjs +88 -208
  66. package/dist/serde/utils/fast-safe-stringify/index.cjs.map +1 -0
  67. package/dist/serde/utils/fast-safe-stringify/index.js +87 -205
  68. package/dist/serde/utils/fast-safe-stringify/index.js.map +1 -1
  69. package/dist/store/base.cjs +200 -209
  70. package/dist/store/base.cjs.map +1 -0
  71. package/dist/store/base.d.cts +392 -0
  72. package/dist/store/base.d.cts.map +1 -0
  73. package/dist/store/base.d.ts +336 -332
  74. package/dist/store/base.d.ts.map +1 -0
  75. package/dist/store/base.js +198 -204
  76. package/dist/store/base.js.map +1 -1
  77. package/dist/store/batch.cjs +116 -147
  78. package/dist/store/batch.cjs.map +1 -0
  79. package/dist/store/batch.d.cts +49 -0
  80. package/dist/store/batch.d.cts.map +1 -0
  81. package/dist/store/batch.d.ts +48 -40
  82. package/dist/store/batch.d.ts.map +1 -0
  83. package/dist/store/batch.js +116 -143
  84. package/dist/store/batch.js.map +1 -1
  85. package/dist/store/memory.cjs +262 -363
  86. package/dist/store/memory.cjs.map +1 -0
  87. package/dist/store/memory.d.cts +64 -0
  88. package/dist/store/memory.d.cts.map +1 -0
  89. package/dist/store/memory.d.ts +30 -24
  90. package/dist/store/memory.d.ts.map +1 -0
  91. package/dist/store/memory.js +261 -358
  92. package/dist/store/memory.js.map +1 -1
  93. package/dist/store/utils.cjs +141 -249
  94. package/dist/store/utils.cjs.map +1 -0
  95. package/dist/store/utils.js +140 -245
  96. package/dist/store/utils.js.map +1 -1
  97. package/dist/types.d.cts +35 -0
  98. package/dist/types.d.cts.map +1 -0
  99. package/dist/types.d.ts +29 -28
  100. package/dist/types.d.ts.map +1 -0
  101. package/package.json +16 -18
  102. package/dist/cache/index.d.ts +0 -2
  103. package/dist/cache/index.js.map +0 -1
  104. package/dist/index.js.map +0 -1
  105. package/dist/serde/base.cjs +0 -3
  106. package/dist/serde/base.js +0 -2
  107. package/dist/serde/base.js.map +0 -1
  108. package/dist/serde/jsonplus.d.ts +0 -7
  109. package/dist/serde/utils/fast-safe-stringify/index.d.ts +0 -1
  110. package/dist/store/index.cjs +0 -20
  111. package/dist/store/index.d.ts +0 -3
  112. package/dist/store/index.js +0 -4
  113. package/dist/store/index.js.map +0 -1
  114. package/dist/store/utils.d.ts +0 -26
  115. package/dist/types.cjs +0 -3
  116. package/dist/types.js +0 -2
  117. package/dist/types.js.map +0 -1
  118. package/index.cjs +0 -1
  119. package/index.d.cts +0 -1
  120. package/index.d.ts +0 -1
  121. package/index.js +0 -1
@@ -1,219 +1,101 @@
1
- /* eslint-disable */
2
- // @ts-nocheck
3
- // Stringify that can handle circular references.
4
- // Inlined due to ESM import issues
5
- // Source: https://www.npmjs.com/package/fast-safe-stringify
1
+ //#region src/serde/utils/fast-safe-stringify/index.ts
6
2
  var LIMIT_REPLACE_NODE = "[...]";
7
3
  var CIRCULAR_REPLACE_NODE = "[Circular]";
8
4
  var arr = [];
9
5
  var replacerStack = [];
10
6
  function defaultOptions() {
11
- return {
12
- depthLimit: Number.MAX_SAFE_INTEGER,
13
- edgesLimit: Number.MAX_SAFE_INTEGER,
14
- };
7
+ return {
8
+ depthLimit: Number.MAX_SAFE_INTEGER,
9
+ edgesLimit: Number.MAX_SAFE_INTEGER
10
+ };
15
11
  }
16
- // Regular stringify
17
- export function stringify(obj, replacer, spacer, options) {
18
- if (typeof options === "undefined") {
19
- options = defaultOptions();
20
- }
21
- decirc(obj, "", 0, [], undefined, 0, options);
22
- var res;
23
- try {
24
- if (replacerStack.length === 0) {
25
- res = JSON.stringify(obj, replacer, spacer);
26
- }
27
- else {
28
- res = JSON.stringify(obj, replaceGetterValues(replacer), spacer);
29
- }
30
- }
31
- catch (_) {
32
- return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
33
- }
34
- finally {
35
- while (arr.length !== 0) {
36
- var part = arr.pop();
37
- if (part.length === 4) {
38
- Object.defineProperty(part[0], part[1], part[3]);
39
- }
40
- else {
41
- part[0][part[1]] = part[2];
42
- }
43
- }
44
- }
45
- return res;
12
+ function stringify(obj, replacer, spacer, options) {
13
+ if (typeof options === "undefined") options = defaultOptions();
14
+ decirc(obj, "", 0, [], void 0, 0, options);
15
+ var res;
16
+ try {
17
+ if (replacerStack.length === 0) res = JSON.stringify(obj, replacer, spacer);
18
+ else res = JSON.stringify(obj, replaceGetterValues(replacer), spacer);
19
+ } catch (_) {
20
+ return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
21
+ } finally {
22
+ while (arr.length !== 0) {
23
+ var part = arr.pop();
24
+ if (part.length === 4) Object.defineProperty(part[0], part[1], part[3]);
25
+ else part[0][part[1]] = part[2];
26
+ }
27
+ }
28
+ return res;
46
29
  }
47
30
  function setReplace(replace, val, k, parent) {
48
- var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k);
49
- if (propertyDescriptor.get !== undefined) {
50
- if (propertyDescriptor.configurable) {
51
- Object.defineProperty(parent, k, { value: replace });
52
- arr.push([parent, k, val, propertyDescriptor]);
53
- }
54
- else {
55
- replacerStack.push([val, k, replace]);
56
- }
57
- }
58
- else {
59
- parent[k] = replace;
60
- arr.push([parent, k, val]);
61
- }
31
+ var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k);
32
+ if (propertyDescriptor.get !== void 0) if (propertyDescriptor.configurable) {
33
+ Object.defineProperty(parent, k, { value: replace });
34
+ arr.push([
35
+ parent,
36
+ k,
37
+ val,
38
+ propertyDescriptor
39
+ ]);
40
+ } else replacerStack.push([
41
+ val,
42
+ k,
43
+ replace
44
+ ]);
45
+ else {
46
+ parent[k] = replace;
47
+ arr.push([
48
+ parent,
49
+ k,
50
+ val
51
+ ]);
52
+ }
62
53
  }
63
54
  function decirc(val, k, edgeIndex, stack, parent, depth, options) {
64
- depth += 1;
65
- var i;
66
- if (typeof val === "object" && val !== null) {
67
- for (i = 0; i < stack.length; i++) {
68
- if (stack[i] === val) {
69
- setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);
70
- return;
71
- }
72
- }
73
- if (typeof options.depthLimit !== "undefined" &&
74
- depth > options.depthLimit) {
75
- setReplace(LIMIT_REPLACE_NODE, val, k, parent);
76
- return;
77
- }
78
- if (typeof options.edgesLimit !== "undefined" &&
79
- edgeIndex + 1 > options.edgesLimit) {
80
- setReplace(LIMIT_REPLACE_NODE, val, k, parent);
81
- return;
82
- }
83
- stack.push(val);
84
- // Optimize for Arrays. Big arrays could kill the performance otherwise!
85
- if (Array.isArray(val)) {
86
- for (i = 0; i < val.length; i++) {
87
- decirc(val[i], i, i, stack, val, depth, options);
88
- }
89
- }
90
- else {
91
- var keys = Object.keys(val);
92
- for (i = 0; i < keys.length; i++) {
93
- var key = keys[i];
94
- decirc(val[key], key, i, stack, val, depth, options);
95
- }
96
- }
97
- stack.pop();
98
- }
55
+ depth += 1;
56
+ var i;
57
+ if (typeof val === "object" && val !== null) {
58
+ for (i = 0; i < stack.length; i++) if (stack[i] === val) {
59
+ setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);
60
+ return;
61
+ }
62
+ if (typeof options.depthLimit !== "undefined" && depth > options.depthLimit) {
63
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
64
+ return;
65
+ }
66
+ if (typeof options.edgesLimit !== "undefined" && edgeIndex + 1 > options.edgesLimit) {
67
+ setReplace(LIMIT_REPLACE_NODE, val, k, parent);
68
+ return;
69
+ }
70
+ stack.push(val);
71
+ if (Array.isArray(val)) for (i = 0; i < val.length; i++) decirc(val[i], i, i, stack, val, depth, options);
72
+ else {
73
+ var keys = Object.keys(val);
74
+ for (i = 0; i < keys.length; i++) {
75
+ var key = keys[i];
76
+ decirc(val[key], key, i, stack, val, depth, options);
77
+ }
78
+ }
79
+ stack.pop();
80
+ }
99
81
  }
100
- // Stable-stringify
101
- function compareFunction(a, b) {
102
- if (a < b) {
103
- return -1;
104
- }
105
- if (a > b) {
106
- return 1;
107
- }
108
- return 0;
109
- }
110
- function deterministicStringify(obj, replacer, spacer, options) {
111
- if (typeof options === "undefined") {
112
- options = defaultOptions();
113
- }
114
- var tmp = deterministicDecirc(obj, "", 0, [], undefined, 0, options) || obj;
115
- var res;
116
- try {
117
- if (replacerStack.length === 0) {
118
- res = JSON.stringify(tmp, replacer, spacer);
119
- }
120
- else {
121
- res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer);
122
- }
123
- }
124
- catch (_) {
125
- return JSON.stringify("[unable to serialize, circular reference is too complex to analyze]");
126
- }
127
- finally {
128
- // Ensure that we restore the object as it was.
129
- while (arr.length !== 0) {
130
- var part = arr.pop();
131
- if (part.length === 4) {
132
- Object.defineProperty(part[0], part[1], part[3]);
133
- }
134
- else {
135
- part[0][part[1]] = part[2];
136
- }
137
- }
138
- }
139
- return res;
140
- }
141
- function deterministicDecirc(val, k, edgeIndex, stack, parent, depth, options) {
142
- depth += 1;
143
- var i;
144
- if (typeof val === "object" && val !== null) {
145
- for (i = 0; i < stack.length; i++) {
146
- if (stack[i] === val) {
147
- setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);
148
- return;
149
- }
150
- }
151
- try {
152
- if (typeof val.toJSON === "function") {
153
- return;
154
- }
155
- }
156
- catch (_) {
157
- return;
158
- }
159
- if (typeof options.depthLimit !== "undefined" &&
160
- depth > options.depthLimit) {
161
- setReplace(LIMIT_REPLACE_NODE, val, k, parent);
162
- return;
163
- }
164
- if (typeof options.edgesLimit !== "undefined" &&
165
- edgeIndex + 1 > options.edgesLimit) {
166
- setReplace(LIMIT_REPLACE_NODE, val, k, parent);
167
- return;
168
- }
169
- stack.push(val);
170
- // Optimize for Arrays. Big arrays could kill the performance otherwise!
171
- if (Array.isArray(val)) {
172
- for (i = 0; i < val.length; i++) {
173
- deterministicDecirc(val[i], i, i, stack, val, depth, options);
174
- }
175
- }
176
- else {
177
- // Create a temporary object in the required way
178
- var tmp = {};
179
- var keys = Object.keys(val).sort(compareFunction);
180
- for (i = 0; i < keys.length; i++) {
181
- var key = keys[i];
182
- deterministicDecirc(val[key], key, i, stack, val, depth, options);
183
- tmp[key] = val[key];
184
- }
185
- if (typeof parent !== "undefined") {
186
- arr.push([parent, k, val]);
187
- parent[k] = tmp;
188
- }
189
- else {
190
- return tmp;
191
- }
192
- }
193
- stack.pop();
194
- }
195
- }
196
- // wraps replacer function to handle values we couldn't replace
197
- // and mark them as replaced value
198
82
  function replaceGetterValues(replacer) {
199
- replacer =
200
- typeof replacer !== "undefined"
201
- ? replacer
202
- : function (k, v) {
203
- return v;
204
- };
205
- return function (key, val) {
206
- if (replacerStack.length > 0) {
207
- for (var i = 0; i < replacerStack.length; i++) {
208
- var part = replacerStack[i];
209
- if (part[1] === key && part[0] === val) {
210
- val = part[2];
211
- replacerStack.splice(i, 1);
212
- break;
213
- }
214
- }
215
- }
216
- return replacer.call(this, key, val);
217
- };
83
+ replacer = typeof replacer !== "undefined" ? replacer : function(k, v) {
84
+ return v;
85
+ };
86
+ return function(key, val) {
87
+ if (replacerStack.length > 0) for (var i = 0; i < replacerStack.length; i++) {
88
+ var part = replacerStack[i];
89
+ if (part[1] === key && part[0] === val) {
90
+ val = part[2];
91
+ replacerStack.splice(i, 1);
92
+ break;
93
+ }
94
+ }
95
+ return replacer.call(this, key, val);
96
+ };
218
97
  }
98
+
99
+ //#endregion
100
+ export { stringify };
219
101
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/serde/utils/fast-safe-stringify/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","names":[],"sources":["../../../../src/serde/utils/fast-safe-stringify/index.ts"],"sourcesContent":["/* eslint-disable */\n// @ts-nocheck\n\n// Stringify that can handle circular references.\n// Inlined due to ESM import issues\n// Source: https://www.npmjs.com/package/fast-safe-stringify\n\nvar LIMIT_REPLACE_NODE = \"[...]\";\nvar CIRCULAR_REPLACE_NODE = \"[Circular]\";\n\nvar arr = [];\nvar replacerStack = [];\n\nfunction defaultOptions() {\n return {\n depthLimit: Number.MAX_SAFE_INTEGER,\n edgesLimit: Number.MAX_SAFE_INTEGER,\n };\n}\n\n// Regular stringify\nexport function stringify(obj, replacer?, spacer?, options?) {\n if (typeof options === \"undefined\") {\n options = defaultOptions();\n }\n\n decirc(obj, \"\", 0, [], undefined, 0, options);\n var res;\n try {\n if (replacerStack.length === 0) {\n res = JSON.stringify(obj, replacer, spacer);\n } else {\n res = JSON.stringify(obj, replaceGetterValues(replacer), spacer);\n }\n } catch (_) {\n return JSON.stringify(\n \"[unable to serialize, circular reference is too complex to analyze]\"\n );\n } finally {\n while (arr.length !== 0) {\n var part = arr.pop();\n if (part.length === 4) {\n Object.defineProperty(part[0], part[1], part[3]);\n } else {\n part[0][part[1]] = part[2];\n }\n }\n }\n return res;\n}\n\nfunction setReplace(replace, val, k, parent) {\n var propertyDescriptor = Object.getOwnPropertyDescriptor(parent, k);\n if (propertyDescriptor.get !== undefined) {\n if (propertyDescriptor.configurable) {\n Object.defineProperty(parent, k, { value: replace });\n arr.push([parent, k, val, propertyDescriptor]);\n } else {\n replacerStack.push([val, k, replace]);\n }\n } else {\n parent[k] = replace;\n arr.push([parent, k, val]);\n }\n}\n\nfunction decirc(val, k, edgeIndex, stack, parent, depth, options) {\n depth += 1;\n var i;\n if (typeof val === \"object\" && val !== null) {\n for (i = 0; i < stack.length; i++) {\n if (stack[i] === val) {\n setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);\n return;\n }\n }\n\n if (\n typeof options.depthLimit !== \"undefined\" &&\n depth > options.depthLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent);\n return;\n }\n\n if (\n typeof options.edgesLimit !== \"undefined\" &&\n edgeIndex + 1 > options.edgesLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent);\n return;\n }\n\n stack.push(val);\n // Optimize for Arrays. Big arrays could kill the performance otherwise!\n if (Array.isArray(val)) {\n for (i = 0; i < val.length; i++) {\n decirc(val[i], i, i, stack, val, depth, options);\n }\n } else {\n var keys = Object.keys(val);\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n decirc(val[key], key, i, stack, val, depth, options);\n }\n }\n stack.pop();\n }\n}\n\n// Stable-stringify\nfunction compareFunction(a, b) {\n if (a < b) {\n return -1;\n }\n if (a > b) {\n return 1;\n }\n return 0;\n}\n\nfunction deterministicStringify(obj, replacer, spacer, options) {\n if (typeof options === \"undefined\") {\n options = defaultOptions();\n }\n\n var tmp = deterministicDecirc(obj, \"\", 0, [], undefined, 0, options) || obj;\n var res;\n try {\n if (replacerStack.length === 0) {\n res = JSON.stringify(tmp, replacer, spacer);\n } else {\n res = JSON.stringify(tmp, replaceGetterValues(replacer), spacer);\n }\n } catch (_) {\n return JSON.stringify(\n \"[unable to serialize, circular reference is too complex to analyze]\"\n );\n } finally {\n // Ensure that we restore the object as it was.\n while (arr.length !== 0) {\n var part = arr.pop();\n if (part.length === 4) {\n Object.defineProperty(part[0], part[1], part[3]);\n } else {\n part[0][part[1]] = part[2];\n }\n }\n }\n return res;\n}\n\nfunction deterministicDecirc(val, k, edgeIndex, stack, parent, depth, options) {\n depth += 1;\n var i;\n if (typeof val === \"object\" && val !== null) {\n for (i = 0; i < stack.length; i++) {\n if (stack[i] === val) {\n setReplace(CIRCULAR_REPLACE_NODE, val, k, parent);\n return;\n }\n }\n try {\n if (typeof val.toJSON === \"function\") {\n return;\n }\n } catch (_) {\n return;\n }\n\n if (\n typeof options.depthLimit !== \"undefined\" &&\n depth > options.depthLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent);\n return;\n }\n\n if (\n typeof options.edgesLimit !== \"undefined\" &&\n edgeIndex + 1 > options.edgesLimit\n ) {\n setReplace(LIMIT_REPLACE_NODE, val, k, parent);\n return;\n }\n\n stack.push(val);\n // Optimize for Arrays. Big arrays could kill the performance otherwise!\n if (Array.isArray(val)) {\n for (i = 0; i < val.length; i++) {\n deterministicDecirc(val[i], i, i, stack, val, depth, options);\n }\n } else {\n // Create a temporary object in the required way\n var tmp = {};\n var keys = Object.keys(val).sort(compareFunction);\n for (i = 0; i < keys.length; i++) {\n var key = keys[i];\n deterministicDecirc(val[key], key, i, stack, val, depth, options);\n tmp[key] = val[key];\n }\n if (typeof parent !== \"undefined\") {\n arr.push([parent, k, val]);\n parent[k] = tmp;\n } else {\n return tmp;\n }\n }\n stack.pop();\n }\n}\n\n// wraps replacer function to handle values we couldn't replace\n// and mark them as replaced value\nfunction replaceGetterValues(replacer) {\n replacer =\n typeof replacer !== \"undefined\"\n ? replacer\n : function (k, v) {\n return v;\n };\n return function (key, val) {\n if (replacerStack.length > 0) {\n for (var i = 0; i < replacerStack.length; i++) {\n var part = replacerStack[i];\n if (part[1] === key && part[0] === val) {\n val = part[2];\n replacerStack.splice(i, 1);\n break;\n }\n }\n }\n return replacer.call(this, key, val);\n };\n}\n"],"mappings":";AAOA,IAAI,qBAAqB;AACzB,IAAI,wBAAwB;AAE5B,IAAI,MAAM;AACV,IAAI,gBAAgB;AAEpB,SAAS,iBAAiB;AACxB,QAAO;EACL,YAAY,OAAO;EACnB,YAAY,OAAO;;;AAKvB,SAAgB,UAAU,KAAK,UAAW,QAAS,SAAU;AAC3D,KAAI,OAAO,YAAY,YACrB,WAAU;AAGZ,QAAO,KAAK,IAAI,GAAG,IAAI,QAAW,GAAG;CACrC,IAAI;AACJ,KAAI;AACF,MAAI,cAAc,WAAW,EAC3B,OAAM,KAAK,UAAU,KAAK,UAAU;MAEpC,OAAM,KAAK,UAAU,KAAK,oBAAoB,WAAW;UAEpD,GAAG;AACV,SAAO,KAAK,UACV;WAEM;AACR,SAAO,IAAI,WAAW,GAAG;GACvB,IAAI,OAAO,IAAI;AACf,OAAI,KAAK,WAAW,EAClB,QAAO,eAAe,KAAK,IAAI,KAAK,IAAI,KAAK;OAE7C,MAAK,GAAG,KAAK,MAAM,KAAK;;;AAI9B,QAAO;;AAGT,SAAS,WAAW,SAAS,KAAK,GAAG,QAAQ;CAC3C,IAAI,qBAAqB,OAAO,yBAAyB,QAAQ;AACjE,KAAI,mBAAmB,QAAQ,OAC7B,KAAI,mBAAmB,cAAc;AACnC,SAAO,eAAe,QAAQ,GAAG,EAAE,OAAO;AAC1C,MAAI,KAAK;GAAC;GAAQ;GAAG;GAAK;;OAE1B,eAAc,KAAK;EAAC;EAAK;EAAG;;MAEzB;AACL,SAAO,KAAK;AACZ,MAAI,KAAK;GAAC;GAAQ;GAAG;;;;AAIzB,SAAS,OAAO,KAAK,GAAG,WAAW,OAAO,QAAQ,OAAO,SAAS;AAChE,UAAS;CACT,IAAI;AACJ,KAAI,OAAO,QAAQ,YAAY,QAAQ,MAAM;AAC3C,OAAK,IAAI,GAAG,IAAI,MAAM,QAAQ,IAC5B,KAAI,MAAM,OAAO,KAAK;AACpB,cAAW,uBAAuB,KAAK,GAAG;AAC1C;;AAIJ,MACE,OAAO,QAAQ,eAAe,eAC9B,QAAQ,QAAQ,YAChB;AACA,cAAW,oBAAoB,KAAK,GAAG;AACvC;;AAGF,MACE,OAAO,QAAQ,eAAe,eAC9B,YAAY,IAAI,QAAQ,YACxB;AACA,cAAW,oBAAoB,KAAK,GAAG;AACvC;;AAGF,QAAM,KAAK;AAEX,MAAI,MAAM,QAAQ,KAChB,MAAK,IAAI,GAAG,IAAI,IAAI,QAAQ,IAC1B,QAAO,IAAI,IAAI,GAAG,GAAG,OAAO,KAAK,OAAO;OAErC;GACL,IAAI,OAAO,OAAO,KAAK;AACvB,QAAK,IAAI,GAAG,IAAI,KAAK,QAAQ,KAAK;IAChC,IAAI,MAAM,KAAK;AACf,WAAO,IAAI,MAAM,KAAK,GAAG,OAAO,KAAK,OAAO;;;AAGhD,QAAM;;;AA4GV,SAAS,oBAAoB,UAAU;AACrC,YACE,OAAO,aAAa,cAChB,WACA,SAAU,GAAG,GAAG;AACd,SAAO;;AAEf,QAAO,SAAU,KAAK,KAAK;AACzB,MAAI,cAAc,SAAS,EACzB,MAAK,IAAI,IAAI,GAAG,IAAI,cAAc,QAAQ,KAAK;GAC7C,IAAI,OAAO,cAAc;AACzB,OAAI,KAAK,OAAO,OAAO,KAAK,OAAO,KAAK;AACtC,UAAM,KAAK;AACX,kBAAc,OAAO,GAAG;AACxB;;;AAIN,SAAO,SAAS,KAAK,MAAM,KAAK"}