@realsee/five 6.8.0-alpha.22 → 6.8.0-alpha.24

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 (181) hide show
  1. package/ai_guides/features/gesture.md +1 -1
  2. package/ai_guides/features/parameter.md +25 -1
  3. package/ai_guides/release_notes/6.8.md +18 -5
  4. package/docs/assets/hierarchy.js +1 -1
  5. package/docs/assets/navigation.js +1 -1
  6. package/docs/assets/search.js +1 -1
  7. package/docs/classes/five.AdaptiveLuminancePass.html +1 -1
  8. package/docs/classes/five.BoundingMesh.html +2 -2
  9. package/docs/classes/five.EyeDomeLightingPass.html +1 -1
  10. package/docs/classes/five.Five.html +15 -15
  11. package/docs/classes/five.FivePass.html +1 -1
  12. package/docs/classes/five.Model.html +1 -1
  13. package/docs/classes/five.ModelScene.html +1 -1
  14. package/docs/classes/five.NetworkSubscribe.html +4 -4
  15. package/docs/classes/five.PBMContainer.html +1 -1
  16. package/docs/classes/five.PBMCustomShader.html +5 -5
  17. package/docs/classes/five.PBMGSObject.html +1 -1
  18. package/docs/classes/five.PBMGroup.html +1 -1
  19. package/docs/classes/five.PBMMesh.html +1 -1
  20. package/docs/classes/five.PBMMeshMaterial.html +1 -1
  21. package/docs/classes/five.PBMPanoFilter.html +5 -5
  22. package/docs/classes/five.PBMPointCloud.html +1 -1
  23. package/docs/classes/five.PBMPointCloudMaterial.html +1 -1
  24. package/docs/classes/five.PBMSkinnedMesh.html +1 -1
  25. package/docs/classes/five.PBMUpdateable.html +5 -5
  26. package/docs/classes/five.PanoCircleMesh.html +1 -1
  27. package/docs/classes/five.PanoCircleMeshCustom.html +1 -1
  28. package/docs/classes/five.PanoCircleMeshSolid.html +1 -1
  29. package/docs/classes/five.Parameter.html +7 -7
  30. package/docs/classes/five.Subscribe.html +5 -5
  31. package/docs/classes/five.Tile3D.html +22 -22
  32. package/docs/classes/five.TileNode.html +1 -1
  33. package/docs/classes/five.TrajectoryNode.html +1 -1
  34. package/docs/classes/five.Work.html +16 -16
  35. package/docs/classes/five.WorkResolvedObserver.html +22 -22
  36. package/docs/classes/gltf-loader.DDSLoader.html +1 -1
  37. package/docs/classes/gltf-loader.DRACOLoader.html +1 -1
  38. package/docs/classes/gltf-loader.GLTFObject.html +1 -1
  39. package/docs/classes/gltf-loader.THREEGLTFLoader.html +1 -1
  40. package/docs/classes/line.LineGeometry.html +1 -1
  41. package/docs/classes/line.LineMaterial.html +1 -1
  42. package/docs/classes/line.LineSegmentsGeometry.html +1 -1
  43. package/docs/classes/line.THREE_Line2.html +1 -1
  44. package/docs/classes/line.THREE_LineSegments2.html +1 -1
  45. package/docs/classes/plugins.RoundedBoxGeometry.html +1 -1
  46. package/docs/classes/vfx.Airflow.html +1 -1
  47. package/docs/classes/vfx.Flame.html +1 -1
  48. package/docs/classes/vfx.Particle.html +1 -1
  49. package/docs/classes/vfx.ParticleGPU.html +1 -1
  50. package/docs/classes/vfx.SpotLight.html +1 -1
  51. package/docs/documents/features_gesture.html +1 -1
  52. package/docs/documents/features_parameter.html +10 -2
  53. package/docs/documents/release_notes_6.8.html +18 -5
  54. package/docs/functions/five.parseWork.html +1 -1
  55. package/docs/functions/vue.useFiveWorks.html +2 -2
  56. package/docs/hierarchy.html +1 -1
  57. package/docs/interfaces/five.AddableObject.html +1 -1
  58. package/docs/interfaces/five.AjaxOptions.html +1 -1
  59. package/docs/interfaces/five.BaseEvent.html +7 -2
  60. package/docs/interfaces/five.EventCallback.html +6 -6
  61. package/docs/interfaces/five.GestureEvent.html +21 -2
  62. package/docs/interfaces/five.GesturePointer.html +20 -0
  63. package/docs/interfaces/five.ImageOptions.html +1 -1
  64. package/docs/interfaces/five.IntersectEvent.html +10 -2
  65. package/docs/interfaces/five.IntersectMesh.html +1 -1
  66. package/docs/interfaces/five.IntersectMeshInterface.html +1 -1
  67. package/docs/interfaces/five.Intersection.html +1 -1
  68. package/docs/interfaces/five.LooseWorkWithExtrinsics.html +6 -6
  69. package/docs/interfaces/five.ModeChangeEvent.html +9 -2
  70. package/docs/interfaces/five.ModelControllerCustomInitArgs.html +1 -1
  71. package/docs/interfaces/five.ModelEvent.html +7 -2
  72. package/docs/interfaces/five.ModelSceneEvent.html +7 -2
  73. package/docs/interfaces/five.ModelTileEvent.html +7 -2
  74. package/docs/interfaces/five.MovePanoOptions.html +1 -1
  75. package/docs/interfaces/five.NetworkAbortError.html +1 -1
  76. package/docs/interfaces/five.NetworkFirbiddenError.html +1 -1
  77. package/docs/interfaces/five.NetworkOptions.html +1 -1
  78. package/docs/interfaces/five.NetworkProxyError.html +1 -1
  79. package/docs/interfaces/five.NetworkResourceEvent.html +7 -2
  80. package/docs/interfaces/five.NetworkResponseError.html +1 -1
  81. package/docs/interfaces/five.NetworkTimeoutError.html +1 -1
  82. package/docs/interfaces/five.ObjectEvent.html +7 -2
  83. package/docs/interfaces/five.PBMMaterial.html +1 -1
  84. package/docs/interfaces/five.PBMMeshMaterialParameters.html +1 -1
  85. package/docs/interfaces/five.PBMPointCloudMaterialParameters.html +1 -1
  86. package/docs/interfaces/five.PanoCircleMeshInterface.html +1 -1
  87. package/docs/interfaces/five.PanoEvent.html +13 -2
  88. package/docs/interfaces/five.PanoTextureEvent.html +11 -2
  89. package/docs/interfaces/five.PanoramaControllerCustomInitArgs.html +1 -1
  90. package/docs/interfaces/five.PanoramaLikeControllerCustomInitArgs.html +1 -1
  91. package/docs/interfaces/five.ParameterMaterialValue.html +1 -1
  92. package/docs/interfaces/five.ParameterTilesetValue.html +1 -1
  93. package/docs/interfaces/five.ParameterValue.html +1 -1
  94. package/docs/interfaces/five.Pose.html +1 -1
  95. package/docs/interfaces/five.RenderEvent.html +7 -2
  96. package/docs/interfaces/five.ResolvedParameterValue.html +4 -5
  97. package/docs/interfaces/five.State.html +1 -1
  98. package/docs/interfaces/five.StateEvent.html +9 -2
  99. package/docs/interfaces/five.TextureOptions.html +1 -1
  100. package/docs/interfaces/five.TopviewControllerCustomInitArgs.html +1 -1
  101. package/docs/interfaces/five.VRPanoramaControllerCustomInitArgs.html +1 -1
  102. package/docs/interfaces/five.ViewLayer.html +21 -21
  103. package/docs/interfaces/five.WorkCubeImage.html +3 -2
  104. package/docs/interfaces/five.WorkImage.html +6 -5
  105. package/docs/interfaces/five.WorkInitial.html +8 -8
  106. package/docs/interfaces/five.WorkModel.html +8 -8
  107. package/docs/interfaces/five.WorkModelLayer.html +6 -6
  108. package/docs/interfaces/five.WorkObserver.html +29 -29
  109. package/docs/interfaces/five.WorkObserverProto.html +26 -0
  110. package/docs/interfaces/five.WorkTile.html +6 -5
  111. package/docs/interfaces/five.WorkVideo.html +4 -4
  112. package/docs/interfaces/five.WorksEvent.html +7 -2
  113. package/docs/interfaces/five.XRControllerEvent.html +10 -2
  114. package/docs/interfaces/five.XRControllerState.html +8 -0
  115. package/docs/interfaces/five.XRGestureEvent.html +13 -2
  116. package/docs/interfaces/five.XRPanoramaControllerCustomInitArgs.html +1 -1
  117. package/docs/interfaces/five.XRSessionEvent.html +9 -2
  118. package/docs/interfaces/plugins.BackgroundPluginController.html +1 -1
  119. package/docs/interfaces/plugins.BackgroundPluginType.EventMap.html +1 -1
  120. package/docs/interfaces/plugins.DynamicPathLinePluginController.html +1 -1
  121. package/docs/interfaces/plugins.DynamicPathLinePluginType.EventMap.html +1 -1
  122. package/docs/interfaces/plugins.DynamicPathLinePluginType.State.html +1 -1
  123. package/docs/interfaces/plugins.ItemMaskController.html +1 -1
  124. package/docs/interfaces/plugins.ItemMaskPluginType.EventMap.html +1 -1
  125. package/docs/interfaces/plugins.ItemMaskPluginType.State.html +1 -1
  126. package/docs/interfaces/plugins.OrientationPluginController.html +1 -1
  127. package/docs/interfaces/plugins.OrientationPluginType.EventMap.html +1 -1
  128. package/docs/interfaces/plugins.OrientationPluginType.State.html +1 -1
  129. package/docs/interfaces/plugins.PanoAnimeController.html +1 -1
  130. package/docs/interfaces/plugins.PanoAnimePluginType.EventMap.html +1 -1
  131. package/docs/interfaces/plugins.PanoAnimePluginType.State.html +1 -1
  132. package/docs/interfaces/plugins.PluginTemplateType.EventMap.html +1 -1
  133. package/docs/interfaces/plugins.PluginTemplateType.State.html +1 -1
  134. package/docs/interfaces/plugins.TrajectoryController.html +1 -1
  135. package/docs/interfaces/react.FiveInjectionTypes.html +15 -15
  136. package/docs/modules/five.html +1 -1
  137. package/docs/types/five.ControllerEventTypes.html +6 -6
  138. package/docs/types/five.ParseOptions.html +6 -6
  139. package/docs/variables/five.PROXY_CONTROLLER_EVENT_NAMES.html +1 -1
  140. package/five/application/events.d.ts +1 -1
  141. package/five/controllers/events.d.ts +2 -2
  142. package/five/index.d.ts +1 -1
  143. package/five/index.js +60 -60
  144. package/five/index.mjs +3897 -3890
  145. package/five/meshes/boundingMesh.d.ts +1 -0
  146. package/five/model/parameter.d.ts +5 -4
  147. package/five/model/tile3d/index.d.ts +1 -0
  148. package/five/utils/event.d.ts +84 -47
  149. package/five/utils/subscribe.d.ts +2 -2
  150. package/five/work/index.d.ts +1 -0
  151. package/five/work/work.d.ts +4 -34
  152. package/five/work/workObserverProto.d.ts +39 -0
  153. package/gltf-loader/index.js +3 -3
  154. package/gltf-loader/index.mjs +3 -3
  155. package/line/index.js +3 -3
  156. package/line/index.mjs +3 -3
  157. package/package.json +1 -1
  158. package/plugins/index.js +2 -2
  159. package/plugins/index.mjs +2 -2
  160. package/react/index.js +2 -2
  161. package/react/index.mjs +2 -2
  162. package/shader-lib/index.js +2 -2
  163. package/shader-lib/index.mjs +2 -2
  164. package/sticker/index.js +3 -3
  165. package/sticker/index.mjs +3 -3
  166. package/umd/five-gltf-loader.js +3 -3
  167. package/umd/five-line.js +3 -3
  168. package/umd/five-plugins.js +2 -2
  169. package/umd/five-react.js +2 -2
  170. package/umd/five-shader-lib.js +2 -2
  171. package/umd/five-sticker.js +3 -3
  172. package/umd/five-vfx.js +2 -2
  173. package/umd/five-vue.js +2 -2
  174. package/umd/five.js +12 -12
  175. package/vfx/index.js +2 -2
  176. package/vfx/index.mjs +2 -2
  177. package/vue/index.js +2 -2
  178. package/vue/index.mjs +2 -2
  179. package/work-downloader/index.js +2 -2
  180. package/work-downloader/index.mjs +2 -2
  181. package/five/work/workObserverUtils.d.ts +0 -36
