@voxgig/apidef 8.4.0 → 8.5.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.
package/dist/model.d.ts CHANGED
@@ -121,6 +121,7 @@ type ModelEntity = {
121
121
  field: string;
122
122
  parts?: string[];
123
123
  sep?: string;
124
+ from?: Record<string, string>;
124
125
  };
125
126
  relations: ModelEntityRelations;
126
127
  };
@@ -50,7 +50,7 @@ const fieldTransform = async function (ctx) {
50
50
  // emitted the composite. The ports disagreed on exactly the shape this
51
51
  // feature exists for.
52
52
  const gent = guide?.entity?.[ment.name];
53
- const composite = compositeId(ment, gent);
53
+ const composite = compositeId(ment, gent, def);
54
54
  const idField = fields.find((f) => 'id' === f.name);
55
55
  // A COMPOSITE ID IS A STRING, whatever the API's own `id` field is —
56
56
  // AND THE API'S OWN id IS KEPT.
@@ -171,6 +171,12 @@ exports.fieldTransform = fieldTransform;
171
171
  // safe to carry as a single opaque string, which is the property the SDK and
172
172
  // Seneca entities are built on.
173
173
  const ID_SEP = '/';
174
+ // Subfields that conventionally carry the identifying value of a nested
175
+ // object, in preference order. github's repo `owner` is a user object whose
176
+ // identifier is `login`; other specs use `name`, `slug` or `key`. `id` is
177
+ // last: it is the most common name and the least likely to be the value a
178
+ // PATH parameter takes (a path that wanted an id would say so).
179
+ const NESTED_ID_KEYS = ['login', 'slug', 'name', 'key', 'id'];
174
180
  // The ops that address ONE record, most authoritative first. Only a
175
181
  // tie-break: identityParams compares candidates from all of them.
176
182
  const ID_OPS = ['load', 'update', 'patch', 'remove'];
@@ -311,6 +317,256 @@ function identityParams(ment) {
311
317
  }, null);
312
318
  return null == best ? [] : best.run;
313
319
  }
