@mapvx/web-js 1.2.0 → 1.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/README.md +2 -0
  2. package/dist/cjs/controllers/routeController.js +19 -19
  3. package/dist/cjs/controllers/routeController.js.map +1 -1
  4. package/dist/cjs/domain/models/circle.js +38 -3
  5. package/dist/cjs/domain/models/circle.js.map +1 -1
  6. package/dist/cjs/domain/models/mapConfig.js +10 -1
  7. package/dist/cjs/domain/models/mapConfig.js.map +1 -1
  8. package/dist/cjs/index.js +5 -1
  9. package/dist/cjs/index.js.map +1 -1
  10. package/dist/cjs/logger/logger.js +13 -8
  11. package/dist/cjs/logger/logger.js.map +1 -1
  12. package/dist/cjs/logger/rollbar.js +11 -6
  13. package/dist/cjs/logger/rollbar.js.map +1 -1
  14. package/dist/cjs/map/map.js +200 -52
  15. package/dist/cjs/map/map.js.map +1 -1
  16. package/dist/cjs/map/mapInteractionOptions.js +56 -0
  17. package/dist/cjs/map/mapInteractionOptions.js.map +1 -0
  18. package/dist/cjs/repository/repository.js +25 -26
  19. package/dist/cjs/repository/repository.js.map +1 -1
  20. package/dist/cjs/repository/requester.js +24 -27
  21. package/dist/cjs/repository/requester.js.map +1 -1
  22. package/dist/cjs/sdk.js +18 -0
  23. package/dist/cjs/sdk.js.map +1 -1
  24. package/dist/cjs/utils/semaphore.js +143 -0
  25. package/dist/cjs/utils/semaphore.js.map +1 -0
  26. package/dist/es/controllers/routeController.d.ts.map +1 -1
  27. package/dist/es/controllers/routeController.js +19 -19
  28. package/dist/es/controllers/routeController.js.map +1 -1
  29. package/dist/es/domain/models/circle.d.ts +39 -0
  30. package/dist/es/domain/models/circle.d.ts.map +1 -1
  31. package/dist/es/domain/models/circle.js +36 -2
  32. package/dist/es/domain/models/circle.js.map +1 -1
  33. package/dist/es/domain/models/configuration.d.ts +8 -0
  34. package/dist/es/domain/models/configuration.d.ts.map +1 -1
  35. package/dist/es/domain/models/mapConfig.d.ts +118 -3
  36. package/dist/es/domain/models/mapConfig.d.ts.map +1 -1
  37. package/dist/es/domain/models/mapConfig.js +9 -0
  38. package/dist/es/domain/models/mapConfig.js.map +1 -1
  39. package/dist/es/index.d.ts +2 -1
  40. package/dist/es/index.d.ts.map +1 -1
  41. package/dist/es/index.js +2 -0
  42. package/dist/es/index.js.map +1 -1
  43. package/dist/es/logger/logger.d.ts.map +1 -1
  44. package/dist/es/logger/logger.js +13 -8
  45. package/dist/es/logger/logger.js.map +1 -1
  46. package/dist/es/logger/rollbar.d.ts.map +1 -1
  47. package/dist/es/logger/rollbar.js +11 -6
  48. package/dist/es/logger/rollbar.js.map +1 -1
  49. package/dist/es/map/map.d.ts +103 -1
  50. package/dist/es/map/map.d.ts.map +1 -1
  51. package/dist/es/map/map.js +202 -54
  52. package/dist/es/map/map.js.map +1 -1
  53. package/dist/es/map/mapInteractionOptions.d.ts +37 -0
  54. package/dist/es/map/mapInteractionOptions.d.ts.map +1 -0
  55. package/dist/es/map/mapInteractionOptions.js +51 -0
  56. package/dist/es/map/mapInteractionOptions.js.map +1 -0
  57. package/dist/es/repository/repository.d.ts +0 -1
  58. package/dist/es/repository/repository.d.ts.map +1 -1
  59. package/dist/es/repository/repository.js +25 -26
  60. package/dist/es/repository/repository.js.map +1 -1
  61. package/dist/es/repository/requester.d.ts +0 -2
  62. package/dist/es/repository/requester.d.ts.map +1 -1
  63. package/dist/es/repository/requester.js +24 -27
  64. package/dist/es/repository/requester.js.map +1 -1
  65. package/dist/es/sdk.d.ts +2 -0
  66. package/dist/es/sdk.d.ts.map +1 -1
  67. package/dist/es/sdk.js +18 -0
  68. package/dist/es/sdk.js.map +1 -1
  69. package/dist/es/utils/semaphore.d.ts +70 -0
  70. package/dist/es/utils/semaphore.d.ts.map +1 -0
  71. package/dist/es/utils/semaphore.js +139 -0
  72. package/dist/es/utils/semaphore.js.map +1 -0
  73. package/dist/umd/index.js +788 -271
  74. package/dist/umd/index.js.map +1 -1
  75. package/package.json +1 -1