@@ -44,7 +44,7 @@ interface GestureEvent {
44
44
 
45
45
  Five 的手势系统基于 Hammer.js 封装,主要包含以下几种手势:
46
46
 
47
- * **gesture.create**: 所有事件创建时。
47
+ * **gesture.fire**: 任意事件被触发。
48
48
  * **gesture.pan**: 拖拽/平移。
49
49
  * **gesture.pinch**: 双指缩放。
50
50
  * **gesture.tap**: 点击。
@@ -64,10 +64,34 @@ class Parameter {
64
64
  reset(...keys: string[]): void;
65
65
 
66
66
  /**
67
- * 获取经过继承计算后的最终值
67
+ * 获取经过继承计算后的最终值(每次调用创建新对象)
68
68
  * @param upstream 上游 Parameter 对象列表(通常由引擎自动传入)
69
69
  */
70
70
  resolveValue(...upstream: Parameter[]): ResolvedParameterValue;
71
+
72
+ /**
73
+ * 获取经过继承计算后的最终值(复用 target 对象,避免重复创建)
74
+ * 适用于高频调用场景(如逐帧更新),可显著减少 GC 压力。
75
+ * @param target 用于写入结果的已有对象,其属性会被重置为默认值后重新赋值
76
+ * @param upstream 上游 Parameter 对象列表
77
+ */
78
+ static resolveValueTo(
79
+ target: Partial<ResolvedParameterValue>,
80
+ ...upstream: Partial<ParameterValue>[]
81
+ ): ResolvedParameterValue;
82
+ }
83
+ ```
84
+
85
+ > `resolveValue()` 内部已委托给 `resolveValueTo({}, ...)`,两者计算逻辑一致,区别仅在于是否复用对象。
86
+
87
+ #### 3. Version (版本标识)
88
+
89
+ `ResolvedParameterValue` 通过 `versionNumber: number` 标识当前配置的版本。引擎内部使用整数哈希(而非字符串拼接)计算版本号,用于高效的脏检查。
90
+
91
+ ```typescript
92
+ interface ResolvedParameterValue extends ParameterValue {
93
+ /** 整数哈希,输入参数变化时值会改变,用于脏检查 */
94
+ versionNumber: number;
71
95
  }
72
96
  ```
73
97
 
@@ -63,7 +63,7 @@ npm install @realsee/five@6.8
63
63
  ```
64
64
 
65
65
  ### 配置球谐光照阶数 (SH Degree)
66
- 可以通过 five.parameter.gSHDegree 设置球谐光照阶数,支持 0, 1, 2 阶,默认为 0 阶。
66
+ 可以通过 `five.parameter.gaussianSplattingSHDegree` 设置球谐光照阶数,支持 0, 1, 2 阶,默认为 0 阶。
67
67
  ```
68
68
  const five = new Five({
69
69
  parameters: {
@@ -118,7 +118,8 @@ gaussian_splatting 的模型同时也支持 rayscast 射线检测。同点云的
118
118
  正确解析 KHR_materials_unlit。是否感光作用到对应的 material 上,而不是 gltf 中的所有元素。
119
119
 
120
120
  ### 动画优化
121
- 处理额外动画骨骼未绑定导致的错误, 出现的抖动。
121
+ - 处理额外动画骨骼未绑定导致的错误,出现的抖动。
122
+ - 修复 glTF 骨骼 weight 为整型时,导致 boneTransform 计算出错进而引发射线检测错误的问题。gltf parser 在加载非 float 数据时,现已自动转换为 float 使用。
122
123
 
123
124
  ## 模型 ViewLayer 加载策略优化
124
125
  > 优化了 ViewLayer 的加载和显隐逻辑,以减少内存占用并提高性能。
@@ -141,7 +142,7 @@ gaussian_splatting 的模型同时也支持 rayscast 射线检测。同点云的
141
142
  - 射线交点 Intersection 对象新增了 tile, model, viewLayer 字段,便于在射线检测时获取更详细的上下文信息。
142
143
  - raycaster.hitFilter 回调函数的参数类型定义已更新,包含 model, viewLayer, tile 等上下文信息。
143
144
 
144
- ## Work 增强
145
+ ## Work 结构改变
145
146
  ### Observer 支持 uv 计算工具函数
146
147
  为 WorkObserver 提供了更多实用的工具函数,便于进行坐标和 UV 转换。
147
148
  UV 转换工具函数
@@ -150,6 +151,12 @@ UV 转换工具函数
150
151
  - observer.vectorToCubemapUv: 将方向向量转化为立方体贴图 uv。
151
152
  - observer.cubemapUvToVector: 将立方体贴图 uv 转化为方向向量。
152
153
 
154
+ ### five.panoId
155
+ 新增 `five.panoId` 属性,使其与 `work.observer` 保持一致。
156
+
157
+ ### derived_id 类型变更
158
+ derived_id 的类型从 `number` 改为 `number | string`。
159
+
153
160
  ## 全景图滤镜
154
161
 
155
162
  新增了全景图滤镜功能,支持实时调整全景图的亮度、对比度、饱和度、色温和色调等参数。
@@ -199,10 +206,16 @@ UV 转换工具函数
199
206
  1. 优化 mapview 下滚动缩放。避免滚落所发有时会退回的问题。
200
207
  2. 优化 floorplan 从下向上看时的交互的屏幕上下滑动反人类下意识的问题。
201
208
  3. 优化 camera.autoNearFar 的计算结果。优化对于小物品的 near 过远以及 出现 z-fighting 的问题。
202
- 4. 添加了 gesture.create 事件,发生在所有事件创建时。
209
+ 4. 添加了 gesture.fire 事件,发生在任意事件被触发。
203
210
  5. gestureEvent.center gestureEvent.pointers 中加入了 buttons button shiftKey ctrlKey metaKey altKey 字段。
211
+ 6. 修复 gesture.momentum 前没有触发 gesture.create 的问题。
212
+ 7. 修复 gesture.pan 中 preventDefault 无法阻止触发 gesture.momentum 的问题。
213
+ 8. 修复 gesture.pan 中第一次并没有 event.isFirst = true 的问题。
214
+ 9. 添加自定义着色器 mainPanoColor 插入点,可以修改 pano0Color、pano1Color。
215
+ 10. 新增 `parameter.resolveValue('xxx')` 快速获取单个参数的最终值,无需创建完整的 `ResolvedParameterValue` 对象。
204
216
 
205
217
  ## 内部机制改动
206
218
  1. glTF 加载 mesh / points 都将直接使用 PBM 材质,而不是作为 PBM_Mesh 扩展形式去替换覆盖使用three内置材质的方式。
207
219
  2. 应用 animation pointer 以及 动画优化的原因。目前会重写 hack THREE.PropertyBinding.findNode。
208
- 3. 打包不再合并 .d.ts 文件。便于文档可以更便于找到对应的类型声明。
220
+ 3. 打包不再合并 .d.ts 文件。便于文档可以更便于找到对应的类型声明。
221
+ 4. Parameter 性能优化:新增 `resolveValueTo` 支持对象复用以减少 GC,版本标识改用整数哈希(`versionNumber: number`)替代字符串拼接。
@@ -1 +1 @@
1
- window.hierarchyData = "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"
1
+ window.hierarchyData = "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"
@@ -1 +1 @@
1
- window.navigationData = "eJy1nVlzI7cRx7+L8mo69spZb/wmUccqFlcMKe9uKuVSgRyQhDUcjOfgSk7lu6cwJ45Gd3PNvBL//jUGA2DQuPjv/5xV8qU6++lscX1xNbs+++YsF9Xu7KezRK/rvcyq8q9tyre7ap+efXP2rLLk7Kd35+/evf3u3X+/GeyFmiR6PdnWKpGpymQJoQIRSc0VyMkVZblNdVmK4hUy79MohsqqQkOAJoGy/r1W6+dJWYmighhWMkUq6zzXMKVLogiV3OepqCSE6NMoxkaKqi6aF7veqTQpZHb207+H5POkUinooDd8aiWUn7XYy0JMRKb2olI6Q5G+mISnKs9lgTNbDYnSukhUJio5KV/LSu5xqK+m8PIgM/CVD8hGQb41dcBfihGQkFR/Udl2kqrtrpq8SSa5KMEGPlIhi+PcnB/t5pznZivqslQim6zSuqB9hHLSgSyNKU5tNTSqmpTrQspskqsXmRJZ9dVkD7cXWznRuWk6ONpRUthUi2QiXypZZCKd7HUiUxQO6Fku8kJvC0m8P0dJYfeikoUSeHZ7EQnTCV4JjIADIbLDKa+9PshJLjI9kZuNXOM9iy8m4XVaqckXXTzj2EFGARvfG5VWRFdt6VhI8hM1qFi4+kDD6gONKsRe0o/aqUhcWm8V/tVsJSRIl1Ve6LUsS5VtcaAjpcCFeF2LEq+CnYZEyd9rWVamfb+AY70RaCvJEVfXiRb6N6qtuFISXEVGYSOvYozFDkp+maTilagzo4wCkm033mp/dV5HKkUpnzJdRQeKb799C3lyTJ/efvuWyvLbb3/kcH6kOe84nHf007tjrb1O6lSWfw0HWG/ggvmo03ov56nI5F1WyaJ0qp7M6n0Hg4Re7qxcXSQir9RB3td7lYlsLefOiGedirLsswlqXfT3bxx4P/C+Mb3TvdZ5jBwIMeylrrNEZduZLHcRoC3BUNMmQohA2kTM/Lr5AE71Ptel3docjCtCca/ySu/lvRmvqmyLvApAiYFvZLXeRTPYpaIAp/K61kENDk2RJ+mTKcRCZoks4s9gSVBUnabLplP+Zy2SGMwRYbj3qqz0thD7CGlIxyBNM81E+kmubu+J5wS1GHzmjhAd2CwcGwLGy7XMYi9/FOAYN1T3EGFo7pp/kJX5wCzrVbku1CqWF1+GIeci01NVrFOJdCKuiI+b1mWlYzUCkvLRS52qWK0FlDg4GFh6OHBI6UEuZ1OdVUJlcY4lCVDftFrzbZV5IdeiksmZx2+KaLkTCerCUhEZvi10HfsQ9clfk9Hb5cPKHRAG6E5BZBCrkm0qAzALYlUINAOD1QBoqtaNF3D5uFFDwbTKqmmq62hFtjVsGP3AoZaAL59VlskEfx+WiMD9kieikmKVxnowR4PBsC6Z7I2pfpTVgT7KFzP0v9dIs3Q0KExFi+QxiLZD0/MrxPj8ijKfivUOc9+kU5APzmxOwPgQzOWEiEUbgy7XO2lig2ipAlIKXcpYr9SlooBCmE5L28slLmMQ8DBYWTkiDPfJiUkdyKcgGg1NF7LU6UEmD6tSFodoYUNSDP15cVlXVXSs0yejQVOSmObvf0uUGfhtxHoMxiyZF0H+7a3N+028PPhzuAFtFKEsJ05DcI6OTzQDBfM7E9zJMf6lKOW1u1jiMwcJyukCyja6RmCODie+8KEvfG4btc51iQBHDUqq05SRO0eG8a4KsdZxTpOM2TcvaSrSdCXWz3GOI8N4Jma8y1R1UWyRpmGrKJr51JFtzROizFTrIk9FZmp6odNUFu1Al5FtyhTze9uuPxENx1ZhtDuzOkQWi60iab8s7mciz1WGFYGv5FB52RyFKLOffiPK0dWxiE44HeUFcXWE5g5wo7hwiIvw7noKEzzoMQ8/P35+E+eZVMz6XutSmjDFHTv4GEdG8hgsNsc0TSeCieI6JYvqzQBFmcBsUIQYDpqiUHjQFOGaQi/EXjC4vZTF/agSiXx4XB2L+ElVu+uXqlBZqdZIbxExwHzMRG5WZo7v8QlD1KdO5HQnsi3V5XtCipl+xVNgZqQ/RvZTXs7JD4GtImlNUM7J3CgkmSZ04yAHHU40D/KzfN3gI3tXhxMPTS/KKEhHiDG7Kd6LlS6q66LQSA8USBncG1WsVJLIjMd25Qw+WRSujkGcm/VqXm5HKYNrYt66WFP1C1Lz6LnOSsnLuKNm0B/VXuqaWT9sMcZu42yiOCwRxoKWAMiqgRjxfTEGZREDvo8jn+ToZ2gWNo50YttQnoh3PEgojhmdHP/5oyw5Xu/Vs/x6z5g15b2b8WUUoa3Eqd0qVD9l/1GkNVp9IT3LQzcVynVgy1l8LphBLNH36C+me9aXs2m7hxlYAQxgoZhiWwtxjEoHGxzhY5nqiu+gURP0cCEJgMIrSCHLWmMbShDPLmxC+DFN6krmFRLG2yoGrV3Ko+psoGWQ52rtboCOUDsdRQwW9ZjljBkSPhdyozKZtFtEUCeOEqWi87XUTO1CbpXOuNPJkBqnm20mRKduiXBWu5jC7RVhPephuxJXokImEXoFRlnmO1lIbolCapyeigrP5CBBOe6G0YAR7hYF7IkXO2owUvc9J8dlrg4lNou3NNCWUbzpcM5m6R3KgbC+mqK/l+5iOMRsNRSplBUHNsgYPFZBjjqUqL9yhoowRH0OC8NkwXhKjPpRyS/37kZpHzdIKI57CA/ChGfxPMri6+MG2hbz/EmuPi8uXmTZdLOIG09IMsfMsMi+HOXr4nlar2SzIINwbRnFY7B4HGoinzmHb8n+UWJLPp6QYtIwDoVYWGCtKQwiOkuDjMUjmrWr4xOZ2Ry0FJleSuGuotg6Ope2kqL2PQtNtZVcasnHlhxuSYxnRg1FcrelQZxwd1pIIRafWOtOds9IPF4gxbm8lX5XhxO//htG2+Kel+aAmc7IZ7F11M6pfvL58TW36kL1mts7p2yRB/zu7z9+/7c3CLTbnMBid1rSRXCaJp57UEo5cAMdt/1a8FBGg1/YbEBJ4aFqZZ63BF1E1Xw3TRXjeBiFJLxeyRtnBt8GdokU5FqYk5g3debtJLFQroQE4g/Kf7zmOJB3RtUCjcl8kHlvBMxIjgGWlTn+RkJbGQXuutZ46dkCCnYvt2L9OpQ3yPM0JFKLZCHLOkWIjoQCzpz9vxZmFuz5hY1TuJzaJBpgKnS7NhTBjAImTGcbBXfhtoAHM3UxWOYIiJaKh6WATFS7VH/t3RLg0GwJBexWYb21WgtnC46BhdtEI9DIRlEI3ozupT1p5zL7dGY+592tE5ys+lqmi37wgKF7DRPpTTmGPGjSMQqr12tmCXhSpoNoj2WlUyhTm0GGSeAY3yVR87uEBhRlOK3qYEYBCbucXaT5TkR7YFvAgE11qotl9RrpSR0FA9fsWUZxo4KBa1b+m2W/aDUIVAxss3B0GauutoALa1ah6JxCWq6L5U4Q4EbBxqk/CJr6gwN7LERWqugg1FGQOF1W8+GakXhBBjIKDK2XRQOTmJh20hzpcgMyN152vETUlJvlWpVl5FvbpYEI6vwrtAIWLaOYmMx8fzKxGbvORA7TfRWFHQ75Yd2sL2JBzfmkzFvo85mjhoPsXvxD4ayBeExbdAR0OE5IlUNEz3FVyqqpq/FhRKAiscOCD1nekJLCewsTP8tXkB3KjgRHOyxAR6LNHCcMMymU+XpwVl7JjajTKpy8O4hCmQOIHTdu4jo7t/0k7oEwD5mE58Ec6+fq5U3U2CQitvPFw+d/PU0fPjwuHu7vrxdP1x+vPzw+fbiYXS+jTMwI8TVe7lg+6o9N/RtdbLoJlqEYA61LfvuDTS6kqOSVXNVb+E4cnw7rSQ9edQKpQMVySElXK7rjU81nfaOLfRQbM0B8bGXVr7Mu18IeRXpsX4gwd1KYcnrU9zrbqqpO4tRQ6nOpr2hzj+LSv9DVc2OLkIyrMrZ7xeeV2MYVj+nHMwELimochrlx8aI6jzN6AcG4PE/ilacXEAxzhxLKMAIG4w8S8gdBuVm9oIyb1QtBuE2rDYowAoIxX+FFOl9RJTpPX3FC+koRsire1/QCgtFsnkIhjYKk4O91mVNv9fN5jhI+n+cooetGHvX7tmtBYL702K5nL56j2908Z6EUeQhzzeX177W9GcLDDQqC0kx0oJRGQVCW5gzeVm3i1dRRobTCP/4ZkAro9KdDOTQf+Uc9bjaL135Ai5Cb+S3tBmEecJQgHPgCpuACw7+sG13Z61rSD9///Yfz72K46a7O7JEFDl33ag46HLHicGUm1Ft9DN+sLzjnClB6c/NufxvwoZfH4M2m53DjcojNV/vcFsaA7cZIb49OiDPX2Z4n/T3CDFh7nU8QIqLktLEZb5J23di3ZG7TajNJNVzXrEQvhIHvzLy6WsYuKLJRg8yFuteyXC0upg8s2ijEeLf3jzcc3KijaLHbx3wafQeZUTV9KSNvrQ6jPb5fXF9zH9cTo2/kygrVrF0e3qvFdngYRyTDiCjIQm5kIbPIwTqfNqgx7FASJHJQhji7aZn/1AjblPmV1ZjuFXTlWGN+HzDcN2XSb6Xeywq6Q2pA9BIKFb/pbUBxLngzuqXcNhf6MnLnS8kq/2Ss3kSIloIH6t3TwEHJLUfou9NOGQXlGT0i080h2fWtvUcc+ER0CaxaZ5ZRtoUZbLabKtxZMp8IqV03P8BuPokiU9l2qhNvp1d7sTLK92xdf85lw942Aas5ow7A3QPhzUjOfDiXHZkjD08wwvv2UDa9h7sVm1nYu9hpDNyDY495miloiwEKb02+ZjMLjuUsrQ7PdRR6NCNXUqDpd5SNTMXbjd5cpubv3wpbaQlu4oq0zXHqO+z6AOQox/o/Y4AdiQHAlglW01it3M4t0bbjZ7wAHO/EV3uDC6tZu2Tb8Lj+yK9hAxdfpLOr1tVrJvZqPRfVznySON+DqAm34lFvMu7gRJ123MGJeu64A0b3LardnyqkEfDnWkDcA9kg6K4WyT6/v20OW3ydl9GWbiPmMzgT5TOncYTaU7UKgHyi5gCQOe3AmLmFwWP3dujIQpTPX8Pu7f5k+wXIdMOlWxSAPUFTgjJ7wjYEZfqIxvNQKJlVzX4aTvsB5adqQjD8RK0Ihp/ogwLDT1EnYfIJqmUkyyesmZGsH1E5zbqq2e7FGvcA4lNVTAhNV8tWQV0xSPtg3j3IagWQlxO1AQh9ihYAcU9Q/8HsnrD2g9k+pu63Zt1f0RJVP9CerOaH5BP1xwD5VBUxJJ+kHobYU1RDILOnrIVApo+ohNPl8vwq/u9MvRdHhs1APBQrVXWTFcCfY41fDkuG8RZmwkYml/olPpndQ0MtPlfizgdBEzKMGbvYxIxbTcA4iOmRsKUiBDN0ZHoK5RgcvVa1R3LuVA2GEczsInZ4B9P120w3gB7vEcSryrac7mYUoktmzv5eRoYhA8yBX6WhjRWx6o/ssADrLcYGDRAHbmCEkV0lggyqFEYNxAjYGyxgWE+KQMcXTVN9bYB1/9NU2Gvu/Wik+Zm1wLWsdAGsq7aAJhHrms1p44sm/wtj0J+OgwcFLTNmgtV7YzMV2UGU80LnFN1SUtC77Lf2fwq8088g1xWjPUvRXmTwsDF2N93f1CJ42ICd+7Y8OzN//AE8gKOnRjaOpRmr8P1Y6qO88D0cQZ8X+qASWfRlHaw2j/hAegwfOkgRojnHKJrm176rmcjfiywFTt1YLdWXHseP5zvUsch0gQQyFrfZ+kZn2JZx3l/bbYzA8fSF37W4NOewxd2Hf1xPH+8ePjzNFw9zczQjDgy1CLgupcmA9897PtJW+TBqB257jsLqf6CPVOsmkCKfvlHbv2gOt9eSYO/7BROB75iDqrNSbOTTU1d84QUbPjZi4Lugirwzv/CuQQm82TLsMVpd++9aV6rw/6gnwvX0XAcL8boWZYW9T1jPcFAXhcyq8HKymANXz3bgDf1xOjD8h9CRfwmLsJE/C4PgzflzEtqoaNh7meaMwm1lNK7ZnTv8pxK/dkTsmA4XUiSvvPfo6WkH80KbYcYb8KyQgx6UNLT9hxXvApMI1tIywKxCYD567FyBwyKOFnxR1c7943af0yvQEKes1PoZ2o7dJTDDHA/SBzo9ZAnBgP9J7/7XzPxLATie73m+GN8be9i8hM932Lywnu1CFZtUfwmfzQC6RDSIS525Idu6ScJs56Ko1Br6+1xj3qdyCLfzX3DI7fwXjLPMdXWvtjtgB7qhDMmcvETvCbTzQ/8hxZBvFq/TMZGPX6TE/y/JYzsGHCfHeTgab7IEDOD9XLMuyOmyQODiLKcp1sDqziG4mwpuiuMw7WMt8dkQg4TlVNhPfmi7R+8csL6veEg71ftcZ86yqesjEJLvLPy0jsTI1/TYsK3PHBm0wcFJCIKDEjdM8wOD3yLfecMExSePIRpPJ48gLOr/I34I8KeNHmz8qWOHkH2qyMEinypusJB/OmqwWEfFDAQLuMM7iuqPBXOQvfakkY3v5P8U1/huThbVWOBjYxoCB8xJHRXF2Ch+DAMeZrZQ8LUhv/731/8BX+NcKA=="
1
+ window.navigationData = "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"