@openrewrite/rewrite 8.69.0-20251211-160325 → 8.69.0-20251211-200238

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.
@@ -34,15 +34,55 @@ const parser_1 = require("../parser");
34
34
  const uuid_1 = require("../uuid");
35
35
  const tree_1 = require("./tree");
36
36
  const parse_error_1 = require("../parse-error");
37
+ const jsonc_parser_1 = require("jsonc-parser");
38
+ // Define token types locally to avoid const enum issues with isolatedModules
39
+ const Token = {
40
+ OpenBraceToken: 1,
41
+ CloseBraceToken: 2,
42
+ OpenBracketToken: 3,
43
+ CloseBracketToken: 4,
44
+ CommaToken: 5,
45
+ ColonToken: 6,
46
+ NullKeyword: 7,
47
+ TrueKeyword: 8,
48
+ FalseKeyword: 9,
49
+ StringLiteral: 10,
50
+ NumericLiteral: 11,
51
+ LineCommentTrivia: 12,
52
+ BlockCommentTrivia: 13,
53
+ LineBreakTrivia: 14,
54
+ Trivia: 15,
55
+ Unknown: 16,
56
+ EOF: 17
57
+ };
58
+ const TokenNames = {
59
+ [Token.OpenBraceToken]: 'OpenBraceToken',
60
+ [Token.CloseBraceToken]: 'CloseBraceToken',
61
+ [Token.OpenBracketToken]: 'OpenBracketToken',
62
+ [Token.CloseBracketToken]: 'CloseBracketToken',
63
+ [Token.CommaToken]: 'CommaToken',
64
+ [Token.ColonToken]: 'ColonToken',
65
+ [Token.NullKeyword]: 'NullKeyword',
66
+ [Token.TrueKeyword]: 'TrueKeyword',
67
+ [Token.FalseKeyword]: 'FalseKeyword',
68
+ [Token.StringLiteral]: 'StringLiteral',
69
+ [Token.NumericLiteral]: 'NumericLiteral',
70
+ [Token.LineCommentTrivia]: 'LineCommentTrivia',
71
+ [Token.BlockCommentTrivia]: 'BlockCommentTrivia',
72
+ [Token.LineBreakTrivia]: 'LineBreakTrivia',
73
+ [Token.Trivia]: 'Trivia',
74
+ [Token.Unknown]: 'Unknown',
75
+ [Token.EOF]: 'EOF'
76
+ };
37
77
  class JsonParser extends parser_1.Parser {
38
78
  parse(...sourcePaths) {
39
79
  return __asyncGenerator(this, arguments, function* parse_1() {
40
80
  for (const sourcePath of sourcePaths) {
41
81
  try {
42
- yield yield __await(Object.assign(Object.assign({}, new ParseJsonReader(sourcePath).parse()), { sourcePath: this.relativePath(sourcePath) }));
82
+ yield yield __await(Object.assign(Object.assign({}, new JsoncParserReader((0, parser_1.parserInputRead)(sourcePath)).parse()), { sourcePath: this.relativePath(sourcePath) }));
43
83
  }
44
84
  catch (e) {
45
- // Return a ParseError for files that can't be parsed (e.g., JSONC with comments)
85
+ // Return a ParseError for files that can't be parsed
46
86
  const text = (0, parser_1.parserInputRead)(sourcePath);
47
87
  const parseError = {
48
88
  kind: parse_error_1.ParseErrorKind,
@@ -64,156 +104,324 @@ class JsonParser extends parser_1.Parser {
64
104
  }
65
105
  }
66
106
  exports.JsonParser = JsonParser;
67
- class ParseJsonReader extends parser_1.ParserSourceReader {
68
- constructor(sourcePath) {
69
- super(sourcePath);
107
+ /**
108
+ * Parser that uses jsonc-parser's scanner for tokenization.
109
+ * This is significantly faster than our custom character-by-character parsing.
110
+ */
111
+ class JsoncParserReader {
112
+ constructor(source) {
113
+ // Use explicit number type to prevent TypeScript from narrowing after switch cases
114
+ // (TypeScript doesn't know that consumeTrivia() and advance() modify this.token)
115
+ this.token = 0;
116
+ this.tokenOffset = 0;
117
+ this.tokenLength = 0;
118
+ this.tokenValue = '';
119
+ this.source = source;
120
+ // ignoreTrivia = false to get whitespace and comments
121
+ this.scanner = (0, jsonc_parser_1.createScanner)(source, false);
122
+ this.advance();
123
+ }
124
+ advance() {
125
+ this.token = this.scanner.scan();
126
+ this.tokenOffset = this.scanner.getTokenOffset();
127
+ this.tokenLength = this.scanner.getTokenLength();
128
+ this.tokenValue = this.scanner.getTokenValue();
129
+ return this.token;
130
+ }
131
+ /**
132
+ * Get current token. This method helps TypeScript understand that the token
133
+ * may have changed after calling consumeTrivia() or advance().
134
+ */
135
+ currentToken() {
136
+ return this.token;
137
+ }
138
+ /**
139
+ * Consumes all trivia (whitespace and comments) and returns them as a single string.
140
+ */
141
+ consumeTrivia() {
142
+ let trivia = '';
143
+ while (this.token === Token.Trivia ||
144
+ this.token === Token.LineBreakTrivia ||
145
+ this.token === Token.LineCommentTrivia ||
146
+ this.token === Token.BlockCommentTrivia) {
147
+ trivia += this.source.slice(this.tokenOffset, this.tokenOffset + this.tokenLength);
148
+ this.advance();
149
+ }
150
+ return trivia;
70
151
  }
71
152
  prefix() {
72
- return (0, tree_1.space)(this.whitespace());
153
+ return (0, tree_1.space)(this.consumeTrivia());
73
154
  }
74
155
  parse() {
156
+ const prefix = this.prefix();
157
+ // Handle empty document
158
+ if (this.token === Token.EOF) {
159
+ return {
160
+ kind: tree_1.Json.Kind.Document,
161
+ id: (0, uuid_1.randomId)(),
162
+ prefix,
163
+ markers: markers_1.emptyMarkers,
164
+ value: {
165
+ kind: tree_1.Json.Kind.Literal,
166
+ id: (0, uuid_1.randomId)(),
167
+ prefix: tree_1.emptySpace,
168
+ markers: markers_1.emptyMarkers,
169
+ source: this.source,
170
+ value: ''
171
+ },
172
+ eof: tree_1.emptySpace
173
+ };
174
+ }
175
+ const value = this.parseValue();
176
+ const eof = this.prefix();
75
177
  return {
76
178
  kind: tree_1.Json.Kind.Document,
77
179
  id: (0, uuid_1.randomId)(),
78
- prefix: this.prefix(),
180
+ prefix,
79
181
  markers: markers_1.emptyMarkers,
80
- value: this.json(JSON.parse(this.source)),
81
- eof: (0, tree_1.space)(this.source.slice(this.cursor))
182
+ value,
183
+ eof
82
184
  };
83
185
  }
84
- json(parsed) {
186
+ parseValue() {
187
+ const prefix = this.prefix();
85
188
  const base = {
86
189
  id: (0, uuid_1.randomId)(),
87
- prefix: this.prefix(),
190
+ prefix,
88
191
  markers: markers_1.emptyMarkers
89
192
  };
90
- if (Array.isArray(parsed)) {
91
- this.cursor++; // skip '['
92
- let values;
93
- if (parsed.length === 0) {
94
- // Empty array - capture whitespace in an Empty element
95
- const afterWhitespace = this.whitespace();
96
- values = [{
97
- kind: tree_1.Json.Kind.RightPadded,
98
- element: {
99
- kind: tree_1.Json.Kind.Empty,
100
- id: (0, uuid_1.randomId)(),
101
- prefix: tree_1.emptySpace,
193
+ switch (this.token) {
194
+ case Token.OpenBraceToken:
195
+ return this.parseObject(base);
196
+ case Token.OpenBracketToken:
197
+ return this.parseArray(base);
198
+ case Token.StringLiteral:
199
+ return this.parseStringLiteral(base);
200
+ case Token.NumericLiteral:
201
+ return this.parseNumericLiteral(base);
202
+ case Token.TrueKeyword:
203
+ this.advance();
204
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source: 'true', value: true });
205
+ case Token.FalseKeyword:
206
+ this.advance();
207
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source: 'false', value: false });
208
+ case Token.NullKeyword:
209
+ this.advance();
210
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source: 'null', value: null });
211
+ default:
212
+ throw new Error(`Unexpected token ${TokenNames[this.token] || this.token} at offset ${this.tokenOffset}`);
213
+ }
214
+ }
215
+ parseObject(base) {
216
+ this.advance(); // consume '{'
217
+ const members = [];
218
+ // Check for empty object
219
+ const afterOpen = this.consumeTrivia();
220
+ if (this.token === Token.CloseBraceToken) {
221
+ this.advance(); // consume '}'
222
+ members.push({
223
+ kind: tree_1.Json.Kind.RightPadded,
224
+ element: {
225
+ kind: tree_1.Json.Kind.Empty,
226
+ id: (0, uuid_1.randomId)(),
227
+ prefix: tree_1.emptySpace,
228
+ markers: markers_1.emptyMarkers
229
+ },
230
+ after: (0, tree_1.space)(afterOpen),
231
+ markers: markers_1.emptyMarkers
232
+ });
233
+ }
234
+ else {
235
+ // Parse members
236
+ // Put back the trivia by prepending it to the key's prefix
237
+ let pendingTrivia = afterOpen;
238
+ while (true) {
239
+ const member = this.parseMember(pendingTrivia);
240
+ pendingTrivia = '';
241
+ const afterMember = this.consumeTrivia();
242
+ if (this.token === Token.CommaToken) {
243
+ this.advance(); // consume ','
244
+ // Check for trailing comma
245
+ const afterComma = this.consumeTrivia();
246
+ if (this.currentToken() === Token.CloseBraceToken) {
247
+ // Trailing comma
248
+ members.push({
249
+ kind: tree_1.Json.Kind.RightPadded,
250
+ element: member,
251
+ after: (0, tree_1.space)(afterMember),
102
252
  markers: markers_1.emptyMarkers
103
- },
104
- after: (0, tree_1.space)(afterWhitespace),
105
- markers: markers_1.emptyMarkers
106
- }];
107
- }
108
- else {
109
- values = parsed.map((p, i) => {
110
- const element = this.json(p);
111
- const afterWhitespace = this.whitespace();
112
- // Check if there's a comma after this element
113
- const hasComma = this.source[this.cursor] === ',';
114
- if (hasComma) {
115
- this.cursor++; // skip ','
253
+ });
254
+ this.advance(); // consume '}'
255
+ members.push({
256
+ kind: tree_1.Json.Kind.RightPadded,
257
+ element: {
258
+ kind: tree_1.Json.Kind.Empty,
259
+ id: (0, uuid_1.randomId)(),
260
+ prefix: tree_1.emptySpace,
261
+ markers: markers_1.emptyMarkers
262
+ },
263
+ after: (0, tree_1.space)(afterComma),
264
+ markers: markers_1.emptyMarkers
265
+ });
266
+ break;
116
267
  }
117
- return {
118
- kind: tree_1.Json.Kind.RightPadded,
119
- element,
120
- after: (0, tree_1.space)(afterWhitespace),
121
- markers: markers_1.emptyMarkers
122
- };
123
- });
124
- }
125
- this.cursor++; // skip ']'
126
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Array }, base), { values });
127
- }
128
- else if (parsed !== null && typeof parsed === "object") {
129
- this.cursor++; // skip '{'
130
- const keys = Object.keys(parsed);
131
- let members;
132
- if (keys.length === 0) {
133
- // Empty object - capture whitespace in an Empty element
134
- const afterWhitespace = this.whitespace();
135
- members = [{
136
- kind: tree_1.Json.Kind.RightPadded,
137
- element: {
138
- kind: tree_1.Json.Kind.Empty,
139
- id: (0, uuid_1.randomId)(),
140
- prefix: tree_1.emptySpace,
268
+ else {
269
+ // More members - save trivia for next member's prefix
270
+ members.push({
271
+ kind: tree_1.Json.Kind.RightPadded,
272
+ element: member,
273
+ after: (0, tree_1.space)(afterMember),
141
274
  markers: markers_1.emptyMarkers
142
- },
143
- after: (0, tree_1.space)(afterWhitespace),
144
- markers: markers_1.emptyMarkers
145
- }];
146
- }
147
- else {
148
- members = keys.map((key, i) => {
149
- const element = this.member(parsed, key);
150
- const afterWhitespace = this.whitespace();
151
- // Check if there's a comma after this element
152
- const hasComma = this.source[this.cursor] === ',';
153
- if (hasComma) {
154
- this.cursor++; // skip ','
275
+ });
276
+ pendingTrivia = afterComma;
155
277
  }
156
- return {
278
+ }
279
+ else if (this.token === Token.CloseBraceToken) {
280
+ this.advance(); // consume '}'
281
+ members.push({
157
282
  kind: tree_1.Json.Kind.RightPadded,
158
- element,
159
- after: (0, tree_1.space)(afterWhitespace),
283
+ element: member,
284
+ after: (0, tree_1.space)(afterMember),
160
285
  markers: markers_1.emptyMarkers
161
- };
162
- });
163
- }
164
- this.cursor++; // skip '}'
165
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Object }, base), { members });
166
- }
167
- else if (typeof parsed === "string") {
168
- // Extract original source to preserve escape sequences
169
- const sourceStart = this.cursor;
170
- this.cursor++; // skip opening quote
171
- while (this.cursor < this.source.length) {
172
- const char = this.source[this.cursor];
173
- if (char === '\\') {
174
- this.cursor += 2; // skip escape sequence
175
- }
176
- else if (char === '"') {
177
- this.cursor++; // skip closing quote
286
+ });
178
287
  break;
179
288
  }
180
289
  else {
181
- this.cursor++;
290
+ throw new Error(`Expected ',' or '}' at offset ${this.tokenOffset}, found ${TokenNames[this.token] || this.token}`);
182
291
  }
183
292
  }
184
- const source = this.source.slice(sourceStart, this.cursor);
185
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source, value: parsed });
186
293
  }
187
- else if (typeof parsed === "number") {
188
- // Extract original source to preserve precision for large numbers
189
- const sourceStart = this.cursor;
190
- // Numbers can have optional sign, digits, decimal point, and exponent
191
- while (this.cursor < this.source.length) {
192
- const char = this.source[this.cursor];
193
- if (/[\d.eE+\-]/.test(char)) {
194
- this.cursor++;
294
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Object }, base), { members });
295
+ }
296
+ parseArray(base) {
297
+ this.advance(); // consume '['
298
+ const values = [];
299
+ // Check for empty array
300
+ const afterOpen = this.consumeTrivia();
301
+ if (this.token === Token.CloseBracketToken) {
302
+ this.advance(); // consume ']'
303
+ values.push({
304
+ kind: tree_1.Json.Kind.RightPadded,
305
+ element: {
306
+ kind: tree_1.Json.Kind.Empty,
307
+ id: (0, uuid_1.randomId)(),
308
+ prefix: tree_1.emptySpace,
309
+ markers: markers_1.emptyMarkers
310
+ },
311
+ after: (0, tree_1.space)(afterOpen),
312
+ markers: markers_1.emptyMarkers
313
+ });
314
+ }
315
+ else {
316
+ // Parse values - need to handle the trivia we already consumed
317
+ // by putting it back as a "pending" prefix
318
+ let pendingTrivia = afterOpen;
319
+ while (true) {
320
+ // For first value, prepend the afterOpen trivia
321
+ const valuePrefix = pendingTrivia + this.consumeTrivia();
322
+ pendingTrivia = '';
323
+ const valueBase = {
324
+ id: (0, uuid_1.randomId)(),
325
+ prefix: (0, tree_1.space)(valuePrefix),
326
+ markers: markers_1.emptyMarkers
327
+ };
328
+ let value;
329
+ switch (this.token) {
330
+ case Token.OpenBraceToken:
331
+ value = this.parseObject(valueBase);
332
+ break;
333
+ case Token.OpenBracketToken:
334
+ value = this.parseArray(valueBase);
335
+ break;
336
+ case Token.StringLiteral:
337
+ value = this.parseStringLiteral(valueBase);
338
+ break;
339
+ case Token.NumericLiteral:
340
+ value = this.parseNumericLiteral(valueBase);
341
+ break;
342
+ case Token.TrueKeyword:
343
+ this.advance();
344
+ value = Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, valueBase), { source: 'true', value: true });
345
+ break;
346
+ case Token.FalseKeyword:
347
+ this.advance();
348
+ value = Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, valueBase), { source: 'false', value: false });
349
+ break;
350
+ case Token.NullKeyword:
351
+ this.advance();
352
+ value = Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, valueBase), { source: 'null', value: null });
353
+ break;
354
+ default:
355
+ throw new Error(`Unexpected token ${TokenNames[this.token] || this.token} in array at offset ${this.tokenOffset}`);
195
356
  }
