mobility-toolbox-js 2.0.0-beta.34 → 2.0.0-beta.37

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 (195) hide show
  1. package/README.md +14 -8
  2. package/api/RealtimeAPI.d.ts +6 -6
  3. package/api/RealtimeAPI.d.ts.map +1 -1
  4. package/api/RealtimeAPI.js +170 -197
  5. package/api/RealtimeAPI.test.d.ts +2 -0
  6. package/api/RealtimeAPI.test.d.ts.map +1 -0
  7. package/api/RealtimeAPI.test.js +67 -0
  8. package/api/RoutingAPI.d.ts +6 -2
  9. package/api/RoutingAPI.d.ts.map +1 -1
  10. package/api/RoutingAPI.js +8 -38
  11. package/api/RoutingAPI.test.d.ts +2 -0
  12. package/api/RoutingAPI.test.d.ts.map +1 -0
  13. package/api/RoutingAPI.test.js +29 -0
  14. package/api/StopsAPI.d.ts +1 -1
  15. package/api/StopsAPI.d.ts.map +1 -1
  16. package/api/StopsAPI.js +8 -40
  17. package/api/StopsAPI.test.d.ts +2 -0
  18. package/api/StopsAPI.test.d.ts.map +1 -0
  19. package/api/StopsAPI.test.js +26 -0
  20. package/api/index.d.ts +3 -4
  21. package/api/index.d.ts.map +1 -1
  22. package/api/index.js +3 -10
  23. package/api/typedefs.js +1 -0
  24. package/common/api/HttpAPI.d.ts +2 -2
  25. package/common/api/HttpAPI.d.ts.map +1 -1
  26. package/common/api/HttpAPI.js +21 -48
  27. package/common/api/HttpAPI.test.d.ts +2 -0
  28. package/common/api/HttpAPI.test.d.ts.map +1 -0
  29. package/common/api/HttpAPI.test.js +54 -0
  30. package/common/api/WebSocketAPI.d.ts +8 -4
  31. package/common/api/WebSocketAPI.d.ts.map +1 -1
  32. package/common/api/WebSocketAPI.js +125 -129
  33. package/common/api/WebSocketAPI.test.d.ts +2 -0
  34. package/common/api/WebSocketAPI.test.d.ts.map +1 -0
  35. package/common/api/WebSocketAPI.test.js +380 -0
  36. package/common/controls/Control.d.ts +5 -5
  37. package/common/controls/Control.d.ts.map +1 -1
  38. package/common/controls/Control.js +44 -77
  39. package/common/controls/Control.test.d.ts +2 -0
  40. package/common/controls/Control.test.d.ts.map +1 -0
  41. package/common/controls/Control.test.js +89 -0
  42. package/common/index.js +2 -18
  43. package/common/layers/Layer.d.ts +11 -11
  44. package/common/layers/Layer.d.ts.map +1 -1
  45. package/common/layers/Layer.js +70 -104
  46. package/common/layers/Layer.test.d.ts +2 -0
  47. package/common/layers/Layer.test.d.ts.map +1 -0
  48. package/common/layers/Layer.test.js +137 -0
  49. package/common/mixins/CopyrightMixin.js +23 -52
  50. package/common/mixins/MapboxLayerMixin.js +162 -204
  51. package/common/mixins/RealtimeLayerMixin.js +580 -635
  52. package/common/mixins/StopFinderMixin.d.ts +3 -3
  53. package/common/mixins/StopFinderMixin.d.ts.map +1 -1
  54. package/common/mixins/StopFinderMixin.js +115 -157
  55. package/common/mixins/UserInteractionsLayerMixin.js +142 -175
  56. package/common/mixins/UserInteractionsLayerMixin.test.d.ts +2 -0
  57. package/common/mixins/UserInteractionsLayerMixin.test.d.ts.map +1 -0
  58. package/common/mixins/UserInteractionsLayerMixin.test.js +214 -0
  59. package/common/styles/index.js +4 -24
  60. package/common/styles/realtimeDefaultStyle.d.ts.map +1 -1
  61. package/common/styles/realtimeDefaultStyle.js +67 -78
  62. package/common/styles/realtimeDelayStyle.js +4 -17
  63. package/common/styles/realtimeSimpleStyle.js +5 -7
  64. package/common/typedefs.js +1 -0
  65. package/common/utils/cleanStopTime.js +3 -5
  66. package/common/utils/compareDepartures.d.ts +1 -1
  67. package/common/utils/compareDepartures.d.ts.map +1 -1
  68. package/common/utils/compareDepartures.js +8 -11
  69. package/common/utils/createCanvas.js +3 -5
  70. package/common/utils/createTrackerFilters.d.ts +1 -1
  71. package/common/utils/createTrackerFilters.d.ts.map +1 -1
  72. package/common/utils/createTrackerFilters.js +22 -32
  73. package/common/utils/createTrackerFilters.test.d.ts +2 -0
  74. package/common/utils/createTrackerFilters.test.d.ts.map +1 -0
  75. package/common/utils/createTrackerFilters.test.js +79 -0
  76. package/common/utils/getLayersAsFlatArray.js +6 -8
  77. package/common/utils/getMapboxMapCopyrights.js +9 -11
  78. package/common/utils/getMapboxMapCopyrights.test.d.ts +2 -0
  79. package/common/utils/getMapboxMapCopyrights.test.d.ts.map +1 -0
  80. package/common/utils/getMapboxMapCopyrights.test.js +40 -0
  81. package/common/utils/getMapboxRender.js +12 -15
  82. package/common/utils/getMaplibreRender.js +10 -13
  83. package/common/utils/getRealtimeModeSuffix.js +2 -6
  84. package/common/utils/getUrlWithParams.js +5 -8
  85. package/common/utils/getVehiclePosition.js +20 -23
  86. package/common/utils/index.js +12 -37
  87. package/common/utils/removeDuplicate.d.ts +1 -1
  88. package/common/utils/removeDuplicate.d.ts.map +1 -1
  89. package/common/utils/removeDuplicate.js +6 -21
  90. package/common/utils/removeDuplicate.test.d.ts +2 -0
  91. package/common/utils/removeDuplicate.test.d.ts.map +1 -0
  92. package/common/utils/removeDuplicate.test.js +19 -0
  93. package/common/utils/renderTrajectories.js +31 -43
  94. package/common/utils/sortByDelay.js +4 -6
  95. package/common/utils/timeUtils.js +14 -24
  96. package/common/utils/timeUtils.test.d.ts +2 -0
  97. package/common/utils/timeUtils.test.d.ts.map +1 -0
  98. package/common/utils/timeUtils.test.js +10 -0
  99. package/common/utils/trackerConfig.js +27 -39
  100. package/common/utils/trackerConfig.test.d.ts +2 -0
  101. package/common/utils/trackerConfig.test.d.ts.map +1 -0
  102. package/common/utils/trackerConfig.test.js +23 -0
  103. package/iife.js +3 -5
  104. package/index.d.ts +4 -0
  105. package/index.js +9 -10
  106. package/mapbox/controls/CopyrightControl.d.ts +0 -1
  107. package/mapbox/controls/CopyrightControl.d.ts.map +1 -1
  108. package/mapbox/controls/CopyrightControl.js +18 -38
  109. package/mapbox/controls/index.js +1 -5
  110. package/mapbox/index.js +4 -20
  111. package/mapbox/layers/Layer.d.ts +1 -1
  112. package/mapbox/layers/Layer.d.ts.map +1 -1
  113. package/mapbox/layers/Layer.js +29 -71
  114. package/mapbox/layers/Layer.test.d.ts +2 -0
  115. package/mapbox/layers/Layer.test.d.ts.map +1 -0
  116. package/mapbox/layers/Layer.test.js +204 -0
  117. package/mapbox/layers/RealtimeLayer.d.ts +4 -4
  118. package/mapbox/layers/RealtimeLayer.d.ts.map +1 -1
  119. package/mapbox/layers/RealtimeLayer.js +83 -125
  120. package/mapbox/layers/RealtimeLayer.test.d.ts +2 -0
  121. package/mapbox/layers/RealtimeLayer.test.d.ts.map +1 -0
  122. package/mapbox/layers/RealtimeLayer.test.js +10 -0
  123. package/mapbox/layers/index.js +2 -7
  124. package/mapbox/utils.js +19 -33
  125. package/mbt.js +59 -37
  126. package/mbt.js.map +2 -2
  127. package/mbt.min.js +10 -10
  128. package/mbt.min.js.map +2 -2
  129. package/ol/controls/CopyrightControl.js +26 -47
  130. package/ol/controls/CopyrightControl.test.d.ts +2 -0
  131. package/ol/controls/CopyrightControl.test.d.ts.map +1 -0
  132. package/ol/controls/CopyrightControl.test.js +177 -0
  133. package/ol/controls/RoutingControl.d.ts +6 -5
  134. package/ol/controls/RoutingControl.d.ts.map +1 -1
  135. package/ol/controls/RoutingControl.js +209 -270
  136. package/ol/controls/RoutingControl.test.d.ts +2 -0
  137. package/ol/controls/RoutingControl.test.d.ts.map +1 -0
  138. package/ol/controls/RoutingControl.test.js +150 -0
  139. package/ol/controls/StopFinderControl.js +9 -32
  140. package/ol/controls/StopFinderControl.test.d.ts +2 -0
  141. package/ol/controls/StopFinderControl.test.d.ts.map +1 -0
  142. package/ol/controls/StopFinderControl.test.js +49 -0
  143. package/ol/controls/index.js +3 -9
  144. package/ol/index.js +5 -21
  145. package/ol/layers/Layer.d.ts +1 -1
  146. package/ol/layers/Layer.d.ts.map +1 -1
  147. package/ol/layers/Layer.js +40 -72
  148. package/ol/layers/Layer.test.d.ts +2 -0
  149. package/ol/layers/Layer.test.d.ts.map +1 -0
  150. package/ol/layers/Layer.test.js +196 -0
  151. package/ol/layers/MapboxLayer.d.ts +7 -7
  152. package/ol/layers/MapboxLayer.d.ts.map +1 -1
  153. package/ol/layers/MapboxLayer.js +30 -66
  154. package/ol/layers/MapboxLayer.test.d.ts +2 -0
  155. package/ol/layers/MapboxLayer.test.d.ts.map +1 -0
  156. package/ol/layers/MapboxLayer.test.js +164 -0
  157. package/ol/layers/MapboxStyleLayer.d.ts +3 -3
  158. package/ol/layers/MapboxStyleLayer.d.ts.map +1 -1
  159. package/ol/layers/MapboxStyleLayer.js +92 -135
  160. package/ol/layers/MapboxStyleLayer.test.d.ts +2 -0
  161. package/ol/layers/MapboxStyleLayer.test.d.ts.map +1 -0
  162. package/ol/layers/MapboxStyleLayer.test.js +232 -0
  163. package/ol/layers/MaplibreLayer.d.ts +1 -1
  164. package/ol/layers/MaplibreLayer.d.ts.map +1 -1
  165. package/ol/layers/MaplibreLayer.js +14 -48
  166. package/ol/layers/RealtimeLayer.d.ts +2 -2
  167. package/ol/layers/RealtimeLayer.d.ts.map +1 -1
  168. package/ol/layers/RealtimeLayer.js +111 -147
  169. package/ol/layers/RealtimeLayer.test.d.ts +2 -0
  170. package/ol/layers/RealtimeLayer.test.d.ts.map +1 -0
  171. package/ol/layers/RealtimeLayer.test.js +71 -0
  172. package/ol/layers/RoutingLayer.d.ts +2 -2
  173. package/ol/layers/RoutingLayer.d.ts.map +1 -1
  174. package/ol/layers/RoutingLayer.js +29 -61
  175. package/ol/layers/RoutingLayer.test.d.ts +2 -0
  176. package/ol/layers/RoutingLayer.test.d.ts.map +1 -0
  177. package/ol/layers/RoutingLayer.test.js +39 -0
  178. package/ol/layers/VectorLayer.d.ts +1 -1
  179. package/ol/layers/VectorLayer.d.ts.map +1 -1
  180. package/ol/layers/VectorLayer.js +14 -48
  181. package/ol/layers/VectorLayer.test.d.ts +2 -0
  182. package/ol/layers/VectorLayer.test.d.ts.map +1 -0
  183. package/ol/layers/VectorLayer.test.js +87 -0
  184. package/ol/layers/WMSLayer.d.ts +1 -1
  185. package/ol/layers/WMSLayer.d.ts.map +1 -1
  186. package/ol/layers/WMSLayer.js +34 -68
  187. package/ol/layers/WMSLayer.test.d.ts +2 -0
  188. package/ol/layers/WMSLayer.test.d.ts.map +1 -0
  189. package/ol/layers/WMSLayer.test.js +66 -0
  190. package/ol/layers/index.js +8 -19
  191. package/ol/styles/fullTrajectoryDelayStyle.js +11 -13
  192. package/ol/styles/fullTrajectoryStyle.js +16 -18
  193. package/ol/styles/index.js +2 -7
  194. package/package.json +5 -2
  195. package/setupTests.js +12 -14