320
+ // THE PROPERTY MAPS A RESPONSE COULD BE DESCRIBING, best first.
321
+ //
322
+ // BOTH SPEC DIALECTS. An OpenAPI 3 response carries its schema under
323
+ // `content['application/json']`; a SWAGGER 2 response carries it directly as
324
+ // `schema`. Reading only the first resolved nothing for every Swagger 2 spec
325
+ // in the validation corpus.
326
+ //
327
+ // JSON ONLY, where there is a choice. An operation may declare several media
328
+ // types with different schemas, and field extraction uses the JSON one — so
329
+ // picking whichever came first in source order could infer a path from an XML
330
+ // or binary schema that the actual JSON record does not have.
331
+ //
332
+ // `allOf` IS EXPANDED, because a response that composes its entity that way
333
+ // has neither `properties` nor `items` of its own. field extraction expands
334
+ // it; not doing so here meant the fields were present while the id could not
335
+ // be reconstructed.
336
+ //
337
+ // ONLY THE ENVELOPE IS DESCENDED, via the same `envelopeProp` rule field
338
+ // extraction uses. Descending every object-valued property instead treats an
339
+ // ordinary nested object as a whole record: for `{ slug, metadata: { tenant } }`
340
+ // addressed by `{tenant}/{slug}`, `tenant` resolved to `tenant` rather than
341
+ // `metadata.tenant` — a confidently wrong path, which is worse than no
342
+ // mapping at all.
343
+ //
344
+ // ACTION POINTS ARE SKIPPED, as `identityParams` skips them: an action's
345
+ // response is a verb's result, not a representation of the entity, so a field
346
+ // that happens to appear there says nothing about what a returned record
347
+ // carries.
348
+ function responseCandidates(ment, def) {
349
+ const out = [];
350
+ const seen = new Set();
351
+ // Every property map this schema describes, expanding allOf.
352
+ const propsOf = (schema) => {
353
+ const node = resolveRef(schema, def);
354
+ if (null == node || seen.has(node)) {
355
+ return [];
356
+ }
357
+ seen.add(node);
358
+ if (Array.isArray(node.allOf)) {
359
+ return node.allOf.flatMap((member) => propsOf(member));
360
+ }
361
+ if (null != node.properties) {
362
+ return [node.properties];
363
+ }
364
+ // A bare array response: the record is the item.
365
+ const items = resolveRef(node.items, def);
366
+ if (null != items) {
367
+ return propsOf(items);
368
+ }
369
+ return [];
370
+ };
371
+ const add = (schema, opname) => {
372
+ for (const props of propsOf(schema)) {
373
+ out.push(props);
374
+ // One level in, but ONLY through the envelope property.
375
+ const envelope = (0, utility_1.envelopeProp)(props, opname);
376
+ if (null == envelope) {
377
+ continue;
378
+ }
379
+ const inner = resolveRef(props[envelope], def);
380
+ if (null == inner) {
381
+ continue;
382
+ }
383
+ for (const innerProps of propsOf(inner)) {
384
+ out.push(innerProps);
385
+ }
386
+ }
387
+ };
388
+ for (const opname of ['load', 'list', 'update', 'create']) {
389
+ const mop = ment.op?.[opname];
390
+ for (const mpoint of (mop?.points || [])) {
391
+ // An action point's response is not the entity.
392
+ if (null != mpoint?.select?.['$action']) {
393
+ continue;
394
+ }
395
+ const path = (def?.paths || {})[mpoint?.orig];
396
+ const method = String(mpoint?.method || '').toLowerCase();
397
+ const responses = path?.[method]?.responses || {};
398
+ for (const code of Object.keys(responses)) {
399
+ if (!/^2/.test(code)) {
400
+ continue;
401
+ }
402
+ const resdef = responses[code] || {};
403
+ const content = resdef.content || {};
404
+ const ctypes = Object.keys(content);
405
+ // Prefer JSON; fall back to whatever single type is offered.
406
+ const json = ctypes.find((c) => c.includes('json'));
407
+ if (null != json) {
408
+ add(content[json]?.schema, opname);
409
+ }
410
+ else {
411
+ for (const ctype of ctypes) {
412
+ add(content[ctype]?.schema, opname);
413
+ }
414
+ }
415
+ // Swagger 2 puts it here.
416
+ add(resdef.schema, opname);
417
+ }
418
+ }
419
+ }
420
+ return out;
421
+ }
422
+ // A `$ref` followed one hop, or the schema itself. apidef resolves most refs
423
+ // before this stage; this covers the ones that survive on a nested property.
424
+ function resolveRef(schema, def) {
425
+ if (null == schema) {
426
+ return null;
427
+ }
428
+ const ref = schema.$ref;
429
+ if ('string' !== typeof ref || !ref.startsWith('#/')) {
430
+ return schema;
431
+ }
432
+ let node = def;
433
+ for (const seg of ref.slice(2).split('/')) {
434
+ node = node?.[seg];
435
+ if (null == node) {
436
+ return null;
437
+ }
438
+ }
439
+ return node;
440
+ }
441
+ // The conventional identifying subfield of a property map, or null.
442
+ function conventionalIdKey(props) {
443
+ for (const key of NESTED_ID_KEYS) {
444
+ const p = props[key];
445
+ if (null == p) {
446
+ continue;
447
+ }
448
+ const t = String(p.type || '');
449
+ if ('object' !== t && 'array' !== t) {
450
+ return key;
451
+ }
452
+ }
453
+ return null;
454
+ }
455
+ // Every name a part might be carried under: the model's name for it, plus the
456
+ // original wire names of any path parameter that was renamed to it.
457
+ function partAliases(ment, part) {
458
+ const names = new Set([part]);
459
+ (0, jostraca_1.each)(ment.op, (mop) => {
460
+ (0, jostraca_1.each)(mop?.points, (mpoint) => {
461
+ const rename = mpoint?.rename?.param || {};
462
+ for (const orig of Object.keys(rename)) {
463
+ if (String(rename[orig]) === part) {
464
+ names.add(orig);
465
+ }
466
+ }
467
+ for (const arg of (mpoint?.args?.params || [])) {
468
+ if (null != arg && arg.name === part && null != arg.orig) {
469
+ names.add(String(arg.orig));
470
+ }
471
+ }
472
+ });
473
+ });
474
+ return [...names];
475
+ }
476
+ // Where one part is carried in a given property map, or null.
477
+ //
478
+ // The four rules, in order, each a fact the spec states: a scalar property of
479
+ // that name; the part naming this entity, resolved to `name`; a scalar
480
+ // `<part>_name` / `_login` / `_slug`; or an object property's conventional
481
+ // identifying subfield.
482
+ function resolvePart(ment, part, aliases, props, def) {
483
+ if (null == props) {
484
+ return null;
485
+ }
486
+ const prop = (name) => resolveRef(props[name], def);
487
+ const scalar = (p) => null != p && 'object' !== String(p.type) && 'array' !== String(p.type) &&
488
+ null == p.properties && null == p.items;
489
+ for (const name of aliases) {
490
+ if (scalar(prop(name))) {
491
+ return name;
492
+ }
493
+ }
494
+ if (part === ment.name && scalar(prop('name'))) {
495
+ return 'name';
496
+ }
497
+ for (const name of aliases) {
498
+ for (const suffix of ['_name', '_login', '_slug']) {
499
+ if (scalar(prop(name + suffix))) {
500
+ return name + suffix;
501
+ }
502
+ }
503
+ }
504
+ for (const name of aliases) {
505
+ const nested = prop(name);
506
+ if (null != nested?.properties) {
507
+ const sub = conventionalIdKey(nested.properties);
508
+ if (null != sub) {
509
+ return name + '.' + sub;
510
+ }
511
+ }
512
+ }
513
+ return null;
514
+ }
515
+ // WHERE EACH COMPOSITE PART'S VALUE LIVES IN A RESPONSE.
516
+ //
517
+ // The parts are PATH PARAMETER names; a response names its fields whatever it
518
+ // likes. Resolving one to the other is what lets an SDK put an id on a record
519
+ // the API returned, rather than only address a record whose id it was given.
520
+ //
521
+ // The rules, in order, and each of them is a fact about the spec rather than
522
+ // a guess:
523
+ //
524
+ // 1. a scalar field of exactly that name -> itself
525
+ // 2. the part names this entity, and there is a `name` -> `name`
526
+ // (`/repos/{owner}/{repo}` on entity `repo`, whose response calls the
527
+ // repository `name`)
528
+ // 3. a scalar `<part>_name` / `<part>_login` / `<part>_slug`
529
+ // 4. an OBJECT field of that name -> `<part>.<conventional key>`
530
+ // (`owner` is a user object; the value is `owner.login`)
531
+ //
532
+ // A part none of these resolve is left OUT. Downstream then knows the id
533
+ // cannot be rebuilt for that entity and can say so, which is better than a
534
+ // confidently wrong id on a real record. guide.aon can state it instead.
535
+ function identityFrom(ment, parts, def) {
536
+ // THE RESPONSE SCHEMA IS THE AUTHORITY, not `ment.fields`.
537
+ //
538
+ // `ment.fields` is merged across load, create, update and list, so a part
539
+ // that exists only in a REQUEST BODY appears there too. Resolving against
540
+ // it recorded such a part in `from` as though a returned record carried it,
541
+ // and a consumer then rebuilt an id from a property the response never
542
+ // sends — worse than leaving the part unresolved, which at least says so.
543
+ //
544
+ // Candidate property maps, in order: the response's own properties, then
545
+ // one level into an envelope. A response that wraps the record
546
+ // (`{ item: {...} }`, `{ data: [ {...} ] }`) states the record's fields one
547
+ // level in, and searching only the wrapper found nothing.
548
+ const candidates = responseCandidates(ment, def);
549
+ const out = {};
550
+ for (const part of parts) {
551
+ // THE WIRE NAME AS WELL AS THE MODEL NAME. `identityParams` reads the
552
+ // RENAMED parameter off the path segments, while a response keeps its own
553
+ // casing — so a `tenantKey` renamed to `tenant_key` was looked up under a
554
+ // name the response does not use, and the mapping was dropped for every
555
+ // camel-cased or depluralized parameter.
556
+ const aliases = partAliases(ment, part);
557
+ let found = null;
558
+ for (const props of candidates) {
559
+ found = resolvePart(ment, part, aliases, props, def);
560
+ if (null != found) {
561
+ break;
562
+ }
563
+ }
564
+ if (null != found) {
565
+ out[part] = found;
566
+ }
567
+ }
568
+ return out;
569
+ }
314
570
  // Is this model field declared as a string? A composite id is the parts
