@arcblock/did-connect-service 4.1.9 → 4.1.11

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 (50) hide show
  1. package/dist/_generated/asset-bytes.js +1 -1
  2. package/dist/_generated/asset-manifest.js +2 -2
  3. package/dist/assets/admin-core.cbbdbe6d.js +1465 -0
  4. package/dist/assets/admin-extra.35b91f98.js +2543 -0
  5. package/dist/blocklet-service-rpc.js +5 -5
  6. package/dist/blocklet-service-rpc.js.map +1 -1
  7. package/dist/blocklet-service.js +5 -5
  8. package/dist/blocklet-service.js.map +1 -1
  9. package/dist/env-config.d.ts +6 -3
  10. package/dist/env-config.d.ts.map +1 -1
  11. package/dist/env-config.js +21 -4
  12. package/dist/env-config.js.map +1 -1
  13. package/dist/handlers/auth-handler.d.ts.map +1 -1
  14. package/dist/handlers/auth-handler.js +3 -0
  15. package/dist/handlers/auth-handler.js.map +1 -1
  16. package/dist/handlers/avatar-handler.d.ts +9 -1
  17. package/dist/handlers/avatar-handler.d.ts.map +1 -1
  18. package/dist/handlers/avatar-handler.js +22 -6
  19. package/dist/handlers/avatar-handler.js.map +1 -1
  20. package/dist/handlers/did-connect-handler.d.ts.map +1 -1
  21. package/dist/handlers/did-connect-handler.js +9 -0
  22. package/dist/handlers/did-connect-handler.js.map +1 -1
  23. package/dist/handlers/email-login-handler.d.ts.map +1 -1
  24. package/dist/handlers/email-login-handler.js +9 -0
  25. package/dist/handlers/email-login-handler.js.map +1 -1
  26. package/dist/handlers/team-handler.d.ts.map +1 -1
  27. package/dist/handlers/team-handler.js +36 -10
  28. package/dist/handlers/team-handler.js.map +1 -1
  29. package/dist/pages/admin/scripts/utils.d.ts +1 -1
  30. package/dist/pages/admin/scripts/utils.d.ts.map +1 -1
  31. package/dist/pages/admin/scripts/utils.js +5 -1
  32. package/dist/pages/admin/scripts/utils.js.map +1 -1
  33. package/dist/pages/admin/tab-appearance.js +1 -1
  34. package/dist/pages/admin/tab-members.d.ts +1 -1
  35. package/dist/pages/admin/tab-members.d.ts.map +1 -1
  36. package/dist/pages/admin/tab-members.js +16 -6
  37. package/dist/pages/admin/tab-members.js.map +1 -1
  38. package/dist/pages/admin/tab-settings.d.ts.map +1 -1
  39. package/dist/pages/admin/tab-settings.js +4 -1
  40. package/dist/pages/admin/tab-settings.js.map +1 -1
  41. package/dist/pages/admin-instances-page.d.ts.map +1 -1
  42. package/dist/pages/admin-instances-page.js +13 -3
  43. package/dist/pages/admin-instances-page.js.map +1 -1
  44. package/dist/store/d1-store.d.ts.map +1 -1
  45. package/dist/store/d1-store.js +252 -214
  46. package/dist/store/d1-store.js.map +1 -1
  47. package/dist/store/d1-token-storage.js +7 -7
  48. package/dist/store/d1-token-storage.js.map +1 -1
  49. package/migrations/0010_rename_tables.sql +31 -0
  50. package/package.json +3 -3