196
- else {
357
+ const afterValue = this.consumeTrivia();
358
+ if (this.currentToken() === Token.CommaToken) {
359
+ this.advance(); // consume ','
360
+ // Check for trailing comma
361
+ const afterComma = this.consumeTrivia();
362
+ if (this.currentToken() === Token.CloseBracketToken) {
363
+ // Trailing comma
364
+ values.push({
365
+ kind: tree_1.Json.Kind.RightPadded,
366
+ element: value,
367
+ after: (0, tree_1.space)(afterValue),
368
+ markers: markers_1.emptyMarkers
369
+ });
370
+ this.advance(); // consume ']'
371
+ values.push({
372
+ kind: tree_1.Json.Kind.RightPadded,
373
+ element: {
374
+ kind: tree_1.Json.Kind.Empty,
375
+ id: (0, uuid_1.randomId)(),
376
+ prefix: tree_1.emptySpace,
377
+ markers: markers_1.emptyMarkers
378
+ },
379
+ after: (0, tree_1.space)(afterComma),
380
+ markers: markers_1.emptyMarkers
381
+ });
382
+ break;
383
+ }
384
+ else {
385
+ // More values
386
+ values.push({
387
+ kind: tree_1.Json.Kind.RightPadded,
388
+ element: value,
389
+ after: (0, tree_1.space)(afterValue),
390
+ markers: markers_1.emptyMarkers
391
+ });
392
+ pendingTrivia = afterComma;
393
+ }
394
+ }
395
+ else if (this.currentToken() === Token.CloseBracketToken) {
396
+ this.advance(); // consume ']'
397
+ values.push({
398
+ kind: tree_1.Json.Kind.RightPadded,
399
+ element: value,
400
+ after: (0, tree_1.space)(afterValue),
401
+ markers: markers_1.emptyMarkers
402
+ });
197
403
  break;
198
404
  }
405
+ else {
406
+ throw new Error(`Expected ',' or ']' at offset ${this.tokenOffset}, found ${TokenNames[this.currentToken()] || this.currentToken()}`);
407
+ }
199
408
  }