315
571
  // joined, so the field that holds it has to be one.
316
572
  function scalarStringField(f) {
@@ -340,7 +596,7 @@ function singleKeyOf(ment, parts) {
340
596
  // parameters). A single-parameter entity already round-trips through one
341
597
  // `id` and gains nothing from carrying a one-element `parts`, so its
342
598
  // descriptor is left exactly as it was — no existing model output moves.
343
- function compositeId(ment, gent) {
599
+ function compositeId(ment, gent, def) {
344
600
  const gid = gent?.id;
345
601
  const sep = null != gid?.sep && '' !== String(gid.sep) ? String(gid.sep) : ID_SEP;
346
602
  // `composite: false` turns the inference off. A boolean rather than an
@@ -360,14 +616,31 @@ function compositeId(ment, gent) {
360
616
  // the false positive the correction exists to undo.
361
617
  return { single: singleKeyOf(ment, identityParams(ment)) };
362
618
  }
619
+ // `from` STATED IN guide.aon WINS PER PART, so a spec can correct one
620
+ // mapping without restating the others — which matters because the
621
+ // heuristic gets most of them right and the odd one wrong.
622
+ const withFrom = (parts, usesep) => {
623
+ const derived = identityFrom(ment, parts, def);
624
+ const stated = null != gid?.from && 'object' === typeof gid.from ? gid.from : {};
625
+ const from = {};
626
+ for (const part of parts) {
627
+ const say = stated[part];
628
+ const use = null != say && '' !== String(say) ? String(say) : derived[part];
629
+ if (null != use) {
630
+ from[part] = use;
631
+ }
632
+ }
633
+ return 0 === Object.keys(from).length ?
634
+ { parts, sep: usesep } : { parts, sep: usesep, from };
635
+ };
363
636
  if (null != gid && null != gid.parts) {
364
637
  const given = gid.parts
365
638
  .filter((p) => null != p && '' !== String(p))
366
639
  .map((p) => String(p));
367
- return 1 < given.length ? { parts: given, sep } : {};
640
+ return 1 < given.length ? withFrom(given, sep) : {};
368
641
  }
369
642
  const parts = identityParams(ment);
370
- return 1 < parts.length ? { parts, sep } : {};
643
+ return 1 < parts.length ? withFrom(parts, sep) : {};
371
644
  }
372
645
  // True when any of the entity's own operation points declares an `id`
373
646
  // parameter — i.e. the API addresses this entity by id, whether or not its
@@ -1 +1 @@
1
- {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/transform/field.ts"],"names":[],"mappings":";;;QAi5BE,uBAAuB;QACvB,kBAAkB;AAh5BpB,uCAAqC;AAIrC,wCAGmB;AAEnB,oCAA8B;AAoB9B,MAAM,cAAc,GAAc,KAAK,WACrC,GAAQ;IAER,MAAM,EAAE,QAAQ,EAAE,GAAG,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,GAAG,CAAA;IAC3C,MAAM,GAAG,GAAa,QAAQ,CAAC,IAAI,CAAC,WAAG,CAAC,CAAA;IAExC,IAAI,GAAG,GAAG,QAAQ,CAAA;IAElB,MAAM,iBAAiB,GAAa,CAAC,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;IAEjF,IAAA,eAAI,EAAC,GAAG,CAAC,MAAM,EAAE,CAAC,IAAiB,EAAE,QAAgB,EAAE,EAAE;QACvD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAA;QAC1B,MAAM,IAAI,GAAQ,EAAE,CAAA;QAEpB,KAAK,IAAI,MAAM,IAAI,iBAAiB,EAAE,CAAC;YACrC,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;YAC3B,IAAI,GAAG,EAAE,CAAC;gBACR,MAAM,OAAO,GAAG,GAAG,CAAC,MAAM,CAAA;gBAE1B,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;oBAC3B,MAAM,QAAQ,GAAG,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;oBAExD,KAAK,IAAI,OAAO,IAAI,QAAQ,EAAE,CAAC;wBAC7B,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC;4BACxB,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;4BACpB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,OAAO,CAAA;wBAC9B,CAAC;6BACI,CAAC;4BACJ,UAAU,CAAC,GAAG,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAA;wBAC9C,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE;YAC3C,OAAO,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACvD,CAAC,CAAC,CAAA;QAEF,4EAA4E;QAC5E,0EAA0E;QAC1E,oEAAoE;QACpE,uBAAuB;QACvB,sEAAsE;QACtE,EAAE;QACF,sEAAsE;QACtE,yEAAyE;QACzE,mEAAmE;QACnE,wEAAwE;QACxE,yEAAyE;QACzE,qEAAqE;QACrE,uEAAuE;QACvE,sBAAsB;QACtB,MAAM,IAAI,GAAG,KAAK,EAAE,MAAM,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;QACvC,MAAM,SAAS,GAAG,WAAW,CAAC,IAAI,EAAE,IAAI,CAAC,CAAA;QAEzC,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,CAAC,CAAA;QAE/D,qEAAqE;QACrE,gCAAgC;QAChC,EAAE;QACF,qEAAqE;QACrE,kEAAkE;QAClE,oEAAoE;QACpE,sEAAsE;QACtE,iEAAiE;QACjE,qEAAqE;QACrE,0BAA0B;QAC1B,EAAE;QACF,wEAAwE;QACxE,yEAAyE;QACzE,sEAAsE;QACtE,oEAAoE;QACpE,wEAAwE;QACxE,wEAAwE;QACxE,IAAI,IAAI,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,OAAO,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,EAAE,CAAC;YAC9E,MAAM,GAAG,GAAQ,OAAO,CAAA;YACxB,MAAM,OAAO,GAAG,MAAM,CAAE,KAAa,EAAE,IAAI,IAAI,KAAK,CAAC,CAAA;YACrD,MAAM,IAAI,GAAG,OAAO,GAAG,KAAK,CAAA;YAE5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;gBACrD,gEAAgE;gBAChE,mEAAmE;gBACnE,kEAAkE;gBAClE,gEAAgE;gBAChE,iBAAiB;gBACjB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,GAAG,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAQ,CAAC,CAAA;gBAEtE,MAAM,KAAK,GAAG,CAAE,IAAY,CAAC,KAAK,GAAI,IAAY,CAAC,KAAK,IAAI,EAAE,CAAC,CAAA;gBAC/D,KAAK,CAAC,KAAK,GAAG,KAAK,CAAC,KAAK,IAAI,EAAE,CAAA;gBAC/B,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;YAC1B,CAAC;YAED,GAAG,CAAC,IAAI,GAAG,WAAW,CAAA;YACtB,sEAAsE;YACtE,qEAAqE;YACrE,kEAAkE;YAClE,+BAA+B;YAC/B,OAAO,GAAG,CAAC,MAAM,CAAA;YACjB,KAAK,MAAM,MAAM,IAAI,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;gBAC/C,OAAO,GAAG,CAAC,EAAE,CAAC,MAAM,CAAC,CAAC,IAAI,CAAA;YAC5B,CAAC;YAED,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,IAAI,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;YAC/C,uEAAuE;YACvE,oEAAoE;YACpE,6DAA6D;YAC7D,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,WAAW;gBACjB,GAAG,EAAE,KAAK;aACJ,CAAC,CAAA;YACT,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;QAED,MAAM,SAAS,GAAI,SAAiB,CAAC,MAAM,CAAA;QAC3C,OAAQ,SAAiB,CAAC,MAAM,CAAA;QAEhC,IAAI,IAAI,IAAI,OAAO,IAAI,IAAI,IAAI,SAAS,IAAI,IAAI,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;YACpE,uEAAuE;YACvE,iEAAiE;YACjE,+BAA+B;YAC/B,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,WAAW;gBACjB,GAAG,EAAE,KAAK;aACJ,CAAC,CAAA;YACT,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACnD,CAAC;QAED,IAAI,OAAO,IAAI,IAAI,IAAI,SAAS,CAAC,KAAK,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;YAC5D,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAA;QACrD,CAAC;aACI,IAAI,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;YAC7B,wEAAwE;YACxE,wEAAwE;YACxE,mEAAmE;YACnE,oEAAoE;YACpE,mEAAmE;YACnE,wDAAwD;YACxD,MAAM,CAAC,IAAI,CAAC;gBACV,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,WAAW;gBACjB,GAAG,EAAE,KAAK;aACJ,CAAC,CAAA;YACT,MAAM,CAAC,IAAI,CAAC,CAAC,CAAa,EAAE,CAAa,EAAE,EAAE,CAC3C,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;YAEjD,sDAAsD;YACtD,EAAE;YACF,wEAAwE;YACxE,gEAAgE;YAChE,8EAA8E;YAC9E,uEAAuE;YACvE,yEAAyE;YACzE,yBAAyB;YACzB,EAAE;YACF,4DAA4D;YAC5D,uEAAuE;YACvE,uEAAuE;YACvE,uEAAuE;YACvE,uDAAuD;YACvD,EAAE;YACF,sEAAsE;YACtE,yEAAyE;YACzE,uEAAuE;YACvE,sEAAsE;YACtE,wBAAwB;YACxB,IAAI,CAAC,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,GAAG,SAAS,EAAE,CAAA;QACrD,CAAC;QAED,GAAG,IAAI,IAAI,CAAC,IAAI,GAAG,GAAG,CAAA;IACxB,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,CAAA;AAC1B,CAAC,CAAA;QA4rBC,cAAc;AAxrBhB,2DAA2D;AAC3D,EAAE;AACF,wEAAwE;AACxE,4EAA4E;AAC5E,0EAA0E;AAC1E,4EAA4E;AAC5E,6EAA6E;AAC7E,gCAAgC;AAChC,MAAM,MAAM,GAAG,GAAG,CAAA;AAElB,oEAAoE;AACpE,kEAAkE;AAClE,MAAM,MAAM,GAAG,CAAC,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,QAAQ,CAAC,CAAA;AAGpD,oEAAoE;AACpE,sDAAsD;AACtD,EAAE;AACF,4EAA4E;AAC5E,iCAAiC;AACjC,EAAE;AACF,yEAAyE;AACzE,sEAAsE;AACtE,sEAAsE;AACtE,EAAE;AACF,yEAAyE;AACzE,0EAA0E;AAC1E,6EAA6E;AAC7E,0EAA0E;AAC1E,sDAAsD;AACtD,EAAE;AACF,4EAA4E;AAC5E,8EAA8E;AAC9E,sEAAsE;AACtE,0EAA0E;AAC1E,uEAAuE;AACvE,2DAA2D;AAC3D,EAAE;AACF,oEAAoE;AACpE,6EAA6E;AAC7E,2EAA2E;AAC3E,sEAAsE;AACtE,2EAA2E;AAC3E,2EAA2E;AAC3E,4CAA4C;AAC5C,SAAS,YAAY,CAAC,KAAU;IAC9B,MAAM,IAAI,GAAI,CAAC,KAAK,EAAE,QAAQ,IAAI,EAAE,CAAW,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,CAAC,CAAA;IAC7E,MAAM,GAAG,GAAa,EAAE,CAAA;IAExB,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;QAC1C,IAAI,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,CAAC;YACxB,MAAK;QACP,CAAC;QACD,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;IAClC,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,SAAS,cAAc,CAAC,IAAiB;IACvC,0EAA0E;IAC1E,EAAE;IACF,uEAAuE;IACvE,sEAAsE;IACtE,wEAAwE;IACxE,yCAAyC;IACzC,wEAAwE;IACxE,qEAAqE;IACrE,2DAA2D;IAC3D,MAAM,KAAK,GAAU,EAAE,CAAA;IAEvB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,MAAM,GAAG,GAAI,IAAY,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QACzC,IAAI,IAAI,IAAI,GAAG,EAAE,CAAC;YAChB,SAAQ;QACV,CAAC;QAED,kEAAkE;QAClE,KAAK,MAAM,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,IAAI,EAAE,CAAC,EAAE,CAAC;YACpC,IAAI,IAAI,IAAI,EAAE,EAAE,MAAM,EAAE,CAAC,SAAS,CAAC,EAAE,CAAC;gBACpC,SAAQ;YACV,CAAC;YACD,MAAM,GAAG,GAAG,YAAY,CAAC,EAAE,CAAC,CAAA;YAC5B,IAAI,CAAC,KAAK,GAAG,CAAC,MAAM,EAAE,CAAC;gBACrB,SAAQ;YACV,CAAC;YACD,KAAK,CAAC,IAAI,CAAC;gBACT,GAAG;gBACH,kEAAkE;gBAClE,KAAK,EAAE,CAAC,CAAC,EAAE,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC,MAAM,GAAG,GAAG,CAAC,MAAM,CAAC;gBAChD,2DAA2D;gBAC3D,kDAAkD;gBAClD,EAAE;gBACF,oEAAoE;gBACpE,kEAAkE;gBAClE,sDAAsD;gBACtD,0DAA0D;gBAC1D,gEAAgE;gBAChE,iEAAiE;gBACjE,iEAAiE;gBACjE,8DAA8D;gBAC9D,kDAAkD;gBAClD,EAAE;gBACF,mEAAmE;gBACnE,mEAAmE;gBACnE,yBAAyB;gBACzB,GAAG,EAAE,IAAI,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;oBAC9B,IAAY,CAAC,IAAI,GAAG,KAAK,KAAK,GAAG,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC;gBACpD,KAAK,EAAE,CAAC;aACT,CAAC,CAAA;QACJ,CAAC;IACH,CAAC;IAED,2CAA2C;IAC3C,EAAE;IACF,8DAA8D;IAC9D,0EAA0E;IAC1E,6DAA6D;IAC7D,EAAE;IACF,gEAAgE;IAChE,2BAA2B;IAC3B,wEAAwE;IACxE,uEAAuE;IACvE,gEAAgE;IAChE,EAAE;IACF,8DAA8D;IAC9D,yEAAyE;IACzE,iEAAiE;IACjE,uEAAuE;IACvE,EAAE;IACF,kCAAkC;IAClC,yEAAyE;IACzE,mEAAmE;IACnE,yDAAyD;IACzD,EAAE;IACF,qEAAqE;IACrE,wEAAwE;IACxE,yEAAyE;IACzE,wEAAwE;IACxE,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,IAAI,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,CAAM,EAAE,EAAE;QAC3C,IAAI,IAAI,IAAI,CAAC,EAAE,CAAC;YACd,OAAO,CAAC,CAAA;QACV,CAAC;QACD,IAAI,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK,EAAE,CAAC;YACxB,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAClC,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC;YACpB,OAAO,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACtB,CAAC;QACD,IAAI,CAAC,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC;YAClC,OAAO,CAAC,CAAC,GAAG,CAAC,MAAM,GAAG,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC5C,CAAC;QACD,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;IAClC,CAAC,EAAE,IAAI,CAAC,CAAA;IAER,OAAO,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAA;AACrC,CAAC;AAED,wEAAwE;AACxE,oDAAoD;AACpD,SAAS,iBAAiB,CAAC,CAAM;IAC/B,OAAO,MAAM,CAAC,CAAC,EAAE,IAAI,IAAI,EAAE,CAAC,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;AAC/D,CAAC;AAGD,qEAAqE;AACrE,4EAA4E;AAC5E,EAAE;AACF,8BAA8B;AAC9B,uEAAuE;AACvE,kCAAkC;AAClC,gDAAgD;AAChD,EAAE;AACF,8CAA8C;AAC9C,SAAS,WAAW,CAAC,IAAiB,EAAE,KAAe;IACrD,IAAI,CAAC,KAAK,KAAK,CAAC,MAAM,EAAE,CAAC;QACvB,OAAO,SAAS,CAAA;IAClB,CAAC;IAED,OAAO,KAAK,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,IAAI,KAAK,CAAC,CAAC;WACvC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,CAAC,IAAI,GAAG,KAAK,CAAC;WAClD,KAAK,CAAC,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;WAC5C,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAA;AAC9B,CAAC;AAGD,0EAA0E;AAC1E,EAAE;AACF,oEAAoE;AACpE,yEAAyE;AACzE,qEAAqE;AACrE,yEAAyE;AACzE,SAAS,WAAW,CAClB,IAAiB,EACjB,IAAU;IAEV,MAAM,GAAG,GAAG,IAAI,EAAE,EAAE,CAAA;IACpB,MAAM,GAAG,GAAG,IAAI,IAAI,GAAG,EAAE,GAAG,IAAI,EAAE,KAAK,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,MAAM,CAAA;IAEjF,uEAAuE;IACvE,yEAAyE;IACzE,0EAA0E;IAC1E,IAAI,IAAI,IAAI,GAAG,IAAI,KAAK,KAAK,GAAG,CAAC,SAAS,EAAE,CAAC;QAC3C,yEAAyE;QACzE,yEAAyE;QACzE,yEAAyE;QACzE,0EAA0E;QAC1E,oCAAoC;QACpC,EAAE;QACF,sEAAsE;QACtE,sEAAsE;QACtE,2CAA2C;QAC3C,wEAAwE;QACxE,oDAAoD;QACpD,OAAO,EAAE,MAAM,EAAE,WAAW,CAAC,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,CAAC,EAAS,CAAA;IACnE,CAAC;IAED,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QACrC,MAAM,KAAK,GAAI,GAAG,CAAC,KAAe;aAC/B,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,MAAM,CAAC,CAAC,CAAC,CAAC;aACjD,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAA;QAC7B,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;IACtD,CAAC;IAED,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,CAAA;IAClC,OAAO,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;AAC/C,CAAC;AAGD,sEAAsE;AACtE,2EAA2E;AAC3E,wCAAwC;AACxC,SAAS,aAAa,CAAC,IAAiB;IACtC,IAAI,KAAK,GAAG,KAAK,CAAA;IACjB,IAAA,eAAI,EAAE,IAAY,CAAC,EAAE,EAAE,CAAC,GAAQ,EAAE,EAAE;QAClC,IAAA,eAAI,EAAC,GAAG,EAAE,MAAM,EAAE,CAAC,MAAW,EAAE,EAAE;YAChC,IAAA,eAAI,EAAC,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,KAAU,EAAE,EAAE;gBACxC,IAAI,KAAK,IAAI,IAAI,KAAK,KAAK,CAAC,IAAI,EAAE,CAAC;oBACjC,KAAK,GAAG,IAAI,CAAA;gBACd,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IACF,OAAO,KAAK,CAAA;AACd,CAAC;AAGD,SAAS,eAAe,CACtB,IAAiB,EACjB,GAAY,EACZ,MAAkB,EAClB,GAAQ;IAER,MAAM,OAAO,GAAiB,EAAE,CAAA;IAChC,MAAM,SAAS,GAAG,aAAa,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;IAEvD,KAAK,IAAI,QAAQ,IAAI,SAAS,EAAE,CAAC;QAC/B,MAAM,SAAS,GAAI,QAAgB,CAAC,IAAc,CAAA;QAClD,kEAAkE;QAClE,iEAAiE;QACjE,8DAA8D;QAC9D,MAAM,IAAI,GAAG,IAAA,uBAAa,EAAC,IAAA,4BAAkB,EAAC,SAAS,CAAC,CAAC,CAAA;QACzD,MAAM,MAAM,GAAe;YACzB,IAAI;YACJ,IAAI,EAAE,IAAA,wBAAc,EAAC,IAAI,EAAE,IAAA,mBAAS,EAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACpD,GAAG,EAAE,CAAC,CAAC,QAAQ,CAAC,QAAQ;YACxB,EAAE,EAAE,EAAE;SACP,CAAA;QACD,6DAA6D;QAC7D,EAAE;QACF,2EAA2E;QAC3E,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,UAAU;QACV,yEAAyE;QACzE,wEAAwE;QACxE,yEAAyE;QACzE,wEAAwE;QACxE,qEAAqE;QACrE,6BAA6B;QAC7B,MAAM,KAAK,GAAI,QAAgB,CAAC,WAAW,CAAA;QAC3C,IAAI,QAAQ,KAAK,OAAO,KAAK,IAAI,EAAE,KAAK,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;YACrD,MAAM,KAAK,GAAG,IAAA,uBAAa,EAAC,KAAK,CAAC,CAAA;YAClC,IAAI,EAAE,KAAK,KAAK,EAAE,CAAC;gBACjB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;YACtB,CAAC;QACH,CAAC;QAED,wDAAwD;QACxD,EAAE;QACF,oEAAoE;QACpE,uEAAuE;QACvE,uEAAuE;QACvE,yEAAyE;QACzE,kEAAkE;QAClE,EAAE;QACF,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,iEAAiE;QACjE,sEAAsE;QACtE,OAAO;QACP,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,CAAU,EAAE,CAAC;YACpE,IAAI,IAAI,KAAM,QAAgB,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrC,MAAM,CAAC,IAAI,CAAC,GAAG,IAAI,CAAA;YACrB,CAAC;QACH,CAAC;QAED,wEAAwE;QACxE,uEAAuE;QACvE,qEAAqE;QACrE,MAAM,IAAI,GAAI,QAAgB,CAAC,MAAM,CAAA;QACrC,IAAI,QAAQ,KAAK,OAAO,IAAI,IAAI,EAAE,KAAK,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;YACnD,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,IAAI,EAAE,CAAA;QAC7B,CAAC;QAED,wEAAwE;QACxE,yEAAyE;QACzE,yEAAyE;QACzE,kDAAkD;QAClD,MAAM,KAAK,GAAG,IAAA,2BAAiB,EAAC,QAAQ,CAAC,CAAA;QACzC,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;YAClB,MAAM,CAAC,KAAK,GAAG,KAAK,CAAA;QACtB,CAAC;QACD,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;IACtB,CAAC;IAED,OAAO,OAAO,CAAA;AAChB,CAAC;AAGD,kEAAkE;AAClE,2EAA2E;AAC3E,uEAAuE;AACvE,0EAA0E;AAC1E,iCAAiC;AACjC,SAAS,oBAAoB,CAC3B,IAAiB,EACjB,MAAkB,EAClB,GAAQ;IAER,MAAM,QAAQ,GAAI,MAAM,CAAC,OAAe,EAAE,WAAW;QAClD,IAAY,CAAC,KAAK,IAAI,EAAE,CAAA;IAC3B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,QAAQ,CAAC,CAAA;IAEnC,IAAI,IAAI,IAAI,KAAK,EAAE,CAAC;QAClB,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,GAAG,GAAgB,EAAE,CAAA;IAE3B,2EAA2E;IAC3E,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE,CAAC;QAC9C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;QAE7B,IAAI,CAAC,CAAC,UAAU,EAAE,CAAC;YACjB,SAAQ;QACV,CAAC;QAED,uEAAuE;QACvE,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC;YACpC,SAAQ;QACV,CAAC;QAED,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAA;QACjC,MAAM,IAAI,GAAG,KAAK,EAAE,IAAI,CAAA;QAExB,IAAI,QAAQ,KAAK,IAAI,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACzC,GAAG,CAAC,IAAI,CAAC;gBACP,IAAI,EAAE,KAAK;gBACX,oEAAoE;gBACpE,qCAAqC;gBACrC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,IAAI,CAAC;gBACvD,QAAQ,EAAE,CAAC,CAAC,IAAI;gBAChB,2DAA2D;gBAC3D,sEAAsE;gBACtE,sEAAsE;gBACtE,WAAW,EAAE,CAAC,CAAC,IAAI;aACb,CAAC,CAAA;QACX,CAAC;aACI,IAAI,CAAC,QAAQ,KAAK,IAAI,IAAI,WAAW,KAAK,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YAChE,sEAAsE;YACtE,uEAAuE;YACvE,sEAAsE;YACtE,uCAAuC;YACvC,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,EAAE,EAAE,CAAA;YAChC,IAAI,IAAI,IAAI,OAAO,EAAE,CAAC;gBACpB,GAAG,CAAC,IAAI,CAAC;oBACP,IAAI,EAAE,KAAK;oBACX,IAAI,EAAE,QAAQ;oBACd,QAAQ,EAAE,KAAK;oBACf,WAAW,EAAE,CAAC,CAAC,IAAI;iBACb,CAAC,CAAA;YACX,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,GAAG,CAAA;AACZ,CAAC;AAGD,qEAAqE;AACrE,EAAE;AACF,2EAA2E;AAC3E,2EAA2E;AAC3E,4EAA4E;AAC5E,sDAAsD;AACtD,SAAS,YAAY,CAAC,QAAgB;IACpC,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;QACrC,OAAO,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;YAC/B,SAAS,KAAK,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;gBAClC,CAAC,QAAQ,KAAK,QAAQ,IAAI,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;oBACvD,SAAS,CAAA;AACnB,CAAC;AAGD,SAAS,aAAa,CACpB,KAAkB,EAClB,GAAY,EACZ,MAAkB,EAClB,GAAQ;IAER,IAAI,SAAS,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC;QAC9B,OAAO,oBAAoB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,CAAC,CAAA;IACjD,CAAC;IAED,MAAM,SAAS,GAAgB,EAAE,CAAA;IACjC,MAAM,OAAO,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAA;IAEtC,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC,WAAW,EAAE,CAAA;IAC1C,MAAM,KAAK,GAAQ,OAAO,CAAC,MAAM,CAAC,CAAA;IAElC,IAAI,KAAK,EAAE,CAAC;QACV,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;QACjC,MAAM,WAAW,GAAG,KAAK,CAAC,WAAW,CAAA;QAErC,IAAI,SAAS,CAAA;QAEb,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,GAAG,IAAA,eAAI,EAAC,SAAS,EAAE,uCAAuC,CAAC;gBAClE,IAAA,eAAI,EAAC,SAAS,EAAE,YAAY,CAAC,CAAA;YAC/B,IAAI,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACvB,gDAAgD;gBAChD,0DAA0D;gBAC1D,qEAAqE;gBACrE,mEAAmE;gBACnE,gDAAgD;gBAChD,4DAA4D;gBAC5D,iEAAiE;gBACjE,MAAM,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAA;gBAC/C,IAAI,SAAS,EAAE,CAAC;oBACd,SAAS,GAAG,SAAS,CAAA;gBACvB,CAAC;qBACI,CAAC;oBACJ,MAAM,WAAW,GAAG,IAAA,eAAI,EAAC,SAAS,EAAE,6CAA6C,CAAC;wBAChF,IAAA,eAAI,EAAC,SAAS,EAAE,kBAAkB,CAAC,CAAA;oBACrC,IAAI,WAAW;wBAAE,SAAS,GAAG,WAAW,CAAA;gBAC1C,CAAC;YACH,CAAC;iBACI,IAAI,KAAK,KAAK,MAAM,IAAI,IAAI,IAAI,SAAS,EAAE,CAAC;gBAC/C,SAAS,GAAG,IAAA,eAAI,EAAC,SAAS,EAAE,uCAAuC,CAAC;oBAClE,IAAA,eAAI,EAAC,SAAS,EAAE,YAAY,CAAC,CAAA;YACjC,CAAC;YAED,uEAAuE;YACvE,wEAAwE;YACxE,uEAAuE;YACvE,qEAAqE;YACrE,oEAAoE;YACpE,uEAAuE;YACvE,kEAAkE;YAClE,iEAAiE;YACjE,IAAI,MAAM,IAAI,GAAG,CAAC,IAAI,EAAE,CAAC;gBACvB,MAAM,QAAQ,GAAG,IAAA,sBAAY,EAAC,SAAS,EAAE,UAAU,EAAE,GAAG,CAAC,IAAI,CAAC,CAAA;gBAC9D,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;oBACrB,SAAS,GAAG,SAAS,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAA;gBAC5C,CAAC;YACH,CAAC;QACH,CAAC;QAED,qEAAqE;QACrE,sEAAsE;QACtE,uEAAuE;QACvE,mDAAmD;QACnD,IAAI,WAAW,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;YACtC,SAAS,GAAG;gBACV,SAAS;gBACT,IAAA,eAAI,EAAC,WAAW,EAAE,mCAAmC,CAAC;oBACtD,IAAA,eAAI,EAAC,WAAW,EAAE,QAAQ,CAAC;aAC5B,CAAA;QACH,CAAC;QAGD,IAAI,SAAS,EAAE,CAAC;YACd,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,KAAK,CAAC,EAAE,CAAC;gBACnC,SAAS,GAAG,SAAS,CAAC,KAAK,CAAA;YAC7B,CAAC;iBACI,IAAI,SAAS,CAAC,UAAU,EAAE,CAAC;gBAC9B,SAAS,GAAG,CAAC,SAAS,CAAC,CAAA;YACzB,CAAC;QACH,CAAC;QAED,IAAA,eAAI,EAAC,SAAS,EAAE,CAAC,QAAa,EAAE,EAAE;YAChC,MAAM,aAAa,GAAa,KAAK,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,CAAC;gBAC/D,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAA;YAC1B,IAAA,eAAI,EAAC,QAAQ,EAAE,UAAU,EAAE,CAAC,QAAa,EAAE,EAAE;gBAC3C,mEAAmE;gBACnE,yDAAyD;gBACzD,8DAA8D;gBAC9D,mEAAmE;gBACnE,qEAAqE;gBACrE,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;oBAChE,SAAS,CAAC,IAAI,CAAC,EAAE,GAAG,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,CAAA;gBACjD,CAAC;qBACI,CAAC;oBACJ,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;gBAC1B,CAAC;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,oFAAoF;IACpF,IAAI,CAAC,KAAK,SAAS,CAAC,MAAM,IAAI,KAAK,EAAE,CAAC;QACpC,MAAM,aAAa,GAAG,uBAAuB,CAAC,KAAK,CAAC,CAAA;QACpD,KAAK,MAAM,EAAE,IAAI,aAAa,EAAE,CAAC;YAC/B,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;QACpB,CAAC;IACH,CAAC;IAED,OAAO,SAAS,CAAA;AAClB,CAAC;AAGD,SAAS,uBAAuB,CAAC,KAAU;IACzC,MAAM,OAAO,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAA;IACxC,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC7E,OAAO,EAAE,CAAA;IACX,CAAC;IAED,MAAM,SAAS,GAAgB,EAAE,CAAA;IACjC,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACjG,MAAM,QAAQ,GAAQ;YACpB,IAAI,EAAE,GAAG;YACT,IAAI,EAAE,kBAAkB,CAAC,KAAK,CAAC;SAChC,CAAA;QACD,SAAS,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;IAC1B,CAAC;IACD,OAAO,SAAS,CAAA;AAClB,CAAC;AAGD,SAAS,iBAAiB,CAAC,KAAU;IACnC,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAA;IACjC,IAAI,IAAI,IAAI,SAAS;QAAE,OAAO,IAAI,CAAA;IAElC,MAAM,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC,KAAK,CAAC,CAAA;IACnD,IAAI,IAAI,IAAI,MAAM;QAAE,OAAO,IAAI,CAAA;IAE/B,gDAAgD;IAChD,IAAI,OAAO,GAAG,IAAA,eAAI,EAAC,MAAM,EAAE,oCAAoC,CAAC,CAAA;IAChE,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO;QAAE,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAEjF,+EAA+E;IAC/E,MAAM,QAAQ,GAAG,IAAA,eAAI,EAAC,MAAM,EAAE,qCAAqC,CAAC,CAAA;IACpE,IAAI,IAAI,IAAI,QAAQ,IAAI,QAAQ,KAAK,OAAO,QAAQ,EAAE,CAAC;QACrD,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,MAAM,EAAE,GAAI,GAAW,EAAE,KAAK,CAAA;YAC9B,IAAI,IAAI,IAAI,EAAE,IAAI,QAAQ,KAAK,OAAO,EAAE;gBAAE,OAAO,aAAa,CAAC,EAAE,CAAC,CAAA;QACpE,CAAC;IACH,CAAC;IAED,uDAAuD;IACvD,OAAO,GAAG,IAAA,eAAI,EAAC,MAAM,EAAE,2CAA2C,CAAC,CAAA;IACnE,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO;QAAE,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAEjF,qEAAqE;IACrE,OAAO,GAAG,MAAM,CAAC,OAAO,CAAA;IACxB,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO;QAAE,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAEjF,OAAO,GAAG,IAAA,eAAI,EAAC,MAAM,EAAE,6BAA6B,CAAC,CAAA;IACrD,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO;QAAE,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAEjF,8BAA8B;IAC9B,OAAO,GAAG,IAAA,eAAI,EAAC,MAAM,EAAE,gBAAgB,CAAC,CAAA;IACxC,IAAI,IAAI,IAAI,OAAO,IAAI,QAAQ,KAAK,OAAO,OAAO;QAAE,OAAO,aAAa,CAAC,OAAO,CAAC,CAAA;IAEjF,OAAO,IAAI,CAAA;AACb,CAAC;AAGD,qFAAqF;AACrF,SAAS,aAAa,CAAC,OAAY;IACjC,IAAI,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC;QAC3B,OAAO,OAAO,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAA;IAC/C,CAAC;IACD,OAAO,OAAO,CAAA;AAChB,CAAC;AAGD,wEAAwE;AACxE,6DAA6D;AAC7D,wEAAwE;AACxE,oEAAoE;AACpE,oDAAoD;AACpD,EAAE;AACF,iEAAiE;AACjE,4EAA4E;AAC5E,uDAAuD;AACvD,6EAA6E;AAC7E,SAAS,kBAAkB,CAAC,MAAW;IACrC,IAAI,IAAI,IAAI,MAAM,IAAI,QAAQ,KAAK,OAAO,MAAM;QAAE,OAAO,IAAI,CAAA;IAC7D,8DAA8D;IAC9D,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC5C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAA;QAC1B,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC;YAC9D,OAAO,KAAK,CAAA;QACd,CAAC;QACD,OAAO,IAAI,CAAA;IACb,CAAC;IACD,IAAI,IAAI,IAAI,MAAM,CAAC,UAAU,IAAI,QAAQ,KAAK,OAAO,MAAM,CAAC,UAAU;QAAE,OAAO,IAAI,CAAA;IACnF,IAAI,QAAQ,GAAQ,IAAI,CAAA;IACxB,KAAK,MAAM,GAAG,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;QACjD,MAAM,IAAI,GAAG,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAA;QACnC,IAAI,IAAI,IAAI,IAAI,IAAI,QAAQ,KAAK,OAAO,IAAI;YAAE,SAAQ;QACtD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK;YAAE,SAAQ;QACzD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAA;QACxB,IAAI,IAAI,IAAI,KAAK,IAAI,QAAQ,KAAK,OAAO,KAAK;YAAE,SAAQ;QACxD,IAAI,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC;YAAE,SAAQ;QAC9D,IAAI,QAAQ,IAAI,IAAI;YAAE,OAAO,IAAI,CAAA,CAAC,4CAA4C;QAC9E,QAAQ,GAAG,KAAK,CAAA;IAClB,CAAC;IACD,OAAO,QAAQ,CAAA;AACjB,CAAC;AAGD,SAAS,kBAAkB,CAAC,KAAU;IACpC,IAAI,IAAI,IAAI,KAAK;QAAE,OAAO,QAAQ,CAAA;IAClC,IAAI,SAAS,KAAK,OAAO,KAAK;QAAE,OAAO,SAAS,CAAA;IAChD,IAAI,QAAQ,KAAK,OAAO,KAAK,EAAE,CAAC;QAC9B,OAAO,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAA;IACvD,CAAC;IACD,IAAI,QAAQ,KAAK,OAAO,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC9C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,OAAO,OAAO,CAAA;IACxC,IAAI,QAAQ,KAAK,OAAO,KAAK;QAAE,OAAO,QAAQ,CAAA;IAC9C,OAAO,QAAQ,CAAA;AACjB,CAAC;AAGD,SAAS,UAAU,CACjB,GAAY,EACZ,aAAyB,EACzB,QAAoB;IAEpB,IAAI,QAAQ,CAAC,GAAG,KAAK,aAAa,CAAC,GAAG,EAAE,CAAC;QACvC,aAAa,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG;YAC3B,GAAG,EAAE,QAAQ,CAAC,GAAG;YACjB,IAAI,EAAE,QAAQ,CAAC,IAAI;SACpB,CAAA;IACH,CAAC;IAED,wEAAwE;IACxE,sEAAsE;IACtE,4EAA4E;IAC5E,0EAA0E;IAC1E,yEAAyE;IACzE,gEAAgE;IAChE,IAAI,IAAI,IAAI,aAAa,CAAC,KAAK,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QAC1D,aAAa,CAAC,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;IACtC,CAAC;IAED,yEAAyE;IACzE,0EAA0E;IAC1E,uEAAuE;IACvE,EAAE;IACF,4EAA4E;IAC5E,2EAA2E;IAC3E,uEAAuE;IACvE,mEAAmE;IACnE,0EAA0E;IAC1E,yEAAyE;IACzE,WAAW;IACX,KAAK,MAAM,IAAI,IAAI,CAAC,UAAU,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,CAAU,EAAE,CAAC;QAC9E,IAAI,IAAI,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;YACzD,aAAqB,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,IAAI,CAAC,CAAA;QAC/C,CAAC;IACH,CAAC;IAED,OAAO,aAAa,CAAA;AACtB,CAAC"}
1
+ {"version":3,"file":"field.js","sourceRoot":"","sources":["../../src/transform/field.ts"],"names":[],"mappings":"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"}