package/README.md CHANGED
@@ -5,19 +5,25 @@ The tools in this library have been inspired by many projects realized for publi
5
5
 
6
6
  [![npm](https://img.shields.io/npm/v/mobility-toolbox-js.svg?style=flat-square)](https://www.npmjs.com/package/mobility-toolbox-js)
7
7
  [![Build](https://github.com/geops/mobility-toolbox-js/workflows/Build/badge.svg)](https://github.com/geops/mobility-toolbox-js/actions?query=workflow%3ABuild)
8
- [![Netlify Status](https://api.netlify.com/api/v1/badges/b368ab18-9dbf-416c-91f6-a82076b02c10/deploy-status)](https://app.netlify.com/sites/mobility-toolbox-js/deploys)
8
+ ![Vercel](https://vercelbadge.vercel.app/api/geops/mobility-toolbox-js)
9
9
 
10
- ## Main Features
10
+ ## Documentation and examples
11
11
 
12
- * Display [real-time vehicle positions and prognosis data](http://tracker.geops.ch/) on a map.
13
- * Search for [stops and stations](https://maps2.trafimage.ch) all over the world.
14
- * Get [precise geographic courses](https://geops.github.io/geops-routing-demo/) for all modes of transport.
15
- * Generate beautiful maps for public transport, mobility and logistics
12
+ Visit https://mobility-toolbox-js.vercel.app/
16
13
 
17
- ## Documentation and examples
14
+ ## Demos
18
15
 
19
- Visit https://master--mobility-toolbox-js.netlify.app/
16
+ * Display [real-time vehicle positions and prognosis data](http://tracker.geops.ch/) on a map.
17
+ * Search for [stops and stations](https://maps.trafimage.ch) all over the world.
18
+ * Get [precise geographic courses](https://routing-demo.geops.io/) for all modes of transport.
19
+ * Generate beautiful [schematic](https://mobility.portal.geops.io/world.geops.networkplans) or [topographic](https://mobility.portal.geops.io) maps for public transport, mobility and logistics.
20
20
 
21
21
  ## Version 1.x.x
22
22
 
23
23
  The master branch is now open for the version 2 development. The version 1 is still available in [1.x.x](https://github.com/geops/mobility-toolbox-js/tree/1.x.x) branch.
24
+
25
+ ## Deploy
26
+
27
+ This library website is deployed automatically using [Vercel](https://vercel.com/geops).
28
+ For Vercel we have to add the nextjs and raw-loader modules in the dev dependencies of the main package.json.
29
+ But those 2 librairies are not need to build the library.
@@ -39,11 +39,11 @@ declare class RealtimeAPI {
39
39
  * @param {string} [options.projection] The epsg code of the projection for features. Default to EPSG:3857.
40
40
  * @param {number[4]} [options.bbox=[minX, minY, maxX, maxY, zoom, tenant] The bounding box to receive data from.
41
41
  */
42
- constructor(options?: any | string);
42
+ constructor(options?: Object | string);
43
43
  /** @ignore */
44
- subscribedStationUic: number;
44
+ subscribedStationUic: number | null;
45
45
  /** @ignore */
46
- departureUpdateTimeout: number;
46
+ departureUpdateTimeout: number | null;
47
47
  /** @ignore */
48
48
  maxDepartureAge: number;
49
49
  /** @ignore */
@@ -66,14 +66,14 @@ declare class RealtimeAPI {
66
66
  */
67
67
  reset(): void;
68
68
  /** @ignore */
69
- pingInterval: NodeJS.Timer;
69
+ pingInterval: NodeJS.Timer | undefined;
70
70
  /**
71
71
  * Callback when the websocket is closed by the server.
72
72
  * It auto reconnects after a timeout.
73
73
  */
74
74
  onClose(): void;
75
75
  /** @ignore */
76
- reconnectTimeout: number;
76
+ reconnectTimeout: number | undefined;
77
77
  /**
78
78
  * Subscribe to a channel.
79
79
  *
@@ -142,7 +142,7 @@ declare class RealtimeAPI {
142
142
  */
143
143
  getStations(mode: RealtimeMode): Promise<Array<Station>>;
144
144
  /** @ignore */
145
- stationUpdateTimeout: number;
145
+ stationUpdateTimeout: number | undefined;
146
146
  /**
147
147
  * Subscribe to stations channel.
148
148
  * One message pro station.
@@ -1 +1 @@
1
- {"version":3,"file":"RealtimeAPI.d.ts","sourceRoot":"","sources":["../../src/api/RealtimeAPI.js"],"names":[],"mappings":";;;4BAYU,YAAY;;;;;;;;;;2BAJT,MAAM;AAYnB;;;;;;;;;;;;;;;GAeG;AACH;IACE;;;;;;;;;OASG;IACH,sBAPW,MAAO,MAAM,EA2BvB;IAjBC,cAAc;IACd,6BAAgC;IAEhC,cAAc;IACd,+BAAkC;IAElC,cAAc;IACd,wBAAyB;IAEzB,cAAc;IACd,eAAoB;IAEpB,cAAc;IACd,YAAkC;IAsHpC;;;OAGG;IACH,eAuBC;IA3ID,qCAoFC;IAED,aASC;IAED;;OAEG;IACH,cAEC;IAED;;OAEG;IAEH,cAEC;IAwBG,cAAc;IACd,2BAEuB;IAI3B;;;OAGG;IACH,gBAWC;IANG,cAAc;IACd,yBAGC;IAIL;;;;;;;;OAQG;IACH,kBAEC;IAED;;;;;;;OAOG;IACH,oBAcC;IAED;;;;;;;OAOG;IACH,yBAsDC;IAED;;;;;;OAMG;IACH,+BAJW,MAAM,qEAEc,SAAS,EAAE,gBA+BzC;IAED;;;OAGG;IACH,0CAKC;IAED;;;;OAIG;IACH,gDAIC;IAED;;;OAGG;IACH,2CAEC;IAED;;;;;;OAMG;IACH,gBAJW,MAAM,QACN,YAAY,GACX,QAAQ,OAAO,CAAC,CAiB3B;IAED;;;;;OAKG;IACH,kBAHW,YAAY,GACX,QAAQ,MAAM,OAAO,CAAC,CAAC,CAsBlC;IATO,cAAc;IACd,6BAEM;IAQd;;;;;;OAMG;IACH,wBAHW,YAAY,mCACM,OAAO,gBASnC;IAED;;;OAGG;IACH,wCAGC;IAED;;;;OAIG;IACH,wDAFgC,iBAAiB,gBAoBhD;IAED;;;OAGG;IACH,0CAEC;IAED;;;;;;OAMG;IACH,0BAJW,YAAY,sCACS,kBAAkB,kBACvC,OAAO,QAUjB;IAED;;;OAGG;IACH,0CAEC;IAED;;;;;;OAMG;IACH,+BAJW,YAAY,oCACO;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,kBACvC,OAAO,QAUjB;IAED;;;OAGG;IACH,+CAEC;IAED;;;;;;;OAOG;IACH,sBALW,MAAM,QACN,YAAY,uBACZ,MAAM,GACL,QAAQ,cAAc,CAAC,CAuBlC;IAED;;;;;;;OAOG;IACH,yBALW,MAAM,EAAE,QACR,YAAY,uBACZ,MAAM,GACL,QAAQ,MAAM,cAAc,CAAC,CAAC,CAOzC;IAED;;;;;OAKG;IACH,4BAHW,MAAM,QACN,YAAY,QAgBtB;IAED;;;;;OAKG;IACH,8BAHW,MAAM,sBAKhB;IAED;;;;;OAKG;IACH,oBAHW,MAAM,GACL,QAAQ,YAAY,CAAC,CAyBhC;IAED;;;;;OAKG;IACH,sBAHW,MAAM,EAAE,GACP,QAAQ,MAAM,YAAY,CAAC,CAAC,CAKvC;IAED;;;;;OAKG;IACH,0BAHW,MAAM,wCACiB,YAAY,gBAuB7C;IAED;;;;;OAKG;IACH,4BAHW,MAAM,sBAKhB;IAED;;;OAGG;IACH,gDAGC;IAED;;OAEG;IACH,+BAEC;CACF"}
1
+ {"version":3,"file":"RealtimeAPI.d.ts","sourceRoot":"","sources":["../../src/api/RealtimeAPI.js"],"names":[],"mappings":";;;4BAYU,YAAY;;;;;;;;;;2BAJT,MAAM;AAYnB;;;;;;;;;;;;;;;GAeG;AACH;IACE;;;;;;;;;OASG;IACH,sBAPW,MAAM,GAAC,MAAM,EA2BvB;IAjBC,cAAc;IACd,oCAAgC;IAEhC,cAAc;IACd,sCAAkC;IAElC,cAAc;IACd,wBAAyB;IAEzB,cAAc;IACd,eAAoB;IAEpB,cAAc;IACd,YAAkC;IAsHpC;;;OAGG;IACH,eAuBC;IA3ID,qCAoFC;IAED,aASC;IAED;;OAEG;IACH,cAEC;IAED;;OAEG;IAEH,cAEC;IAwBG,cAAc;IACd,uCAEuB;IAI3B;;;OAGG;IACH,gBAWC;IANG,cAAc;IACd,qCAGC;IAIL;;;;;;;;OAQG;IACH,kBAEC;IAED;;;;;;;OAOG;IACH,oBAcC;IAED;;;;;;;OAOG;IACH,yBAsDC;IAED;;;;;;OAMG;IACH,+BAJW,MAAM,qEAEc,SAAS,EAAE,gBA+BzC;IAED;;;OAGG;IACH,0CAKC;IAED;;;;OAIG;IACH,gDAIC;IAED;;;OAGG;IACH,2CAEC;IAED;;;;;;OAMG;IACH,gBAJW,MAAM,QACN,YAAY,GACX,QAAQ,OAAO,CAAC,CAiB3B;IAED;;;;;OAKG;IACH,kBAHW,YAAY,GACX,QAAQ,MAAM,OAAO,CAAC,CAAC,CAsBlC;IATO,cAAc;IACd,yCAEM;IAQd;;;;;;OAMG;IACH,wBAHW,YAAY,mCACM,OAAO,gBASnC;IAED;;;OAGG;IACH,wCAGC;IAED;;;;OAIG;IACH,wDAFgC,iBAAiB,gBAoBhD;IAED;;;OAGG;IACH,0CAEC;IAED;;;;;;OAMG;IACH,0BAJW,YAAY,sCACS,kBAAkB,kBACvC,OAAO,QAUjB;IAED;;;OAGG;IACH,0CAEC;IAED;;;;;;OAMG;IACH,+BAJW,YAAY,oCACO;QAAE,OAAO,EAAE,OAAO,CAAA;KAAE,kBACvC,OAAO,QAUjB;IAED;;;OAGG;IACH,+CAEC;IAED;;;;;;;OAOG;IACH,sBALW,MAAM,QACN,YAAY,uBACZ,MAAM,GACL,QAAQ,cAAc,CAAC,CAuBlC;IAED;;;;;;;OAOG;IACH,yBALW,MAAM,EAAE,QACR,YAAY,uBACZ,MAAM,GACL,QAAQ,MAAM,cAAc,CAAC,CAAC,CAOzC;IAED;;;;;OAKG;IACH,4BAHW,MAAM,QACN,YAAY,QAgBtB;IAED;;;;;OAKG;IACH,8BAHW,MAAM,sBAKhB;IAED;;;;;OAKG;IACH,oBAHW,MAAM,GACL,QAAQ,YAAY,CAAC,CAyBhC;IAED;;;;;OAKG;IACH,sBAHW,MAAM,EAAE,GACP,QAAQ,MAAM,YAAY,CAAC,CAAC,CAKvC;IAED;;;;;OAKG;IACH,0BAHW,MAAM,wCACiB,YAAY,gBAuB7C;IAED;;;;;OAKG;IACH,4BAHW,MAAM,sBAKhB;IAED;;;OAGG;IACH,gDAGC;IAED;;OAEG;IACH,+BAEC;CACF"}