200
- const source = this.source.slice(sourceStart, this.cursor);
201
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source, value: parsed });
202
- }
203
- else if (typeof parsed === "boolean") {
204
- const source = parsed ? "true" : "false";
205
- this.cursor += source.length;
206
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source, value: parsed });
207
- }
208
- else if (parsed === null) {
209
- this.cursor += 4; // "null".length
210
- return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source: "null", value: null });
211
- }
212
- else {
213
- throw new Error(`Unsupported JSON type: ${typeof parsed}`);
214
409
  }
410
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Array }, base), { values });
215
411
  }
216
- member(parsed, key) {
412
+ parseMember(pendingTrivia) {
413
+ const keyPrefix = pendingTrivia + this.consumeTrivia();
414
+ const key = this.parseKey({
415
+ id: (0, uuid_1.randomId)(),
416
+ prefix: (0, tree_1.space)(keyPrefix),
417
+ markers: markers_1.emptyMarkers
418
+ });
419
+ const afterKey = this.consumeTrivia();
420
+ if (this.token !== Token.ColonToken) {
421
+ throw new Error(`Expected ':' at offset ${this.tokenOffset}, found ${TokenNames[this.token] || this.token}`);
422
+ }
423
+ this.advance(); // consume ':'
424
+ const value = this.parseValue();
217
425
  return {
218
426
  kind: tree_1.Json.Kind.Member,
219
427
  id: (0, uuid_1.randomId)(),
@@ -222,11 +430,35 @@ class ParseJsonReader extends parser_1.ParserSourceReader {
222
430
  key: {
223
431
  kind: tree_1.Json.Kind.RightPadded,
224
432
  markers: markers_1.emptyMarkers,
225
- element: this.json(key),
226
- after: (0, tree_1.space)(this.sourceBefore(":")),
433
+ element: key,
434
+ after: (0, tree_1.space)(afterKey)
227
435
  },
228
- value: this.json(parsed[key])
436
+ value
229
437
  };
230
438
  }
439
+ /**
440
+ * Parses a key which is a string literal in standard JSON/JSONC.
441
+ * Note: jsonc-parser doesn't support JSON5 unquoted identifiers.
442
+ */
443
+ parseKey(base) {
444
+ if (this.token !== Token.StringLiteral) {
445
+ throw new Error(`Expected string key at offset ${this.tokenOffset}, found ${TokenNames[this.token] || this.token}`);
446
+ }
447
+ return this.parseStringLiteral(base);
448
+ }
449
+ parseStringLiteral(base) {
450
+ const source = this.source.slice(this.tokenOffset, this.tokenOffset + this.tokenLength);
451
+ const value = this.tokenValue;
452
+ this.advance();
453
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source,
454
+ value });
455
+ }
456
+ parseNumericLiteral(base) {
457
+ const source = this.source.slice(this.tokenOffset, this.tokenOffset + this.tokenLength);
458
+ const value = parseFloat(source);
459
+ this.advance();
460
+ return Object.assign(Object.assign({ kind: tree_1.Json.Kind.Literal }, base), { source,
461
+ value });
462
+ }
231
463
  }
232
464
  //# sourceMappingURL=parser.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/json/parser.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"parser.js","sourceRoot":"","sources":["../../src/json/parser.ts"],"names":[],"mappings":"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"}
@@ -67,8 +67,12 @@ export declare namespace Json {
67
67
  readonly markers: Markers;
68
68
  }
69
69
  }
70
- export declare function space(whitespace: string): Json.Space;
71
70
  export declare const emptySpace: Json.Space;
71
+ /**
72
+ * Parse a formatting string into a Space object, extracting comments.
73
+ * Mirrors the Java Space.format() method.
74
+ */
75
+ export declare function space(formatting: string): Json.Space;
72
76
  export declare function isJson(tree: any): tree is Json;
73
77
  export declare function isLiteral(json: Json): json is Json.Literal;
74
78
  export declare function isObject(json: Json): json is Json.Object;
@@ -1 +1 @@
1
- {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/json/tree.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tree.d.ts","sourceRoot":"","sources":["../../src/json/tree.ts"],"names":[],"mappings":"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"}