nestjs-paginate 2.4.4 → 2.5.2

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.
@@ -1,64 +1,47 @@
1
1
  "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
2
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.CatEntity = void 0;
13
3
  const typeorm_1 = require("typeorm");
14
4
  const paginate_1 = require("./paginate");
15
- const typeorm_2 = require("typeorm");
16
5
  const common_1 = require("@nestjs/common");
17
- let CatEntity = class CatEntity {
18
- };
19
- __decorate([
20
- (0, typeorm_2.PrimaryGeneratedColumn)(),
21
- __metadata("design:type", Number)
22
- ], CatEntity.prototype, "id", void 0);
23
- __decorate([
24
- (0, typeorm_1.Column)(),
25
- __metadata("design:type", String)
26
- ], CatEntity.prototype, "name", void 0);
27
- __decorate([
28
- (0, typeorm_1.Column)(),
29
- __metadata("design:type", String)
30
- ], CatEntity.prototype, "color", void 0);
31
- __decorate([
32
- (0, typeorm_1.Column)({ nullable: true }),
33
- __metadata("design:type", Number)
34
- ], CatEntity.prototype, "age", void 0);
35
- __decorate([
36
- (0, typeorm_2.CreateDateColumn)(),
37
- __metadata("design:type", String)
38
- ], CatEntity.prototype, "createdAt", void 0);
39
- CatEntity = __decorate([
40
- (0, typeorm_2.Entity)()
41
- ], CatEntity);
42
- exports.CatEntity = CatEntity;
6
+ const cat_entity_1 = require("./__tests__/cat.entity");
7
+ const cat_toy_entity_1 = require("./__tests__/cat-toy.entity");
8
+ const cat_home_entity_1 = require("./__tests__/cat-home.entity");
9
+ const lodash_1 = require("lodash");
43
10
  describe('paginate', () => {
44
11
  let connection;
45
- let repo;
12
+ let catRepo;
13
+ let catToyRepo;
14
+ let catHomeRepo;
46
15
  let cats;
16
+ let catToys;
17
+ let catHomes;
47
18
  beforeAll(async () => {
48
19
  connection = await (0, typeorm_1.createConnection)({
49
20
  type: 'sqlite',
50
21
  database: ':memory:',
51
22
  synchronize: true,
52
23
  logging: false,
53
- entities: [CatEntity],
24
+ entities: [cat_entity_1.CatEntity, cat_toy_entity_1.CatToyEntity, cat_home_entity_1.CatHomeEntity],
54
25
  });
55
- repo = connection.getRepository(CatEntity);
56
- cats = await repo.save([
57
- repo.create({ name: 'Milo', color: 'brown', age: 6 }),
58
- repo.create({ name: 'Garfield', color: 'ginger', age: 5 }),
59
- repo.create({ name: 'Shadow', color: 'black', age: 4 }),
60
- repo.create({ name: 'George', color: 'white', age: 3 }),
61
- repo.create({ name: 'Leche', color: 'white', age: null }),
26
+ catRepo = connection.getRepository(cat_entity_1.CatEntity);
27
+ catToyRepo = connection.getRepository(cat_toy_entity_1.CatToyEntity);
28
+ catHomeRepo = connection.getRepository(cat_home_entity_1.CatHomeEntity);
29
+ cats = await catRepo.save([
30
+ catRepo.create({ name: 'Milo', color: 'brown', age: 6 }),
31
+ catRepo.create({ name: 'Garfield', color: 'ginger', age: 5 }),
32
+ catRepo.create({ name: 'Shadow', color: 'black', age: 4 }),
33
+ catRepo.create({ name: 'George', color: 'white', age: 3 }),
34
+ catRepo.create({ name: 'Leche', color: 'white', age: null }),
35
+ ]);
36
+ catToys = await catToyRepo.save([
37
+ catToyRepo.create({ name: 'Fuzzy Thing', cat: cats[0] }),
38
+ catToyRepo.create({ name: 'Stuffed Mouse', cat: cats[0] }),
39
+ catToyRepo.create({ name: 'Mouse', cat: cats[0] }),
40
+ catToyRepo.create({ name: 'String', cat: cats[1] }),
41
+ ]);
42
+ catHomes = await catHomeRepo.save([
43
+ catHomeRepo.create({ name: 'Box', cat: cats[0] }),
44
+ catHomeRepo.create({ name: 'House', cat: cats[1] }),
62
45
  ]);
63
46
  });
64
47
  it('should return an instance of Paginated', async () => {
@@ -70,7 +53,7 @@ describe('paginate', () => {
70
53
  const query = {
71
54
  path: '',
72
55
  };
73
- const result = await (0, paginate_1.paginate)(query, repo, config);
56
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
74
57
  expect(result).toBeInstanceOf(paginate_1.Paginated);
75
58
  expect(result.data).toStrictEqual(cats.slice(0, 1));
76
59
  });
@@ -83,7 +66,7 @@ describe('paginate', () => {
83
66
  const query = {
84
67
  path: '',
85
68
  };
86
- const queryBuilder = await repo.createQueryBuilder('cats');
69
+ const queryBuilder = await catRepo.createQueryBuilder('cats');
87
70
  const result = await (0, paginate_1.paginate)(query, queryBuilder, config);
88
71
  expect(result.data).toStrictEqual(cats.slice(0, 1));
89
72
  });
@@ -99,7 +82,7 @@ describe('paginate', () => {
99
82
  const queryBuilder = await connection
100
83
  .createQueryBuilder()
101
84
  .select('cats')
102
- .from(CatEntity, 'cats')
85
+ .from(cat_entity_1.CatEntity, 'cats')
103
86
  .where('cats.color = :color', { color: 'white' });
104
87
  const result = await (0, paginate_1.paginate)(query, queryBuilder, config);
105
88
  expect(result.data).toStrictEqual(cats.slice(3, 4));
@@ -113,7 +96,7 @@ describe('paginate', () => {
113
96
  path: '',
114
97
  page: -1,
115
98
  };
116
- const result = await (0, paginate_1.paginate)(query, repo, config);
99
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
117
100
  expect(result.meta.currentPage).toBe(1);
118
101
  expect(result.data).toStrictEqual(cats.slice(0, 1));
119
102
  });
@@ -128,7 +111,7 @@ describe('paginate', () => {
128
111
  page: 1,
129
112
  limit: 20,
130
113
  };
131
- const result = await (0, paginate_1.paginate)(query, repo, config);
114
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
132
115
  expect(result.data).toStrictEqual(cats.slice(0, 2));
133
116
  });
134
117
  it('should return correct links for some results', async () => {
@@ -140,7 +123,7 @@ describe('paginate', () => {
140
123
  page: 2,
141
124
  limit: 2,
142
125
  };
143
- const { links } = await (0, paginate_1.paginate)(query, repo, config);
126
+ const { links } = await (0, paginate_1.paginate)(query, catRepo, config);
144
127
  expect(links.first).toBe('?page=1&limit=2&sortBy=id:ASC');
145
128
  expect(links.previous).toBe('?page=1&limit=2&sortBy=id:ASC');
146
129
  expect(links.current).toBe('?page=2&limit=2&sortBy=id:ASC');
@@ -158,7 +141,7 @@ describe('paginate', () => {
158
141
  limit: 2,
159
142
  search: 'Pluto',
160
143
  };
161
- const { links } = await (0, paginate_1.paginate)(query, repo, config);
144
+ const { links } = await (0, paginate_1.paginate)(query, catRepo, config);
162
145
  expect(links.first).toBe(undefined);
163
146
  expect(links.previous).toBe(undefined);
164
147
  expect(links.current).toBe('?page=1&limit=2&sortBy=id:ASC&search=Pluto');
@@ -173,7 +156,7 @@ describe('paginate', () => {
173
156
  const query = {
174
157
  path: '',
175
158
  };
176
- const result = await (0, paginate_1.paginate)(query, repo, config);
159
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
177
160
  expect(result.meta.sortBy).toStrictEqual([['id', 'DESC']]);
178
161
  expect(result.data).toStrictEqual(cats.slice(0).reverse());
179
162
  });
@@ -188,13 +171,16 @@ describe('paginate', () => {
188
171
  ['name', 'ASC'],
189
172
  ],
190
173
  };
191
- const result = await (0, paginate_1.paginate)(query, repo, config);
174
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
192
175
  expect(result.meta.sortBy).toStrictEqual([
193
176
  ['color', 'DESC'],
194
177
  ['name', 'ASC'],
195
178
  ]);
196
179
  expect(result.data).toStrictEqual([cats[3], cats[4], cats[1], cats[0], cats[2]]);
197
180
  });
181
+ /**
182
+ * search
183
+ */
198
184
  it('should return result based on search term', async () => {
199
185
  const config = {
200
186
  sortableColumns: ['id', 'name', 'color'],
@@ -204,11 +190,110 @@ describe('paginate', () => {
204
190
  path: '',
205
191
  search: 'i',
206
192
  };
207
- const result = await (0, paginate_1.paginate)(query, repo, config);
193
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
208
194
  expect(result.meta.search).toStrictEqual('i');
209
195
  expect(result.data).toStrictEqual([cats[0], cats[1], cats[3], cats[4]]);
210
196
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&search=i');
211
197
  });
198
+ it('should return result based on search term on many-to-one relation', async () => {
199
+ const config = {
200
+ relations: ['cat'],
201
+ sortableColumns: ['id', 'name'],
202
+ searchableColumns: ['name', 'cat.name'],
203
+ };
204
+ const query = {
205
+ path: '',
206
+ search: 'Milo',
207
+ };
208
+ const result = await (0, paginate_1.paginate)(query, catToyRepo, config);
209
+ expect(result.meta.search).toStrictEqual('Milo');
210
+ expect(result.data).toStrictEqual([catToys[0], catToys[1], catToys[2]]);
211
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&search=Milo');
212
+ });
213
+ it('should return result based on search term on one-to-many relation', async () => {
214
+ const config = {
215
+ relations: ['toys'],
216
+ sortableColumns: ['id', 'name'],
217
+ searchableColumns: ['name', 'toys.name'],
218
+ };
219
+ const query = {
220
+ path: '',
221
+ search: 'Mouse',
222
+ };
223
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
224
+ expect(result.meta.search).toStrictEqual('Mouse');
225
+ const toy = (0, lodash_1.clone)(catToys[1]);
226
+ delete toy.cat;
227
+ const toy2 = (0, lodash_1.clone)(catToys[2]);
228
+ delete toy2.cat;
229
+ expect(result.data).toStrictEqual([Object.assign((0, lodash_1.clone)(cats[0]), { toys: [toy, toy2] })]);
230
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&search=Mouse');
231
+ });
232
+ it('should return result based on search term on one-to-one relation', async () => {
233
+ const config = {
234
+ relations: ['cat'],
235
+ sortableColumns: ['id', 'name', 'cat.id'],
236
+ };
237
+ const query = {
238
+ path: '',
239
+ sortBy: [['cat.id', 'DESC']],
240
+ };
241
+ const result = await (0, paginate_1.paginate)(query, catHomeRepo, config);
242
+ expect(result.meta.sortBy).toStrictEqual([['cat.id', 'DESC']]);
243
+ expect(result.data).toStrictEqual([catHomes[0], catHomes[1]].sort((a, b) => b.cat.id - a.cat.id));
244
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=cat.id:DESC');
245
+ });
246
+ it('should return result based on sort and search on many-to-one relation', async () => {
247
+ const config = {
248
+ relations: ['cat'],
249
+ sortableColumns: ['id', 'name', 'cat.id'],
250
+ searchableColumns: ['name', 'cat.name'],
251
+ };
252
+ const query = {
253
+ path: '',
254
+ sortBy: [['cat.id', 'DESC']],
255
+ search: 'Milo',
256
+ };
257
+ const result = await (0, paginate_1.paginate)(query, catToyRepo, config);
258
+ expect(result.meta.search).toStrictEqual('Milo');
259
+ expect(result.data).toStrictEqual([catToys[0], catToys[1], catToys[2]].sort((a, b) => b.cat.id - a.cat.id));
260
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=cat.id:DESC&search=Milo');
261
+ });
262
+ it('should return result based on sort on one-to-many relation', async () => {
263
+ const config = {
264
+ relations: ['toys'],
265
+ sortableColumns: ['id', 'name', 'toys.id'],
266
+ searchableColumns: ['name', 'toys.name'],
267
+ };
268
+ const query = {
269
+ path: '',
270
+ sortBy: [['toys.id', 'DESC']],
271
+ search: 'Mouse',
272
+ };
273
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
274
+ expect(result.meta.search).toStrictEqual('Mouse');
275
+ const toy1 = (0, lodash_1.clone)(catToys[1]);
276
+ delete toy1.cat;
277
+ const toy2 = (0, lodash_1.clone)(catToys[2]);
278
+ delete toy2.cat;
279
+ expect(result.data).toStrictEqual([Object.assign((0, lodash_1.clone)(cats[0]), { toys: [toy2, toy1] })]);
280
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=toys.id:DESC&search=Mouse');
281
+ });
282
+ it('should return result based on sort on one-to-one relation', async () => {
283
+ const config = {
284
+ relations: ['cat'],
285
+ sortableColumns: ['id', 'name'],
286
+ searchableColumns: ['name', 'cat.name'],
287
+ };
288
+ const query = {
289
+ path: '',
290
+ search: 'Garfield',
291
+ };
292
+ const result = await (0, paginate_1.paginate)(query, catHomeRepo, config);
293
+ expect(result.meta.search).toStrictEqual('Garfield');
294
+ expect(result.data).toStrictEqual([catHomes[1]]);
295
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&search=Garfield');
296
+ });
212
297
  it('should return result based on search term and searchBy columns', async () => {
213
298
  const config = {
214
299
  sortableColumns: ['id', 'name', 'color'],
@@ -221,7 +306,7 @@ describe('paginate', () => {
221
306
  search: searchTerm,
222
307
  searchBy: ['color'],
223
308
  };
224
- const result = await (0, paginate_1.paginate)(query, repo, config);
309
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
225
310
  expect(result.meta.search).toStrictEqual(searchTerm);
226
311
  expect(result.meta.searchBy).toStrictEqual(['color']);
227
312
  expect(result.data).toStrictEqual(expectedResultData);
@@ -243,13 +328,128 @@ describe('paginate', () => {
243
328
  name: '$not:Leche',
244
329
  },
245
330
  };
246
- const result = await (0, paginate_1.paginate)(query, repo, config);
331
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
247
332
  expect(result.meta.filter).toStrictEqual({
248
333
  name: '$not:Leche',
249
334
  });
250
335
  expect(result.data).toStrictEqual([cats[3]]);
251
336
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.name=$not:Leche');
252
337
  });
338
+ it('should return result based on filter on many-to-one relation', async () => {
339
+ const config = {
340
+ relations: ['cat'],
341
+ sortableColumns: ['id', 'name'],
342
+ filterableColumns: {
343
+ 'cat.name': [paginate_1.FilterOperator.NOT],
344
+ },
345
+ };
346
+ const query = {
347
+ path: '',
348
+ filter: {
349
+ 'cat.name': '$not:Milo',
350
+ },
351
+ };
352
+ const result = await (0, paginate_1.paginate)(query, catToyRepo, config);
353
+ expect(result.meta.filter).toStrictEqual({
354
+ 'cat.name': '$not:Milo',
355
+ });
356
+ expect(result.data).toStrictEqual([catToys[3]]);
357
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.cat.name=$not:Milo');
358
+ });
359
+ it('should return result based on filter on one-to-many relation', async () => {
360
+ const config = {
361
+ relations: ['toys'],
362
+ sortableColumns: ['id', 'name'],
363
+ filterableColumns: {
364
+ 'toys.name': [paginate_1.FilterOperator.NOT],
365
+ },
366
+ };
367
+ const query = {
368
+ path: '',
369
+ filter: {
370
+ 'toys.name': '$not:Stuffed Mouse',
371
+ },
372
+ };
373
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
374
+ const cat1 = (0, lodash_1.clone)(cats[0]);
375
+ const cat2 = (0, lodash_1.clone)(cats[1]);
376
+ const catToys1 = (0, lodash_1.clone)(catToys[0]);
377
+ const catToys2 = (0, lodash_1.clone)(catToys[2]);
378
+ const catToys3 = (0, lodash_1.clone)(catToys[3]);
379
+ delete catToys1.cat;
380
+ delete catToys2.cat;
381
+ delete catToys3.cat;
382
+ cat1.toys = [catToys1, catToys2];
383
+ cat2.toys = [catToys3];
384
+ expect(result.meta.filter).toStrictEqual({
385
+ 'toys.name': '$not:Stuffed Mouse',
386
+ });
387
+ expect(result.data).toStrictEqual([cat1, cat2]);
388
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.toys.name=$not:Stuffed Mouse');
389
+ });
390
+ it('should return result based on filter on one-to-one relation', async () => {
391
+ const config = {
392
+ relations: ['cat'],
393
+ sortableColumns: ['id', 'name'],
394
+ filterableColumns: {
395
+ 'cat.name': [paginate_1.FilterOperator.NOT],
396
+ },
397
+ };
398
+ const query = {
399
+ path: '',
400
+ filter: {
401
+ 'cat.name': '$not:Garfield',
402
+ },
403
+ };
404
+ const result = await (0, paginate_1.paginate)(query, catHomeRepo, config);
405
+ expect(result.meta.filter).toStrictEqual({
406
+ 'cat.name': '$not:Garfield',
407
+ });
408
+ expect(result.data).toStrictEqual([catHomes[0]]);
409
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.cat.name=$not:Garfield');
410
+ });
411
+ it('should return result based on $in filter on one-to-one relation', async () => {
412
+ const config = {
413
+ relations: ['cat'],
414
+ sortableColumns: ['id', 'name'],
415
+ filterableColumns: {
416
+ 'cat.age': [paginate_1.FilterOperator.IN],
417
+ },
418
+ };
419
+ const query = {
420
+ path: '',
421
+ filter: {
422
+ 'cat.age': '$in:4,6',
423
+ },
424
+ };
425
+ const result = await (0, paginate_1.paginate)(query, catHomeRepo, config);
426
+ expect(result.meta.filter).toStrictEqual({
427
+ 'cat.age': '$in:4,6',
428
+ });
429
+ expect(result.data).toStrictEqual([catHomes[0]]);
430
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.cat.age=$in:4,6');
431
+ });
432
+ it('should return result based on $btw filter on one-to-one relation', async () => {
433
+ const config = {
434
+ relations: ['cat'],
435
+ sortableColumns: ['id', 'name'],
436
+ filterableColumns: {
437
+ 'cat.age': [paginate_1.FilterOperator.BTW],
438
+ },
439
+ };
440
+ const query = {
441
+ path: '',
442
+ filter: {
443
+ 'cat.age': '$btw:6,10',
444
+ },
445
+ };
446
+ const result = await (0, paginate_1.paginate)(query, catHomeRepo, config);
447
+ expect(result.meta.filter).toStrictEqual({
448
+ 'cat.age': '$btw:6,10',
449
+ });
450
+ expect(result.data).toStrictEqual([catHomes[0]]);
451
+ expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.cat.age=$btw:6,10');
452
+ });
253
453
  it('should return result based on where array and filter', async () => {
254
454
  const config = {
255
455
  sortableColumns: ['id'],
@@ -271,7 +471,7 @@ describe('paginate', () => {
271
471
  name: '$not:Leche',
272
472
  },
273
473
  };
274
- const result = await (0, paginate_1.paginate)(query, repo, config);
474
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
275
475
  expect(result.meta.filter).toStrictEqual({
276
476
  name: '$not:Leche',
277
477
  });
@@ -293,7 +493,7 @@ describe('paginate', () => {
293
493
  color: 'white',
294
494
  },
295
495
  };
296
- const result = await (0, paginate_1.paginate)(query, repo, config);
496
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
297
497
  expect(result.meta.filter).toStrictEqual({
298
498
  name: '$not:Leche',
299
499
  color: 'white',
@@ -316,7 +516,7 @@ describe('paginate', () => {
316
516
  id: '$not:$in:1,2,5',
317
517
  },
318
518
  };
319
- const result = await (0, paginate_1.paginate)(query, repo, config);
519
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
320
520
  expect(result.meta.search).toStrictEqual('white');
321
521
  expect(result.meta.filter).toStrictEqual({ id: '$not:$in:1,2,5' });
322
522
  expect(result.data).toStrictEqual([cats[3]]);
@@ -338,7 +538,7 @@ describe('paginate', () => {
338
538
  id: '$not:$in:1,2,5',
339
539
  },
340
540
  };
341
- const result = await (0, paginate_1.paginate)(query, repo, config);
541
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
342
542
  expect(result.data).toStrictEqual([cats[2], cats[3]]);
343
543
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.id=$not:$in:1,2,5');
344
544
  });
@@ -355,7 +555,7 @@ describe('paginate', () => {
355
555
  age: '$gte:4',
356
556
  },
357
557
  };
358
- const result = await (0, paginate_1.paginate)(query, repo, config);
558
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
359
559
  expect(result.data).toStrictEqual([cats[0], cats[1], cats[2]]);
360
560
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$gte:4');
361
561
  });
@@ -372,7 +572,7 @@ describe('paginate', () => {
372
572
  age: '$btw:4,5',
373
573
  },
374
574
  };
375
- const result = await (0, paginate_1.paginate)(query, repo, config);
575
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
376
576
  expect(result.data).toStrictEqual([cats[1], cats[2]]);
377
577
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$btw:4,5');
378
578
  });
@@ -389,7 +589,7 @@ describe('paginate', () => {
389
589
  age: '$null',
390
590
  },
391
591
  };
392
- const result = await (0, paginate_1.paginate)(query, repo, config);
592
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
393
593
  expect(result.data).toStrictEqual([cats[4]]);
394
594
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$null');
395
595
  });
@@ -406,7 +606,7 @@ describe('paginate', () => {
406
606
  age: '$not:$null',
407
607
  },
408
608
  };
409
- const result = await (0, paginate_1.paginate)(query, repo, config);
609
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
410
610
  expect(result.data).toStrictEqual([cats[0], cats[1], cats[2], cats[3]]);
411
611
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$not:$null');
412
612
  });
@@ -423,7 +623,7 @@ describe('paginate', () => {
423
623
  age: '$not:$null',
424
624
  },
425
625
  };
426
- const result = await (0, paginate_1.paginate)(query, repo, config);
626
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
427
627
  expect(result.data).toStrictEqual(cats);
428
628
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$not:$null');
429
629
  });
@@ -440,7 +640,7 @@ describe('paginate', () => {
440
640
  age: '$not:$null',
441
641
  },
442
642
  };
443
- const result = await (0, paginate_1.paginate)(query, repo, config);
643
+ const result = await (0, paginate_1.paginate)(query, catRepo, config);
444
644
  expect(result.data).toStrictEqual(cats);
445
645
  expect(result.links.current).toBe('?page=1&limit=20&sortBy=id:ASC&filter.age=$not:$null');
446
646
  });
@@ -452,7 +652,7 @@ describe('paginate', () => {
452
652
  path: '',
453
653
  };
454
654
  try {
455
- await (0, paginate_1.paginate)(query, repo, config);
655
+ await (0, paginate_1.paginate)(query, catRepo, config);
456
656
  }
457
657
  catch (err) {
458
658
  expect(err).toBeInstanceOf(common_1.HttpException);
@@ -1 +1 @@
1
- {"version":3,"file":"paginate.spec.js","sourceRoot":"","sources":["../src/paginate.spec.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paginate.spec.js","sourceRoot":"","sources":["../src/paginate.spec.ts"],"names":[],"mappings":";;AAAA,qCAAsE;AACtE,yCAQmB;AAEnB,2CAA8C;AAC9C,uDAAkD;AAClD,+DAAyD;AACzD,iEAA2D;AAC3D,mCAA8B;AAE9B,QAAQ,CAAC,UAAU,EAAE,GAAG,EAAE;IACtB,IAAI,UAAsB,CAAA;IAC1B,IAAI,OAA8B,CAAA;IAClC,IAAI,UAAoC,CAAA;IACxC,IAAI,WAAsC,CAAA;IAC1C,IAAI,IAAiB,CAAA;IACrB,IAAI,OAAuB,CAAA;IAC3B,IAAI,QAAyB,CAAA;IAE7B,SAAS,CAAC,KAAK,IAAI,EAAE;QACjB,UAAU,GAAG,MAAM,IAAA,0BAAgB,EAAC;YAChC,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,UAAU;YACpB,WAAW,EAAE,IAAI;YACjB,OAAO,EAAE,KAAK;YACd,QAAQ,EAAE,CAAC,sBAAS,EAAE,6BAAY,EAAE,+BAAa,CAAC;SACrD,CAAC,CAAA;QACF,OAAO,GAAG,UAAU,CAAC,aAAa,CAAC,sBAAS,CAAC,CAAA;QAC7C,UAAU,GAAG,UAAU,CAAC,aAAa,CAAC,6BAAY,CAAC,CAAA;QACnD,WAAW,GAAG,UAAU,CAAC,aAAa,CAAC,+BAAa,CAAC,CAAA;QACrD,IAAI,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;YACtB,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YACxD,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAC7D,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,CAAC,EAAE,CAAC;YAC1D,OAAO,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;SAC/D,CAAC,CAAA;QACF,OAAO,GAAG,MAAM,UAAU,CAAC,IAAI,CAAC;YAC5B,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,aAAa,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACxD,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,eAAe,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1D,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,UAAU,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAA;QACF,QAAQ,GAAG,MAAM,WAAW,CAAC,IAAI,CAAC;YAC9B,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YACjD,WAAW,CAAC,MAAM,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;SACtD,CAAC,CAAA;IACN,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9B,YAAY,EAAE,CAAC;SAClB,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,CAAC,cAAc,CAAC,oBAAS,CAAC,CAAA;QACxC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+BAA+B,EAAE,KAAK,IAAI,EAAE;QAC3C,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9B,YAAY,EAAE,CAAC;SAClB,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,MAAM,YAAY,GAAG,MAAM,OAAO,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;QAE7D,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,CAAA;QAErE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;YAC9B,YAAY,EAAE,CAAC;SAClB,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,MAAM,YAAY,GAAG,MAAM,UAAU;aAChC,kBAAkB,EAAE;aACpB,MAAM,CAAC,MAAM,CAAC;aACd,IAAI,CAAC,sBAAS,EAAE,MAAM,CAAC;aACvB,KAAK,CAAC,qBAAqB,EAAE,EAAE,KAAK,EAAE,OAAO,EAAE,CAAC,CAAA;QAErD,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,CAAA;QAErE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,qDAAqD,EAAE,KAAK,IAAI,EAAE;QACjE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,YAAY,EAAE,CAAC;SAClB,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,CAAC,CAAC;SACX,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAA;QACvC,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,YAAY,EAAE,CAAC;YACf,QAAQ,EAAE,CAAC;SACd,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,EAAE;SACZ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;IACvD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;SAC1B,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;SACX,CAAA;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEnE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;QACzD,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;QAC5D,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;QAC3D,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;QACxD,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAA;IAC5D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iDAAiD,EAAE,KAAK,IAAI,EAAE;QAC7D,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE,CAAC,MAAM,CAAC;SAC9B,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,IAAI,EAAE,CAAC;YACP,KAAK,EAAE,CAAC;YACR,MAAM,EAAE,OAAO;SAClB,CAAA;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEnE,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACnC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QACtC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;QACxE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;QAClC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACtC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,EAAE,WAAW,CAAC;YACpC,aAAa,EAAE,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;SAClC,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;QAC1D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;IAC9D,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,wCAAwC,EAAE,KAAK,IAAI,EAAE;QACpD,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;SACrC,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,CAAC,OAAO,EAAE,MAAM,CAAC;gBACjB,CAAC,MAAM,EAAE,KAAK,CAAC;aAClB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,CAAC,OAAO,EAAE,MAAM,CAAC;YACjB,CAAC,MAAM,EAAE,KAAK,CAAC;SAClB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IACpF,CAAC,CAAC,CAAA;IAEF;;OAEG;IAEH,EAAE,CAAC,2CAA2C,EAAE,KAAK,IAAI,EAAE;QACvD,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;YACxC,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;SACvC,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,GAAG;SACd,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAA;QAC7C,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yCAAyC,CAAC,CAAA;IAChF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,MAAM,GAAiC;YACzC,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SAC1C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,MAAM;SACjB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAe,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAEtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4CAA4C,CAAC,CAAA;IACnF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,mEAAmE,EAAE,KAAK,IAAI,EAAE;QAC/E,MAAM,MAAM,GAA8B;YACtC,SAAS,EAAE,CAAC,MAAM,CAAC;YACnB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;SAC3C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,OAAO;SAClB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACjD,MAAM,GAAG,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7B,OAAO,GAAG,CAAC,GAAG,CAAA;QACd,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAA;QACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAA,cAAK,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QACzF,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAA;IACpF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,MAAM,GAAkC;YAC1C,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC;SAC5C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;SAC/B,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QACxE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QACjG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAA;IAC5E,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uEAAuE,EAAE,KAAK,IAAI,EAAE;QACnF,MAAM,MAAM,GAAiC;YACzC,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC;YACzC,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SAC1C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;YAC5B,MAAM,EAAE,MAAM;SACjB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAe,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAEtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QAC3G,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4DAA4D,EAAE,KAAK,IAAI,EAAE;QACxE,MAAM,MAAM,GAA8B;YACtC,SAAS,EAAE,CAAC,MAAM,CAAC;YACnB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC;YAC1C,iBAAiB,EAAE,CAAC,MAAM,EAAE,WAAW,CAAC;SAC3C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,CAAC,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;YAC7B,MAAM,EAAE,OAAO;SAClB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACjD,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAA;QACf,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9B,OAAO,IAAI,CAAC,GAAG,CAAA;QACf,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,IAAA,cAAK,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC1F,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,mDAAmD,CAAC,CAAA;IAC1F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,2DAA2D,EAAE,KAAK,IAAI,EAAE;QACvE,MAAM,MAAM,GAAkC;YAC1C,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE,CAAC,MAAM,EAAE,UAAU,CAAC;SAC1C,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,UAAU;SACrB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QAExE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAA;IACvF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,gEAAgE,EAAE,KAAK,IAAI,EAAE;QAC5E,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC;YACxC,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;SACvC,CAAA;QAED,MAAM,UAAU,GAAG,OAAO,CAAA;QAC1B,MAAM,kBAAkB,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,GAAc,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,KAAK,UAAU,CAAC,CAAA;QAEpF,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,UAAU;YAClB,QAAQ,EAAE,CAAC,OAAO,CAAC;SACtB,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,UAAU,CAAC,CAAA;QACpD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,kBAAkB,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,4DAA4D,CAAC,CAAA;IACnG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,KAAK,EAAE;gBACH,KAAK,EAAE,OAAO;aACjB;YACD,iBAAiB,EAAE;gBACf,IAAI,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAC7B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,IAAI,EAAE,YAAY;aACrB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,IAAI,EAAE,YAAY;SACrB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAAiC;YACzC,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE;gBACf,UAAU,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aACnC;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,UAAU,EAAE,WAAW;aAC1B;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAe,KAAK,EAAE,UAAU,EAAE,MAAM,CAAC,CAAA;QAEtE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,UAAU,EAAE,WAAW;SAC1B,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAA;IACjG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8DAA8D,EAAE,KAAK,IAAI,EAAE;QAC1E,MAAM,MAAM,GAA8B;YACtC,SAAS,EAAE,CAAC,MAAM,CAAC;YACnB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE;gBACf,WAAW,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aACpC;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,WAAW,EAAE,oBAAoB;aACpC;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3B,MAAM,IAAI,GAAG,IAAA,cAAK,EAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3B,MAAM,QAAQ,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,MAAM,QAAQ,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,MAAM,QAAQ,GAAG,IAAA,cAAK,EAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,OAAO,QAAQ,CAAC,GAAG,CAAA;QACnB,OAAO,QAAQ,CAAC,GAAG,CAAA;QACnB,OAAO,QAAQ,CAAC,GAAG,CAAA;QACnB,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAA;QAChC,IAAI,CAAC,IAAI,GAAG,CAAC,QAAQ,CAAC,CAAA;QAEtB,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,WAAW,EAAE,oBAAoB;SACpC,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,CAAA;QAC/C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,oEAAoE,CAAC,CAAA;IAC3G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6DAA6D,EAAE,KAAK,IAAI,EAAE;QACzE,MAAM,MAAM,GAAkC;YAC1C,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE;gBACf,UAAU,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aACnC;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,UAAU,EAAE,eAAe;aAC9B;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QAExE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,UAAU,EAAE,eAAe;SAC9B,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,8DAA8D,CAAC,CAAA;IACrG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,iEAAiE,EAAE,KAAK,IAAI,EAAE;QAC7E,MAAM,MAAM,GAAkC;YAC1C,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE;gBACf,SAAS,EAAE,CAAC,yBAAc,CAAC,EAAE,CAAC;aACjC;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,SAAS,EAAE,SAAS;aACvB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QAExE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,SAAS,EAAE,SAAS;SACvB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,kEAAkE,EAAE,KAAK,IAAI,EAAE;QAC9E,MAAM,MAAM,GAAkC;YAC1C,SAAS,EAAE,CAAC,KAAK,CAAC;YAClB,eAAe,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC;YAC/B,iBAAiB,EAAE;gBACf,SAAS,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAClC;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,SAAS,EAAE,WAAW;aACzB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAgB,KAAK,EAAE,WAAW,EAAE,MAAM,CAAC,CAAA;QAExE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,SAAS,EAAE,WAAW;SACzB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAA;IAChG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,KAAK,EAAE;gBACH;oBACI,KAAK,EAAE,OAAO;iBACjB;gBACD;oBACI,GAAG,EAAE,CAAC;iBACT;aACJ;YACD,iBAAiB,EAAE;gBACf,IAAI,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAC7B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,IAAI,EAAE,YAAY;aACrB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,IAAI,EAAE,YAAY;SACrB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAA;IAC9F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,IAAI,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;gBAC1B,KAAK,EAAE,CAAC,yBAAc,CAAC,EAAE,CAAC;aAC7B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,IAAI,EAAE,YAAY;gBAClB,KAAK,EAAE,OAAO;aACjB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC;YACrC,IAAI,EAAE,YAAY;YAClB,KAAK,EAAE,OAAO;SACjB,CAAC,CAAA;QACF,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,0EAA0E,CAAC,CAAA;IACjH,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,sDAAsD,EAAE,KAAK,IAAI,EAAE;QAClE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE,CAAC,MAAM,EAAE,OAAO,CAAC;YACpC,iBAAiB,EAAE;gBACf,EAAE,EAAE,CAAC,yBAAc,CAAC,GAAG,EAAE,yBAAc,CAAC,EAAE,CAAC;aAC9C;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE,OAAO;YACf,MAAM,EAAE;gBACJ,EAAE,EAAE,gBAAgB;aACvB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,OAAO,CAAC,CAAA;QACjD,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,aAAa,CAAC,EAAE,EAAE,EAAE,gBAAgB,EAAE,CAAC,CAAA;QAClE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sEAAsE,CAAC,CAAA;IAC7G,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,KAAK,EAAE;gBACH,KAAK,EAAE,IAAA,YAAE,EAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;aAChC;YACD,iBAAiB,EAAE;gBACf,EAAE,EAAE,CAAC,yBAAc,CAAC,GAAG,EAAE,yBAAc,CAAC,EAAE,CAAC;aAC9C;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,EAAE,EAAE,gBAAgB;aACvB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAA;IAChG,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,4CAA4C,EAAE,KAAK,IAAI,EAAE;QACxD,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,GAAG,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAC5B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,QAAQ;aAChB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC9D,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAA;IACzF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,oDAAoD,EAAE,KAAK,IAAI,EAAE;QAChE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,GAAG,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAC5B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,UAAU;aAClB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACrD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAA;IAC3F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,6CAA6C,EAAE,KAAK,IAAI,EAAE;QACzD,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,GAAG,EAAE,CAAC,yBAAc,CAAC,IAAI,CAAC;aAC7B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,OAAO;aACf;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAA;IACxF,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,8CAA8C,EAAE,KAAK,IAAI,EAAE;QAC1D,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,GAAG,EAAE,CAAC,yBAAc,CAAC,GAAG,EAAE,yBAAc,CAAC,IAAI,CAAC;aACjD;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,YAAY;aACpB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvE,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,yDAAyD,EAAE,KAAK,IAAI,EAAE;QACrE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,IAAI,EAAE,CAAC,yBAAc,CAAC,GAAG,EAAE,yBAAc,CAAC,IAAI,CAAC;aAClD;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,YAAY;aACpB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,uDAAuD,EAAE,KAAK,IAAI,EAAE;QACnE,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,CAAC,IAAI,CAAC;YACvB,iBAAiB,EAAE;gBACf,GAAG,EAAE,CAAC,yBAAc,CAAC,GAAG,CAAC;aAC5B;SACJ,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;YACR,MAAM,EAAE;gBACJ,GAAG,EAAE,YAAY;aACpB;SACJ,CAAA;QAED,MAAM,MAAM,GAAG,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;QAEhE,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAA;IAC7F,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,+CAA+C,EAAE,KAAK,IAAI,EAAE;QAC3D,MAAM,MAAM,GAA8B;YACtC,eAAe,EAAE,EAAE;SACtB,CAAA;QACD,MAAM,KAAK,GAAkB;YACzB,IAAI,EAAE,EAAE;SACX,CAAA;QAED,IAAI;YACA,MAAM,IAAA,mBAAQ,EAAY,KAAK,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;SACpD;QAAC,OAAO,GAAG,EAAE;YACV,MAAM,CAAC,GAAG,CAAC,CAAC,cAAc,CAAC,sBAAa,CAAC,CAAA;SAC5C;IACL,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,IAAI,CAAC;QACJ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACjC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAClC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACjC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACjC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE;QACnC,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE;QACjC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAClC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAClC,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE;QAClC,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE;KACvC,CAAC,CAAC,oDAAoD,EAAE,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,EAAE,EAAE;QAC9E,MAAM,CAAC,IAAA,qBAAU,EAAC,QAAQ,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IACtD,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,IAAI,CAAC;QACJ,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE;QAClC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;QACrC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE;QAC7C,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE;QAC/B,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE;QACrC,EAAE,QAAQ,EAAE,KAAK,EAAE,IAAI,EAAE,UAAU,EAAE;QACrC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,iBAAiB,EAAE;QAC7C,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE;QACrC,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE;KACpC,CAAC,CAAC,oDAAoD,EAAE,CAAC,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE;QAC5E,MAAM,IAAI,GAAG,mCAAwB,CAAC,GAAG,CAAC,QAA0B,CAAC,CAAA;QACrE,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;IACzC,CAAC,CAAC,CAAA;IAEF,EAAE,CAAC,IAAI,CAAC;QACJ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE;QACvD,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;QACzD,EAAE,MAAM,EAAE,0BAA0B,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,sBAAsB,CAAC,EAAE;QACrF,EAAE,MAAM,EAAE,qCAAqC,EAAE,MAAM,EAAE,CAAC,MAAM,EAAE,KAAK,EAAE,4BAA4B,CAAC,EAAE;QACxG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,OAAO,CAAC,EAAE;QACnD,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,QAAQ,CAAC,EAAE;QACrD,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QACzD,EAAE,MAAM,EAAE,gBAAgB,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE;QAC9D,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE;QACjD,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE;QAC5C,EAAE,MAAM,EAAE,EAAE,EAAE,MAAM,EAAE,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,EAAE;QACzC,EAAE,MAAM,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE;KAC/C,CAAC,CAAC,wCAAwC,EAAE,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE;QAChE,MAAM,CAAC,IAAA,0BAAe,EAAC,MAAM,CAAC,CAAC,CAAC,aAAa,CAAC,MAAM,CAAC,CAAA;IACzD,CAAC,CAAC,CAAA;AACN,CAAC,CAAC,CAAA"}