package/dist/cjs/sdk.js CHANGED
@@ -33,6 +33,7 @@ class InternalMapVXSDK extends loggeable_1.Loggeable {
33
33
  constructor(token, config) {
34
34
  var _a, _b, _c;
35
35
  super();
36
+ this.maps = [];
36
37
  this.geoLocation = navigator.geolocation;
37
38
  this.headingListeners = [];
38
39
  this.token = token;
@@ -58,6 +59,13 @@ class InternalMapVXSDK extends loggeable_1.Loggeable {
58
59
  setSdkLang(lang) {
59
60
  this.config.lang = lang;
60
61
  this.repository.setLang(lang);
62
+ this.maps.forEach((map) => map.setLang(lang));
63
+ }
64
+ unregisterMap(map) {
65
+ const mapIndex = this.maps.indexOf(map);
66
+ if (mapIndex >= 0) {
67
+ this.maps.splice(mapIndex, 1);
68
+ }
61
69
  }
62
70
  async getPlaceDetail(id) {
63
71
  try {
@@ -88,6 +96,16 @@ class InternalMapVXSDK extends loggeable_1.Loggeable {
88
96
  mapConfig.apiUrl = this.config.apiUrl;
89
97
  mapConfig.mapvxRequestContext = this.config.mapvxRequestContext;
90
98
  const map = new map_1.InternalMapVXMap(mapConfig, container, this.token);
99
+ const originalDestroyMap = map.destroyMap.bind(map);
100
+ map.destroyMap = () => {
101
+ try {
102
+ originalDestroyMap();
103
+ }
104
+ finally {
105
+ this.unregisterMap(map);
106
+ }
107
+ };
108
+ this.maps.push(map);
91
109
  this.logEvent("createMap");
92
110
  return map;
93
111
  }
@@ -1 +1 @@
1
- {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk.ts"],"names":[],"mappings":";;;AAEA,mCAA2D;AAC3D,yDAA4E;AAM5E,yDAAqD;AAKrD,2EAM2C;AAE3C,sEAAkE;AAClE,wDAAoD;AA+TpD,SAAgB,aAAa,CAAC,KAAa,EAAE,MAAkB;IAC7D,MAAM,aAAa,GAAsB;QACvC,IAAI,EAAE,IAAI;QACV,MAAM,EAAE,8BAA8B;QACtC,KAAK,EAAE;YACL,UAAU,EAAE,KAAK;SAClB;KACF,CAAA;IACD,MAAM,SAAS,mCAA2B,aAAa,GAAK,MAAM,CAAE,CAAA;IACpE,MAAM,GAAG,GAAG,IAAI,gBAAgB,CAAC,KAAK,EAAE,SAAS,CAAC,CAAA;IAClD,OAAO,GAAG,CAAA;AACZ,CAAC;AAXD,sCAWC;AAED;;;GAGG;AACH,MAAa,gBAAiB,SAAQ,qBAAS;IAQ7C;;;;OAIG;IACH,YAAY,KAAa,EAAE,MAAyB;;QAClD,KAAK,EAAE,CAAA;QATD,gBAAW,GAAgB,SAAS,CAAC,WAAW,CAAA;QAChD,qBAAgB,GAAoB,EAAE,CAAA;QAS5C,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;QAEpB,+CAA+C;QAC/C,MAAM,YAAY,GAAG,IAAI,2BAAY,CAAC;YACpC,UAAU,EAAE,MAAA,MAAM,CAAC,KAAK,0CAAE,UAAU;YACpC,eAAe,EAAE,MAAA,MAAM,CAAC,KAAK,0CAAE,eAAe;YAC9C,OAAO,EAAE,MAAA,MAAM,CAAC,KAAK,0CAAE,OAAO;SAC/B,CAAC,CAAA;QAEF,IAAI,CAAC,UAAU,GAAG,IAAI,uBAAU,CAC9B,KAAK,EACL,IAAI,CAAC,MAAM,CAAC,IAAI,EAChB,IAAI,CAAC,MAAM,CAAC,MAAM,EAClB,YAAY,EACZ,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAChC,CAAA;QACD,IAAI,CAAC,WAAW,EAAE,CAAA;QAClB,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;IAC1B,CAAC;IAED;;OAEG;IACK,WAAW;QACjB,IAAI,CAAC,UAAU,CAAC,4BAA4B,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE;YACxD,qCAAqC;QACvC,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,UAAU,CAAC,IAAY;QACrB,IAAI,CAAC,MAAM,CAAC,IAAI,GAAG,IAAI,CAAA;QACvB,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAU;QAC7B,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,wBAAwB,CAAC,EAAE,CAAC,CAAA;YAChE,IAAI,CAAC,QAAQ,CAAC,gBAAgB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;YACvC,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAA;SACpC;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,EAAU,EAAE,SAAiB;QACnD,IAAI;YACF,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,EAAE,EAAE,SAAS,CAAC,CAAA;YAC9E,IAAI,CAAC,QAAQ,CAAC,mBAAmB,EAAE,EAAE,EAAE,EAAE,CAAC,CAAA;YAC1C,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAA;SACvC;IACH,CAAC;IAES,mBAAmB,CAAC,YAAoC;QAChE,uCACK,YAAY,KACf,KAAK,EAAE,IAAI,CAAC,KAAK,IAClB;IACH,CAAC;IAED,SAAS,CAAC,SAAsB,EAAE,SAAoB;QACpD,IAAI;YACF,SAAS,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;YACjC,SAAS,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;YACrC,SAAS,CAAC,mBAAmB,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAA;YAC/D,MAAM,GAAG,GAAG,IAAI,sBAAgB,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,CAAA;YAClE,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAA;YAC1B,OAAO,GAAG,CAAA;SACX;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,sBAAsB,CAAC,CAAA;SACxC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,OAAgB,EAAE,OAAsB;QAC7D,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACjF,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;YAC9B,OAAO,MAAM,CAAA;SACd;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC/C;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,OAAgB;QAClC,IAAI;YACF,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,uBAAuB,CAAC,OAAO,CAAC,CAAA;YACzE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YAC3B,OAAO,UAAU,CAAA;SAClB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,0BAA0B,CAAC,CAAA;SAC5C;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,MAAc;QAC/B,IAAI;YACF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAA;YAC7E,OAAO,gBAAgB,CAAA;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAA;SACvC;IACH,CAAC;IAED,eAAe,CAAC,GAAa;QAC3B,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,eAAe,CAAC,GAAG,CAAC,CAAA;YACnD,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAChC,OAAO,MAAM,CAAA;SACd;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,6BAA6B,CAAC,CAAA;SAC3C;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB;QACtB,IAAI;YACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,4BAA4B,EAAE,CAAA;YAC1E,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACnC,OAAO,aAAa,CAAA;SACrB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAA;SAC9C;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,aAAqB;QACtC,IAAI;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CAAC,aAAa,CAAC,CAAA;YAC7E,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,CAAA;YAC7B,OAAO,SAAS,CAAA;SACjB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAA;SACvC;IACH,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,aAAqB,EAAE,SAAiB;QACrE,IAAI;YACF,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kCAAkC,CAC5E,aAAa,EACb,SAAS,CACV,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,CAAA;YACzC,OAAO,aAAa,CAAA;SACrB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,uCAAuC,CAAC,CAAA;SACrD;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,aAAqB,EAAE,SAAiB;QAC5D,IAAI;YACF,MAAM,SAAS,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,yBAAyB,CAAC,aAAa,EAAE,SAAS,CAAC,CAAA;YAC3F,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAChC,OAAO,SAAS,CAAA;SACjB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,8BAA8B,CAAC,CAAA;SAC5C;IACH,CAAC;IAED,KAAK,CAAC,eAAe;QACnB,IAAI;YACF,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,yBAAyB,EAAE,CAAA;YACtE,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAChC,OAAO,YAAY,CAAA;SACpB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,KAAK,CAAC,sBAAsB,CAAC,CAAA;SACpC;IACH,CAAC;IAED,KAAK,CAAC,QAAQ,CAAC,WAAkC;QAC/C,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,kDAA6B,CAAC,WAAW,CAAC,CAAA;YAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,kBAAkB,CAAC,MAAM,CAAC,CAAA;YAC9D,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAA;YACzB,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACvC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,WAAkC;QACjD,IAAI;YACF,MAAM,MAAM,GAAG,IAAI,kDAA6B,CAAC,WAAW,CAAC,CAAA;YAC7D,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAA;YAChE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,CAAA;YAC3B,OAAO,KAAK,CAAA;SACb;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACvC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CACpB,KAAa,EACb,aAAqB,EACrB,aAAsB,EACtB,oBAA+B,EAC/B,MAAe,EACf,GAAY,EACZ,GAAY,EACZ,KAAc;QAEd,IAAI;YACF,gFAAgF;YAChF,MAAM,YAAY,GAAG,aAAa;gBAChC,CAAC,CAAC,oBAAoB;oBACpB,CAAC,CAAC,CAAC,aAAa,EAAE,GAAG,oBAAoB,CAAC;oBAC1C,CAAC,CAAC,CAAC,aAAa,CAAC;gBACnB,CAAC,CAAC,oBAAoB,CAAA;YACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,0BAA0B,CAC7D,aAAa,EACb,KAAK,EACL,YAAY,EACZ,MAAM,EACN,GAAG,EACH,GAAG,EACH,KAAK,CACN,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;YACjC,OAAO,MAAM,CAAA;SACd;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;SACjD;IACH,CAAC;IAED,KAAK,CAAC,kBAAkB,CACtB,aAAqB,EACrB,IAAc,EACd,UAAqC,EAAE;QAEvC,IAAI,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE;YAC9B,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,CAAA;SAChE;QAED,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,KAAK,EAAE,GAAG,OAAO,CAAA;QAE/D,IAAI,IAAI,KAAK,UAAU,EAAE;YACvB,MAAM,oBAAoB,GACxB,GAAG,IAAI,IAAI;gBACX,GAAG,IAAI,IAAI;gBACX,KAAK,IAAI,IAAI;gBACb,YAAY,IAAI,IAAI;gBACpB,YAAY,CAAC,MAAM,GAAG,CAAC,CAAA;YACzB,IAAI,CAAC,MAAM,IAAI,CAAC,oBAAoB,EAAE;gBACpC,MAAM,IAAI,KAAK,CACb,uGAAuG,CACxG,CAAA;aACF;SACF;QAED,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,+BAA+B,CAClE,aAAa,EACb,IAAI,EACJ,YAAY,EACZ,IAAI,EACJ,MAAM,EACN,GAAG,EACH,GAAG,EACH,KAAK,CACN,CAAA;YACD,IAAI,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CAAA;YACnC,OAAO,MAAM,CAAA;SACd;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;SACnD;IACH,CAAC;IAED,6DAA6D;IAC7D,KAAK,CAAC,mBAAmB,CAAC,QAAgB;QACxC,IAAI;YACF,8EAA8E;YAC9E,iEAAiE;YACjE,IAAI,CAAC,QAAQ,CAAC,qBAAqB,CAAC,CAAA;YACpC,OAAO,EAAE,CAAA;SACV;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,kCAAkC,CAAC,CAAA;SACpD;IACH,CAAC;IACD,cAAc,CAAC,WAAwB;QACrC,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;IAChC,CAAC;IAED,eAAe,CACb,UAA2B;QACzB,kBAAkB,EAAE,IAAI;QACxB,OAAO,EAAE,EAAE,GAAG,IAAI;QAClB,UAAU,EAAE,EAAE,GAAG,IAAI;KACtB;QAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,IAAI,CAAC,WAAW,CAAC,kBAAkB,CACjC,CAAC,QAAQ,EAAE,EAAE;gBACX,OAAO,CAAC,QAAQ,CAAC,CAAA;YACnB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;gBACR,MAAM,CAAC,KAAK,CAAC,CAAA;YACf,CAAC,EACD,OAAO,CACR,CAAA;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED,iBAAiB,CACf,SAA2B,EAC3B,OAA8B,EAC9B,UAA2B;QACzB,kBAAkB,EAAE,IAAI;QACxB,OAAO,EAAE,EAAE,GAAG,IAAI;QAClB,UAAU,EAAE,IAAI;KACjB;QAED,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,CACnC,CAAC,QAAQ,EAAE,EAAE;YACX,SAAS,CAAC,QAAQ,CAAC,CAAA;QACrB,CAAC,EACD,CAAC,KAAK,EAAE,EAAE;YACR,OAAO,CAAC,KAAK,CAAC,CAAA;QAChB,CAAC,EACD,OAAO,CACR,CAAA;IACH,CAAC;IAED,mBAAmB,CAAC,OAAe;QACjC,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,OAAO,CAAC,CAAA;IACtC,CAAC;IAED,gBAAgB,CAAC,SAAoC,EAAE,OAAgC;QACrF,MAAM,QAAQ,GAAkB,CAAC,KAAY,EAAE,EAAE;YAC/C,IAAI,CAAC,IAAA,4CAAgC,EAAC,KAAK,CAAC,EAAE;gBAC5C,OAAM;aACP;YACD,IAAI,OAAO,GAAkB,IAAI,CAAA;YAEjC,IAAI,KAAK,CAAC,oBAAoB,KAAK,SAAS,EAAE;gBAC5C,WAAW;gBACX,OAAO,GAAG,KAAK,CAAC,oBAAoB,IAAI,IAAI,CAAA;aAC7C;iBAAM,IAAI,KAAK,CAAC,QAAQ,IAAI,KAAK,CAAC,KAAK,KAAK,IAAI,EAAE;gBACjD,mCAAmC;gBACnC,OAAO,GAAG,GAAG,GAAG,KAAK,CAAC,KAAK,CAAA;aAC5B;YAED,IAAI,OAAO,KAAK,IAAI,EAAE;gBACpB,SAAS,CAAC,OAAO,CAAC,CAAA;aACnB;iBAAM;gBACL,OAAO,CAAC,yCAAyC,CAAC,CAAA;aACnD;QACH,CAAC,CAAA;QACD,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;QAEpC,IAAI,6BAA6B,IAAI,MAAM,EAAE;YAC3C,6DAA6D;YAE7D,MAAM,CAAC,gBAAgB,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAA;SAC/D;aAAM,IAAI,qBAAqB,IAAI,MAAM,EAAE;YAC1C,oDAAoD;YACpD,wDAAwD;YACxD,mCAAmC;YACnC,MAAM,CAAC,GAAG,MAAgB,CAAA;YAC1B,CAAC,CAAC,gBAAgB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;SAClD;IACH,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YACzC,sCAAsC;YACtC,qDAAqD;YACrD,0BAA0B;YAC1B,MAAM,CAAC,mBAAmB,CAAC,2BAA2B,EAAE,QAAQ,CAAC,CAAA;YACjE,MAAM,CAAC,mBAAmB,CAAC,mBAAmB,EAAE,QAAQ,CAAC,CAAA;QAC3D,CAAC,CAAC,CAAA;QACF,IAAI,CAAC,gBAAgB,GAAG,EAAE,CAAA;IAC5B,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;IACzB,CAAC;IAED,KAAK,CAAC,wBAAwB,CAC5B,aAAqB,EACrB,WAAmB,EACnB,cAA8B,EAC9B,UAAsB,EACtB,IAAwB;QAExB,MAAM,IAAI,CAAC,UAAU,CAAC,6BAA6B,CACjD,aAAa,EACb,WAAW,EACX,cAAc,EACd,UAAU,EACV,IAAI,CACL,CAAA;IACH,CAAC;IAED,KAAK,CAAC,iBAAiB,CAAC,aAAqB;QAC3C,IAAI;YACF,MAAM,cAAc,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,2BAA2B,CAAC,aAAa,CAAC,CAAA;YACvF,IAAI,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAA;YAClC,OAAO,cAAc,CAAA;SACtB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,+BAA+B,CAAC,CAAA;SACjD;IACH,CAAC;IACD,gBAAgB;QACd,IAAI,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAA;IACpC,CAAC;IAED,KAAK,CAAC,mBAAmB,CAAC,IAAY;QACpC,IAAI;YACF,MAAM,gBAAgB,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,6BAA6B,CAAC,IAAI,CAAC,CAAA;YAClF,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,CAAA;YACjC,OAAO,gBAAgB,CAAA;SACxB;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,iCAAiC,CAAC,CAAA;SACnD;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,YAAoB,EACpB,OAAe,EACf,OAAe,EACf,MAAe;QAEf,IAAI;YACF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,sBAAsB,CACzD,YAAY,EACZ,OAAO,EACP,OAAO,EACP,MAAM,CACP,CAAA;YACD,OAAO,MAAM,CAAA;SACd;QAAC,OAAO,KAAK,EAAE;YACd,MAAM,IAAI,KAAK,CAAC,yBAAyB,CAAC,CAAA;SAC3C;IACH,CAAC;CACF;AA/bD,4CA+bC"}
1
+ {"version":3,"file":"sdk.js","sourceRoot":"","sources":["../../src/sdk.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,143 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.Semaphore = void 0;
4
+ /**
5
+ * Lower bound (inclusive) for the semaphore concurrency limit.
6
+ *
7
+ * A value of 1 means at least one operation can run at a time, which keeps the
8
+ * semaphore meaningful: zero or negative limits would deadlock every caller.
9
+ */
10
+ const MIN_LIMIT = 1;
11
+ /**
12
+ * Upper bound (inclusive) for the semaphore concurrency limit.
13
+ *
14
+ * 64 is high enough for any practical browser-side fan-out (network requests,
15
+ * tile fetches, etc.) while still protecting downstream services from being
16
+ * overwhelmed by misconfigured callers.
17
+ */
18
+ const MAX_LIMIT = 64;
19
+ /**
20
+ * Validate and normalize a candidate concurrency limit.
21
+ *
22
+ * @param limit - Candidate value to validate.
23
+ * @returns The validated integer limit, or `null` if the value is invalid.
24
+ */
25
+ function normalizeLimit(limit) {
26
+ if (!Number.isFinite(limit))
27
+ return null;
28
+ const floored = Math.floor(limit);
29
+ if (floored < MIN_LIMIT || floored > MAX_LIMIT)
30
+ return null;
31
+ return floored;
32
+ }
33
+ /**
34
+ * Counting semaphore that caps the number of concurrent operations.
35
+ *
36
+ * Useful when calling APIs, CDNs, or other shared resources where unbounded
37
+ * parallelism can trigger rate limiting, WAF blocks, or excessive memory use.
38
+ * Waiters are released in FIFO order as slots become free.
39
+ *
40
+ * @example
41
+ * ```typescript
42
+ * const sem = new Semaphore(4);
43
+ *
44
+ * async function fetchTile(url: string) {
45
+ * await sem.acquire();
46
+ * try {
47
+ * return await fetch(url);
48
+ * } finally {
49
+ * sem.release();
50
+ * }
51
+ * }
52
+ * ```
53
+ *
54
+ * @group Utils
55
+ */
56
+ class Semaphore {
57
+ /**
58
+ * @param limit - Maximum number of concurrent slots. Must be a finite
59
+ * integer in `[1, 64]`; invalid values fall back to `1`.
60
+ */
61
+ constructor(limit = MIN_LIMIT) {
62
+ var _a;
63
+ this.waiters = [];
64
+ this.slotsInUse = 0;
65
+ this.slotLimit = (_a = normalizeLimit(limit)) !== null && _a !== void 0 ? _a : MIN_LIMIT;
66
+ }
67
+ /**
68
+ * Maximum number of slots that can be acquired concurrently.
69
+ */
70
+ get limit() {
71
+ return this.slotLimit;
72
+ }
73
+ /**
74
+ * Number of slots currently held by callers (acquired but not released).
75
+ */
76
+ get inUse() {
77
+ return this.slotsInUse;
78
+ }
79
+ /**
80
+ * Number of callers currently waiting for a slot.
81
+ */
82
+ get waiting() {
83
+ return this.waiters.length;
84
+ }
85
+ /**
86
+ * Acquire one slot. Resolves immediately if a slot is free; otherwise waits
87
+ * in FIFO order until `release()` is called.
88
+ *
89
+ * Every successful `acquire()` must be paired with exactly one `release()`,
90
+ * typically from a `finally` block. If the promise rejects (e.g. the optional
91
+ * `signal` aborts while queued) no slot was granted, so `release()` must NOT
92
+ * be called.
93
+ *
94
+ * @param signal - Optional `AbortSignal`. If it aborts while the caller is
95
+ * still queued, the waiter is removed from the queue and the promise rejects
96
+ * with an `AbortError`, so cancelled work never occupies a slot.
97
+ * @returns A promise that resolves once a slot has been granted.
98
+ */
99
+ acquire(signal) {
100
+ if (signal === null || signal === void 0 ? void 0 : signal.aborted) {
101
+ return Promise.reject(new DOMException("Aborted", "AbortError"));
102
+ }
103
+ if (this.slotsInUse < this.slotLimit) {
104
+ this.slotsInUse++;
105
+ return Promise.resolve();
106
+ }
107
+ return new Promise((resolve, reject) => {
108
+ const waiter = () => {
109
+ this.slotsInUse++;
110
+ resolve();
111
+ };
112
+ this.waiters.push(waiter);
113
+ if (signal) {
114
+ signal.addEventListener("abort", () => {
115
+ const index = this.waiters.indexOf(waiter);
116
+ if (index !== -1) {
117
+ this.waiters.splice(index, 1);
118
+ reject(new DOMException("Aborted", "AbortError"));
119
+ }
120
+ }, { once: true });
121
+ }
122
+ });
123
+ }
124
+ /**
125
+ * Release one slot, waking the next FIFO waiter only when a slot was actually
126
+ * freed.
127
+ *
128
+ * Safe to call even when no slots are in use: it is a true no-op in that case,
129
+ * so cleanup code in `finally` blocks is defensive against double-releases and
130
+ * a stray release can never admit a waiter beyond {@link limit}.
131
+ */
132
+ release() {
133
+ if (this.slotsInUse > 0) {
134
+ this.slotsInUse--;
135
+ const next = this.waiters.shift();
136
+ if (next) {
137
+ next();
138
+ }
139
+ }
140
+ }
141
+ }
142
+ exports.Semaphore = Semaphore;
143
+ //# sourceMappingURL=semaphore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semaphore.js","sourceRoot":"","sources":["../../../src/utils/semaphore.ts"],"names":[],"mappings":";;;AAAA;;;;;GAKG;AACH,MAAM,SAAS,GAAG,CAAC,CAAA;AAEnB;;;;;;GAMG;AACH,MAAM,SAAS,GAAG,EAAE,CAAA;AAEpB;;;;;GAKG;AACH,SAAS,cAAc,CAAC,KAAa;IACnC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC;QAAE,OAAO,IAAI,CAAA;IACxC,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;IACjC,IAAI,OAAO,GAAG,SAAS,IAAI,OAAO,GAAG,SAAS;QAAE,OAAO,IAAI,CAAA;IAC3D,OAAO,OAAO,CAAA;AAChB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAa,SAAS;IAKpB;;;OAGG;IACH,YAAY,QAAgB,SAAS;;QAR7B,YAAO,GAAsB,EAAE,CAAA;QAC/B,eAAU,GAAG,CAAC,CAAA;QAQpB,IAAI,CAAC,SAAS,GAAG,MAAA,cAAc,CAAC,KAAK,CAAC,mCAAI,SAAS,CAAA;IACrD,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,SAAS,CAAA;IACvB,CAAC;IAED;;OAEG;IACH,IAAI,KAAK;QACP,OAAO,IAAI,CAAC,UAAU,CAAA;IACxB,CAAC;IAED;;OAEG;IACH,IAAI,OAAO;QACT,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAA;IAC5B,CAAC;IAED;;;;;;;;;;;;;OAaG;IACH,OAAO,CAAC,MAAoB;QAC1B,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,EAAE;YACnB,OAAO,OAAO,CAAC,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;SACjE;QACD,IAAI,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,EAAE;YACpC,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,OAAO,OAAO,CAAC,OAAO,EAAE,CAAA;SACzB;QACD,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,MAAM,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,GAAS,EAAE;gBACxB,IAAI,CAAC,UAAU,EAAE,CAAA;gBACjB,OAAO,EAAE,CAAA;YACX,CAAC,CAAA;YACD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;YACzB,IAAI,MAAM,EAAE;gBACV,MAAM,CAAC,gBAAgB,CACrB,OAAO,EACP,GAAG,EAAE;oBACH,MAAM,KAAK,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,CAAC,CAAA;oBAC1C,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE;wBAChB,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;wBAC7B,MAAM,CAAC,IAAI,YAAY,CAAC,SAAS,EAAE,YAAY,CAAC,CAAC,CAAA;qBAClD;gBACH,CAAC,EACD,EAAE,IAAI,EAAE,IAAI,EAAE,CACf,CAAA;aACF;QACH,CAAC,CAAC,CAAA;IACJ,CAAC;IAED;;;;;;;OAOG;IACH,OAAO;QACL,IAAI,IAAI,CAAC,UAAU,GAAG,CAAC,EAAE;YACvB,IAAI,CAAC,UAAU,EAAE,CAAA;YACjB,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,EAAE,CAAA;YACjC,IAAI,IAAI,EAAE;gBACR,IAAI,EAAE,CAAA;aACP;SACF;IACH,CAAC;CACF;AA/FD,8BA+FC"}
@@ -1 +1 @@
1
- {"version":3,"file":"routeController.d.ts","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"routeController.d.ts","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"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"}
@@ -1,7 +1,7 @@
1
1
  import { MarkerAttribute } from "../domain/models/marker";
2
+ import { createRouteInstance } from "../domain/models/routeInstance";
2
3
  import { NavFunctions, compareLatLng } from "../utils/nav-functions";
3
4
  import { createPositionsForStops, createStops } from "../utils/utils";
4
- import { createRouteInstance } from "../domain/models/routeInstance";
5
5
  /**
6
6
  * Default padding values for auto-fit by place feature.
7
7
  * Used when padding is not explicitly provided in the animation configuration.
@@ -949,6 +949,24 @@ export class RouteController {
949
949
  return;
950
950
  }
951
951
  }
952
+ if (step.startInsideFloor !== step.endInsideFloor) {
953
+ if (waitStartTime == null) {
954
+ instance.conditions.waitStartTime = timestamp;
955
+ instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
956
+ return;
957
+ }
958
+ if (timestamp - waitStartTime < changeFloorTime * 1000) {
959
+ instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
960
+ return;
961
+ }
962
+ else {
963
+ this.updatePlaceFloorForRouting(instance, step.endInsidePlace, step.endInsideFloor);
964
+ this.setMarkerLngLat(instance, step.endLocation);
965
+ instance.conditions.waitStartTime = undefined;
966
+ onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
967
+ return;
968
+ }
969
+ }
952
970
  const distance = NavFunctions.distance(start, end);
953
971
  const speed = Math.max(step.distance / stepTime, minimumSpeed !== null && minimumSpeed !== void 0 ? minimumSpeed : 0);
954
972
  if (speed * progressInSeconds > distance) {
@@ -973,24 +991,6 @@ export class RouteController {
973
991
  instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
974
992
  return;
975
993
  }
976
- else if (step.startInsideFloor !== step.endInsideFloor) {
977
- if (waitStartTime == null) {
978
- instance.conditions.waitStartTime = timestamp;
979
- instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
980
- return;
981
- }
982
- if (timestamp - waitStartTime < changeFloorTime * 1000) {
983
- instance.conditions.animationId = requestAnimationFrame((time) => this.animateStep(time, instance));
984
- return;
985
- }
986
- else {
987
- this.updatePlaceFloorForRouting(instance, step.endInsidePlace, step.endInsideFloor);
988
- this.setMarkerLngLat(instance, step.endLocation);
989
- instance.conditions.waitStartTime = undefined;
990
- onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
991
- return;
992
- }
993
- }
994
994
  else {
995
995
  onFinish === null || onFinish === void 0 ? void 0 : onFinish(timestamp);
996
996
  return;
@@ -1 +1 @@
1
- {"version":3,"file":"routeController.js","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"AAaA,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAA;AAIzD,OAAO,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,wBAAwB,CAAA;AACpE,OAAO,EAAE,uBAAuB,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAA;AACrE,OAAO,EAAsB,mBAAmB,EAAE,MAAM,gCAAgC,CAAA;AAExF;;;GAGG;AACH,MAAM,wBAAwB,GAAmB;IAC/C,GAAG,EAAE,GAAG;IACR,KAAK,EAAE,GAAG;IACV,MAAM,EAAE,GAAG;IACX,IAAI,EAAE,GAAG;CACV,CAAA;AAED;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IAK1B,YAAY,GAAqB;QAHhB,WAAM,GAA+B,IAAI,GAAG,EAAE,CAAA;QAI7D,IAAI,CAAC,QAAQ,GAAG,GAAG,CAAA;IACrB,CAAC;IAED,IAAY,GAAG;QACb,OAAO,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAA;IAC1B,CAAC;IAED;;OAEG;IACK,eAAe,CAAC,OAAgB;QACtC,MAAM,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,gBAAgB,CAAA;QAC3C,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;IAC7C,CAAC;IAED;;OAEG;IACK,2BAA2B,CAAC,QAAuB;QACzD,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,OAAO,EAAE;YACnC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ,CAAC,eAAe;SAC/B,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAChB,EAAE,EAAE,QAAQ,CAAC,OAAO;YACpB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,QAAQ,CAAC,OAAO;YACxB,MAAM,EAAE;gBACN,WAAW,EAAE,OAAO;gBACpB,UAAU,EAAE,OAAO;aACpB;SACF,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,QAAQ,EAAE;YACpC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ,CAAC,gBAAgB;SAChC,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAChB,EAAE,EAAE,QAAQ,CAAC,QAAQ;YACrB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,QAAQ,CAAC,QAAQ;YACzB,MAAM,EAAE;gBACN,WAAW,EAAE,OAAO;gBACpB,UAAU,EAAE,OAAO;aACpB;SACF,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,EAAE;YACrC,IAAI,EAAE,SAAS;YACf,IAAI,EAAE,QAAQ,CAAC,iBAAiB;SACjC,CAAC,CAAA;QACF,IAAI,CAAC,GAAG,CAAC,QAAQ,CAAC;YAChB,EAAE,EAAE,QAAQ,CAAC,SAAS;YACtB,IAAI,EAAE,MAAM;YACZ,MAAM,EAAE,QAAQ,CAAC,SAAS;YAC1B,MAAM,EAAE;gBACN,WAAW,EAAE,OAAO;gBACpB,UAAU,EAAE,OAAO;aACpB;SACF,CAAC,CAAA;IACJ,CAAC;IAED;;OAEG;IACK,8BAA8B,CAAC,QAAuB;QAC5D,MAAM,GAAG,GAAG,CAAC,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,QAAQ,EAAE,QAAQ,CAAC,SAAS,CAAC,CAAA;QACrE,KAAK,MAAM,EAAE,IAAI,GAAG,EAAE;YACpB,IAAI;gBACF,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAA;aACzB;YAAC,WAAM;gBACN,sBAAsB;aACvB;YACD,IAAI;gBACF,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,EAAE,CAAC,CAAA;aAC1B;YAAC,WAAM;gBACN,uBAAuB;aACxB;SACF;IACH,CAAC;IAED;;;OAGG;IACH,mBAAmB;QACjB,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAA;SAC3C;IACH,CAAC;IAED;;;;OAIG;IACH,QAAQ,CAAC,KAAe,EAAE,UAA0C;QAClE,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,EAAE,CAAA;QACnC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAChD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED;;;;;;;;OAQG;IACH,mBAAmB,CACjB,OAAe,EACf,QAAgB,EAChB,gBAAgD;QAEhD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAA;QACzC,IAAI,CAAC,QAAQ;YAAE,OAAM;QAErB,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAA;QAC5B,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAA;QAEzB,sDAAsD;QACtD,IAAI,QAAQ,GAAG,QAAQ,CAAA;QACvB,IAAI,aAAa,GAAG,CAAC,CAAA;QACrB,IAAI,cAAc,GAAG,CAAC,CAAA;QACtB,IAAI,YAAY,GAAG,CAAC,CAAA;QAEpB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrC,MAAM,MAAM,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAA;YACnC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE;gBAC1C,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,CAAC,CAAA;gBACnB,MAAM,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;gBACvB,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,GAAG,IAAI,CAAC,qBAAqB,CAAC,QAAQ,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;gBACrE,IAAI,IAAI,GAAG,QAAQ,EAAE;oBACnB,QAAQ,GAAG,IAAI,CAAA;oBACf,aAAa,GAAG,CAAC,CAAA;oBACjB,cAAc,GAAG,CAAC,CAAA;oBAClB,YAAY,GAAG,QAAQ,CAAA;iBACxB;aACF;SACF;QAED,kEAAkE;QAClE,yEAAyE;QACzE,MAAM,cAAc,GAAc,EAAE,CAAA;QACpC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,EAAE,CAAC,EAAE,EAAE;YACtC,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC5D,QAAQ,EAAE;oBACR,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB;iBACzC;aACF,CAAC,CAAA;SACH;QAED,sEAAsE;QACtE,MAAM,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,CAAA;QACxC,MAAM,aAAa,GAAG,WAAW,CAAC,WAAW,CAAA;QAC7C,MAAM,mBAAmB,GAAuB,EAAE,CAAA;QAClD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,IAAI,cAAc,EAAE,CAAC,EAAE,EAAE;YACxC,mBAAmB,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;SACvE;QACD,0BAA0B;QAC1B,MAAM,CAAC,GAAG,aAAa,CAAC,cAAc,CAAC,CAAA;QACvC,MAAM,CAAC,GAAG,aAAa,CAAC,IAAI,CAAC,GAAG,CAAC,cAAc,GAAG,CAAC,EAAE,aAAa,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAA;QAC/E,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;QACtD,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,YAAY,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,CAAA;QACtD,mBAAmB,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;QAE5C,IAAI,mBAAmB,CAAC,MAAM,IAAI,CAAC,EAAE;YACnC,cAAc,CAAC,IAAI,CAAC;gBAClB,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE;gBAC/D,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,mBAAmB,EAAE;aACnE,CAAC,CAAA;SACH;QAED,gFAAgF;QAChF,MAAM,aAAa,GAAc,EAAE,CAAA;QACnC,MAAM,kBAAkB,GAAuB,CAAC,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC,CAAA;QACnE,KAAK,IAAI,CAAC,GAAG,cAAc,GAAG,CAAC,EAAE,CAAC,GAAG,aAAa,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YAC9D,kBAAkB,CAAC,IAAI,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,aAAa,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAA;SACtE;QACD,IAAI,kBAAkB,CAAC,MAAM,IAAI,CAAC,EAAE;YAClC,aAAa,CAAC,IAAI,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,WAAW,CAAC,EAAE;gBAC/D,QAAQ,EAAE,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW,EAAE,kBAAkB,EAAE;aAClE,CAAC,CAAA;SACH;QACD,KAAK,IAAI,CAAC,GAAG,aAAa,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE;YACrD,aAAa,CAAC,IAAI,CAAC;gBACjB,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE;gBAC5D,QAAQ,EAAE;oBACR,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC,CAAC,kBAAkB;iBACzC;aACF,CAAC,CAAA;SACH;QAED,iBAAiB;QACjB,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,GAAG,cAAc,CAAA;QACnD,MAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACzE,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;QAEhD,QAAQ,CAAC,eAAe,CAAC,QAAQ,GAAG,aAAa,CAAA;QACjD,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,OAAO,CAAC,CAAA;QACvE,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;QAE9C,0CAA0C;QAC1C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,gBAAgB,CAAC,CAAA;QACvD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAA;QACzC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAED;;OAEG;IACK,qBAAqB,CAC3B,CAAS,EACT,CAAS,EACT,CAAS;QAET,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;QACxB,MAAM,EAAE,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;QACxB,MAAM,KAAK,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAA;QAC/B,IAAI,KAAK,KAAK,CAAC,EAAE;YACf,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;YACzB,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAA;YACzB,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,CAAA;SACpD;QACD,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,GAAG,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,CAAC,GAAG,KAAK,CAAA;QAC7D,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAA;QAC/B,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAA;QAC9B,MAAM,OAAO,GAAG,CAAC,CAAC,GAAG,GAAG,CAAC,GAAG,EAAE,CAAA;QAC9B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,OAAO,CAAA;QAC3B,MAAM,GAAG,GAAG,CAAC,CAAC,GAAG,GAAG,OAAO,CAAA;QAC3B,OAAO,EAAE,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,EAAE,CAAA;IACrD,CAAC;IAEO,aAAa,CAAC,QAAuB,EAAE,EAAU,EAAE,KAAqB;QAC9E,MAAM,QAAQ,GAAG,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAA;QAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,EAAE,CAAC,CAAA;QACpD,IAAI,EAAE,KAAK,QAAQ,CAAC,OAAO,EAAE;YAC3B,QAAQ,CAAC,eAAe,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC5C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAA;SAC1C;aAAM,IAAI,EAAE,KAAK,QAAQ,CAAC,QAAQ,EAAE;YACnC,QAAQ,CAAC,gBAAgB,CAAC,QAAQ,GAAG,QAAQ,CAAA;YAC7C,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;SAC3C;IACH,CAAC;IAEO,oBAAoB,CAAC,QAAuB,EAAE,IAA8B;QAClF,QAAQ,CAAC,iBAAiB,CAAC,UAAU,GAAG;YACtC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;SACzC,CAAA;QACD,MAAM,UAAU,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,WAAW,CAAC,CAAC,CAAC,CAAA;QACvC,IAAI,UAAU,IAAI,IAAI,EAAE;YACtB,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG,CAAC,CAAC,UAAU,CAAC,GAAG,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,CAAA;SACrF;aAAM;YACL,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAA;SACrD;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,SAAS,CAAC,CAAA;QACpE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;IAC7C,CAAC;IAEO,aAAa,CAAC,OAAe,EAAE,UAA0C;QAC/E,MAAM,WAAW,GAAG,IAAI,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAA;QAEzD,KAAK,MAAM,QAAQ,IAAI,WAAW,EAAE;YAClC,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC,CAAA;SACpE;IACH,CAAC;IAEO,oBAAoB,CAC1B,UAA0C;QAE1C,IAAI,OAAO,IAAI,UAAU,CAAC,UAAU,EAAE;YACpC,2CAA2C;YAC3C,OAAO;gBACL,YAAY,EAAE,UAAU,CAAC,UAAU,CAAC,KAAK;gBACzC,eAAe,EAAE,IAAI;gBACrB,YAAY,EAAE,UAAU,CAAC,aAAa;aACvC,CAAA;SACF;aAAM;YACL,oBAAoB;YACpB,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,UAAU,CAAC,UAAU,CAAA;YAEnD,IAAI,cAAc,GAAG,SAAS,CAAA;YAC9B,IAAI,cAAc,IAAI,IAAI,EAAE;gBAC1B,cAAc,GAAG,uBAAuB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAA;aACxD;YAED,IAAI,cAAc,CAAC,MAAM,KAAK,MAAM,CAAC,MAAM,EAAE;gBAC3C,MAAM,IAAI,KAAK,CAAC,8DAA8D,CAAC,CAAA;aAChF;YAED,MAAM,KAAK,GAAG,WAAW,CAAC,cAAc,EAAE,MAAM,CAAC,CAAA;YACjD,MAAM,QAAQ,GAA4B;gBACxC,aAAa;gBACb,CAAC,QAAQ,CAAC;gBACV,CAAC,eAAe,CAAC;gBACjB,GAAG,KAAK;aACT,CAAA;YACD,OAAO;gBACL,YAAY,EAAE,IAAI;gBAClB,eAAe,EAAE,QAAQ;gBACzB,YAAY,EAAE,UAAU,CAAC,aAAa;aACvC,CAAA;SACF;IACH,CAAC;IAED;;;;;OAKG;IACK,iBAAiB,CAAC,OAAe,EAAE,OAAgB;QACzD,MAAM,UAAU,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;QAC7D,IAAI,UAAU,KAAK,SAAS;YAAE,OAAM;QACpC,IAAI,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,EAAE,KAAK,OAAO,CAAC,EAAE;YACpE,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,EAAE,UAAU,CAAC,CAAC,CAAA;SACtE;IACH,CAAC;IAED;;;;;;;;OAQG;IACK,kBAAkB,CAAC,IAA8B;;QACvD,IAAI,CAAC,IAAI,EAAE;YACT,OAAO,IAAI,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAA;SACvC;QAED,sFAAsF;QACtF,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,gBAAgB,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC,EAAE;YAC5C,gFAAgF;YAChF,oEAAoE;YACpE,kFAAkF;YAClF,IACE,CAAC,MAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC;gBACtC,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,cAAc;gBAC7C,CAAC,IAAI,CAAC,YAAY,EAClB;gBACA,OAAO,IAAI,CAAC,cAAe,CAAA;aAC5B;YACD,OAAO,IAAI,CAAC,gBAAiB,CAAA;SAC9B;QAED,6FAA6F;QAC7F,IAAI,CAAC,MAAA,MAAA,IAAI,CAAC,cAAc,0CAAE,MAAM,mCAAI,CAAC,CAAC,GAAG,CAAC,EAAE;YAC1C,OAAO,IAAI,CAAC,cAAe,CAAA;SAC5B;QAED,wFAAwF;QACxF,MAAM,WAAW,GAAG,IAAI,CAAC,QAAQ,CAAC,cAAc,EAAE,CAAA;QAClD,MAAM,YAAY,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,gBAAgB,KAAK,IAAI,CAAC,CAAA;QACjF,OAAO,MAAA,YAAY,aAAZ,YAAY,uBAAZ,YAAY,CAAE,GAAG,mCAAI,EAAE,CAAA;IAChC,CAAC;IAEO,kBAAkB,CAAC,KAAqB;QAC9C,MAAM,QAAQ,GAAc,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;YAC7C,OAAO;gBACL,IAAI,EAAE,SAAS;gBACf,UAAU,EAAE,EAAE,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,EAAE;gBACxD,QAAQ,EAAE;oBACR,IAAI,EAAE,YAAY;oBAClB,WAAW,EAAE,IAAI,CAAC,kBAAkB;iBACrC;aACF,CAAA;QACH,CAAC,CAAC,CAAA;QACF,OAAO,QAAQ,CAAA;IACjB,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,OAAe;QAC/B,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC,CAAA;YACjD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAA;YAClD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAA;SACpD;IACH,CAAC;IAED;;;OAGG;IACH,2BAA2B,CAAC,OAAe;;QACzC,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YAC3C,CAAA,MAAA,QAAQ,CAAC,WAAW,0CAAE,OAAO,MAAK,OAAO;gBACvC,CAAC,CAAC,MAAA,QAAQ,CAAC,WAAW,0CAAE,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC;gBACtC,CAAC,CAAC,MAAA,QAAQ,CAAC,WAAW,0CAAE,IAAI,EAAE,CAAA;SACjC;IACH,CAAC;IAEO,0BAA0B,CAAC,QAAuB,EAAE,OAAgB,EAAE,QAAiB;;QAC7F,IAAI,OAAO,IAAI,QAAQ,EAAE;YACvB,IAAI,CAAC,QAAQ,CAAC,6BAA6B,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;YAC9D,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,CAAA;YAChC,MAAA,QAAQ,CAAC,WAAW,0CAAE,QAAQ,CAAC,QAAQ,CAAC,CAAA;YACxC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAA;SAC3C;IACH,CAAC;IAED;;;;;OAKG;IACH,cAAc,CACZ,KAAe,EACf,UAA0C,EAC1C,eAAwC;;QAExC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,EAAE,CAAA;QAEnC,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAA;QACpC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;QACtB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEhC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,0BAA0B,CAC7B,QAAQ,EACR,SAAS,CAAC,gBAAgB,EAC1B,SAAS,CAAC,gBAAgB,CAC3B,CAAA;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACnD,QAAQ,CAAC,iBAAiB,CAAC,UAAU,GAAG;YACtC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;SAC9C,CAAA;QACD,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG;YAChD,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAC7D,CAAA;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QAC/D,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAA;QAE1C,QAAQ,CAAC,WAAW,GAAG,IAAI,eAAe,CAAC;YACzC,UAAU,EAAE,SAAS,CAAC,aAAa;YACnC,OAAO,EAAE,SAAS,CAAC,gBAAgB;YACnC,IAAI,EAAE,UAAU,CAAC,SAAS;YAC1B,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAA;QACF,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEvC,+BAA+B;QAC/B,IAAI,CAAA,MAAA,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACrE,IAAI,SAAS,CAAC,gBAAgB,EAAE;gBAC9B,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAA;gBACpD,MAAM,UAAU,GAAG;oBACjB,OAAO,EAAE,MAAA,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;iBAC5E,CAAA;gBACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;aAC7E;SACF;QAED,MAAA,eAAe,CAAC,QAAQ,gEAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAElE,QAAQ,CAAC,UAAU,GAAG;YACpB,KAAK,EAAE,CAAC;YACR,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtF,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC;SACpE,CAAA;IACH,CAAC;IAEO,kBAAkB,CAAC,QAAuB;;QAChD,MAAA,QAAQ,CAAC,WAAW,0CAAE,MAAM,EAAE,CAAA;QAC9B,QAAQ,CAAC,WAAW,GAAG,SAAS,CAAA;QAChC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC,CAAA;QAClD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACnD,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAA;QACpD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,SAAS,CAAC,CAAA;QACpE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAC3C,IACE,CAAC,QAAQ,CAAC,eAAe,KAAK,SAAS,IAAI,QAAQ,CAAC,mBAAmB,KAAK,WAAW,CAAC;YACxF,QAAQ,CAAC,UAAU,IAAI,IAAI,EAC3B;YACA,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;SACtD;QACD,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAA;QACrC,QAAQ,CAAC,mBAAmB,GAAG,UAAU,CAAA;QACzC,QAAQ,CAAC,UAAU,GAAG,SAAS,CAAA;QAC/B,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAA;QACpC,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAA;IACrC,CAAC;IAED;;;OAGG;IACH,WAAW,CAAC,OAAgB;QAC1B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;QACjC,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAA;QAC7C,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAA;QAC/B,IAAI,IAAI,CAAC,gBAAgB,KAAK,QAAQ,CAAC,EAAE,EAAE;YACzC,MAAM,SAAS,GAAG,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;YACzC,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;SAC3F;IACH,CAAC;IAED;;OAEG;IACH,eAAe;QACb,KAAK,MAAM,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE;YAC3C,IAAI,CAAC,kBAAkB,CAAC,QAAQ,CAAC,CAAA;YACjC,IAAI,CAAC,8BAA8B,CAAC,QAAQ,CAAC,CAAA;SAC9C;QACD,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAA;QACnB,IAAI,CAAC,gBAAgB,GAAG,SAAS,CAAA;IACnC,CAAC;IAED;;;OAGG;IACH,WAAW;QACT,OAAO,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAA;IAChC,CAAC;IAEO,aAAa,CAAC,QAAuB;QAC3C,IAAI,QAAQ,CAAC,eAAe,IAAI,SAAS;YAAE,OAAM;QACjD,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI;YAAE,OAAM;QACvC,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;QACrD,QAAQ,CAAC,eAAe,GAAG,QAAQ,CAAA;IACrC,CAAC;IAED;;;OAGG;IACH,cAAc,CAAC,OAAgB;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAA;IAC9B,CAAC;IAEO,cAAc,CAAC,QAAuB;QAC5C,IAAI,QAAQ,CAAC,eAAe,IAAI,QAAQ;YAAE,OAAM;QAChD,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI;YAAE,OAAM;QACvC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,IAAI,CAAA;QACpC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;QACD,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAA;IACtC,CAAC;IAED;;;OAGG;IACH,eAAe,CAAC,OAAgB;QAC9B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;IAC/B,CAAC;IAED;;;OAGG;IACH,gBAAgB,CAAC,OAAgB;;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC5D;QACD,IAAI,QAAQ,CAAC,eAAe,KAAK,UAAU,EAAE;YAC3C,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAA;SAC5D;QACD,IACE,QAAQ,CAAC,UAAU,IAAI,IAAI;YAC3B,QAAQ,CAAC,eAAe,IAAI,IAAI;YAChC,QAAQ,CAAC,KAAK,IAAI,IAAI;YACtB,QAAQ,CAAC,WAAW,IAAI,IAAI,EAC5B;YACA,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;SAC1F;QAED,IAAI,QAAQ,CAAC,eAAe,KAAK,SAAS,EAAE;YAC1C,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;SACtD;QAED,QAAQ,CAAC,eAAe,GAAG,SAAS,CAAA;QAEpC,MAAM,SAAS,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEzC,IAAI,CAAC,0BAA0B,CAC7B,QAAQ,EACR,SAAS,CAAC,gBAAgB,EAC1B,SAAS,CAAC,gBAAgB,CAC3B,CAAA;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACpE,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACnD,QAAQ,CAAC,iBAAiB,CAAC,UAAU,GAAG;YACtC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC;SAC9C,CAAA;QACD,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG;YAChD,CAAC,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC;SAC7D,CAAA;QACD,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,SAAS,CAAC,CAAA;QACpE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;QAE3C,MAAA,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,0CAAE,SAAS,CAAC,SAAS,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEvF,+BAA+B;QAC/B,IAAI,CAAA,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACvF,IAAI,SAAS,CAAC,gBAAgB,EAAE;gBAC9B,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAA;gBACpD,MAAM,UAAU,GAAG;oBACjB,OAAO,EAAE,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;iBACrF,CAAA;gBACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;aACtF;SACF;QAED,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAC,QAAQ,mDAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAE3E,QAAQ,CAAC,UAAU,GAAG;YACpB,KAAK,EAAE,CAAC;YACR,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;YACtF,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,EAAE,QAAQ,CAAC;SACpE,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,aAAa,CAAC,OAAgB;QAC5B,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ;YAAE,OAAM;QACrB,IAAI,QAAQ,CAAC,eAAe,IAAI,UAAU,EAAE;YAC1C,OAAM;SACP;QACD,0CAA0C;QAC1C,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAA;IACvC,CAAC;IAED;;;;;OAKG;IACH,gBAAgB,CACd,KAAe,EACf,UAA0C,EAC1C,eAAwC;;QAExC,MAAM,QAAQ,GAAG,mBAAmB,CAAC,KAAK,CAAC,CAAA;QAC3C,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAA;QACtC,IAAI,CAAC,gBAAgB,GAAG,QAAQ,CAAC,EAAE,CAAA;QAEnC,QAAQ,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACxC,QAAQ,CAAC,KAAK,GAAG,KAAK,CAAA;QACtB,MAAM,SAAS,GAAG,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAA;QAEhC,IAAI,CAAC,2BAA2B,CAAC,QAAQ,CAAC,CAAA;QAC1C,IAAI,CAAC,0BAA0B,CAC7B,QAAQ,EACR,SAAS,CAAC,gBAAgB,EAC1B,SAAS,CAAC,gBAAgB,CAC3B,CAAA;QAED,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,KAAK,CAAC,CAAA;QAC3D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QACnD,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAA;QAE9C,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,WAAW,CAAC,CAAA;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QAC9D,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,SAAS,EAAE,UAAU,CAAC,YAAY,CAAC,CAAA;QAC/D,QAAQ,CAAC,eAAe,GAAG,eAAe,CAAA;QAE1C,QAAQ,CAAC,WAAW,GAAG,IAAI,eAAe,CAAC;YACzC,UAAU,EAAE,SAAS,CAAC,aAAa;YACnC,OAAO,EAAE,SAAS,CAAC,gBAAgB;YACnC,IAAI,EAAE,UAAU,CAAC,SAAS;YAC1B,iBAAiB,EAAE,KAAK;SACzB,CAAC,CAAA;QACF,QAAQ,CAAC,WAAW,CAAC,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;QAEvC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,SAAS,CAAC,aAAa,CAAC,CAAA;QAEpD,+BAA+B;QAC/B,IAAI,CAAA,MAAA,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,KAAK,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;YACrE,IAAI,SAAS,CAAC,gBAAgB,EAAE;gBAC9B,QAAQ,CAAC,cAAc,GAAG,SAAS,CAAC,gBAAgB,CAAA;gBACpD,MAAM,UAAU,GAAG;oBACjB,OAAO,EAAE,MAAA,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;iBAC5E,CAAA;gBACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,SAAS,CAAC,gBAAgB,EAAE,UAAU,CAAC,CAAA;aAC7E;SACF;QAED,MAAA,eAAe,CAAC,QAAQ,gEAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,CAAA;QAElE,QAAQ,CAAC,UAAU,GAAG;YACpB,KAAK,EAAE,CAAC;YACR,gBAAgB,EAAE,CAAC;YACnB,YAAY,EAAE,CAAC;YACf,YAAY,EAAE,IAAI;YAClB,SAAS,EAAE,SAAS;YACpB,QAAQ,EAAE,CAAC;YACX,SAAS,EAAE,KAAK;YAChB,aAAa,EAAE,SAAS;YACxB,WAAW,EAAE,CAAC;YACd,YAAY,EAAE,IAAI;YAClB,QAAQ,EAAE,GAAG,EAAE;;gBACb,IACE,QAAQ,CAAC,UAAU,IAAI,IAAI;oBAC3B,QAAQ,CAAC,eAAe,IAAI,IAAI;oBAChC,QAAQ,CAAC,KAAK,IAAI,IAAI,EACtB;oBACA,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;iBACF;gBACD,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;gBACnC,KAAK,EAAE,CAAA;gBAEP,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;gBACxD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;gBAExC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;gBAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;gBAC1D,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;gBAEzC,QAAQ,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAA;gBACjC,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;oBAC9B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;oBAEnC,iDAAiD;oBACjD,IAAI,CAAA,MAAA,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,QAAQ,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;wBACjF,MAAM,WAAW,GAAG,QAAQ,CAAC,gBAAgB,IAAI,QAAQ,CAAC,cAAc,CAAA;wBACxE,IAAI,WAAW,IAAI,WAAW,KAAK,QAAQ,CAAC,cAAc,EAAE;4BAC1D,QAAQ,CAAC,cAAc,GAAG,WAAW,CAAA;4BACrC,MAAM,UAAU,GAAG;gCACjB,OAAO,EAAE,MAAA,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;6BAC5E,CAAA;4BACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;yBACvE;qBACF;oBAED,MAAA,eAAe,CAAC,QAAQ,gEAAG,EAAE,UAAU,EAAE,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,CAAA;iBAClE;qBAAM;oBACL,MAAA,eAAe,CAAC,QAAQ,gEAAG,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;iBAC7D;gBACD,QAAQ,CAAC,mBAAmB,GAAG,SAAS,CAAA;YAC1C,CAAC;SACF,CAAA;IACH,CAAC;IAED;;;OAGG;IACH,iBAAiB,CAAC,OAAgB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,UAAU,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;YAC7F,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;SACF;QACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,WAAW,EAAE;YAChD,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;SACtD;QACD,QAAQ,CAAC,mBAAmB,GAAG,WAAW,CAAA;QAE1C,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;QACrC,IAAI,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;YACvC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,CAAA;YACxC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;YACzC,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAA;YAChC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAA;YACvC,QAAQ,CAAC,UAAU,CAAC,aAAa,GAAG,SAAS,CAAA;YAC7C,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;SACF;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,4CAA4C,CAAC,CAAA;SAC9D;IACH,CAAC;IAED;;;OAGG;IACH,qBAAqB,CAAC,OAAgB;;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,UAAU,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;YAC7F,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;SACF;QACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,WAAW,EAAE;YAChD,oBAAoB,CAAC,QAAQ,CAAC,UAAU,CAAC,WAAW,CAAC,CAAA;SACtD;QACD,QAAQ,CAAC,mBAAmB,GAAG,SAAS,CAAA;QACxC,IAAI,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;QAEnC,IAAI,KAAK,GAAG,CAAC,EAAE;YACb,KAAK,EAAE,CAAA;YACP,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;YACxD,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YACpD,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;YAExC,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;YAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;YAC1D,IAAI,CAAC,oBAAoB,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAA;YAEzC,IAAI,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,CAAC,gBAAgB,EAAE;gBACzE,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,IAAI,CAAC,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,CAAC,CAAA;aACxF;YAED,QAAQ,CAAC,UAAU,CAAC,KAAK,GAAG,KAAK,CAAA;YACjC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,CAAA;YACxC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;YACzC,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAA;YAChC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAA;YACvC,QAAQ,CAAC,UAAU,CAAC,aAAa,GAAG,SAAS,CAAA;YAE7C,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,aAAa,CAAC,CAAA;YAElD,MAAM,QAAQ,GAAG,WAAW,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YACnC,IAAI,QAAQ,IAAI,IAAI,EAAE;gBACpB,MAAM,WAAW,GAAG,QAAQ,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;gBAClD,MAAM,KAAK,GAAG,YAAY,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC,CAAA;gBAC9E,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;aACxC;iBAAM;gBACL,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAA;aACpC;YAED,iDAAiD;YACjD,IAAI,CAAA,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;gBACtF,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,CAAA;gBAChE,IAAI,WAAW,IAAI,WAAW,KAAK,QAAQ,CAAC,cAAc,EAAE;oBAC1D,QAAQ,CAAC,cAAc,GAAG,WAAW,CAAA;oBACrC,MAAM,UAAU,GAAG;wBACjB,OAAO,EAAE,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;qBACrF,CAAA;oBACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;iBACvE;aACF;YAED,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAC,QAAQ,mDAAG;gBAClC,UAAU,EAAE,KAAK;gBACjB,IAAI;aACL,CAAC,CAAA;SACH;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,yCAAyC,CAAC,CAAA;SAC3D;IACH,CAAC;IAED;;;OAGG;IACH,mBAAmB,CAAC,OAAgB;;QAClC,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,IAAI,CAAC,QAAQ,EAAE;YACb,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,mBAAmB,KAAK,UAAU,EAAE;YAC/C,MAAM,IAAI,KAAK,CAAC,sCAAsC,CAAC,CAAA;SACxD;QACD,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;YAC7F,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;SACF;QAED,MAAM,qBAAqB,GAAG,MAAA,QAAQ,CAAC,WAAW,0CAAE,SAAS,EAAE,CAAA;QAE/D,IAAI,qBAAqB,EAAE;YACzB,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,qBAAqB,CAAC,CAAA;SACtC;aAAM;YACL,MAAM,IAAI,KAAK,CAAC,mCAAmC,CAAC,CAAA;SACrD;IACH,CAAC;IAEO,kBAAkB,CAAC,SAAiB,EAAE,QAAuB;;QACnE,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;YAC7F,MAAM,IAAI,KAAK,CACb,8EAA8E,CAC/E,CAAA;SACF;QAED,MAAM,EAAE,KAAK,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;QAErC,MAAM,WAAW,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAA;QAC5D,MAAM,UAAU,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;QAExD,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAA;QAC5D,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;QAE1D,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,GAAG,EAAE,CAAA;QAEpD,IAAI,KAAK,GAAG,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,MAAM,EAAE;YAC3C,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC,CAAA;YAC5C,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC;gBACnD,IAAI,CAAC,aAAa,CAAC,GAAG;gBACtB,IAAI,CAAC,aAAa,CAAC,GAAG;aACvB,CAAC,CAAA;YACF,QAAQ,CAAC,iBAAiB,CAAC,UAAU,GAAG;gBACtC,SAAS,EAAE,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC;aACzC,CAAA;YACD,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;YACzC,QAAQ,CAAC,UAAU,CAAC,KAAK,EAAE,CAAA;YAC3B,QAAQ,CAAC,UAAU,CAAC,gBAAgB,GAAG,CAAC,CAAA;YACxC,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAA;YAChC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAA;YACvC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,WAAW,EAAE,IAAI,CAAC,aAAa,CAAC;gBAC7E,QAAQ,CAAC,UAAU,CAAC,uBAAuB,GAAG,KAAK,GAAG,CAAC,CAAA;YACzD,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;YAED,iDAAiD;YACjD,IAAI,CAAA,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,0CAAE,OAAO,KAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;gBACtF,MAAM,WAAW,GAAG,IAAI,CAAC,gBAAgB,IAAI,IAAI,CAAC,cAAc,CAAA;gBAChE,IAAI,WAAW,IAAI,WAAW,KAAK,QAAQ,CAAC,cAAc,EAAE;oBAC1D,QAAQ,CAAC,cAAc,GAAG,WAAW,CAAA;oBACrC,MAAM,UAAU,GAAG;wBACjB,OAAO,EAAE,MAAA,QAAQ,CAAC,eAAe,CAAC,cAAc,CAAC,OAAO,mCAAI,wBAAwB;qBACrF,CAAA;oBACD,IAAI,CAAC,QAAQ,CAAC,eAAe,CAAC,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,UAAU,CAAC,CAAA;iBACvE;aACF;YAED,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAC,QAAQ,mDAAG;gBAClC,UAAU,EAAE,KAAK;gBACjB,IAAI,EAAE,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,GAAG,CAAC,CAAC;aACtC,CAAC,CAAA;SACH;aAAM;YACL,qBAAqB;YACrB,MAAA,MAAA,QAAQ,CAAC,eAAe,EAAC,QAAQ,mDAAG,EAAE,UAAU,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YACrE,QAAQ,CAAC,eAAe,GAAG,UAAU,CAAA;SACtC;IACH,CAAC;IAEO,WAAW,CAAC,SAAiB,EAAE,QAAuB;;QAC5D,IAAI,QAAQ,CAAC,UAAU,IAAI,IAAI,IAAI,QAAQ,CAAC,eAAe,IAAI,IAAI,IAAI,QAAQ,CAAC,KAAK,IAAI,IAAI,EAAE;YAC7F,MAAM,IAAI,KAAK,CAAC,wEAAwE,CAAC,CAAA;SAC1F;QACD,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,QAAQ,CAAC,UAAU,CAAA;QAC5D,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,aAAa,EAAE,GACpF,QAAQ,CAAC,UAAU,CAAA;QACrB,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,gBAAgB,EAAE,eAAe,EAAE,GAAG,QAAQ,CAAC,eAAe,CAAA;QAE9F,IAAI,SAAS,IAAI,IAAI,EAAE;YACrB,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;YACzC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;YACD,OAAM;SACP;QACD,IAAI,SAAS,EAAE;YACb,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAA;YAChC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;YACzC,SAAS,GAAG,KAAK,CAAA;YACjB,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;SAC1C;aAAM;YACL,QAAQ,GAAG,SAAS,GAAG,SAAS,CAAA;YAChC,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAA;SACxC;QAED,MAAM,iBAAiB,GAAG,QAAQ,GAAG,IAAI,CAAA;QAEzC,MAAM,IAAI,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAA;QACxC,IAAI,IAAI,CAAC,WAAW,CAAC,MAAM,IAAI,CAAC,EAAE;YAChC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,CAAC,CAAA;YACrB,OAAM;SACP;QAED,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,CAAC,CAAA;QAChD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAA;QAElD,IAAI,KAAK,IAAI,IAAI,IAAI,GAAG,IAAI,IAAI,EAAE;YAChC,IAAI,YAAY,EAAE;gBAChB,MAAM,KAAK,GAAG,YAAY,CAAC,mBAAmB,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;gBAC1D,IACE,gBAAgB,KAAK,CAAC;oBACtB,QAAQ,CAAC,UAAU,CAAC,uBAAuB,KAAK,KAAK;oBACrD,IAAI,CAAC,GAAG,CAAC,KAAK,GAAG,QAAQ,CAAC,UAAU,CAAC,YAAY,CAAC,GAAG,EAAE,EACvD;oBACA,QAAQ,CAAC,UAAU,CAAC,uBAAuB,GAAG,SAAS,CAAA;oBACvD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;oBACvC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;oBACzC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAA;oBACxC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAA;oBACxC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;oBACD,OAAM;iBACP;qBAAM,IAAI,iBAAiB,GAAG,gBAAgB,EAAE;oBAC/C,MAAM,iBAAiB,GAAG,YAAY,CAAC,wBAAwB,CAC7D,YAAY,EACZ,KAAK,EACL,iBAAiB,GAAG,gBAAgB,CACrC,CAAA;oBACD,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,iBAAiB,CAAC,CAAA;oBACnD,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;oBACD,OAAM;iBACP;qBAAM;oBACL,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;oBACvC,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;oBACzC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAA;oBACxC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,KAAK,CAAA;oBACxC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;oBACD,OAAM;iBACP;aACF;YAED,MAAM,QAAQ,GAAG,YAAY,CAAC,QAAQ,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;YAClD,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,GAAG,QAAQ,EAAE,YAAY,aAAZ,YAAY,cAAZ,YAAY,GAAI,CAAC,CAAC,CAAA;YAEnE,IAAI,KAAK,GAAG,iBAAiB,GAAG,QAAQ,EAAE;gBACxC,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,GAAG,EAAE,GAAG,CAAC,GAAG,CAAC,CAAC,CAAA;gBACxE,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,SAAS,CAAC,CAAA;gBACpE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;gBAC3C,IAAI,gBAAgB,GAAG,CAAC,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE;oBAClD,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAA;oBACnD,IAAI,CAAC,aAAa,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE;wBAC7B,IAAI,QAAQ,CAAC,UAAU,CAAC,YAAY,EAAE;4BACpC,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,IAAI,CAAA;yBACxC;6BAAM;4BACL,MAAM,SAAS,GAAG,YAAY,CAAC,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,CAAA;4BAC7D,QAAQ,CAAC,UAAU,CAAC,YAAY,GAAG,SAAS,CAAA;4BAC5C,MAAA,QAAQ,CAAC,WAAW,0CAAE,WAAW,CAAC,SAAS,CAAC,CAAA;yBAC7C;qBACF;oBACD,QAAQ,CAAC,UAAU,CAAC,SAAS,GAAG,SAAS,CAAA;oBACzC,QAAQ,CAAC,UAAU,CAAC,QAAQ,GAAG,CAAC,CAAA;oBAChC,QAAQ,CAAC,UAAU,CAAC,gBAAgB,EAAE,CAAA;oBACtC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;oBACD,OAAM;iBACP;qBAAM,IAAI,IAAI,CAAC,gBAAgB,KAAK,IAAI,CAAC,cAAc,EAAE;oBACxD,IAAI,aAAa,IAAI,IAAI,EAAE;wBACzB,QAAQ,CAAC,UAAU,CAAC,aAAa,GAAG,SAAS,CAAA;wBAC7C,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;wBACD,OAAM;qBACP;oBACD,IAAI,SAAS,GAAG,aAAa,GAAG,eAAe,GAAG,IAAI,EAAE;wBACtD,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;wBACD,OAAM;qBACP;yBAAM;wBACL,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,IAAI,CAAC,cAAc,EAAE,IAAI,CAAC,cAAc,CAAC,CAAA;wBACnF,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,IAAI,CAAC,WAAW,CAAC,CAAA;wBAChD,QAAQ,CAAC,UAAU,CAAC,aAAa,GAAG,SAAS,CAAA;wBAC7C,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,CAAC,CAAA;wBACrB,OAAM;qBACP;iBACF;qBAAM;oBACL,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,CAAC,CAAA;oBACrB,OAAM;iBACP;aACF;YAED,MAAM,QAAQ,GAAG,CAAC,KAAK,GAAG,iBAAiB,CAAC,GAAG,QAAQ,CAAA;YACvD,MAAM,KAAK,GACT,QAAQ,KAAK,CAAC;gBACZ,CAAC,CAAC,GAAG;gBACL,CAAC,CAAC,YAAY,CAAC,wBAAwB,CAAC,KAAK,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,CAAA;YAC9E,QAAQ,CAAC,iBAAiB,CAAC,QAAQ,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC,GAAG,EAAE,KAAK,CAAC,GAAG,CAAC,CAAC,CAAA;YAC5E,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAgB,QAAQ,CAAC,SAAS,CAAC,CAAA;YACpE,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAC,CAAA;YAC3C,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;YACrC,MAAA,QAAQ,CAAC,WAAW,0CAAE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;YACrC,QAAQ,CAAC,UAAU,CAAC,WAAW,GAAG,qBAAqB,CAAC,CAAC,IAAY,EAAE,EAAE,CACvE,IAAI,CAAC,WAAW,CAAC,IAAI,EAAE,QAAQ,CAAC,CACjC,CAAA;YACD,OAAM;SACP;aAAM;YACL,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAG,SAAS,CAAC,CAAA;YACrB,OAAM;SACP;IACH,CAAC;IAEO,eAAe,CAAC,QAAuB,EAAE,KAAa;;QAC5D,IAAI,MAAA,QAAQ,CAAC,UAAU,0CAAE,YAAY,EAAE;YACrC,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAA;SACnC;QACD,MAAA,QAAQ,CAAC,WAAW,0CAAE,SAAS,CAAC,KAAK,CAAC,CAAA;IACxC,CAAC;IAEO,iBAAiB,CAAC,QAAuB,EAAE,KAAa;;QAC9D,IAAI,CAAA,MAAA,QAAQ,CAAC,UAAU,0CAAE,YAAY,KAAI,CAAC,CAAA,MAAA,QAAQ,CAAC,eAAe,0CAAE,gBAAgB,CAAA,EAAE;YACpF,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;gBACzB,QAAQ,EAAE,MAAA,QAAQ,CAAC,eAAe,0CAAE,gBAAgB;gBACpD,OAAO,EAAE,IAAI;gBACb,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE,MAAA,QAAQ,CAAC,WAAW,0CAAE,SAAS,EAAE;aAC1C,CAAC,CAAA;SACH;QACD,OAAO,MAAA,QAAQ,CAAC,WAAW,0CAAE,WAAW,CAAC,KAAK,CAAC,CAAA;IACjD,CAAC;IAED,cAAc,CAAC,OAAgB,EAAE,OAAgB;;QAC/C,MAAM,QAAQ,GAAG,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,CAAA;QAC9C,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,WAAW,0CAAE,QAAQ,CAAC,OAAO,CAAC,CAAA;IAC1C,CAAC;IAEO,YAAY,CAAC,QAAuB,EAAE,KAAa;;QACzD,MAAM,gBAAgB,GAAG,MAAA,MAAA,QAAQ,CAAC,eAAe,0CAAE,gBAAgB,mCAAI,KAAK,CAAA;QAC5E,IAAI,CAAC,QAAQ,CAAC,YAAY,iBACxB,MAAM,EAAE,KAAK,EACb,OAAO,EAAE,IAAI,EACb,QAAQ,EAAE,MAAA,QAAQ,CAAC,eAAe,0CAAE,gBAAgB,IACjD,CAAC,gBAAgB,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,MAAA,QAAQ,CAAC,WAAW,0CAAE,WAAW,EAAE,EAAE,CAAC,EAC7E,CAAA;IACJ,CAAC;CACF"}
1
+ {"version":3,"file":"routeController.js","sourceRoot":"","sources":["../../../src/controllers/routeController.ts"],"names":[],"mappings":"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"}
@@ -6,6 +6,26 @@ import { type LatLng } from "./latLng";
6
6
  * @group Circles
7
7
  */
8
8
  export declare const MAPVX_BRAND_COLOR = "#276EF1";
9
+ /**
10
+ * Where a circle renders relative to the other map layers.
11
+ *
12
+ * - `"aboveBasemap"` (default): above every basemap geometry layer —
13
+ * including indoor floor-plate and building polygons — but below the
14
+ * labels that follow them. A circle is never occluded by basemap fills.
15
+ * - `"belowLabels"`: below the first symbol (label) layer of the style.
16
+ * On indoor styles, floor-plate polygons ordered after that layer will
17
+ * paint over the circle.
18
+ * - `"top"`: above everything, including labels and markers drawn in
19
+ * style layers.
20
+ *
21
+ * @group Circles
22
+ */
23
+ export type CircleRenderOrder = "aboveBasemap" | "belowLabels" | "top";
24
+ /**
25
+ * Valid values for {@link CircleRenderOrder}, in rendering order.
26
+ * @internal
27
+ */
28
+ export declare const CIRCLE_RENDER_ORDERS: readonly CircleRenderOrder[];
9
29
  /**
10
30
  * Default styling values applied to a circle when the corresponding
11
31
  * {@link CircleConfig} fields are omitted.
@@ -18,6 +38,7 @@ export declare const CIRCLE_DEFAULTS: {
18
38
  readonly strokeColor: "#276EF1";
19
39
  readonly strokeWidth: 2;
20
40
  readonly strokeOpacity: 0.65;
41
+ readonly renderOrder: CircleRenderOrder;
21
42
  };
22
43
  /**
23
44
  * Represents the configuration for the creation of a metric radius circle on a map.
@@ -89,6 +110,12 @@ export interface CircleConfig {
89
110
  * matching the visibility semantics of {@link MarkerConfig.floorId}.
90
111
  */
91
112
  floorId?: string;
113
+ /**
114
+ * Where the circle renders relative to other map layers.
115
+ * @see {@link CircleRenderOrder} for the available placements.
116
+ * @defaultValue "aboveBasemap"
117
+ */
118
+ renderOrder?: CircleRenderOrder;
92
119
  }
93
120
  /**
94
121
  * Internal resolved representation of a circle kept by the map.
@@ -107,8 +134,20 @@ export interface CircleRecord {
107
134
  strokeWidth: number;
108
135
  strokeOpacity: number;
109
136
  floorId?: string;
137
+ renderOrder: CircleRenderOrder;
110
138
  hidden: boolean;
111
139
  }
140
+ /**
141
+ * Returns a deep copy of a {@link CircleRecord}, including the nested
142
+ * coordinate. Used by the map accessors so callers can't mutate internal
143
+ * circle state by writing to a returned record.
144
+ *
145
+ * @param record The circle record to clone.
146
+ * @returns An independent copy of the record.
147
+ *
148
+ * @group Circles
149
+ */
150
+ export declare function cloneCircleRecord(record: CircleRecord): CircleRecord;
112
151
  /**
113
152
  * Type guard for validating circle configurations without throwing.
114
153
  * Returns true if the configuration is valid and can be added to the map.
@@ -1 +1 @@
1
- {"version":3,"file":"circle.d.ts","sourceRoot":"","sources":["../../../../src/domain/models/circle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;CAMlB,CAAA;AAEV;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;CACjB;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,MAAM,EAAE,OAAO,CAAA;CAChB;AAmDD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CA4C3E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,GAAE,OAAe,GAAG,YAAY,CAgB/F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,MAAM,GAAE,MAAW,GAClB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAiBpB"}
1
+ {"version":3,"file":"circle.d.ts","sourceRoot":"","sources":["../../../../src/domain/models/circle.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,MAAM,EAAE,MAAM,UAAU,CAAA;AAEtC;;;;;GAKG;AACH,eAAO,MAAM,iBAAiB,YAAY,CAAA;AAE1C;;;;;;;;;;;;;GAaG;AACH,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,aAAa,GAAG,KAAK,CAAA;AAEtE;;;GAGG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,iBAAiB,EAInD,CAAA;AAEV;;;;;GAKG;AACH,eAAO,MAAM,eAAe;;;;;;;CAOlB,CAAA;AAEV;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,WAAW,YAAY;IAC3B;;;OAGG;IACH,EAAE,CAAC,EAAE,MAAM,CAAA;IAEX;;;;;OAKG;IACH,UAAU,EAAE,MAAM,CAAA;IAElB;;;;OAIG;IACH,YAAY,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAA;IAElB;;;;OAIG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAA;IAEpB;;;;OAIG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IAEtB;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAA;IAEhB;;;;OAIG;IACH,WAAW,CAAC,EAAE,iBAAiB,CAAA;CAChC;AAED;;;;;;GAMG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAA;IACV,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,CAAA;IACpB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,WAAW,EAAE,MAAM,CAAA;IACnB,aAAa,EAAE,MAAM,CAAA;IACrB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,WAAW,EAAE,iBAAiB,CAAA;IAC9B,MAAM,EAAE,OAAO,CAAA;CAChB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,YAAY,GAAG,YAAY,CAEpE;AAmDD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,IAAI,YAAY,CAkD3E;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,YAAY,EAAE,MAAM,GAAE,OAAe,GAAG,YAAY,CAyB/F;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AACH,wBAAgB,UAAU,CACxB,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,YAAY,EAAE,MAAM,EACpB,MAAM,GAAE,MAAW,GAClB,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,CAiBpB"}
@@ -6,6 +6,15 @@ import { generateHexadecimalKey } from "../../utils/utils";
6
6
  * @group Circles
7
7
  */
8
8
  export const MAPVX_BRAND_COLOR = "#276EF1";
9
+ /**
10
+ * Valid values for {@link CircleRenderOrder}, in rendering order.
11
+ * @internal
12
+ */
13
+ export const CIRCLE_RENDER_ORDERS = [
14
+ "belowLabels",
15
+ "aboveBasemap",
16
+ "top",
17
+ ];
9
18
  /**
10
19
  * Default styling values applied to a circle when the corresponding
11
20
  * {@link CircleConfig} fields are omitted.
@@ -18,7 +27,21 @@ export const CIRCLE_DEFAULTS = {
18
27
  strokeColor: MAPVX_BRAND_COLOR,
19
28
  strokeWidth: 2,
20
29
  strokeOpacity: 0.65,
30
+ renderOrder: "aboveBasemap",
21
31
  };
32
+ /**
33
+ * Returns a deep copy of a {@link CircleRecord}, including the nested
34
+ * coordinate. Used by the map accessors so callers can't mutate internal
35
+ * circle state by writing to a returned record.
36
+ *
37
+ * @param record The circle record to clone.
38
+ * @returns An independent copy of the record.
39
+ *
40
+ * @group Circles
41
+ */
42
+ export function cloneCircleRecord(record) {
43
+ return Object.assign(Object.assign({}, record), { coordinate: Object.assign({}, record.coordinate) });
44
+ }
22
45
  /**
23
46
  * Validates that a radius in meters is positive and finite.
24
47
  * @param radius The radius value to validate.
@@ -123,6 +146,10 @@ export function isValidCircleConfig(config) {
123
146
  }
124
147
  if (c.floorId !== undefined && typeof c.floorId !== "string")
125
148
  return false;
149
+ if (c.renderOrder !== undefined &&
150
+ !CIRCLE_RENDER_ORDERS.includes(c.renderOrder)) {
151
+ return false;
152
+ }
126
153
  return true;
127
154
  }
128
155
  /**
@@ -137,12 +164,18 @@ export function isValidCircleConfig(config) {
137
164
  * @group Circles
138
165
  */
139
166
  export function resolveCircleConfig(config, hidden = false) {
140
- var _a, _b, _c, _d;
167
+ var _a, _b, _c, _d, _e;
141
168
  validateRadiusMeters(config.radiusMeters);
142
169
  validateCoordinate(config.coordinate);
170
+ if (config.renderOrder !== undefined && !CIRCLE_RENDER_ORDERS.includes(config.renderOrder)) {
171
+ throw new Error(`Invalid renderOrder: ${String(config.renderOrder)}. ` +
172
+ `Must be one of: ${CIRCLE_RENDER_ORDERS.join(", ")}.`);
173
+ }
143
174
  return {
144
175
  id: (_a = config.id) !== null && _a !== void 0 ? _a : generateHexadecimalKey(),
145
- coordinate: config.coordinate,
176
+ // Copy the coordinate so later mutations of the caller's object
177
+ // can't change internal circle state
178
+ coordinate: { lat: config.coordinate.lat, lng: config.coordinate.lng },
146
179
  radiusMeters: config.radiusMeters,
147
180
  fillColor: (_b = config.fillColor) !== null && _b !== void 0 ? _b : CIRCLE_DEFAULTS.fillColor,
148
181
  fillOpacity: clampOpacity(config.fillOpacity, CIRCLE_DEFAULTS.fillOpacity),
@@ -150,6 +183,7 @@ export function resolveCircleConfig(config, hidden = false) {
150
183
  strokeWidth: (_d = config.strokeWidth) !== null && _d !== void 0 ? _d : CIRCLE_DEFAULTS.strokeWidth,
151
184
  strokeOpacity: clampOpacity(config.strokeOpacity, CIRCLE_DEFAULTS.strokeOpacity),
152
185
  floorId: config.floorId,
186
+ renderOrder: (_e = config.renderOrder) !== null && _e !== void 0 ? _e : CIRCLE_DEFAULTS.renderOrder,
153
187
  hidden,
154
188
  };
155
189
  }