@agentplat/mesh 0.3.0-alpha.5 → 0.3.0-beta.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.
Files changed (52) hide show
  1. package/README.md +10 -0
  2. package/dist/coordination-discovery-contracts.d.ts +3 -1
  3. package/dist/coordination-discovery-contracts.d.ts.map +1 -1
  4. package/dist/coordination-discovery-state.d.ts +3 -0
  5. package/dist/coordination-discovery-state.d.ts.map +1 -1
  6. package/dist/coordination-discovery-state.js +93 -8
  7. package/dist/coordination-discovery-state.js.map +1 -1
  8. package/dist/coordination-inbound.d.ts.map +1 -1
  9. package/dist/coordination-inbound.js +54 -3
  10. package/dist/coordination-inbound.js.map +1 -1
  11. package/dist/coordination-wire-version-contracts.d.ts +67 -0
  12. package/dist/coordination-wire-version-contracts.d.ts.map +1 -0
  13. package/dist/coordination-wire-version-contracts.js +2 -0
  14. package/dist/coordination-wire-version-contracts.js.map +1 -0
  15. package/dist/coordination-wire-version.d.ts +8 -0
  16. package/dist/coordination-wire-version.d.ts.map +1 -0
  17. package/dist/coordination-wire-version.js +285 -0
  18. package/dist/coordination-wire-version.js.map +1 -0
  19. package/dist/coordination.d.ts +3 -1
  20. package/dist/coordination.d.ts.map +1 -1
  21. package/dist/coordination.js +3 -1
  22. package/dist/coordination.js.map +1 -1
  23. package/dist/durability.d.ts +60 -5
  24. package/dist/durability.d.ts.map +1 -1
  25. package/dist/durability.js +251 -5
  26. package/dist/durability.js.map +1 -1
  27. package/dist/loopback.d.ts +3 -1
  28. package/dist/loopback.d.ts.map +1 -1
  29. package/dist/loopback.js +9 -7
  30. package/dist/loopback.js.map +1 -1
  31. package/fixtures/beta1/README.md +11 -0
  32. package/fixtures/beta1/durability/wrapper-v1.json +19 -0
  33. package/fixtures/beta1/durability/wrapper-v2.json +51 -0
  34. package/fixtures/beta1/manifest.json +147 -0
  35. package/fixtures/beta1/postgres/alpha5-dump-manifest.json +29 -0
  36. package/fixtures/beta1/postgres/migrations.json +25 -0
  37. package/fixtures/beta1/simulation/replay-trace-v1.json +60 -0
  38. package/fixtures/beta1/simulation/snapshot-v2.json +71 -0
  39. package/fixtures/beta1/states/allocation-v1.json +24 -0
  40. package/fixtures/beta1/states/allocation-v2.json +28 -0
  41. package/fixtures/beta1/states/allocation-v3.json +38 -0
  42. package/fixtures/beta1/states/allocation-v4.json +43 -0
  43. package/fixtures/beta1/states/allocation-v5.json +46 -0
  44. package/fixtures/beta1/states/allocation-v6.json +56 -0
  45. package/fixtures/beta1/states/coordination-v1.json +20 -0
  46. package/fixtures/beta1/states/core-peer.json +26 -0
  47. package/fixtures/beta1/states/discovery-v1.json +31 -0
  48. package/fixtures/beta1/states/discovery-v2.json +32 -0
  49. package/fixtures/beta1/states/inbound-v1.json +19 -0
  50. package/fixtures/beta1/states/objective-work-v1.json +28 -0
  51. package/fixtures/beta1/states/objective-work-v2.json +28 -0
  52. package/package.json +5 -4
package/dist/loopback.js CHANGED
@@ -1,4 +1,4 @@
1
- import { MESH_PROTOCOL, MESH_SIGNATURE_ALGORITHM, MESH_WIRE_VERSION, } from '@agentplat/mesh-protocol';
1
+ import { MESH_PROTOCOL, MESH_SIGNATURE_ALGORITHM, MESH_SUPPORTED_WIRE_VERSIONS, MESH_WIRE_VERSION, } from '@agentplat/mesh-protocol';
2
2
  import { ALLOW_PREPROVISIONED_MESH_ADMISSION, processMeshEnvelope, } from './inbound.js';
3
3
  import { reduceMeshPeer } from './reducer.js';
4
4
  const defaultMaximumQueueDepth = 1_024;