@@ -1 +1 @@
1
- {"version":3,"file":"team-handler.js","sourceRoot":"","sources":["../../src/handlers/team-handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"team-handler.js","sourceRoot":"","sources":["../../src/handlers/team-handler.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAEH,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AACvE,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AACzD,OAAO,EAAE,aAAa,EAAe,MAAM,cAAc,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAChD,OAAO,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAC7D,OAAO,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AAI9D,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,MAAM,QAAQ,GAAG,+BAA+B,CAAC;AACjD,MAAM,UAAU,GAAG,4BAA4B,CAAC;AAChD,MAAM,WAAW,GAAG,6BAA6B,CAAC;AAElD,SAAS,aAAa,CAAC,IAAY;IACjC,OAAO,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;AAC7D,CAAC;AAED,SAAS,WAAW,CAAC,GAAQ;IAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;IACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IACjH,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;AAC5B,CAAC;AAKD,MAAM,kBAAkB,GAAG,IAAI,GAAG,CAAe,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC,CAAC;AAEjG,sGAAsG;AACtG,SAAS,eAAe,CAAC,GAAQ;IAC/B,MAAM,KAAK,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;IAC7C,MAAM,QAAQ,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IACnD,MAAM,MAAM,GAAG,KAAK,IAAI,kBAAkB,CAAC,GAAG,CAAC,KAAqB,CAAC,CAAC,CAAC,CAAE,KAAsB,CAAC,CAAC,CAAC,SAAS,CAAC;IAC5G,MAAM,SAAS,GAAG,QAAQ,KAAK,KAAK,IAAI,QAAQ,KAAK,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC;AAC/B,CAAC;AAED;;;;GAIG;AACH,SAAS,eAAe,CACtB,OAAc,EACd,MAAgC,EAChC,SAAsC;IAEtC,IAAI,CAAC,MAAM;QAAE,OAAO,OAAO,CAAC;IAC5B,MAAM,SAAS,GAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;IACtF,MAAM,SAAS,GAAG,SAAS,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAE/C,MAAM,MAAM,GAAsD;QAChE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACjE,IAAI,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACnC,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,cAAc,IAAI,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACvF,MAAM,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;KACxD,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC;IAE3B,kEAAkE;IAClE,OAAO,OAAO,CAAC,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACnC,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,EAAE,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC;QAElB,sDAAsD;QACtD,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACtC,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC;QACtC,IAAI,MAAM,IAAI,CAAC,MAAM;YAAE,OAAO,CAAC,CAAC;QAChC,IAAI,CAAC,MAAM,IAAI,MAAM;YAAE,OAAO,CAAC,CAAC,CAAC;QAEjC,IAAI,EAAE,GAAG,EAAE;YAAE,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC;QACnC,IAAI,EAAE,GAAG,EAAE;YAAE,OAAO,CAAC,GAAG,SAAS,CAAC;QAElC,sCAAsC;QACtC,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC7C,MAAM,EAAE,GAAG,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC7C,OAAO,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACxC,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAC7B,IAA8B,EAC9B,kBAAiC,EACjC,OAAe;IAEf,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;QACpB,IAAI,QAAQ,GAAY,IAAI,CAAC;QAC7B,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ;gBAAE,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;QACpD,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,IAAI,KAAc,CAAC;QACnB,IAAI,CAAC;YACH,IAAI,CAAC,CAAC,QAAQ,KAAK,SAAS,IAAI,CAAC,CAAC,KAAK;gBAAE,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;QACvE,CAAC;QAAC,MAAM,CAAC,CAAA,CAAC;QACV,OAAO;YACL,GAAG,EAAE,CAAC,CAAC,GAAG;YACV,QAAQ,EAAE,CAAC,CAAC,QAAQ;YACpB,EAAE,EAAE,CAAC,CAAC,EAAE;YACR,QAAQ;YACR,WAAW,EAAE,CAAC,CAAC,WAAW,IAAI,IAAI;YAClC,MAAM,EAAE,CAAC,CAAC,QAAQ,KAAK,kBAAkB,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO;YAC9D,GAAG,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1C,CAAC;IACJ,CAAC,CAAC,CAAC;AACL,CAAC;AA0BD,MAAM,OAAO,WAAW;IACd,KAAK,CAAU;IACf,OAAO,CAAO;IACd,OAAO,CAAS;IAChB,SAAS,CAAS;IAC1B,WAAW,CAAU;IACb,EAAE,CAAY;IACd,YAAY,CAAU;IACtB,SAAS,CAAU;IACnB,MAAM,CAAU;IAChB,MAAM,CAAS;IAEvB,YAAY,OAA2B;QACrC,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC;QAC3B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;QAC/B,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,QAAQ,IAAI,QAAQ,CAAC;QAC5C,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,IAAI,EAAE,CAAC;QACzC,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAC;QACvC,IAAI,CAAC,YAAY,GAAG,OAAO,CAAC,YAAY,CAAC;QACzC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,SAAS,CAAC;QACnC,IAAI,CAAC,EAAE,GAAG,OAAO,CAAC,EAAE,CAAC;QACrB,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,IAAI,aAAa,CAAC;IAChD,CAAC;IAED,iEAAiE;IACzD,gBAAgB,CAAC,OAAgB;QACvC,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC;QAC1C,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC;IACrC,CAAC;IAED,wEAAwE;IACxE,KAAK,CAAC,KAAK,CAAC,OAAgB,EAAE,WAAoB,EAAE,OAAwC;QAC1F,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,EAAE,QAAQ,EAAE,GAAG,GAAG,CAAC;QAEzB,aAAa;QACb,IAAI,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;YACtC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;YACxD,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;QAClE,CAAC;QAED,kEAAkE;QAClE,IAAI,QAAQ,KAAK,UAAU,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,KAAK,EAAE,CAAC,CAAC;QAC1E,CAAC;QACD,IAAI,QAAQ,KAAK,2BAA2B,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,CAAC;QACzE,CAAC;QACD,gEAAgE;QAChE,IAAI,QAAQ,KAAK,iCAAiC,IAAI,QAAQ,KAAK,qCAAqC,EAAE,CAAC;YACzG,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,UAAU,GAAG,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;QAC7G,CAAC;QACD,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,eAAe,CAAC,WAAW,CAAC,CAAC;QAC3C,CAAC;QAED,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wEAAwE;IAEhE,KAAK,CAAC,SAAS,CACrB,OAAgB,EAChB,IAAY,EACZ,GAAQ,EACR,WAAoB,EACpB,OAAwC;QAExC,MAAM,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAE9B,IAAI,CAAC;YACH,sDAAsD;YACtD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAC/D,IAAI,MAAM,KAAK,KAAK,IAAI,SAAS,EAAE,CAAC;gBAClC,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,SAAS,CAAC,CAAC,CAAE,CAAC,CAAC;YAC3D,CAAC;YAED,6EAA6E;YAC7E,4EAA4E;YAC5E,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,sBAAsB,CAAC,OAAO,EAAE,WAAW,EAAE;gBAC3E,yBAAyB,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC;aAC1C,CAAC,CAAC;YAEH,8BAA8B;YAC9B,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC5C,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC1D,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC5C,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACrE,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACtD,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAC5D,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,gBAAgB,EAAE,CAAC;gBAClD,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACpE,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,uBAAuB,EAAE,CAAC;gBAC1D,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,uBAAuB,EAAE,CAAC;gBACzD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC3E,CAAC;YAED,mBAAmB;YACnB,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,UAAU,EAAE,CAAC;gBAC5C,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC;YACvD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,4BAA4B,CAAC,CAAC;YAC3D,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,gCAAgC,CAAC,CAAC;YAEnE,IAAI,MAAM,KAAK,KAAK,IAAI,SAAS,EAAE,CAAC;gBAClC,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAClF,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,aAAa,EAAE,CAAC;gBACtC,OAAO,MAAM,IAAI,CAAC,oBAAoB,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,WAAW,EAAE,CAAC;gBACpC,OAAO,MAAM,IAAI,CAAC,eAAe,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC;gBACvC,OAAO,MAAM,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YAC7E,CAAC;YAED,cAAc;YACd,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBAChD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC7E,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,cAAc,EAAE,CAAC;gBACjD,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YACzE,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;YACnE,IAAI,MAAM,KAAK,MAAM,IAAI,WAAW,EAAE,CAAC;gBACrC,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YACjF,CAAC;YACD,MAAM,cAAc,GAAG,IAAI,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YAC9D,IAAI,MAAM,KAAK,QAAQ,IAAI,cAAc,EAAE,CAAC;gBAC1C,OAAO,MAAM,IAAI,CAAC,sBAAsB,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YACpF,CAAC;YAED,aAAa;YACb,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,aAAa,EAAE,CAAC;gBAC/C,OAAO,MAAM,IAAI,CAAC,mBAAmB,CAAC,MAAM,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAClE,CAAC;YAED,qBAAqB;YACrB,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,qBAAqB,EAAE,CAAC;gBACxD,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC1E,CAAC;YAED,kBAAkB;YAClB,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACpD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,kBAAkB,EAAE,CAAC;gBACrD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,WAAW,GAAG,IAAI,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC;YAC/D,IAAI,MAAM,KAAK,KAAK,IAAI,WAAW,EAAE,CAAC;gBACpC,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC5F,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,IAAI,WAAW,EAAE,CAAC;gBACvC,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YACnF,CAAC;YAED,iBAAiB;YACjB,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnD,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;YACjE,CAAC;YACD,IAAI,MAAM,KAAK,MAAM,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACpD,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC3E,CAAC;YACD,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,CAAC;YAC5D,IAAI,MAAM,KAAK,KAAK,IAAI,SAAS,EAAE,CAAC;gBAClC,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAE,EAAE,OAAO,EAAE,WAAW,CAAC,CAAC;YAC1F,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,IAAI,SAAS,EAAE,CAAC;gBACrC,OAAO,MAAM,IAAI,CAAC,wBAAwB,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC,CAAE,EAAE,WAAW,CAAC,CAAC;YACjF,CAAC;YAED,wBAAwB;YACxB,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,WAAW,EAAE,CAAC;gBAC7C,OAAO,MAAM,IAAI,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;YAC9C,CAAC;YACD,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;YACnE,IAAI,MAAM,KAAK,KAAK,IAAI,UAAU,EAAE,CAAC;gBACnC,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAE,EAAE,OAAO,CAAC,CAAC;YAC7E,CAAC;YACD,IAAI,MAAM,KAAK,QAAQ,IAAI,UAAU,EAAE,CAAC;gBACtC,OAAO,MAAM,IAAI,CAAC,yBAAyB,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC,CAAE,CAAC,CAAC;YACtE,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,6BAA6B,EAAE,CAAC;gBAC/D,OAAO,MAAM,IAAI,CAAC,0BAA0B,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAChE,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,mBAAmB,EAAE,CAAC;gBACrD,OAAO,MAAM,IAAI,CAAC,uBAAuB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC7D,CAAC;YACD,IAAI,MAAM,KAAK,KAAK,IAAI,IAAI,KAAK,iBAAiB,EAAE,CAAC;gBACnD,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YAC3D,CAAC;YAED,OAAO,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAC3D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,IAAI,GAAG,YAAY,eAAe,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAC1E,CAAC;YACD,IAAI,GAAG,YAAY,SAAS,EAAE,CAAC;gBAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,IAAI,CAAC,CAAC;YAC/D,CAAC;YACD,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,gBAAgB,CAAC;YACtE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,qCAAqC,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,EAAE,CAAC,CAAC;YACnH,OAAO,IAAI,CAAC,aAAa,CAAC,OAAO,EAAE,GAAG,EAAE,gBAAgB,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAED,wEAAwE;IAEhE,KAAK,CAAC,sBAAsB,CAClC,OAAgB,EAChB,WAAoB,EACpB,IAA8C;QAE9C,MAAM,yBAAyB,GAAG,IAAI,EAAE,yBAAyB,IAAI,IAAI,CAAC;QAE1E,4BAA4B;QAC5B,MAAM,QAAQ,GAAG,MAAM,sBAAsB,CAAC,OAAO,EAAE,IAAI,CAAC,KAAK,EAAE,WAAW,CAAC,CAAC;QAChF,IAAI,QAAQ,EAAE,CAAC;YACb,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;gBACrB,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;YACzD,CAAC;YACD,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;YAChE,IAAI,WAAW,EAAE,CAAC;gBAChB,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAC7C,IAAI,CAAC,KAAK,EACV,QAAQ,CAAC,GAAG,EACZ,WAAW,EACX,QAAQ,CAAC,IAAI,CACd,CAAC;gBACF,IAAI,CAAC,aAAa,EAAE,CAAC;oBAC3B,IAAI,yBAAyB,EAAE,CAAC;wBAC/B,MAAM,IAAI,SAAS,CAAC,+BAA+B,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;oBACxE,CAAC;oBACD,OAAO;wBACN,GAAG,EAAE,QAAQ,CAAC,GAAG;wBACjB,EAAE,EAAE,QAAQ,CAAC,EAAE;wBACf,WAAW,EAAE,QAAQ,CAAC,WAAW;wBACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;wBACnB,EAAE;qBACF,CAAC;gBACI,CAAC;gBACD,OAAO;oBACL,GAAG,EAAE,QAAQ,CAAC,GAAG;oBACjB,EAAE,EAAE,QAAQ,CAAC,EAAE;oBACf,WAAW,EAAE,QAAQ,CAAC,WAAW;oBACjC,IAAI,EAAE,aAAa;oBACnB,EAAE;iBACH,CAAC;YACJ,CAAC;YACD,OAAO;gBACL,GAAG,EAAE,QAAQ,CAAC,GAAG;gBACjB,EAAE,EAAE,QAAQ,CAAC,EAAE;gBACf,WAAW,EAAE,QAAQ,CAAC,WAAW;gBACjC,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,EAAE;aACH,CAAC;QACJ,CAAC;QAED,wBAAwB;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,SAAS,CAAC,yBAAyB,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,MAAM,IAAI,SAAS,CAAC,gBAAgB,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QAChE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,IAAI,SAAS,CAAC,iBAAiB,EAAE,GAAG,EAAE,SAAS,CAAC,CAAC;QACzD,CAAC;QAED,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,SAAS,CAAC;QAEhE,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,aAAa,GAAG,MAAM,mBAAmB,CAC7C,IAAI,CAAC,KAAK,EACV,MAAM,CAAC,GAAG,EACV,WAAW,EACX,IAAI,CAAC,IAAI,IAAI,SAAS,CACvB,CAAC;YACF,IAAI,CAAC,aAAa,EAAE,CAAC;gBAC1B,IAAI,yBAAyB,EAAE,CAAC;oBAC/B,MAAM,IAAI,SAAS,CAAC,+BAA+B,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;gBACxE,CAAC;gBACD,OAAO;oBACN,GAAG,MAAM;oBACT,IAAI,EAAG,IAAI,CAAC,IAAa,IAAI,OAAO;oBACpC,EAAE;iBACF,CAAC;YACG,CAAC;YACD,OAAO,EAAE,GAAG,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,EAAE,EAAE,CAAC;QAChD,CAAC;QAED,OAAO;YACL,GAAG,MAAM;YACT,IAAI,EAAG,IAAI,CAAC,IAAa,IAAI,OAAO;YACpC,EAAE;SACH,CAAC;IACJ,CAAC;IAED,uEAAuE;IAEvE,iFAAiF;IACzE,KAAK,CAAC,cAAc,CAAC,GAAW,EAAE,WAAoB;QAC5D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QACjD,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,yDAAyD;QACzD,IAAI,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC;QACpB,MAAM,GAAG,GAAG,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;QAC5C,IAAI,GAAG,EAAE,CAAC;YACR,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YAC5D,IAAI,UAAU,EAAE,IAAI,EAAE,CAAC;gBACrB,IAAI,GAAG,UAAU,CAAC,IAAmB,CAAC;YACxC,CAAC;QACH,CAAC;QACD,OAAO,EAAE,GAAG,mBAAmB,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,MAA2B,EAAE,WAAoB;QAC9E,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAC/B,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAG9B,OAAO,CAAC,CAAC;QAEZ,MAAM,MAAM,GAA2C,EAAE,CAAC;QAC1D,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS;YAAE,MAAM,CAAC,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtF,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;YAAE,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAElF,IAAI,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YACnC,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACnE,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;gBAC9B,MAAM,EAAE,qBAAqB;gBAC7B,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,SAAS,EAAE,MAAM,CAAC,GAAG;gBACrB,QAAQ,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE;gBACzC,EAAE,EAAE,MAAM,CAAC,EAAE;aACd,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,uEAAuE;IAE/D,KAAK,CAAC,kBAAkB,CAC9B,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAqB,OAAO,CAAC,CAAC;QAC/D,IAAI,CAAC,IAAI,CAAC,MAAM;YAAE,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QAElF,IAAI,WAAmB,CAAC;QAExB,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,CAAC;YAC1C,6BAA6B;YAC7B,IAAI,CAAC,IAAI,CAAC,EAAE;gBAAE,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,GAAG,EAAE,qBAAqB,CAAC,CAAC;YACnG,MAAM,EAAE,MAAM,EAAE,WAAW,EAAE,GAAG,gBAAgB,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YAC9D,IAAI,MAAM,CAAC,UAAU,GAAG,CAAC,GAAG,IAAI,GAAG,IAAI,EAAE,CAAC;gBACxC,OAAO,IAAI,CAAC,aAAa,CAAC,2BAA2B,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;YAC7E,CAAC;YACD,MAAM,GAAG,GAAG,WAAW,MAAM,CAAC,GAAG,EAAE,CAAC;YACpC,MAAM,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,YAAY,EAAE,EAAE,WAAW,EAAE,EAAE,CAAC,CAAC;YAClE,WAAW,GAAG,oCAAoC,MAAM,CAAC,GAAG,EAAE,CAAC;QACjE,CAAC;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC1C,kFAAkF;YAClF,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;gBACZ,IAAI,CAAC;oBACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;gBAChD,CAAC;gBAAC,MAAM,CAAC;oBACP,mBAAmB;gBACrB,CAAC;YACH,CAAC;YACD,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;aAAM,CAAC;YACN,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,EAAE,aAAa,CAAC,CAAC;QACzE,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACpF,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,oBAAoB;YAC5B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS,EAAE,MAAM,CAAC,GAAG;YACrB,QAAQ,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,KAAK,EAAE;YACtE,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAAC,MAA2B,EAAE,WAAoB;QAChF,+DAA+D;QAC/D,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC3E,6BAA6B;QAC7B,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,IAAI,CAAC;gBACH,MAAM,IAAI,CAAC,EAAE,CAAC,MAAM,CAAC,WAAW,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC;YAChD,CAAC;YAAC,MAAM,CAAC;gBACP,2CAA2C;YAC7C,CAAC;QACH,CAAC;QACD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,oBAAoB;YAC5B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS,EAAE,MAAM,CAAC,GAAG;YACrB,QAAQ,EAAE,EAAE;YACZ,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,sEAAsE;IAEtE,wEAAwE;IAChE,KAAK,CAAC,kBAAkB;QAC9B,IAAI,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACxC,OAAO,EAAE,YAAY,EAAE,IAAI,CAAC,YAAY,EAAE,SAAS,EAAE,IAAI,CAAC,SAAS,EAAE,CAAC;QACxE,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW;YAAE,OAAO,IAAI,CAAC;QACnC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,cAAc,CAAC,CAAC;YAC1E,IAAI,CAAC,GAAG;gBAAE,OAAO,IAAI,CAAC;YACtB,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoD,CAAC;YAClF,IAAI,MAAM,CAAC,YAAY,IAAI,MAAM,CAAC,WAAW,EAAE,CAAC;gBAC9C,OAAO,EAAE,YAAY,EAAE,MAAM,CAAC,YAAY,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;YAC9E,CAAC;QACH,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,wEAAwE;IAChE,KAAK,CAAC,iBAAiB,CAC7B,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAqB,OAAO,CAAC,CAAC;QAC/D,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,IAAI,EAAE,CAAC;QAC/C,IAAI,CAAC,KAAK,EAAE,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,uBAAuB,EAAE,EAAE,GAAG,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACxF,qEAAqE;QACrE,oFAAoF;QACpF,MAAM,WAAW,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC;QACjD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,mBAAmB;YAC3B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS,EAAE,MAAM,CAAC,GAAG;YACrB,QAAQ,EAAE,EAAE,WAAW,EAAE;YACzB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,4EAA4E;IACpE,KAAK,CAAC,qBAAqB,CACjC,MAA2B,EAC3B,QAAiB;QAEjB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,kBAAkB,EAAE,CAAC;QACpD,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,iCAAiC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QACtE,CAAC;QAED,aAAa;QACb,IAAI,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;YAC7C,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,gCAAgC,EAAE,EAAE,GAAG,CAAC,CAAC;QAC7E,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACtF,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC;QAE/D,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,MAAM,KAAK,CAAC,+BAA+B,EAAE;gBACvD,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,WAAW,CAAC,YAAY,EAAE;oBACnD,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,IAAI,EAAE,WAAW,CAAC,SAAS;oBAC3B,EAAE,EAAE,KAAK;oBACT,OAAO,EAAE,yBAAyB;oBAClC,IAAI,EAAE;;;oJAGoI,IAAI;;;eAGzI;iBACN,CAAC;aACH,CAAC,CAAC;YACH,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE,CAAC;gBACZ,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,IAAI,EAAE,CAAC;gBAC9B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,+CAA+C,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBAC1I,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,yBAAyB,IAAI,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC;YAC5E,CAAC;QACH,CAAC;QAAC,OAAO,GAAY,EAAE,CAAC;YACtB,MAAM,OAAO,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,mBAAmB,CAAC;YACzE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,OAAO,EAAE,wDAAwD,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YACpH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,EAAE,GAAG,CAAC,CAAC;QACpD,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;QAC1C,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,qFAAqF;IAC7E,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAoB,OAAO,CAAC,CAAC;QAC9D,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;QAE/B,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,+BAA+B,EAAE,EAAE,GAAG,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,QAAQ,EAAE,KAAK,CAAC;QAC9B,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,yBAAyB,EAAE,EAAE,GAAG,CAAC,CAAC;QACtE,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;QAC1D,IAAI,CAAC,QAAQ,IAAI,QAAQ,CAAC,OAAO,KAAK,KAAK,EAAE,CAAC;YAC5C,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,sCAAsC,EAAE,EAAE,GAAG,CAAC,CAAC;QACnF,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,EAAE,aAAa,EAAE,CAAC,EAAE,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACjF,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,mBAAmB;YAC3B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS,EAAE,MAAM,CAAC,GAAG;YACrB,QAAQ,EAAE,EAAE,KAAK,EAAE;YACnB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,sEAAsE;IAE9D,KAAK,CAAC,iBAAiB,CAC7B,MAA2B,EAC3B,GAAQ,EACR,WAAoB,EACpB,OAAwC;QAExC,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC;QAEpD,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC;QACnD,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,IAAI,MAAM,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAE5E,0DAA0D;QAC1D,oEAAoE;QACpE,MAAM,cAAc,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACxD,MAAM,eAAe,GAAG,cAAc,IAAI,cAAc,KAAK,WAAW,CAAC;QACzE,MAAM,gBAAgB,GAAG,OAAO,EAAE,gBAAgB,IAAI,IAAI,CAAC;QAC3D,IAAI,eAAe,IAAI,gBAAgB,IAAI,CAAC,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,CAAC,EAAE,CAAC;YAChG,MAAM,GAAG,GAAG,cAAc,KAAK,KAAK;gBAClC,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,EAAE;gBAChD,CAAC,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,cAAc,CAAC,CAAC;YACjE,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gBAC7B,GAAG,CAAC;gBACJ,GAAG,EAAE,CAAC,CAAC,QAAQ;gBACf,MAAM,EAAE,oCAAoC,CAAC,CAAC,QAAQ,EAAE;gBACxD,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS;gBACrC,GAAG,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,cAAc,CAAC,EAAE,cAAc,EAAE,SAAS,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aACpG,CAAC,CAAC,CAAC;YACJ,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,GAAG,GAAG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YAC9C,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC5E,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE,EAAE,UAAU,EAAE,cAAc,KAAK,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;QAClL,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,WAAW,CAAC,CAAC;YACtE,IAAI,GAAG,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,CAAC;gBAC7B,GAAG,CAAC;gBACJ,GAAG,EAAE,CAAC,CAAC,QAAQ;gBACf,MAAM,EAAE,oCAAoC,CAAC,CAAC,QAAQ,EAAE;gBACxD,SAAS,EAAE,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS;aACtC,CAAC,CAAC,CAAC;YACJ,GAAG,GAAG,IAAI,CAAC,kBAAkB,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;YACxC,GAAG,GAAG,eAAe,CAAC,GAAG,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;YAE9C,MAAM,EAAE,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC;YAC5B,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,IAAI,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE,EAAE,CAAC,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,CAAC;YAC5E,OAAO,IAAI,CAAC,YAAY,CAAC;gBACvB,EAAE,EAAE,IAAI;gBACR,KAAK,EAAE,KAAK;gBACZ,MAAM,EAAE,EAAE,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,QAAQ,EAAE,EAAE,CAAC,QAAQ,EAAE;gBACnE,IAAI,EAAE,QAAQ;aACf,CAAC,CAAC;QACL,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACjF,CAAC;QACF,MAAM,IAAI,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;QACvD,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QAC3D,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,QAAQ,GAAG,aAAa,KAAK,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QACzF,MAAM,cAAc,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,IAAI,SAAS,CAAC;QAE3E,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;QAClI,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,KAAK,EAAE,KAAK,CAAC,GAAG,CAAC,mBAAmB,CAAC;YACrC,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;YACjC,IAAI,EAAE,QAAQ;SACf,CAAC,CAAC;IACL,CAAC;IAEO,kBAAkB,CAAC,OAAc,EAAE,GAAQ;QACjD,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,WAAW,EAAE,CAAC;QAC7D,MAAM,UAAU,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChD,MAAM,aAAa,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC;QACvD,MAAM,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;QAC5D,IAAI,QAAQ,GAAG,OAAO,CAAC;QACvB,IAAI,MAAM;YAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;QAC9N,IAAI,UAAU;YAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC;QACzE,IAAI,aAAa,KAAK,IAAI,IAAI,aAAa,KAAK,SAAS,IAAI,aAAa,KAAK,EAAE;YAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,KAAK,MAAM,CAAC,aAAa,CAAC,CAAC,CAAC;QAC3J,IAAI,YAAY;YAAE,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,cAAc,KAAK,YAAY,CAAC,CAAC;QACvF,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,eAAe,CAC3B,MAA2B,EAC3B,GAAW,EACX,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACnD,GAAG,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;QAE9B,IAAI,WAAW,EAAE,CAAC;YAChB,iFAAiF;YACjF,MAAM,CAAC,UAAU,EAAE,QAAQ,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;gBAC5D,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,WAAW,CAAC;gBAC1C,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC;gBAC5B,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,GAAG,CAAC;aAC9C,CAAC,CAAC;YACH,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAClE,CAAC;YACD,OAAO,IAAI,CAAC,YAAY,CAAC;gBACvB,EAAE,EAAE,IAAI;gBACR,IAAI,EAAE;oBACJ,GAAG,mBAAmB,CAAC;wBACrB,GAAG;wBACH,MAAM,EAAE,QAAQ,EAAE,MAAM,IAAI,IAAI;wBAChC,SAAS,EAAE,QAAQ,EAAE,SAAS,IAAI,IAAI;qBACvC,CAAC;oBACF,QAAQ,EAAE,GAAG;oBACb,IAAI,EAAE,UAAU,CAAC,IAAI;oBACrB,SAAS,EAAE,UAAU,CAAC,SAAS;oBAC/B,QAAQ,EAAE,QAAQ,EAAE,QAAQ,IAAI,IAAI;oBACpC,KAAK,EAAE,QAAQ,EAAE,KAAK,IAAI,IAAI;oBAC9B,cAAc,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI;oBAChD,WAAW;oBACX,iBAAiB,EAAE,sBAAsB,CAAC,WAAW,EAAE,QAAQ,EAAE,cAAc,IAAI,IAAI,EAAE,GAAG,CAAC;iBAC9F;aACF,CAAC,CAAC;QACL,CAAC;QAED,6EAA6E;QAC7E,MAAM,CAAC,IAAI,EAAE,WAAW,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC5C,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC;YAC7B,IAAI,CAAC,KAAK,CAAC,6BAA6B,CAAC,GAAG,CAAC;SAC9C,CAAC,CAAC;QACH,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QACD,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,IAAI,EAAE;gBACJ,GAAG,mBAAmB,CAAC,IAAI,CAAC;gBAC5B,iBAAiB,EAAE,sBAAsB,CAAC,WAAW,EAAE,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE,GAAG,CAAC;aACzF;SACF,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAC5B,MAA2B,EAC3B,SAAiB,EACjB,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,kBAAkB,CAAC,CAAC;QACnD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAmB,OAAO,CAAC,CAAC;QAC7D,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC;QAE1B,IAAI,CAAC,OAAO,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,EAAE,CAAC;YAChE,OAAO,IAAI,CAAC,aAAa,CACvB,qDAAqD,EACrD,GAAG,EACH,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QAC5E,CAAC;QAED,iDAAiD;QACjD,MAAM,UAAU,GAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACvF,MAAM,WAAW,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEjD,mCAAmC;QACnC,IAAI,OAAO,KAAK,OAAO,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YACnD,OAAO,IAAI,CAAC,aAAa,CAAC,sCAAsC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACtF,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAClE,CAAC;YACD,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC;YAChC,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YAE7C,iFAAiF;YACjF,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;gBAC/B,OAAO,IAAI,CAAC,aAAa,CAAC,oEAAoE,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YACpH,CAAC;YAED,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,SAAS,EAAE,WAAW,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;YACnF,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;gBAC9B,MAAM,EAAE,kBAAkB;gBAC1B,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,SAAS;gBACT,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;gBAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,WAAW;aACZ,CAAC,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;QACxD,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,OAAO,GAAG,MAAM,CAAC,IAAI,CAAC;QAC5B,MAAM,WAAW,GAAG,UAAU,CAAC,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;QACxD,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;YAC/B,OAAO,IAAI,CAAC,aAAa,CAAC,oEAAoE,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACpH,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAChE,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,kBAAkB;YAC1B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS;YACT,QAAQ,EAAE,EAAE,OAAO,EAAE,OAAO,EAAE;YAC9B,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,oBAAoB,CAChC,MAA2B,EAC3B,SAAiB,EACjB,OAAgB,EAChB,WAAoB;QAEpB,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACnF,CAAC;QACD,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAwB,OAAO,CAAC,CAAC;QAElE,IAAI,OAAO,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACvC,OAAO,IAAI,CAAC,aAAa,CAAC,8BAA8B,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACrF,CAAC;QAED,IAAI,SAAS,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,wCAAwC,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACxE,CAAC;QAED,MAAM,MAAM,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,mBAAmB,CAAC;QAC3E,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,IAAY,CAAC,CAAC;QAE5D,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC1E,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,cAAc,CAAC,CAAC,CAAC,YAAY;YACrD,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS;YACT,QAAQ,EAAE,EAAE,UAAU,EAAE,MAAM,CAAC,IAAI,EAAE;YACrC,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;QACvD,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,kBAAkB,CAC9B,MAA2B,EAC3B,SAAiB,EACjB,WAAoB;QAEpB,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAE1C,IAAI,SAAS,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAG,EAAE,UAAU,CAAC,CAAC;QACvE,CAAC;QAED,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC1E,IAAI,CAAC,UAAU,EAAE,CAAC;gBAChB,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YAClE,CAAC;YACD,IAAI,UAAU,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;YACzE,CAAC;YACD,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,EAAE,UAAU,CAAC,IAAY,CAAC,CAAC;YAC9E,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,SAAS,EAAE,WAAW,CAAC,CAAC;YAC1D,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;gBAC9B,MAAM,EAAE,aAAa;gBACrB,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,SAAS;gBACT,QAAQ,EAAE,EAAE,WAAW,EAAE,UAAU,CAAC,IAAI,EAAE;gBAC1C,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,WAAW;aACZ,CAAC,CAAC;YACH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;QACzC,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACzE,CAAC;QAED,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,EAAE,MAAM,CAAC,IAAY,CAAC,CAAC;QAE1E,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC;QACvC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,aAAa;YACrB,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS;YACT,QAAQ,EAAE,EAAE,WAAW,EAAE,MAAM,CAAC,IAAI,EAAE,WAAW,EAAE,MAAM,CAAC,QAAQ,EAAE;YACpE,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,uEAAuE;IAE/D,KAAK,CAAC,qBAAqB,CACjC,MAA2B,EAC3B,GAAQ,EACR,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,mBAAmB,CAAC,CAAC,CAAC,+BAA+B;QAEpF,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACjF,CAAC;QAEF,iCAAiC;QACjC,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,GAAE,CAAC,CAAC,CAAC;QAErD,MAAM,EAAE,WAAW,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,CAAC,CAAC;QAEhG,8BAA8B;QAC9B,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,SAAS,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC;YAC1C,GAAG,GAAG;YACN,IAAI,EAAE,GAAG,OAAO,kCAAkC,GAAG,CAAC,EAAE,EAAE;SAC3D,CAAC,CAAC,CAAC;QAEJ,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,WAAW,EAAE,SAAS;YACtB,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;SAClC,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;QAEzD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAK9B,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,aAAa,CACvB,qDAAqD,EACrD,GAAG,EACH,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,yCAAyC;QACzC,yDAAyD;QAEzD,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACtD,IAAI,MAAM,CAAC,MAAM,GAAG,GAAG,EAAE,CAAC;YACxB,OAAO,IAAI,CAAC,aAAa,CAAC,wCAAwC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC/F,CAAC;QAED,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;QACpF,IAAI,WAAW,GAAG,CAAC,IAAI,WAAW,GAAG,GAAG,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC,aAAa,CAAC,uCAAuC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtE,IAAI,OAAO,GAAG,CAAC,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;YACjC,OAAO,IAAI,CAAC,aAAa,CAAC,mCAAmC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC1F,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC;YACnD,IAAI,EAAE,IAAI,CAAC,IAAY;YACvB,MAAM;YACN,UAAU,EAAE,MAAM,CAAC,GAAG;YACtB,OAAO,EAAE,MAAM,CAAC,GAAG,EAAE,qCAAqC;YAC1D,WAAW;YACX,OAAO;YACP,WAAW;SACZ,CAAC,CAAC;QAEH,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,mBAAmB;YAC3B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,YAAY,EAAE,UAAU,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE;YAChF,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,MAAM,OAAO,GAAG,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC;QAC/C,MAAM,IAAI,GAAG,GAAG,OAAO,kCAAkC,UAAU,CAAC,EAAE,EAAE,CAAC;QAEzE,uBAAuB;QACvB,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QAE9D,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,UAAU,EAAE;gBACV,GAAG,UAAU;gBACb,WAAW,EAAE,WAAW,EAAE,QAAQ,IAAI,IAAI;gBAC1C,IAAI;aACL;SACF,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,MAA2B,EAC3B,YAAoB,EACpB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,wBAAwB,CAAC,CAAC;QAEzD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC;QAED,+DAA+D;QAC/D,IAAI,WAAW,IAAI,UAAU,CAAC,YAAY,KAAK,WAAW,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC;QAED,wCAAwC;QACxC,IAAI,MAAM,CAAC,IAAI,KAAK,OAAO,IAAI,UAAU,CAAC,UAAU,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,aAAa,CAAC,uCAAuC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACvF,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,YAAY,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,mBAAmB;YAC3B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,UAAU,CAAC,IAAI,EAAE;YACjD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,uBAAuB,CAAC,YAAoB;QACxD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,CAAC,CAAC;QACjE,CAAC;QAED,mBAAmB;QACnB,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YAC/C,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,eAAe;QACf,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YAChF,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,CAAC;QAC9D,CAAC;QAED,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC,CAAC;QAC/D,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,KAAK,EAAE,IAAI;YACX,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,QAAQ,EAAE,UAAU,CAAC,QAAQ;SAC9B,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,sBAAsB,CAClC,MAA2B,EAC3B,YAAoB,EACpB,WAAoB;QAEpB,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAChE,IAAI,CAAC,UAAU,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC;QAED,+DAA+D;QAC/D,MAAM,cAAc,GAAG,UAAU,CAAC,YAAY,CAAC;QAC/C,IAAI,WAAW,IAAI,cAAc,IAAI,cAAc,KAAK,WAAW,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACtE,CAAC;QAED,4BAA4B;QAC5B,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,IAAI,IAAI,EAAE,EAAE,CAAC;YAC/C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,qCAAqC,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,eAAe,EAAE,CAAC,CAAC;YACzH,OAAO,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,aAAa,CAAC,wBAAwB,EAAE,GAAG,EAAE,oBAAoB,CAAC,CAAC;QACjF,CAAC;QACD,IAAI,UAAU,CAAC,MAAM,KAAK,QAAQ,IAAI,UAAU,CAAC,QAAQ,IAAI,UAAU,CAAC,OAAO,EAAE,CAAC;YAChF,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,iDAAiD,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAE,UAAU,CAAC,QAAQ,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACxK,OAAO,IAAI,CAAC,aAAa,CAAC,mCAAmC,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC3F,CAAC;QAED,iCAAiC;QACjC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,2BAA2B,CAAC,YAAY,CAAC,CAAC;QAC/E,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,+DAA+D,EAAE,GAAG,EAAE,MAAM,EAAE,YAAY,EAAE,CAAC,CAAC;YAC1H,OAAO,IAAI,CAAC,aAAa,CAAC,mCAAmC,EAAE,GAAG,EAAE,mBAAmB,CAAC,CAAC;QAC3F,CAAC;QAED,uCAAuC;QACvC,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;QAC7D,IAAI,OAAO,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;YACnD,MAAM,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,YAAY,EAAE,QAAQ,EAAE,QAAQ,CAAC,CAAC;QAC5E,CAAC;QAED,MAAM,WAAW,GAAG,UAAU,CAAC,IAAI,CAAC;QACpC,MAAM,UAAU,GAA2B,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,CAAC;QACvF,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;QAElD,yDAAyD;QACzD,yEAAyE;QACzE,uEAAuE;QACvE,gFAAgF;QAChF,IAAI,cAAc,EAAE,CAAC;YACnB,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAC5E,IAAI,QAAQ,EAAE,CAAC;gBACb,MAAM,aAAa,GAAG,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrD,IAAI,YAAY,GAAG,aAAa,EAAE,CAAC;oBACjC,MAAM,IAAI,CAAC,KAAK,CAAC,oBAAoB,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;gBAC7F,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAC/B,MAAM,CAAC,GAAG,EACV,cAAc,EACd,WAAW,EACX,UAAU,CAAC,UAAU,EACrB,MAAM,CAAC,GAAG,CACX,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;gBAC9B,MAAM,EAAE,wBAAwB;gBAChC,WAAW,EAAE,MAAM,CAAC,GAAG;gBACvB,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE;gBAC7C,EAAE,EAAE,MAAM,CAAC,EAAE;gBACb,WAAW,EAAE,cAAc;aAC5B,CAAC,CAAC;YAEH,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YACnF,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,eAAe,EAAE,IAAI,IAAI,WAAW,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,gDAAgD;QAChD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,EAAE,IAAmB,CAAC;QAC9C,MAAM,YAAY,GAAG,UAAU,CAAC,WAAW,IAAI,EAAE,CAAC,IAAI,CAAC,CAAC;QAExD,IAAI,YAAY,GAAG,YAAY,EAAE,CAAC;YAChC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,WAAW,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACvE,CAAC;QAED,wCAAwC;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC,MAAM,CAAC,GAAG,EAAE,UAAU,CAAC,UAAU,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAE/E,YAAY;QACZ,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,wBAAwB;YAChC,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,YAAY,EAAE,IAAI,EAAE,WAAW,EAAE;YAC7C,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,YAAY,GAAG,YAAY,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,WAAW,IAAI,WAAW,CAAC,CAAC;QAC3F,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAC;IAC1D,CAAC;IAED,uEAAuE;IAE/D,KAAK,CAAC,mBAAmB,CAC/B,MAA2B,EAC3B,GAAQ,EACR,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC;QACxF,MAAM,QAAQ,GAAG,IAAI,CAAC,GAAG,CACvB,GAAG,EACH,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,UAAU,CAAC,IAAI,IAAI,EAAE,EAAE,CAAC,IAAI,EAAE,CAAC,CACjF,CAAC;QACF,MAAM,MAAM,GAAG,GAAG,CAAC,YAAY,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,SAAS,CAAC;QAE3D,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,CAAC,CAAC;QAC/F,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,IAAI;YACJ,MAAM,EAAE,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE;SAClC,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IAE/D,KAAK,CAAC,uBAAuB,CACnC,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,IAAI,WAAW,EAAE,CAAC;YAChB,OAAO,IAAI,CAAC,aAAa,CAAC,6BAA6B,EAAE,GAAG,EAAE,iBAAiB,CAAC,CAAC;QACnF,CAAC;QACD,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,yBAAyB,CAAC,CAAC;QAE1D,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAAwB,OAAO,CAAC,CAAC;QAClE,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC;QAEjC,IAAI,SAAS,KAAK,MAAM,CAAC,GAAG,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,aAAa,CAAC,uCAAuC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,SAAS,CAAC,CAAC;QACxD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACzE,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,aAAa,CACvB,6CAA6C,EAC7C,GAAG,EACH,kBAAkB,CACnB,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,GAAG,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACtE,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,yBAAyB;YACjC,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,SAAS;YACT,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,QAAQ,EAAE;YACvC,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,uEAAuE;IAE/D,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACrD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,WAAW,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAC;IACnD,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAK9B,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,EAAE,CAAC;YACxC,OAAO,IAAI,CAAC,aAAa,CAAC,iCAAiC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACxF,CAAC;QAED,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QACrF,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9D,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC3E,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;YACvE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3C,OAAO,IAAI,CAAC,aAAa,CAAC,qCAAqC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC5F,CAAC;YACD,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;YACzD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;gBACpD,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC1E,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YACjD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YAC5C,UAAU,EAAE,IAAI,CAAC,UAA8C;YAC/D,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,WAAW;SACZ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAEf,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE;YAClD,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,EAAU,EACV,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,aAAa,CAAC,kCAAkC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClF,CAAC;QAED,wEAAwE;QACxE,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC,aAAa,CACvB,qDAAqD,EACrD,GAAG,EACH,WAAW,CACZ,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YACzF,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAK9B,OAAO,CAAC,CAAC;QAEZ,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC,EAAE,CAAC;YACjF,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,UAAU,GAAG,CAAC,QAAQ,EAAE,SAAS,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;YACrF,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;gBAC1C,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC3E,CAAC;YACD,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,IAAI,IAAI,CAAC,UAAU,KAAK,eAAe,EAAE,CAAC;gBACvE,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC3C,OAAO,IAAI,CAAC,aAAa,CAAC,qCAAqC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;gBAC5F,CAAC;gBACD,MAAM,UAAU,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,CAAC,CAAC;gBACzD,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;oBACpD,OAAO,IAAI,CAAC,aAAa,CAAC,mBAAmB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;gBAC1E,CAAC;YACH,CAAC;QACH,CAAC;QAED,8DAA8D;QAC9D,qFAAqF;QACrF,MAAM,OAAO,GAAmD,EAAE,CAAC;QACnE,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,IAAI,EAAE,CAAC;YAC3D,OAAO,CAAC,IAAI,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;QACxD,CAAC;QACD,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC,UAAU,EAAE,CAAC;YAC7E,OAAO,CAAC,UAAU,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,UAAU,EAAE,EAAE,EAAE,IAAI,CAAC,UAAU,EAAE,CAAC;QAC1E,CAAC;QACD,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;YAC7B,OAAO,CAAC,KAAK,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,IAAI,CAAC,KAAK,EAAE,CAAC;QAC3D,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,EAAE;YACrD,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC;YAC5C,UAAU,EAAE,IAAI,CAAC,UAA0D;YAC3E,KAAK,EAAE,IAAI,CAAC,KAAK;SAClB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAEf,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,OAAO,EAAE;YACnC,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;IACjD,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,EAAU,EACV,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QACD,IAAI,QAAQ,CAAC,WAAW,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,aAAa,CAAC,kCAAkC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClF,CAAC;QAED,4DAA4D;QAC5D,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC,aAAa,CACvB,qDAAqD,EACrD,GAAG,EACH,WAAW,CACZ,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YACzF,OAAO,IAAI,CAAC,aAAa,CAAC,kBAAkB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAC;QAChE,IAAI,SAAS,GAAG,CAAC,EAAE,CAAC;YAClB,OAAO,IAAI,CAAC,aAAa,CACvB,mDAAmD,EACnD,GAAG,EACH,UAAU,CACX,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE;YAC/C,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,sEAAsE;IAE9D,KAAK,CAAC,uBAAuB,CACnC,MAA2B,EAC3B,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QACrD,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,gBAAgB,CAAC,WAAW,CAAC,CAAC;QAC7D,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAChD,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAK9B,OAAO,CAAC,CAAC;QAEZ,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACtB,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,cAAc,EAAE,CAAC;YACzB,OAAO,IAAI,CAAC,aAAa,CAAC,4BAA4B,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACnF,CAAC;QAED,yBAAyB;QACzB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QACrE,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAChF,CAAC;QAED,wBAAwB;QACxB,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC;YAC/C,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,WAAW;SACZ,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAEf,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE;YAC5D,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,EAAU,EACV,OAAgB,EAChB,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,qEAAqE;QACrE,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC,aAAa,CACvB,kDAAkD,EAClD,GAAG,EACH,WAAW,CACZ,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YACzF,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAM9B,OAAO,CAAC,CAAC;QAEZ,2BAA2B;QAC3B,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,aAAa,CAAC,oCAAoC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC3F,CAAC;YACD,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;gBAChC,OAAO,IAAI,CAAC,aAAa,CAAC,qCAAqC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;YACrE,IAAI,CAAC,MAAM,EAAE,CAAC;gBACZ,OAAO,IAAI,CAAC,aAAa,CAAC,yBAAyB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAChF,CAAC;QACH,CAAC;QAED,IAAI,IAAI,CAAC,QAAQ,KAAK,SAAS,IAAI,IAAI,CAAC,QAAQ,GAAG,CAAC,EAAE,CAAC;YACrD,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QAED,8DAA8D;QAC9D,sFAAsF;QACtF,MAAM,OAAO,GAAmD,EAAE,CAAC;QACnE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC,WAAW,EAAE,CAAC;YAChF,OAAO,CAAC,WAAW,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,WAAW,EAAE,EAAE,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC;QAC7E,CAAC;QACD,IAAI,IAAI,CAAC,cAAc,KAAK,SAAS,IAAI,IAAI,CAAC,cAAc,KAAK,QAAQ,CAAC,cAAc,EAAE,CAAC;YACzF,OAAO,CAAC,cAAc,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,cAAc,EAAE,EAAE,EAAE,IAAI,CAAC,cAAc,EAAE,CAAC;QACtF,CAAC;QACD,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,QAAQ,CAAC,OAAO,EAAE,CAAC;YACpE,OAAO,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC;QACjE,CAAC;QAED,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,EAAE;YACnD,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,cAAc,EAAE,IAAI,CAAC,cAAc;YACnC,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,MAAM,EAAE,IAAI,CAAC,MAAM;SACpB,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAEf,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE;YACjC,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;IAC/C,CAAC;IAEO,KAAK,CAAC,wBAAwB,CACpC,MAA2B,EAC3B,EAAU,EACV,WAAoB;QAEpB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,sBAAsB,CAAC,CAAC;QAEvD,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;YACrB,OAAO,IAAI,CAAC,aAAa,CAAC,gCAAgC,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChF,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,eAAe,CAAC,EAAE,CAAC,CAAC;QACtD,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,qEAAqE;QACrE,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,EAAE,CAAC;YACjD,OAAO,IAAI,CAAC,aAAa,CACvB,kDAAkD,EAClD,GAAG,EACH,WAAW,CACZ,CAAC;QACJ,CAAC;QACD,IAAI,WAAW,IAAI,QAAQ,CAAC,WAAW,KAAK,IAAI,IAAI,QAAQ,CAAC,WAAW,KAAK,WAAW,EAAE,CAAC;YACzF,OAAO,IAAI,CAAC,aAAa,CAAC,gBAAgB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QAChE,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,sBAAsB;YAC9B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,WAAW,EAAE,QAAQ,CAAC,WAAW,EAAE;YAC3D,EAAE,EAAE,MAAM,CAAC,EAAE;YACb,WAAW;SACZ,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,sEAAsE;IAEtE,iEAAiE;IACjE,IAAY,mBAAmB;QAC7B,OAAO,IAAI,CAAC,WAAW,IAAI,UAAU,CAAC;IACxC,CAAC;IAED,8FAA8F;IACtF,UAAU,CAAC,KAAgC;QACjD,IAAI,KAAK,IAAI,IAAI;YAAE,OAAO,SAAS,CAAC;QACpC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC;YAAE,OAAO,KAAK,CAAC;QACpC,OAAO,MAAM,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IACjC,CAAC;IAED,mEAAmE;IAC3D,MAAM,CAAU,qBAAqB,GAAG;QAC9C,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,OAAO,EAAE,cAAc;KAC5E,CAAC;IAEF,mFAAmF;IAC3E,aAAa,CAAC,KAAc;QAClC,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAC3D,CAAC;IAED,2DAA2D;IACnD,YAAY,CAAC,GAA4B;QAC/C,MAAM,SAAS,GAAG,CAAC,WAAW,EAAE,aAAa,EAAE,WAAW,CAAC,CAAC;QAC5D,MAAM,MAAM,GAA4B,EAAE,CAAC;QAC3C,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/C,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;gBAC7B,MAAM,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QACD,OAAO,MAAM,CAAC;IAChB,CAAC;IAEO,KAAK,CAAC,iBAAiB,CAAC,MAA2B;QACzD,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAEhD,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC;QAEvD,iCAAiC;QACjC,MAAM,cAAc,GAA4B,EAAE,CAAC;QACnD,IAAI,gBAAgB,GAA4B,EAAE,CAAC;QACnD,IAAI,OAAO,GAA4B,EAAE,CAAC;QAC1C,IAAI,KAAK,GAA4B,EAAE,CAAC;QAExC,KAAK,MAAM,CAAC,IAAI,WAAW,EAAE,CAAC;YAC5B,IAAI,CAAC,CAAC,CAAC,KAAK;gBAAE,SAAS;YACvB,IAAI,CAAC;gBACH,IAAI,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;oBAC/B,MAAM,QAAQ,GAAG,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;oBAChC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAA4B,CAAC;oBAC9D,wBAAwB;oBACxB,IAAI,MAAM,CAAC,YAAY;wBAAE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAsB,CAAC,CAAC;oBAC9F,IAAI,MAAM,CAAC,UAAU;wBAAE,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAoB,CAAC,CAAC;oBACxF,uCAAuC;oBACvC,MAAM,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,IAAI,IAAI,CAAC;oBACxC,MAAM,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,IAAI,GAAG,CAAC;oBACnC,cAAc,CAAC,QAAQ,CAAC,GAAG,MAAM,CAAC;gBACpC,CAAC;qBAAM,IAAI,CAAC,CAAC,GAAG,KAAK,wBAAwB,EAAE,CAAC;oBAC9C,gBAAgB,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBACzC,CAAC;qBAAM,IAAI,CAAC,CAAC,GAAG,KAAK,gBAAgB,EAAE,CAAC;oBACtC,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC;gBAChC,CAAC;qBAAM,IAAI,CAAC,CAAC,GAAG,KAAK,cAAc,EAAE,CAAC;oBACpC,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAA4B,CAAC;oBAC9D,IAAI,MAAM,CAAC,YAAY;wBAAE,MAAM,CAAC,YAAY,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,YAAsB,CAAC,CAAC;oBAC9F,KAAK,GAAG,MAAM,CAAC;gBACjB,CAAC;YACH,CAAC;YAAC,MAAM,CAAC;gBACP,oBAAoB;YACtB,CAAC;QACH,CAAC;QAED,OAAO,IAAI,CAAC,YAAY,CAAC;YACvB,EAAE,EAAE,IAAI;YACR,QAAQ,EAAE,EAAE,cAAc,EAAE,gBAAgB,EAAE,OAAO,EAAE,KAAK,EAAE;SAC/D,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,MAA2B,EAC3B,QAAgB,EAChB,OAAgB;QAEhB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAErD,IAAI,CAAC,WAAW,CAAC,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1D,OAAO,IAAI,CAAC,aAAa,CAAC,qBAAqB,QAAQ,EAAE,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACtF,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,CAA0B,OAAO,CAAC,CAAC,CAAC;QAEvF,6CAA6C;QAC7C,IAAI,QAAQ,KAAK,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBACnD,OAAO,IAAI,CAAC,aAAa,CAAC,6CAA6C,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACpG,CAAC;QACH,CAAC;aAAM,IAAI,QAAQ,KAAK,OAAO,IAAI,QAAQ,KAAK,cAAc,EAAE,CAAC;YAC/D,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,aAAa,CAAC,oCAAoC,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC3F,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACnB,OAAO,IAAI,CAAC,aAAa,CAAC,sBAAsB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;QAED,mDAAmD;QACnD,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,MAAM,UAAU,GAAG,SAAS,QAAQ,EAAE,CAAC;QACvC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YACjF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;YAC5D,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;oBAC1D,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,GAAG,CAAC,YAAY,EAAE,CAAC;wBAC9D,IAAI,CAAC,YAAY,GAAG,GAAG,CAAC,YAAY,CAAC;oBACvC,CAAC;oBACD,IAAI,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,GAAG,CAAC,UAAU,EAAE,CAAC;wBAC1D,IAAI,CAAC,UAAU,GAAG,GAAG,CAAC,UAAU,CAAC;oBACnC,CAAC;gBACH,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC/E,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,uBAAuB;YAC/B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE;YACtC,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,yBAAyB,CACrC,MAA2B,EAC3B,QAAgB;QAEhB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAErD,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,MAAM,UAAU,GAAG,SAAS,QAAQ,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAC9D,IAAI,CAAC,QAAQ,EAAE,CAAC;YACd,OAAO,IAAI,CAAC,aAAa,CAAC,oBAAoB,EAAE,GAAG,EAAE,WAAW,CAAC,CAAC;QACpE,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,EAAE,UAAU,CAAC,CAAC;QAChD,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,uBAAuB;YAC/B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,QAAQ,EAAE;YACtB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,0BAA0B,CACtC,MAA2B,EAC3B,OAAgB;QAEhB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAErD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,CAA0B,OAAO,CAAC,CAAC,CAAC;QAEvF,mEAAmE;QACnE,KAAK,MAAM,GAAG,IAAI,CAAC,SAAS,EAAE,OAAO,EAAE,QAAQ,CAAC,EAAE,CAAC;YACjD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAwC,CAAC;YAC/D,IAAI,KAAK,IAAI,OAAO,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBAChD,OAAO,IAAI,CAAC,aAAa,CAAC,GAAG,GAAG,4BAA4B,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;YACzF,CAAC;QACH,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,wBAAwB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QAC7F,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,mCAAmC;YAC3C,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE;YAC7B,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,uBAAuB,CACnC,MAA2B,EAC3B,OAAgB;QAEhB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,CAAC,CAAC;QAEhD,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,SAAS,CAA2B,OAAO,CAAC,CAAC;QACrE,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;QAE5B,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,GAAG,GAAG,CAAC,IAAI,GAAG,GAAG,EAAE,EAAE,CAAC;YAC7E,OAAO,IAAI,CAAC,aAAa,CAAC,gDAAgD,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACvG,CAAC;QAED,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,gBAAgB,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,UAAU,EAAE,GAAG,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACpG,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,yBAAyB;YACjC,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,UAAU,EAAE,GAAG,EAAE;YAC7B,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAEO,KAAK,CAAC,qBAAqB,CACjC,MAA2B,EAC3B,OAAgB;QAEhB,iBAAiB,CAAC,MAAM,CAAC,IAAI,EAAE,oBAAoB,CAAC,CAAC;QAErD,MAAM,IAAI,GAAG,IAAI,CAAC,YAAY,CAAC,MAAM,IAAI,CAAC,SAAS,CAA0B,OAAO,CAAC,CAAC,CAAC;QACvF,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,GAAG,IAAuD,CAAC;QAE9F,wBAAwB;QACxB,IAAI,CAAC,WAAW,IAAI,CAAC,4BAA4B,CAAC,IAAI,CAAC,WAAW,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC,aAAa,CAAC,uBAAuB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QAC9E,CAAC;QAED,2CAA2C;QAC3C,MAAM,GAAG,GAAG,IAAI,CAAC,mBAAmB,CAAC;QACrC,IAAI,WAAW,GAAG,YAAY,CAAC;QAC/B,IAAI,IAAI,CAAC,aAAa,CAAC,YAAY,CAAC,EAAE,CAAC;YACrC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,CAAC,CAAC;YAChE,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,CAAC;oBACH,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,CAA4B,CAAC;oBAC1D,IAAI,GAAG,CAAC,YAAY;wBAAE,WAAW,GAAG,GAAG,CAAC,YAAsB,CAAC;gBACjE,CAAC;gBAAC,MAAM,CAAC;oBACP,SAAS;gBACX,CAAC;YACH,CAAC;QACH,CAAC;QAED,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,OAAO,IAAI,CAAC,aAAa,CAAC,0BAA0B,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACjF,CAAC;QAED,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,EAAE,cAAc,EAAE,IAAI,CAAC,SAAS,CAAC,EAAE,YAAY,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;QACzH,MAAM,IAAI,CAAC,KAAK,CAAC,cAAc,CAAC;YAC9B,MAAM,EAAE,uBAAuB;YAC/B,WAAW,EAAE,MAAM,CAAC,GAAG;YACvB,QAAQ,EAAE,EAAE,WAAW,EAAE;YACzB,EAAE,EAAE,MAAM,CAAC,EAAE;SACd,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC;IACzC,CAAC;IAED,sEAAsE;IAE9D,KAAK,CAAC,cAAc,CAAC,OAAgB,EAAE,WAAoB,EAAE,IAA+B;QAClG,MAAM,GAAG,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC;QAE3D,uDAAuD;QACvD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;QAClD,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,2BAA2B;QAC3B,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,YAAY,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;QACvD,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,QAAQ,EAAE,EAAE,CAAC,CAAC;QAC9E,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,iBAAiB,EAAE,kEAAkE,EAAE,GAAG,CAAC,CAAC;QACzH,CAAC;QAED,8CAA8C;QAC9C,IAAI,aAAa,GAAI,IAAI,CAAC,IAAe,IAAI,OAAO,CAAC;QACrD,IAAI,WAAW,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,MAAM,mBAAmB,CACxC,IAAI,CAAC,KAAK,EACV,MAAM,CAAC,GAAG,EACV,WAAW,EACX,IAAI,CAAC,IAAI,IAAI,SAAS,CACvB,CAAC;YACF,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,EAAE,UAAU,EAAE,CAAC;gBACnC,OAAO,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,eAAe,EAAE,oCAAoC,EAAE,GAAG,CAAC,CAAC;YACzF,CAAC;YACD,aAAa,GAAG,QAAQ,IAAI,aAAa,CAAC;QAC5C,CAAC;QAED,MAAM,MAAM,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;QACrC,MAAM,KAAK,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC;QAEnC,iDAAiD;QACjD,IAAI,OAAO,GAAuB,IAAI,CAAC,MAAM,IAAI,KAAK,CAAC;QACvD,IAAI,OAAO,GAAuB,oCAAoC,CAAC;QACvE,IAAI,SAA4D,CAAC;QACjE,MAAM,WAAW,GAAG,WAAW,IAAI,IAAI,CAAC,WAAW,CAAC;QACpD,IAAI,WAAW,EAAE,CAAC;YAChB,IAAI,CAAC;gBACH,MAAM,CAAC,WAAW,EAAE,QAAQ,EAAE,QAAQ,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;oBAC1D,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAY,EAAE,cAAc,CAAC;oBACnD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAY,EAAE,WAAW,CAAC;oBAChD,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,WAAY,EAAE,eAAe,CAAC;iBACrD,CAAC,CAAC;gBACH,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC;oBACzC,IAAI,QAAQ,CAAC,IAAI;wBAAE,OAAO,GAAG,QAAQ,CAAC,IAAI,CAAC;gBAC7C,CAAC;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;oBACnC,IAAI,KAAK,CAAC,MAAM;wBAAE,OAAO,GAAG,wCAAwC,IAAI,CAAC,GAAG,EAAE,EAAE,CAAC;gBACnF,CAAC;gBACD,IAAI,QAAQ,EAAE,CAAC;oBACb,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;gBACnC,CAAC;YACH,CAAC;YAAC,MAAM,CAAC,CAAC,kBAAkB,CAAC,CAAC;QAChC,CAAC;QAED,qEAAqE;QACrE,IAAI,YAA0F,CAAC;QAC/F,MAAM,kBAAkB,GAAG,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;QAClE,IAAI,kBAAkB,EAAE,CAAC;YACvB,IAAI,CAAC;gBAAC,YAAY,GAAG,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC;YAAC,CAAC;YAAC,MAAM,CAAC,CAAC,YAAY,CAAC,CAAC;QAC/E,CAAC;QAED,MAAM,IAAI,GAAG,kBAAkB,CAAC;YAC9B,MAAM,EAAE;gBACN,GAAG,EAAE,MAAM,CAAC,GAAG;gBACf,QAAQ,EAAE,IAAI,CAAC,QAAQ,IAAI,SAAS;gBACpC,IAAI,EAAE,aAAa;gBACnB,MAAM,EAAE,oCAAoC,MAAM,CAAC,GAAG,EAAE;aACzD;YACD,QAAQ,EAAE,IAAI,CAAC,OAAO;YACtB,WAAW;YACX,MAAM;YACN,OAAO;YACP,OAAO;YACP,KAAK;YACL,SAAS;YACT,YAAY;YACZ,UAAU,EAAE,IAAI,EAAE,UAAU;SAC7B,CAAC,CAAC;QAEH,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxB,OAAO,EAAE;gBACP,cAAc,EAAE,0BAA0B;gBAC1C,eAAe,EAAE,mBAAmB;aACrC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,cAAuB;QACnD,sEAAsE;QACtE,kDAAkD;QAClD,MAAM,YAAY,GAAG,cAAc,IAAI,IAAI,CAAC,WAAW,CAAC;QACxD,IAAI,iBAAqC,CAAC;QAC1C,IAAI,YAAY,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;YAC7E,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;YACnF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;YACnF,IAAI,OAAO,KAAK,QAAQ,IAAI,UAAU,KAAK,MAAM,IAAI,UAAU,EAAE,CAAC;gBAChE,MAAM,UAAU,GAAG,oBAAoB,UAAU,EAAE,CAAC;gBACpD,iBAAiB,GAAG,CAAC,MAAM,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,UAAU,EAAE,WAAW,CAAC,CAAC,IAAI,SAAS,CAAC;YAC1F,CAAC;QACH,CAAC;QAED,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,CAAC,OAAO,EAAE,EAAE,iBAAiB,EAAE,CAAC,CAAC;QACtE,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxB,OAAO,EAAE;gBACP,cAAc,EAAE,0BAA0B;gBAC1C,eAAe,EAAE,mBAAmB;aACrC;SACF,CAAC,CAAC;IACL,CAAC;IAED,uEAAuE;IAE/D,SAAS,CAAC,MAAc,EAAE,KAAa,EAAE,OAAe,EAAE,GAAQ;QACxE,MAAM,IAAI,GAAG,kBAAkB,CAAC;YAC9B,MAAM;YACN,KAAK;YACL,OAAO;YACP,MAAM,EAAE,EAAE,KAAK,EAAE,gBAAgB,EAAE,IAAI,EAAE,GAAG,EAAE;YAC9C,eAAe,EAAE,MAAM,KAAK,GAAG;gBAC7B,CAAC,CAAC,EAAE,KAAK,EAAE,8BAA8B,EAAE,IAAI,EAAE,aAAa,CAAC,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,CAAC,EAAE;gBAC5F,CAAC,CAAC,SAAS;SACd,CAAC,CAAC;QACH,OAAO,IAAI,QAAQ,CAAC,IAAI,EAAE;YACxB,MAAM;YACN,OAAO,EAAE,EAAE,cAAc,EAAE,0BAA0B,EAAE,eAAe,EAAE,mBAAmB,EAAE;SAC9F,CAAC,CAAC;IACL,CAAC;IAEO,YAAY,CAAC,IAAa,EAAE,MAAM,GAAG,GAAG;QAC9C,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,EAAE;YACxC,MAAM;YACN,OAAO,EAAE;gBACP,cAAc,EAAE,kBAAkB;gBAClC,eAAe,EAAE,mBAAmB;aACrC;SACF,CAAC,CAAC;IACL,CAAC;IAEO,aAAa,CAAC,OAAe,EAAE,MAAc,EAAE,IAAY;QACjE,OAAO,IAAI,CAAC,YAAY,CAAC,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE,MAAM,CAAC,CAAC;IACxE,CAAC;IAEO,KAAK,CAAC,SAAS,CAAI,OAAgB;QACzC,IAAI,CAAC;YACH,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,EAAE,CAAM,CAAC;QACrC,CAAC;QAAC,MAAM,CAAC;YACP,MAAM,IAAI,SAAS,CAAC,mBAAmB,EAAE,GAAG,EAAE,kBAAkB,CAAC,CAAC;QACpE,CAAC;IACH,CAAC;;AAGH,MAAM,SAAU,SAAQ,KAAK;IAGlB;IACA;IAHT,YACE,OAAe,EACR,MAAc,EACd,IAAY;QAEnB,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,WAAM,GAAN,MAAM,CAAQ;QACd,SAAI,GAAJ,IAAI,CAAQ;QAGnB,IAAI,CAAC,IAAI,GAAG,WAAW,CAAC;IAC1B,CAAC;CACF;AAED,MAAM,UAAU,iBAAiB,CAAC,OAA2B;IAC3D,OAAO,IAAI,WAAW,CAAC,OAAO,CAAC,CAAC;AAClC,CAAC;AAED,oEAAoE;AACpE,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,CAAC,sCAAsC,CAAC,CAAC;IACpE,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,EAAE,MAAM,EAAE,IAAI,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,CAAC;IAClE,CAAC;IACD,MAAM,WAAW,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAE,CAAC;IACzB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC;IAC5B,MAAM,KAAK,GAAG,IAAI,UAAU,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAC5C,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACvC,KAAK,CAAC,CAAC,CAAC,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,MAAqB,EAAE,WAAW,EAAE,CAAC;AAC9D,CAAC;AAED;oEACoE;AACpE,SAAS,mBAAmB,CAC1B,IAAO;IAEP,IAAI,CAAC,IAAI,CAAC,GAAG;QAAE,OAAO,IAAI,CAAC;IAC3B,MAAM,CAAC,GAAG,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;IAC3E,OAAO,EAAE,GAAG,IAAI,EAAE,MAAM,EAAE,oCAAoC,IAAI,CAAC,GAAG,GAAG,CAAC,EAAE,EAAE,CAAC;AACjF,CAAC"}
@@ -1,5 +1,5 @@
1
1
  /**
2
2
  * Utility functions — time formatting, clipboard, DID truncation, initials.
3
3
  */
4
- export declare const UTILS_SCRIPT = "\nfunction relativeTime(iso) {\n var diff = Date.now() - new Date(iso).getTime();\n var abs = Math.abs(diff);\n var future = diff < 0;\n var s = Math.floor(abs / 1000);\n var m = Math.floor(s / 60);\n var h = Math.floor(m / 60);\n var d = Math.floor(h / 24);\n var label;\n if (d > 0) label = d + \"d \" + (h % 24) + \"h\";\n else if (h > 0) label = h + \"h \" + (m % 60) + \"m\";\n else if (m > 0) label = m + \" min\";\n else label = \"just now\";\n if (label === \"just now\") return label;\n return future ? \"in \" + label : label + \" ago\";\n}\n\nfunction absoluteTime(iso) {\n var d = new Date(iso);\n var pad = function(n) { return n < 10 ? \"0\" + n : \"\" + n; };\n return d.getFullYear() + \"-\" + pad(d.getMonth() + 1) + \"-\" + pad(d.getDate())\n + \" \" + pad(d.getHours()) + \":\" + pad(d.getMinutes()) + \":\" + pad(d.getSeconds());\n}\n\nfunction copyToClipboard(text) {\n if (navigator.clipboard && navigator.clipboard.writeText) {\n navigator.clipboard.writeText(text).then(function() {\n showToast(\"Copied!\", \"success\");\n }).catch(function() {\n fallbackCopy(text);\n });\n } else {\n fallbackCopy(text);\n }\n}\n\nfunction fallbackCopy(text) {\n var input = document.createElement(\"input\");\n input.value = text;\n document.body.appendChild(input);\n input.select();\n document.execCommand(\"copy\");\n input.remove();\n showToast(\"Copied!\", \"success\");\n}\n\n// Delegate to the canonical implementation from @arcblock/did-connect-core\n// (exposed globally by the <did-address> IIFE bundle as __DidAddressBundle.truncateDid)\nfunction truncateDid(did) {\n return __DidAddressBundle.truncateDid(did);\n}\n\nfunction initials(name) {\n if (!name) return \"?\";\n var parts = name.trim().split(/\\s+/);\n if (parts.length >= 2) return (parts[0][0] + parts[1][0]).toUpperCase();\n return name.slice(0, 2).toUpperCase();\n}\n\nfunction escapeHtml(str) {\n var div = document.createElement(\"div\");\n div.textContent = str;\n return div.innerHTML;\n}\n\n// Generate a shimmer skeleton table: cols = column count, rows = row count\nfunction skeletonTable(cols, rows) {\n var widths = [70, 45, 60, 55, 65, 50, 60, 30];\n var cells = '';\n for (var i = 0; i < cols; i++) {\n cells += '<td><span class=\"skel\" style=\"width:' + widths[i % widths.length] + '%;height:13px;\"></span></td>';\n }\n var row = '<tr class=\"skel-row\">' + cells + '</tr>';\n var tbody = '';\n for (var j = 0; j < rows; j++) tbody += row;\n return '<table class=\"table\"><tbody>' + tbody + '</tbody></table>';\n}\n\n/** Generate shimmer skeleton rows for list-style containers. */\nfunction skeletonRows(rows) {\n var widths = [45, 65, 55];\n var html = '';\n for (var i = 0; i < rows; i++) {\n html += '<div class=\"settings-row\"><span class=\"skel\" style=\"width:' + widths[i % widths.length] + '%;height:13px;\"></span></div>';\n }\n return html;\n}\n\nfunction renderAvatar(avatarUrl, fullName, size) {\n size = size || \"\";\n var cls = \"avatar\" + (size ? \" avatar-\" + size : \"\");\n if (avatarUrl) {\n var sep = avatarUrl.indexOf(\"?\") >= 0 ? \"&\" : \"?\";\n var src = avatarUrl + sep + \"t=\" + Date.now() + (size === \"sm\" ? \"&s=64\" : \"\");\n return '<div class=\"' + cls + '\">'\n + '<img src=\"' + escapeHtml(src) + '\" '\n + 'onerror=\"this.style.display=\\'none\\';this.nextSibling.style.display=\\'flex\\'\">'\n + '<span class=\"avatar-fallback\" style=\"display:none\">' + escapeHtml(initials(fullName)) + '</span>'\n + '</div>';\n }\n return '<div class=\"' + cls + '\"><span class=\"avatar-fallback\">' + escapeHtml(initials(fullName)) + '</span></div>';\n}\n";
4
+ export declare const UTILS_SCRIPT = "\nfunction relativeTime(iso) {\n var diff = Date.now() - new Date(iso).getTime();\n var abs = Math.abs(diff);\n var future = diff < 0;\n var s = Math.floor(abs / 1000);\n var m = Math.floor(s / 60);\n var h = Math.floor(m / 60);\n var d = Math.floor(h / 24);\n var label;\n if (d > 0) label = d + \"d \" + (h % 24) + \"h\";\n else if (h > 0) label = h + \"h \" + (m % 60) + \"m\";\n else if (m > 0) label = m + \" min\";\n else label = \"just now\";\n if (label === \"just now\") return label;\n return future ? \"in \" + label : label + \" ago\";\n}\n\nfunction absoluteTime(iso) {\n var d = new Date(iso);\n var pad = function(n) { return n < 10 ? \"0\" + n : \"\" + n; };\n return d.getFullYear() + \"-\" + pad(d.getMonth() + 1) + \"-\" + pad(d.getDate())\n + \" \" + pad(d.getHours()) + \":\" + pad(d.getMinutes()) + \":\" + pad(d.getSeconds());\n}\n\nfunction copyToClipboard(text) {\n if (navigator.clipboard && navigator.clipboard.writeText) {\n navigator.clipboard.writeText(text).then(function() {\n showToast(\"Copied!\", \"success\");\n }).catch(function() {\n fallbackCopy(text);\n });\n } else {\n fallbackCopy(text);\n }\n}\n\nfunction fallbackCopy(text) {\n var input = document.createElement(\"input\");\n input.value = text;\n document.body.appendChild(input);\n input.select();\n document.execCommand(\"copy\");\n input.remove();\n showToast(\"Copied!\", \"success\");\n}\n\n// Delegate to the canonical implementation from @arcblock/did-connect-core\n// (exposed globally by the <did-address> IIFE bundle as __DidAddressBundle.truncateDid)\nfunction truncateDid(did) {\n return __DidAddressBundle.truncateDid(did);\n}\n\nfunction initials(name) {\n if (!name) return \"?\";\n var parts = name.trim().split(/\\s+/);\n if (parts.length >= 2) return (parts[0][0] + parts[1][0]).toUpperCase();\n return name.slice(0, 2).toUpperCase();\n}\n\nfunction escapeHtml(str) {\n var div = document.createElement(\"div\");\n div.textContent = str;\n // The DOM round-trip above only neutralizes & < > (per HTML text-node\n // serialization rules); quotes are not special in text content, so a raw\n // '\"' / \"'\" survives and can break out of a quoted HTML attribute\n // (e.g. <img src=\"...\">, onclick=\"fn('...')\"). Escape them explicitly.\n return div.innerHTML.replace(/\"/g, \"&quot;\").replace(/'/g, \"&#39;\");\n}\n\n// Generate a shimmer skeleton table: cols = column count, rows = row count\nfunction skeletonTable(cols, rows) {\n var widths = [70, 45, 60, 55, 65, 50, 60, 30];\n var cells = '';\n for (var i = 0; i < cols; i++) {\n cells += '<td><span class=\"skel\" style=\"width:' + widths[i % widths.length] + '%;height:13px;\"></span></td>';\n }\n var row = '<tr class=\"skel-row\">' + cells + '</tr>';\n var tbody = '';\n for (var j = 0; j < rows; j++) tbody += row;\n return '<table class=\"table\"><tbody>' + tbody + '</tbody></table>';\n}\n\n/** Generate shimmer skeleton rows for list-style containers. */\nfunction skeletonRows(rows) {\n var widths = [45, 65, 55];\n var html = '';\n for (var i = 0; i < rows; i++) {\n html += '<div class=\"settings-row\"><span class=\"skel\" style=\"width:' + widths[i % widths.length] + '%;height:13px;\"></span></div>';\n }\n return html;\n}\n\nfunction renderAvatar(avatarUrl, fullName, size) {\n size = size || \"\";\n var cls = \"avatar\" + (size ? \" avatar-\" + size : \"\");\n if (avatarUrl) {\n var sep = avatarUrl.indexOf(\"?\") >= 0 ? \"&\" : \"?\";\n var src = avatarUrl + sep + \"t=\" + Date.now() + (size === \"sm\" ? \"&s=64\" : \"\");\n return '<div class=\"' + cls + '\">'\n + '<img src=\"' + escapeHtml(src) + '\" '\n + 'onerror=\"this.style.display=\\'none\\';this.nextSibling.style.display=\\'flex\\'\">'\n + '<span class=\"avatar-fallback\" style=\"display:none\">' + escapeHtml(initials(fullName)) + '</span>'\n + '</div>';\n }\n return '<div class=\"' + cls + '\"><span class=\"avatar-fallback\">' + escapeHtml(initials(fullName)) + '</span></div>';\n}\n";
5
5
  //# sourceMappingURL=utils.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/pages/admin/scripts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,YAAY,6nHAuGxB,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../../src/pages/admin/scripts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,eAAO,MAAM,YAAY,g+HA2GxB,CAAC"}
@@ -64,7 +64,11 @@ function initials(name) {
64
64
  function escapeHtml(str) {
65
65
  var div = document.createElement("div");
66
66
  div.textContent = str;
67
- return div.innerHTML;
67
+ // The DOM round-trip above only neutralizes & < > (per HTML text-node
68
+ // serialization rules); quotes are not special in text content, so a raw
69
+ // '"' / "'" survives and can break out of a quoted HTML attribute
70
+ // (e.g. <img src="...">, onclick="fn('...')"). Escape them explicitly.
71
+ return div.innerHTML.replace(/"/g, "&quot;").replace(/'/g, "&#39;");
68
72
  }
69
73
 
70
74
  // Generate a shimmer skeleton table: cols = column count, rows = row count
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/pages/admin/scripts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAuGpC,CAAC"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../src/pages/admin/scripts/utils.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,MAAM,CAAC,MAAM,YAAY,GAAG,QAAQ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2GpC,CAAC"}
@@ -250,7 +250,7 @@ function renderNavList() {
250
250
  }
251
251
 
252
252
  function escapeHtml(str) {
253
- return String(str).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;");
253
+ return String(str).replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#39;");
254
254
  }
255
255
 
256
256
  function addNavItem() {
@@ -3,6 +3,6 @@
3
3
  */
4
4
  type TFn = (key: string, params?: Record<string, string>) => string;
5
5
  export declare function membersTabHtml(t: TFn): string;
6
- export declare const MEMBERS_TAB_SCRIPT = "\nvar membersPage = 1;\nvar membersPageSize = 20;\nvar memberSearchTimeout = null;\nvar currentMembersList = [];\nvar selectedMember = null;\nvar __membersAggregated = false;\n// Sort state: empty string = default (server decides + self-first on client).\n// Three-state click cycle: (none) \u2192 desc \u2192 asc \u2192 (none).\n// Persisted in location.search as sortBy/sortOrder so it survives refresh + share.\nvar membersSortBy = \"\";\nvar membersSortOrder = \"\";\nvar MEMBERS_SORT_VALID = [\"name\", \"role\", \"status\", \"source\", \"joined\"];\n\n/** Populate module sort state from the current URL query string. Idempotent. */\nfunction readMembersSortFromURL() {\n membersSortBy = \"\";\n membersSortOrder = \"\";\n var params = new URLSearchParams(location.search);\n var by = params.get(\"sortBy\");\n var order = params.get(\"sortOrder\");\n if (by && MEMBERS_SORT_VALID.indexOf(by) >= 0) {\n membersSortBy = by;\n membersSortOrder = (order === \"asc\" || order === \"desc\") ? order : \"desc\";\n }\n}\n\n/** Write current sort state back to location.search without reloading. */\nfunction writeMembersSortToURL() {\n var params = new URLSearchParams(location.search);\n if (membersSortBy) {\n params.set(\"sortBy\", membersSortBy);\n params.set(\"sortOrder\", membersSortOrder || \"desc\");\n } else {\n params.delete(\"sortBy\");\n params.delete(\"sortOrder\");\n }\n var qs = params.toString();\n var newUrl = location.pathname + (qs ? \"?\" + qs : \"\") + location.hash;\n history.replaceState(null, \"\", newUrl);\n}\n\n/** Cycle sort state for a column key and reload. */\nfunction toggleSort(key) {\n if (membersSortBy !== key) {\n membersSortBy = key;\n membersSortOrder = \"desc\";\n } else if (membersSortOrder === \"desc\") {\n membersSortOrder = \"asc\";\n } else {\n // Third click \u2014 back to default.\n membersSortBy = \"\";\n membersSortOrder = \"\";\n }\n writeMembersSortToURL();\n loadMembers(1);\n}\n\n/** Render a <th> with click-to-sort behavior. */\nfunction sortableTh(key, label, extraClass) {\n var isActive = membersSortBy === key;\n var arrow;\n if (isActive) {\n arrow = membersSortOrder === \"asc\"\n ? '<span class=\"sort-arrow sort-arrow-active\">\\u2191</span>'\n : '<span class=\"sort-arrow sort-arrow-active\">\\u2193</span>';\n } else {\n arrow = '<span class=\"sort-arrow\">\\u2195</span>';\n }\n var cls = \"sortable\" + (isActive ? \" sort-active\" : \"\") + (extraClass ? \" \" + extraClass : \"\");\n return '<th class=\"' + cls + '\" onclick=\"toggleSort(\\'' + key + '\\')\">' + label + arrow + '</th>';\n}\n\nfunction providerLabel(sp) {\n if (!sp) return \"\\u2014\";\n var key = \"members.providers.\" + sp;\n var val = __t(key);\n return val !== key ? val : sp;\n}\n\nfunction debouncedMemberSearch() {\n clearTimeout(memberSearchTimeout);\n memberSearchTimeout = setTimeout(function() { loadMembers(1); }, 300);\n}\n\n// Load registered instances for the filter dropdown (system admin only)\nvar __instanceNames = {};\nvar __instanceFilterInitialized = false;\nasync function initInstanceFilter() {\n if (__instanceFilterInitialized) return;\n try {\n // Best-effort: this endpoint is system-admin-only. Instance-scoped owners/admins\n // get 403 here, which is expected \u2014 fail silently (no error toast).\n var data = await api(\"GET\", \"/../admin/instances\", undefined, { silent: true });\n if (data.ok && data.instances && data.instances.length > 0) {\n __instanceFilterInitialized = true;\n var sel = document.getElementById(\"members-instance-filter\");\n data.instances.forEach(function(inst) {\n __instanceNames[inst.instanceDid] = inst.appName || inst.instanceDid.substring(0, 16);\n var opt = document.createElement(\"option\");\n opt.value = inst.instanceDid;\n opt.textContent = __instanceNames[inst.instanceDid];\n sel.appendChild(opt);\n });\n sel.style.display = \"\";\n }\n } catch(e) { /* not admin or no instances */ }\n}\n\n// Also support specific instance filter via query param\n// When ?instance=z1xxx, team handler needs to use that instanceDid\n\nasync function loadMembers(page) {\n membersPage = page || 1;\n var instanceFilter = document.getElementById(\"members-instance-filter\").value;\n var qs = \"?page=\" + membersPage + \"&pageSize=\" + membersPageSize;\n // System view (\"\") \u2192 use defaultInstanceDid so we query membership, not global users\n if (instanceFilter === \"\" && __pageData.instanceDid) {\n qs += \"&instance=\" + encodeURIComponent(__pageData.instanceDid);\n } else if (instanceFilter) {\n qs += \"&instance=\" + encodeURIComponent(instanceFilter);\n }\n var search = document.getElementById(\"members-search\").value.trim();\n if (search) qs += \"&search=\" + encodeURIComponent(search);\n var role = document.getElementById(\"members-role-filter\").value;\n if (role) qs += \"&role=\" + encodeURIComponent(role);\n var status = document.getElementById(\"members-status-filter\").value;\n if (status !== \"\") qs += \"&approved=\" + status;\n var source = document.getElementById(\"members-source-filter\").value;\n if (source) qs += \"&sourceProvider=\" + encodeURIComponent(source);\n if (membersSortBy) {\n qs += \"&sortBy=\" + encodeURIComponent(membersSortBy);\n qs += \"&sortOrder=\" + encodeURIComponent(membersSortOrder || \"desc\");\n }\n\n document.getElementById(\"members-table-wrap\").innerHTML = skeletonTable(8, 6);\n document.getElementById(\"members-pagination\").innerHTML = \"\";\n var data = await api(\"GET\", \"/members\" + qs);\n if (!data.ok) {\n document.getElementById(\"members-table-wrap\").innerHTML = '<div class=\"empty-state\"><div class=\"empty-state-icon\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M12 8v4m0 4h.01\"/></svg></div><div class=\"empty-state-title\">' + __t(\"members.loadFailed\") + '</div></div>';\n return;\n }\n __membersAggregated = !!data.aggregated;\n // Only pin the caller to the top when using the default (server) order.\n // Under explicit sort, honor the user's intent without re-shuffling.\n if (membersSortBy) {\n currentMembersList = data.users || [];\n } else {\n currentMembersList = (data.users || []).slice().sort(function(a, b) {\n if (a.did === __caller.did) return -1;\n if (b.did === __caller.did) return 1;\n return (a.createdAt || 0) - (b.createdAt || 0);\n });\n }\n renderMembersTable(currentMembersList, data.paging);\n updateTransferSection(data.users);\n}\n\nfunction renderMembersTable(users, paging) {\n var wrap = document.getElementById(\"members-table-wrap\");\n if (!users || users.length === 0) {\n wrap.innerHTML = '<div class=\"empty-state\"><div class=\"empty-state-icon\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"/><circle cx=\"9\" cy=\"7\" r=\"4\"/></svg></div><div class=\"empty-state-title\">' + __t(\"members.noMembers\") + '</div><div class=\"empty-state-desc\">' + __t(\"members.noMembersHint\") + '</div></div>';\n document.getElementById(\"members-pagination\").innerHTML = \"\";\n return;\n }\n\n var instanceSel = document.getElementById(\"members-instance-filter\");\n var instanceVisible = instanceSel && instanceSel.style.display !== 'none';\n var showInstance = instanceVisible && instanceSel.value === \"all\";\n var html = '<table class=\"table\"><thead><tr>';\n html += sortableTh(\"name\", __t(\"members.col.member\"));\n html += sortableTh(\"role\", __t(\"members.col.role\"));\n if (showInstance) html += '<th>' + __t(\"members.col.instance\") + '</th>';\n html += sortableTh(\"source\", __t(\"members.col.source\"), \"col-hide-sm\");\n html += sortableTh(\"status\", __t(\"members.col.status\"), \"col-hide-sm\");\n html += sortableTh(\"joined\", __t(\"members.col.joined\"), \"col-hide-md\");\n // Registered/Last Login From columns removed \u2014 domain info not meaningful in Worker context\n html += '<th></th></tr></thead><tbody>';\n users.forEach(function(u) {\n var userDid = u.did || u.user_did || '';\n var av = renderAvatar(u.avatar, u.fullName, \"sm\");\n var name = u.fullName ? escapeHtml(u.fullName) : '<span class=\"text-muted\">(unnamed)</span>';\n var did = '<did-address did=\"' + escapeHtml(userDid) + '\" compact></did-address>';\n var roleBadge = '<span class=\"badge badge-' + (u.role || \"guest\") + '\">' + __t(\"common.\" + (u.role || \"guest\")) + '</span>';\n var statusBadge = u.approved !== undefined ? (u.approved ? '<span class=\"badge badge-active\">' + __t(\"common.active\") + '</span>' : '<span class=\"badge badge-blocked\">' + __t(\"common.blocked\") + '</span>') : '<span class=\"text-muted\">\u2014</span>';\n var joined = (u.createdAt || u.joined_at) ? '<span class=\"cell-date\">' + escapeHtml(relativeTime(u.createdAt || u.joined_at)) + '</span>' : '<span class=\"text-muted\">\u2014</span>';\n html += '<tr style=\"cursor:pointer\" onclick=\"openMemberDetail(\\'' + escapeHtml(userDid) + '\\')\">';\n html += '<td><div class=\"member-identity\">' + av + '<div><div class=\"member-name\">' + name + '</div><div class=\"member-email\">' + did + '</div></div></div></td>';\n html += '<td>' + roleBadge + '</td>';\n if (showInstance) {\n if (__membersAggregated && u.instance_count > 1) {\n html += '<td><a href=\"javascript:void(0)\" onclick=\"event.stopPropagation();openMemberDetail(\\'' + escapeHtml(userDid) + '\\')\" style=\"color:var(--blue);font-size:14px;text-decoration:none\">' + u.instance_count + ' ' + __t(\"members.instances\") + '</a></td>';\n } else {\n var instDid = (__membersAggregated && u.instances && u.instances.length === 1) ? u.instances[0].instance_did : (u.instance_did || '');\n var instName = __instanceNames[instDid] || '';\n if (!instName) instName = instDid ? __t(\"members.currentInstance\") : '\u2014';\n html += '<td><div>' + escapeHtml(instName);\n if (instDid) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\" onclick=\"event.stopPropagation()\"><did-address did=\"' + escapeHtml(instDid) + '\" compact></did-address></div>';\n html += '</div></td>';\n }\n }\n var sourceBadge = '<span class=\"text-muted\">' + escapeHtml(providerLabel(u.sourceProvider)) + '</span>';\n html += '<td class=\"col-hide-sm\">' + sourceBadge + '</td>';\n html += '<td class=\"col-hide-sm\">' + statusBadge + '</td>';\n html += '<td class=\"col-hide-md\">' + joined + '</td>';\n // Actions: only for current instance members, not cross-instance\n var canOperate = !instanceVisible || (instanceVisible && instanceSel.value === '');\n // In aggregated mode, only allow actions on users whose instance matches current system\n if (__membersAggregated) canOperate = false;\n html += '<td class=\"action-cell\">' + (canOperate ? renderMemberActions(u) : '') + '</td>';\n html += '</tr>';\n });\n html += '</tbody></table>';\n wrap.innerHTML = html;\n\n renderPagination(\"members-pagination\", paging, loadMembers);\n}\n\nfunction renderMemberActions(u) {\n var isOwner = __caller.role === \"owner\";\n var isAdmin = __caller.role === \"admin\";\n var isSelf = u.did === __caller.did;\n var ROLE_LEVEL = { owner: 3, admin: 2, member: 1, guest: 0 };\n var callerLevel = ROLE_LEVEL[__caller.role] || 0;\n var targetLevel = ROLE_LEVEL[u.role] || 0;\n // Can only act on members with lower privilege\n var canManage = !isSelf && targetLevel < callerLevel;\n var items = [];\n\n // Change role: can manage lower-level members\n if (canManage) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();openChangeRoleForDid(\\'' + escapeHtml(u.did) + '\\')\">' + __t(\"members.changeRole\") + '</button>');\n }\n if (canManage && u.approved) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();blockMember(\\'' + escapeHtml(u.did) + '\\',\\'' + escapeHtml(u.fullName || u.did) + '\\')\">' + __t(\"members.block\") + '</button>');\n }\n if (canManage && !u.approved) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();unblockMember(\\'' + escapeHtml(u.did) + '\\',\\'' + escapeHtml(u.fullName || u.did) + '\\')\">' + __t(\"members.unblock\") + '</button>');\n }\n if (items.length > 0 && canManage) {\n items.push('<div class=\"action-menu-sep\"></div>');\n }\n if (canManage) {\n items.push('<button class=\"action-menu-item danger\" onclick=\"event.stopPropagation();removeMember(\\'' + escapeHtml(u.did) + '\\',\\'' + escapeHtml(u.fullName || u.did) + '\\')\">' + __t(\"members.remove\") + '</button>');\n }\n\n if (items.length === 0) return \"\";\n return '<button class=\"action-trigger\" onclick=\"event.stopPropagation();toggleActionMenu(this)\">\u22EF</button><div class=\"action-menu\">' + items.join(\"\") + '</div>';\n}\n\nfunction toggleActionMenu(trigger) {\n var menu = trigger.nextElementSibling;\n var wasOpen = menu.classList.contains(\"open\");\n // Close all menus first\n document.querySelectorAll(\".action-menu.open\").forEach(function(m) { m.classList.remove(\"open\"); });\n if (!wasOpen) menu.classList.toggle(\"open\");\n}\n\nasync function openMemberDetail(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n if (!u) return;\n selectedMember = u;\n\n // Fetch full member info (with connectedAccounts) from API.\n // Falls back to in-memory list data if the request fails.\n var detail = u;\n try {\n var resp = await api(\"GET\", \"/members/\" + encodeURIComponent(did));\n if (resp && resp.ok && resp.user) {\n // Merge: in-memory list has fields the API may omit (instances, passkeyCount in some paths).\n detail = Object.assign({}, u, resp.user);\n selectedMember = detail;\n }\n } catch (e) {}\n\n var body = document.getElementById(\"member-detail-body\");\n var html = '<div class=\"profile-header\">' + renderAvatar(detail.avatar, detail.fullName) + '<div>';\n html += '<div style=\"font-weight:500;font-size:16px;color:var(--text-white)\">' + escapeHtml(detail.fullName || \"(unnamed)\") + '</div>';\n html += '<did-address did=\"' + escapeHtml(detail.did) + '\" compact></did-address>';\n html += '</div></div>';\n\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailRole\") + '</span><span class=\"settings-value\"><span class=\"badge badge-' + (detail.role || \"guest\") + '\">' + __t(\"common.\" + (detail.role || \"guest\")) + '</span></span></div>';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailStatus\") + '</span><span class=\"settings-value\">' + (detail.approved ? '<span class=\"badge badge-active\">' + __t(\"common.active\") + '</span>' : '<span class=\"badge badge-blocked\">' + __t(\"common.blocked\") + '</span>') + '</span></div>';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailSource\") + '</span><span class=\"settings-value\">' + escapeHtml(providerLabel(detail.sourceProvider)) + '</span></div>';\n if (detail.email) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailEmail\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.email) + '</span></div>';\n if (detail.inviterName) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailInvitedBy\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.inviterName) + '</span></div>';\n if (detail.createdAt) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailJoined\") + '</span><span class=\"settings-value\">' + escapeHtml(absoluteTime(detail.createdAt)) + '</span></div>';\n if (detail.lastLoginAt) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailLastLogin\") + '</span><span class=\"settings-value\">' + escapeHtml(absoluteTime(detail.lastLoginAt)) + '</span></div>';\n if (detail.sourceDomain) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailRegisteredFrom\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.sourceDomain) + '</span></div>';\n if (detail.lastLoginDomain) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailLastLoginFrom\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.lastLoginDomain) + '</span></div>';\n if (detail.passkeyCount !== undefined) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailPasskeys\") + '</span><span class=\"settings-value\">' + detail.passkeyCount + '</span></div>';\n html += '</div>';\n\n // Connected Accounts (read-only)\n if (detail.connectedAccounts && detail.connectedAccounts.length > 0) {\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-card-header\"><span>' + __t(\"members.detailConnectedAccounts\") + ' (' + detail.connectedAccounts.length + ')</span></div>';\n html += '<div style=\"max-height:240px;overflow-y:auto\">';\n detail.connectedAccounts.forEach(function(a) {\n var label = providerLabel(a.provider);\n var info = '';\n if (a.userInfo && a.userInfo.name) info = a.userInfo.name;\n else if (a.userInfo && a.userInfo.email) info = a.userInfo.email;\n else if (a.id) info = a.id;\n html += '<div class=\"settings-row\" style=\"gap:12px;align-items:flex-start\">';\n html += '<div style=\"flex:1;min-width:0\">';\n html += '<div style=\"font-size:14px;font-weight:500;color:var(--text)\">' + escapeHtml(label);\n if (a.isMain) html += ' <span class=\"badge badge-active\" style=\"font-size:10px;padding:1px 6px;\">' + __t(\"profile.mainAccount\") + '</span>';\n html += '</div>';\n if (info) html += '<div style=\"font-size:12px;color:var(--text-secondary);margin-top:2px\">' + escapeHtml(info) + '</div>';\n if (a.did) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\"><did-address did=\"' + escapeHtml(a.did) + '\" compact></did-address></div>';\n html += '</div>';\n if (a.lastLoginAt) html += '<div style=\"font-size:12px;color:var(--text-secondary);flex-shrink:0\">' + escapeHtml(relativeTime(a.lastLoginAt)) + '</div>';\n html += '</div>';\n });\n html += '</div></div>';\n }\n\n // Instance memberships (aggregated mode)\n if (detail.instances && detail.instances.length > 0) {\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-card-header\"><span>' + __t(\"members.instanceMemberships\") + ' (' + detail.instances.length + ')</span></div>';\n html += '<div style=\"max-height:240px;overflow-y:auto\">';\n detail.instances.forEach(function(inst) {\n var instName = __instanceNames[inst.instance_did] || '';\n var instDid = inst.instance_did || '';\n html += '<div class=\"settings-row\" style=\"gap:12px\">';\n html += '<div style=\"flex:1;min-width:0\"><div style=\"font-size:14px;font-weight:500;color:var(--text)\">' + escapeHtml(instName || __t(\"members.currentInstance\")) + '</div>';\n if (instDid) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\"><did-address did=\"' + escapeHtml(instDid) + '\" compact></did-address></div>';\n html += '</div>';\n html += '<div style=\"display:flex;align-items:center;gap:8px;flex-shrink:0\"><span class=\"badge badge-' + inst.role + '\">' + __t(\"common.\" + inst.role) + '</span>';\n if (inst.joined_at) html += '<span style=\"font-size:12px;color:var(--text-secondary)\">' + escapeHtml(relativeTime(inst.joined_at)) + '</span>';\n html += '</div></div>';\n });\n html += '</div></div>';\n }\n\n body.innerHTML = html;\n\n // Change role: mirror list's canOperate + renderMemberActions logic exactly.\n // Use post-merge detail so role/did reflect the latest API response.\n var changeRoleBtn = document.getElementById(\"member-detail-change-role\");\n var instanceSel = document.getElementById(\"members-instance-filter\");\n var instanceVisible = instanceSel && instanceSel.style.display !== 'none';\n var canOperate = !instanceVisible || (instanceVisible && instanceSel.value === '');\n if (__membersAggregated) canOperate = false;\n var isSelf = detail.did === __caller.did;\n var ROLE_LEVEL = { owner: 3, admin: 2, member: 1, guest: 0 };\n var callerLevel = ROLE_LEVEL[__caller.role] || 0;\n var targetLevel = ROLE_LEVEL[detail.role] || 0;\n var canChangeRole = canOperate && !isSelf && targetLevel < callerLevel;\n if (canChangeRole) {\n changeRoleBtn.classList.remove(\"hidden\");\n } else {\n changeRoleBtn.classList.add(\"hidden\");\n }\n\n showDialog(\"member-detail-dialog\");\n}\n\nfunction openChangeRoleForDid(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n if (!u) return;\n selectedMember = u;\n openChangeRoleDialog();\n}\n\nfunction openChangeRoleDialog() {\n if (!selectedMember) return;\n document.getElementById(\"change-role-title\").textContent = __t(\"members.changeRole\");\n document.getElementById(\"change-role-subtitle\").textContent = __t(\"members.changeRoleFor\", { name: selectedMember.fullName || truncateDid(selectedMember.did) });\n // Show/hide role options based on caller's level (only owner can assign admin)\n var radios = document.querySelectorAll('input[name=\"new-role\"]');\n radios.forEach(function(r) {\n r.checked = r.value === selectedMember.role;\n var label = r.closest('label');\n if (label) {\n if (r.value === 'admin' && __caller.role !== 'owner') label.style.display = 'none';\n else label.style.display = '';\n }\n });\n closeDialog(\"member-detail-dialog\");\n showDialog(\"change-role-dialog\");\n}\n\nasync function saveRoleChange() {\n if (!selectedMember) return;\n var selected = document.querySelector('input[name=\"new-role\"]:checked');\n if (!selected) return;\n var newRole = selected.value;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(selectedMember.did) + \"/role\", { role: newRole });\n if (data.ok) {\n showToast(__t(\"members.roleUpdated\"), \"success\");\n closeDialog(\"change-role-dialog\");\n loadMembers(membersPage);\n }\n}\n\nasync function blockMember(did, name) {\n var ok = await confirmDialog({ title: __t(\"members.blockTitle\"), message: __t(\"members.blockMsg\", { name: name }), confirmLabel: __t(\"members.blockBtn\"), danger: true });\n if (!ok) return;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(did) + \"/approval\", { approved: false });\n if (data.ok) { showToast(__t(\"members.blockSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nasync function unblockMember(did, name) {\n var ok = await confirmDialog({ title: __t(\"members.unblockTitle\"), message: __t(\"members.unblockMsg\", { name: name }), confirmLabel: __t(\"members.unblock\") });\n if (!ok) return;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(did) + \"/approval\", { approved: true });\n if (data.ok) { showToast(__t(\"members.unblockSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nasync function removeMember(did, name) {\n var ok = await confirmDialog({ title: __t(\"members.removeTitle\"), message: __t(\"members.removeMsg\", { name: name }), confirmLabel: __t(\"members.remove\"), danger: true });\n if (!ok) return;\n var data = await api(\"DELETE\", \"/members/\" + encodeURIComponent(did));\n if (data.ok) { showToast(__t(\"members.removeSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nfunction updateTransferSection(users) {\n var section = document.getElementById(\"ownership-transfer-section\");\n if (__caller.role !== \"owner\") {\n section.classList.add(\"hidden\");\n return;\n }\n section.classList.remove(\"hidden\");\n var select = document.getElementById(\"transfer-target\");\n var html = '<option value=\"\">' + __t(\"members.transferSelect\") + '</option>';\n users.forEach(function(u) {\n if (u.did !== __caller.did && u.approved && u.role !== \"owner\") {\n html += '<option value=\"' + escapeHtml(u.did) + '\">' + escapeHtml(u.fullName || truncateDid(u.did)) + ' (' + u.role + ')</option>';\n }\n });\n select.innerHTML = html;\n}\n\nasync function handleTransferOwnership() {\n var target = document.getElementById(\"transfer-target\").value;\n if (!target) { showToast(__t(\"members.selectMemberFirst\"), \"error\"); return; }\n var targetUser = currentMembersList.find(function(u) { return u.did === target; });\n var name = targetUser ? (targetUser.fullName || truncateDid(target)) : truncateDid(target);\n var ok = await confirmDialog({\n title: __t(\"members.transferTitle\"),\n message: __t(\"members.transferMsg\", { name: name }),\n confirmLabel: __t(\"members.transferConfirm\"),\n danger: true,\n });\n if (!ok) return;\n var data = await api(\"POST\", \"/transfer-ownership\", { targetDid: target });\n if (data.ok) {\n showToast(__t(\"members.transferSuccess\"), \"success\");\n setTimeout(function() { location.reload(); }, 1000);\n }\n}\n\n// Close action menus on outside click\ndocument.addEventListener(\"click\", function() {\n document.querySelectorAll(\".action-menu.open\").forEach(function(m) { m.classList.remove(\"open\"); });\n});\n\nregisterTab(\"members\", function() {\n initInstanceFilter().then(function() {\n // Auto-select instance from URL query (e.g., ?instance=z1xxx)\n var urlInstance = new URLSearchParams(window.location.search).get(\"instance\");\n if (urlInstance) {\n var sel = document.getElementById(\"members-instance-filter\");\n if (sel) sel.value = urlInstance;\n }\n // Restore sort state from URL (sortBy / sortOrder) on tab enter.\n readMembersSortFromURL();\n loadMembers(1);\n });\n});\n";
6
+ export declare const MEMBERS_TAB_SCRIPT = "\nvar membersPage = 1;\nvar membersPageSize = 20;\nvar memberSearchTimeout = null;\nvar currentMembersList = [];\nvar selectedMember = null;\nvar __membersAggregated = false;\n// Sort state: empty string = default (server decides + self-first on client).\n// Three-state click cycle: (none) \u2192 desc \u2192 asc \u2192 (none).\n// Persisted in location.search as sortBy/sortOrder so it survives refresh + share.\nvar membersSortBy = \"\";\nvar membersSortOrder = \"\";\nvar MEMBERS_SORT_VALID = [\"name\", \"role\", \"status\", \"source\", \"joined\"];\n\n/** Populate module sort state from the current URL query string. Idempotent. */\nfunction readMembersSortFromURL() {\n membersSortBy = \"\";\n membersSortOrder = \"\";\n var params = new URLSearchParams(location.search);\n var by = params.get(\"sortBy\");\n var order = params.get(\"sortOrder\");\n if (by && MEMBERS_SORT_VALID.indexOf(by) >= 0) {\n membersSortBy = by;\n membersSortOrder = (order === \"asc\" || order === \"desc\") ? order : \"desc\";\n }\n}\n\n/** Write current sort state back to location.search without reloading. */\nfunction writeMembersSortToURL() {\n var params = new URLSearchParams(location.search);\n if (membersSortBy) {\n params.set(\"sortBy\", membersSortBy);\n params.set(\"sortOrder\", membersSortOrder || \"desc\");\n } else {\n params.delete(\"sortBy\");\n params.delete(\"sortOrder\");\n }\n var qs = params.toString();\n var newUrl = location.pathname + (qs ? \"?\" + qs : \"\") + location.hash;\n history.replaceState(null, \"\", newUrl);\n}\n\n/** Cycle sort state for a column key and reload. */\nfunction toggleSort(key) {\n if (membersSortBy !== key) {\n membersSortBy = key;\n membersSortOrder = \"desc\";\n } else if (membersSortOrder === \"desc\") {\n membersSortOrder = \"asc\";\n } else {\n // Third click \u2014 back to default.\n membersSortBy = \"\";\n membersSortOrder = \"\";\n }\n writeMembersSortToURL();\n loadMembers(1);\n}\n\n/** Render a <th> with click-to-sort behavior. */\nfunction sortableTh(key, label, extraClass) {\n var isActive = membersSortBy === key;\n var arrow;\n if (isActive) {\n arrow = membersSortOrder === \"asc\"\n ? '<span class=\"sort-arrow sort-arrow-active\">\\u2191</span>'\n : '<span class=\"sort-arrow sort-arrow-active\">\\u2193</span>';\n } else {\n arrow = '<span class=\"sort-arrow\">\\u2195</span>';\n }\n var cls = \"sortable\" + (isActive ? \" sort-active\" : \"\") + (extraClass ? \" \" + extraClass : \"\");\n return '<th class=\"' + cls + '\" onclick=\"toggleSort(\\'' + key + '\\')\">' + label + arrow + '</th>';\n}\n\nfunction providerLabel(sp) {\n if (!sp) return \"\\u2014\";\n var key = \"members.providers.\" + sp;\n var val = __t(key);\n return val !== key ? val : sp;\n}\n\nfunction debouncedMemberSearch() {\n clearTimeout(memberSearchTimeout);\n memberSearchTimeout = setTimeout(function() { loadMembers(1); }, 300);\n}\n\n// Load registered instances for the filter dropdown (system admin only)\nvar __instanceNames = {};\nvar __instanceFilterInitialized = false;\nasync function initInstanceFilter() {\n if (__instanceFilterInitialized) return;\n try {\n // Best-effort: this endpoint is system-admin-only. Instance-scoped owners/admins\n // get 403 here, which is expected \u2014 fail silently (no error toast).\n var data = await api(\"GET\", \"/../admin/instances\", undefined, { silent: true });\n if (data.ok && data.instances && data.instances.length > 0) {\n __instanceFilterInitialized = true;\n var sel = document.getElementById(\"members-instance-filter\");\n data.instances.forEach(function(inst) {\n __instanceNames[inst.instanceDid] = inst.appName || inst.instanceDid.substring(0, 16);\n var opt = document.createElement(\"option\");\n opt.value = inst.instanceDid;\n opt.textContent = __instanceNames[inst.instanceDid];\n sel.appendChild(opt);\n });\n sel.style.display = \"\";\n }\n } catch(e) { /* not admin or no instances */ }\n}\n\n// Also support specific instance filter via query param\n// When ?instance=z1xxx, team handler needs to use that instanceDid\n\nasync function loadMembers(page) {\n membersPage = page || 1;\n var instanceFilter = document.getElementById(\"members-instance-filter\").value;\n var qs = \"?page=\" + membersPage + \"&pageSize=\" + membersPageSize;\n // System view (\"\") \u2192 use defaultInstanceDid so we query membership, not global users\n if (instanceFilter === \"\" && __pageData.instanceDid) {\n qs += \"&instance=\" + encodeURIComponent(__pageData.instanceDid);\n } else if (instanceFilter) {\n qs += \"&instance=\" + encodeURIComponent(instanceFilter);\n }\n var search = document.getElementById(\"members-search\").value.trim();\n if (search) qs += \"&search=\" + encodeURIComponent(search);\n var role = document.getElementById(\"members-role-filter\").value;\n if (role) qs += \"&role=\" + encodeURIComponent(role);\n var status = document.getElementById(\"members-status-filter\").value;\n if (status !== \"\") qs += \"&approved=\" + status;\n var source = document.getElementById(\"members-source-filter\").value;\n if (source) qs += \"&sourceProvider=\" + encodeURIComponent(source);\n if (membersSortBy) {\n qs += \"&sortBy=\" + encodeURIComponent(membersSortBy);\n qs += \"&sortOrder=\" + encodeURIComponent(membersSortOrder || \"desc\");\n }\n\n document.getElementById(\"members-table-wrap\").innerHTML = skeletonTable(8, 6);\n document.getElementById(\"members-pagination\").innerHTML = \"\";\n var data = await api(\"GET\", \"/members\" + qs);\n if (!data.ok) {\n document.getElementById(\"members-table-wrap\").innerHTML = '<div class=\"empty-state\"><div class=\"empty-state-icon\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><circle cx=\"12\" cy=\"12\" r=\"10\"/><path d=\"M12 8v4m0 4h.01\"/></svg></div><div class=\"empty-state-title\">' + __t(\"members.loadFailed\") + '</div></div>';\n return;\n }\n __membersAggregated = !!data.aggregated;\n // Only pin the caller to the top when using the default (server) order.\n // Under explicit sort, honor the user's intent without re-shuffling.\n if (membersSortBy) {\n currentMembersList = data.users || [];\n } else {\n currentMembersList = (data.users || []).slice().sort(function(a, b) {\n if (a.did === __caller.did) return -1;\n if (b.did === __caller.did) return 1;\n return (a.createdAt || 0) - (b.createdAt || 0);\n });\n }\n renderMembersTable(currentMembersList, data.paging);\n updateTransferSection(data.users);\n}\n\nfunction renderMembersTable(users, paging) {\n var wrap = document.getElementById(\"members-table-wrap\");\n if (!users || users.length === 0) {\n wrap.innerHTML = '<div class=\"empty-state\"><div class=\"empty-state-icon\"><svg width=\"20\" height=\"20\" viewBox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"><path d=\"M17 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2\"/><circle cx=\"9\" cy=\"7\" r=\"4\"/></svg></div><div class=\"empty-state-title\">' + __t(\"members.noMembers\") + '</div><div class=\"empty-state-desc\">' + __t(\"members.noMembersHint\") + '</div></div>';\n document.getElementById(\"members-pagination\").innerHTML = \"\";\n return;\n }\n\n var instanceSel = document.getElementById(\"members-instance-filter\");\n var instanceVisible = instanceSel && instanceSel.style.display !== 'none';\n var showInstance = instanceVisible && instanceSel.value === \"all\";\n var html = '<table class=\"table\"><thead><tr>';\n html += sortableTh(\"name\", __t(\"members.col.member\"));\n html += sortableTh(\"role\", __t(\"members.col.role\"));\n if (showInstance) html += '<th>' + __t(\"members.col.instance\") + '</th>';\n html += sortableTh(\"source\", __t(\"members.col.source\"), \"col-hide-sm\");\n html += sortableTh(\"status\", __t(\"members.col.status\"), \"col-hide-sm\");\n html += sortableTh(\"joined\", __t(\"members.col.joined\"), \"col-hide-md\");\n // Registered/Last Login From columns removed \u2014 domain info not meaningful in Worker context\n html += '<th></th></tr></thead><tbody>';\n users.forEach(function(u) {\n var userDid = u.did || u.user_did || '';\n var av = renderAvatar(u.avatar, u.fullName, \"sm\");\n var name = u.fullName ? escapeHtml(u.fullName) : '<span class=\"text-muted\">(unnamed)</span>';\n var did = '<did-address did=\"' + escapeHtml(userDid) + '\" compact></did-address>';\n var roleBadge = '<span class=\"badge badge-' + (u.role || \"guest\") + '\">' + __t(\"common.\" + (u.role || \"guest\")) + '</span>';\n var statusBadge = u.approved !== undefined ? (u.approved ? '<span class=\"badge badge-active\">' + __t(\"common.active\") + '</span>' : '<span class=\"badge badge-blocked\">' + __t(\"common.blocked\") + '</span>') : '<span class=\"text-muted\">\u2014</span>';\n var joined = (u.createdAt || u.joined_at) ? '<span class=\"cell-date\">' + escapeHtml(relativeTime(u.createdAt || u.joined_at)) + '</span>' : '<span class=\"text-muted\">\u2014</span>';\n html += '<tr style=\"cursor:pointer\" onclick=\"openMemberDetail(\\'' + escapeHtml(userDid) + '\\')\">';\n html += '<td><div class=\"member-identity\">' + av + '<div><div class=\"member-name\">' + name + '</div><div class=\"member-email\">' + did + '</div></div></div></td>';\n html += '<td>' + roleBadge + '</td>';\n if (showInstance) {\n if (__membersAggregated && u.instance_count > 1) {\n html += '<td><a href=\"javascript:void(0)\" onclick=\"event.stopPropagation();openMemberDetail(\\'' + escapeHtml(userDid) + '\\')\" style=\"color:var(--blue);font-size:14px;text-decoration:none\">' + u.instance_count + ' ' + __t(\"members.instances\") + '</a></td>';\n } else {\n var instDid = (__membersAggregated && u.instances && u.instances.length === 1) ? u.instances[0].instance_did : (u.instance_did || '');\n var instName = __instanceNames[instDid] || '';\n if (!instName) instName = instDid ? __t(\"members.currentInstance\") : '\u2014';\n html += '<td><div>' + escapeHtml(instName);\n if (instDid) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\" onclick=\"event.stopPropagation()\"><did-address did=\"' + escapeHtml(instDid) + '\" compact></did-address></div>';\n html += '</div></td>';\n }\n }\n var sourceBadge = '<span class=\"text-muted\">' + escapeHtml(providerLabel(u.sourceProvider)) + '</span>';\n html += '<td class=\"col-hide-sm\">' + sourceBadge + '</td>';\n html += '<td class=\"col-hide-sm\">' + statusBadge + '</td>';\n html += '<td class=\"col-hide-md\">' + joined + '</td>';\n // Actions: only for current instance members, not cross-instance\n var canOperate = !instanceVisible || (instanceVisible && instanceSel.value === '');\n // In aggregated mode, only allow actions on users whose instance matches current system\n if (__membersAggregated) canOperate = false;\n html += '<td class=\"action-cell\">' + (canOperate ? renderMemberActions(u) : '') + '</td>';\n html += '</tr>';\n });\n html += '</tbody></table>';\n wrap.innerHTML = html;\n\n renderPagination(\"members-pagination\", paging, loadMembers);\n}\n\nfunction renderMemberActions(u) {\n var isOwner = __caller.role === \"owner\";\n var isAdmin = __caller.role === \"admin\";\n var isSelf = u.did === __caller.did;\n var ROLE_LEVEL = { owner: 3, admin: 2, member: 1, guest: 0 };\n var callerLevel = ROLE_LEVEL[__caller.role] || 0;\n var targetLevel = ROLE_LEVEL[u.role] || 0;\n // Can only act on members with lower privilege\n var canManage = !isSelf && targetLevel < callerLevel;\n var items = [];\n\n // Change role: can manage lower-level members\n if (canManage) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();openChangeRoleForDid(\\'' + escapeHtml(u.did) + '\\')\">' + __t(\"members.changeRole\") + '</button>');\n }\n if (canManage && u.approved) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();blockMember(\\'' + escapeHtml(u.did) + '\\')\">' + __t(\"members.block\") + '</button>');\n }\n if (canManage && !u.approved) {\n items.push('<button class=\"action-menu-item\" onclick=\"event.stopPropagation();unblockMember(\\'' + escapeHtml(u.did) + '\\')\">' + __t(\"members.unblock\") + '</button>');\n }\n if (items.length > 0 && canManage) {\n items.push('<div class=\"action-menu-sep\"></div>');\n }\n if (canManage) {\n items.push('<button class=\"action-menu-item danger\" onclick=\"event.stopPropagation();removeMember(\\'' + escapeHtml(u.did) + '\\')\">' + __t(\"members.remove\") + '</button>');\n }\n\n if (items.length === 0) return \"\";\n return '<button class=\"action-trigger\" onclick=\"event.stopPropagation();toggleActionMenu(this)\">\u22EF</button><div class=\"action-menu\">' + items.join(\"\") + '</div>';\n}\n\nfunction toggleActionMenu(trigger) {\n var menu = trigger.nextElementSibling;\n var wasOpen = menu.classList.contains(\"open\");\n // Close all menus first\n document.querySelectorAll(\".action-menu.open\").forEach(function(m) { m.classList.remove(\"open\"); });\n if (!wasOpen) menu.classList.toggle(\"open\");\n}\n\nasync function openMemberDetail(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n if (!u) return;\n selectedMember = u;\n\n // Fetch full member info (with connectedAccounts) from API.\n // Falls back to in-memory list data if the request fails.\n var detail = u;\n try {\n var resp = await api(\"GET\", \"/members/\" + encodeURIComponent(did));\n if (resp && resp.ok && resp.user) {\n // Merge: in-memory list has fields the API may omit (instances, passkeyCount in some paths).\n detail = Object.assign({}, u, resp.user);\n selectedMember = detail;\n }\n } catch (e) {}\n\n var body = document.getElementById(\"member-detail-body\");\n var html = '<div class=\"profile-header\">' + renderAvatar(detail.avatar, detail.fullName) + '<div>';\n html += '<div style=\"font-weight:500;font-size:16px;color:var(--text-white)\">' + escapeHtml(detail.fullName || \"(unnamed)\") + '</div>';\n html += '<did-address did=\"' + escapeHtml(detail.did) + '\" compact></did-address>';\n html += '</div></div>';\n\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailRole\") + '</span><span class=\"settings-value\"><span class=\"badge badge-' + (detail.role || \"guest\") + '\">' + __t(\"common.\" + (detail.role || \"guest\")) + '</span></span></div>';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailStatus\") + '</span><span class=\"settings-value\">' + (detail.approved ? '<span class=\"badge badge-active\">' + __t(\"common.active\") + '</span>' : '<span class=\"badge badge-blocked\">' + __t(\"common.blocked\") + '</span>') + '</span></div>';\n html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailSource\") + '</span><span class=\"settings-value\">' + escapeHtml(providerLabel(detail.sourceProvider)) + '</span></div>';\n if (detail.email) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailEmail\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.email) + '</span></div>';\n if (detail.inviterName) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailInvitedBy\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.inviterName) + '</span></div>';\n if (detail.createdAt) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailJoined\") + '</span><span class=\"settings-value\">' + escapeHtml(absoluteTime(detail.createdAt)) + '</span></div>';\n if (detail.lastLoginAt) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailLastLogin\") + '</span><span class=\"settings-value\">' + escapeHtml(absoluteTime(detail.lastLoginAt)) + '</span></div>';\n if (detail.sourceDomain) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailRegisteredFrom\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.sourceDomain) + '</span></div>';\n if (detail.lastLoginDomain) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailLastLoginFrom\") + '</span><span class=\"settings-value\">' + escapeHtml(detail.lastLoginDomain) + '</span></div>';\n if (detail.passkeyCount !== undefined) html += '<div class=\"settings-row\"><span class=\"settings-label\">' + __t(\"members.detailPasskeys\") + '</span><span class=\"settings-value\">' + detail.passkeyCount + '</span></div>';\n html += '</div>';\n\n // Connected Accounts (read-only)\n if (detail.connectedAccounts && detail.connectedAccounts.length > 0) {\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-card-header\"><span>' + __t(\"members.detailConnectedAccounts\") + ' (' + detail.connectedAccounts.length + ')</span></div>';\n html += '<div style=\"max-height:240px;overflow-y:auto\">';\n detail.connectedAccounts.forEach(function(a) {\n var label = providerLabel(a.provider);\n var info = '';\n if (a.userInfo && a.userInfo.name) info = a.userInfo.name;\n else if (a.userInfo && a.userInfo.email) info = a.userInfo.email;\n else if (a.id) info = a.id;\n html += '<div class=\"settings-row\" style=\"gap:12px;align-items:flex-start\">';\n html += '<div style=\"flex:1;min-width:0\">';\n html += '<div style=\"font-size:14px;font-weight:500;color:var(--text)\">' + escapeHtml(label);\n if (a.isMain) html += ' <span class=\"badge badge-active\" style=\"font-size:10px;padding:1px 6px;\">' + __t(\"profile.mainAccount\") + '</span>';\n html += '</div>';\n if (info) html += '<div style=\"font-size:12px;color:var(--text-secondary);margin-top:2px\">' + escapeHtml(info) + '</div>';\n if (a.did) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\"><did-address did=\"' + escapeHtml(a.did) + '\" compact></did-address></div>';\n html += '</div>';\n if (a.lastLoginAt) html += '<div style=\"font-size:12px;color:var(--text-secondary);flex-shrink:0\">' + escapeHtml(relativeTime(a.lastLoginAt)) + '</div>';\n html += '</div>';\n });\n html += '</div></div>';\n }\n\n // Instance memberships (aggregated mode)\n if (detail.instances && detail.instances.length > 0) {\n html += '<div class=\"settings-card\" style=\"margin-top:16px\">';\n html += '<div class=\"settings-card-header\"><span>' + __t(\"members.instanceMemberships\") + ' (' + detail.instances.length + ')</span></div>';\n html += '<div style=\"max-height:240px;overflow-y:auto\">';\n detail.instances.forEach(function(inst) {\n var instName = __instanceNames[inst.instance_did] || '';\n var instDid = inst.instance_did || '';\n html += '<div class=\"settings-row\" style=\"gap:12px\">';\n html += '<div style=\"flex:1;min-width:0\"><div style=\"font-size:14px;font-weight:500;color:var(--text)\">' + escapeHtml(instName || __t(\"members.currentInstance\")) + '</div>';\n if (instDid) html += '<div style=\"font-size:11px;color:var(--text-secondary);margin-top:2px\"><did-address did=\"' + escapeHtml(instDid) + '\" compact></did-address></div>';\n html += '</div>';\n html += '<div style=\"display:flex;align-items:center;gap:8px;flex-shrink:0\"><span class=\"badge badge-' + inst.role + '\">' + __t(\"common.\" + inst.role) + '</span>';\n if (inst.joined_at) html += '<span style=\"font-size:12px;color:var(--text-secondary)\">' + escapeHtml(relativeTime(inst.joined_at)) + '</span>';\n html += '</div></div>';\n });\n html += '</div></div>';\n }\n\n body.innerHTML = html;\n\n // Change role: mirror list's canOperate + renderMemberActions logic exactly.\n // Use post-merge detail so role/did reflect the latest API response.\n var changeRoleBtn = document.getElementById(\"member-detail-change-role\");\n var instanceSel = document.getElementById(\"members-instance-filter\");\n var instanceVisible = instanceSel && instanceSel.style.display !== 'none';\n var canOperate = !instanceVisible || (instanceVisible && instanceSel.value === '');\n if (__membersAggregated) canOperate = false;\n var isSelf = detail.did === __caller.did;\n var ROLE_LEVEL = { owner: 3, admin: 2, member: 1, guest: 0 };\n var callerLevel = ROLE_LEVEL[__caller.role] || 0;\n var targetLevel = ROLE_LEVEL[detail.role] || 0;\n var canChangeRole = canOperate && !isSelf && targetLevel < callerLevel;\n if (canChangeRole) {\n changeRoleBtn.classList.remove(\"hidden\");\n } else {\n changeRoleBtn.classList.add(\"hidden\");\n }\n\n showDialog(\"member-detail-dialog\");\n}\n\nfunction openChangeRoleForDid(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n if (!u) return;\n selectedMember = u;\n openChangeRoleDialog();\n}\n\nfunction openChangeRoleDialog() {\n if (!selectedMember) return;\n document.getElementById(\"change-role-title\").textContent = __t(\"members.changeRole\");\n document.getElementById(\"change-role-subtitle\").textContent = __t(\"members.changeRoleFor\", { name: selectedMember.fullName || truncateDid(selectedMember.did) });\n // Show/hide role options based on caller's level (only owner can assign admin)\n var radios = document.querySelectorAll('input[name=\"new-role\"]');\n radios.forEach(function(r) {\n r.checked = r.value === selectedMember.role;\n var label = r.closest('label');\n if (label) {\n if (r.value === 'admin' && __caller.role !== 'owner') label.style.display = 'none';\n else label.style.display = '';\n }\n });\n closeDialog(\"member-detail-dialog\");\n showDialog(\"change-role-dialog\");\n}\n\nasync function saveRoleChange() {\n if (!selectedMember) return;\n var selected = document.querySelector('input[name=\"new-role\"]:checked');\n if (!selected) return;\n var newRole = selected.value;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(selectedMember.did) + \"/role\", { role: newRole });\n if (data.ok) {\n showToast(__t(\"members.roleUpdated\"), \"success\");\n closeDialog(\"change-role-dialog\");\n loadMembers(membersPage);\n }\n}\n\n// name is looked up (not passed via onclick) so a member's self-set fullName\n// never has to be embedded as a JS-string literal inside an inline onclick=\n// attribute \u2014 HTML entity-escaping alone can't fully neutralize that context,\n// since the browser decodes entities before parsing onclick as script.\nasync function blockMember(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n var name = (u && u.fullName) || did;\n var ok = await confirmDialog({ title: __t(\"members.blockTitle\"), message: __t(\"members.blockMsg\", { name: name }), confirmLabel: __t(\"members.blockBtn\"), danger: true });\n if (!ok) return;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(did) + \"/approval\", { approved: false });\n if (data.ok) { showToast(__t(\"members.blockSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nasync function unblockMember(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n var name = (u && u.fullName) || did;\n var ok = await confirmDialog({ title: __t(\"members.unblockTitle\"), message: __t(\"members.unblockMsg\", { name: name }), confirmLabel: __t(\"members.unblock\") });\n if (!ok) return;\n var data = await api(\"PUT\", \"/members/\" + encodeURIComponent(did) + \"/approval\", { approved: true });\n if (data.ok) { showToast(__t(\"members.unblockSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nasync function removeMember(did) {\n var u = currentMembersList.find(function(m) { return m.did === did; });\n var name = (u && u.fullName) || did;\n var ok = await confirmDialog({ title: __t(\"members.removeTitle\"), message: __t(\"members.removeMsg\", { name: name }), confirmLabel: __t(\"members.remove\"), danger: true });\n if (!ok) return;\n var data = await api(\"DELETE\", \"/members/\" + encodeURIComponent(did));\n if (data.ok) { showToast(__t(\"members.removeSuccess\"), \"success\"); loadMembers(membersPage); }\n}\n\nfunction updateTransferSection(users) {\n var section = document.getElementById(\"ownership-transfer-section\");\n if (__caller.role !== \"owner\") {\n section.classList.add(\"hidden\");\n return;\n }\n section.classList.remove(\"hidden\");\n var select = document.getElementById(\"transfer-target\");\n var html = '<option value=\"\">' + __t(\"members.transferSelect\") + '</option>';\n users.forEach(function(u) {\n if (u.did !== __caller.did && u.approved && u.role !== \"owner\") {\n html += '<option value=\"' + escapeHtml(u.did) + '\">' + escapeHtml(u.fullName || truncateDid(u.did)) + ' (' + u.role + ')</option>';\n }\n });\n select.innerHTML = html;\n}\n\nasync function handleTransferOwnership() {\n var target = document.getElementById(\"transfer-target\").value;\n if (!target) { showToast(__t(\"members.selectMemberFirst\"), \"error\"); return; }\n var targetUser = currentMembersList.find(function(u) { return u.did === target; });\n var name = targetUser ? (targetUser.fullName || truncateDid(target)) : truncateDid(target);\n var ok = await confirmDialog({\n title: __t(\"members.transferTitle\"),\n message: __t(\"members.transferMsg\", { name: name }),\n confirmLabel: __t(\"members.transferConfirm\"),\n danger: true,\n });\n if (!ok) return;\n var data = await api(\"POST\", \"/transfer-ownership\", { targetDid: target });\n if (data.ok) {\n showToast(__t(\"members.transferSuccess\"), \"success\");\n setTimeout(function() { location.reload(); }, 1000);\n }\n}\n\n// Close action menus on outside click\ndocument.addEventListener(\"click\", function() {\n document.querySelectorAll(\".action-menu.open\").forEach(function(m) { m.classList.remove(\"open\"); });\n});\n\nregisterTab(\"members\", function() {\n initInstanceFilter().then(function() {\n // Auto-select instance from URL query (e.g., ?instance=z1xxx)\n var urlInstance = new URLSearchParams(window.location.search).get(\"instance\");\n if (urlInstance) {\n var sel = document.getElementById(\"members-instance-filter\");\n if (sel) sel.value = urlInstance;\n }\n // Restore sort state from URL (sortBy / sortOrder) on tab enter.\n readMembersSortFromURL();\n loadMembers(1);\n });\n});\n";
7
7
  export {};
8
8
  //# sourceMappingURL=tab-members.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"tab-members.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/tab-members.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;AAEpE,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAiG7C;AAED,eAAO,MAAM,kBAAkB,4yzBA0d9B,CAAC"}
1
+ {"version":3,"file":"tab-members.d.ts","sourceRoot":"","sources":["../../../src/pages/admin/tab-members.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,KAAK,GAAG,GAAG,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK,MAAM,CAAC;AAEpE,wBAAgB,cAAc,CAAC,CAAC,EAAE,GAAG,GAAG,MAAM,CAiG7C;AAED,eAAO,MAAM,kBAAkB,oy0BAoe9B,CAAC"}