@enbox/agent 0.5.0 → 0.5.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -887,8 +887,22 @@ export class AgentDwnApi {
887
887
  };
888
888
  }
889
889
  else {
890
- // Otherwise, use the author's DID to determine the signing method.
890
+ // Prefer a locally-stored BearerDid when the agent controls this DID.
891
+ // This avoids an unnecessary DID resolution round-trip during signing,
892
+ // which can fail if the resolver path encounters malformed cached data.
891
893
  try {
894
+ const localDid = yield this.agent.did.get({ didUri: author });
895
+ if (localDid) {
896
+ const signer = yield localDid.getSigner();
897
+ return {
898
+ algorithm: signer.algorithm,
899
+ keyId: signer.keyId,
900
+ sign: (data) => __awaiter(this, void 0, void 0, function* () {
901
+ return yield signer.sign({ data });
902
+ })
903
+ };
904
+ }
905
+ // Otherwise, use the author's DID to determine the signing method.
892
906
  const signingMethod = yield this.agent.did.getSigningMethod({ didUri: author });
893
907
  if (!signingMethod.publicKeyJwk) {
894
908
  throw new Error(`Verification method '${signingMethod.id}' does not contain a public key in JWK format`);
@@ -1 +1 @@
1
- {"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"dwn-api.js","sourceRoot":"","sources":["../../src/dwn-api.ts"],"names":[],"mappings":";;;;;;;;;AAcA,OAAO,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAC;AACzC,OAAO,EACL,GAAG,EACH,0BAA0B,EAC1B,cAAc,EACd,UAAU,EACV,GAAG,EACH,aAAa,EACb,oBAAoB,EACpB,GAAG,EACH,mBAAmB,EACnB,OAAO,EACP,iBAAiB,EACjB,SAAS,EACT,OAAO,EACP,uBAAuB,EACvB,eAAe,GAChB,MAAM,mBAAmB,CAAC;AAC3B,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,eAAe,CAAC;AACpD,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAiBvF,OAAO,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAC3D,OAAO,EAAE,6BAA6B,EAAE,MAAM,2BAA2B,CAAC;AAC1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,gBAAgB,CAAC;AACtE,OAAO,EAAE,yBAAyB,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAEvE,mDAAmD;AACnD,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,yBAAyB,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAErI,sCAAsC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,wCAAwC;AACxC,OAAO,EACL,oBAAoB,IAAI,sBAAsB,EAC9C,4BAA4B,IAAI,8BAA8B,EAC9D,oBAAoB,IAAI,sBAAsB,EAC9C,uBAAuB,IAAI,yBAAyB,EACpD,oBAAoB,IAAI,sBAAsB,EAC9C,eAAe,IAAI,iBAAiB,EACpC,QAAQ,IAAI,UAAU,EACtB,iBAAiB,IAAI,mBAAmB,GACzC,MAAM,qBAAqB,CAAC;AAE7B,sCAAsC;AACtC,OAAO,EACL,qBAAqB,IAAI,uBAAuB,EAChD,mBAAmB,IAAI,qBAAqB,GAC7C,MAAM,qBAAqB,CAAC;AAE7B,0CAA0C;AAC1C,OAAO,EACL,yBAAyB,IAAI,2BAA2B,EACxD,yBAAyB,IAAI,2BAA2B,EACxD,qBAAqB,IAAI,uBAAuB,EAChD,qBAAqB,IAAI,uBAAuB,GACjD,MAAM,uBAAuB,CAAC;AAE/B,oFAAoF;AACpF,2DAA2D;AAC3D,sGAAsG;AAEtG,0DAA0D;AAC1D,OAAO,EACL,uBAAuB,IAAI,yBAAyB,EACpD,6BAA6B,IAAI,+BAA+B,EAChE,qBAAqB,IAAI,uBAAuB,GACjD,MAAM,yBAAyB,CAAC;AAmBjC,MAAM,OAAO,WAAW;IAgEtB,YAAY,MAAoB;QAzChC;;;WAGG;QACK,6BAAwB,GAAG,IAAI,QAAQ,CAA6B;YAC1E,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;SACpB,CAAC,CAAC;QAEH;;;WAGG;QACK,qBAAgB,GAAG,IAAI,QAAQ,CAIpC,EAAE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI,EAAE,CAAC,CAAC;QAE5B;;;;WAIG;QACK,4BAAuB,GAAG,IAAI,QAAQ,CAA4B;YACxE,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;SACpB,CAAC,CAAC;QAEH;;;WAGG;QACK,0BAAqB,GAAG,IAAI,QAAQ,CAAkB;YAC5D,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,IAAI;SACpB,CAAC,CAAC;QA6tCH,8EAA8E;QAC9E,wBAAwB;QACxB,8EAA8E;QAE9E;;;WAGG;QACK,uCAAkC,GAAG,IAAI,QAAQ,CAAkB;YACzE,GAAG,EAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI;YAC9B,GAAG,EAAG,IAAI;SACX,CAAC,CAAC;QA/tCD,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,QAAQ,EAAE,GAAG,MAAM,CAAC;QAEtD,yEAAyE;QACzE,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QAEpB,mDAAmD;QACnD,IAAI,CAAC,IAAI,GAAG,KAAK,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,SAAS,CAAC;QAErD,qDAAqD;QACrD,IAAI,CAAC,iBAAiB,GAAG,kBAAkB,IAAI,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC;QAE5F,wCAAwC;QACxC,IAAI,CAAC,iBAAiB,GAAG,gBAAgB,CAAC;QAE1C,4EAA4E;QAC5E,IAAI,KAAK,EAAE,CAAC;YACV,IAAI,CAAC,kBAAkB,GAAG,IAAI,iBAAiB,CAC7C,KAAK,CAAC,GAAG,EACT,KAAM,EACN,WAAW,CAAC,uBAAuB,EAAE,CACtC,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;OAGG;IACH,IAAI,YAAY;QACd,OAAO,IAAI,CAAC,IAAI,KAAK,SAAS,CAAC;IACjC,CAAC;IAED;;;;;OAKG;IACH,IAAI,KAAK;QACP,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAC9B,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;QAC/E,CAAC;QAED,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,IAAI,KAAK,CAAC,KAAyB;QACjC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,qEAAqE;QACrE,IAAI,CAAC,kBAAkB,GAAG,IAAI,iBAAiB,CAC7C,KAAK,CAAC,GAAG,EACT,KAAM,EACN,WAAW,CAAC,uBAAuB,EAAE,CACtC,CAAC;QACF,IAAI,CAAC,qBAAqB,CAAC,KAAK,EAAE,CAAC;IACrC,CAAC;IAED,IAAI,gBAAgB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAEM,mBAAmB,CAAC,QAA0B;QACnD,IAAI,CAAC,iBAAiB,GAAG,QAAQ,CAAC;IACpC,CAAC;IAED;;;;;;;;OAQG;IACU,yBAAyB,CAAC,QAAgB;;;YACrD,MAAA,IAAI,CAAC,kBAAkB,oCAAvB,IAAI,CAAC,kBAAkB,GAAK,IAAI,iBAAiB,CAC/C,IAAI,CAAC,KAAK,CAAC,GAAG,EACd,KAAM,EACN,WAAW,CAAC,uBAAuB,EAAE,CACtC,EAAC;YACF,OAAO,IAAI,CAAC,kBAAkB,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAC;QAC7D,CAAC;KAAA;IAED;;;;;;;;OAQG;IACU,2BAA2B,CAAC,SAAiB;;YACxD,MAAM,iBAAiB,GAAG,MAAM,IAAI,CAAC,0BAA0B,CAAC,SAAS,CAAC,CAAC;YAE3E,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBACvB,OAAO,yBAAyB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC9D,CAAC;YAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,mBAAmB,EAAE,CAAC;YAC1D,IAAI,IAAI,CAAC,iBAAiB,KAAK,MAAM,EAAE,CAAC;gBACtC,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,IAAI,KAAK,CACb,sFAAsF;wBACtF,sHAAsH,CACvH,CAAC;gBACJ,CAAC;gBAED,OAAO,CAAC,gBAAgB,CAAC,CAAC;YAC5B,CAAC;YAED,IAAI,eAAe,GAAa,EAAE,CAAC;YACnC,IAAI,CAAC;gBACH,eAAe,GAAG,MAAM,yBAAyB,CAAC,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC/E,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,CAAC,gBAAgB,EAAE,CAAC;oBACtB,MAAM,KAAK,CAAC;gBACd,CAAC;YACH,CAAC;YAED,IAAI,CAAC,gBAAgB,EAAE,CAAC;gBACtB,OAAO,eAAe,CAAC;YACzB,CAAC;YAED,MAAM,eAAe,GAAG,IAAI,GAAG,CAAS;gBACtC,gBAAgB;gBAChB,GAAG,eAAe;aACnB,CAAC,CAAC;YAEH,OAAO,CAAC,GAAG,eAAe,CAAC,CAAC;QAC9B,CAAC;KAAA;IAED,oEAAoE;IACtD,mBAAmB;;;YAC/B,gDAAgD;YAChD,IAAI,IAAI,CAAC,iBAAiB,EAAE,CAAC;gBAC3B,OAAO,IAAI,CAAC,iBAAiB,CAAC;YAChC,CAAC;YAED,MAAA,IAAI,CAAC,kBAAkB,oCAAvB,IAAI,CAAC,kBAAkB,GAAK,IAAI,iBAAiB,CAC/C,IAAI,CAAC,KAAK,CAAC,GAAG,EACd,KAAM,EACN,WAAW,CAAC,uBAAuB,EAAE,CACtC,EAAC;YACF,OAAO,IAAI,CAAC,kBAAkB,CAAC,WAAW,EAAE,CAAC;QAC/C,CAAC;KAAA;IAED;;;;OAIG;IACK,MAAM,CAAC,uBAAuB;QACpC,IAAI,CAAC;YACH,OAAO,IAAI,gBAAgB,EAAE,CAAC;QAChC,CAAC;QAAC,WAAM,CAAC;YACP,wDAAwD;YACxD,OAAO,SAAS,CAAC;QACnB,CAAC;IACH,CAAC;IAED;;;;OAIG;IACW,0BAA0B,CAAC,SAAiB;;YACxD,IAAI,IAAI,CAAC,iBAAiB,KAAK,KAAK,EAAE,CAAC;gBACrC,OAAO,KAAK,CAAC;YACf,CAAC;YAED,MAAM,MAAM,GAAG,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACzD,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;gBACzB,OAAO,MAAM,CAAC;YAChB,CAAC;YAED,IAAI,SAAS,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBAC1C,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;gBAChD,OAAO,IAAI,CAAC;YACd,CAAC;YAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,EAAE,CAAC;YACpD,MAAM,gBAAgB,GAAG,IAAI,GAAG,EAAU,CAAC;YAE3C,KAAK,MAAM,QAAQ,IAAI,UAAU,EAAE,CAAC;gBAClC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;gBACvC,IAAI,QAAQ,CAAC,QAAQ,CAAC,YAAY,EAAE,CAAC;oBACnC,gBAAgB,CAAC,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAC;gBACvD,CAAC;YACH,CAAC;YAED,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;gBACxC,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YACjD,CAAC;YAED,MAAM,cAAc,GAAG,gBAAgB,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;YACvD,IAAI,CAAC,cAAc,EAAE,CAAC;gBACpB,IAAI,CAAC,qBAAqB,CAAC,GAAG,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;YACnD,CAAC;YAED,OAAO,cAAc,CAAC;QACxB,CAAC;KAAA;IAED;;;;;;;;;;OAUG;IACH,IAAI,IAAI;QACN,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;YACf,MAAM,IAAI,KAAK,CACb,6DAA6D;gBAC7D,6DAA6D;gBAC7D,IAAI,IAAI,CAAC,iBAAiB,mCAAmC;gBAC7D,qCAAqC,CACtC,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,IAAI,CAAC;IACnB,CAAC;IAEM,MAAM,CAAO,SAAS;6DAAC,EAC5B,QAAQ,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAC9E;YACtB,SAAS,aAAT,SAAS,cAAT,SAAS,IAAT,SAAS,GAAK,IAAI,cAAc,CAAC,EAAE,kBAAkB,EAAE,GAAG,QAAQ,gBAAgB,EAAE,CAAC,EAAC;YAEtF,WAAW,aAAX,WAAW,cAAX,WAAW,IAAX,WAAW,GAAK,IAAI,iBAAiB,CAAC;gBACpC,YAAY,EAAG,CAAC,MAAM,EAAE,MAAM,CAAC;gBAC/B,KAAK,EAAU,IAAI,qBAAqB,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,oBAAoB,EAAE,CAAC;aACxF,CAAC,EAAC;YAEH,UAAU,aAAV,UAAU,cAAV,UAAU,IAAV,UAAU,GAAK,IAAI,eAAe,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,iBAAiB,EAAE,CAAC,EAAC;YAE/E,YAAY,aAAZ,YAAY,cAAZ,YAAY,IAAZ,YAAY,GAAK,IAAI,iBAAiB,CAAC,CAAC;gBACtC,kBAAkB,EAAG,GAAG,QAAQ,mBAAmB;gBACnD,aAAa,EAAQ,GAAG,QAAQ,mBAAmB;aACpD,CAAC,CAAC,EAAC;YAEJ,kBAAkB,aAAlB,kBAAkB,cAAlB,kBAAkB,IAAlB,kBAAkB,GAAK,IAAI,uBAAuB,CAAC,EAAE,QAAQ,EAAE,GAAG,QAAQ,yBAAyB,EAAE,CAAC,EAAC;YAEvG,QAAQ,aAAR,QAAQ,cAAR,QAAQ,IAAR,QAAQ,GAAK,IAAI,oBAAoB,EAAE,EAAC;YAExC,OAAO,MAAM,GAAG,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAE,kBAAkB,EAAE,CAAC,CAAC;QAC1H,CAAC;KAAA;IAEY,cAAc,CACzB,OAA6B;;YAE7B,mFAAmF;YACnF,sBAAsB;YACtB,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAC3B,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC;YAE9C,4FAA4F;YAC5F,MAAM,EAAE,mBAAmB,EAAE,GAAG,OAAO,CAAC;YAExC,6DAA6D;YAC7D,wFAAwF;YACxF,2FAA2F;YAC3F,6FAA6F;YAC7F,8CAA8C;YAC9C,IAAI,KAAyB,CAAC;YAE9B,IAAI,OAAO,CAAC,KAAK,KAAK,KAAK,EAAE,CAAC;gBAC5B,KAAK,GAAG,EAAE,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,EAAE,CAAC;YACxD,CAAC;iBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACrB,wDAAwD;gBACxD,KAAK,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CACpC,OAAO,CAAC,MAAM,EAAE,OAAO,EACvB,EAAE,UAAU,EAAE,UAAiB,EAAE,mBAAmB,EAAE,CACvD,CAAC;YACJ,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,gEAAgE;gBAChE,+DAA+D;gBAC/D,mDAAmD;gBACnD,IAAI,IAAsB,CAAC;gBAC3B,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBACnD,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,KAAiB,CAAC,CAAC,CAAC;gBACvC,CAAC;gBAED,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;oBACnC,SAAS,EAAS,OAAO,CAAC,MAAM;oBAChC,eAAe,EAAG,CAAC,IAAI,CAAC,iBAAkB,CAAC;oBAC3C,OAAO;oBACP,IAAI;oBACJ,mBAAmB;iBACpB,CAAC,CAAC;YACL,CAAC;YAED,iFAAiF;YACjF,MAAM,IAAI,CAAC,oBAAoB,CAAC,OAAO,EAAE,OAAO,EAAE,KAAK,CAAC,CAAC;YAEzD,iEAAiE;YACjE,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE7C,4FAA4F;YAC5F,mDAAmD;YACnD,OAAO;gBACL,KAAK;gBACL,OAAO;gBACP,UAAU,EAAE,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC;aAC1C,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;;;;;;;;OAaG;IACU,iBAAiB,CAC5B,MAAc,EACd,OAAuB,EACvB,OAAqD;;YAErD,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,OAAO,EAAE,EAAE,UAAU,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE,CAAC,CAAC;YACxF,CAAC;YAED,gEAAgE;YAChE,+DAA+D;YAC/D,mDAAmD;YACnD,IAAI,IAAsB,CAAC;YAC3B,IAAI,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,UAAU,EAAE,CAAC;gBACxB,MAAM,KAAK,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;gBAC3D,IAAI,GAAG,IAAI,IAAI,CAAC,CAAC,KAAiB,CAAC,CAAC,CAAC;YACvC,CAAC;YAED,OAAO,IAAI,CAAC,iBAAiB,CAAC;gBAC5B,SAAS,EAAS,MAAM;gBACxB,eAAe,EAAG,CAAC,IAAI,CAAC,iBAAkB,CAAC;gBAC3C,OAAO,EAAW,OAAmC;gBACrD,IAAI;aACL,CAAC,CAAC;QACL,CAAC;KAAA;IAEY,WAAW,CACtB,OAA0B;;YAE1B,0EAA0E;YAC1E,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,2BAA2B,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;YAC/E,IAAI,eAAe,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACjC,MAAM,IAAI,KAAK,CAAC,qDAAqD,OAAO,CAAC,MAAM,MAAM,CAAC,CAAC;YAC7F,CAAC;YAED,IAAI,UAA8B,CAAC;YACnC,IAAI,OAAsB,CAAC;YAC3B,IAAI,IAAsB,CAAC;YAC3B,IAAI,mBAAkD,CAAC;YAEvD,+DAA+D;YAC/D,IAAI,YAAY,IAAI,OAAO,EAAE,CAAC;gBAC5B,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC;oBAC5C,MAAM,EAAQ,OAAO,CAAC,MAAM;oBAC5B,UAAU,EAAI,OAAO,CAAC,UAAU;oBAChC,WAAW,EAAG,OAAO,CAAC,WAAW;iBAClC,CAAC,CAAC,CAAC;gBACJ,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YAElC,CAAC;iBAAM,CAAC;gBACN,sCAAsC;gBACtC,CAAC,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,CAAC,CAAC,CAAC;gBAC5D,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,CAAC,OAAO,CAAC,UAAU,YAAY,IAAI,CAAC,EAAE,CAAC;oBAChE,MAAM,IAAI,KAAK,CAAC,oDAAoD,CAAC,CAAC;gBACxE,CAAC;gBACD,IAAI,GAAG,OAAO,CAAC,UAAU,CAAC;gBAC1B,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC;YACpD,CAAC;YAED,mEAAmE;YACnE,wEAAwE;YACxE,mDAAmD;YACnD,IAAI,kBAAkD,CAAC;YACvD,IAAI,mBAAmB,KAAK,SAAS,IAAI,CAAC,CAAC,YAAY,IAAI,OAAO,CAAC,EAAE,CAAC;gBACpE,kBAAkB,GAAG,CAAO,MAAe,EAA2B,EAAE;oBACtE,MAAM,YAAY,GAAG,MAAM,KAAK,SAAS;wBACvC,CAAC,CAAC,gCAAK,OAAO,CAAC,aAAa,KAAE,MAAM,GAAyB;wBAC7D,CAAC,CAAC,OAAO,CAAC,aAAa,CAAC;oBAE1B,MAAM,aAAa,mCAA8B,OAAO,KAAE,aAAa,EAAE,YAAY,GAAE,CAAC;oBACxF,MAAM,EAAE,OAAO,EAAE,aAAa,EAAE,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,EAAE,OAAO,EAAE,aAAa,EAAE,CAAC,CAAC;oBAC9F,OAAO,aAAa,CAAC;gBACvB,CAAC,CAAA,CAAC;YACJ,CAAC;YAED,8FAA8F;YAC9F,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;gBACzC,SAAS,EAAE,OAAO,CAAC,MAAM;gBACzB,eAAe;gBACf,OAAO;gBACP,IAAI;gBACJ,mBAAmB;gBACnB,kBAAkB;aACnB,CAAC,CAAC;YAEH,iEAAiE;YACjE,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;YAE7C,iEAAiE;YACjE,UAAU,aAAV,UAAU,cAAV,UAAU,IAAV,UAAU,GAAK,MAAM,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,EAAC;YAE7C,4FAA4F;YAC5F,mDAAmD;YACnD,OAAO,EAAE,KAAK,EAAE,OAAO,EAAE,UAAU,EAAE,CAAC;QACxC,CAAC;KAAA;IAED;;;;;;;OAOG;IACW,oBAAoB,CAChC,OAA6B,EAC7B,OAAsB,EACtB,KAAyB;;;YAEzB,IACE,CAAC,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC;gBACjD,CAAC,OAAO,CAAC,UAAU;gBACnB,KAAK,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,EACzB,CAAC;gBACD,OAAO;YACT,CAAC;YAED,MAAM,WAAW,GAAG,OAAO,CAAC,aAA4D,CAAC;YACzF,8GAA8G;YAC9G,IAAI,WAAW,CAAC,QAAQ,KAAK,6BAA6B,CAAC,QAAQ,EAAE,CAAC;gBACpE,OAAO;YACT,CAAC;YAED,IAAI,CAAC;gBACH,MAAM,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACzD,OAAO,CAAC,MAAM,EAAE,WAAW,CAAC,QAAQ,CACrC,CAAC;gBACF,IAAI,CAAC,kBAAkB,EAAE,CAAC;oBACxB,OAAO;gBACT,CAAC;gBAED,MAAM,mBAAmB,GAAG,OAAyC,CAAC;gBAEtE,yEAAyE;gBACzE,0EAA0E;gBAC1E,kEAAkE;gBAClE,4DAA4D;gBAC5D,MAAM,SAAS,GAAG,GAAG,CAAC,YAAY,CAChC,mBAAmB,CAAC,aAAa,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,CAAC,CAC1D,CAAC;gBACF,MAAM,oBAAoB,GAAG,SAAS,KAAK,OAAO,CAAC,MAAM,CAAC;gBAC1D,MAAM,YAAY,GAAG,CAAC,WAAW,CAAC,eAAe,CAAC;gBAClD,MAAM,eAAe,GAAG,WAAW,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;gBAC/D,MAAM,YAAY,GAAG,qBAAqB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;gBAEhF,IAAI,oBAAoB,IAAI,YAAY,IAAI,YAAY,EAAE,CAAC;oBACzD,qEAAqE;oBACrE,EAAE;oBACF,8DAA8D;oBAC9D,mEAAmE;oBACnE,oEAAoE;oBACpE,mEAAmE;oBACnE,gEAAgE;oBAChE,0BAA0B;oBAC1B,EAAE;oBACF,kCAAkC;oBAClC,qEAAqE;oBACrE,kEAAkE;oBAClE,8DAA8D;oBAC9D,+DAA+D;oBAC/D,kDAAkD;oBAClD,EAAE;oBACF,8DAA8D;oBAC9D,+DAA+D;oBAC/D,oEAAoE;oBACpE,0BAA0B;oBAC1B,EAAE;oBACF,gEAAgE;oBAChE,6DAA6D;oBAC7D,8DAA8D;oBAC9D,qCAAqC;gBACvC,CAAC;gBAED,MAAM,eAAe,GAAG,uBAAuB,CAAC;oBAC9C,kBAAkB;oBAClB,YAAY,EAAG,WAAW,CAAC,YAAY;oBACvC,SAAS,EAAM,WAAW,CAAC,SAAS;oBACpC,SAAS,EAAM,OAAO,CAAC,MAAM;oBAC7B,SAAS,EAAM,oBAAoB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;iBAC5D,CAAC,CAAC;gBAEH,IAAI,eAAe,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;oBAC7B,oDAAoD;oBACpD,MAAM,aAAa,GAAG,CAAA,MAAA,mBAAmB,CAAC,SAAS,0CAAE,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC;2BAC7D,mBAAmB,CAAC,SAAS;2BAC7B,mBAAmB,CAAC,QAAQ,CAAC;oBAElC,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;oBACnF,MAAM,qBAAqB,GAAG;wBAC5B,mBAAmB,CAAC,eAAe;wBACnC,aAAa;qBACd,CAAC;oBACF,MAAM,6BAA6B,GACjC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,qBAAqB,CAAC;wBAChD,MAAM;wBACN,cAAc,EAAE,qBAAqB;qBACtC,CAAC,CAAC;oBACL,MAAM,wBAAwB,GAC5B,MAAM,MAAM,CAAC,iBAAiB,CAAC,EAAE,eAAe,EAAE,6BAA6B,EAAE,CAAC,CAAC;oBACrF,MAAM,iBAAiB,GAAsB;wBAC3C,SAAS,EAAW,KAAK;wBACzB,gBAAgB,EAAI,mBAAmB,CAAC,eAAe;wBACvD,cAAc,EAAM,qBAAqB;wBACzC,iBAAiB,EAAG,wBAAyC;qBAC9D,CAAC;oBAEF,+DAA+D;oBAC/D,oEAAoE;oBACpE,MAAM,uBAAuB,GAC3B,MAAA,mBAAmB,CAAC,aAAa,0CAAE,0BAA0B,CAAC;oBAEhE,KAAK,MAAM,cAAc,IAAI,eAAe,EAAE,CAAC;wBAC7C,IAAI,CAAC;4BACH,2DAA2D;4BAC3D,uDAAuD;4BACvD,8DAA8D;4BAC9D,MAAM,YAAY,GAAG,CAAC,cAAc,KAAK,SAAS,IAAI,uBAAuB,CAAC;gCAC5E,CAAC,CAAC,uBAAuB;gCACzB,CAAC,CAAC,SAAS,CAAC;4BAEd,MAAM,IAAI,CAAC,qBAAqB,CAAC;gCAC/B,SAAS,EAAuB,OAAO,CAAC,MAAM;gCAC9C,YAAY,EAAoB,cAAc;gCAC9C,cAAc,EAAkB,iBAAiB;gCACjD,cAAc,EAAkB,WAAW,CAAC,QAAQ;gCACpD,eAAe,EAAiB,aAAa;gCAC7C,6BAA6B,EAAG,YAAY;6BAC7C,CAAC,CAAC;wBACL,CAAC;wBAAC,OAAO,gBAAqB,EAAE,CAAC;4BAC/B,OAAO,CAAC,IAAI,CACV,iCAAiC,cAAc,gBAAgB;gCAC/D,IAAI,aAAa,aAAa,gBAAgB,CAAC,OAAO,IAAI;gCAC1D,qEAAqE,CACtE,CAAC;wBACJ,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,cAAmB,EAAE,CAAC;gBAC7B,2EAA2E;gBAC3E,OAAO,CAAC,IAAI,CACV,wDAAwD;oBACxD,GAAG,cAAc,CAAC,OAAO,EAAE,CAC5B,CAAC;YACJ,CAAC;QACH,CAAC;KAAA;IAEa,iBAAiB;6DAAyB,EACtD,SAAS,EAAE,eAAe,EAAE,OAAO,EAAE,IAAI,EAAE,mBAAmB,EAAE,kBAAkB,EAQjF;YAED,MAAM,aAAa,GAAuC,EAAE,CAAC;YAE7D,IAAI,OAAO,CAAC,UAAU,CAAC,MAAM,KAAK,aAAa,CAAC,SAAS,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;gBAC/F,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;YAC9F,CAAC;YAED,sFAAsF;YACtF,KAAK,IAAI,MAAM,IAAI,eAAe,EAAE,CAAC;gBACnC,IAAI,CAAC;oBACH,IAAI,mBAAmB,KAAK,SAAS,EAAE,CAAC;wBACtC,6FAA6F;wBAC7F,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,aAAa,CAAC,MAAM,CAAC,CAAC;wBAC9D,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAC;4BACjC,+FAA+F;4BAC/F,aAAa,CAAC,IAAI,CAAC;gCACjB,GAAG,EAAO,MAAM;gCAChB,OAAO,EAAG,iDAAiD;6BAC5D,CAAC,CAAC;4BACH,SAAS;wBACX,CAAC;wBAED,0FAA0F;wBAC1F,oGAAoG;wBACpG,MAAM,SAAS,GAAG,IAAI,GAAG,CAAC,MAAM,CAAC,CAAC;wBAClC,SAAS,CAAC,QAAQ,GAAG,SAAS,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;wBACrE,MAAM,GAAG,SAAS,CAAC,QAAQ,EAAE,CAAC;oBAChC,CAAC;oBAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC;wBACnD,MAAM;wBACN,SAAS;wBACT,OAAO;wBACP,IAAI;wBACJ,YAAY,EAAE,mBAAmB,CAAC,CAAC,CAAC;4BAClC,OAAO,EAAE,mBAA6C;4BACtD,kBAAkB;yBACnB,CAAC,CAAC,CAAC,SAAS;qBACd,CAAC,CAAC;oBAEH,OAAO,QAAQ,CAAC;gBAClB,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,aAAa,CAAC,IAAI,CAAC;wBACjB,GAAG,EAAO,MAAM;wBAChB,OAAO,EAAG,CAAC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe;qBACrE,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,MAAM,IAAI,KAAK,CAAC,mCAAmC,IAAI,CAAC,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC;QACtF,CAAC;KAAA;IAEa,mBAAmB;6DAAyB,EAAE,OAAO,EAElE;YACC,gGAAgG;YAChG,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,aAAa,CAAC,EAAE,CAAC;gBACtE,MAAM,IAAI,KAAK,CAAC,0GAA0G,CAAC,CAAC;YAC9H,CAAC;YAED,MAAM,UAAU,GAAG,OAAO,CAAC,UAAU,CAAC;YACtC,IAAI,cAAsD,CAAC;YAC3D,gIAAgI;YAChI,uHAAuH;YACvH,IAAI,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;gBACrD,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;gBAE5C,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,IAAI,CAAA,EAAE,CAAC;oBAC/C,MAAM,EAAE,UAAU,EAAE,GAAG,OAAO,CAAC;oBAC/B,IAAI,MAAkC,CAAC;oBAEvC,IAAI,UAAU,YAAY,IAAI,EAAE,CAAC;wBAC/B,MAAM,CAAE,OAAO,EAAE,WAAW,CAAE,GAAI,UAAU,CAAC,MAAM,EAAiC,CAAC,GAAG,EAAE,CAAC;wBAC3F,MAAM,GAAG,OAAO,CAAC;wBACjB,cAAc,GAAG,WAAW,CAAC;oBAE/B,CAAC;yBAAM,IAAI,UAAU,YAAY,cAAc,EAAE,CAAC;wBAChD,MAAM,CAAE,OAAO,EAAE,WAAW,CAAE,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC;wBAClD,MAAM,GAAG,OAAO,CAAC;wBACjB,cAAc,GAAG,WAAW,CAAC;oBAC/B,CAAC;oBAED,IAAI,CAAC,UAAU,IAAI,aAAa,EAAE,CAAC;wBACjC,aAAa,CAAC,OAAO,GAAG,MAAM,GAAG,CAAC,yBAAyB,CAAC,MAAO,CAAC,CAAC;wBACrE,wFAAwF;wBACxF,+CAA+C;wBAC/C,IAAI,aAAa,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;4BACzC,IAAI,UAAU,YAAY,IAAI,EAAE,CAAC;gCAC/B,aAAa,CAAC,QAAQ,GAAG,UAAU,CAAC,IAAI,CAAC;4BAC3C,CAAC;4BACD,wFAAwF;wBAC1F,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;YAED,qEAAqE;YACrE,IAAI,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,kBAAkB,CAAC,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChG,MAAM,aAAa,GAAG,OAAO,CAAC,aAAc,CAAC;gBAC7C,MAAM,UAAU,GAAG,MAAM,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;gBAE/E,yEAAyE;gBACzE,wEAAwE;gBACxE,aAAa,CAAC,UAAU,GAAG,MAAM,SAAS,CAAC,mCAAmC,CAC5E,aAAa,CAAC,UAAU,EACxB,UAAU,CACX,CAAC;gBAEF,qCAAqC;gBACrC,IAAI,CAAC,wBAAwB,CAAC,MAAM,CAClC,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC,UAAU,CAAC,QAAQ,EAAE,CACzD,CAAC;YACJ,CAAC;YAED,qCAAqC;YACrC,EAAE;YACF,qDAAqD;YACrD,uEAAuE;YACvE,uEAAuE;YACvE,kGAAkG;YAClG,wEAAwE;YACxE,uEAAuE;YACvE,0GAA0G;YAC1G,oHAAoH;YACpH,oFAAoF;YACpF,EAAE;YACF,oEAAoE;YACpE,qEAAqE;YACrE,iEAAiE;YACjE,EAAE;YACF,yEAAyE;YACzE,2EAA2E;YAC3E,+FAA+F;YAC/F,EAAE;YACF,uEAAuE;YACvE,8EAA8E;YAC9E,6EAA6E;YAC7E,wEAAwE;YACxE,gFAAgF;YAChF,2CAA2C;YAE3C,wEAAwE;YACxE,IAAI,yBAKS,CAAC;YAEd,IAAI,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,IAAI,OAAO,CAAC,UAAU,IAAI,CAAC,UAAU,EAAE,CAAC;gBAC1F,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;gBAC5C,IAAI,CAAA,aAAa,aAAb,aAAa,uBAAb,aAAa,CAAE,QAAQ,KAAI,aAAa,CAAC,YAAY,EAAE,CAAC;oBAC1D,MAAM,UAAU,GAAG,OAAO,CAAC,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC;oBAErD,8EAA8E;oBAC9E,IAAI,kBAAkD,CAAC;oBACvD,IAAI,UAAU,EAAE,CAAC;wBACf,kBAAkB,GAAG,MAAM,IAAI,CAAC,6BAA6B,CAC3D,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CACvC,CAAC;oBACJ,CAAC;yBAAM,CAAC;wBACN,kBAAkB,GAAG,MAAM,IAAI,CAAC,qBAAqB,CACnD,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CACvC,CAAC;oBACJ,CAAC;oBAED,IAAI,CAAC,kBAAkB,EAAE,CAAC;wBACxB,MAAM,IAAI,KAAK,CACb,0BAA0B,aAAa,CAAC,QAAQ,qBAAqB;4BACrE,QAAQ,OAAO,CAAC,MAAM,yCAAyC;4BAC/D,oBAAoB,CACrB,CAAC;oBACJ,CAAC;oBAED,4EAA4E;oBAC5E,MAAM,oBAAoB,GAAG,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;oBACnE,IAAI,OAAO,GAAQ,kBAAkB,CAAC,SAAS,CAAC;oBAChD,KAAK,MAAM,OAAO,IAAI,oBAAoB,EAAE,CAAC;wBAC3C,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAC;oBAC7B,CAAC;oBAED,IAAI,CAAC,CAAA,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,WAAW,CAAA,EAAE,CAAC;wBAC1B,MAAM,IAAI,KAAK,CACb,0BAA0B,aAAa,CAAC,QAAQ,YAAY;4BAC5D,IAAI,aAAa,CAAC,YAAY,yCAAyC;4BACvE,+CAA+C,CAChD,CAAC;oBACJ,CAAC;oBAED,yBAAyB;oBACzB,MAAM,eAAe,GAAG,aAAa,CAAC,YAAY,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;oBACjE,uEAAuE;oBACvE,wEAAwE;oBACxE,iEAAiE;oBACjE,oEAAoE;oBACpE,wEAAwE;oBACxE,kDAAkD;oBAClD,MAAM,qBAAqB,GACzB,aAAa,CAAC,QAAQ,KAAK,6BAA6B,CAAC,QAAQ,CAAC;oBACpE,MAAM,mBAAmB,GAAG,qBAAqB;wBAC/C,CAAC,CAAC,KAAK;wBACP,CAAC,CAAC,qBAAqB,CAAC,kBAAkB,EAAE,eAAe,CAAC,CAAC;oBAC/D,MAAM,YAAY,GAAG,CAAC,aAAa,CAAC,eAAe,CAAC;oBAEpD,oEAAoE;oBACpE,IAAI,cAA0B,CAAC;oBAC/B,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;wBACvB,cAAc,GAAG,aAAa,CAAC,IAAI,YAAY,UAAU;4BACvD,CAAC,CAAC,aAAa,CAAC,IAAI;4BACpB,CAAC,CAAC,IAAI,WAAW,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC;oBAC3D,CAAC;yBAAM,IAAI,OAAO,CAAC,UAAU,YAAY,IAAI,EAAE,CAAC;wBAC9C,cAAc,GAAG,IAAI,UAAU,CAAC,MAAM,OAAO,CAAC,UAAU,CAAC,WAAW,EAAE,CAAC,CAAC;oBAC1E,CAAC;yBAAM,IAAI,OAAO,CAAC,UAAU,YAAY,cAAc,EAAE,CAAC;wBACxD,cAAc,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAChE,CAAC;yBAAM,CAAC;wBACN,MAAM,IAAI,KAAK,CAAC,2DAA2D,CAAC,CAAC;oBAC/E,CAAC;oBAED,kFAAkF;oBAClF,MAAM,0BAA0B,GAAG,0BAA0B,CAAC,OAAO,CAAC;oBACtE,MAAM,iBAAiB,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,EAAE,CAAC,CAAC,CAAC;oBACrE,MAAM,gBAAgB,GAAG,MAAM,CAAC,eAAe,CAAC,IAAI,UAAU,CAAC,UAAU,CAAC,0BAA0B,CAAC,CAAC,CAAC,CAAC;oBAExG,mFAAmF;oBACnF,IAAI,eAA8G,CAAC;oBAEnH,MAAM,sBAAsB,GAAG,GAA+C,EAAE,CAAC,sBAAsB,CACrG,iBAAiB,EAAE,gBAAgB,EACnC,OAAO,CAAC,WAAW,CAAC,SAAS,EAAE,OAAO,CAAC,WAAW,CAAC,YAAY,EAC/D,mBAAmB,CAAC,YAAY,CACjC,CAAC;oBAEF,IAAI,UAAU,IAAI,mBAAmB,IAAI,YAAY,EAAE,CAAC;wBACtD,oFAAoF;wBACpF,eAAe,GAAG,sBAAsB,EAAE,CAAC;oBAE7C,CAAC;yBAAM,IAAI,UAAU,IAAI,mBAAmB,IAAI,CAAC,YAAY,EAAE,CAAC;wBAC9D,+EAA+E;wBAC/E,MAAM,aAAa,GAAG,aAAa,CAAC,eAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;+BAC7D,aAAa,CAAC,eAAgB,CAAC;wBAEpC,MAAM,oBAAoB,GAAG,MAAM,IAAI,CAAC,uBAAuB,CAC7D,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,CAAC,MAAM,CACtE,CAAC;wBAEF,IAAI,oBAAoB,EAAE,CAAC;4BACzB,eAAe,GAAG,sBAAsB,CACtC,iBAAiB,EAAE,gBAAgB,EACnC,oBAAoB,CAAC,SAAS,EAAE,oBAAoB,CAAC,gBAAgB,EACrE,mBAAmB,CAAC,eAAe,CACpC,CAAC;wBACJ,CAAC;6BAAM,CAAC;4BACN,yEAAyE;4BACzE,kEAAkE;4BAClE,eAAe,GAAG,sBAAsB,EAAE,CAAC;wBAC7C,CAAC;oBAEH,CAAC;yBAAM,IAAI,UAAU,EAAE,CAAC;wBACtB,8DAA8D;wBAC9D,eAAe,GAAG,sBAAsB,EAAE,CAAC;oBAE7C,CAAC;yBAAM,IAAI,mBAAmB,IAAI,CAAC,YAAY,EAAE,CAAC;wBAChD,wEAAwE;wBACxE,MAAM,aAAa,GAAG,aAAa,CAAC,eAAgB,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;+BAC7D,aAAa,CAAC,eAAgB,CAAC;wBAEpC,IAAI,cAAc,GAAG,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;wBAC9D,IAAI,CAAC,cAAc,EAAE,CAAC;4BACpB,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;4BACnF,MAAM,qBAAqB,GACzB,OAAO,CAAC,oDAAoD,CAAC,aAAa,CAAC,CAAC;4BAC9E,cAAc,GAAG,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC;4BAC1D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;wBAC3D,CAAC;wBAED,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;4BACnE,MAAM,EAAW,cAAc,CAAC,MAAM;4BACtC,cAAc,EAAG,cAAc,CAAC,qBAAqB;yBACtD,CAAC,CAAC;wBAEH,eAAe,GAAG,sBAAsB,CACtC,iBAAiB,EAAE,gBAAgB,EACnC,cAAc,CAAC,KAAK,EAAE,gBAAgB,EACtC,mBAAmB,CAAC,eAAe,CACpC,CAAC;oBAEJ,CAAC;yBAAM,IAAI,mBAAmB,IAAI,YAAY,EAAE,CAAC;wBAC/C,kFAAkF;wBAClF,oEAAoE;wBACpE,4DAA4D;wBAC5D,eAAe,GAAG,SAAS,CAAC;oBAE9B,CAAC;yBAAM,CAAC;wBACN,kEAAkE;wBAClE,eAAe,GAAG,sBAAsB,EAAE,CAAC;oBAC7C,CAAC;oBAED,4CAA4C;oBAC5C,MAAM,EAAE,cAAc,EAAE,OAAO,EAAE,QAAQ,EAAE,iBAAiB,EAAE,GAC5D,MAAM,sBAAsB,CAAC,cAAc,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,0BAA0B,CAAC,CAAC;oBAEhH,2CAA2C;oBAC3C,aAAa,CAAC,OAAO,GAAG,OAAO,CAAC;oBAChC,aAAa,CAAC,QAAQ,GAAG,QAAQ,CAAC;oBAClC,OAAO,aAAa,CAAC,IAAI,CAAC;oBAC1B,cAAc,GAAG,UAAU,CAAC,SAAS,CAAC,cAAc,CAAC,CAAC;oBACtD,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;oBAE/B,IAAI,eAAe,EAAE,CAAC;wBACpB,eAAe,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;wBACtD,aAAa,CAAC,eAAe,GAAG,eAAkC,CAAC;oBACrE,CAAC;yBAAM,CAAC;wBACN,qDAAqD;wBACrD,yBAAyB,GAAG,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,cAAc,EAAE,iBAAiB,EAAE,CAAC;oBACzG,CAAC;oBAED,uEAAuE;oBACvE,uEAAuE;oBACvE,wEAAwE;oBACxE,IAAI,UAAU,IAAI,mBAAmB,EAAE,CAAC;wBACtC,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,GAChD,MAAM,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;wBAC3D,MAAM,yBAAyB,GAAG;4BAChC,mBAAmB,CAAC,YAAY;4BAChC,6BAA6B,CAAC,QAAQ;4BACtC,YAAY;yBACb,CAAC;wBACF,MAAM,uBAAuB,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,eAAe,CAAC;4BAC1E,MAAM,EAAW,YAAY;4BAC7B,cAAc,EAAG,yBAAyB;yBAC3C,CAAC,CAAC;wBACH,aAAa,CAAC,0BAA0B,GAAG;4BACzC,SAAS,EAAM,WAAW;4BAC1B,YAAY,EAAG,uBAAuB;yBACvC,CAAC;oBACJ,CAAC;gBACH,CAAC;YACH,CAAC;YAED,IAAI,UAAiC,CAAC;YACtC,MAAM,qBAAqB,GAAG,sBAAsB,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;YAE1E,yEAAyE;YACzE,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,IAAI,OAAO,CAAC,aAAa,KAAK,SAAS,EAAE,CAAC;oBACxC,MAAM,IAAI,KAAK,CAAC,2EAA2E,CAAC,CAAC;gBAC/F,CAAC;gBAED,mGAAmG;gBACnG,2FAA2F;gBAC3F,MAAM,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;oBACjC,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;oBAC1C,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;gBAEvC,UAAU,GAAG,MAAM,qBAAqB,CAAC,MAAM,iCAC1C,OAAO,CAAC,aAAa,KACxB,MAAM,IACN,CAAC;gBAEH,0EAA0E;gBAC1E,6DAA6D;gBAC7D,6EAA6E;gBAC7E,IAAI,yBAAyB,IAAI,YAAY,CAAC,OAAO,EAAE,YAAY,CAAC,YAAY,CAAC,EAAE,CAAC;oBAClF,MAAM,oBAAoB,GAAG,UAAqC,CAAC;oBACnE,MAAM,SAAS,GAAG,oBAAoB,CAAC,OAAO,CAAC,QAAQ,CAAC;oBAExD,MAAM,EAAE,eAAe,EAAE,sBAAsB,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,GACrF,MAAM,8BAA8B,CAClC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,MAAM,EAAE,SAAS,EACrC,yBAAyB,CAAC,iBAAiB,EAC3C,yBAAyB,CAAC,gBAAgB,CAC3C,CAAC;oBAEJ,MAAM,gBAAgB,mCAAQ,sBAAsB,KAAE,iBAAiB,EAAE,yBAAyB,CAAC,iBAAiB,GAAE,CAAC;oBACvH,MAAM,oBAAoB,CAAC,6BAA6B,CAAC,gBAAmC,CAAC,CAAC;oBAC9F,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;oBAE5C,+DAA+D;oBAC/D,IAAI,CAAC,gBAAgB,CAAC,GAAG,CAAC,SAAS,EAAE,EAAE,KAAK,EAAE,MAAM,EAAE,qBAAqB,EAAE,CAAC,CAAC;gBACjF,CAAC;YAEH,CAAC;iBAAM,CAAC;gBACN,UAAU,GAAG,MAAM,qBAAqB,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;gBAC3D,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;oBACtD,yDAAyD;oBACzD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC;oBACpD,MAAM,UAAU,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;gBACvC,CAAC;qBAAM,IAAI,OAAO,CAAC,UAAU,IAAI,cAAc,CAAC,UAAU,CAAC,IAAI,OAAO,CAAC,mBAAmB,EAAE,CAAC;oBAC3F,oGAAoG;oBACpG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;oBAExD,oFAAoF;oBACpF,MAAM,aAAa,GAAG,OAAO,CAAC,aAA4D,CAAC;oBAC3F,MAAM,UAAU,CAAC,mBAAmB,CAAC,MAAM,EAAE,aAAa,CAAC,cAAe,CAAC,CAAC;gBAC9E,CAAC;YACH,CAAC;YAED,OAAO;gBACL,OAAO,EAAM,UAAU,CAAC,OAAwB;gBAChD,UAAU,EAAG,cAAc;aAC5B,CAAC;QACJ,CAAC;KAAA;IAEO,cAAc,CAAyB,MAA4B;QACzE,OAAO,MAAM,KAAK,SAAS;YACzB,CAAC,CAAC,mBAAmB,IAAI,MAAM,IAAI,MAAM,CAAC,iBAAiB,KAAK,SAAS,CAAC;gBAC1E,CAAC,gBAAgB,IAAI,MAAM,IAAI,MAAM,CAAC,cAAc,KAAK,SAAS,CAAC,CAAC,CAAC;IACzE,CAAC;IAEa,SAAS,CAAC,MAAc;;YACpC,4DAA4D;YAC5D,IAAI,MAAM,KAAK,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,EAAE,CAAC;gBACvC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,SAAS,EAAE,CAAC;gBAErD,OAAO;oBACL,SAAS,EAAG,MAAM,CAAC,SAAS;oBAC5B,KAAK,EAAO,MAAM,CAAC,KAAK;oBACxB,IAAI,EAAQ,CAAO,IAAgB,EAAuB,EAAE;wBAC1D,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;oBACrC,CAAC,CAAA;iBACF,CAAC;YAEJ,CAAC;iBAAM,CAAC;gBACN,sEAAsE;gBACtE,uEAAuE;gBACvE,wEAAwE;gBACxE,IAAI,CAAC;oBACH,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBAC9D,IAAI,QAAQ,EAAE,CAAC;wBACb,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,SAAS,EAAE,CAAC;wBAE1C,OAAO;4BACL,SAAS,EAAG,MAAM,CAAC,SAAS;4BAC5B,KAAK,EAAO,MAAM,CAAC,KAAK;4BACxB,IAAI,EAAQ,CAAO,IAAgB,EAAuB,EAAE;gCAC1D,OAAO,MAAM,MAAM,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;4BACrC,CAAC,CAAA;yBACF,CAAC;oBACJ,CAAC;oBAED,mEAAmE;oBACnE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,gBAAgB,CAAC,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;oBAEhF,IAAI,CAAC,aAAa,CAAC,YAAY,EAAE,CAAC;wBAChC,MAAM,IAAI,KAAK,CAAC,wBAAwB,aAAa,CAAC,EAAE,+CAA+C,CAAC,CAAC;oBAC3G,CAAC;oBAED,+DAA+D;oBAC/D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,aAAa,CAAC,YAAY,EAAE,CAAC,CAAC;oBAE1F,iFAAiF;oBACjF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC;oBAEvE,8CAA8C;oBAC9C,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC;oBAEzC,OAAO;wBACL,SAAS,EAAG,WAAW,CAAC,sCAAsC,CAAC,SAAS,CAAC;wBACzE,KAAK,EAAO,aAAa,CAAC,EAAE;wBAC5B,IAAI,EAAQ,CAAO,IAAgB,EAAuB,EAAE;4BAC1D,OAAO,MAAM,UAAU,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAO,EAAE,CAAC,CAAC;wBAC1D,CAAC,CAAA;qBACF,CAAC;gBACJ,CAAC;gBAAC,OAAO,KAAU,EAAE,CAAC;oBACpB,MAAM,IAAI,KAAK,CAAC,iDAAiD,MAAM,MAAM,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;gBAChG,CAAC;YACH,CAAC;QACH,CAAC;KAAA;IAED;;;;;;OAMG;IACU,uBAAuB,CAClC,MAAc;;YAEd,OAAO,yBAAyB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACvD,CAAC;KAAA;IAED;;;;;OAKG;IACW,oBAAoB,CAChC,MAAc;;YAEd,OAAO,sBAAsB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QACpD,CAAC;KAAA;IAED;;;;OAIG;IACW,eAAe,CAC3B,MAAc;;YAEd,OAAO,iBAAiB,CAAC,IAAI,CAAC,KAAK,EAAE,MAAM,CAAC,CAAC;QAC/C,CAAC;KAAA;IAED;;;;;OAKG;IACI,qBAAqB,CAAC,MAM5B;QACC,OAAO,uBAAuB,CAAC,MAAM,CAAC,CAAC;IACzC,CAAC;IAED;;;;;;;OAOG;IACW,qBAAqB,CACjC,SAAiB,EACjB,WAAmB;;YAEnB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;gBACf,qEAAqE;gBACrE,gEAAgE;gBAChE,iEAAiE;gBACjE,IAAI,CAAC;oBACH,OAAO,MAAM,IAAI,CAAC,6BAA6B,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;gBAC1E,CAAC;gBAAC,WAAM,CAAC;oBACP,sEAAsE;oBACtE,OAAO,SAAS,CAAC;gBACnB,CAAC;YACH,CAAC;YACD,OAAO,uBAAuB,CAC5B,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,EACjC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,wBAAwB,CACzD,CAAC;QACJ,CAAC;KAAA;IAED;;;OAGG;IACW,6BAA6B,CACzC,SAAiB,EACjB,WAAmB;;YAEnB,OAAO,+BAA+B,CACpC,SAAS,EAAE,WAAW,EAAE,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EACnE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,wBAAwB,CACjE,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;;;;;;OAWG;IACW,uBAAuB,CACnC,SAAiB,EACjB,WAAmB,EACnB,aAAqB,EACrB,YAAoB;;YAEpB,OAAO,yBAAyB,CAC9B,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EACnD,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EACtE,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,CAClC,CAAC;QACJ,CAAC;KAAA;IAED;;;OAGG;IACW,iBAAiB,CAC7B,OAAiD,EACjD,KAAyB;;YAEzB,OAAO,mBAAmB,CACxB,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,KAAK,EAC1B,IAAI,CAAC,uBAAuB,EAC5B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,CACtC,CAAC;QACJ,CAAC;KAAA;IAEa,aAAa;6DAAyB,EAAE,MAAM,EAAE,UAAU,EAIvE;YACC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YAE5C,yDAAyD;YACzD,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,YAAY,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC;gBAClF,UAAU,EAAE,UAAU;gBACtB,MAAM;aACP,CAAC,CAAC;YAEH,IAAI,MAAW,CAAC;YAEhB,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;gBACd,wDAAwD;gBACxD,MAAM,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY,CAAC,OAAO,CAAC,CAAC;YACxE,CAAC;iBAAM,CAAC;gBACN,0DAA0D;gBAC1D,MAAM,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAAC;oBACpC,SAAS,EAAS,MAAM;oBACxB,eAAe,EAAG,CAAC,IAAI,CAAC,iBAAkB,CAAC;oBAC3C,OAAO,EAAW,YAAY,CAAC,OAAO;iBACvC,CAAC,CAAC;YACL,CAAC;YAED,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,KAAK,GAAG,EAAE,CAAC;gBAC/B,MAAM,IAAI,KAAK,CAAC,yDAAyD,MAAM,CAAC,MAAM,CAAC,IAAI,MAAM,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;YAC3H,CAAC;YAED,MAAM,YAAY,GAAG,MAAM,CAAC,KAAM,CAAC;YACnC,MAAM,OAAO,GAAG,YAAY,CAAC,OAAwB,CAAC;YAEtD,MAAM,kBAAkB,GAA0B,EAAE,OAAO,EAAE,CAAC;YAC9D,iFAAiF;YAEjF,IAAI,cAAc,CAAC,YAAY,CAAC,EAAE,CAAC;gBACjC,iEAAiE;gBACjE,kEAAkE;gBAClE,6DAA6D;gBAC7D,MAAM,SAAS,GAAI,YAAmD,CAAC,MAAM,CAA2C,CAAC;gBACzH,IAAI,SAAS,EAAE,CAAC;oBACd,MAAM,SAAS,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;oBACtD,kBAAkB,CAAC,IAAI,GAAG,IAAI,IAAI,CAAC,CAAE,SAAqB,CAAE,EAAE,EAAE,IAAI,EAAE,YAAY,CAAC,OAAO,CAAC,UAAU,CAAC,UAAU,EAAE,CAAC,CAAC;gBACtH,CAAC;YACH,CAAC;YAED,OAAO,kBAAkB,CAAC;QAC5B,CAAC;KAAA;IAeD;;;;;OAKG;IACU,yBAAyB,CAAC,SAAiB;;YACtD,OAAO,2BAA2B,CAChC,IAAI,CAAC,KAAK,EAAE,SAAS,EACrB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,IAAI,CAAC,qBAAqB,CAAC,IAAI,CAAC,IAAI,CAAC,EACrC,IAAI,CAAC,kCAAkC,EACvC,IAAI,CAAC,wBAAwB,CAC9B,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;OAMG;IACU,qBAAqB,CAAC,MAOlC;;YACC,OAAO,uBAAuB,CAC5B,IAAI,CAAC,KAAK,EAAE,MAAM,EAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,EACzC,IAAI,CAAC,yBAAyB,CAAC,IAAI,CAAC,IAAI,CAAC,CAC1C,CAAC;QACJ,CAAC;KAAA;IAED;;;OAGG;IACW,yBAAyB,CACrC,SAAiB,EACjB,iBAAwD;;YAExD,OAAO,2BAA2B,CAChC,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,iBAAiB,EACxC,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAC7B,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EACjC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5C,CAAC;QACJ,CAAC;KAAA;IAED;;;;;;OAMG;IACU,qBAAqB,CAAC,MAKlC;;YACC,OAAO,uBAAuB,CAC5B,IAAI,CAAC,KAAK,EAAE,MAAM,EAClB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAC9B,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,EACzB,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,IAAI,CAAC,EACjC,IAAI,CAAC,2BAA2B,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5C,CAAC;QACJ,CAAC;KAAA;CACF"}
@@ -23,11 +23,68 @@ import { isRecordsWrite } from './utils.js';
23
23
  import { topologicalSort } from './sync-topological-sort.js';
24
24
  import { pullMessages, pushMessages } from './sync-messages.js';
25
25
  /**
26
- * Maximum bit prefix depth before falling back to leaf enumeration.
27
- * At depth 16, each subtree covers ~1/65536 of the key space, which is a good
28
- * balance between round-trip count and leaf-set size.
26
+ * Maximum bit prefix depth for the per-node tree walk (legacy fallback).
27
+ * At depth 16, each subtree covers ~1/65536 of the key space.
29
28
  */
30
29
  const MAX_DIFF_DEPTH = 16;
30
+ /**
31
+ * Bit depth for the batched diff protocol.
32
+ * Lower than MAX_DIFF_DEPTH because the batched diff sends all subtree hashes
33
+ * in a single request — fine granularity comes from the server-side leaf
34
+ * enumeration, not from deeper prefixes. Depth 8 = 256 buckets, which is
35
+ * a good balance between hash map size and leaf-set resolution.
36
+ */
37
+ const BATCHED_DIFF_DEPTH = 8;
38
+ /**
39
+ * Maximum number of concurrent remote HTTP requests during a tree diff.
40
+ * The binary tree walk fans out in parallel — without a limit, depth N
41
+ * produces 2^N concurrent requests, which can exhaust server rate limits.
42
+ */
43
+ const REMOTE_CONCURRENCY = 4;
44
+ /**
45
+ * Counting semaphore for bounding concurrent async operations.
46
+ * Used by the tree walk to limit in-flight remote HTTP requests.
47
+ */
48
+ class Semaphore {
49
+ constructor(permits) {
50
+ this._waiting = [];
51
+ this._permits = permits;
52
+ }
53
+ /** Wait until a permit is available, then consume one. */
54
+ acquire() {
55
+ return __awaiter(this, void 0, void 0, function* () {
56
+ if (this._permits > 0) {
57
+ this._permits--;
58
+ return;
59
+ }
60
+ return new Promise((resolve) => {
61
+ this._waiting.push(resolve);
62
+ });
63
+ });
64
+ }
65
+ /** Release a permit, waking the next waiter if any. */
66
+ release() {
67
+ const next = this._waiting.shift();
68
+ if (next) {
69
+ next();
70
+ }
71
+ else {
72
+ this._permits++;
73
+ }
74
+ }
75
+ /** Acquire a permit, run the task, then release regardless of outcome. */
76
+ run(fn) {
77
+ return __awaiter(this, void 0, void 0, function* () {
78
+ yield this.acquire();
79
+ try {
80
+ return yield fn();
81
+ }
82
+ finally {
83
+ this.release();
84
+ }
85
+ });
86
+ }
87
+ }
31
88
  /**
32
89
  * Key for the subscription cursor sublevel. Cursors are keyed by
33
90
  * `{did}^{dwnUrl}[^{protocol}]` and store an opaque EventLog cursor string.
@@ -170,14 +227,46 @@ export class SyncEngineLevel {
170
227
  // Trees are identical — nothing to sync for this target.
171
228
  continue;
172
229
  }
173
- // Phase 2: Walk the tree to find differing subtrees.
174
- const diff = yield this.walkTreeDiff({
230
+ // Phase 2: Compute the diff in a single round-trip using the
231
+ // batched 'diff' action. This replaces the per-node tree walk
232
+ // that previously required dozens of HTTP requests.
233
+ const diff = yield this.diffWithRemote({
175
234
  did, dwnUrl, delegateDid, protocol,
176
235
  });
177
236
  // Phase 3: Pull missing messages (remote has, local doesn't).
237
+ // The diff response may include inline message data — use it
238
+ // directly instead of re-fetching via individual MessagesRead calls.
178
239
  if (!direction || direction === 'pull') {
179
240
  if (diff.onlyRemote.length > 0) {
180
- yield this.pullMessages({ did, dwnUrl, delegateDid, protocol, messageCids: diff.onlyRemote });
241
+ // Separate entries into three categories:
242
+ // 1. Fully prefetched: have message + inline data (or no data needed)
243
+ // 2. Need data fetch: have message but missing data for RecordsWrite
244
+ // 3. Need full fetch: no message at all
245
+ const prefetched = [];
246
+ const needsFetchCids = [];
247
+ for (const entry of diff.onlyRemote) {
248
+ if (!entry.message) {
249
+ // No message at all — need full fetch.
250
+ needsFetchCids.push(entry.messageCid);
251
+ }
252
+ else if (entry.message.descriptor.interface === 'Records' &&
253
+ entry.message.descriptor.method === 'Write' &&
254
+ entry.message.descriptor.dataCid &&
255
+ !entry.encodedData) {
256
+ // RecordsWrite with data but data wasn't inlined (too large).
257
+ // Need to fetch individually to get the data stream.
258
+ needsFetchCids.push(entry.messageCid);
259
+ }
260
+ else {
261
+ // Fully prefetched (message + data or no data needed).
262
+ prefetched.push(entry);
263
+ }
264
+ }
265
+ yield this.pullMessages({
266
+ did, dwnUrl, delegateDid, protocol,
267
+ messageCids: needsFetchCids,
268
+ prefetched,
269
+ });
181
270
  }
182
271
  }
183
272
  // Phase 4: Push missing messages (local has, remote doesn't).
@@ -654,16 +743,52 @@ export class SyncEngineLevel {
654
743
  return (_a = this._defaultHashHex.get(depth)) !== null && _a !== void 0 ? _a : '';
655
744
  });
656
745
  }
746
+ /**
747
+ * Parse a bit prefix string (e.g. "0110101") into a boolean array
748
+ * for the StateIndex API. Each '1' maps to `true` (right child),
749
+ * each '0' maps to `false` (left child).
750
+ */
751
+ static parseBitPrefix(prefix) {
752
+ return Array.from(prefix, (ch) => ch === '1');
753
+ }
657
754
  // ---------------------------------------------------------------------------
658
755
  // SMT Root Comparison
659
756
  // ---------------------------------------------------------------------------
660
757
  /**
661
- * Get the SMT root hash from the local DWN via a MessagesSync 'root' action.
758
+ * Access the local DWN's StateIndex directly, bypassing the `processMessage`
759
+ * pipeline. The sync engine runs in the same process as the local DWN, so
760
+ * there is no need for message signing, schema validation, or authentication
761
+ * when querying our own state.
762
+ *
763
+ * Returns `undefined` in remote mode (no in-process DWN). The local methods
764
+ * fall back to `processRequest` in that case, routing through RPC to the
765
+ * local DWN server.
766
+ */
767
+ get stateIndex() {
768
+ if (this.agent.dwn.isRemoteMode) {
769
+ return undefined;
770
+ }
771
+ return this.agent.dwn.node.storage.stateIndex;
772
+ }
773
+ /**
774
+ * Get the SMT root hash from the local DWN.
775
+ *
776
+ * In local mode: queries the StateIndex directly (fast, no processMessage overhead).
777
+ * In remote mode: constructs a signed MessagesSync message and routes through RPC.
778
+ *
662
779
  * Returns a hex-encoded root hash string.
663
780
  */
664
781
  getLocalRoot(did, delegateDid, protocol) {
665
782
  return __awaiter(this, void 0, void 0, function* () {
666
783
  var _a;
784
+ const si = this.stateIndex;
785
+ if (si) {
786
+ const rootHash = protocol !== undefined
787
+ ? yield si.getProtocolRoot(did, protocol)
788
+ : yield si.getRoot(did);
789
+ return hashToHex(rootHash);
790
+ }
791
+ // Remote mode fallback: go through processRequest → RPC.
667
792
  const permissionGrantId = yield this.getSyncPermissionGrantId(did, delegateDid, protocol);
668
793
  const response = yield this.agent.dwn.processRequest({
669
794
  author: did,
@@ -723,11 +848,16 @@ export class SyncEngineLevel {
723
848
  const onlyRemote = [];
724
849
  // Hoist permission grant lookup — resolved once and reused for all subtree/leaf requests.
725
850
  const permissionGrantId = yield this.getSyncPermissionGrantId(did, delegateDid, protocol);
851
+ // Gate remote HTTP requests through a semaphore so the binary tree walk
852
+ // doesn't produce an exponential burst of concurrent requests. Local
853
+ // DWN requests (in-process) are not gated.
854
+ const remoteSemaphore = new Semaphore(REMOTE_CONCURRENCY);
726
855
  const walk = (prefix) => __awaiter(this, void 0, void 0, function* () {
727
856
  // Get subtree hashes for this prefix from local and remote.
857
+ // Only the remote request is gated by the semaphore.
728
858
  const [localHash, remoteHash] = yield Promise.all([
729
859
  this.getLocalSubtreeHash(did, prefix, delegateDid, protocol, permissionGrantId),
730
- this.getRemoteSubtreeHash(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId),
860
+ remoteSemaphore.run(() => this.getRemoteSubtreeHash(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId)),
731
861
  ]);
732
862
  // If hashes match, this subtree is identical — skip.
733
863
  if (localHash === remoteHash) {
@@ -744,7 +874,7 @@ export class SyncEngineLevel {
744
874
  return;
745
875
  }
746
876
  if (localHash === emptyHash && remoteHash !== emptyHash) {
747
- const remoteLeaves = yield this.getRemoteLeaves(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId);
877
+ const remoteLeaves = yield remoteSemaphore.run(() => this.getRemoteLeaves(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId));
748
878
  onlyRemote.push(...remoteLeaves);
749
879
  return;
750
880
  }
@@ -752,7 +882,7 @@ export class SyncEngineLevel {
752
882
  if (prefix.length >= MAX_DIFF_DEPTH) {
753
883
  const [localLeaves, remoteLeaves] = yield Promise.all([
754
884
  this.getLocalLeaves(did, prefix, delegateDid, protocol, permissionGrantId),
755
- this.getRemoteLeaves(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId),
885
+ remoteSemaphore.run(() => this.getRemoteLeaves(did, dwnUrl, prefix, delegateDid, protocol, permissionGrantId)),
756
886
  ]);
757
887
  const localSet = new Set(localLeaves);
758
888
  const remoteSet = new Set(remoteLeaves);
@@ -778,9 +908,127 @@ export class SyncEngineLevel {
778
908
  return { onlyLocal, onlyRemote };
779
909
  });
780
910
  }
911
+ // ---------------------------------------------------------------------------
912
+ // Batched Diff — single round-trip set reconciliation
913
+ // ---------------------------------------------------------------------------
914
+ /**
915
+ * Compute the diff between local and remote in a single HTTP round-trip.
916
+ *
917
+ * 1. Walk the local SMT directly (no processMessage) to collect subtree
918
+ * hashes at `MAX_DIFF_DEPTH`.
919
+ * 2. Send a single `MessagesSync action:'diff'` to the remote with all
920
+ * non-empty subtree hashes.
921
+ * 3. The remote compares and returns `onlyRemote` (with inline messages)
922
+ * and `onlyLocal` prefixes.
923
+ * 4. Enumerate local leaves for the `onlyLocal` prefixes directly.
924
+ *
925
+ * This replaces `walkTreeDiff()` which required one HTTP call per tree node.
926
+ */
927
+ diffWithRemote(_a) {
928
+ return __awaiter(this, arguments, void 0, function* ({ did, dwnUrl, delegateDid, protocol }) {
929
+ var _b, _c;
930
+ // Step 1: Collect local subtree hashes at BATCHED_DIFF_DEPTH directly from StateIndex.
931
+ const localHashes = yield this.collectLocalSubtreeHashes(did, protocol, BATCHED_DIFF_DEPTH);
932
+ // Step 2: Send a single 'diff' request to the remote with our hashes.
933
+ const permissionGrantId = yield this.getSyncPermissionGrantId(did, delegateDid, protocol);
934
+ const syncMessage = yield this.agent.dwn.processRequest({
935
+ store: false,
936
+ author: did,
937
+ target: did,
938
+ messageType: DwnInterface.MessagesSync,
939
+ granteeDid: delegateDid,
940
+ messageParams: {
941
+ action: 'diff',
942
+ protocol,
943
+ hashes: localHashes,
944
+ depth: BATCHED_DIFF_DEPTH,
945
+ permissionGrantId,
946
+ }
947
+ });
948
+ const reply = yield this.agent.rpc.sendDwnRequest({
949
+ dwnUrl,
950
+ targetDid: did,
951
+ message: syncMessage.message,
952
+ });
953
+ if (reply.status.code !== 200) {
954
+ throw new Error(`SyncEngineLevel: diff failed with ${reply.status.code}: ${reply.status.detail}`);
955
+ }
956
+ // Step 3: Enumerate local leaves for prefixes the remote reported as onlyLocal.
957
+ const permissionGrantIdForLeaves = yield this.getSyncPermissionGrantId(did, delegateDid, protocol);
958
+ const onlyLocalCids = [];
959
+ for (const prefix of (_b = reply.onlyLocal) !== null && _b !== void 0 ? _b : []) {
960
+ const leaves = yield this.getLocalLeaves(did, prefix, delegateDid, protocol, permissionGrantIdForLeaves);
961
+ onlyLocalCids.push(...leaves);
962
+ }
963
+ return {
964
+ onlyRemote: (_c = reply.onlyRemote) !== null && _c !== void 0 ? _c : [],
965
+ onlyLocal: onlyLocalCids,
966
+ };
967
+ });
968
+ }
969
+ /**
970
+ * Walk the local SMT to a given depth and collect non-empty subtree hashes.
971
+ * Returns a `{ prefix: hexHash }` map. Empty subtrees (matching the default
972
+ * hash) are omitted.
973
+ *
974
+ * Uses direct StateIndex access in local mode. In remote mode, falls back
975
+ * to `getLocalSubtreeHash` which routes through RPC.
976
+ */
977
+ collectLocalSubtreeHashes(did, protocol, depth) {
978
+ return __awaiter(this, void 0, void 0, function* () {
979
+ const result = {};
980
+ const defaultHash = yield this.getDefaultHashHex(depth);
981
+ const si = this.stateIndex;
982
+ const walk = (prefix, currentDepth) => __awaiter(this, void 0, void 0, function* () {
983
+ let hexHash;
984
+ if (si) {
985
+ // Fast path: direct StateIndex access (local mode).
986
+ const bitPath = SyncEngineLevel.parseBitPrefix(prefix);
987
+ const hash = protocol !== undefined
988
+ ? yield si.getProtocolSubtreeHash(did, protocol, bitPath)
989
+ : yield si.getSubtreeHash(did, bitPath);
990
+ hexHash = hashToHex(hash);
991
+ }
992
+ else {
993
+ // Remote mode fallback.
994
+ hexHash = yield this.getLocalSubtreeHash(did, prefix, undefined, protocol);
995
+ }
996
+ if (hexHash === defaultHash) {
997
+ // Empty subtree — omit from the map.
998
+ return;
999
+ }
1000
+ if (currentDepth >= depth) {
1001
+ result[prefix] = hexHash;
1002
+ return;
1003
+ }
1004
+ // Recurse into children.
1005
+ yield Promise.all([
1006
+ walk(prefix + '0', currentDepth + 1),
1007
+ walk(prefix + '1', currentDepth + 1),
1008
+ ]);
1009
+ });
1010
+ yield walk('', 0);
1011
+ return result;
1012
+ });
1013
+ }
1014
+ /**
1015
+ * Get the subtree hash at a given bit prefix from the local DWN.
1016
+ *
1017
+ * In local mode: queries the StateIndex directly.
1018
+ * In remote mode: constructs a signed MessagesSync message and routes through RPC.
1019
+ */
781
1020
  getLocalSubtreeHash(did, prefix, delegateDid, protocol, permissionGrantId) {
782
1021
  return __awaiter(this, void 0, void 0, function* () {
783
1022
  var _a;
1023
+ const si = this.stateIndex;
1024
+ if (si) {
1025
+ const bitPath = SyncEngineLevel.parseBitPrefix(prefix);
1026
+ const hash = protocol !== undefined
1027
+ ? yield si.getProtocolSubtreeHash(did, protocol, bitPath)
1028
+ : yield si.getSubtreeHash(did, bitPath);
1029
+ return hashToHex(hash);
1030
+ }
1031
+ // Remote mode fallback.
784
1032
  const response = yield this.agent.dwn.processRequest({
785
1033
  author: did,
786
1034
  target: did,
@@ -821,9 +1069,23 @@ export class SyncEngineLevel {
821
1069
  return (_a = reply.hash) !== null && _a !== void 0 ? _a : '';
822
1070
  });
823
1071
  }
1072
+ /**
1073
+ * Get all leaf messageCids under a given prefix from the local DWN.
1074
+ *
1075
+ * In local mode: queries the StateIndex directly.
1076
+ * In remote mode: constructs a signed MessagesSync message and routes through RPC.
1077
+ */
824
1078
  getLocalLeaves(did, prefix, delegateDid, protocol, permissionGrantId) {
825
1079
  return __awaiter(this, void 0, void 0, function* () {
826
1080
  var _a;
1081
+ const si = this.stateIndex;
1082
+ if (si) {
1083
+ const bitPath = SyncEngineLevel.parseBitPrefix(prefix);
1084
+ return protocol !== undefined
1085
+ ? yield si.getProtocolLeaves(did, protocol, bitPath)
1086
+ : yield si.getLeaves(did, bitPath);
1087
+ }
1088
+ // Remote mode fallback.
827
1089
  const response = yield this.agent.dwn.processRequest({
828
1090
  author: did,
829
1091
  target: did,
@@ -870,11 +1132,15 @@ export class SyncEngineLevel {
870
1132
  /**
871
1133
  * Fetches missing messages from the remote DWN and processes them locally
872
1134
  * in dependency order (topological sort).
1135
+ *
1136
+ * When prefetched entries are provided (from the batched diff response),
1137
+ * they are processed directly without additional HTTP round-trips.
1138
+ * Only `messageCids` that were NOT prefetched are fetched individually.
873
1139
  */
874
1140
  pullMessages(_a) {
875
- return __awaiter(this, arguments, void 0, function* ({ did, dwnUrl, delegateDid, protocol, messageCids }) {
1141
+ return __awaiter(this, arguments, void 0, function* ({ did, dwnUrl, delegateDid, protocol, messageCids, prefetched }) {
876
1142
  return pullMessages({
877
- did, dwnUrl, delegateDid, protocol, messageCids,
1143
+ did, dwnUrl, delegateDid, protocol, messageCids, prefetched,
878
1144
  agent: this.agent,
879
1145
  permissionsApi: this._permissionsApi,
880
1146
  });