@@ -106,9 +106,7 @@ class InMemoryMeshLoopbackTransport {
106
106
  if (this.#closed ||
107
107
  this.#queue.length + this.#inFlight + batchSize >
108
108
  this.#maximumQueueDepth ||
109
- this.#queuedBytes +
110
- this.#inFlightBytes +
111
- byteLength * batchSize >
109
+ this.#queuedBytes + this.#inFlightBytes + byteLength * batchSize >
112
110
  this.#maximumQueuedBytes) {
113
111
  return Promise.resolve(Object.freeze([
114
112
  Object.freeze({
@@ -294,6 +292,7 @@ class LoopbackPeer {
294
292
  #transport;
295
293
  #options;
296
294
  #prepared = new Map();
295
+ #wireVersion;
297
296
  #state;
298
297
  #outboundSequence;
299
298
  #tail = Promise.resolve();
@@ -306,10 +305,14 @@ class LoopbackPeer {
306
305
  this.#state = options.state;
307
306
  this.address = freezeAddress(options.state.identity);
308
307
  this.#outboundSequence = options.outboundSequence ?? 0;
308
+ this.#wireVersion = options.wireVersion ?? MESH_WIRE_VERSION;
309
309
  if (!Number.isSafeInteger(this.#outboundSequence) ||
310
310
  this.#outboundSequence < 0) {
311
311
  throw new RangeError('Invalid Mesh loopback outbound sequence');
312
312
  }
313
+ if (!MESH_SUPPORTED_WIRE_VERSIONS.includes(this.#wireVersion)) {
314
+ throw new TypeError('Invalid Mesh loopback wire version');
315
+ }
313
316
  }
314
317
  getState() {
315
318
  return this.#state;
@@ -346,8 +349,7 @@ class LoopbackPeer {
346
349
  verifier: this.#options.verifier,
347
350
  resolver: this.#options.resolver,
348
351
  cryptoPolicy: this.#options.cryptoPolicy,
349
- admissionPolicy: this.#options.admissionPolicy ??
350
- ALLOW_PREPROVISIONED_MESH_ADMISSION,
352
+ admissionPolicy: this.#options.admissionPolicy ?? ALLOW_PREPROVISIONED_MESH_ADMISSION,
351
353
  crypto: this.#options.crypto,
352
354
  protocolOptions: this.#options.protocolOptions,
353
355
  supportedCriticalExtensions: this.#options.supportedCriticalExtensions,
@@ -447,7 +449,7 @@ class LoopbackPeer {
447
449
  const intent = effect.intent;
448
450
  const unsigned = {
449
451
  protocol: MESH_PROTOCOL,
450
- wireVersion: MESH_WIRE_VERSION,
452
+ wireVersion: this.#wireVersion,
451
453
  messageId,
452
454
  tenantId: this.#state.identity.tenantId,
453
455
  meshId: this.#state.identity.meshId,
@@ -1 +1 @@
1
- {"version":3,"file":"loopback.js","sourceRoot":"","sources":["../src/loopback.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,iBAAiB,GAKlB,MAAM,0BAA0B,CAAC;AAQlC,OAAO,EACL,mCAAmC,EACnC,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAuI9C,MAAM,wBAAwB,GAAG,KAAK,CAAC;AACvC,MAAM,yBAAyB,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,CAAC;AAErD,wEAAwE;AACxE,MAAM,UAAU,2BAA2B,CACzC,UAAwC,EAAE;IAE1C,OAAO,IAAI,6BAA6B,CAAC,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,6BAA6B;IACxB,kBAAkB,CAAS;IAC3B,aAAa,CAAS;IACtB,mBAAmB,CAAS;IAC5B,uBAAuB,CAAS;IAChC,kCAAkC,CAAS;IAC3C,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IACzC,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,GAAe,EAAE,CAAC;IACxB,YAAY,GAAmB,EAAE,CAAC;IAC3C,kBAAkB,GAAG,CAAC,CAAC;IACvB,YAAY,GAAG,CAAC,CAAC;IACjB,SAAS,GAAG,CAAC,CAAC;IACd,cAAc,GAAG,CAAC,CAAC;IACnB,SAAS,GAAG,KAAK,CAAC;IAClB,iBAAiB,GAAG,CAAC,CAAC;IACtB,OAAO,GAAG,KAAK,CAAC;IAChB,aAAa,CAA4B;IACzC,aAAa,CAA2B;IAExC,YAAY,OAAqC;QAC/C,MAAM,iBAAiB,GACrB,OAAO,CAAC,iBAAiB,IAAI,wBAAwB,CAAC;QACxD,MAAM,MAAM,GAAG;YACb,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,GAAG;YACzC,iBAAiB;YACjB,kBAAkB,EAChB,OAAO,CAAC,kBAAkB,IAAI,yBAAyB;YACzD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB,IAAI,EAAE;YAC5D,iCAAiC,EAC/B,OAAO,CAAC,iCAAiC,IAAI,KAAK;SACrD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,UAAU,CAClB,iBAAiB,IAAI,kCAAkC,CACxD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACrD,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC7D,IAAI,CAAC,kCAAkC;YACrC,MAAM,CAAC,iCAAiC,CAAC;IAC7C,CAAC;IAED,QAAQ,CAAC,OAAgC;QACvC,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3C,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,2CAA2C,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU;SAClC,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CAAC,qDAAqD,CAAC,CAAC;QAC7E,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU,CAAC,OAA4B;QACrC,MAAM,GAAG,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,QAA4B;QAClC,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,EAAE,SAAS;gBAC9B,UAAU,EAAE,qBAAqB;aAClC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,eAAe,CACb,QAA4B,EAC5B,oBAAoB,GAAG,CAAC;QAExB,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC;YAC3C,oBAAoB,GAAG,CAAC;YACxB,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,EACnD,CAAC;YACD,MAAM,IAAI,UAAU,CAClB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,MAAM,CAAC,MAAM,CAAC;oBACZ,QAAQ,EAAE,KAAK;oBACf,SAAS,EAAE,QAAQ,EAAE,SAAS;oBAC9B,UAAU,EAAE,qBAAqB;iBAClC,CAAC;aACH,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,oBAAoB,GAAG,CAAC,CAAC;QAC3C,IACE,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS;gBAC7C,IAAI,CAAC,kBAAkB;YACzB,IAAI,CAAC,YAAY;gBACf,IAAI,CAAC,cAAc;gBACnB,UAAU,GAAG,SAAS;gBACtB,IAAI,CAAC,mBAAmB,EAC1B,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,MAAM,CAAC,MAAM,CAAC;oBACZ,QAAQ,EAAE,KAAK;oBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,UAAU,EAAE,IAAI,CAAC,OAAO;wBACtB,CAAC,CAAC,kBAAkB;wBACpB,CAAC,CAAC,yBAAyB;oBAC7B,MAAM;iBACP,CAAC;aACH,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,oBAAoB,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CACpD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAChC,CACF,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,YAAY;QACV,OAAO,MAAM,CAAC,MAAM,CAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACtB,MAAM,CAAC,MAAM,CAAC;YACZ,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;YACjC,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC/B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;gBAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,IAAkB,EAClB,KAA8B;QAE9B,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvE,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC/B,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACtC,OAAO,MAAM;oBACX,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;oBACvC,CAAC,CAAC,OAAO,CAAC,OAAO,CACb,MAAM,CAAC,MAAM,CAAC;wBACZ,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,UAAU,EAAE,qBAAqB;qBAClC,CAAC,CACH,CAAC;YACR,CAAC,CAAC,CACH,CAAC;YACF,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,QAAQ,CACN,QAA4B,EAC5B,MAA2B,EAC3B,QAAQ,GAAG,KAAK;QAEhB,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,UAAU,EAAE,kBAAkB;gBAC9B,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAChD,IACE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB;YAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,UAAU;gBAClD,IAAI,CAAC,mBAAmB,EAC1B,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,UAAU,EAAE,yBAAyB;gBACrC,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;gBAC1C,QAAQ;gBACR,MAAM;gBACN,UAAU;gBACV,OAAO;aACR,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC;YAChC,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,CAAC,GAAG;oBAAE,MAAM;gBAChB,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC;gBACpC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,GAAG,CAAC,OAAO,CACT,MAAM,CAAC,MAAM,CAAC;wBACZ,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;wBACjC,UAAU,EAAE,oBAAoB;wBAChC,MAAM,EAAE,GAAG,CAAC,MAAM;qBACnB,CAAC,CACH,CAAC;oBACF,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;oBACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;oBACxB,SAAS;gBACX,CAAC;gBACD,IAAI,MAAsB,CAAC;gBAC3B,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC3C,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,GAAG;wBACP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;4BACrB,QAAQ,EAAE,KAAK;4BACf,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;4BACjC,UAAU,EAAE,iBAAiB;4BAC7B,MAAM,EAAE,GAAG,CAAC,MAAM;yBACnB,CAAC;wBACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;qBAC5B,CAAC;gBACJ,CAAC;gBACD,kEAAkE;gBAClE,4DAA4D;gBAC5D,oDAAoD;gBACpD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACtC,IAAI,MAAM;wBAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;oBAAE,OAAO,EAAE,CAAC;YAC/D,CAAC;YACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,IAAI,iCAAiC;QACnC,OAAO,IAAI,CAAC,kCAAkC,CAAC;IACjD,CAAC;IAED,wBAAwB;QACtB,IACE,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,iBAAiB,KAAK,CAAC;YAC5B,CAAC,IAAI,CAAC,SAAS;YACf,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EACxB,CAAC;YACD,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC;IACH,CAAC;CACF;AAED,MAAM,YAAY;IACP,OAAO,CAAsB;IAC7B,UAAU,CAAgC;IAC1C,QAAQ,CAA0B;IAClC,SAAS,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC3D,MAAM,CAAgB;IACtB,iBAAiB,CAAS;IAC1B,KAAK,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEzC,YACE,SAAwC,EACxC,OAAgC;QAEhC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACvD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC7C,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAC1B,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC,CAAC;QAClE,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;SACzC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,KAA8B;QACrC,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,KAA8B;QAKvC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACxE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;YAC/B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CACvC,UAAU,CAAC,OAAO,EAClB,IAAI,CACL,CAAC;YACF,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,QAA4B;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ;gBACR,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;gBACxC,eAAe,EACb,IAAI,CAAC,QAAQ,CAAC,eAAe;oBAC7B,mCAAmC;gBACrC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;gBAC5B,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;gBAC9C,2BAA2B,EACzB,IAAI,CAAC,QAAQ,CAAC,2BAA2B;aAC5C,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACvB,OAAO,MAAM,CAAC,MAAM,CAAC;oBACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;wBACrB,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI;wBACzB,MAAM,EAAE,IAAI,CAAC,OAAO;qBACrB,CAAC;oBACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;iBAC5B,CAAC,CAAC;YACL,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;oBACrB,QAAQ,EAAE,IAAI;oBACd,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,MAAM,EAAE,IAAI,CAAC,OAAO;iBACrB,CAAC;gBACF,QAAQ;aACT,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACd,cAAyC,EACzC,IAAsB;QAEtB,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,iCAAiC,EAAE,CAAC;gBAC/D,MAAM,IAAI,UAAU,CAAC,4CAA4C,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACtC,IAAI,UAAU,CAAC;gBACf,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC9C,UAAU,GAAG,cAAc,CACzB,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,MAAM,CAAC;wBACZ,IAAI,EAAE,eAAe;wBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,MAAM,EAAE,WAAW;wBACnB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC;4BAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;4BAC5C,SAAS,EACP,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB;yBACrD,CAAC;qBACH,CAAC,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,GAAG,cAAc,CACzB,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,MAAM,CAAC;wBACZ,IAAI,EAAE,eAAe;wBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,MAAM,EAAE,QAAQ;wBAChB,SAAS,EAAE,oBAAoB;qBAChC,CAAC,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAChE,IACE,CAAC,QAAQ;oBACT,QAAQ,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;oBACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM;oBACjC,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc,EAClD,CAAC;oBACD,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;gBACrE,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAClD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,MAAqE,EACrE,IAAsB;QAEtB,IAAI,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACtD,MAAM,IAAI,UAAU,CAAC,2CAA2C,CAAC,CAAC;QACpE,CAAC;QACD,IACE,IAAI,CAAC,WAAW;YAChB,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EACzD,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,uCAAuC,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,CAChB,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CACzE,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,CACrD,CAAC,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,MAAM,QAAQ,GAAyB;YACrC,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,iBAAiB;YAC9B,SAAS;YACT,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;YACnC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;gBACnC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU;aAC5C,CAAC;YACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,MAAM,CAAC,cAAc;aAC9B,CAAC;YACF,QAAQ,EAAE,IAAI,CAAC,iBAAiB;YAChC,MAAM,EAAE,IAAI,CAAC,SAAS;YACtB,SAAS;YACT,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,wBAAwB;gBACnC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK;aAClC,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YACxC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YACxC,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS;gBACpC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;SAC7C,CAAC;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;YACpC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,MAAsB;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,UAAU,CAAI,SAA2B;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,SAAS,YAAY,CACnB,QAA4B;IAE5B,IACE,CAAC,QAAQ;QACT,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,CAAC,QAAQ,EAAE,IAAI,KAAK,MAAM,EAClC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;KACjC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CACpB,KAA+D;IAE/D,IACE,CAAC,KAAK;QACN,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAClC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAChC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,KAAuB;IACzC,IACE,CAAC,KAAK;QACN,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;QACxC,KAAK,CAAC,WAAW,GAAG,CAAC;QACrB,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EACnC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B;IAC9C,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,sBAAsB,CAAC,cAAkC;IAGhE,MAAM,cAAc,GAAG,cAAc,IAAI,UAAU,CAAC,MAAM,CAAC;IAC3D,OAAO;QACL,aAAa;YACX,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,KAAK,GAAG,cAAc,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAiB;IACxC,MAAM,QAAQ,GACZ,kEAAkE,CAAC;IACrE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/B,MAAM,QAAQ,GACZ,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;QACtD,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACpE,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,WAAW,EAAE,CAAC;AAE1C,SAAS,kBAAkB,CAAC,QAA4B;IACtD,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,gBAAgB,CAAC;IACjC,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"loopback.js","sourceRoot":"","sources":["../src/loopback.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,aAAa,EACb,wBAAwB,EACxB,4BAA4B,EAC5B,iBAAiB,GAMlB,MAAM,0BAA0B,CAAC;AAQlC,OAAO,EACL,mCAAmC,EACnC,mBAAmB,GACpB,MAAM,cAAc,CAAC;AACtB,OAAO,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAyI9C,MAAM,wBAAwB,GAAG,KAAK,CAAC;AACvC,MAAM,yBAAyB,GAAG,EAAE,GAAG,KAAK,GAAG,KAAK,CAAC;AAErD,wEAAwE;AACxE,MAAM,UAAU,2BAA2B,CACzC,UAAwC,EAAE;IAE1C,OAAO,IAAI,6BAA6B,CAAC,OAAO,CAAC,CAAC;AACpD,CAAC;AAED,MAAM,6BAA6B;IACxB,kBAAkB,CAAS;IAC3B,aAAa,CAAS;IACtB,mBAAmB,CAAS;IAC5B,uBAAuB,CAAS;IAChC,kCAAkC,CAAS;IAC3C,MAAM,GAAG,IAAI,GAAG,EAAwB,CAAC;IACzC,cAAc,GAAG,IAAI,GAAG,EAAU,CAAC;IACnC,MAAM,GAAe,EAAE,CAAC;IACxB,YAAY,GAAmB,EAAE,CAAC;IAC3C,kBAAkB,GAAG,CAAC,CAAC;IACvB,YAAY,GAAG,CAAC,CAAC;IACjB,SAAS,GAAG,CAAC,CAAC;IACd,cAAc,GAAG,CAAC,CAAC;IACnB,SAAS,GAAG,KAAK,CAAC;IAClB,iBAAiB,GAAG,CAAC,CAAC;IACtB,OAAO,GAAG,KAAK,CAAC;IAChB,aAAa,CAA4B;IACzC,aAAa,CAA2B;IAExC,YAAY,OAAqC;QAC/C,MAAM,iBAAiB,GACrB,OAAO,CAAC,iBAAiB,IAAI,wBAAwB,CAAC;QACxD,MAAM,MAAM,GAAG;YACb,YAAY,EAAE,OAAO,CAAC,YAAY,IAAI,GAAG;YACzC,iBAAiB;YACjB,kBAAkB,EAChB,OAAO,CAAC,kBAAkB,IAAI,yBAAyB;YACzD,sBAAsB,EAAE,OAAO,CAAC,sBAAsB,IAAI,EAAE;YAC5D,iCAAiC,EAC/B,OAAO,CAAC,iCAAiC,IAAI,KAAK;SACrD,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,GAAG,CAAC,EAAE,CAAC;gBAC9C,MAAM,IAAI,UAAU,CAClB,iBAAiB,IAAI,kCAAkC,CACxD,CAAC;YACJ,CAAC;QACH,CAAC;QACD,IAAI,CAAC,kBAAkB,GAAG,iBAAiB,CAAC;QAC5C,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,mBAAmB,GAAG,MAAM,CAAC,kBAAkB,CAAC;QACrD,IAAI,CAAC,uBAAuB,GAAG,MAAM,CAAC,sBAAsB,CAAC;QAC7D,IAAI,CAAC,kCAAkC;YACrC,MAAM,CAAC,iCAAiC,CAAC;IAC7C,CAAC;IAED,QAAQ,CAAC,OAAgC;QACvC,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvE,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,IAAI,IAAI,CAAC,aAAa,EAAE,CAAC;YAC3C,MAAM,IAAI,UAAU,CAAC,sCAAsC,CAAC,CAAC;QAC/D,CAAC;QACD,MAAM,IAAI,GAAG,IAAI,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QAC7C,MAAM,GAAG,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,CAAC;YACzB,MAAM,IAAI,SAAS,CAAC,2CAA2C,CAAC,CAAC;QACnE,CAAC;QACD,MAAM,WAAW,GAAG,IAAI,CAAC,SAAS,CAAC;YACjC,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC;YAClB,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,UAAU;SAClC,CAAC,CAAC;QACH,IAAI,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CACjB,qDAAqD,CACtD,CAAC;QACJ,CAAC;QACD,IAAI,CAAC,cAAc,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;QACrC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAC3B,OAAO,IAAI,CAAC;IACd,CAAC;IAED,UAAU,CAAC,OAA4B;QACrC,MAAM,GAAG,GAAG,UAAU,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC,CAAC;QAC/C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,OAAO,EAAE,CAAC;QAChC,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC1B,CAAC;IAED,OAAO,CAAC,QAA4B;QAClC,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,EAAE,SAAS;gBAC9B,UAAU,EAAE,qBAAqB;aAClC,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;IACzC,CAAC;IAED,eAAe,CACb,QAA4B,EAC5B,oBAAoB,GAAG,CAAC;QAExB,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,oBAAoB,CAAC;YAC3C,oBAAoB,GAAG,CAAC;YACxB,oBAAoB,GAAG,IAAI,CAAC,uBAAuB,EACnD,CAAC;YACD,MAAM,IAAI,UAAU,CAClB,oEAAoE,CACrE,CAAC;QACJ,CAAC;QACD,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;QACtC,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,MAAM,CAAC,MAAM,CAAC;oBACZ,QAAQ,EAAE,KAAK;oBACf,SAAS,EAAE,QAAQ,EAAE,SAAS;oBAC9B,UAAU,EAAE,qBAAqB;iBAClC,CAAC;aACH,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAChD,MAAM,SAAS,GAAG,oBAAoB,GAAG,CAAC,CAAC;QAC3C,IACE,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,GAAG,SAAS;gBAC7C,IAAI,CAAC,kBAAkB;YACzB,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,UAAU,GAAG,SAAS;gBAC9D,IAAI,CAAC,mBAAmB,EAC1B,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,MAAM,CAAC,MAAM,CAAC;oBACZ,QAAQ,EAAE,KAAK;oBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,UAAU,EAAE,IAAI,CAAC,OAAO;wBACtB,CAAC,CAAC,kBAAkB;wBACpB,CAAC,CAAC,yBAAyB;oBAC7B,MAAM;iBACP,CAAC;aACH,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,OAAO,CAAC,GAAG,CAChB,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,oBAAoB,GAAG,CAAC,EAAE,EAAE,GAAG,EAAE,CACpD,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC,CAChC,CACF,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChD,CAAC;IAED,YAAY;QACV,OAAO,MAAM,CAAC,MAAM,CAClB,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CACtB,MAAM,CAAC,MAAM,CAAC;YACZ,iBAAiB,EAAE,GAAG,CAAC,iBAAiB;YACxC,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;YACjC,MAAM,EAAE,GAAG,CAAC,MAAM;SACnB,CAAC,CACH,CACF,CAAC;IACJ,CAAC;IAED,IAAI;QACF,IAAI,CAAC,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1E,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IACnE,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,aAAa;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;QACpB,IAAI,CAAC,aAAa,GAAG,IAAI,OAAO,CAAO,CAAC,OAAO,EAAE,EAAE;YACjD,IAAI,CAAC,aAAa,GAAG,OAAO,CAAC;QAC/B,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;YACX,KAAK,MAAM,IAAI,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;gBAAE,IAAI,CAAC,OAAO,EAAE,CAAC;YACxD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtB,CAAC,CAAC,CAAC;QACH,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAChC,OAAO,IAAI,CAAC,aAAa,CAAC;IAC5B,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,IAAkB,EAClB,KAA8B;QAE9B,IAAI,IAAI,CAAC,OAAO;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAC;QACvE,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;YAC5C,MAAM,QAAQ,GAAG,MAAM,OAAO,CAAC,GAAG,CAChC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,QAAQ,EAAE,EAAE;gBAC/B,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;gBACtC,OAAO,MAAM;oBACX,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC;oBACvC,CAAC,CAAC,OAAO,CAAC,OAAO,CACb,MAAM,CAAC,MAAM,CAAC;wBACZ,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,UAAU,EAAE,qBAAqB;qBAClC,CAAC,CACH,CAAC;YACR,CAAC,CAAC,CACH,CAAC;YACF,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,KAAK,EAAE,MAAM,CAAC,KAAK;gBACnB,OAAO,EAAE,MAAM,CAAC,OAAO;gBACvB,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC;aAClC,CAAC,CAAC;QACL,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;YAC5B,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,QAAQ,CACN,QAA4B,EAC5B,MAA2B,EAC3B,QAAQ,GAAG,KAAK;QAEhB,IAAI,IAAI,CAAC,OAAO,IAAI,CAAC,QAAQ,EAAE,CAAC;YAC9B,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,UAAU,EAAE,kBAAkB;gBAC9B,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;QACD,MAAM,UAAU,GAAG,kBAAkB,CAAC,QAAQ,CAAC,CAAC;QAChD,IACE,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,IAAI,IAAI,CAAC,kBAAkB;YAC9D,IAAI,CAAC,YAAY,GAAG,IAAI,CAAC,cAAc,GAAG,UAAU;gBAClD,IAAI,CAAC,mBAAmB,EAC1B,CAAC;YACD,OAAO,OAAO,CAAC,OAAO,CACpB,MAAM,CAAC,MAAM,CAAC;gBACZ,QAAQ,EAAE,KAAK;gBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;gBAC7B,UAAU,EAAE,yBAAyB;gBACrC,MAAM;aACP,CAAC,CACH,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;YAC7B,IAAI,CAAC,kBAAkB,IAAI,CAAC,CAAC;YAC7B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;gBACf,iBAAiB,EAAE,IAAI,CAAC,kBAAkB;gBAC1C,QAAQ;gBACR,MAAM;gBACN,UAAU;gBACV,OAAO;aACR,CAAC,CAAC;YACH,IAAI,CAAC,YAAY,IAAI,UAAU,CAAC;YAChC,IAAI,CAAC,cAAc,EAAE,CAAC;QACxB,CAAC,CAAC,CAAC;IACL,CAAC;IAED,cAAc;QACZ,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO;QAC3B,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;QACtB,KAAK,OAAO,CAAC,OAAO,EAAE,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,KAAK,CAAC,MAAM;QACV,IAAI,CAAC;YACH,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC9B,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAChC,IAAI,CAAC,GAAG;oBAAE,MAAM;gBAChB,IAAI,CAAC,YAAY,IAAI,GAAG,CAAC,UAAU,CAAC;gBACpC,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,GAAG,GAAG,CAAC,UAAU,CAAC;gBACrC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC;gBACrD,IAAI,CAAC,IAAI,EAAE,CAAC;oBACV,GAAG,CAAC,OAAO,CACT,MAAM,CAAC,MAAM,CAAC;wBACZ,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;wBACjC,UAAU,EAAE,oBAAoB;wBAChC,MAAM,EAAE,GAAG,CAAC,MAAM;qBACnB,CAAC,CACH,CAAC;oBACF,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;oBACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;oBACxB,SAAS;gBACX,CAAC;gBACD,IAAI,MAAsB,CAAC;gBAC3B,IAAI,CAAC;oBACH,MAAM,GAAG,MAAM,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;gBAC3C,CAAC;gBAAC,MAAM,CAAC;oBACP,MAAM,GAAG;wBACP,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;4BACrB,QAAQ,EAAE,KAAK;4BACf,SAAS,EAAE,GAAG,CAAC,QAAQ,CAAC,SAAS;4BACjC,UAAU,EAAE,iBAAiB;4BAC7B,MAAM,EAAE,GAAG,CAAC,MAAM;yBACnB,CAAC;wBACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;qBAC5B,CAAC;gBACJ,CAAC;gBACD,kEAAkE;gBAClE,4DAA4D;gBAC5D,oDAAoD;gBACpD,IAAI,CAAC,SAAS,GAAG,CAAC,CAAC;gBACnB,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;gBACxB,GAAG,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBAC5B,KAAK,MAAM,QAAQ,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;oBACvC,MAAM,MAAM,GAAG,YAAY,CAAC,QAAQ,CAAC,CAAC;oBACtC,IAAI,MAAM;wBAAE,KAAK,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;gBACzD,CAAC;YACH,CAAC;QACH,CAAC;gBAAS,CAAC;YACT,IAAI,CAAC,SAAS,GAAG,KAAK,CAAC;YACvB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC3B,IAAI,CAAC,cAAc,EAAE,CAAC;YACxB,CAAC;iBAAM,CAAC;gBACN,KAAK,MAAM,OAAO,IAAI,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC;oBAAE,OAAO,EAAE,CAAC;YAC/D,CAAC;YACD,IAAI,CAAC,wBAAwB,EAAE,CAAC;QAClC,CAAC;IACH,CAAC;IAED,IAAI,iCAAiC;QACnC,OAAO,IAAI,CAAC,kCAAkC,CAAC;IACjD,CAAC;IAED,wBAAwB;QACtB,IACE,IAAI,CAAC,OAAO;YACZ,IAAI,CAAC,iBAAiB,KAAK,CAAC;YAC5B,CAAC,IAAI,CAAC,SAAS;YACf,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EACxB,CAAC;YACD,IAAI,CAAC,aAAa,EAAE,EAAE,CAAC;YACvB,IAAI,CAAC,aAAa,GAAG,SAAS,CAAC;QACjC,CAAC;IACH,CAAC;CACF;AAED,MAAM,YAAY;IACP,OAAO,CAAsB;IAC7B,UAAU,CAAgC;IAC1C,QAAQ,CAA0B;IAClC,SAAS,GAAG,IAAI,GAAG,EAA8B,CAAC;IAClD,YAAY,CAAkB;IACvC,MAAM,CAAgB;IACtB,iBAAiB,CAAS;IAC1B,KAAK,GAAkB,OAAO,CAAC,OAAO,EAAE,CAAC;IAEzC,YACE,SAAwC,EACxC,OAAgC;QAEhC,IAAI,CAAC,OAAO,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;YAC5C,MAAM,IAAI,SAAS,CAAC,yCAAyC,CAAC,CAAC;QACjE,CAAC;QACD,IAAI,CAAC,UAAU,GAAG,SAAS,CAAC;QAC5B,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC;QACxB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACrD,IAAI,CAAC,iBAAiB,GAAG,OAAO,CAAC,gBAAgB,IAAI,CAAC,CAAC;QACvD,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,WAAW,IAAI,iBAAiB,CAAC;QAC7D,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,iBAAiB,CAAC;YAC7C,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAC1B,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,yCAAyC,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,CAAC,4BAA4B,CAAC,QAAQ,CAAC,IAAI,CAAC,YAAY,CAAC,EAAE,CAAC;YAC9D,MAAM,IAAI,SAAS,CAAC,oCAAoC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,QAAQ;QACN,OAAO,MAAM,CAAC,MAAM,CAAC;YACnB,KAAK,EAAE,IAAI,CAAC,MAAM;YAClB,gBAAgB,EAAE,IAAI,CAAC,iBAAiB;SACzC,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CACN,KAA8B;QAE9B,OAAO,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,IAAI,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,UAAU,CAAC,KAA8B;QAKvC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,MAAM,UAAU,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC;YACxE,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;YAC/B,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YACpE,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,KAAK,EAAE,IAAI,CAAC,MAAM;gBAClB,OAAO,EAAE,UAAU,CAAC,OAAO;gBAC3B,QAAQ,EAAE,WAAW;aACtB,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,MAAM,CAAC,QAA4B;QACjC,OAAO,IAAI,CAAC,UAAU,CAAC,KAAK,IAAI,EAAE;YAChC,MAAM,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;YACnD,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CAAC,IAAI,CAAC,MAAM,EAAE;gBACtD,QAAQ;gBACR,UAAU,EAAE,IAAI,CAAC,SAAS;gBAC1B,UAAU,EAAE,IAAI,CAAC,WAAW;gBAC5B,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,QAAQ;gBAChC,YAAY,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY;gBACxC,eAAe,EACb,IAAI,CAAC,QAAQ,CAAC,eAAe,IAAI,mCAAmC;gBACtE,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;gBAC5B,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;gBAC9C,2BAA2B,EAAE,IAAI,CAAC,QAAQ,CAAC,2BAA2B;aACvE,CAAC,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC;gBACvB,OAAO,MAAM,CAAC,MAAM,CAAC;oBACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;wBACrB,QAAQ,EAAE,KAAK;wBACf,SAAS,EAAE,QAAQ,CAAC,SAAS;wBAC7B,UAAU,EAAE,QAAQ,CAAC,IAAI;wBACzB,MAAM,EAAE,IAAI,CAAC,OAAO;qBACrB,CAAC;oBACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC;iBAC5B,CAAC,CAAC;YACL,CAAC;YACD,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC,KAAK,CAAC;YAC7B,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;YAC/D,OAAO,MAAM,CAAC,MAAM,CAAC;gBACnB,OAAO,EAAE,MAAM,CAAC,MAAM,CAAC;oBACrB,QAAQ,EAAE,IAAI;oBACd,SAAS,EAAE,QAAQ,CAAC,SAAS;oBAC7B,MAAM,EAAE,IAAI,CAAC,OAAO;iBACrB,CAAC;gBACF,QAAQ;aACT,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,UAAU,CACd,cAAyC,EACzC,IAAsB;QAEtB,MAAM,OAAO,GAAG,CAAC,GAAG,cAAc,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAyB,EAAE,CAAC;QAC1C,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;YACvD,IAAI,KAAK,IAAI,IAAI,CAAC,UAAU,CAAC,iCAAiC,EAAE,CAAC;gBAC/D,MAAM,IAAI,UAAU,CAAC,4CAA4C,CAAC,CAAC;YACrE,CAAC;YACD,MAAM,MAAM,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAC9B,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;YACtB,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACtC,IAAI,UAAU,CAAC;gBACf,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;oBACnD,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;oBAC9C,UAAU,GAAG,cAAc,CACzB,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,MAAM,CAAC;wBACZ,IAAI,EAAE,eAAe;wBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,MAAM,EAAE,WAAW;wBACnB,eAAe,EAAE,MAAM,CAAC,MAAM,CAAC;4BAC7B,SAAS,EAAE,QAAQ,CAAC,SAAS;4BAC7B,IAAI,EAAE,QAAQ,CAAC,IAAI;4BACnB,cAAc,EAAE,MAAM,CAAC,MAAM,CAAC,cAAc;4BAC5C,SAAS,EAAE,IAAI,CAAC,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB;yBAC9D,CAAC;qBACH,CAAC,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;gBACJ,CAAC;gBAAC,MAAM,CAAC;oBACP,UAAU,GAAG,cAAc,CACzB,IAAI,CAAC,MAAM,EACX,MAAM,CAAC,MAAM,CAAC;wBACZ,IAAI,EAAE,eAAe;wBACrB,QAAQ,EAAE,MAAM,CAAC,QAAQ;wBACzB,MAAM,EAAE,QAAQ;wBAChB,SAAS,EAAE,oBAAoB;qBAChC,CAAC,EACF,IAAI,CAAC,WAAW,CACjB,CAAC;gBACJ,CAAC;gBACD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;gBAC/B,OAAO,CAAC,IAAI,CAAC,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC;YACtC,CAAC;iBAAM,IAAI,MAAM,CAAC,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAChE,IACE,CAAC,QAAQ;oBACT,QAAQ,CAAC,SAAS,KAAK,MAAM,CAAC,SAAS;oBACvC,QAAQ,CAAC,QAAQ,CAAC,IAAI,KAAK,MAAM;oBACjC,QAAQ,CAAC,QAAQ,CAAC,MAAM,KAAK,MAAM,CAAC,cAAc,EAClD,CAAC;oBACD,MAAM,IAAI,SAAS,CAAC,6CAA6C,CAAC,CAAC;gBACrE,CAAC;gBACD,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,mBAAmB,CAAC,CAAC;gBAClD,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;YAC1B,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACjC,CAAC;IAED,OAAO;QACL,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,QAAQ,CACZ,MAAqE,EACrE,IAAsB;QAEtB,IAAI,IAAI,CAAC,iBAAiB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAAC;YACtD,MAAM,IAAI,UAAU,CAAC,2CAA2C,CAAC,CAAC;QACpE,CAAC;QACD,IACE,IAAI,CAAC,WAAW;YAChB,MAAM,CAAC,gBAAgB,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,EACzD,CAAC;YACD,MAAM,IAAI,UAAU,CAAC,uCAAuC,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,iBAAiB,IAAI,CAAC,CAAC;QAC5B,MAAM,SAAS,GAAG,CAChB,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,sBAAsB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CACzE,CAAC,aAAa,EAAE,CAAC;QAClB,MAAM,kBAAkB,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QACtD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAAC;YACzC,MAAM,IAAI,SAAS,CAAC,iCAAiC,CAAC,CAAC;QACzD,CAAC;QACD,MAAM,SAAS,GAAG,IAAI,IAAI,CACxB,kBAAkB,GAAG,MAAM,CAAC,MAAM,CAAC,iBAAiB,CACrD,CAAC,WAAW,EAAE,CAAC;QAChB,MAAM,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAC7B,MAAM,QAAQ,GAAyB;YACrC,QAAQ,EAAE,aAAa;YACvB,WAAW,EAAE,IAAI,CAAC,YAAY;YAC9B,SAAS;YACT,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ;YACvC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;YACnC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM,CAAC;gBACpB,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM;gBACnC,UAAU,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,UAAU;aAC5C,CAAC;YACF,QAAQ,EAAE,MAAM,CAAC,MAAM,CAAC;gBACtB,IAAI,EAAE,MAAM;gBACZ,MAAM,EAAE,MAAM,CAAC,cAAc;aAC9B,CAAC;YACF,QAAQ,EAAE,IAAI,CAAC,iBAAiB;YAChC,MAAM,EAAE,IAAI,CAAC,SAAS;YACtB,SAAS;YACT,OAAO,EAAE,MAAM,CAAC,OAAO;YACvB,KAAK,EAAE,MAAM,CAAC,MAAM,CAAC;gBACnB,SAAS,EAAE,wBAAwB;gBACnC,KAAK,EAAE,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK;aAClC,CAAC;YACF,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YACxC,GAAG,CAAC,MAAM,CAAC,WAAW,KAAK,SAAS;gBAClC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YACxC,GAAG,CAAC,MAAM,CAAC,aAAa,KAAK,SAAS;gBACpC,CAAC,CAAC,EAAE;gBACJ,CAAC,CAAC,EAAE,aAAa,EAAE,MAAM,CAAC,aAAa,EAAE,CAAC;SAC7C,CAAC;QACF,OAAO,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC;YAC/B,QAAQ,EAAE,QAAQ;YAClB,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,UAAU;YACpC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,MAAM;YAC5B,eAAe,EAAE,IAAI,CAAC,QAAQ,CAAC,eAAe;SAC/C,CAAC,CAAC;IACL,CAAC;IAED,QAAQ,CAAC,MAAsB;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,CAAC;QACnC,CAAC;QAAC,MAAM,CAAC;YACP,0DAA0D;QAC5D,CAAC;IACH,CAAC;IAED,UAAU,CAAI,SAA2B;QACvC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;QACrD,IAAI,CAAC,KAAK,GAAG,MAAM,CAAC,IAAI,CACtB,GAAG,EAAE,CAAC,SAAS,EACf,GAAG,EAAE,CAAC,SAAS,CAChB,CAAC;QACF,OAAO,MAAM,CAAC;IAChB,CAAC;CACF;AAED,SAAS,YAAY,CACnB,QAA4B;IAE5B,IACE,CAAC,QAAQ;QACT,OAAO,QAAQ,KAAK,QAAQ;QAC5B,QAAQ,CAAC,QAAQ,EAAE,IAAI,KAAK,MAAM,EAClC,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,QAAQ,CAAC,QAAQ;QAC3B,MAAM,EAAE,QAAQ,CAAC,MAAM;QACvB,MAAM,EAAE,QAAQ,CAAC,QAAQ,CAAC,MAAM;KACjC,CAAC,CAAC;AACL,CAAC;AAED,SAAS,aAAa,CACpB,KAA+D;IAE/D,IACE,CAAC,KAAK;QACN,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;QAClC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ;QAChC,OAAO,KAAK,CAAC,MAAM,KAAK,QAAQ,EAChC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,+BAA+B,CAAC,CAAC;IACvD,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,QAAQ,EAAE,KAAK,CAAC,QAAQ;QACxB,MAAM,EAAE,KAAK,CAAC,MAAM;QACpB,MAAM,EAAE,KAAK,CAAC,MAAM;KACrB,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,KAAuB;IACzC,IACE,CAAC,KAAK;QACN,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,WAAW,CAAC;QACxC,KAAK,CAAC,WAAW,GAAG,CAAC;QACrB,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,EACnC,CAAC;QACD,MAAM,IAAI,SAAS,CAAC,mCAAmC,CAAC,CAAC;IAC3D,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,SAAS,EAAE,KAAK,CAAC,SAAS;KAC3B,CAAC,CAAC;AACL,CAAC;AAED,SAAS,UAAU,CAAC,OAA4B;IAC9C,OAAO,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC;AAC5E,CAAC;AAED,SAAS,sBAAsB,CAAC,cAAkC;IAGhE,MAAM,cAAc,GAAG,cAAc,IAAI,UAAU,CAAC,MAAM,CAAC;IAC3D,OAAO;QACL,aAAa;YACX,IAAI,CAAC,cAAc,EAAE,eAAe,EAAE,CAAC;gBACrC,MAAM,IAAI,KAAK,CAAC,gDAAgD,CAAC,CAAC;YACpE,CAAC;YACD,MAAM,KAAK,GAAG,cAAc,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;YACjE,OAAO,eAAe,CAAC,KAAK,CAAC,CAAC;QAChC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,KAAiB;IACxC,MAAM,QAAQ,GACZ,kEAAkE,CAAC;IACrE,IAAI,MAAM,GAAG,EAAE,CAAC;IAChB,KAAK,IAAI,KAAK,GAAG,CAAC,EAAE,KAAK,GAAG,KAAK,CAAC,MAAM,EAAE,KAAK,IAAI,CAAC,EAAE,CAAC;QACrD,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC;QAC3B,MAAM,MAAM,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAChC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAC;QAC/B,MAAM,QAAQ,GAAG,CAAC,KAAK,IAAI,EAAE,CAAC,GAAG,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;QACrE,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,EAAE,CAAC,GAAG,EAAE,CAAC,CAAC;QAC3C,IAAI,MAAM,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,CAAC,CAAC,QAAQ,KAAK,CAAC,CAAC,GAAG,EAAE,CAAC,CAAC;QACpE,IAAI,KAAK,KAAK,SAAS;YAAE,MAAM,IAAI,QAAQ,CAAC,QAAQ,GAAG,EAAE,CAAC,CAAC;IAC7D,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,eAAe,GAAG,IAAI,WAAW,EAAE,CAAC;AAE1C,SAAS,kBAAkB,CAAC,QAA4B;IACtD,IAAI,CAAC;QACH,OAAO,eAAe,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC;IACrE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,MAAM,CAAC,gBAAgB,CAAC;IACjC,CAAC;AACH,CAAC"}
@@ -0,0 +1,11 @@
1
+ # Mesh Beta 1 persistence fixtures
2
+
3
+ This corpus freezes provider-neutral state, durable wrapper and migration
4
+ compatibility for `0.3.0-beta.1`. It covers core, coordination, discovery,
5
+ inbound, Objective/Work, Allocation, simulator, wrapper-schema and PostgreSQL
6
+ migration identities without embedding application data or private keys.
7
+
8
+ Run `pnpm run verify:mesh-persistence-fixtures` to restore every readable state
9
+ version, reproduce simulator output and recompute the manifest digests. Use
10
+ `pnpm run fixtures:mesh-persistence:write` only for an intentional reviewed
11
+ fixture update.
@@ -0,0 +1,19 @@
1
+ {
2
+ "envelopeWireVersion": 0,
3
+ "journalVersion": 1,
4
+ "schemaVersion": 1,
5
+ "scope": {
6
+ "instanceId": "instance-fixture",
7
+ "meshId": "mesh-fixture",
8
+ "peerId": "peer-fixture",
9
+ "tenantId": "tenant-fixture"
10
+ },
11
+ "snapshot": {
12
+ "migrationStatus": "legacy_untyped",
13
+ "state": {
14
+ "schemaVersion": 1,
15
+ "status": "legacy_fixture"
16
+ },
17
+ "stateDigest": "sha256:uZFtXmacDZvCpF9ianZQUEvPrWLoVUVUp4mzFIqei08"
18
+ }
19
+ }
@@ -0,0 +1,51 @@
1
+ {
2
+ "envelope": {
3
+ "audience": {
4
+ "kind": "peer",
5
+ "peerId": "peer-b"
6
+ },
7
+ "expiresAt": "2026-07-30T00:00:30.000Z",
8
+ "meshId": "mesh-a",
9
+ "messageId": "PPPPPPPPPPPPPPPPPPPPPA",
10
+ "payload": {
11
+ "type": "peer.ping"
12
+ },
13
+ "payloadHash": "sha256:_8czW4AY8gjthq7NnzCIs73fOeWdOh62geiHthPxdyI",
14
+ "proof": {
15
+ "algorithm": "Ed25519",
16
+ "keyId": "fixture-key-v1",
17
+ "value": "DC_tTexcCMQCKt2TErukHdFZJaj-OfJ3p2RgdFtY6osWR0v5TMMMzcukHvdsYkafYchYe8X7Kd2780XNSGX_BA"
18
+ },
19
+ "protocol": "agentplat.mesh",
20
+ "sender": {
21
+ "instanceId": "instance-a",
22
+ "peerId": "peer-a"
23
+ },
24
+ "sentAt": "2026-07-30T00:00:00.000Z",
25
+ "sequence": 2,
26
+ "tenantId": "tenant-a",
27
+ "type": "peer.ping",
28
+ "wireVersion": 1
29
+ },
30
+ "envelopeCanonicalBytes": "eyJhdWRpZW5jZSI6eyJraW5kIjoicGVlciIsInBlZXJJZCI6InBlZXItYiJ9LCJleHBpcmVzQXQiOiIyMDI2LTA3LTMwVDAwOjAwOjMwLjAwMFoiLCJtZXNoSWQiOiJtZXNoLWEiLCJtZXNzYWdlSWQiOiJQUFBQUFBQUFBQUFBQUFBQUFBQUFBBIiwicGF5bG9hZCI6eyJ0eXBlIjoicGVlci5waW5nIn0sInBheWxvYWRIYXNoIjoic2hhMjU2Ol84Y3pXNEFZOGdqdGhxN05uekNJczczZk9lV2RPaDYyZ2VpSHRoUHhkeUkiLCJwcm9vZiI6eyJhbGdvcml0aG0iOiJFZDI1NTE5Iiwia2V5SWQiOiJmaXh0dXJlLWtleS12MSIsInZhbHVlIjoiRENfdFRleGNDTVFDS3QyVEVydWtIZEZaSmFqLU9mSjNwMlJnZEZ0WTZvc1dSMHY1VE1NTXpjdWtIdmRzWWthZlljaFllOFg3S2QyNzgwWE5TR1hfQkEifSwicHJvdG9jb2wiOiJhZ2VudHBsYXQubWVzaCIsInNlbmRlciI6eyJpbnN0YW5jZUlkIjoiaW5zdGFuY2UtYSIsInBlZXJJZCI6InBlZXItYSJ9LCJzZW50QXQiOiIyMDI2LTA3LTMwVDAwOjAwOjAwLjAwMFoiLCJzZXF1ZW5jZSI6MiwidGVuYW50SWQiOiJ0ZW5hbnQtYSIsInR5cGUiOiJwZWVyLnBpbmciLCJ3aXJlVmVyc2lvbiI6MX0",
31
+ "envelopeDigest": "sha256:l_OSDUzSiISVpxHdgFYesLlIAVpX1ODRECf6rF3GFBw",
32
+ "envelopeFormat": "application/vnd.agentplat.mesh-envelope+json",
33
+ "envelopeWireVersion": 1,
34
+ "journalVersion": 1,
35
+ "schemaVersion": 2,
36
+ "scope": {
37
+ "instanceId": "instance-fixture",
38
+ "meshId": "mesh-fixture",
39
+ "peerId": "peer-fixture",
40
+ "tenantId": "tenant-fixture"
41
+ },
42
+ "snapshot": {
43
+ "format": "application/vnd.agentplat.mesh-peer-state+json",
44
+ "schemaVersion": 2,
45
+ "state": {
46
+ "schemaVersion": 2,
47
+ "status": "current_fixture"
48
+ },
49
+ "stateDigest": "sha256:eI6VUYJZMYMPyBNz9CNNWm5XlQGsl8gNs4jZHRigQI4"
50
+ }
51
+ }
@@ -0,0 +1,147 @@
1
+ {
2
+ "coverage": {
3
+ "allocationSchemas": [
4
+ 1,
5
+ 2,
6
+ 3,
7
+ 4,
8
+ 5,
9
+ 6
10
+ ],
11
+ "discoverySchemas": [
12
+ 1,
13
+ 2
14
+ ],
15
+ "durableWrapperSchemas": [
16
+ 1,
17
+ 2
18
+ ],
19
+ "objectiveWorkSchemas": [
20
+ 1,
21
+ 2
22
+ ],
23
+ "postgresMigrations": [
24
+ 1,
25
+ 2
26
+ ]
27
+ },
28
+ "entries": [
29
+ {
30
+ "canonicalSha256": "80580031a6561be9ca3920fc2d8b44f9ae3dbe06346df45549554efa98ed14e4",
31
+ "expectedOutcome": "accepted",
32
+ "file": "durability/wrapper-v1.json",
33
+ "rawSha256": "f346fb656448a0c960d43868e317c4d995ab14b7bdfec0f98377ba8fa37d85a0"
34
+ },
35
+ {
36
+ "canonicalSha256": "30900710e21a0668f05a28aad53fad56318667f1ab7accbf1bbe7f3ddd6d1dbe",
37
+ "expectedOutcome": "accepted",
38
+ "file": "durability/wrapper-v2.json",
39
+ "rawSha256": "7f7334a494df820e5376c85daf80f7cba4e306466f9ca75ed037d9494cc8da14"
40
+ },
41
+ {
42
+ "canonicalSha256": "ccc68f1bbdd0127a66e0fe511f7a9add7d2261219b03b9deca202f6c2daa22af",
43
+ "expectedOutcome": "accepted",
44
+ "file": "postgres/alpha5-dump-manifest.json",
45
+ "rawSha256": "3f6684bbdeb1e7b0d2526b9a95a2c1fb8fcf75b056da196f3d989bcbbed487e1"
46
+ },
47
+ {
48
+ "canonicalSha256": "840ae99b8e94417cd7894b2327655603f527eb01449579e4002ac5ba9cea9914",
49
+ "expectedOutcome": "accepted",
50
+ "file": "postgres/migrations.json",
51
+ "rawSha256": "088c083a7189ac07a59db00bfa1f0f7dec984020efd879977ad3707efb7ff468"
52
+ },
53
+ {
54
+ "canonicalSha256": "963135c7a63353fe69003a3ac16d0bbd292880ab93fd409047efc7869951df42",
55
+ "expectedOutcome": "accepted",
56
+ "file": "simulation/replay-trace-v1.json",
57
+ "rawSha256": "661f4a068c0ee44b43354eac4787afa1197b80bb596583bb0bf525247f535497"
58
+ },
59
+ {
60
+ "canonicalSha256": "6b92c62b3be3c8ef3fba401a73e1a0073e070bc6671c9af1fe033d89c851ccbe",
61
+ "expectedOutcome": "accepted",
62
+ "file": "simulation/snapshot-v2.json",
63
+ "rawSha256": "65b6cac03e8d059a128469cb8651b701cf2e76f406493c72ba064d5617fe1c56"
64
+ },
65
+ {
66
+ "canonicalSha256": "e728b70f497bfd218a026abc171437945f1b7821744f34837a755fd3d296b7cd",
67
+ "expectedOutcome": "accepted",
68
+ "file": "states/allocation-v1.json",
69
+ "rawSha256": "3f3f29b08cd7a2c5e9be75536befbb11f9f88e803f55160bf8bfd38dc41dc4c0"
70
+ },
71
+ {
72
+ "canonicalSha256": "d2610fc6d4c36d97e92042f4f71f463aa71dafb4c32164e64e4e460ba111053c",
73
+ "expectedOutcome": "accepted",
74
+ "file": "states/allocation-v2.json",
75
+ "rawSha256": "55c7d2e9d9f519746f2883b72daf74cf6b37a4d4bf753eda9538850ebd892b53"
76
+ },
77
+ {
78
+ "canonicalSha256": "96693f23076649ffd4bc590ccdad2977d7a21780e0ea638205a9ac9ac56af256",
79
+ "expectedOutcome": "accepted",
80
+ "file": "states/allocation-v3.json",
81
+ "rawSha256": "2c64e2b1d1a1bad8746374da2c2d86fe35634d586303028c4709863b70e90101"
82
+ },
83
+ {
84
+ "canonicalSha256": "33e51cf815c16682f40b3f635136b7baf06ae5cf54f27584bef4636db7bb1c2e",
85
+ "expectedOutcome": "accepted",
86
+ "file": "states/allocation-v4.json",
87
+ "rawSha256": "baf9b71e60df393f054343b0a6c317eb1b506af9ecf6f9d372e4f99e05823d9d"
88
+ },
89
+ {
90
+ "canonicalSha256": "511004cc08cb1bd880ff6beaecd132f1c84d110aef8c78d8364c4a262094be2c",
91
+ "expectedOutcome": "accepted",
92
+ "file": "states/allocation-v5.json",
93
+ "rawSha256": "cbeeac9f303ff80967dd5a0ae3804d4a5e1c30b82393f8bb05db0101f698dc88"
94
+ },
95
+ {
96
+ "canonicalSha256": "189842e4754ff69f15a38096b49095aad08702194f79f1c2d3e8a795b9625616",
97
+ "expectedOutcome": "accepted",
98
+ "file": "states/allocation-v6.json",
99
+ "rawSha256": "6e798eb21c4c8590f62786e1e8c791a19fe05aa871f14a617d7e030cd6b442d4"
100
+ },
101
+ {
102
+ "canonicalSha256": "94e27b15861daef39e455f7da91e37f895e04f528cb82bab3cc42e81605d3743",
103
+ "expectedOutcome": "accepted",
104
+ "file": "states/coordination-v1.json",
105
+ "rawSha256": "27769c23208f7d083fac55025dd98767d81e448750c3f989997b97dcde0266a4"
106
+ },
107
+ {
108
+ "canonicalSha256": "16a7096090820e55f04459d0191c5bfab596fd9e15d8ffac1e1f15fd85027c7d",
109
+ "expectedOutcome": "accepted",
110
+ "file": "states/core-peer.json",
111
+ "rawSha256": "6c88ae57595ab119f479bd8e5705b901ae760f8360a2457d5c5e4a137cafa5c1"
112
+ },
113
+ {
114
+ "canonicalSha256": "e7527474b20e8412f5301df1890fb9dba4330cfb38114e91db7590c6b59766c5",
115
+ "expectedOutcome": "accepted",
116
+ "file": "states/discovery-v1.json",
117
+ "rawSha256": "74624346960d23d93fbc93002ffff1b6c4387c458ac0cc8ca0f46080d547de80"
118
+ },
119
+ {
120
+ "canonicalSha256": "a5974dad35907e35db4456d8467b393b9fd8db0e740533a07813a6e8279bee4f",
121
+ "expectedOutcome": "accepted",
122
+ "file": "states/discovery-v2.json",
123
+ "rawSha256": "3fe661074bd11b1c1b1ca8f2ed3bd589f73604902516a91b47fcdef3ba7a08fd"
124
+ },
125
+ {
126
+ "canonicalSha256": "1c6f458c6c139e8c8097ea4daf56285e04ff015968b2223f8999dfbdec83c390",
127
+ "expectedOutcome": "accepted",
128
+ "file": "states/inbound-v1.json",
129
+ "rawSha256": "013eb72b4c5da12dc226ff25dd28005ffd3719352569a02e910166c0d7d72839"
130
+ },
131
+ {
132
+ "canonicalSha256": "202830b7a9b7be50ff9ada92b204d69b2bcb6161b9c49540cf32ab8cf50b91fa",
133
+ "expectedOutcome": "accepted",
134
+ "file": "states/objective-work-v1.json",
135
+ "rawSha256": "6f6714bf435a81abf2b191c7a1e3ef6782ae32b79894a38d8ad39ad8903cc2ff"
136
+ },
137
+ {
138
+ "canonicalSha256": "99d244148495cfe2a76fb121bee2e6843a7a53499d09899faf4a06587a12154a",
139
+ "expectedOutcome": "accepted",
140
+ "file": "states/objective-work-v2.json",
141
+ "rawSha256": "68e84fa8c58ade859ee8eea1bfc515400140632d81d987cebc85541d121e831b"
142
+ }
143
+ ],
144
+ "fixtureCount": 19,
145
+ "releaseLine": "0.3.0-beta.1",
146
+ "schemaVersion": 1
147
+ }
@@ -0,0 +1,29 @@
1
+ {
2
+ "expectedAfterMigration2": {
3
+ "betaRowsMissingCanonicalBytes": 0,
4
+ "currentMigrationVersion": 2,
5
+ "legacyInboxRows": 1,
6
+ "legacyOutboxRows": 1,
7
+ "legacySnapshotRows": 1,
8
+ "opaqueSnapshotStatus": "legacy_untyped"
9
+ },
10
+ "rowCounts": {
11
+ "inbox": 1,
12
+ "journal": 1,
13
+ "outbox": 1,
14
+ "snapshots": 1
15
+ },
16
+ "schemaVersion": 1,
17
+ "scope": {
18
+ "instanceId": "instance-fixture",
19
+ "meshId": "mesh-fixture",
20
+ "peerId": "peer-fixture",
21
+ "tenantId": "tenant-fixture"
22
+ },
23
+ "sourceDigests": {
24
+ "inboxEnvelope": "sha256:LhOfXicK844YdKPwvC-LNyEiUztLJ9NhVaeuXgdXbrQ",
25
+ "snapshotState": "sha256:uZFtXmacDZvCpF9ianZQUEvPrWLoVUVUp4mzFIqei08"
26
+ },
27
+ "sourceMigrationVersion": 1,
28
+ "sourceRelease": "0.3.0-alpha.5"
29
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ "migrations": [
3
+ {
4
+ "expandedFixtureSchemaSha256": "1491ffdd91943f6781e9cb402a459ad44e2d78936d6e6393ef89bab32837f06d",
5
+ "file": "001_mesh_durability.up.sql",
6
+ "rawSha256": "1795bfcfb32e63e982aa44e4e52a7ae901618de80eaf0a04c3fd6c0da89d2662"
7
+ },
8
+ {
9
+ "expandedFixtureSchemaSha256": "b2e80711fd2f925f0229380f3ad60e2124201100f0a61c86747794236d04b2e8",
10
+ "file": "001_mesh_durability.down.sql",
11
+ "rawSha256": "2f84839dedb3916da4ed53eda6b50f2d415e6991edf9a866c2070fce531edf53"
12
+ },
13
+ {
14
+ "expandedFixtureSchemaSha256": "72f34f3ac1637f2f36da0321072a0d0a413e9312c33be35176efb1475e9aebeb",
15
+ "file": "002_mesh_compatibility_metadata.up.sql",
16
+ "rawSha256": "8796ce1fbda1802f519d7f3956992e40f589eac2944effc14b28e158c80a5ea5"
17
+ },
18
+ {
19
+ "expandedFixtureSchemaSha256": "713dacdbc1ee3a69456d8c7f44a72ff6fd0b783242bf043f52f9c5beecc9b678",
20
+ "file": "002_mesh_compatibility_metadata.down.sql",
21
+ "rawSha256": "04b064e450475d5d91758045c2df568179a4a9e043941812e53fda738cdfb65b"
22
+ }
23
+ ],
24
+ "schemaVersion": 1
25
+ }
@@ -0,0 +1,60 @@
1
+ {
2
+ "chainDigest": "3e33a9c7c9b023763200575072e083a7c01cdbf8bee48c2dcc9efa6bf8fbca2c",
3
+ "configurationDigest": "3e33a9c7c9b023763200575072e083a7c01cdbf8bee48c2dcc9efa6bf8fbca2c",
4
+ "faultPlan": {
5
+ "faults": [],
6
+ "schemaVersion": 1
7
+ },
8
+ "faultPlanDigest": "97adb6065fd49f74d9cba57eb9ac39093c9f7df720adb2a7d750c27d3420564b",
9
+ "faults": [],
10
+ "metrics": {
11
+ "clockOffsetChanges": 0,
12
+ "crashSuppressedEvents": 0,
13
+ "delayedMessages": 0,
14
+ "deliveredMessages": 0,
15
+ "droppedMessages": 0,
16
+ "duplicatedMessages": 0,
17
+ "emittedEffects": 0,
18
+ "faultEvents": 0,
19
+ "finalLogicalTime": 0,
20
+ "heals": 0,
21
+ "partitionSuppressedMessages": 0,
22
+ "partitions": 0,
23
+ "peerCrashes": 0,
24
+ "peerResumes": 0,
25
+ "processedEvents": 0,
26
+ "rejectedMessages": 0,
27
+ "reorderedMessages": 0
28
+ },
29
+ "peerStates": {
30
+ "peer-fixture": {
31
+ "admittedPeers": {},
32
+ "identity": {
33
+ "instanceId": "instance-fixture",
34
+ "keyId": "key-fixture",
35
+ "meshId": "mesh-fixture",
36
+ "peerId": "peer-fixture",
37
+ "tenantId": "tenant-fixture"
38
+ },
39
+ "lastLogicalTime": 0,
40
+ "limits": {
41
+ "maximumAdmittedPeers": 256,
42
+ "maximumInstancesPerPeer": 16,
43
+ "maximumPendingPings": 1024,
44
+ "maximumTrackedMessageIds": 16384,
45
+ "messageIdRetentionMs": 840000,
46
+ "replayWindowSize": 2048
47
+ },
48
+ "localEventSequence": 0,
49
+ "messageIds": {},
50
+ "peers": {},
51
+ "pendingPings": {},
52
+ "pendingPreparations": {},
53
+ "replay": {},
54
+ "status": "created"
55
+ }
56
+ },
57
+ "prngVersion": "xorshift32-v1",
58
+ "records": [],
59
+ "seed": 24601
60
+ }
@@ -0,0 +1,71 @@
1
+ {
2
+ "chainDigest": "3e33a9c7c9b023763200575072e083a7c01cdbf8bee48c2dcc9efa6bf8fbca2c",
3
+ "clockOffsets": {
4
+ "peer-fixture": 0
5
+ },
6
+ "configurationDigest": "3e33a9c7c9b023763200575072e083a7c01cdbf8bee48c2dcc9efa6bf8fbca2c",
7
+ "eventIds": [],
8
+ "faultCursor": 0,
9
+ "faultPlanDigest": "97adb6065fd49f74d9cba57eb9ac39093c9f7df720adb2a7d750c27d3420564b",
10
+ "faults": [],
11
+ "insertionSequence": 0,
12
+ "logicalTime": 0,
13
+ "metrics": {
14
+ "clockOffsetChanges": 0,
15
+ "crashSuppressedEvents": 0,
16
+ "delayedMessages": 0,
17
+ "deliveredMessages": 0,
18
+ "droppedMessages": 0,
19
+ "duplicatedMessages": 0,
20
+ "emittedEffects": 0,
21
+ "faultEvents": 0,
22
+ "finalLogicalTime": 0,
23
+ "heals": 0,
24
+ "partitionSuppressedMessages": 0,
25
+ "partitions": 0,
26
+ "peerCrashes": 0,
27
+ "peerResumes": 0,
28
+ "processedEvents": 0,
29
+ "rejectedMessages": 0,
30
+ "reorderedMessages": 0
31
+ },
32
+ "outboundSequences": {
33
+ "peer-fixture": 0
34
+ },
35
+ "peerAvailability": {
36
+ "peer-fixture": true
37
+ },
38
+ "peerStates": {
39
+ "peer-fixture": {
40
+ "admittedPeers": {},
41
+ "identity": {
42
+ "instanceId": "instance-fixture",
43
+ "keyId": "key-fixture",
44
+ "meshId": "mesh-fixture",
45
+ "peerId": "peer-fixture",
46
+ "tenantId": "tenant-fixture"
47
+ },
48
+ "lastLogicalTime": 0,
49
+ "limits": {
50
+ "maximumAdmittedPeers": 256,
51
+ "maximumInstancesPerPeer": 16,
52
+ "maximumPendingPings": 1024,
53
+ "maximumTrackedMessageIds": 16384,
54
+ "messageIdRetentionMs": 840000,
55
+ "replayWindowSize": 2048
56
+ },
57
+ "localEventSequence": 0,
58
+ "messageIds": {},
59
+ "peers": {},
60
+ "pendingPings": {},
61
+ "pendingPreparations": {},
62
+ "replay": {},
63
+ "status": "created"
64
+ }
65
+ },
66
+ "prngStates": {},
67
+ "queuedEvents": [],
68
+ "records": [],
69
+ "schemaVersion": 2,
70
+ "topology": []
71
+ }
@@ -0,0 +1,24 @@
1
+ {
2
+ "acceptedBidEvidence": {},
3
+ "bidHeads": {},
4
+ "identity": {
5
+ "instanceId": "instance-fixture",
6
+ "keyId": "key-fixture",
7
+ "meshId": "mesh-fixture",
8
+ "peerId": "peer-fixture",
9
+ "tenantId": "tenant-fixture"
10
+ },
11
+ "lastLogicalTime": 0,
12
+ "limits": {
13
+ "maximumBidHeads": 32768,
14
+ "maximumBidsPerOffer": 512,
15
+ "maximumOffers": 8192,
16
+ "maximumOffersPerWorkItem": 32,
17
+ "maximumProjectionBytes": 262144,
18
+ "maximumRecipientsPerOffer": 128
19
+ },
20
+ "localOffers": {},
21
+ "reservations": {},
22
+ "schemaVersion": 1,
23
+ "workAllocations": {}
24
+ }
@@ -0,0 +1,28 @@
1
+ {
2
+ "acceptedBidEvidence": {},
3
+ "assignmentResponses": {},
4
+ "bidHeads": {},
5
+ "identity": {
6
+ "instanceId": "instance-fixture",
7
+ "keyId": "key-fixture",
8
+ "meshId": "mesh-fixture",
9
+ "peerId": "peer-fixture",
10
+ "tenantId": "tenant-fixture"
11
+ },
12
+ "lastLogicalTime": 0,
13
+ "limits": {
14
+ "maximumAssignmentResponses": 8192,
15
+ "maximumAwards": 8192,
16
+ "maximumBidHeads": 32768,
17
+ "maximumBidsPerOffer": 512,
18
+ "maximumOffers": 8192,
19
+ "maximumOffersPerWorkItem": 32,
20
+ "maximumProjectionBytes": 262144,
21
+ "maximumRecipientsPerOffer": 128
22
+ },
23
+ "localAwards": {},
24
+ "localOffers": {},
25
+ "reservations": {},
26
+ "schemaVersion": 2,
27
+ "workAllocations": {}
28
+ }