@carbonenginejs/runtime-trinity 0.6.0 → 0.7.0

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 (1087) hide show
  1. package/README.md +35 -243
  2. package/dist/controllers/CjsControllerExpressionProgram.js +157 -0
  3. package/dist/controllers/CjsControllerExpressionProgram.js.map +1 -1
  4. package/dist/controllers/ITr2ControllerAction.js +57 -0
  5. package/dist/controllers/ITr2ControllerAction.js.map +1 -1
  6. package/dist/controllers/Tr2ActionAnimateCurveSet.js +10 -0
  7. package/dist/controllers/Tr2ActionAnimateCurveSet.js.map +1 -1
  8. package/dist/controllers/Tr2ActionAnimateValue.js +26 -0
  9. package/dist/controllers/Tr2ActionAnimateValue.js.map +1 -1
  10. package/dist/controllers/Tr2ActionBindRTPC.js +11 -0
  11. package/dist/controllers/Tr2ActionBindRTPC.js.map +1 -1
  12. package/dist/controllers/Tr2ActionCallback.js +5 -0
  13. package/dist/controllers/Tr2ActionCallback.js.map +1 -1
  14. package/dist/controllers/Tr2ActionChildEffect.js +63 -0
  15. package/dist/controllers/Tr2ActionChildEffect.js.map +1 -1
  16. package/dist/controllers/Tr2ActionOverlay.js +68 -0
  17. package/dist/controllers/Tr2ActionOverlay.js.map +1 -1
  18. package/dist/controllers/Tr2ActionPlayCurveSet.js +16 -0
  19. package/dist/controllers/Tr2ActionPlayCurveSet.js.map +1 -1
  20. package/dist/controllers/Tr2ActionPlayMeshAnimation.js +29 -0
  21. package/dist/controllers/Tr2ActionPlayMeshAnimation.js.map +1 -1
  22. package/dist/controllers/Tr2ActionPlaySound.js +11 -0
  23. package/dist/controllers/Tr2ActionPlaySound.js.map +1 -1
  24. package/dist/controllers/Tr2ActionPython.js +11 -0
  25. package/dist/controllers/Tr2ActionPython.js.map +1 -1
  26. package/dist/controllers/Tr2ActionResetClipSphereCenter.js +17 -0
  27. package/dist/controllers/Tr2ActionResetClipSphereCenter.js.map +1 -1
  28. package/dist/controllers/Tr2ActionSetAttenuationScaling.js +5 -0
  29. package/dist/controllers/Tr2ActionSetAttenuationScaling.js.map +1 -1
  30. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js +5 -0
  31. package/dist/controllers/Tr2ActionSetAudioEmitterPrefix.js.map +1 -1
  32. package/dist/controllers/Tr2ActionSetAudioSwitch.js +5 -0
  33. package/dist/controllers/Tr2ActionSetAudioSwitch.js.map +1 -1
  34. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js +23 -0
  35. package/dist/controllers/Tr2ActionSetExternalControllerVariable.js.map +1 -1
  36. package/dist/controllers/Tr2ActionSetShaderOption.js +5 -0
  37. package/dist/controllers/Tr2ActionSetShaderOption.js.map +1 -1
  38. package/dist/controllers/Tr2ActionSetValue.js +35 -0
  39. package/dist/controllers/Tr2ActionSetValue.js.map +1 -1
  40. package/dist/controllers/Tr2ActionSpawnParticles.js +10 -0
  41. package/dist/controllers/Tr2ActionSpawnParticles.js.map +1 -1
  42. package/dist/controllers/Tr2BindingPoint.js +67 -0
  43. package/dist/controllers/Tr2BindingPoint.js.map +1 -1
  44. package/dist/controllers/Tr2Controller.js +37 -0
  45. package/dist/controllers/Tr2Controller.js.map +1 -1
  46. package/dist/controllers/Tr2ControllerEventHandler.js +10 -0
  47. package/dist/controllers/Tr2ControllerEventHandler.js.map +1 -1
  48. package/dist/controllers/Tr2ControllerExpression.js +17 -0
  49. package/dist/controllers/Tr2ControllerExpression.js.map +1 -1
  50. package/dist/controllers/Tr2ControllerFloatVariable.js +6 -0
  51. package/dist/controllers/Tr2ControllerFloatVariable.js.map +1 -1
  52. package/dist/controllers/Tr2ControllerReference.js +11 -0
  53. package/dist/controllers/Tr2ControllerReference.js.map +1 -1
  54. package/dist/controllers/Tr2StateMachine.js +17 -0
  55. package/dist/controllers/Tr2StateMachine.js.map +1 -1
  56. package/dist/controllers/Tr2StateMachineState.js +47 -0
  57. package/dist/controllers/Tr2StateMachineState.js.map +1 -1
  58. package/dist/controllers/Tr2StateMachineTransition.js +29 -0
  59. package/dist/controllers/Tr2StateMachineTransition.js.map +1 -1
  60. package/dist/controllers/Tr2SyncToAnimation.js +5 -0
  61. package/dist/controllers/Tr2SyncToAnimation.js.map +1 -1
  62. package/dist/controllers/Tr2TimelineController.js +61 -0
  63. package/dist/controllers/Tr2TimelineController.js.map +1 -1
  64. package/dist/controllers/contracts.js +24 -1
  65. package/dist/controllers/contracts.js.map +1 -1
  66. package/dist/controllers/index.js +1 -1
  67. package/dist/curves/CjsGrannyCurves.js +150 -0
  68. package/dist/curves/CjsGrannyCurves.js.map +1 -1
  69. package/dist/curves/Tr2BoneMatrixCurve.js +23 -0
  70. package/dist/curves/Tr2BoneMatrixCurve.js.map +1 -1
  71. package/dist/curves/Tr2CameraFollowCurveKey.js +6 -0
  72. package/dist/curves/Tr2CameraFollowCurveKey.js.map +1 -1
  73. package/dist/curves/Tr2CurveColor.js +6 -0
  74. package/dist/curves/Tr2CurveColor.js.map +1 -1
  75. package/dist/curves/Tr2CurveColorMixer.js +6 -0
  76. package/dist/curves/Tr2CurveColorMixer.js.map +1 -1
  77. package/dist/curves/Tr2CurveCombiner.js +5 -0
  78. package/dist/curves/Tr2CurveCombiner.js.map +1 -1
  79. package/dist/curves/Tr2CurveConstant.js +16 -0
  80. package/dist/curves/Tr2CurveConstant.js.map +1 -1
  81. package/dist/curves/Tr2CurveEulerRotation.js +5 -0
  82. package/dist/curves/Tr2CurveEulerRotation.js.map +1 -1
  83. package/dist/curves/Tr2CurveEulerRotationExpression.js +66 -0
  84. package/dist/curves/Tr2CurveEulerRotationExpression.js.map +1 -1
  85. package/dist/curves/Tr2CurveQuaternion.js +5 -0
  86. package/dist/curves/Tr2CurveQuaternion.js.map +1 -1
  87. package/dist/curves/Tr2CurveQuaternionKey.js +5 -0
  88. package/dist/curves/Tr2CurveQuaternionKey.js.map +1 -1
  89. package/dist/curves/Tr2CurveRandomAxisRotation.js +28 -0
  90. package/dist/curves/Tr2CurveRandomAxisRotation.js.map +1 -1
  91. package/dist/curves/Tr2CurveScalar.js +35 -0
  92. package/dist/curves/Tr2CurveScalar.js.map +1 -1
  93. package/dist/curves/Tr2CurveScalarExpression.js +11 -0
  94. package/dist/curves/Tr2CurveScalarExpression.js.map +1 -1
  95. package/dist/curves/Tr2CurveScalarKey.js +6 -0
  96. package/dist/curves/Tr2CurveScalarKey.js.map +1 -1
  97. package/dist/curves/Tr2CurveSetRange.js +5 -0
  98. package/dist/curves/Tr2CurveSetRange.js.map +1 -1
  99. package/dist/curves/Tr2CurveVector2.js +5 -0
  100. package/dist/curves/Tr2CurveVector2.js.map +1 -1
  101. package/dist/curves/Tr2CurveVector3.js +5 -0
  102. package/dist/curves/Tr2CurveVector3.js.map +1 -1
  103. package/dist/curves/Tr2CurveVector3Expression.js +71 -0
  104. package/dist/curves/Tr2CurveVector3Expression.js.map +1 -1
  105. package/dist/curves/Tr2CurveVector3Lerp.js +6 -0
  106. package/dist/curves/Tr2CurveVector3Lerp.js.map +1 -1
  107. package/dist/curves/Tr2DistanceTracker.js +6 -0
  108. package/dist/curves/Tr2DistanceTracker.js.map +1 -1
  109. package/dist/curves/Tr2FollowCurve.js +6 -0
  110. package/dist/curves/Tr2FollowCurve.js.map +1 -1
  111. package/dist/curves/Tr2GrannyEventTrack.js +5 -0
  112. package/dist/curves/Tr2GrannyEventTrack.js.map +1 -1
  113. package/dist/curves/Tr2GrannyTrack.js +6 -0
  114. package/dist/curves/Tr2GrannyTrack.js.map +1 -1
  115. package/dist/curves/Tr2GrannyTransformTrack.js +6 -0
  116. package/dist/curves/Tr2GrannyTransformTrack.js.map +1 -1
  117. package/dist/curves/Tr2GrannyVectorTrack.js +5 -0
  118. package/dist/curves/Tr2GrannyVectorTrack.js.map +1 -1
  119. package/dist/curves/Tr2MatrixKey.js +5 -0
  120. package/dist/curves/Tr2MatrixKey.js.map +1 -1
  121. package/dist/curves/Tr2ObjectFollowCurveKey.js +6 -0
  122. package/dist/curves/Tr2ObjectFollowCurveKey.js.map +1 -1
  123. package/dist/curves/Tr2QuaternionLerpCurve.js +6 -0
  124. package/dist/curves/Tr2QuaternionLerpCurve.js.map +1 -1
  125. package/dist/curves/Tr2RotationAdapter.js +6 -0
  126. package/dist/curves/Tr2RotationAdapter.js.map +1 -1
  127. package/dist/curves/Tr2ScalarExprKey.js +18 -0
  128. package/dist/curves/Tr2ScalarExprKey.js.map +1 -1
  129. package/dist/curves/Tr2ScalarExprKeyCurve.js +23 -0
  130. package/dist/curves/Tr2ScalarExprKeyCurve.js.map +1 -1
  131. package/dist/curves/Tr2ScalarFader.js +11 -0
  132. package/dist/curves/Tr2ScalarFader.js.map +1 -1
  133. package/dist/curves/Tr2TranslationAdapter.js +6 -0
  134. package/dist/curves/Tr2TranslationAdapter.js.map +1 -1
  135. package/dist/curves/TriColorSequencer.js +6 -0
  136. package/dist/curves/TriColorSequencer.js.map +1 -1
  137. package/dist/curves/TriCurveSet.js +23 -0
  138. package/dist/curves/TriCurveSet.js.map +1 -1
  139. package/dist/curves/TriEventCurve.js +23 -0
  140. package/dist/curves/TriEventCurve.js.map +1 -1
  141. package/dist/curves/TriEventKey.js +5 -0
  142. package/dist/curves/TriEventKey.js.map +1 -1
  143. package/dist/curves/TriPerlinCurve.js +30 -0
  144. package/dist/curves/TriPerlinCurve.js.map +1 -1
  145. package/dist/curves/TriVectorSequencer.js +6 -0
  146. package/dist/curves/TriVectorSequencer.js.map +1 -1
  147. package/dist/eve/AudioGameObject.js +89 -1
  148. package/dist/eve/AudioGameObject.js.map +1 -1
  149. package/dist/eve/BackAndForthData.js +7 -0
  150. package/dist/eve/BackAndForthData.js.map +1 -1
  151. package/dist/eve/CjsDistributionRandom.js +6 -0
  152. package/dist/eve/CjsDistributionRandom.js.map +1 -1
  153. package/dist/eve/CjsEveThrottleableState.js +11 -0
  154. package/dist/eve/CjsEveThrottleableState.js.map +1 -1
  155. package/dist/eve/EveChildUpdateParams.js +7 -0
  156. package/dist/eve/EveChildUpdateParams.js.map +1 -1
  157. package/dist/eve/EveComponentTypes.js.map +1 -1
  158. package/dist/eve/EveCustomMask.js +58 -27
  159. package/dist/eve/EveCustomMask.js.map +1 -1
  160. package/dist/eve/EveDistanceField.js +84 -0
  161. package/dist/eve/EveDistanceField.js.map +1 -1
  162. package/dist/eve/EveEntity.js +138 -0
  163. package/dist/eve/EveEntity.js.map +1 -0
  164. package/dist/eve/EveImpactOverlay.js +61 -0
  165. package/dist/eve/EveImpactOverlay.js.map +1 -1
  166. package/dist/eve/EveLODHelper.js +17 -13
  167. package/dist/eve/EveLODHelper.js.map +1 -1
  168. package/dist/eve/EveLineData.js +2 -0
  169. package/dist/eve/EveLineData.js.map +1 -1
  170. package/dist/eve/EveThrottleable.js +11 -0
  171. package/dist/eve/EveThrottleable.js.map +1 -1
  172. package/dist/eve/FollowASplineData.js +7 -0
  173. package/dist/eve/FollowASplineData.js.map +1 -1
  174. package/dist/eve/FormationData.js +6 -0
  175. package/dist/eve/FormationData.js.map +1 -1
  176. package/dist/eve/InertiaData.js +7 -0
  177. package/dist/eve/InertiaData.js.map +1 -1
  178. package/dist/eve/PlacementDataWithIdentifier.js +7 -0
  179. package/dist/eve/PlacementDataWithIdentifier.js.map +1 -1
  180. package/dist/eve/PlayFXData.js +7 -0
  181. package/dist/eve/PlayFXData.js.map +1 -1
  182. package/dist/eve/SeekTargetData.js +7 -0
  183. package/dist/eve/SeekTargetData.js.map +1 -1
  184. package/dist/eve/{EveSpaceObjectAttachmentUtils.js → attachment/EveSpaceObjectAttachmentUtils.js} +11 -11
  185. package/dist/eve/attachment/EveSpaceObjectAttachmentUtils.js.map +1 -0
  186. package/dist/eve/attachment/banner/EveBannerItem.js +70 -0
  187. package/dist/eve/attachment/banner/EveBannerItem.js.map +1 -0
  188. package/dist/eve/{EveBannerLight.js → attachment/banner/EveBannerLight.js} +13 -2
  189. package/dist/eve/attachment/banner/EveBannerLight.js.map +1 -0
  190. package/dist/eve/attachment/banner/EveBannerSet.js +537 -0
  191. package/dist/eve/attachment/banner/EveBannerSet.js.map +1 -0
  192. package/dist/eve/{EveBoosterSet2.js → attachment/booster/EveBoosterSet2.js} +204 -35
  193. package/dist/eve/attachment/booster/EveBoosterSet2.js.map +1 -0
  194. package/dist/eve/{EveBoosterSet2Renderable.js → attachment/booster/EveBoosterSet2Renderable.js} +205 -12
  195. package/dist/eve/attachment/booster/EveBoosterSet2Renderable.js.map +1 -0
  196. package/dist/eve/{EveTrailsSet.js → attachment/booster/EveTrailsSet.js} +49 -1
  197. package/dist/eve/attachment/booster/EveTrailsSet.js.map +1 -0
  198. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js +512 -0
  199. package/dist/eve/attachment/decal/EveSpaceObjectDecal.js.map +1 -0
  200. package/dist/eve/{EveHazeSet.js → attachment/haze/EveHazeSet.js} +65 -6
  201. package/dist/eve/attachment/haze/EveHazeSet.js.map +1 -0
  202. package/dist/eve/attachment/haze/EveHazeSetItem.js +64 -0
  203. package/dist/eve/attachment/haze/EveHazeSetItem.js.map +1 -0
  204. package/dist/eve/{EveHazeSetLight.js → attachment/haze/EveHazeSetLight.js} +13 -2
  205. package/dist/eve/attachment/haze/EveHazeSetLight.js.map +1 -0
  206. package/dist/eve/attachment/itemSetBounds.js +131 -0
  207. package/dist/eve/attachment/itemSetBounds.js.map +1 -0
  208. package/dist/eve/{EvePlaneLight.js → attachment/plane/EvePlaneLight.js} +14 -2
  209. package/dist/eve/attachment/plane/EvePlaneLight.js.map +1 -0
  210. package/dist/eve/{EvePlaneSet.js → attachment/plane/EvePlaneSet.js} +119 -7
  211. package/dist/eve/attachment/plane/EvePlaneSet.js.map +1 -0
  212. package/dist/eve/attachment/plane/EvePlaneSetItem.js +72 -0
  213. package/dist/eve/attachment/plane/EvePlaneSetItem.js.map +1 -0
  214. package/dist/eve/{EveSpotlightLight.js → attachment/spotlight/EveSpotlightLight.js} +13 -2
  215. package/dist/eve/attachment/spotlight/EveSpotlightLight.js.map +1 -0
  216. package/dist/eve/{EveSpotlightSet.js → attachment/spotlight/EveSpotlightSet.js} +86 -6
  217. package/dist/eve/attachment/spotlight/EveSpotlightSet.js.map +1 -0
  218. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js +61 -0
  219. package/dist/eve/attachment/spotlight/EveSpotlightSetItem.js.map +1 -0
  220. package/dist/eve/{EveSpriteLight.js → attachment/sprite/EveSpriteLight.js} +14 -2
  221. package/dist/eve/attachment/sprite/EveSpriteLight.js.map +1 -0
  222. package/dist/eve/{EveSpriteLineSet.js → attachment/sprite/EveSpriteLineSet.js} +69 -7
  223. package/dist/eve/attachment/sprite/EveSpriteLineSet.js.map +1 -0
  224. package/dist/eve/{EveSpriteLineSetItem.js → attachment/sprite/EveSpriteLineSetItem.js} +29 -4
  225. package/dist/eve/attachment/sprite/EveSpriteLineSetItem.js.map +1 -0
  226. package/dist/eve/{EveSpriteSet.js → attachment/sprite/EveSpriteSet.js} +87 -8
  227. package/dist/eve/attachment/sprite/EveSpriteSet.js.map +1 -0
  228. package/dist/{generated/eve/attachment/sprites → eve/attachment/sprite}/EveSpriteSetItem.js +23 -26
  229. package/dist/eve/attachment/sprite/EveSpriteSetItem.js.map +1 -0
  230. package/dist/eve/attachment/turrets/EveTurretFiringFX.js +184 -2
  231. package/dist/eve/attachment/turrets/EveTurretFiringFX.js.map +1 -1
  232. package/dist/eve/attachment/turrets/EveTurretSet.js +236 -7
  233. package/dist/eve/attachment/turrets/EveTurretSet.js.map +1 -1
  234. package/dist/eve/attachment/turrets/EveTurretTarget.js +112 -0
  235. package/dist/eve/attachment/turrets/EveTurretTarget.js.map +1 -1
  236. package/dist/eve/camera/EveCamera.js +644 -0
  237. package/dist/eve/camera/EveCamera.js.map +1 -0
  238. package/dist/eve/child/EveChildAudio.js +63 -0
  239. package/dist/eve/child/EveChildAudio.js.map +1 -1
  240. package/dist/eve/child/EveChildBehaviorSystem.js +412 -0
  241. package/dist/eve/child/EveChildBehaviorSystem.js.map +1 -0
  242. package/dist/{generated/eve → eve}/child/EveChildBulletStorm.js +41 -3
  243. package/dist/eve/child/EveChildBulletStorm.js.map +1 -0
  244. package/dist/eve/child/EveChildContainer.js +175 -16
  245. package/dist/eve/child/EveChildContainer.js.map +1 -1
  246. package/dist/eve/child/EveChildEffectPropagator.js +1 -1
  247. package/dist/eve/child/EveChildEffectPropagator.js.map +1 -1
  248. package/dist/eve/child/EveChildFogVolume.js +72 -0
  249. package/dist/eve/child/EveChildFogVolume.js.map +1 -1
  250. package/dist/eve/child/EveChildInheritProperties.js +17 -0
  251. package/dist/eve/child/EveChildInheritProperties.js.map +1 -1
  252. package/dist/eve/child/EveChildInstancedMeshes.js +211 -1
  253. package/dist/eve/child/EveChildInstancedMeshes.js.map +1 -1
  254. package/dist/eve/child/EveChildLightingOverride.js +74 -0
  255. package/dist/eve/child/EveChildLightingOverride.js.map +1 -1
  256. package/dist/{generated/eve → eve}/child/EveChildLink.js +17 -16
  257. package/dist/eve/child/EveChildLink.js.map +1 -0
  258. package/dist/eve/child/EveChildMesh.js +351 -105
  259. package/dist/eve/child/EveChildMesh.js.map +1 -1
  260. package/dist/eve/child/EveChildSpherePin.js +108 -0
  261. package/dist/eve/child/EveChildSpherePin.js.map +1 -0
  262. package/dist/eve/child/EveChildTransform.js +44 -1
  263. package/dist/eve/child/EveChildTransform.js.map +1 -1
  264. package/dist/eve/child/IEveSpaceObjectChild.js +5 -0
  265. package/dist/eve/child/IEveSpaceObjectChild.js.map +1 -1
  266. package/dist/eve/child/behaviors/CollisionAvoidance.js +112 -0
  267. package/dist/eve/child/behaviors/CollisionAvoidance.js.map +1 -0
  268. package/dist/eve/child/behaviors/InclusionVolume.js +131 -0
  269. package/dist/eve/child/behaviors/InclusionVolume.js.map +1 -0
  270. package/dist/eve/child/behaviors/Wander.js +99 -0
  271. package/dist/eve/child/behaviors/Wander.js.map +1 -0
  272. package/dist/{generated/eve → eve}/child/behaviors/enums.js +1 -1
  273. package/dist/eve/child/behaviors/enums.js.map +1 -0
  274. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js +540 -0
  275. package/dist/eve/child/behaviors/lifecycle/ProcessLifetime.js.map +1 -0
  276. package/dist/eve/{ProcessLifetimeData.js → child/behaviors/lifecycle/ProcessLifetimeData.js} +8 -2
  277. package/dist/eve/child/behaviors/lifecycle/ProcessLifetimeData.js.map +1 -0
  278. package/dist/eve/child/behaviors/{SplineTunnel.js → tunnels/SplineTunnel.js} +9 -7
  279. package/dist/eve/child/behaviors/tunnels/SplineTunnel.js.map +1 -0
  280. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js +211 -0
  281. package/dist/eve/child/behaviors/tunnels/SplineTunnelGroup.js.map +1 -0
  282. package/dist/eve/child/behaviors/{SplineTunnelPoint.js → tunnels/SplineTunnelPoint.js} +3 -3
  283. package/dist/eve/child/behaviors/tunnels/SplineTunnelPoint.js.map +1 -0
  284. package/dist/eve/child/lineSetPaths/EveBezierCurve.js +65 -0
  285. package/dist/eve/child/lineSetPaths/EveBezierCurve.js.map +1 -1
  286. package/dist/eve/child/lineSetPaths/EveCircle.js +63 -0
  287. package/dist/eve/child/lineSetPaths/EveCircle.js.map +1 -1
  288. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierAttachToBone.js +24 -16
  289. package/dist/eve/child/modifiers/EveChildModifierAttachToBone.js.map +1 -0
  290. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js +5 -0
  291. package/dist/eve/child/modifiers/EveChildModifierBillboard2D.js.map +1 -1
  292. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierBillboard3D.js +22 -19
  293. package/dist/eve/child/modifiers/EveChildModifierBillboard3D.js.map +1 -0
  294. package/dist/eve/child/modifiers/EveChildModifierBooster.js +6 -0
  295. package/dist/eve/child/modifiers/EveChildModifierBooster.js.map +1 -1
  296. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js +5 -0
  297. package/dist/eve/child/modifiers/EveChildModifierCameraOrientedRotationConstrained.js.map +1 -1
  298. package/dist/eve/child/modifiers/EveChildModifierHalo.js +5 -0
  299. package/dist/eve/child/modifiers/EveChildModifierHalo.js.map +1 -1
  300. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js +6 -0
  301. package/dist/eve/child/modifiers/EveChildModifierHaloInverted.js.map +1 -1
  302. package/dist/eve/child/modifiers/EveChildModifierSRT.js +5 -0
  303. package/dist/eve/child/modifiers/EveChildModifierSRT.js.map +1 -1
  304. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierStretch.js +31 -17
  305. package/dist/eve/child/modifiers/EveChildModifierStretch.js.map +1 -0
  306. package/dist/{generated/eve → eve}/child/modifiers/EveChildModifierTranslateWithCamera.js +16 -14
  307. package/dist/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +1 -0
  308. package/dist/{generated/eve → eve}/child/procedural/EveChildProceduralContainer.js +11 -4
  309. package/dist/eve/child/procedural/EveChildProceduralContainer.js.map +1 -0
  310. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMap.js +12 -12
  311. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +1 -0
  312. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js +6 -6
  313. package/dist/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +1 -0
  314. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCycling.js +12 -12
  315. package/dist/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +1 -0
  316. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodCyclingParameter.js +8 -8
  317. package/dist/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +1 -0
  318. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandom.js +17 -17
  319. package/dist/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +1 -0
  320. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodRandomParameter.js +7 -7
  321. package/dist/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +1 -0
  322. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholdParameter.js +7 -7
  323. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +1 -0
  324. package/dist/{generated/eve → eve}/child/procedural/selection/EveProceduralMethodThresholds.js +17 -17
  325. package/dist/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +1 -0
  326. package/dist/{generated/eve → eve}/distribution/EveBaseDistributionMethod.js +132 -3
  327. package/dist/eve/distribution/EveBaseDistributionMethod.js.map +1 -0
  328. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js +12 -1
  329. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +1 -0
  330. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js +9 -1
  331. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +1 -0
  332. package/dist/{generated/eve → eve}/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js +12 -1
  333. package/dist/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +1 -0
  334. package/dist/eve/distribution/attributeModifiers/enums.js.map +1 -0
  335. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorLocators.js +16 -3
  336. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +1 -0
  337. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js +31 -3
  338. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +1 -0
  339. package/dist/{generated/eve → eve}/distribution/placement/EveDistributionPlacementGeneratorVolume.js +34 -3
  340. package/dist/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +1 -0
  341. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js +14 -2
  342. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +1 -0
  343. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js +13 -2
  344. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +1 -0
  345. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js +13 -2
  346. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +1 -0
  347. package/dist/{generated/eve → eve}/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js +13 -2
  348. package/dist/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +1 -0
  349. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerBurst.js +19 -1
  350. package/dist/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +1 -0
  351. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerControllerTrigger.js +25 -1
  352. package/dist/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +1 -0
  353. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerInterval.js +17 -1
  354. package/dist/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +1 -0
  355. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerPlane.js +20 -1
  356. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +1 -0
  357. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSnake.js +20 -1
  358. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +1 -0
  359. package/dist/{generated/eve → eve}/distribution/spawners/EveDistributionSpawnerTriggerSphere.js +20 -1
  360. package/dist/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +1 -0
  361. package/dist/{generated/eve/effect → eve/effect/lensflare}/EveLensflare.js +44 -2
  362. package/dist/eve/effect/lensflare/EveLensflare.js.map +1 -0
  363. package/dist/eve/effect/multiEffect/EveMultiEffect.js +302 -0
  364. package/dist/eve/effect/multiEffect/EveMultiEffect.js.map +1 -0
  365. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js +92 -0
  366. package/dist/eve/effect/multiEffect/EveMultiEffectParameter.js.map +1 -0
  367. package/dist/eve/index.js +117 -47
  368. package/dist/eve/index.js.map +1 -1
  369. package/dist/eve/lights/CjsLightData.js +7 -0
  370. package/dist/eve/lights/CjsLightData.js.map +1 -1
  371. package/dist/eve/lights/Tr2Light.js +41 -0
  372. package/dist/eve/lights/Tr2Light.js.map +1 -1
  373. package/dist/eve/lights/Tr2PointLight.js +5 -0
  374. package/dist/eve/lights/Tr2PointLight.js.map +1 -1
  375. package/dist/eve/lights/Tr2SpotLight.js +5 -0
  376. package/dist/eve/lights/Tr2SpotLight.js.map +1 -1
  377. package/dist/eve/lights/Tr2TexturedPointLight.js +10 -0
  378. package/dist/eve/lights/Tr2TexturedPointLight.js.map +1 -1
  379. package/dist/eve/lights/lightConversion.js +29 -27
  380. package/dist/eve/lights/lightConversion.js.map +1 -1
  381. package/dist/eve/{EveLocator2.js → locator/EveLocator2.js} +20 -1
  382. package/dist/eve/locator/EveLocator2.js.map +1 -0
  383. package/dist/eve/{EveLocatorSets.js → locator/EveLocatorSets.js} +43 -1
  384. package/dist/eve/locator/EveLocatorSets.js.map +1 -0
  385. package/dist/eve/{Locator.js → locator/Locator.js} +6 -1
  386. package/dist/eve/locator/Locator.js.map +1 -0
  387. package/dist/eve/{LocatorData.js → locator/LocatorData.js} +3 -1
  388. package/dist/eve/locator/LocatorData.js.map +1 -0
  389. package/dist/eve/overlays/EveMeshOverlayEffect.js +208 -0
  390. package/dist/eve/overlays/EveMeshOverlayEffect.js.map +1 -0
  391. package/dist/eve/{EveParticleDirectForce.js → particles/force/EveParticleDirectForce.js} +5 -5
  392. package/dist/eve/particles/force/EveParticleDirectForce.js.map +1 -0
  393. package/dist/eve/{EveParticleDragForce.js → particles/force/EveParticleDragForce.js} +5 -5
  394. package/dist/eve/particles/force/EveParticleDragForce.js.map +1 -0
  395. package/dist/eve/{EveParticleSpring.js → particles/force/EveParticleSpring.js} +6 -6
  396. package/dist/eve/particles/force/EveParticleSpring.js.map +1 -0
  397. package/dist/{generated/eve/scene → eve/particles/static}/EveSceneStaticParticles.js +70 -36
  398. package/dist/eve/particles/static/EveSceneStaticParticles.js.map +1 -0
  399. package/dist/eve/perObjectData/childPerObjectRecords.js +90 -0
  400. package/dist/eve/perObjectData/childPerObjectRecords.js.map +1 -0
  401. package/dist/eve/renderable/stretch/CjsStretchRuntime.js +76 -0
  402. package/dist/eve/renderable/stretch/CjsStretchRuntime.js.map +1 -1
  403. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js +85 -1
  404. package/dist/eve/renderable/stretch/EveFiringEffectElementContainer.js.map +1 -1
  405. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js +91 -0
  406. package/dist/eve/renderable/stretch/EveLocalPositionCurve.js.map +1 -1
  407. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js +36 -0
  408. package/dist/eve/renderable/stretch/EveRemotePositionCurve.js.map +1 -1
  409. package/dist/eve/renderable/stretch/EveStretch.js +158 -9
  410. package/dist/eve/renderable/stretch/EveStretch.js.map +1 -1
  411. package/dist/eve/renderable/stretch/EveStretch2.js +121 -12
  412. package/dist/eve/renderable/stretch/EveStretch2.js.map +1 -1
  413. package/dist/eve/renderable/stretch/EveStretch3.js +261 -8
  414. package/dist/eve/renderable/stretch/EveStretch3.js.map +1 -1
  415. package/dist/eve/scene/EveSpaceScene.js +56 -6
  416. package/dist/eve/scene/EveSpaceScene.js.map +1 -1
  417. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentCollection.js +24 -1
  418. package/dist/eve/scene/components/EveComponentCollection.js.map +1 -0
  419. package/dist/{generated/eve/scene → eve/scene/components}/EveComponentRegistry.js +74 -2
  420. package/dist/eve/scene/components/EveComponentRegistry.js.map +1 -0
  421. package/dist/eve/scene/picking/EvePickingContext.js +61 -0
  422. package/dist/eve/scene/picking/EvePickingContext.js.map +1 -0
  423. package/dist/eve/scene/shadows/TriShadowFrustum.js +70 -0
  424. package/dist/eve/scene/shadows/TriShadowFrustum.js.map +1 -0
  425. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js +129 -0
  426. package/dist/eve/scene/shadows/TriShadowOrthoFrustum.js.map +1 -0
  427. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js +19 -19
  428. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +1 -0
  429. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js +19 -19
  430. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +1 -0
  431. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js +12 -12
  432. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +1 -0
  433. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js +12 -12
  434. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +1 -0
  435. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js +30 -30
  436. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +1 -0
  437. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js +9 -9
  438. package/dist/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +1 -0
  439. package/dist/{generated/eve → eve}/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js +23 -23
  440. package/dist/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +1 -0
  441. package/dist/eve/smartLights/attributeModifiers/enums.js.map +1 -0
  442. package/dist/{generated/eve → eve}/socket/EveSocketParameterBindingBase.js +26 -1
  443. package/dist/eve/socket/EveSocketParameterBindingBase.js.map +1 -0
  444. package/dist/{generated/eve → eve}/socket/EveSocketParameterBool.js +17 -1
  445. package/dist/eve/socket/EveSocketParameterBool.js.map +1 -0
  446. package/dist/{generated/eve → eve}/socket/EveSocketParameterColor.js +21 -5
  447. package/dist/eve/socket/EveSocketParameterColor.js.map +1 -0
  448. package/dist/eve/socket/EveSocketParameterFilePath.js +5 -5
  449. package/dist/eve/socket/EveSocketParameterFilePath.js.map +1 -1
  450. package/dist/{generated/eve → eve}/socket/EveSocketParameterFloat.js +17 -1
  451. package/dist/eve/socket/EveSocketParameterFloat.js.map +1 -0
  452. package/dist/{generated/eve → eve}/socket/EveSocketParameterInt.js +17 -1
  453. package/dist/eve/socket/EveSocketParameterInt.js.map +1 -0
  454. package/dist/{generated/eve → eve}/socket/EveSocketParameterString.js +42 -2
  455. package/dist/eve/socket/EveSocketParameterString.js.map +1 -0
  456. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector2.js +17 -1
  457. package/dist/eve/socket/EveSocketParameterVector2.js.map +1 -0
  458. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector3.js +17 -1
  459. package/dist/eve/socket/EveSocketParameterVector3.js.map +1 -0
  460. package/dist/{generated/eve → eve}/socket/EveSocketParameterVector4.js +17 -1
  461. package/dist/eve/socket/EveSocketParameterVector4.js.map +1 -0
  462. package/dist/eve/spaceObject/EveEffectRoot2.js +58 -31
  463. package/dist/eve/spaceObject/EveEffectRoot2.js.map +1 -1
  464. package/dist/eve/spaceObject/EveMissile.js +49 -1
  465. package/dist/eve/spaceObject/EveMissile.js.map +1 -1
  466. package/dist/eve/spaceObject/EveMissileWarhead.js +100 -1
  467. package/dist/eve/spaceObject/EveMissileWarhead.js.map +1 -1
  468. package/dist/eve/spaceObject/EveMobile.js +104 -0
  469. package/dist/eve/spaceObject/EveMobile.js.map +1 -1
  470. package/dist/eve/spaceObject/EveRootTransform.js +17 -0
  471. package/dist/eve/spaceObject/EveRootTransform.js.map +1 -1
  472. package/dist/{generated/eve → eve}/spaceObject/EveShip2.js +32 -12
  473. package/dist/eve/spaceObject/EveShip2.js.map +1 -0
  474. package/dist/eve/spaceObject/EveSpaceObject2.js +726 -199
  475. package/dist/eve/spaceObject/EveSpaceObject2.js.map +1 -1
  476. package/dist/eve/spaceObject/EveTransform.js +100 -4
  477. package/dist/eve/spaceObject/EveTransform.js.map +1 -1
  478. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js +70 -0
  479. package/dist/eve/spaceObject/IEveSpaceObject2ParentData.js.map +1 -0
  480. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js +19 -16
  481. package/dist/eve/spaceObject/createEveSpaceObjectMainPerObjectValues.js.map +1 -1
  482. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js +92 -0
  483. package/dist/eve/spaceObject/fxAttributes/EveCameraFxAttributes.js.map +1 -0
  484. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js +158 -0
  485. package/dist/eve/spaceObject/fxAttributes/EveSpaceObjectFxAttributes.js.map +1 -0
  486. package/dist/{generated/eve/spaceObject → eve/spaceObject/planet}/EvePlanet.js +2 -2
  487. package/dist/eve/spaceObject/planet/EvePlanet.js.map +1 -0
  488. package/dist/{generated/eve → eve}/spaceObject/swarm/EveSwarmRenderable.js +102 -64
  489. package/dist/eve/spaceObject/swarm/EveSwarmRenderable.js.map +1 -0
  490. package/dist/eve/ui/EveEllipseDefinition.js +15 -0
  491. package/dist/eve/ui/EveEllipseDefinition.js.map +1 -1
  492. package/dist/eve/ui/EveEllipseSet.js +42 -0
  493. package/dist/eve/ui/EveEllipseSet.js.map +1 -1
  494. package/dist/{generated/eve → eve}/ui/EveSpherePin.js +76 -11
  495. package/dist/eve/ui/EveSpherePin.js.map +1 -0
  496. package/dist/eve/ui/EveSprite2dBracket.js +5 -0
  497. package/dist/eve/ui/EveSprite2dBracket.js.map +1 -1
  498. package/dist/eve/ui/EveUiObject.js +11 -0
  499. package/dist/eve/ui/EveUiObject.js.map +1 -1
  500. package/dist/{generated/eve/ui → eve/ui/lines}/EveLineSet.js +67 -6
  501. package/dist/eve/ui/lines/EveLineSet.js.map +1 -0
  502. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js +78 -0
  503. package/dist/eve/ui/tacticalOverlay/EveTacticalOverlayTrackObject.js.map +1 -0
  504. package/dist/{generated/eve/ui → eve/ui/tacticalOverlay}/EveTacticalTrails.js +22 -2
  505. package/dist/eve/ui/tacticalOverlay/EveTacticalTrails.js.map +1 -0
  506. package/dist/eve/virtualCamera/EveVirtualCamera.js +152 -0
  507. package/dist/eve/virtualCamera/EveVirtualCamera.js.map +1 -1
  508. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js +65 -0
  509. package/dist/eve/virtualCamera/EveVirtualCameraSystem.js.map +1 -1
  510. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js +17 -0
  511. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatAdd.js.map +1 -1
  512. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js +19 -0
  513. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatBase.js.map +1 -1
  514. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js +17 -0
  515. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatDamping.js.map +1 -1
  516. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js +29 -0
  517. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatNoise.js.map +1 -1
  518. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js +15 -0
  519. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourFloatSet.js.map +1 -1
  520. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js +38 -0
  521. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Base.js.map +1 -1
  522. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js +17 -0
  523. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Damping.js.map +1 -1
  524. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js +18 -0
  525. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Inertia.js.map +1 -1
  526. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js +20 -0
  527. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveBetween.js.map +1 -1
  528. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js +20 -0
  529. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveForward.js.map +1 -1
  530. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js +11 -0
  531. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveRight.js.map +1 -1
  532. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js +14 -0
  533. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3MoveUp.js.map +1 -1
  534. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js +16 -0
  535. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Offset.js.map +1 -1
  536. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js +20 -0
  537. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Orbit.js.map +1 -1
  538. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js +36 -0
  539. package/dist/eve/virtualCamera/behaviour/EveVirtualCameraBehaviourVector3Shake.js.map +1 -1
  540. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js +36 -0
  541. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionBase.js.map +1 -1
  542. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js +11 -0
  543. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionCut.js.map +1 -1
  544. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js +37 -0
  545. package/dist/eve/virtualCamera/transition/EveVirtualCameraTransitionLerp.js.map +1 -1
  546. package/dist/eve/volume/EveBoxVolume.js +59 -0
  547. package/dist/eve/volume/EveBoxVolume.js.map +1 -1
  548. package/dist/eve/volume/EveEllipsoidVolume.js +54 -0
  549. package/dist/eve/volume/EveEllipsoidVolume.js.map +1 -1
  550. package/dist/eve/volume/EveSphereVolume.js +34 -0
  551. package/dist/eve/volume/EveSphereVolume.js.map +1 -1
  552. package/dist/generated/eve/child/EveChildCloud2.js +138 -138
  553. package/dist/generated/eve/child/EveChildCloud2.js.map +1 -1
  554. package/dist/generated/eve/child/EveChildParticleSystem.js +10 -4
  555. package/dist/generated/eve/child/EveChildParticleSystem.js.map +1 -1
  556. package/dist/generated/eve/child/EveChildSocket.js +1 -1
  557. package/dist/generated/eve/child/EveChildSocket.js.map +1 -1
  558. package/dist/generated/eve/child/behaviors/BackAndForth.js +14 -17
  559. package/dist/generated/eve/child/behaviors/BackAndForth.js.map +1 -1
  560. package/dist/generated/eve/child/behaviors/BehaviorGroup.js +2 -2
  561. package/dist/generated/eve/child/behaviors/BehaviorGroup.js.map +1 -1
  562. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js +26 -29
  563. package/dist/generated/eve/child/behaviors/EveKDdroneManagementTree.js.map +1 -1
  564. package/dist/generated/eve/child/behaviors/FollowASpline.js +13 -17
  565. package/dist/generated/eve/child/behaviors/FollowASpline.js.map +1 -1
  566. package/dist/generated/eve/child/behaviors/PlayFX.js +14 -14
  567. package/dist/generated/eve/child/behaviors/PlayFX.js.map +1 -1
  568. package/dist/generated/eve/child/behaviors/SeekTarget.js +1 -1
  569. package/dist/generated/eve/child/behaviors/SeekTarget.js.map +1 -1
  570. package/dist/generated/eve/child/behaviors/index.js +0 -6
  571. package/dist/generated/eve/child/behaviors/index.js.map +1 -1
  572. package/dist/generated/eve/child/index.js +0 -23
  573. package/dist/generated/eve/child/index.js.map +1 -1
  574. package/dist/generated/eve/effect/index.js +0 -3
  575. package/dist/generated/eve/effect/index.js.map +1 -1
  576. package/dist/generated/eve/index.js +0 -88
  577. package/dist/generated/eve/index.js.map +1 -1
  578. package/dist/generated/eve/scene/index.js +0 -6
  579. package/dist/generated/eve/scene/index.js.map +1 -1
  580. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js +20 -20
  581. package/dist/generated/eve/smartLights/EveSmartLightColorShareGroup.js.map +1 -1
  582. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js +1 -1
  583. package/dist/generated/eve/smartLights/EveSmartLightPointLight.js.map +1 -1
  584. package/dist/generated/eve/smartLights/index.js +0 -8
  585. package/dist/generated/eve/smartLights/index.js.map +1 -1
  586. package/dist/generated/eve/spaceObject/index.js +0 -4
  587. package/dist/generated/eve/spaceObject/index.js.map +1 -1
  588. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js +11 -11
  589. package/dist/generated/eve/spaceObject/swarm/EveSwarm.js.map +1 -1
  590. package/dist/generated/eve/spaceObject/swarm/index.js +0 -1
  591. package/dist/generated/eve/spaceObject/swarm/index.js.map +1 -1
  592. package/dist/generated/eve/ui/index.js +0 -4
  593. package/dist/generated/eve/ui/index.js.map +1 -1
  594. package/dist/generated/index.js +0 -93
  595. package/dist/generated/index.js.map +1 -1
  596. package/dist/generated/trinityCore/index.js +0 -5
  597. package/dist/generated/trinityCore/index.js.map +1 -1
  598. package/dist/index.js +130 -155
  599. package/dist/index.js.map +1 -1
  600. package/dist/particle/Tr2GpuSharedEmitter.js +39 -0
  601. package/dist/particle/Tr2GpuSharedEmitter.js.map +1 -1
  602. package/dist/particle/Tr2GpuUniqueEmitter.js +5 -0
  603. package/dist/particle/Tr2GpuUniqueEmitter.js.map +1 -1
  604. package/dist/particle/Tr2ParticleAttractorForce.js +10 -0
  605. package/dist/particle/Tr2ParticleAttractorForce.js.map +1 -1
  606. package/dist/particle/Tr2ParticleDirectForce.js +7 -0
  607. package/dist/particle/Tr2ParticleDirectForce.js.map +1 -1
  608. package/dist/particle/Tr2ParticleDragForce.js +7 -0
  609. package/dist/particle/Tr2ParticleDragForce.js.map +1 -1
  610. package/dist/particle/Tr2ParticleElementDeclaration.js +5 -0
  611. package/dist/particle/Tr2ParticleElementDeclaration.js.map +1 -1
  612. package/dist/particle/Tr2ParticleFluidDragForce.js +10 -0
  613. package/dist/particle/Tr2ParticleFluidDragForce.js.map +1 -1
  614. package/dist/particle/Tr2ParticleSpring.js +10 -0
  615. package/dist/particle/Tr2ParticleSpring.js.map +1 -1
  616. package/dist/particle/Tr2ParticleVortexForce.js +10 -0
  617. package/dist/particle/Tr2ParticleVortexForce.js.map +1 -1
  618. package/dist/particle/particleElementBinding.js +12 -0
  619. package/dist/particle/particleElementBinding.js.map +1 -1
  620. package/dist/postProcess/Tr2PPBloomEffect.js +6 -0
  621. package/dist/postProcess/Tr2PPBloomEffect.js.map +1 -1
  622. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js +16 -0
  623. package/dist/postProcess/Tr2PPDepthOfFieldEffect.js.map +1 -1
  624. package/dist/postProcess/Tr2PPGenericEffect.js +7 -0
  625. package/dist/postProcess/Tr2PPGenericEffect.js.map +1 -1
  626. package/dist/postProcess/Tr2PPTaaEffect.js +10 -0
  627. package/dist/postProcess/Tr2PPTaaEffect.js.map +1 -1
  628. package/dist/postProcess/Tr2PPTonemappingEffect.js +5 -0
  629. package/dist/postProcess/Tr2PPTonemappingEffect.js.map +1 -1
  630. package/dist/postProcess/Tr2PostProcess.js +5 -0
  631. package/dist/postProcess/Tr2PostProcess.js.map +1 -1
  632. package/dist/postProcess/Tr2PostProcess2.js +147 -0
  633. package/dist/postProcess/Tr2PostProcess2.js.map +1 -1
  634. package/dist/postProcess/Tr2PostProcessAttributes.js +89 -0
  635. package/dist/postProcess/Tr2PostProcessAttributes.js.map +1 -1
  636. package/dist/renderJob/Tr2RenderJobs.js +34 -0
  637. package/dist/renderJob/Tr2RenderJobs.js.map +1 -1
  638. package/dist/renderJob/TriRenderJob.js +59 -0
  639. package/dist/renderJob/TriRenderJob.js.map +1 -1
  640. package/dist/renderJob/TriRenderStep.js +20 -0
  641. package/dist/renderJob/TriRenderStep.js.map +1 -1
  642. package/dist/renderJob/TriStepClear.js +18 -0
  643. package/dist/renderJob/TriStepClear.js.map +1 -1
  644. package/dist/renderJob/TriStepCopyRenderTarget.js +51 -0
  645. package/dist/renderJob/TriStepCopyRenderTarget.js.map +1 -1
  646. package/dist/renderJob/TriStepEnableWireframeMode.js +9 -0
  647. package/dist/renderJob/TriStepEnableWireframeMode.js.map +1 -1
  648. package/dist/renderJob/TriStepGenerateMipMaps.js +9 -0
  649. package/dist/renderJob/TriStepGenerateMipMaps.js.map +1 -1
  650. package/dist/renderJob/TriStepPopDepthStencil.js +6 -0
  651. package/dist/renderJob/TriStepPopDepthStencil.js.map +1 -1
  652. package/dist/renderJob/TriStepPopProjection.js +6 -0
  653. package/dist/renderJob/TriStepPopProjection.js.map +1 -1
  654. package/dist/renderJob/TriStepPopRenderTarget.js +12 -0
  655. package/dist/renderJob/TriStepPopRenderTarget.js.map +1 -1
  656. package/dist/renderJob/TriStepPopViewTransform.js +6 -0
  657. package/dist/renderJob/TriStepPopViewTransform.js.map +1 -1
  658. package/dist/renderJob/TriStepPopViewport.js +6 -0
  659. package/dist/renderJob/TriStepPopViewport.js.map +1 -1
  660. package/dist/renderJob/TriStepPresentSwapChain.js +12 -0
  661. package/dist/renderJob/TriStepPresentSwapChain.js.map +1 -1
  662. package/dist/renderJob/TriStepPushDepthStencil.js +17 -0
  663. package/dist/renderJob/TriStepPushDepthStencil.js.map +1 -1
  664. package/dist/renderJob/TriStepPushProjection.js +6 -0
  665. package/dist/renderJob/TriStepPushProjection.js.map +1 -1
  666. package/dist/renderJob/TriStepPushRenderTarget.js +9 -0
  667. package/dist/renderJob/TriStepPushRenderTarget.js.map +1 -1
  668. package/dist/renderJob/TriStepPushViewTransform.js +6 -0
  669. package/dist/renderJob/TriStepPushViewTransform.js.map +1 -1
  670. package/dist/renderJob/TriStepPushViewport.js +6 -0
  671. package/dist/renderJob/TriStepPushViewport.js.map +1 -1
  672. package/dist/renderJob/TriStepRemoteSync.js +17 -0
  673. package/dist/renderJob/TriStepRemoteSync.js.map +1 -1
  674. package/dist/renderJob/TriStepResolve.js +13 -0
  675. package/dist/renderJob/TriStepResolve.js.map +1 -1
  676. package/dist/renderJob/TriStepRunJob.js +12 -0
  677. package/dist/renderJob/TriStepRunJob.js.map +1 -1
  678. package/dist/renderJob/TriStepSetDepthStencil.js +12 -0
  679. package/dist/renderJob/TriStepSetDepthStencil.js.map +1 -1
  680. package/dist/renderJob/TriStepSetProjection.js +14 -0
  681. package/dist/renderJob/TriStepSetProjection.js.map +1 -1
  682. package/dist/renderJob/TriStepSetRenderState.js +20 -0
  683. package/dist/renderJob/TriStepSetRenderState.js.map +1 -1
  684. package/dist/renderJob/TriStepSetRenderTarget.js +12 -0
  685. package/dist/renderJob/TriStepSetRenderTarget.js.map +1 -1
  686. package/dist/renderJob/TriStepSetStdRndStates.js +18 -0
  687. package/dist/renderJob/TriStepSetStdRndStates.js.map +1 -1
  688. package/dist/renderJob/TriStepSetView.js +29 -2
  689. package/dist/renderJob/TriStepSetView.js.map +1 -1
  690. package/dist/renderJob/TriStepSetViewport.js +17 -0
  691. package/dist/renderJob/TriStepSetViewport.js.map +1 -1
  692. package/dist/renderJob/TriStepSetVisualizationMode.js +19 -0
  693. package/dist/renderJob/TriStepSetVisualizationMode.js.map +1 -1
  694. package/dist/shader/Tr2Effect.js +217 -2
  695. package/dist/shader/Tr2Effect.js.map +1 -1
  696. package/dist/shader/Tr2Material.js +41 -0
  697. package/dist/shader/Tr2Material.js.map +1 -1
  698. package/dist/shader/index.js +1 -11
  699. package/dist/shader/index.js.map +1 -1
  700. package/dist/shader/material/Tr2EffectLibraryParameters.js +7 -0
  701. package/dist/shader/material/Tr2EffectLibraryParameters.js.map +1 -1
  702. package/dist/shader/material/Tr2EffectPassParameters.js +23 -0
  703. package/dist/shader/material/Tr2EffectPassParameters.js.map +1 -1
  704. package/dist/shader/material/Tr2MaterialStageInput.js +15 -0
  705. package/dist/shader/material/Tr2MaterialStageInput.js.map +1 -1
  706. package/dist/shader/parameter/CjsParameter.js +94 -0
  707. package/dist/shader/parameter/CjsParameter.js.map +1 -1
  708. package/dist/shader/parameter/CjsVectorParameter.js +20 -0
  709. package/dist/shader/parameter/CjsVectorParameter.js.map +1 -1
  710. package/dist/shader/parameter/Tr2FloatParameter.js +53 -0
  711. package/dist/shader/parameter/Tr2FloatParameter.js.map +1 -1
  712. package/dist/shader/parameter/Tr2GeometryBufferParameter.js +39 -0
  713. package/dist/shader/parameter/Tr2GeometryBufferParameter.js.map +1 -1
  714. package/dist/shader/parameter/Tr2Matrix4Parameter.js +54 -0
  715. package/dist/shader/parameter/Tr2Matrix4Parameter.js.map +1 -1
  716. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js +54 -0
  717. package/dist/shader/parameter/Tr2RuntimeTextureParameter.js.map +1 -1
  718. package/dist/shader/parameter/Tr2TextureAnimationParameter.js +35 -0
  719. package/dist/shader/parameter/Tr2TextureAnimationParameter.js.map +1 -1
  720. package/dist/shader/parameter/Tr2Vector2Parameter.js +86 -0
  721. package/dist/shader/parameter/Tr2Vector2Parameter.js.map +1 -1
  722. package/dist/shader/parameter/Tr2Vector3Parameter.js +95 -0
  723. package/dist/shader/parameter/Tr2Vector3Parameter.js.map +1 -1
  724. package/dist/shader/parameter/Tr2Vector4Parameter.js +105 -0
  725. package/dist/shader/parameter/Tr2Vector4Parameter.js.map +1 -1
  726. package/dist/shader/parameter/TriFloatArrayParameter.js +26 -0
  727. package/dist/shader/parameter/TriFloatArrayParameter.js.map +1 -1
  728. package/dist/shader/parameter/TriTextureParameter.js +84 -0
  729. package/dist/shader/parameter/TriTextureParameter.js.map +1 -1
  730. package/dist/shader/parameter/TriTransformParameter.js +2 -0
  731. package/dist/shader/parameter/TriTransformParameter.js.map +1 -1
  732. package/dist/shader/parameter/TriVariableParameter.js +38 -0
  733. package/dist/shader/parameter/TriVariableParameter.js.map +1 -1
  734. package/dist/shader/parameter/TriVector4.js +2 -0
  735. package/dist/shader/parameter/TriVector4.js.map +1 -1
  736. package/dist/shader/reflection/Tr2ShaderOption.js +6 -1
  737. package/dist/shader/reflection/Tr2ShaderOption.js.map +1 -1
  738. package/dist/shader/support/CjsVariableStore.js +140 -0
  739. package/dist/shader/support/CjsVariableStore.js.map +1 -1
  740. package/dist/shader/support/Tr2ShaderBuffer.js +15 -0
  741. package/dist/shader/support/Tr2ShaderBuffer.js.map +1 -1
  742. package/dist/trinityCore/CjsBatchManager.js +62 -2
  743. package/dist/trinityCore/CjsBatchManager.js.map +1 -1
  744. package/dist/trinityCore/GrannyBoneOffset.js +51 -0
  745. package/dist/trinityCore/GrannyBoneOffset.js.map +1 -1
  746. package/dist/trinityCore/ITriRenderBatchAccumulator.js +65 -3
  747. package/dist/trinityCore/ITriRenderBatchAccumulator.js.map +1 -1
  748. package/dist/trinityCore/Tr2DirectInstanceData.js +19 -0
  749. package/dist/trinityCore/Tr2DirectInstanceData.js.map +1 -1
  750. package/dist/trinityCore/Tr2ExpressionTermInfo.js +21 -0
  751. package/dist/trinityCore/Tr2ExpressionTermInfo.js.map +1 -1
  752. package/dist/trinityCore/Tr2GpuBuffer.js +5 -0
  753. package/dist/trinityCore/Tr2GpuBuffer.js.map +1 -1
  754. package/dist/{generated/trinityCore → trinityCore}/Tr2GrannyAnimation.js +137 -8
  755. package/dist/trinityCore/Tr2GrannyAnimation.js.map +1 -0
  756. package/dist/trinityCore/Tr2InstancedMesh.js +52 -0
  757. package/dist/trinityCore/Tr2InstancedMesh.js.map +1 -1
  758. package/dist/trinityCore/Tr2MaterialParameterStore.js +5 -0
  759. package/dist/trinityCore/Tr2MaterialParameterStore.js.map +1 -1
  760. package/dist/trinityCore/Tr2Mesh.js +37 -0
  761. package/dist/trinityCore/Tr2Mesh.js.map +1 -1
  762. package/dist/trinityCore/Tr2MeshArea.js +78 -0
  763. package/dist/trinityCore/Tr2MeshArea.js.map +1 -1
  764. package/dist/trinityCore/Tr2MeshBase.js +98 -2
  765. package/dist/trinityCore/Tr2MeshBase.js.map +1 -1
  766. package/dist/trinityCore/Tr2PerObjectData.js +10 -0
  767. package/dist/trinityCore/Tr2PerObjectData.js.map +1 -1
  768. package/dist/trinityCore/Tr2PickType.js +33 -0
  769. package/dist/trinityCore/Tr2PickType.js.map +1 -0
  770. package/dist/trinityCore/Tr2RenderBatch.js +137 -0
  771. package/dist/trinityCore/Tr2RenderBatch.js.map +1 -1
  772. package/dist/trinityCore/Tr2RenderContext.js +271 -0
  773. package/dist/trinityCore/Tr2RenderContext.js.map +1 -1
  774. package/dist/trinityCore/Tr2RuntimeInstanceData.js +179 -0
  775. package/dist/trinityCore/Tr2RuntimeInstanceData.js.map +1 -1
  776. package/dist/trinityCore/Tr2ShLightingManager.js +397 -0
  777. package/dist/trinityCore/Tr2ShLightingManager.js.map +1 -0
  778. package/dist/trinityCore/Tr2VariableStore.js +26 -0
  779. package/dist/trinityCore/Tr2VariableStore.js.map +1 -1
  780. package/dist/trinityCore/Tr2VisibilityResults.js +5 -0
  781. package/dist/trinityCore/Tr2VisibilityResults.js.map +1 -1
  782. package/dist/trinityCore/TriDevice.js +5 -0
  783. package/dist/trinityCore/TriDevice.js.map +1 -1
  784. package/dist/trinityCore/TriFrustum.js +21 -14
  785. package/dist/trinityCore/TriFrustum.js.map +1 -1
  786. package/dist/trinityCore/TriObserverLocal.js +43 -0
  787. package/dist/trinityCore/TriObserverLocal.js.map +1 -1
  788. package/dist/trinityCore/TriProjection.js +86 -32
  789. package/dist/trinityCore/TriProjection.js.map +1 -1
  790. package/dist/trinityCore/TriRect.js +12 -0
  791. package/dist/trinityCore/TriRect.js.map +1 -1
  792. package/dist/trinityCore/TriRenderBatchAccumulator.js +46 -0
  793. package/dist/trinityCore/TriRenderBatchAccumulator.js.map +1 -1
  794. package/dist/trinityCore/TriRenderBatchMap.js +39 -2
  795. package/dist/trinityCore/TriRenderBatchMap.js.map +1 -1
  796. package/dist/trinityCore/TriSettings.js +38 -0
  797. package/dist/trinityCore/TriSettings.js.map +1 -1
  798. package/dist/trinityCore/TriVariable.js +30 -0
  799. package/dist/trinityCore/TriVariable.js.map +1 -1
  800. package/dist/trinityCore/TriView.js +16 -1
  801. package/dist/trinityCore/TriView.js.map +1 -1
  802. package/dist/trinityCore/TriViewport.js +12 -0
  803. package/dist/trinityCore/TriViewport.js.map +1 -1
  804. package/dist/trinityCore/{Tr2BindingVector3.js → binding/Tr2BindingVector3.js} +1 -1
  805. package/dist/trinityCore/binding/Tr2BindingVector3.js.map +1 -0
  806. package/dist/trinityCore/binding/Tr2DynamicBinding.js +266 -0
  807. package/dist/trinityCore/binding/Tr2DynamicBinding.js.map +1 -0
  808. package/dist/trinityCore/binding/Tr2ExternalParameter.js +392 -0
  809. package/dist/trinityCore/binding/Tr2ExternalParameter.js.map +1 -0
  810. package/dist/trinityCore/{Tr2PyValueBinding.js → binding/Tr2PyValueBinding.js} +30 -6
  811. package/dist/trinityCore/binding/Tr2PyValueBinding.js.map +1 -0
  812. package/dist/trinityCore/binding/TriValueBinding.js +648 -0
  813. package/dist/trinityCore/binding/TriValueBinding.js.map +1 -0
  814. package/dist/trinityCore/index.js +11 -4
  815. package/dist/trinityCore/index.js.map +1 -1
  816. package/dist/trinityCore/pickRay.js +84 -0
  817. package/dist/trinityCore/pickRay.js.map +1 -0
  818. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js +931 -0
  819. package/dist/trinityCore/rawData/CjsPerObjectLayouts.js.map +1 -0
  820. package/dist/trinityCore/rawData/RawData.js +294 -38
  821. package/dist/trinityCore/rawData/RawData.js.map +1 -1
  822. package/dist/trinityCore/rawData/TriPoolAllocator.js +357 -0
  823. package/dist/trinityCore/rawData/TriPoolAllocator.js.map +1 -0
  824. package/dist/utilities/Range.js +53 -0
  825. package/dist/utilities/Range.js.map +1 -1
  826. package/docs/README.md +88 -0
  827. package/docs/architecture.md +162 -0
  828. package/docs/concepts/eve-runtime-behavior.md +86 -0
  829. package/docs/concepts/generated-class-lifecycle.md +116 -0
  830. package/docs/reference/api.md +76 -0
  831. package/docs/reference/classes/eve-runtime.md +106 -0
  832. package/docs/reference/classes/trinity-core.md +26 -0
  833. package/docs/reference/implementation-status.md +104 -0
  834. package/docs/reference/main-semantic-extraction.md +104 -0
  835. package/package.json +33 -24
  836. package/dist/eve/DecalVSPerObjectData.js +0 -34
  837. package/dist/eve/DecalVSPerObjectData.js.map +0 -1
  838. package/dist/eve/EveBannerItem.js +0 -43
  839. package/dist/eve/EveBannerItem.js.map +0 -1
  840. package/dist/eve/EveBannerLight.js.map +0 -1
  841. package/dist/eve/EveBannerSet.js +0 -190
  842. package/dist/eve/EveBannerSet.js.map +0 -1
  843. package/dist/eve/EveBasicPerObjectData.js +0 -31
  844. package/dist/eve/EveBasicPerObjectData.js.map +0 -1
  845. package/dist/eve/EveBoosterSet2.js.map +0 -1
  846. package/dist/eve/EveBoosterSet2Renderable.js.map +0 -1
  847. package/dist/eve/EveChildSpherePinPerObjectData.js +0 -37
  848. package/dist/eve/EveChildSpherePinPerObjectData.js.map +0 -1
  849. package/dist/eve/EveHazeSet.js.map +0 -1
  850. package/dist/eve/EveHazeSetLight.js.map +0 -1
  851. package/dist/eve/EveLocator2.js.map +0 -1
  852. package/dist/eve/EveLocatorSets.js.map +0 -1
  853. package/dist/eve/EveParticleDirectForce.js.map +0 -1
  854. package/dist/eve/EveParticleDragForce.js.map +0 -1
  855. package/dist/eve/EveParticleSpring.js.map +0 -1
  856. package/dist/eve/EvePerObjectPSData.js +0 -29
  857. package/dist/eve/EvePerObjectPSData.js.map +0 -1
  858. package/dist/eve/EvePerObjectVSData.js +0 -29
  859. package/dist/eve/EvePerObjectVSData.js.map +0 -1
  860. package/dist/eve/EvePlaneLight.js.map +0 -1
  861. package/dist/eve/EvePlaneSet.js.map +0 -1
  862. package/dist/eve/EvePlaneSetItem.js +0 -45
  863. package/dist/eve/EvePlaneSetItem.js.map +0 -1
  864. package/dist/eve/EveSpaceObjectAttachmentUtils.js.map +0 -1
  865. package/dist/eve/EveSpaceObjectDecal.js +0 -150
  866. package/dist/eve/EveSpaceObjectDecal.js.map +0 -1
  867. package/dist/eve/EveSpaceObjectPSData.js +0 -73
  868. package/dist/eve/EveSpaceObjectPSData.js.map +0 -1
  869. package/dist/eve/EveSpaceObjectVSData.js +0 -79
  870. package/dist/eve/EveSpaceObjectVSData.js.map +0 -1
  871. package/dist/eve/EveSpacePerObjectData.js +0 -97
  872. package/dist/eve/EveSpacePerObjectData.js.map +0 -1
  873. package/dist/eve/EveSpherePinPerObjectData.js +0 -37
  874. package/dist/eve/EveSpherePinPerObjectData.js.map +0 -1
  875. package/dist/eve/EveSpotlightLight.js.map +0 -1
  876. package/dist/eve/EveSpotlightSet.js.map +0 -1
  877. package/dist/eve/EveSpriteLight.js.map +0 -1
  878. package/dist/eve/EveSpriteLineSet.js.map +0 -1
  879. package/dist/eve/EveSpriteLineSetItem.js.map +0 -1
  880. package/dist/eve/EveSpriteSet.js.map +0 -1
  881. package/dist/eve/EveTrailsSet.js.map +0 -1
  882. package/dist/eve/Locator.js.map +0 -1
  883. package/dist/eve/LocatorData.js.map +0 -1
  884. package/dist/eve/ProcessLifetimeData.js.map +0 -1
  885. package/dist/eve/attachment/turrets/EveTurretSetPSData.js +0 -47
  886. package/dist/eve/attachment/turrets/EveTurretSetPSData.js.map +0 -1
  887. package/dist/eve/attachment/turrets/EveTurretSetVSData.js +0 -62
  888. package/dist/eve/attachment/turrets/EveTurretSetVSData.js.map +0 -1
  889. package/dist/eve/child/behaviors/SplineTunnel.js.map +0 -1
  890. package/dist/eve/child/behaviors/SplineTunnelPoint.js.map +0 -1
  891. package/dist/eve/perObjectData/DecalPSPerObjectData.js +0 -56
  892. package/dist/eve/perObjectData/DecalPSPerObjectData.js.map +0 -1
  893. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js +0 -31
  894. package/dist/eve/perObjectData/EveMissileWarheadPerObjectData.js.map +0 -1
  895. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js +0 -36
  896. package/dist/eve/perObjectData/EveTurretSetPerObjectData.js.map +0 -1
  897. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js +0 -64
  898. package/dist/eve/perObjectData/MergeMorphsConstantBuffer.js.map +0 -1
  899. package/dist/generated/eve/EveCamera.js +0 -264
  900. package/dist/generated/eve/EveCamera.js.map +0 -1
  901. package/dist/generated/eve/EveEntity.js +0 -81
  902. package/dist/generated/eve/EveEntity.js.map +0 -1
  903. package/dist/generated/eve/attachment/decal/index.js +0 -2
  904. package/dist/generated/eve/attachment/decal/index.js.map +0 -1
  905. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js +0 -52
  906. package/dist/generated/eve/attachment/haze/EveHazeSetItem.js.map +0 -1
  907. package/dist/generated/eve/attachment/haze/index.js +0 -2
  908. package/dist/generated/eve/attachment/haze/index.js.map +0 -1
  909. package/dist/generated/eve/attachment/index.js +0 -5
  910. package/dist/generated/eve/attachment/index.js.map +0 -1
  911. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js +0 -55
  912. package/dist/generated/eve/attachment/spotlights/EveSpotlightSetItem.js.map +0 -1
  913. package/dist/generated/eve/attachment/spotlights/index.js +0 -2
  914. package/dist/generated/eve/attachment/spotlights/index.js.map +0 -1
  915. package/dist/generated/eve/attachment/sprites/EveSpriteSetItem.js.map +0 -1
  916. package/dist/generated/eve/attachment/sprites/index.js +0 -2
  917. package/dist/generated/eve/attachment/sprites/index.js.map +0 -1
  918. package/dist/generated/eve/attachment/turrets/enums.js +0 -32
  919. package/dist/generated/eve/attachment/turrets/enums.js.map +0 -1
  920. package/dist/generated/eve/attachment/turrets/index.js +0 -2
  921. package/dist/generated/eve/attachment/turrets/index.js.map +0 -1
  922. package/dist/generated/eve/child/EveChildBehaviorSystem.js +0 -357
  923. package/dist/generated/eve/child/EveChildBehaviorSystem.js.map +0 -1
  924. package/dist/generated/eve/child/EveChildBulletStorm.js.map +0 -1
  925. package/dist/generated/eve/child/EveChildLink.js.map +0 -1
  926. package/dist/generated/eve/child/EveChildSpherePin.js +0 -54
  927. package/dist/generated/eve/child/EveChildSpherePin.js.map +0 -1
  928. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js +0 -85
  929. package/dist/generated/eve/child/behaviors/CollisionAvoidance.js.map +0 -1
  930. package/dist/generated/eve/child/behaviors/InclusionVolume.js +0 -104
  931. package/dist/generated/eve/child/behaviors/InclusionVolume.js.map +0 -1
  932. package/dist/generated/eve/child/behaviors/ProcessLifetime.js +0 -458
  933. package/dist/generated/eve/child/behaviors/ProcessLifetime.js.map +0 -1
  934. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js +0 -161
  935. package/dist/generated/eve/child/behaviors/SplineTunnelGroup.js.map +0 -1
  936. package/dist/generated/eve/child/behaviors/Wander.js +0 -92
  937. package/dist/generated/eve/child/behaviors/Wander.js.map +0 -1
  938. package/dist/generated/eve/child/behaviors/enums.js.map +0 -1
  939. package/dist/generated/eve/child/modifiers/EveChildModifierAttachToBone.js.map +0 -1
  940. package/dist/generated/eve/child/modifiers/EveChildModifierBillboard3D.js.map +0 -1
  941. package/dist/generated/eve/child/modifiers/EveChildModifierStretch.js.map +0 -1
  942. package/dist/generated/eve/child/modifiers/EveChildModifierTranslateWithCamera.js.map +0 -1
  943. package/dist/generated/eve/child/modifiers/index.js +0 -5
  944. package/dist/generated/eve/child/modifiers/index.js.map +0 -1
  945. package/dist/generated/eve/child/procedural/EveChildProceduralContainer.js.map +0 -1
  946. package/dist/generated/eve/child/procedural/index.js +0 -10
  947. package/dist/generated/eve/child/procedural/index.js.map +0 -1
  948. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMap.js.map +0 -1
  949. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodAttributeMapParameter.js.map +0 -1
  950. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCycling.js.map +0 -1
  951. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodCyclingParameter.js.map +0 -1
  952. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandom.js.map +0 -1
  953. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodRandomParameter.js.map +0 -1
  954. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholdParameter.js.map +0 -1
  955. package/dist/generated/eve/child/procedural/selection/EveProceduralMethodThresholds.js.map +0 -1
  956. package/dist/generated/eve/child/procedural/selection/index.js +0 -9
  957. package/dist/generated/eve/child/procedural/selection/index.js.map +0 -1
  958. package/dist/generated/eve/distribution/EveBaseDistributionMethod.js.map +0 -1
  959. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierProcessLifetime.js.map +0 -1
  960. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierScaleBySpaceObjectParent.js.map +0 -1
  961. package/dist/generated/eve/distribution/attributeModifiers/EveDistributionModifierTransformOffset.js.map +0 -1
  962. package/dist/generated/eve/distribution/attributeModifiers/enums.js.map +0 -1
  963. package/dist/generated/eve/distribution/attributeModifiers/index.js +0 -5
  964. package/dist/generated/eve/distribution/attributeModifiers/index.js.map +0 -1
  965. package/dist/generated/eve/distribution/index.js +0 -19
  966. package/dist/generated/eve/distribution/index.js.map +0 -1
  967. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorLocators.js.map +0 -1
  968. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorParentLocators.js.map +0 -1
  969. package/dist/generated/eve/distribution/placement/EveDistributionPlacementGeneratorVolume.js.map +0 -1
  970. package/dist/generated/eve/distribution/placement/index.js +0 -4
  971. package/dist/generated/eve/distribution/placement/index.js.map +0 -1
  972. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierLifeTimeOffset.js.map +0 -1
  973. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomOffset.js.map +0 -1
  974. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomRotation.js.map +0 -1
  975. package/dist/generated/eve/distribution/spawnModifiers/EveDistributionSpawnModifierRandomScale.js.map +0 -1
  976. package/dist/generated/eve/distribution/spawnModifiers/index.js +0 -5
  977. package/dist/generated/eve/distribution/spawnModifiers/index.js.map +0 -1
  978. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerBurst.js.map +0 -1
  979. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerControllerTrigger.js.map +0 -1
  980. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerInterval.js.map +0 -1
  981. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerPlane.js.map +0 -1
  982. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSnake.js.map +0 -1
  983. package/dist/generated/eve/distribution/spawners/EveDistributionSpawnerTriggerSphere.js.map +0 -1
  984. package/dist/generated/eve/distribution/spawners/index.js +0 -7
  985. package/dist/generated/eve/distribution/spawners/index.js.map +0 -1
  986. package/dist/generated/eve/effect/EveLensflare.js.map +0 -1
  987. package/dist/generated/eve/effect/EveMultiEffect.js +0 -84
  988. package/dist/generated/eve/effect/EveMultiEffect.js.map +0 -1
  989. package/dist/generated/eve/effect/EveMultiEffectParameter.js +0 -45
  990. package/dist/generated/eve/effect/EveMultiEffectParameter.js.map +0 -1
  991. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js +0 -47
  992. package/dist/generated/eve/fxAttributes/EveCameraFxAttributes.js.map +0 -1
  993. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js +0 -63
  994. package/dist/generated/eve/fxAttributes/EveSpaceObjectFxAttributes.js.map +0 -1
  995. package/dist/generated/eve/fxAttributes/index.js +0 -3
  996. package/dist/generated/eve/fxAttributes/index.js.map +0 -1
  997. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js +0 -58
  998. package/dist/generated/eve/overlays/EveMeshOverlayEffect.js.map +0 -1
  999. package/dist/generated/eve/overlays/index.js +0 -2
  1000. package/dist/generated/eve/overlays/index.js.map +0 -1
  1001. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js +0 -66
  1002. package/dist/generated/eve/perObjectData/EveBoosterSetPerObjectData.js.map +0 -1
  1003. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js +0 -39
  1004. package/dist/generated/eve/perObjectData/EveChildBulletStormPerObjectData.js.map +0 -1
  1005. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js +0 -34
  1006. package/dist/generated/eve/perObjectData/EveDecalPerObjectData.js.map +0 -1
  1007. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js +0 -32
  1008. package/dist/generated/eve/perObjectData/EveSceneStaticParticlesPerObjectData.js.map +0 -1
  1009. package/dist/generated/eve/perObjectData/index.js +0 -5
  1010. package/dist/generated/eve/perObjectData/index.js.map +0 -1
  1011. package/dist/generated/eve/scene/EveComponentCollection.js.map +0 -1
  1012. package/dist/generated/eve/scene/EveComponentRegistry.js.map +0 -1
  1013. package/dist/generated/eve/scene/EvePickingContext.js +0 -43
  1014. package/dist/generated/eve/scene/EvePickingContext.js.map +0 -1
  1015. package/dist/generated/eve/scene/EveSceneStaticParticles.js.map +0 -1
  1016. package/dist/generated/eve/scene/TriShadowFrustum.js +0 -83
  1017. package/dist/generated/eve/scene/TriShadowFrustum.js.map +0 -1
  1018. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js +0 -140
  1019. package/dist/generated/eve/scene/TriShadowOrthoFrustum.js.map +0 -1
  1020. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierBucket.js.map +0 -1
  1021. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierCameraDependency.js.map +0 -1
  1022. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierColor.js.map +0 -1
  1023. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierControllerVariableListener.js.map +0 -1
  1024. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierExpressionBucket.js.map +0 -1
  1025. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightAttributeModifierNoise.js.map +0 -1
  1026. package/dist/generated/eve/smartLights/attributeModifiers/EveSmartLightBaseAttributeModifier.js.map +0 -1
  1027. package/dist/generated/eve/smartLights/attributeModifiers/enums.js.map +0 -1
  1028. package/dist/generated/eve/smartLights/attributeModifiers/index.js +0 -9
  1029. package/dist/generated/eve/smartLights/attributeModifiers/index.js.map +0 -1
  1030. package/dist/generated/eve/socket/EveSocketParameterBindingBase.js.map +0 -1
  1031. package/dist/generated/eve/socket/EveSocketParameterBool.js.map +0 -1
  1032. package/dist/generated/eve/socket/EveSocketParameterColor.js.map +0 -1
  1033. package/dist/generated/eve/socket/EveSocketParameterFloat.js.map +0 -1
  1034. package/dist/generated/eve/socket/EveSocketParameterInt.js.map +0 -1
  1035. package/dist/generated/eve/socket/EveSocketParameterString.js.map +0 -1
  1036. package/dist/generated/eve/socket/EveSocketParameterVector2.js.map +0 -1
  1037. package/dist/generated/eve/socket/EveSocketParameterVector3.js.map +0 -1
  1038. package/dist/generated/eve/socket/EveSocketParameterVector4.js.map +0 -1
  1039. package/dist/generated/eve/socket/index.js +0 -10
  1040. package/dist/generated/eve/socket/index.js.map +0 -1
  1041. package/dist/generated/eve/spaceObject/EvePlanet.js.map +0 -1
  1042. package/dist/generated/eve/spaceObject/EveShip2.js.map +0 -1
  1043. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js +0 -46
  1044. package/dist/generated/eve/spaceObject/IEveSpaceObject2.js.map +0 -1
  1045. package/dist/generated/eve/spaceObject/swarm/EveSwarmRenderable.js.map +0 -1
  1046. package/dist/generated/eve/ui/EveLineSet.js.map +0 -1
  1047. package/dist/generated/eve/ui/EveSpherePin.js.map +0 -1
  1048. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js +0 -44
  1049. package/dist/generated/eve/ui/EveTacticalOverlayTrackObject.js.map +0 -1
  1050. package/dist/generated/eve/ui/EveTacticalTrails.js.map +0 -1
  1051. package/dist/generated/trinityCore/Tr2DynamicBinding.js +0 -58
  1052. package/dist/generated/trinityCore/Tr2DynamicBinding.js.map +0 -1
  1053. package/dist/generated/trinityCore/Tr2ExternalParameter.js +0 -164
  1054. package/dist/generated/trinityCore/Tr2ExternalParameter.js.map +0 -1
  1055. package/dist/generated/trinityCore/Tr2GrannyAnimation.js.map +0 -1
  1056. package/dist/generated/trinityCore/Tr2ShLightingManager.js +0 -48
  1057. package/dist/generated/trinityCore/Tr2ShLightingManager.js.map +0 -1
  1058. package/dist/generated/trinityCore/TriValueBinding.js +0 -249
  1059. package/dist/generated/trinityCore/TriValueBinding.js.map +0 -1
  1060. package/dist/shader/Tr2Shader.js +0 -150
  1061. package/dist/shader/Tr2Shader.js.map +0 -1
  1062. package/dist/shader/reflection/Tr2EffectConstant.js +0 -61
  1063. package/dist/shader/reflection/Tr2EffectConstant.js.map +0 -1
  1064. package/dist/shader/reflection/Tr2EffectDefine.js +0 -34
  1065. package/dist/shader/reflection/Tr2EffectDefine.js.map +0 -1
  1066. package/dist/shader/reflection/Tr2EffectDescription.js +0 -34
  1067. package/dist/shader/reflection/Tr2EffectDescription.js.map +0 -1
  1068. package/dist/shader/reflection/Tr2EffectLibrary.js +0 -61
  1069. package/dist/shader/reflection/Tr2EffectLibrary.js.map +0 -1
  1070. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js +0 -54
  1071. package/dist/shader/reflection/Tr2EffectParameterAnnotation.js.map +0 -1
  1072. package/dist/shader/reflection/Tr2EffectResource.js +0 -63
  1073. package/dist/shader/reflection/Tr2EffectResource.js.map +0 -1
  1074. package/dist/shader/reflection/Tr2EffectStageInput.js +0 -58
  1075. package/dist/shader/reflection/Tr2EffectStageInput.js.map +0 -1
  1076. package/dist/shader/reflection/Tr2EffectTechnique.js +0 -40
  1077. package/dist/shader/reflection/Tr2EffectTechnique.js.map +0 -1
  1078. package/dist/shader/reflection/Tr2Pass.js +0 -46
  1079. package/dist/shader/reflection/Tr2Pass.js.map +0 -1
  1080. package/dist/shader/sampler/Tr2SamplerSetup.js +0 -34
  1081. package/dist/shader/sampler/Tr2SamplerSetup.js.map +0 -1
  1082. package/dist/trinityCore/Tr2BindingVector3.js.map +0 -1
  1083. package/dist/trinityCore/Tr2PyValueBinding.js.map +0 -1
  1084. package/dist/trinityCore/rawData/RawDataStore.js +0 -232
  1085. package/dist/trinityCore/rawData/RawDataStore.js.map +0 -1
  1086. /package/dist/{generated/eve → eve}/distribution/attributeModifiers/enums.js +0 -0
  1087. /package/dist/{generated/eve → eve}/smartLights/attributeModifiers/enums.js +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"Tr2PostProcessAttributes.js","sources":["../../../src/postProcess/Tr2PostProcessAttributes.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes.h\n// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes.cpp\n// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes_Blue.cpp\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { vec2 } from \"@carbonenginejs/runtime-utils/vec2\";\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { Tr2PPBloomEffect } from \"./Tr2PPBloomEffect.js\";\nimport { Tr2PPColorCorrectionEffect } from \"./Tr2PPColorCorrectionEffect.js\";\nimport { Tr2PPDepthOfFieldEffect } from \"./Tr2PPDepthOfFieldEffect.js\";\nimport { Tr2PPDesaturateEffect } from \"./Tr2PPDesaturateEffect.js\";\nimport { Tr2PPFadeEffect } from \"./Tr2PPFadeEffect.js\";\nimport { Tr2PPFilmGrainEffect } from \"./Tr2PPFilmGrainEffect.js\";\nimport { Tr2PPLutEffect } from \"./Tr2PPLutEffect.js\";\nimport { Tr2PPSignalLossEffect } from \"./Tr2PPSignalLossEffect.js\";\nimport { Tr2PPVignetteEffect } from \"./Tr2PPVignetteEffect.js\";\n\n\n@type.define({ className: \"Tr2PostProcessAttributes\", family: \"postProcess\" })\nexport class Tr2PostProcessAttributes extends CjsModel\n{\n\n @io.persist\n @type.int32\n @schema.enum(\"Priority\")\n priority = Tr2PostProcessAttributes.MEDIUM_PRIORITY;\n\n @io.read\n @type.float32\n intensity = 0;\n\n @io.persist\n @type.boolean\n signalLossIntensityEnabled = false;\n\n @io.persist\n @type.float32\n signalLossIntensity = 0;\n\n @io.persist\n @type.boolean\n bloomBrightnessEnabled = false;\n\n @io.persist\n @type.float32\n bloomBrightness = 0;\n\n @io.persist\n @type.boolean\n bloomLuminanceThresholdEnabled = false;\n\n @io.persist\n @type.float32\n bloomLuminanceThreshold = 0;\n\n @io.persist\n @type.boolean\n bloomLuminanceScaleEnabled = false;\n\n @io.persist\n @type.float32\n bloomLuminanceScale = 0;\n\n @io.persist\n @type.boolean\n bloomSizeScaleEnabled = false;\n\n @io.persist\n @type.float32\n bloomSizeScale = 4;\n\n @io.persist\n @type.boolean\n bloomDirectionalWeightEnabled = false;\n\n @io.persist\n @type.float32\n bloomDirectionalWeight = 0;\n\n @io.persist\n @type.boolean\n bloomStepSize1Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize1 = 0.3;\n\n @io.persist\n @type.boolean\n bloomStepSize2Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize2 = 1;\n\n @io.persist\n @type.boolean\n bloomStepSize3Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize3 = 2;\n\n @io.persist\n @type.boolean\n bloomStepSize4Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize4 = 10;\n\n @io.persist\n @type.boolean\n bloomStepSize5Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize5 = 30;\n\n @io.persist\n @type.boolean\n bloomStepSize6Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize6 = 64;\n\n @io.persist\n @type.boolean\n bloomStepTint1Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint1 = vec4.fromValues(0.3465, 0.3465, 0.3465, 0.3465);\n\n @io.persist\n @type.boolean\n bloomStepTint2Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint2 = vec4.fromValues(0.138, 0.138, 0.138, 0.138);\n\n @io.persist\n @type.boolean\n bloomStepTint3Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint3 = vec4.fromValues(0.1176, 0.1176, 0.1176, 0.1176);\n\n @io.persist\n @type.boolean\n bloomStepTint4Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint4 = vec4.fromValues(0.066, 0.066, 0.066, 0.066);\n\n @io.persist\n @type.boolean\n bloomStepTint5Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint5 = vec4.fromValues(0.066, 0.066, 0.066, 0.066);\n\n @io.persist\n @type.boolean\n bloomStepTint6Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint6 = vec4.fromValues(0.061, 0.061, 0.061, 0.061);\n\n @io.persist\n @type.boolean\n grimeIntensityEnabled = false;\n\n @io.persist\n @type.float32\n grimeIntensity = 0;\n\n @io.persist\n @type.boolean\n grimePathEnabled = false;\n\n @io.persist\n @type.string\n grimePath = \"\";\n\n @io.persist\n @type.boolean\n exposureAdjustmentEnabled = false;\n\n @io.persist\n @type.float32\n exposureAdjustment = 0;\n\n @io.persist\n @type.boolean\n filmGrainIntensityEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainIntensity = 0;\n\n @io.persist\n @type.boolean\n filmGrainSizeEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainSize = 0;\n\n @io.persist\n @type.boolean\n filmGrainDensityEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainDensity = 0;\n\n @io.persist\n @type.boolean\n filmGrainContrastEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainContrast = 0;\n\n @io.persist\n @type.boolean\n filmGrainBrightnessModifierEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainBrightnessModifier = 0;\n\n @io.persist\n @type.boolean\n filmGrainColoredEnabled = false;\n\n @io.persist\n @type.boolean\n filmGrainColored = false;\n\n @io.persist\n @type.boolean\n filmGrainColorAmountEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainColorAmount = 0;\n\n @io.persist\n @type.boolean\n saturationEnabled = false;\n\n @io.persist\n @type.float32\n saturation = 0;\n\n @io.persist\n @type.boolean\n fadeIntensityEnabled = false;\n\n @io.persist\n @type.float32\n fadeIntensity = 0;\n\n @io.persist\n @type.boolean\n fadeColorEnabled = false;\n\n @io.persist\n @type.color\n fadeColor = vec4.fromValues(0, 0, 0, 1);\n\n @io.persist\n @type.boolean\n lutIntensityEnabled = false;\n\n @io.persist\n @type.float32\n lutIntensity = 0;\n\n @io.persist\n @type.boolean\n lutPathEnabled = false;\n\n @io.persist\n @type.string\n lutPath = \"\";\n\n @io.persist\n @type.boolean\n vignetteIntensityEnabled = false;\n\n @io.persist\n @type.float32\n vignetteIntensity = 0;\n\n @io.persist\n @type.boolean\n vignetteOpacityEnabled = false;\n\n @io.persist\n @type.float32\n vignetteOpacity = 0;\n\n @io.persist\n @type.boolean\n vignetteColorEnabled = false;\n\n @io.persist\n @type.color\n vignetteColor = vec4.fromValues(1, 1, 1, 1);\n\n @io.persist\n @type.boolean\n vignetteDetail1SizeEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail1Size = vec2.fromValues(16, 16);\n\n @io.persist\n @type.boolean\n vignetteDetail1ScrollEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail1Scroll = vec2.create();\n\n @io.persist\n @type.boolean\n vignetteDetail2SizeEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail2Size = vec2.fromValues(16, 16);\n\n @io.persist\n @type.boolean\n vignetteDetail2ScrollEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail2Scroll = vec2.create();\n\n @io.persist\n @type.boolean\n vignetteShapePathEnabled = false;\n\n @io.persist\n @type.string\n vignetteShapePath = \"\";\n\n @io.persist\n @type.boolean\n vignetteDetailPathEnabled = false;\n\n @io.persist\n @type.string\n vignetteDetailPath = \"\";\n\n @io.persist\n @type.boolean\n vignetteSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteSineFrequency = 0;\n\n @io.persist\n @type.boolean\n vignetteMinSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteMinSineFrequency = 0;\n\n @io.persist\n @type.boolean\n vignetteMaxSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteMaxSineFrequency = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldScaleEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldScale = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldFocalDistanceEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldFocalDistance = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldFocalLengthEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldFocalLength = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldShapeEnabled = false;\n\n @io.persist\n @type.int32\n @schema.enum(\"Shape\")\n depthOfFieldShape = 0;\n\n @io.persist\n @type.boolean\n whiteTemperatureEnabled = false;\n\n @io.persist\n @type.float32\n whiteTemperature = 6500;\n\n @io.persist\n @type.boolean\n whiteTintEnabled = false;\n\n @io.persist\n @type.float32\n whiteTint = 0;\n\n @io.persist\n @type.boolean\n colorSaturationEnabled = false;\n\n @io.persist\n @type.float32\n colorSaturation = 1;\n\n @io.persist\n @type.boolean\n colorContrastEnabled = false;\n\n @io.persist\n @type.float32\n colorContrast = 1;\n\n @io.persist\n @type.boolean\n colorGammaEnabled = false;\n\n @io.persist\n @type.float32\n colorGamma = 1;\n\n @io.persist\n @type.boolean\n colorGainEnabled = false;\n\n @io.persist\n @type.vec3\n colorGain = vec3.fromValues(1, 1, 1);\n\n @io.persist\n @type.boolean\n colorOffsetEnabled = false;\n\n @io.persist\n @type.vec3\n colorOffset = vec3.create();\n\n // Native graph-only members: neither is Blue-exposed.\n prioritizedLuts = new Set();\n\n depthOfFieldForegroundBlurNeededEnabled = false;\n\n depthOfFieldForegroundBlurNeeded = false;\n\n @carbon.method\n @impl.implemented\n Reset()\n {\n this.intensity = 0;\n this.priority = Tr2PostProcessAttributes.MEDIUM_PRIORITY;\n for (const name of Tr2PostProcessAttributes.AttributeNames)\n {\n this[name] = Tr2PostProcessAttributes.CloneValue(Tr2PostProcessAttributes.DefaultValues[name]);\n this[`${name}Enabled`] = false;\n }\n this.prioritizedLuts.clear();\n\n // Carbon intentionally enables these on Reset to avoid interpolating color\n // correction from zero while entering a post-process volume.\n this.whiteTemperatureEnabled = true;\n this.whiteTintEnabled = true;\n this.colorSaturationEnabled = true;\n this.colorContrastEnabled = true;\n this.colorGammaEnabled = true;\n this.colorGainEnabled = true;\n this.colorOffsetEnabled = true;\n }\n\n @carbon.method\n @impl.implemented\n FromPostProcess(postProcess, priority, intensity)\n {\n this.Reset();\n this.intensity = Number(intensity ?? 0);\n this.priority = Number(priority ?? Tr2PostProcessAttributes.MEDIUM_PRIORITY) | 0;\n if (!postProcess) return;\n\n const set = (name, value) => Tr2PostProcessAttributes.CopyValue(this, name, value, true);\n const signalLoss = postProcess.GetSignalLossIfAvailable?.() ?? null;\n if (signalLoss) set(\"signalLossIntensity\", signalLoss.strength);\n\n const bloom = postProcess.GetBloomIfAvailable?.() ?? null;\n if (bloom)\n {\n set(\"bloomBrightness\", bloom.brightness);\n set(\"bloomLuminanceScale\", bloom.luminanceScale);\n set(\"bloomLuminanceThreshold\", bloom.luminanceThreshold);\n set(\"grimeIntensity\", bloom.grimeWeight);\n set(\"grimePath\", bloom.grimePath);\n set(\"bloomSizeScale\", bloom.sizeScale);\n set(\"bloomDirectionalWeight\", bloom.directionalWeight);\n for (let index = 1; index <= 6; index++)\n {\n set(`bloomStepSize${index}`, bloom[`step${index}Size`] ?? bloom.stepSizes?.[index - 1]);\n set(`bloomStepTint${index}`, bloom[`step${index}Tint`] ?? bloom.stepTints?.[index - 1]);\n }\n }\n\n const filmGrain = postProcess.GetFilmGrainIfAvailable?.() ?? null;\n if (filmGrain)\n {\n set(\"filmGrainIntensity\", filmGrain.intensity);\n set(\"filmGrainSize\", filmGrain.grainSize);\n set(\"filmGrainDensity\", filmGrain.grainDensity);\n set(\"filmGrainContrast\", filmGrain.grainContrast);\n set(\"filmGrainBrightnessModifier\", filmGrain.brightnessModifier);\n set(\"filmGrainColored\", filmGrain.colored);\n set(\"filmGrainColorAmount\", filmGrain.colorAmount);\n }\n\n const desaturate = postProcess.GetDesaturateIfAvailable?.() ?? null;\n if (desaturate) set(\"saturation\", Number(desaturate.intensity) - 1);\n\n const fade = postProcess.GetFadeIfAvailable?.() ?? null;\n if (fade)\n {\n set(\"fadeIntensity\", fade.intensity);\n set(\"fadeColor\", fade.color);\n }\n\n const vignette = postProcess.GetVignetteIfAvailable?.() ?? null;\n if (vignette)\n {\n set(\"vignetteIntensity\", vignette.intensity);\n set(\"vignetteOpacity\", vignette.opacity);\n set(\"vignetteColor\", vignette.color);\n set(\"vignetteDetail1Size\", vignette.detail1Size);\n set(\"vignetteDetail1Scroll\", vignette.detail1Scroll);\n set(\"vignetteDetail2Size\", vignette.detail2Size);\n set(\"vignetteDetail2Scroll\", vignette.detail2Scroll);\n set(\"vignetteShapePath\", vignette.shapePath);\n set(\"vignetteDetailPath\", vignette.detailPath);\n set(\"vignetteSineFrequency\", vignette.sineFrequency);\n set(\"vignetteMinSineFrequency\", vignette.sineMinimum);\n set(\"vignetteMaxSineFrequency\", vignette.sineMaximum);\n }\n\n const depthOfField = postProcess.GetDepthOfFieldIfAvailable?.() ?? null;\n if (depthOfField)\n {\n set(\"depthOfFieldScale\", depthOfField.scale);\n set(\"depthOfFieldFocalDistance\", depthOfField.focalDistance);\n set(\"depthOfFieldFocalLength\", depthOfField.focalLength);\n set(\"depthOfFieldShape\", depthOfField.bokehShape);\n }\n\n const luts = postProcess.GetAvilableSortedLuts?.([]) ?? [];\n if (luts.length)\n {\n set(\"lutIntensity\", luts[0].influence);\n set(\"lutPath\", luts[0].path);\n }\n\n const colorCorrection = postProcess.GetColorCorrectionIfAvailable?.() ?? null;\n if (colorCorrection)\n {\n set(\"whiteTemperature\", colorCorrection.whiteTemperature);\n set(\"whiteTint\", colorCorrection.whiteTint);\n set(\"colorSaturation\", colorCorrection.colorSaturation);\n set(\"colorContrast\", colorCorrection.colorContrast);\n set(\"colorGamma\", colorCorrection.colorGamma);\n set(\"colorGain\", colorCorrection.colorGain);\n set(\"colorOffset\", colorCorrection.colorOffset);\n }\n }\n\n static Priority = Object.freeze({\n SCENE_DEFAULT_PRIORITY: 0,\n LOW_PRIORITY: 1,\n MEDIUM_PRIORITY: 2,\n HIGH_PRIORITY: 3,\n UI_PRIORITY: 4,\n PRIORITY_COUNT: 5\n });\n\n static AttributeType = Object.freeze({\n SIGNAL_LOSS_INTENSITY: 0,\n BLOOM_BRIGHTNESS: 1,\n BLOOM_LUMINANCE_THRESHOLD: 2,\n BLOOM_LUMINANCE_SCALE: 3,\n GRIME_INTENSITY: 4,\n GRIME_PATH: 5,\n FILM_GRAIN_INTENSITY: 6,\n FILM_GRAIN_SIZE: 7,\n FILM_GRAIN_DENSITY: 8,\n FILM_GRAIN_CONTRAST: 9,\n FILM_GRAIN_BRIGHTNESS_MODIFIER: 10,\n FILM_GRAIN_COLORED: 11,\n FILM_GRAIN_COLOR_AMOUNT: 12,\n SATURATION: 13,\n FADE_INTENSITY: 14,\n FADE_COLOR: 15,\n LUT_INTENSITY: 16,\n LUT_PATH: 17,\n VIGNETTE_INTENSITY: 18,\n VIGNETTE_OPACITY: 19,\n VIGNETTE_COLOR: 20,\n VIGNETTE_DETAIL1_SIZE: 21,\n VIGNETTE_DETAIL1_SCROLL: 22,\n VIGNETTE_DETAIL2_SIZE: 23,\n VIGNETTE_DETAIL2_SCROLL: 24,\n VIGNETTE_SHAPE_PATH: 25,\n VIGNETTE_DETAIL_PATH: 26,\n VIGNETTE_SINE_FREQUENCY: 27,\n VIGNETTE_MIN_SINE_FREQUENCY: 28,\n VIGNETTE_MAX_SINE_FREQUENCY: 29,\n DEPTH_OF_FIELD_SCALE: 30,\n DEPTH_OF_FIELD_FOCAL_DISTANCE: 31,\n DEPTH_OF_FIELD_FOCAL_LENGTH: 32,\n DEPTH_OF_FIELD_SHAPE: 33,\n WHITE_TEMPERATURE: 34,\n WHITE_TINT: 35,\n COLOR_SATURATION: 36,\n COLOR_CONTRAST: 37,\n COLOR_GAMMA: 38,\n COLOR_GAIN: 39,\n COLOR_OFFSET: 40,\n POST_PROCESS_ATTRIBUTE_TYPE_COUNT: 41\n });\n\n static SCENE_DEFAULT_PRIORITY = 0;\n\n static LOW_PRIORITY = 1;\n\n static MEDIUM_PRIORITY = 2;\n\n static HIGH_PRIORITY = 3;\n\n static UI_PRIORITY = 4;\n\n static PRIORITY_COUNT = 5;\n\n static AttributeNames = Object.freeze([\n \"signalLossIntensity\",\n \"bloomBrightness\", \"bloomLuminanceThreshold\", \"bloomLuminanceScale\", \"bloomSizeScale\", \"bloomDirectionalWeight\",\n \"bloomStepSize1\", \"bloomStepSize2\", \"bloomStepSize3\", \"bloomStepSize4\", \"bloomStepSize5\", \"bloomStepSize6\",\n \"bloomStepTint1\", \"bloomStepTint2\", \"bloomStepTint3\", \"bloomStepTint4\", \"bloomStepTint5\", \"bloomStepTint6\",\n \"grimeIntensity\", \"grimePath\", \"exposureAdjustment\",\n \"filmGrainIntensity\", \"filmGrainSize\", \"filmGrainDensity\", \"filmGrainContrast\", \"filmGrainBrightnessModifier\", \"filmGrainColored\", \"filmGrainColorAmount\",\n \"saturation\", \"fadeIntensity\", \"fadeColor\", \"lutIntensity\", \"lutPath\",\n \"vignetteIntensity\", \"vignetteOpacity\", \"vignetteColor\", \"vignetteDetail1Size\", \"vignetteDetail1Scroll\", \"vignetteDetail2Size\", \"vignetteDetail2Scroll\",\n \"vignetteShapePath\", \"vignetteDetailPath\", \"vignetteSineFrequency\", \"vignetteMinSineFrequency\", \"vignetteMaxSineFrequency\",\n \"depthOfFieldScale\", \"depthOfFieldFocalDistance\", \"depthOfFieldFocalLength\", \"depthOfFieldShape\",\n \"whiteTemperature\", \"whiteTint\", \"colorSaturation\", \"colorContrast\", \"colorGamma\", \"colorGain\", \"colorOffset\"\n ]);\n\n static DefaultValues = Object.freeze({\n signalLossIntensity: 0,\n bloomBrightness: 0,\n bloomLuminanceThreshold: 0,\n bloomLuminanceScale: 0,\n bloomSizeScale: 4,\n bloomDirectionalWeight: 0,\n bloomStepSize1: 0.3,\n bloomStepSize2: 1,\n bloomStepSize3: 2,\n bloomStepSize4: 10,\n bloomStepSize5: 30,\n bloomStepSize6: 64,\n bloomStepTint1: vec4.fromValues(0.3465, 0.3465, 0.3465, 0.3465),\n bloomStepTint2: vec4.fromValues(0.138, 0.138, 0.138, 0.138),\n bloomStepTint3: vec4.fromValues(0.1176, 0.1176, 0.1176, 0.1176),\n bloomStepTint4: vec4.fromValues(0.066, 0.066, 0.066, 0.066),\n bloomStepTint5: vec4.fromValues(0.066, 0.066, 0.066, 0.066),\n bloomStepTint6: vec4.fromValues(0.061, 0.061, 0.061, 0.061),\n grimeIntensity: 0,\n grimePath: \"\",\n exposureAdjustment: 0,\n filmGrainIntensity: 0,\n filmGrainSize: 0,\n filmGrainDensity: 0,\n filmGrainContrast: 0,\n filmGrainBrightnessModifier: 0,\n filmGrainColored: false,\n filmGrainColorAmount: 0,\n saturation: 0,\n fadeIntensity: 0,\n fadeColor: vec4.fromValues(0, 0, 0, 1),\n lutIntensity: 0,\n lutPath: \"\",\n vignetteIntensity: 0,\n vignetteOpacity: 0,\n vignetteColor: vec4.fromValues(1, 1, 1, 1),\n vignetteDetail1Size: vec2.fromValues(16, 16),\n vignetteDetail1Scroll: vec2.create(),\n vignetteDetail2Size: vec2.fromValues(16, 16),\n vignetteDetail2Scroll: vec2.create(),\n vignetteShapePath: \"\",\n vignetteDetailPath: \"\",\n vignetteSineFrequency: 0,\n vignetteMinSineFrequency: 0,\n vignetteMaxSineFrequency: 0,\n depthOfFieldScale: 0,\n depthOfFieldFocalDistance: 0,\n depthOfFieldFocalLength: 0,\n depthOfFieldShape: 0,\n depthOfFieldForegroundBlurNeeded: false,\n whiteTemperature: 6500,\n whiteTint: 0,\n colorSaturation: 1,\n colorContrast: 1,\n colorGamma: 1,\n colorGain: vec3.fromValues(1, 1, 1),\n colorOffset: vec3.create()\n });\n\n static MaxWeightAttributes = Object.freeze(new Set([\n \"grimePath\", \"filmGrainColored\", \"vignetteShapePath\", \"vignetteDetailPath\", \"depthOfFieldShape\", \"depthOfFieldForegroundBlurNeeded\"\n ]));\n\n static CloneValue(value)\n {\n return ArrayBuffer.isView(value) ? new value.constructor(value) : value;\n }\n\n static CopyValue(target, name, value, enabled = true)\n {\n target[name] = Tr2PostProcessAttributes.CloneValue(value);\n target[`${name}Enabled`] = enabled;\n }\n\n static AddWeighted(result, value, weight)\n {\n if (ArrayBuffer.isView(value) || Array.isArray(value))\n {\n if (!result) result = new Float32Array(value.length);\n for (let index = 0; index < value.length; index++) result[index] += Number(value[index]) * weight;\n return result;\n }\n return Number(result ?? 0) + Number(value ?? 0) * weight;\n }\n\n static ZeroValue(name)\n {\n const value = Tr2PostProcessAttributes.DefaultValues[name];\n if (ArrayBuffer.isView(value)) return new Float32Array(value.length);\n if (typeof value === \"string\") return \"\";\n if (typeof value === \"boolean\") return false;\n return 0;\n }\n\n static CreateDebugObserver()\n {\n const records = {};\n let current = null;\n return {\n BeginAttribute(name)\n {\n current = { name, influencers: [] };\n records[name] = current;\n },\n Influence(attributes, weight)\n {\n current?.influencers.push({ attributes, weight });\n },\n EndAttribute(value)\n {\n if (current) current.value = Tr2PostProcessAttributes.CloneDebugValue(value);\n current = null;\n },\n GetDict()\n {\n return records;\n }\n };\n }\n\n static CloneDebugValue(value)\n {\n if (ArrayBuffer.isView(value)) return new value.constructor(value);\n if (Array.isArray(value)) return value.map(item => ({ ...item }));\n return value;\n }\n\n static BeginDebug(observer, name)\n {\n observer?.BeginAttribute?.(name);\n }\n\n static DebugInfluence(observer, source, weight)\n {\n observer?.Influence?.(source, weight);\n }\n\n static EndDebug(observer, value)\n {\n observer?.EndAttribute?.(value);\n }\n\n static Accumulate(name, sources, maxWeight = Tr2PostProcessAttributes.MaxWeightAttributes.has(name), observer = null)\n {\n let remainingWeight = 1;\n let result = maxWeight ? Tr2PostProcessAttributes.ZeroValue(name) : null;\n let bestWeight = 0;\n Tr2PostProcessAttributes.BeginDebug(observer, name);\n\n for (let first = 0; first < sources.length;)\n {\n let last = first + 1;\n while (last < sources.length && sources[last].priority === sources[first].priority) last++;\n\n let totalPriorityIntensity = 0;\n for (let index = first; index < last; index++)\n {\n if (sources[index]?.[`${name}Enabled`]) totalPriorityIntensity += Number(sources[index].intensity);\n }\n if (totalPriorityIntensity !== 0)\n {\n const normalization = remainingWeight / Math.max(totalPriorityIntensity, 1);\n for (let index = first; index < last; index++)\n {\n const source = sources[index];\n if (!source?.[`${name}Enabled`]) continue;\n const weight = Number(source.intensity) * normalization;\n if (maxWeight)\n {\n if (weight > bestWeight)\n {\n bestWeight = weight;\n result = source[name];\n }\n }\n else\n {\n result = Tr2PostProcessAttributes.AddWeighted(result, source[name], weight);\n }\n Tr2PostProcessAttributes.DebugInfluence(observer, source, weight);\n }\n remainingWeight -= totalPriorityIntensity;\n if (remainingWeight <= 0) break;\n }\n first = last;\n }\n const finalValue = Tr2PostProcessAttributes.CloneValue(result ?? Tr2PostProcessAttributes.ZeroValue(name));\n Tr2PostProcessAttributes.EndDebug(observer, finalValue);\n return finalValue;\n }\n\n static AccumulateLuts(sources, observer = null)\n {\n let remainingWeight = 1;\n const values = [];\n Tr2PostProcessAttributes.BeginDebug(observer, \"lutPath\");\n for (let first = 0; first < sources.length;)\n {\n let last = first + 1;\n while (last < sources.length && sources[last].priority === sources[first].priority) last++;\n let totalPriorityIntensity = 0;\n for (let index = first; index < last; index++)\n {\n if (sources[index]?.lutPathEnabled) totalPriorityIntensity += Number(sources[index].intensity);\n }\n if (totalPriorityIntensity !== 0)\n {\n const normalization = remainingWeight / Math.max(totalPriorityIntensity, 1);\n for (let index = first; index < last; index++)\n {\n const source = sources[index];\n if (!source?.lutPathEnabled) continue;\n const weight = Number(source.intensity) * normalization;\n const existing = values.find(item => item.value === source.lutPath);\n if (existing)\n {\n existing.weight += weight;\n }\n else if (values.length < 4)\n {\n values.push({ value: source.lutPath, weight });\n values.sort((a, b) => b.weight - a.weight);\n }\n else\n {\n const insertAt = values.findIndex(item => weight > item.weight);\n if (insertAt !== -1) values.splice(insertAt, 0, { value: source.lutPath, weight });\n values.length = 4;\n }\n Tr2PostProcessAttributes.DebugInfluence(observer, source, weight);\n }\n remainingWeight -= totalPriorityIntensity;\n if (remainingWeight <= 0) break;\n }\n first = last;\n }\n const total = values.reduce((sum, item) => sum + item.weight, 0);\n if (total > 0) for (const item of values) item.weight /= total;\n Tr2PostProcessAttributes.EndDebug(observer, values);\n return values;\n }\n\n static SetEffect(postProcess, name, effect)\n {\n const method = postProcess[`Set${name}`];\n if (typeof method === \"function\") method.call(postProcess, effect);\n else postProcess[name.charAt(0).toLowerCase() + name.slice(1)] = effect;\n }\n\n static MergeInto(postProcess, sources, debugObserver = null)\n {\n const values = new Map();\n for (const name of Tr2PostProcessAttributes.AttributeNames)\n {\n if (name !== \"lutPath\") values.set(name, Tr2PostProcessAttributes.Accumulate(name, sources, undefined, debugObserver));\n }\n values.set(\"depthOfFieldForegroundBlurNeeded\", Tr2PostProcessAttributes.Accumulate(\"depthOfFieldForegroundBlurNeeded\", sources, true, debugObserver));\n const lutPaths = Tr2PostProcessAttributes.AccumulateLuts(sources, debugObserver);\n const value = name => values.get(name);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Desaturate\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Fade\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"FilmGrain\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"SignalLoss\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Vignette\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"DepthOfField\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"ColorCorrection\", null);\n postProcess.ClearLuts?.();\n if (!postProcess.ClearLuts) postProcess.luts.length = 0;\n\n const signalLossIntensity = value(\"signalLossIntensity\");\n if (signalLossIntensity > 0)\n {\n const effect = new Tr2PPSignalLossEffect();\n effect.strength = signalLossIntensity;\n Tr2PostProcessAttributes.SetEffect(postProcess, \"SignalLoss\", effect);\n }\n\n const bloomBrightness = value(\"bloomBrightness\");\n if (bloomBrightness > 0)\n {\n const effect = new Tr2PPBloomEffect();\n effect.brightness = bloomBrightness;\n effect.luminanceThreshold = value(\"bloomLuminanceThreshold\");\n effect.luminanceScale = value(\"bloomLuminanceScale\");\n effect.sizeScale = value(\"bloomSizeScale\");\n effect.directionalWeight = value(\"bloomDirectionalWeight\");\n for (let index = 1; index <= 6; index++)\n {\n effect[`step${index}Size`] = value(`bloomStepSize${index}`);\n effect[`step${index}Tint`] = value(`bloomStepTint${index}`);\n }\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", effect);\n }\n\n const grimeIntensity = value(\"grimeIntensity\");\n if (grimeIntensity > 0)\n {\n const effect = postProcess.GetBloomIfAvailable?.() ?? postProcess.bloom ?? new Tr2PPBloomEffect();\n effect.grimeWeight = grimeIntensity;\n effect.grimePath = value(\"grimePath\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", effect);\n }\n\n const filmGrainIntensity = value(\"filmGrainIntensity\");\n if (filmGrainIntensity > 0)\n {\n const effect = new Tr2PPFilmGrainEffect();\n effect.intensity = filmGrainIntensity;\n effect.grainSize = value(\"filmGrainSize\");\n effect.grainDensity = value(\"filmGrainDensity\");\n effect.grainContrast = value(\"filmGrainContrast\");\n effect.brightnessModifier = value(\"filmGrainBrightnessModifier\");\n effect.colored = value(\"filmGrainColored\");\n effect.colorAmount = value(\"filmGrainColorAmount\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"FilmGrain\", effect);\n }\n\n const saturation = value(\"saturation\");\n if (saturation !== 0)\n {\n const effect = new Tr2PPDesaturateEffect();\n effect.intensity = saturation + 1;\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Desaturate\", effect);\n }\n\n const fadeIntensity = value(\"fadeIntensity\");\n if (fadeIntensity > 0)\n {\n const effect = new Tr2PPFadeEffect();\n effect.intensity = fadeIntensity;\n effect.color = value(\"fadeColor\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Fade\", effect);\n }\n\n const lutIntensity = value(\"lutIntensity\");\n for (const lut of lutPaths)\n {\n const effect = new Tr2PPLutEffect();\n effect.influence = lut.weight * lutIntensity;\n effect.path = lut.value;\n if (postProcess.AddLut) postProcess.AddLut(effect);\n else postProcess.luts.push(effect);\n }\n\n const vignetteIntensity = value(\"vignetteIntensity\");\n if (vignetteIntensity > 0)\n {\n const effect = new Tr2PPVignetteEffect();\n effect.intensity = vignetteIntensity;\n effect.opacity = value(\"vignetteOpacity\");\n effect.color = value(\"vignetteColor\");\n effect.detail1Size = value(\"vignetteDetail1Size\");\n effect.detail1Scroll = value(\"vignetteDetail1Scroll\");\n effect.detail2Size = value(\"vignetteDetail2Size\");\n effect.detail2Scroll = value(\"vignetteDetail2Scroll\");\n effect.shapePath = value(\"vignetteShapePath\");\n effect.detailPath = value(\"vignetteDetailPath\");\n effect.sineFrequency = value(\"vignetteSineFrequency\");\n effect.sineMinimum = value(\"vignetteMinSineFrequency\");\n effect.sineMaximum = value(\"vignetteMaxSineFrequency\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Vignette\", effect);\n }\n\n const depthOfFieldScale = value(\"depthOfFieldScale\");\n if (depthOfFieldScale > 0)\n {\n const effect = new Tr2PPDepthOfFieldEffect();\n effect.scale = depthOfFieldScale;\n effect.cocScale = 1;\n effect.focalDistance = value(\"depthOfFieldFocalDistance\");\n effect.focalLength = value(\"depthOfFieldFocalLength\");\n effect.bokehShape = value(\"depthOfFieldShape\");\n effect.foregroundBlurNeeded = value(\"depthOfFieldForegroundBlurNeeded\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"DepthOfField\", effect);\n }\n\n postProcess.exposureAdjustment = value(\"exposureAdjustment\");\n const whiteTemperature = value(\"whiteTemperature\");\n if (whiteTemperature > 0)\n {\n const effect = new Tr2PPColorCorrectionEffect();\n effect.whiteTemperature = whiteTemperature;\n effect.whiteTint = value(\"whiteTint\");\n effect.colorSaturation = value(\"colorSaturation\");\n effect.colorContrast = value(\"colorContrast\");\n effect.colorGamma = value(\"colorGamma\");\n effect.colorGain = value(\"colorGain\");\n effect.colorOffset = value(\"colorOffset\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"ColorCorrection\", effect);\n }\n return postProcess;\n }\n\n static Shape = Object.freeze({\n Disk: 0,\n Triangle: 1,\n Rectangle: 2,\n Pentagon: 3,\n Hexagon: 4,\n Heart: 5\n });\n\n}\n"],"names":["_Tr2PostProcessAttrib","_identity","Tr2PostProcessAttributes","CjsModel","e","_init_priority","_init_extra_priority","_init_intensity","_init_extra_intensity","_init_signalLossIntensityEnabled","_init_extra_signalLossIntensityEnabled","_init_signalLossIntensity","_init_extra_signalLossIntensity","_init_bloomBrightnessEnabled","_init_extra_bloomBrightnessEnabled","_init_bloomBrightness","_init_extra_bloomBrightness","_init_bloomLuminanceThresholdEnabled","_init_extra_bloomLuminanceThresholdEnabled","_init_bloomLuminanceThreshold","_init_extra_bloomLuminanceThreshold","_init_bloomLuminanceScaleEnabled","_init_extra_bloomLuminanceScaleEnabled","_init_bloomLuminanceScale","_init_extra_bloomLuminanceScale","_init_bloomSizeScaleEnabled","_init_extra_bloomSizeScaleEnabled","_init_bloomSizeScale","_init_extra_bloomSizeScale","_init_bloomDirectionalWeightEnabled","_init_extra_bloomDirectionalWeightEnabled","_init_bloomDirectionalWeight","_init_extra_bloomDirectionalWeight","_init_bloomStepSize1Enabled","_init_extra_bloomStepSize1Enabled","_init_bloomStepSize","_init_extra_bloomStepSize","_init_bloomStepSize2Enabled","_init_extra_bloomStepSize2Enabled","_init_bloomStepSize2","_init_extra_bloomStepSize2","_init_bloomStepSize3Enabled","_init_extra_bloomStepSize3Enabled","_init_bloomStepSize3","_init_extra_bloomStepSize3","_init_bloomStepSize4Enabled","_init_extra_bloomStepSize4Enabled","_init_bloomStepSize4","_init_extra_bloomStepSize4","_init_bloomStepSize5Enabled","_init_extra_bloomStepSize5Enabled","_init_bloomStepSize5","_init_extra_bloomStepSize5","_init_bloomStepSize6Enabled","_init_extra_bloomStepSize6Enabled","_init_bloomStepSize6","_init_extra_bloomStepSize6","_init_bloomStepTint1Enabled","_init_extra_bloomStepTint1Enabled","_init_bloomStepTint","_init_extra_bloomStepTint","_init_bloomStepTint2Enabled","_init_extra_bloomStepTint2Enabled","_init_bloomStepTint2","_init_extra_bloomStepTint2","_init_bloomStepTint3Enabled","_init_extra_bloomStepTint3Enabled","_init_bloomStepTint3","_init_extra_bloomStepTint3","_init_bloomStepTint4Enabled","_init_extra_bloomStepTint4Enabled","_init_bloomStepTint4","_init_extra_bloomStepTint4","_init_bloomStepTint5Enabled","_init_extra_bloomStepTint5Enabled","_init_bloomStepTint5","_init_extra_bloomStepTint5","_init_bloomStepTint6Enabled","_init_extra_bloomStepTint6Enabled","_init_bloomStepTint6","_init_extra_bloomStepTint6","_init_grimeIntensityEnabled","_init_extra_grimeIntensityEnabled","_init_grimeIntensity","_init_extra_grimeIntensity","_init_grimePathEnabled","_init_extra_grimePathEnabled","_init_grimePath","_init_extra_grimePath","_init_exposureAdjustmentEnabled","_init_extra_exposureAdjustmentEnabled","_init_exposureAdjustment","_init_extra_exposureAdjustment","_init_filmGrainIntensityEnabled","_init_extra_filmGrainIntensityEnabled","_init_filmGrainIntensity","_init_extra_filmGrainIntensity","_init_filmGrainSizeEnabled","_init_extra_filmGrainSizeEnabled","_init_filmGrainSize","_init_extra_filmGrainSize","_init_filmGrainDensityEnabled","_init_extra_filmGrainDensityEnabled","_init_filmGrainDensity","_init_extra_filmGrainDensity","_init_filmGrainContrastEnabled","_init_extra_filmGrainContrastEnabled","_init_filmGrainContrast","_init_extra_filmGrainContrast","_init_filmGrainBrightnessModifierEnabled","_init_extra_filmGrainBrightnessModifierEnabled","_init_filmGrainBrightnessModifier","_init_extra_filmGrainBrightnessModifier","_init_filmGrainColoredEnabled","_init_extra_filmGrainColoredEnabled","_init_filmGrainColored","_init_extra_filmGrainColored","_init_filmGrainColorAmountEnabled","_init_extra_filmGrainColorAmountEnabled","_init_filmGrainColorAmount","_init_extra_filmGrainColorAmount","_init_saturationEnabled","_init_extra_saturationEnabled","_init_saturation","_init_extra_saturation","_init_fadeIntensityEnabled","_init_extra_fadeIntensityEnabled","_init_fadeIntensity","_init_extra_fadeIntensity","_init_fadeColorEnabled","_init_extra_fadeColorEnabled","_init_fadeColor","_init_extra_fadeColor","_init_lutIntensityEnabled","_init_extra_lutIntensityEnabled","_init_lutIntensity","_init_extra_lutIntensity","_init_lutPathEnabled","_init_extra_lutPathEnabled","_init_lutPath","_init_extra_lutPath","_init_vignetteIntensityEnabled","_init_extra_vignetteIntensityEnabled","_init_vignetteIntensity","_init_extra_vignetteIntensity","_init_vignetteOpacityEnabled","_init_extra_vignetteOpacityEnabled","_init_vignetteOpacity","_init_extra_vignetteOpacity","_init_vignetteColorEnabled","_init_extra_vignetteColorEnabled","_init_vignetteColor","_init_extra_vignetteColor","_init_vignetteDetail1SizeEnabled","_init_extra_vignetteDetail1SizeEnabled","_init_vignetteDetail1Size","_init_extra_vignetteDetail1Size","_init_vignetteDetail1ScrollEnabled","_init_extra_vignetteDetail1ScrollEnabled","_init_vignetteDetail1Scroll","_init_extra_vignetteDetail1Scroll","_init_vignetteDetail2SizeEnabled","_init_extra_vignetteDetail2SizeEnabled","_init_vignetteDetail2Size","_init_extra_vignetteDetail2Size","_init_vignetteDetail2ScrollEnabled","_init_extra_vignetteDetail2ScrollEnabled","_init_vignetteDetail2Scroll","_init_extra_vignetteDetail2Scroll","_init_vignetteShapePathEnabled","_init_extra_vignetteShapePathEnabled","_init_vignetteShapePath","_init_extra_vignetteShapePath","_init_vignetteDetailPathEnabled","_init_extra_vignetteDetailPathEnabled","_init_vignetteDetailPath","_init_extra_vignetteDetailPath","_init_vignetteSineFrequencyEnabled","_init_extra_vignetteSineFrequencyEnabled","_init_vignetteSineFrequency","_init_extra_vignetteSineFrequency","_init_vignetteMinSineFrequencyEnabled","_init_extra_vignetteMinSineFrequencyEnabled","_init_vignetteMinSineFrequency","_init_extra_vignetteMinSineFrequency","_init_vignetteMaxSineFrequencyEnabled","_init_extra_vignetteMaxSineFrequencyEnabled","_init_vignetteMaxSineFrequency","_init_extra_vignetteMaxSineFrequency","_init_depthOfFieldScaleEnabled","_init_extra_depthOfFieldScaleEnabled","_init_depthOfFieldScale","_init_extra_depthOfFieldScale","_init_depthOfFieldFocalDistanceEnabled","_init_extra_depthOfFieldFocalDistanceEnabled","_init_depthOfFieldFocalDistance","_init_extra_depthOfFieldFocalDistance","_init_depthOfFieldFocalLengthEnabled","_init_extra_depthOfFieldFocalLengthEnabled","_init_depthOfFieldFocalLength","_init_extra_depthOfFieldFocalLength","_init_depthOfFieldShapeEnabled","_init_extra_depthOfFieldShapeEnabled","_init_depthOfFieldShape","_init_extra_depthOfFieldShape","_init_whiteTemperatureEnabled","_init_extra_whiteTemperatureEnabled","_init_whiteTemperature","_init_extra_whiteTemperature","_init_whiteTintEnabled","_init_extra_whiteTintEnabled","_init_whiteTint","_init_extra_whiteTint","_init_colorSaturationEnabled","_init_extra_colorSaturationEnabled","_init_colorSaturation","_init_extra_colorSaturation","_init_colorContrastEnabled","_init_extra_colorContrastEnabled","_init_colorContrast","_init_extra_colorContrast","_init_colorGammaEnabled","_init_extra_colorGammaEnabled","_init_colorGamma","_init_extra_colorGamma","_init_colorGainEnabled","_init_extra_colorGainEnabled","_init_colorGain","_init_extra_colorGain","_init_colorOffsetEnabled","_init_extra_colorOffsetEnabled","_init_colorOffset","_init_extra_colorOffset","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","read","float32","boolean","color","string","vec2","vec3","carbon","method","impl","implemented","priority","MEDIUM_PRIORITY","intensity","signalLossIntensityEnabled","signalLossIntensity","bloomBrightnessEnabled","bloomBrightness","bloomLuminanceThresholdEnabled","bloomLuminanceThreshold","bloomLuminanceScaleEnabled","bloomLuminanceScale","bloomSizeScaleEnabled","bloomSizeScale","bloomDirectionalWeightEnabled","bloomDirectionalWeight","bloomStepSize1Enabled","bloomStepSize1","bloomStepSize2Enabled","bloomStepSize2","bloomStepSize3Enabled","bloomStepSize3","bloomStepSize4Enabled","bloomStepSize4","bloomStepSize5Enabled","bloomStepSize5","bloomStepSize6Enabled","bloomStepSize6","bloomStepTint1Enabled","bloomStepTint1","vec4","fromValues","bloomStepTint2Enabled","bloomStepTint2","bloomStepTint3Enabled","bloomStepTint3","bloomStepTint4Enabled","bloomStepTint4","bloomStepTint5Enabled","bloomStepTint5","bloomStepTint6Enabled","bloomStepTint6","grimeIntensityEnabled","grimeIntensity","grimePathEnabled","grimePath","exposureAdjustmentEnabled","exposureAdjustment","filmGrainIntensityEnabled","filmGrainIntensity","filmGrainSizeEnabled","filmGrainSize","filmGrainDensityEnabled","filmGrainDensity","filmGrainContrastEnabled","filmGrainContrast","filmGrainBrightnessModifierEnabled","filmGrainBrightnessModifier","filmGrainColoredEnabled","filmGrainColored","filmGrainColorAmountEnabled","filmGrainColorAmount","saturationEnabled","saturation","fadeIntensityEnabled","fadeIntensity","fadeColorEnabled","fadeColor","lutIntensityEnabled","lutIntensity","lutPathEnabled","lutPath","vignetteIntensityEnabled","vignetteIntensity","vignetteOpacityEnabled","vignetteOpacity","vignetteColorEnabled","vignetteColor","vignetteDetail1SizeEnabled","vignetteDetail1Size","vignetteDetail1ScrollEnabled","vignetteDetail1Scroll","create","vignetteDetail2SizeEnabled","vignetteDetail2Size","vignetteDetail2ScrollEnabled","vignetteDetail2Scroll","vignetteShapePathEnabled","vignetteShapePath","vignetteDetailPathEnabled","vignetteDetailPath","vignetteSineFrequencyEnabled","vignetteSineFrequency","vignetteMinSineFrequencyEnabled","vignetteMinSineFrequency","vignetteMaxSineFrequencyEnabled","vignetteMaxSineFrequency","depthOfFieldScaleEnabled","depthOfFieldScale","depthOfFieldFocalDistanceEnabled","depthOfFieldFocalDistance","depthOfFieldFocalLengthEnabled","depthOfFieldFocalLength","depthOfFieldShapeEnabled","depthOfFieldShape","whiteTemperatureEnabled","whiteTemperature","whiteTintEnabled","whiteTint","colorSaturationEnabled","colorSaturation","colorContrastEnabled","colorContrast","colorGammaEnabled","colorGamma","colorGainEnabled","colorGain","colorOffsetEnabled","colorOffset","prioritizedLuts","Set","depthOfFieldForegroundBlurNeededEnabled","depthOfFieldForegroundBlurNeeded","Reset","name","AttributeNames","CloneValue","DefaultValues","clear","FromPostProcess","postProcess","Number","set","value","CopyValue","signalLoss","GetSignalLossIfAvailable","strength","bloom","GetBloomIfAvailable","brightness","luminanceScale","luminanceThreshold","grimeWeight","sizeScale","directionalWeight","index","stepSizes","stepTints","filmGrain","GetFilmGrainIfAvailable","grainSize","grainDensity","grainContrast","brightnessModifier","colored","colorAmount","desaturate","GetDesaturateIfAvailable","fade","GetFadeIfAvailable","vignette","GetVignetteIfAvailable","opacity","detail1Size","detail1Scroll","detail2Size","detail2Scroll","shapePath","detailPath","sineFrequency","sineMinimum","sineMaximum","depthOfField","GetDepthOfFieldIfAvailable","scale","focalDistance","focalLength","bokehShape","luts","GetAvilableSortedLuts","length","influence","path","colorCorrection","GetColorCorrectionIfAvailable","ArrayBuffer","isView","constructor","target","enabled","AddWeighted","result","weight","Array","isArray","Float32Array","ZeroValue","CreateDebugObserver","records","current","BeginAttribute","influencers","Influence","attributes","push","EndAttribute","CloneDebugValue","GetDict","map","item","BeginDebug","observer","DebugInfluence","source","EndDebug","Accumulate","sources","maxWeight","MaxWeightAttributes","has","remainingWeight","bestWeight","first","last","totalPriorityIntensity","normalization","Math","max","finalValue","AccumulateLuts","values","existing","find","sort","a","b","insertAt","findIndex","splice","total","reduce","sum","SetEffect","effect","call","charAt","toLowerCase","slice","MergeInto","debugObserver","Map","undefined","lutPaths","get","ClearLuts","Tr2PPSignalLossEffect","Tr2PPBloomEffect","Tr2PPFilmGrainEffect","Tr2PPDesaturateEffect","Tr2PPFadeEffect","lut","Tr2PPLutEffect","AddLut","Tr2PPVignetteEffect","Tr2PPDepthOfFieldEffect","cocScale","foregroundBlurNeeded","Tr2PPColorCorrectionEffect","Priority","Object","freeze","SCENE_DEFAULT_PRIORITY","LOW_PRIORITY","HIGH_PRIORITY","UI_PRIORITY","PRIORITY_COUNT","AttributeType","SIGNAL_LOSS_INTENSITY","BLOOM_BRIGHTNESS","BLOOM_LUMINANCE_THRESHOLD","BLOOM_LUMINANCE_SCALE","GRIME_INTENSITY","GRIME_PATH","FILM_GRAIN_INTENSITY","FILM_GRAIN_SIZE","FILM_GRAIN_DENSITY","FILM_GRAIN_CONTRAST","FILM_GRAIN_BRIGHTNESS_MODIFIER","FILM_GRAIN_COLORED","FILM_GRAIN_COLOR_AMOUNT","SATURATION","FADE_INTENSITY","FADE_COLOR","LUT_INTENSITY","LUT_PATH","VIGNETTE_INTENSITY","VIGNETTE_OPACITY","VIGNETTE_COLOR","VIGNETTE_DETAIL1_SIZE","VIGNETTE_DETAIL1_SCROLL","VIGNETTE_DETAIL2_SIZE","VIGNETTE_DETAIL2_SCROLL","VIGNETTE_SHAPE_PATH","VIGNETTE_DETAIL_PATH","VIGNETTE_SINE_FREQUENCY","VIGNETTE_MIN_SINE_FREQUENCY","VIGNETTE_MAX_SINE_FREQUENCY","DEPTH_OF_FIELD_SCALE","DEPTH_OF_FIELD_FOCAL_DISTANCE","DEPTH_OF_FIELD_FOCAL_LENGTH","DEPTH_OF_FIELD_SHAPE","WHITE_TEMPERATURE","WHITE_TINT","COLOR_SATURATION","COLOR_CONTRAST","COLOR_GAMMA","COLOR_GAIN","COLOR_OFFSET","POST_PROCESS_ATTRIBUTE_TYPE_COUNT","Shape","Disk","Triangle","Rectangle","Pentagon","Hexagon","Heart"],"mappings":"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"}
1
+ {"version":3,"file":"Tr2PostProcessAttributes.js","sources":["../../../src/postProcess/Tr2PostProcessAttributes.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes.h\n// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes.cpp\n// Source: E:\\carbonengine\\trinity\\trinity\\PostProcess\\Tr2PostProcessAttributes_Blue.cpp\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { vec2 } from \"@carbonenginejs/runtime-utils/vec2\";\nimport { vec3 } from \"@carbonenginejs/runtime-utils/vec3\";\nimport { vec4 } from \"@carbonenginejs/runtime-utils/vec4\";\nimport { carbon, impl, io, schema, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { Tr2PPBloomEffect } from \"./Tr2PPBloomEffect.js\";\nimport { Tr2PPColorCorrectionEffect } from \"./Tr2PPColorCorrectionEffect.js\";\nimport { Tr2PPDepthOfFieldEffect } from \"./Tr2PPDepthOfFieldEffect.js\";\nimport { Tr2PPDesaturateEffect } from \"./Tr2PPDesaturateEffect.js\";\nimport { Tr2PPFadeEffect } from \"./Tr2PPFadeEffect.js\";\nimport { Tr2PPFilmGrainEffect } from \"./Tr2PPFilmGrainEffect.js\";\nimport { Tr2PPLutEffect } from \"./Tr2PPLutEffect.js\";\nimport { Tr2PPSignalLossEffect } from \"./Tr2PPSignalLossEffect.js\";\nimport { Tr2PPVignetteEffect } from \"./Tr2PPVignetteEffect.js\";\n\n\n/**\n * One post-process volume's contribution: a value and an enable flag per\n * attribute, plus the priority band and intensity that weight it when several\n * volumes are blended together.\n */\n@type.define({ className: \"Tr2PostProcessAttributes\", family: \"postProcess\" })\nexport class Tr2PostProcessAttributes extends CjsModel\n{\n\n @io.persist\n @type.int32\n @schema.enum(\"Priority\")\n priority = Tr2PostProcessAttributes.MEDIUM_PRIORITY;\n\n @io.read\n @type.float32\n intensity = 0;\n\n @io.persist\n @type.boolean\n signalLossIntensityEnabled = false;\n\n @io.persist\n @type.float32\n signalLossIntensity = 0;\n\n @io.persist\n @type.boolean\n bloomBrightnessEnabled = false;\n\n @io.persist\n @type.float32\n bloomBrightness = 0;\n\n @io.persist\n @type.boolean\n bloomLuminanceThresholdEnabled = false;\n\n @io.persist\n @type.float32\n bloomLuminanceThreshold = 0;\n\n @io.persist\n @type.boolean\n bloomLuminanceScaleEnabled = false;\n\n @io.persist\n @type.float32\n bloomLuminanceScale = 0;\n\n @io.persist\n @type.boolean\n bloomSizeScaleEnabled = false;\n\n @io.persist\n @type.float32\n bloomSizeScale = 4;\n\n @io.persist\n @type.boolean\n bloomDirectionalWeightEnabled = false;\n\n @io.persist\n @type.float32\n bloomDirectionalWeight = 0;\n\n @io.persist\n @type.boolean\n bloomStepSize1Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize1 = 0.3;\n\n @io.persist\n @type.boolean\n bloomStepSize2Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize2 = 1;\n\n @io.persist\n @type.boolean\n bloomStepSize3Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize3 = 2;\n\n @io.persist\n @type.boolean\n bloomStepSize4Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize4 = 10;\n\n @io.persist\n @type.boolean\n bloomStepSize5Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize5 = 30;\n\n @io.persist\n @type.boolean\n bloomStepSize6Enabled = false;\n\n @io.persist\n @type.float32\n bloomStepSize6 = 64;\n\n @io.persist\n @type.boolean\n bloomStepTint1Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint1 = vec4.fromValues(0.3465, 0.3465, 0.3465, 0.3465);\n\n @io.persist\n @type.boolean\n bloomStepTint2Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint2 = vec4.fromValues(0.138, 0.138, 0.138, 0.138);\n\n @io.persist\n @type.boolean\n bloomStepTint3Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint3 = vec4.fromValues(0.1176, 0.1176, 0.1176, 0.1176);\n\n @io.persist\n @type.boolean\n bloomStepTint4Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint4 = vec4.fromValues(0.066, 0.066, 0.066, 0.066);\n\n @io.persist\n @type.boolean\n bloomStepTint5Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint5 = vec4.fromValues(0.066, 0.066, 0.066, 0.066);\n\n @io.persist\n @type.boolean\n bloomStepTint6Enabled = false;\n\n @io.persist\n @type.color\n bloomStepTint6 = vec4.fromValues(0.061, 0.061, 0.061, 0.061);\n\n @io.persist\n @type.boolean\n grimeIntensityEnabled = false;\n\n @io.persist\n @type.float32\n grimeIntensity = 0;\n\n @io.persist\n @type.boolean\n grimePathEnabled = false;\n\n @io.persist\n @type.string\n grimePath = \"\";\n\n @io.persist\n @type.boolean\n exposureAdjustmentEnabled = false;\n\n @io.persist\n @type.float32\n exposureAdjustment = 0;\n\n @io.persist\n @type.boolean\n filmGrainIntensityEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainIntensity = 0;\n\n @io.persist\n @type.boolean\n filmGrainSizeEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainSize = 0;\n\n @io.persist\n @type.boolean\n filmGrainDensityEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainDensity = 0;\n\n @io.persist\n @type.boolean\n filmGrainContrastEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainContrast = 0;\n\n @io.persist\n @type.boolean\n filmGrainBrightnessModifierEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainBrightnessModifier = 0;\n\n @io.persist\n @type.boolean\n filmGrainColoredEnabled = false;\n\n @io.persist\n @type.boolean\n filmGrainColored = false;\n\n @io.persist\n @type.boolean\n filmGrainColorAmountEnabled = false;\n\n @io.persist\n @type.float32\n filmGrainColorAmount = 0;\n\n @io.persist\n @type.boolean\n saturationEnabled = false;\n\n @io.persist\n @type.float32\n saturation = 0;\n\n @io.persist\n @type.boolean\n fadeIntensityEnabled = false;\n\n @io.persist\n @type.float32\n fadeIntensity = 0;\n\n @io.persist\n @type.boolean\n fadeColorEnabled = false;\n\n @io.persist\n @type.color\n fadeColor = vec4.fromValues(0, 0, 0, 1);\n\n @io.persist\n @type.boolean\n lutIntensityEnabled = false;\n\n @io.persist\n @type.float32\n lutIntensity = 0;\n\n @io.persist\n @type.boolean\n lutPathEnabled = false;\n\n @io.persist\n @type.string\n lutPath = \"\";\n\n @io.persist\n @type.boolean\n vignetteIntensityEnabled = false;\n\n @io.persist\n @type.float32\n vignetteIntensity = 0;\n\n @io.persist\n @type.boolean\n vignetteOpacityEnabled = false;\n\n @io.persist\n @type.float32\n vignetteOpacity = 0;\n\n @io.persist\n @type.boolean\n vignetteColorEnabled = false;\n\n @io.persist\n @type.color\n vignetteColor = vec4.fromValues(1, 1, 1, 1);\n\n @io.persist\n @type.boolean\n vignetteDetail1SizeEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail1Size = vec2.fromValues(16, 16);\n\n @io.persist\n @type.boolean\n vignetteDetail1ScrollEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail1Scroll = vec2.create();\n\n @io.persist\n @type.boolean\n vignetteDetail2SizeEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail2Size = vec2.fromValues(16, 16);\n\n @io.persist\n @type.boolean\n vignetteDetail2ScrollEnabled = false;\n\n @io.persist\n @type.vec2\n vignetteDetail2Scroll = vec2.create();\n\n @io.persist\n @type.boolean\n vignetteShapePathEnabled = false;\n\n @io.persist\n @type.string\n vignetteShapePath = \"\";\n\n @io.persist\n @type.boolean\n vignetteDetailPathEnabled = false;\n\n @io.persist\n @type.string\n vignetteDetailPath = \"\";\n\n @io.persist\n @type.boolean\n vignetteSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteSineFrequency = 0;\n\n @io.persist\n @type.boolean\n vignetteMinSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteMinSineFrequency = 0;\n\n @io.persist\n @type.boolean\n vignetteMaxSineFrequencyEnabled = false;\n\n @io.persist\n @type.float32\n vignetteMaxSineFrequency = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldScaleEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldScale = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldFocalDistanceEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldFocalDistance = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldFocalLengthEnabled = false;\n\n @io.persist\n @type.float32\n depthOfFieldFocalLength = 0;\n\n @io.persist\n @type.boolean\n depthOfFieldShapeEnabled = false;\n\n @io.persist\n @type.int32\n @schema.enum(\"Shape\")\n depthOfFieldShape = 0;\n\n @io.persist\n @type.boolean\n whiteTemperatureEnabled = false;\n\n @io.persist\n @type.float32\n whiteTemperature = 6500;\n\n @io.persist\n @type.boolean\n whiteTintEnabled = false;\n\n @io.persist\n @type.float32\n whiteTint = 0;\n\n @io.persist\n @type.boolean\n colorSaturationEnabled = false;\n\n @io.persist\n @type.float32\n colorSaturation = 1;\n\n @io.persist\n @type.boolean\n colorContrastEnabled = false;\n\n @io.persist\n @type.float32\n colorContrast = 1;\n\n @io.persist\n @type.boolean\n colorGammaEnabled = false;\n\n @io.persist\n @type.float32\n colorGamma = 1;\n\n @io.persist\n @type.boolean\n colorGainEnabled = false;\n\n @io.persist\n @type.vec3\n colorGain = vec3.fromValues(1, 1, 1);\n\n @io.persist\n @type.boolean\n colorOffsetEnabled = false;\n\n @io.persist\n @type.vec3\n colorOffset = vec3.create();\n\n // Native graph-only members: neither is Blue-exposed.\n prioritizedLuts = new Set();\n\n depthOfFieldForegroundBlurNeededEnabled = false;\n\n depthOfFieldForegroundBlurNeeded = false;\n\n /**\n * Restores every attribute to its default and clears its enable flag, then\n * deliberately re-enables the colour-correction attributes so entering a\n * volume does not interpolate white balance and grading up from zero.\n */\n @carbon.method\n @impl.implemented\n Reset()\n {\n this.intensity = 0;\n this.priority = Tr2PostProcessAttributes.MEDIUM_PRIORITY;\n for (const name of Tr2PostProcessAttributes.AttributeNames)\n {\n this[name] = Tr2PostProcessAttributes.CloneValue(Tr2PostProcessAttributes.DefaultValues[name]);\n this[`${name}Enabled`] = false;\n }\n this.prioritizedLuts.clear();\n\n // Carbon intentionally enables these on Reset to avoid interpolating color\n // correction from zero while entering a post-process volume.\n this.whiteTemperatureEnabled = true;\n this.whiteTintEnabled = true;\n this.colorSaturationEnabled = true;\n this.colorContrastEnabled = true;\n this.colorGammaEnabled = true;\n this.colorGainEnabled = true;\n this.colorOffsetEnabled = true;\n }\n\n /**\n * Captures an authored post-process graph as an attribute set, enabling only the attributes whose source effect passed its own availability gate; the LUT slot is taken from the highest-sorted available LUT.\n * @param {object} postProcess source graph, read through its Get*IfAvailable accessors; null leaves a reset attribute set\n * @param {number} priority the priority band this volume competes in\n * @param {number} intensity this volume's weight within its band\n */\n @carbon.method\n @impl.implemented\n FromPostProcess(postProcess, priority, intensity)\n {\n this.Reset();\n this.intensity = Number(intensity ?? 0);\n this.priority = Number(priority ?? Tr2PostProcessAttributes.MEDIUM_PRIORITY) | 0;\n if (!postProcess) return;\n\n const set = (name, value) => Tr2PostProcessAttributes.CopyValue(this, name, value, true);\n const signalLoss = postProcess.GetSignalLossIfAvailable?.() ?? null;\n if (signalLoss) set(\"signalLossIntensity\", signalLoss.strength);\n\n const bloom = postProcess.GetBloomIfAvailable?.() ?? null;\n if (bloom)\n {\n set(\"bloomBrightness\", bloom.brightness);\n set(\"bloomLuminanceScale\", bloom.luminanceScale);\n set(\"bloomLuminanceThreshold\", bloom.luminanceThreshold);\n set(\"grimeIntensity\", bloom.grimeWeight);\n set(\"grimePath\", bloom.grimePath);\n set(\"bloomSizeScale\", bloom.sizeScale);\n set(\"bloomDirectionalWeight\", bloom.directionalWeight);\n for (let index = 1; index <= 6; index++)\n {\n set(`bloomStepSize${index}`, bloom[`step${index}Size`] ?? bloom.stepSizes?.[index - 1]);\n set(`bloomStepTint${index}`, bloom[`step${index}Tint`] ?? bloom.stepTints?.[index - 1]);\n }\n }\n\n const filmGrain = postProcess.GetFilmGrainIfAvailable?.() ?? null;\n if (filmGrain)\n {\n set(\"filmGrainIntensity\", filmGrain.intensity);\n set(\"filmGrainSize\", filmGrain.grainSize);\n set(\"filmGrainDensity\", filmGrain.grainDensity);\n set(\"filmGrainContrast\", filmGrain.grainContrast);\n set(\"filmGrainBrightnessModifier\", filmGrain.brightnessModifier);\n set(\"filmGrainColored\", filmGrain.colored);\n set(\"filmGrainColorAmount\", filmGrain.colorAmount);\n }\n\n const desaturate = postProcess.GetDesaturateIfAvailable?.() ?? null;\n if (desaturate) set(\"saturation\", Number(desaturate.intensity) - 1);\n\n const fade = postProcess.GetFadeIfAvailable?.() ?? null;\n if (fade)\n {\n set(\"fadeIntensity\", fade.intensity);\n set(\"fadeColor\", fade.color);\n }\n\n const vignette = postProcess.GetVignetteIfAvailable?.() ?? null;\n if (vignette)\n {\n set(\"vignetteIntensity\", vignette.intensity);\n set(\"vignetteOpacity\", vignette.opacity);\n set(\"vignetteColor\", vignette.color);\n set(\"vignetteDetail1Size\", vignette.detail1Size);\n set(\"vignetteDetail1Scroll\", vignette.detail1Scroll);\n set(\"vignetteDetail2Size\", vignette.detail2Size);\n set(\"vignetteDetail2Scroll\", vignette.detail2Scroll);\n set(\"vignetteShapePath\", vignette.shapePath);\n set(\"vignetteDetailPath\", vignette.detailPath);\n set(\"vignetteSineFrequency\", vignette.sineFrequency);\n set(\"vignetteMinSineFrequency\", vignette.sineMinimum);\n set(\"vignetteMaxSineFrequency\", vignette.sineMaximum);\n }\n\n const depthOfField = postProcess.GetDepthOfFieldIfAvailable?.() ?? null;\n if (depthOfField)\n {\n set(\"depthOfFieldScale\", depthOfField.scale);\n set(\"depthOfFieldFocalDistance\", depthOfField.focalDistance);\n set(\"depthOfFieldFocalLength\", depthOfField.focalLength);\n set(\"depthOfFieldShape\", depthOfField.bokehShape);\n }\n\n const luts = postProcess.GetAvilableSortedLuts?.([]) ?? [];\n if (luts.length)\n {\n set(\"lutIntensity\", luts[0].influence);\n set(\"lutPath\", luts[0].path);\n }\n\n const colorCorrection = postProcess.GetColorCorrectionIfAvailable?.() ?? null;\n if (colorCorrection)\n {\n set(\"whiteTemperature\", colorCorrection.whiteTemperature);\n set(\"whiteTint\", colorCorrection.whiteTint);\n set(\"colorSaturation\", colorCorrection.colorSaturation);\n set(\"colorContrast\", colorCorrection.colorContrast);\n set(\"colorGamma\", colorCorrection.colorGamma);\n set(\"colorGain\", colorCorrection.colorGain);\n set(\"colorOffset\", colorCorrection.colorOffset);\n }\n }\n\n static Priority = Object.freeze({\n SCENE_DEFAULT_PRIORITY: 0,\n LOW_PRIORITY: 1,\n MEDIUM_PRIORITY: 2,\n HIGH_PRIORITY: 3,\n UI_PRIORITY: 4,\n PRIORITY_COUNT: 5\n });\n\n static AttributeType = Object.freeze({\n SIGNAL_LOSS_INTENSITY: 0,\n BLOOM_BRIGHTNESS: 1,\n BLOOM_LUMINANCE_THRESHOLD: 2,\n BLOOM_LUMINANCE_SCALE: 3,\n GRIME_INTENSITY: 4,\n GRIME_PATH: 5,\n FILM_GRAIN_INTENSITY: 6,\n FILM_GRAIN_SIZE: 7,\n FILM_GRAIN_DENSITY: 8,\n FILM_GRAIN_CONTRAST: 9,\n FILM_GRAIN_BRIGHTNESS_MODIFIER: 10,\n FILM_GRAIN_COLORED: 11,\n FILM_GRAIN_COLOR_AMOUNT: 12,\n SATURATION: 13,\n FADE_INTENSITY: 14,\n FADE_COLOR: 15,\n LUT_INTENSITY: 16,\n LUT_PATH: 17,\n VIGNETTE_INTENSITY: 18,\n VIGNETTE_OPACITY: 19,\n VIGNETTE_COLOR: 20,\n VIGNETTE_DETAIL1_SIZE: 21,\n VIGNETTE_DETAIL1_SCROLL: 22,\n VIGNETTE_DETAIL2_SIZE: 23,\n VIGNETTE_DETAIL2_SCROLL: 24,\n VIGNETTE_SHAPE_PATH: 25,\n VIGNETTE_DETAIL_PATH: 26,\n VIGNETTE_SINE_FREQUENCY: 27,\n VIGNETTE_MIN_SINE_FREQUENCY: 28,\n VIGNETTE_MAX_SINE_FREQUENCY: 29,\n DEPTH_OF_FIELD_SCALE: 30,\n DEPTH_OF_FIELD_FOCAL_DISTANCE: 31,\n DEPTH_OF_FIELD_FOCAL_LENGTH: 32,\n DEPTH_OF_FIELD_SHAPE: 33,\n WHITE_TEMPERATURE: 34,\n WHITE_TINT: 35,\n COLOR_SATURATION: 36,\n COLOR_CONTRAST: 37,\n COLOR_GAMMA: 38,\n COLOR_GAIN: 39,\n COLOR_OFFSET: 40,\n POST_PROCESS_ATTRIBUTE_TYPE_COUNT: 41\n });\n\n static SCENE_DEFAULT_PRIORITY = 0;\n\n static LOW_PRIORITY = 1;\n\n static MEDIUM_PRIORITY = 2;\n\n static HIGH_PRIORITY = 3;\n\n static UI_PRIORITY = 4;\n\n static PRIORITY_COUNT = 5;\n\n static AttributeNames = Object.freeze([\n \"signalLossIntensity\",\n \"bloomBrightness\", \"bloomLuminanceThreshold\", \"bloomLuminanceScale\", \"bloomSizeScale\", \"bloomDirectionalWeight\",\n \"bloomStepSize1\", \"bloomStepSize2\", \"bloomStepSize3\", \"bloomStepSize4\", \"bloomStepSize5\", \"bloomStepSize6\",\n \"bloomStepTint1\", \"bloomStepTint2\", \"bloomStepTint3\", \"bloomStepTint4\", \"bloomStepTint5\", \"bloomStepTint6\",\n \"grimeIntensity\", \"grimePath\", \"exposureAdjustment\",\n \"filmGrainIntensity\", \"filmGrainSize\", \"filmGrainDensity\", \"filmGrainContrast\", \"filmGrainBrightnessModifier\", \"filmGrainColored\", \"filmGrainColorAmount\",\n \"saturation\", \"fadeIntensity\", \"fadeColor\", \"lutIntensity\", \"lutPath\",\n \"vignetteIntensity\", \"vignetteOpacity\", \"vignetteColor\", \"vignetteDetail1Size\", \"vignetteDetail1Scroll\", \"vignetteDetail2Size\", \"vignetteDetail2Scroll\",\n \"vignetteShapePath\", \"vignetteDetailPath\", \"vignetteSineFrequency\", \"vignetteMinSineFrequency\", \"vignetteMaxSineFrequency\",\n \"depthOfFieldScale\", \"depthOfFieldFocalDistance\", \"depthOfFieldFocalLength\", \"depthOfFieldShape\",\n \"whiteTemperature\", \"whiteTint\", \"colorSaturation\", \"colorContrast\", \"colorGamma\", \"colorGain\", \"colorOffset\"\n ]);\n\n static DefaultValues = Object.freeze({\n signalLossIntensity: 0,\n bloomBrightness: 0,\n bloomLuminanceThreshold: 0,\n bloomLuminanceScale: 0,\n bloomSizeScale: 4,\n bloomDirectionalWeight: 0,\n bloomStepSize1: 0.3,\n bloomStepSize2: 1,\n bloomStepSize3: 2,\n bloomStepSize4: 10,\n bloomStepSize5: 30,\n bloomStepSize6: 64,\n bloomStepTint1: vec4.fromValues(0.3465, 0.3465, 0.3465, 0.3465),\n bloomStepTint2: vec4.fromValues(0.138, 0.138, 0.138, 0.138),\n bloomStepTint3: vec4.fromValues(0.1176, 0.1176, 0.1176, 0.1176),\n bloomStepTint4: vec4.fromValues(0.066, 0.066, 0.066, 0.066),\n bloomStepTint5: vec4.fromValues(0.066, 0.066, 0.066, 0.066),\n bloomStepTint6: vec4.fromValues(0.061, 0.061, 0.061, 0.061),\n grimeIntensity: 0,\n grimePath: \"\",\n exposureAdjustment: 0,\n filmGrainIntensity: 0,\n filmGrainSize: 0,\n filmGrainDensity: 0,\n filmGrainContrast: 0,\n filmGrainBrightnessModifier: 0,\n filmGrainColored: false,\n filmGrainColorAmount: 0,\n saturation: 0,\n fadeIntensity: 0,\n fadeColor: vec4.fromValues(0, 0, 0, 1),\n lutIntensity: 0,\n lutPath: \"\",\n vignetteIntensity: 0,\n vignetteOpacity: 0,\n vignetteColor: vec4.fromValues(1, 1, 1, 1),\n vignetteDetail1Size: vec2.fromValues(16, 16),\n vignetteDetail1Scroll: vec2.create(),\n vignetteDetail2Size: vec2.fromValues(16, 16),\n vignetteDetail2Scroll: vec2.create(),\n vignetteShapePath: \"\",\n vignetteDetailPath: \"\",\n vignetteSineFrequency: 0,\n vignetteMinSineFrequency: 0,\n vignetteMaxSineFrequency: 0,\n depthOfFieldScale: 0,\n depthOfFieldFocalDistance: 0,\n depthOfFieldFocalLength: 0,\n depthOfFieldShape: 0,\n depthOfFieldForegroundBlurNeeded: false,\n whiteTemperature: 6500,\n whiteTint: 0,\n colorSaturation: 1,\n colorContrast: 1,\n colorGamma: 1,\n colorGain: vec3.fromValues(1, 1, 1),\n colorOffset: vec3.create()\n });\n\n static MaxWeightAttributes = Object.freeze(new Set([\n \"grimePath\", \"filmGrainColored\", \"vignetteShapePath\", \"vignetteDetailPath\", \"depthOfFieldShape\", \"depthOfFieldForegroundBlurNeeded\"\n ]));\n\n /**\n * Copies typed-array attribute values so callers never alias a shared default;\n * scalars, strings and booleans pass through unchanged.\n */\n static CloneValue(value)\n {\n return ArrayBuffer.isView(value) ? new value.constructor(value) : value;\n }\n\n /**\n * Writes an attribute value and its matching `<name>Enabled` flag together,\n * cloning the value first.\n */\n static CopyValue(target, name, value, enabled = true)\n {\n target[name] = Tr2PostProcessAttributes.CloneValue(value);\n target[`${name}Enabled`] = enabled;\n }\n\n /**\n * Accumulates value * weight into an accumulator, allocating a Float32Array on first use for vector attributes and adding numerically otherwise.\n * @param {*} result accumulator so far, or null to start a new one\n * @returns {*} the accumulator, which for vectors is the same array on later calls\n */\n static AddWeighted(result, value, weight)\n {\n if (ArrayBuffer.isView(value) || Array.isArray(value))\n {\n if (!result) result = new Float32Array(value.length);\n for (let index = 0; index < value.length; index++) result[index] += Number(value[index]) * weight;\n return result;\n }\n return Number(result ?? 0) + Number(value ?? 0) * weight;\n }\n\n /**\n * Returns the neutral starting value for an attribute, typed from its default:\n * a zeroed Float32Array, an empty string, false, or 0.\n */\n static ZeroValue(name)\n {\n const value = Tr2PostProcessAttributes.DefaultValues[name];\n if (ArrayBuffer.isView(value)) return new Float32Array(value.length);\n if (typeof value === \"string\") return \"\";\n if (typeof value === \"boolean\") return false;\n return 0;\n }\n\n /**\n * Creates the observer the accumulation passes report into, recording per\n * attribute which sources influenced it, at what weight, and the value that\n * came out; GetDict returns that record keyed by attribute name.\n */\n static CreateDebugObserver()\n {\n const records = {};\n let current = null;\n return {\n BeginAttribute(name)\n {\n current = { name, influencers: [] };\n records[name] = current;\n },\n Influence(attributes, weight)\n {\n current?.influencers.push({ attributes, weight });\n },\n EndAttribute(value)\n {\n if (current) current.value = Tr2PostProcessAttributes.CloneDebugValue(value);\n current = null;\n },\n GetDict()\n {\n return records;\n }\n };\n }\n\n /**\n * Snapshots a value into the debug record so later mutation of the accumulator\n * cannot rewrite what was reported.\n */\n static CloneDebugValue(value)\n {\n if (ArrayBuffer.isView(value)) return new value.constructor(value);\n if (Array.isArray(value)) return value.map(item => ({ ...item }));\n return value;\n }\n\n /**\n * Opens the debug record for one attribute; a null observer makes this a\n * no-op, which is the normal non-debug path.\n */\n static BeginDebug(observer, name)\n {\n observer?.BeginAttribute?.(name);\n }\n\n /**\n * Records that one source contributed to the open attribute at the given\n * weight.\n */\n static DebugInfluence(observer, source, weight)\n {\n observer?.Influence?.(source, weight);\n }\n\n /**\n * Closes the open attribute's debug record with the value the accumulation\n * produced.\n */\n static EndDebug(observer, value)\n {\n observer?.EndAttribute?.(value);\n }\n\n /**\n * Blends one attribute across the sources band by band: within a band the enabled sources' intensities are normalized against the weight still unspent, and the results are either summed or, for max-weight attributes, resolved to the single highest-weighted value. Bands stop contributing once the remaining weight is used up.\n * @param {Array} sources must already be ordered by priority - runs of equal priority are treated as one band\n * @param {boolean} [maxWeight] pick-one rather than sum; defaults to whether the attribute is in MaxWeightAttributes, which covers paths, enums and booleans that cannot be interpolated\n * @returns {*} a freshly cloned value, never an alias of a source\n */\n static Accumulate(name, sources, maxWeight = Tr2PostProcessAttributes.MaxWeightAttributes.has(name), observer = null)\n {\n let remainingWeight = 1;\n let result = maxWeight ? Tr2PostProcessAttributes.ZeroValue(name) : null;\n let bestWeight = 0;\n Tr2PostProcessAttributes.BeginDebug(observer, name);\n\n for (let first = 0; first < sources.length;)\n {\n let last = first + 1;\n while (last < sources.length && sources[last].priority === sources[first].priority) last++;\n\n let totalPriorityIntensity = 0;\n for (let index = first; index < last; index++)\n {\n if (sources[index]?.[`${name}Enabled`]) totalPriorityIntensity += Number(sources[index].intensity);\n }\n if (totalPriorityIntensity !== 0)\n {\n const normalization = remainingWeight / Math.max(totalPriorityIntensity, 1);\n for (let index = first; index < last; index++)\n {\n const source = sources[index];\n if (!source?.[`${name}Enabled`]) continue;\n const weight = Number(source.intensity) * normalization;\n if (maxWeight)\n {\n if (weight > bestWeight)\n {\n bestWeight = weight;\n result = source[name];\n }\n }\n else\n {\n result = Tr2PostProcessAttributes.AddWeighted(result, source[name], weight);\n }\n Tr2PostProcessAttributes.DebugInfluence(observer, source, weight);\n }\n remainingWeight -= totalPriorityIntensity;\n if (remainingWeight <= 0) break;\n }\n first = last;\n }\n const finalValue = Tr2PostProcessAttributes.CloneValue(result ?? Tr2PostProcessAttributes.ZeroValue(name));\n Tr2PostProcessAttributes.EndDebug(observer, finalValue);\n return finalValue;\n }\n\n /**\n * Blends LUT paths over the same priority bands as Accumulate, but keeps up to four distinct paths instead of one, merging repeats and ranking by weight.\n * @returns {Array<{value: string, weight: number}>} the kept paths, weights renormalized to sum to 1\n */\n static AccumulateLuts(sources, observer = null)\n {\n let remainingWeight = 1;\n const values = [];\n Tr2PostProcessAttributes.BeginDebug(observer, \"lutPath\");\n for (let first = 0; first < sources.length;)\n {\n let last = first + 1;\n while (last < sources.length && sources[last].priority === sources[first].priority) last++;\n let totalPriorityIntensity = 0;\n for (let index = first; index < last; index++)\n {\n if (sources[index]?.lutPathEnabled) totalPriorityIntensity += Number(sources[index].intensity);\n }\n if (totalPriorityIntensity !== 0)\n {\n const normalization = remainingWeight / Math.max(totalPriorityIntensity, 1);\n for (let index = first; index < last; index++)\n {\n const source = sources[index];\n if (!source?.lutPathEnabled) continue;\n const weight = Number(source.intensity) * normalization;\n const existing = values.find(item => item.value === source.lutPath);\n if (existing)\n {\n existing.weight += weight;\n }\n else if (values.length < 4)\n {\n values.push({ value: source.lutPath, weight });\n values.sort((a, b) => b.weight - a.weight);\n }\n else\n {\n const insertAt = values.findIndex(item => weight > item.weight);\n if (insertAt !== -1) values.splice(insertAt, 0, { value: source.lutPath, weight });\n values.length = 4;\n }\n Tr2PostProcessAttributes.DebugInfluence(observer, source, weight);\n }\n remainingWeight -= totalPriorityIntensity;\n if (remainingWeight <= 0) break;\n }\n first = last;\n }\n const total = values.reduce((sum, item) => sum + item.weight, 0);\n if (total > 0) for (const item of values) item.weight /= total;\n Tr2PostProcessAttributes.EndDebug(observer, values);\n return values;\n }\n\n /**\n * Installs an effect on a post-process through its Set<Name> method when it\n * has one, and otherwise by writing the lower-camel-case property of the same\n * name.\n */\n static SetEffect(postProcess, name, effect)\n {\n const method = postProcess[`Set${name}`];\n if (typeof method === \"function\") method.call(postProcess, effect);\n else postProcess[name.charAt(0).toLowerCase() + name.slice(1)] = effect;\n }\n\n /**\n * Rebuilds a post-process graph from blended attribute sources: every effect slot and the LUT list are cleared first, then only the effects whose driving attribute blended to a non-zero value are recreated, so a slot left empty means nothing asked for it.\n * @param {Array} sources attribute sets ordered by priority, as Accumulate requires\n * @returns {object} the same post-process instance that was passed in\n */\n static MergeInto(postProcess, sources, debugObserver = null)\n {\n const values = new Map();\n for (const name of Tr2PostProcessAttributes.AttributeNames)\n {\n if (name !== \"lutPath\") values.set(name, Tr2PostProcessAttributes.Accumulate(name, sources, undefined, debugObserver));\n }\n values.set(\"depthOfFieldForegroundBlurNeeded\", Tr2PostProcessAttributes.Accumulate(\"depthOfFieldForegroundBlurNeeded\", sources, true, debugObserver));\n const lutPaths = Tr2PostProcessAttributes.AccumulateLuts(sources, debugObserver);\n const value = name => values.get(name);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Desaturate\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Fade\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"FilmGrain\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"SignalLoss\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Vignette\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"DepthOfField\", null);\n Tr2PostProcessAttributes.SetEffect(postProcess, \"ColorCorrection\", null);\n postProcess.ClearLuts?.();\n if (!postProcess.ClearLuts) postProcess.luts.length = 0;\n\n const signalLossIntensity = value(\"signalLossIntensity\");\n if (signalLossIntensity > 0)\n {\n const effect = new Tr2PPSignalLossEffect();\n effect.strength = signalLossIntensity;\n Tr2PostProcessAttributes.SetEffect(postProcess, \"SignalLoss\", effect);\n }\n\n const bloomBrightness = value(\"bloomBrightness\");\n if (bloomBrightness > 0)\n {\n const effect = new Tr2PPBloomEffect();\n effect.brightness = bloomBrightness;\n effect.luminanceThreshold = value(\"bloomLuminanceThreshold\");\n effect.luminanceScale = value(\"bloomLuminanceScale\");\n effect.sizeScale = value(\"bloomSizeScale\");\n effect.directionalWeight = value(\"bloomDirectionalWeight\");\n for (let index = 1; index <= 6; index++)\n {\n effect[`step${index}Size`] = value(`bloomStepSize${index}`);\n effect[`step${index}Tint`] = value(`bloomStepTint${index}`);\n }\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", effect);\n }\n\n const grimeIntensity = value(\"grimeIntensity\");\n if (grimeIntensity > 0)\n {\n const effect = postProcess.GetBloomIfAvailable?.() ?? postProcess.bloom ?? new Tr2PPBloomEffect();\n effect.grimeWeight = grimeIntensity;\n effect.grimePath = value(\"grimePath\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Bloom\", effect);\n }\n\n const filmGrainIntensity = value(\"filmGrainIntensity\");\n if (filmGrainIntensity > 0)\n {\n const effect = new Tr2PPFilmGrainEffect();\n effect.intensity = filmGrainIntensity;\n effect.grainSize = value(\"filmGrainSize\");\n effect.grainDensity = value(\"filmGrainDensity\");\n effect.grainContrast = value(\"filmGrainContrast\");\n effect.brightnessModifier = value(\"filmGrainBrightnessModifier\");\n effect.colored = value(\"filmGrainColored\");\n effect.colorAmount = value(\"filmGrainColorAmount\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"FilmGrain\", effect);\n }\n\n const saturation = value(\"saturation\");\n if (saturation !== 0)\n {\n const effect = new Tr2PPDesaturateEffect();\n effect.intensity = saturation + 1;\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Desaturate\", effect);\n }\n\n const fadeIntensity = value(\"fadeIntensity\");\n if (fadeIntensity > 0)\n {\n const effect = new Tr2PPFadeEffect();\n effect.intensity = fadeIntensity;\n effect.color = value(\"fadeColor\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Fade\", effect);\n }\n\n const lutIntensity = value(\"lutIntensity\");\n for (const lut of lutPaths)\n {\n const effect = new Tr2PPLutEffect();\n effect.influence = lut.weight * lutIntensity;\n effect.path = lut.value;\n if (postProcess.AddLut) postProcess.AddLut(effect);\n else postProcess.luts.push(effect);\n }\n\n const vignetteIntensity = value(\"vignetteIntensity\");\n if (vignetteIntensity > 0)\n {\n const effect = new Tr2PPVignetteEffect();\n effect.intensity = vignetteIntensity;\n effect.opacity = value(\"vignetteOpacity\");\n effect.color = value(\"vignetteColor\");\n effect.detail1Size = value(\"vignetteDetail1Size\");\n effect.detail1Scroll = value(\"vignetteDetail1Scroll\");\n effect.detail2Size = value(\"vignetteDetail2Size\");\n effect.detail2Scroll = value(\"vignetteDetail2Scroll\");\n effect.shapePath = value(\"vignetteShapePath\");\n effect.detailPath = value(\"vignetteDetailPath\");\n effect.sineFrequency = value(\"vignetteSineFrequency\");\n effect.sineMinimum = value(\"vignetteMinSineFrequency\");\n effect.sineMaximum = value(\"vignetteMaxSineFrequency\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"Vignette\", effect);\n }\n\n const depthOfFieldScale = value(\"depthOfFieldScale\");\n if (depthOfFieldScale > 0)\n {\n const effect = new Tr2PPDepthOfFieldEffect();\n effect.scale = depthOfFieldScale;\n effect.cocScale = 1;\n effect.focalDistance = value(\"depthOfFieldFocalDistance\");\n effect.focalLength = value(\"depthOfFieldFocalLength\");\n effect.bokehShape = value(\"depthOfFieldShape\");\n effect.foregroundBlurNeeded = value(\"depthOfFieldForegroundBlurNeeded\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"DepthOfField\", effect);\n }\n\n postProcess.exposureAdjustment = value(\"exposureAdjustment\");\n const whiteTemperature = value(\"whiteTemperature\");\n if (whiteTemperature > 0)\n {\n const effect = new Tr2PPColorCorrectionEffect();\n effect.whiteTemperature = whiteTemperature;\n effect.whiteTint = value(\"whiteTint\");\n effect.colorSaturation = value(\"colorSaturation\");\n effect.colorContrast = value(\"colorContrast\");\n effect.colorGamma = value(\"colorGamma\");\n effect.colorGain = value(\"colorGain\");\n effect.colorOffset = value(\"colorOffset\");\n Tr2PostProcessAttributes.SetEffect(postProcess, \"ColorCorrection\", effect);\n }\n return postProcess;\n }\n\n static Shape = Object.freeze({\n Disk: 0,\n Triangle: 1,\n Rectangle: 2,\n Pentagon: 3,\n Hexagon: 4,\n Heart: 5\n });\n\n}\n"],"names":["_Tr2PostProcessAttrib","_identity","Tr2PostProcessAttributes","CjsModel","e","_init_priority","_init_extra_priority","_init_intensity","_init_extra_intensity","_init_signalLossIntensityEnabled","_init_extra_signalLossIntensityEnabled","_init_signalLossIntensity","_init_extra_signalLossIntensity","_init_bloomBrightnessEnabled","_init_extra_bloomBrightnessEnabled","_init_bloomBrightness","_init_extra_bloomBrightness","_init_bloomLuminanceThresholdEnabled","_init_extra_bloomLuminanceThresholdEnabled","_init_bloomLuminanceThreshold","_init_extra_bloomLuminanceThreshold","_init_bloomLuminanceScaleEnabled","_init_extra_bloomLuminanceScaleEnabled","_init_bloomLuminanceScale","_init_extra_bloomLuminanceScale","_init_bloomSizeScaleEnabled","_init_extra_bloomSizeScaleEnabled","_init_bloomSizeScale","_init_extra_bloomSizeScale","_init_bloomDirectionalWeightEnabled","_init_extra_bloomDirectionalWeightEnabled","_init_bloomDirectionalWeight","_init_extra_bloomDirectionalWeight","_init_bloomStepSize1Enabled","_init_extra_bloomStepSize1Enabled","_init_bloomStepSize","_init_extra_bloomStepSize","_init_bloomStepSize2Enabled","_init_extra_bloomStepSize2Enabled","_init_bloomStepSize2","_init_extra_bloomStepSize2","_init_bloomStepSize3Enabled","_init_extra_bloomStepSize3Enabled","_init_bloomStepSize3","_init_extra_bloomStepSize3","_init_bloomStepSize4Enabled","_init_extra_bloomStepSize4Enabled","_init_bloomStepSize4","_init_extra_bloomStepSize4","_init_bloomStepSize5Enabled","_init_extra_bloomStepSize5Enabled","_init_bloomStepSize5","_init_extra_bloomStepSize5","_init_bloomStepSize6Enabled","_init_extra_bloomStepSize6Enabled","_init_bloomStepSize6","_init_extra_bloomStepSize6","_init_bloomStepTint1Enabled","_init_extra_bloomStepTint1Enabled","_init_bloomStepTint","_init_extra_bloomStepTint","_init_bloomStepTint2Enabled","_init_extra_bloomStepTint2Enabled","_init_bloomStepTint2","_init_extra_bloomStepTint2","_init_bloomStepTint3Enabled","_init_extra_bloomStepTint3Enabled","_init_bloomStepTint3","_init_extra_bloomStepTint3","_init_bloomStepTint4Enabled","_init_extra_bloomStepTint4Enabled","_init_bloomStepTint4","_init_extra_bloomStepTint4","_init_bloomStepTint5Enabled","_init_extra_bloomStepTint5Enabled","_init_bloomStepTint5","_init_extra_bloomStepTint5","_init_bloomStepTint6Enabled","_init_extra_bloomStepTint6Enabled","_init_bloomStepTint6","_init_extra_bloomStepTint6","_init_grimeIntensityEnabled","_init_extra_grimeIntensityEnabled","_init_grimeIntensity","_init_extra_grimeIntensity","_init_grimePathEnabled","_init_extra_grimePathEnabled","_init_grimePath","_init_extra_grimePath","_init_exposureAdjustmentEnabled","_init_extra_exposureAdjustmentEnabled","_init_exposureAdjustment","_init_extra_exposureAdjustment","_init_filmGrainIntensityEnabled","_init_extra_filmGrainIntensityEnabled","_init_filmGrainIntensity","_init_extra_filmGrainIntensity","_init_filmGrainSizeEnabled","_init_extra_filmGrainSizeEnabled","_init_filmGrainSize","_init_extra_filmGrainSize","_init_filmGrainDensityEnabled","_init_extra_filmGrainDensityEnabled","_init_filmGrainDensity","_init_extra_filmGrainDensity","_init_filmGrainContrastEnabled","_init_extra_filmGrainContrastEnabled","_init_filmGrainContrast","_init_extra_filmGrainContrast","_init_filmGrainBrightnessModifierEnabled","_init_extra_filmGrainBrightnessModifierEnabled","_init_filmGrainBrightnessModifier","_init_extra_filmGrainBrightnessModifier","_init_filmGrainColoredEnabled","_init_extra_filmGrainColoredEnabled","_init_filmGrainColored","_init_extra_filmGrainColored","_init_filmGrainColorAmountEnabled","_init_extra_filmGrainColorAmountEnabled","_init_filmGrainColorAmount","_init_extra_filmGrainColorAmount","_init_saturationEnabled","_init_extra_saturationEnabled","_init_saturation","_init_extra_saturation","_init_fadeIntensityEnabled","_init_extra_fadeIntensityEnabled","_init_fadeIntensity","_init_extra_fadeIntensity","_init_fadeColorEnabled","_init_extra_fadeColorEnabled","_init_fadeColor","_init_extra_fadeColor","_init_lutIntensityEnabled","_init_extra_lutIntensityEnabled","_init_lutIntensity","_init_extra_lutIntensity","_init_lutPathEnabled","_init_extra_lutPathEnabled","_init_lutPath","_init_extra_lutPath","_init_vignetteIntensityEnabled","_init_extra_vignetteIntensityEnabled","_init_vignetteIntensity","_init_extra_vignetteIntensity","_init_vignetteOpacityEnabled","_init_extra_vignetteOpacityEnabled","_init_vignetteOpacity","_init_extra_vignetteOpacity","_init_vignetteColorEnabled","_init_extra_vignetteColorEnabled","_init_vignetteColor","_init_extra_vignetteColor","_init_vignetteDetail1SizeEnabled","_init_extra_vignetteDetail1SizeEnabled","_init_vignetteDetail1Size","_init_extra_vignetteDetail1Size","_init_vignetteDetail1ScrollEnabled","_init_extra_vignetteDetail1ScrollEnabled","_init_vignetteDetail1Scroll","_init_extra_vignetteDetail1Scroll","_init_vignetteDetail2SizeEnabled","_init_extra_vignetteDetail2SizeEnabled","_init_vignetteDetail2Size","_init_extra_vignetteDetail2Size","_init_vignetteDetail2ScrollEnabled","_init_extra_vignetteDetail2ScrollEnabled","_init_vignetteDetail2Scroll","_init_extra_vignetteDetail2Scroll","_init_vignetteShapePathEnabled","_init_extra_vignetteShapePathEnabled","_init_vignetteShapePath","_init_extra_vignetteShapePath","_init_vignetteDetailPathEnabled","_init_extra_vignetteDetailPathEnabled","_init_vignetteDetailPath","_init_extra_vignetteDetailPath","_init_vignetteSineFrequencyEnabled","_init_extra_vignetteSineFrequencyEnabled","_init_vignetteSineFrequency","_init_extra_vignetteSineFrequency","_init_vignetteMinSineFrequencyEnabled","_init_extra_vignetteMinSineFrequencyEnabled","_init_vignetteMinSineFrequency","_init_extra_vignetteMinSineFrequency","_init_vignetteMaxSineFrequencyEnabled","_init_extra_vignetteMaxSineFrequencyEnabled","_init_vignetteMaxSineFrequency","_init_extra_vignetteMaxSineFrequency","_init_depthOfFieldScaleEnabled","_init_extra_depthOfFieldScaleEnabled","_init_depthOfFieldScale","_init_extra_depthOfFieldScale","_init_depthOfFieldFocalDistanceEnabled","_init_extra_depthOfFieldFocalDistanceEnabled","_init_depthOfFieldFocalDistance","_init_extra_depthOfFieldFocalDistance","_init_depthOfFieldFocalLengthEnabled","_init_extra_depthOfFieldFocalLengthEnabled","_init_depthOfFieldFocalLength","_init_extra_depthOfFieldFocalLength","_init_depthOfFieldShapeEnabled","_init_extra_depthOfFieldShapeEnabled","_init_depthOfFieldShape","_init_extra_depthOfFieldShape","_init_whiteTemperatureEnabled","_init_extra_whiteTemperatureEnabled","_init_whiteTemperature","_init_extra_whiteTemperature","_init_whiteTintEnabled","_init_extra_whiteTintEnabled","_init_whiteTint","_init_extra_whiteTint","_init_colorSaturationEnabled","_init_extra_colorSaturationEnabled","_init_colorSaturation","_init_extra_colorSaturation","_init_colorContrastEnabled","_init_extra_colorContrastEnabled","_init_colorContrast","_init_extra_colorContrast","_init_colorGammaEnabled","_init_extra_colorGammaEnabled","_init_colorGamma","_init_extra_colorGamma","_init_colorGainEnabled","_init_extra_colorGainEnabled","_init_colorGain","_init_extra_colorGain","_init_colorOffsetEnabled","_init_extra_colorOffsetEnabled","_init_colorOffset","_init_extra_colorOffset","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","int32","schema","enum","read","float32","boolean","color","string","vec2","vec3","carbon","method","impl","implemented","priority","MEDIUM_PRIORITY","intensity","signalLossIntensityEnabled","signalLossIntensity","bloomBrightnessEnabled","bloomBrightness","bloomLuminanceThresholdEnabled","bloomLuminanceThreshold","bloomLuminanceScaleEnabled","bloomLuminanceScale","bloomSizeScaleEnabled","bloomSizeScale","bloomDirectionalWeightEnabled","bloomDirectionalWeight","bloomStepSize1Enabled","bloomStepSize1","bloomStepSize2Enabled","bloomStepSize2","bloomStepSize3Enabled","bloomStepSize3","bloomStepSize4Enabled","bloomStepSize4","bloomStepSize5Enabled","bloomStepSize5","bloomStepSize6Enabled","bloomStepSize6","bloomStepTint1Enabled","bloomStepTint1","vec4","fromValues","bloomStepTint2Enabled","bloomStepTint2","bloomStepTint3Enabled","bloomStepTint3","bloomStepTint4Enabled","bloomStepTint4","bloomStepTint5Enabled","bloomStepTint5","bloomStepTint6Enabled","bloomStepTint6","grimeIntensityEnabled","grimeIntensity","grimePathEnabled","grimePath","exposureAdjustmentEnabled","exposureAdjustment","filmGrainIntensityEnabled","filmGrainIntensity","filmGrainSizeEnabled","filmGrainSize","filmGrainDensityEnabled","filmGrainDensity","filmGrainContrastEnabled","filmGrainContrast","filmGrainBrightnessModifierEnabled","filmGrainBrightnessModifier","filmGrainColoredEnabled","filmGrainColored","filmGrainColorAmountEnabled","filmGrainColorAmount","saturationEnabled","saturation","fadeIntensityEnabled","fadeIntensity","fadeColorEnabled","fadeColor","lutIntensityEnabled","lutIntensity","lutPathEnabled","lutPath","vignetteIntensityEnabled","vignetteIntensity","vignetteOpacityEnabled","vignetteOpacity","vignetteColorEnabled","vignetteColor","vignetteDetail1SizeEnabled","vignetteDetail1Size","vignetteDetail1ScrollEnabled","vignetteDetail1Scroll","create","vignetteDetail2SizeEnabled","vignetteDetail2Size","vignetteDetail2ScrollEnabled","vignetteDetail2Scroll","vignetteShapePathEnabled","vignetteShapePath","vignetteDetailPathEnabled","vignetteDetailPath","vignetteSineFrequencyEnabled","vignetteSineFrequency","vignetteMinSineFrequencyEnabled","vignetteMinSineFrequency","vignetteMaxSineFrequencyEnabled","vignetteMaxSineFrequency","depthOfFieldScaleEnabled","depthOfFieldScale","depthOfFieldFocalDistanceEnabled","depthOfFieldFocalDistance","depthOfFieldFocalLengthEnabled","depthOfFieldFocalLength","depthOfFieldShapeEnabled","depthOfFieldShape","whiteTemperatureEnabled","whiteTemperature","whiteTintEnabled","whiteTint","colorSaturationEnabled","colorSaturation","colorContrastEnabled","colorContrast","colorGammaEnabled","colorGamma","colorGainEnabled","colorGain","colorOffsetEnabled","colorOffset","prioritizedLuts","Set","depthOfFieldForegroundBlurNeededEnabled","depthOfFieldForegroundBlurNeeded","Reset","name","AttributeNames","CloneValue","DefaultValues","clear","FromPostProcess","postProcess","Number","set","value","CopyValue","signalLoss","GetSignalLossIfAvailable","strength","bloom","GetBloomIfAvailable","brightness","luminanceScale","luminanceThreshold","grimeWeight","sizeScale","directionalWeight","index","stepSizes","stepTints","filmGrain","GetFilmGrainIfAvailable","grainSize","grainDensity","grainContrast","brightnessModifier","colored","colorAmount","desaturate","GetDesaturateIfAvailable","fade","GetFadeIfAvailable","vignette","GetVignetteIfAvailable","opacity","detail1Size","detail1Scroll","detail2Size","detail2Scroll","shapePath","detailPath","sineFrequency","sineMinimum","sineMaximum","depthOfField","GetDepthOfFieldIfAvailable","scale","focalDistance","focalLength","bokehShape","luts","GetAvilableSortedLuts","length","influence","path","colorCorrection","GetColorCorrectionIfAvailable","ArrayBuffer","isView","constructor","target","enabled","AddWeighted","result","weight","Array","isArray","Float32Array","ZeroValue","CreateDebugObserver","records","current","BeginAttribute","influencers","Influence","attributes","push","EndAttribute","CloneDebugValue","GetDict","map","item","BeginDebug","observer","DebugInfluence","source","EndDebug","Accumulate","sources","maxWeight","MaxWeightAttributes","has","remainingWeight","bestWeight","first","last","totalPriorityIntensity","normalization","Math","max","finalValue","AccumulateLuts","values","existing","find","sort","a","b","insertAt","findIndex","splice","total","reduce","sum","SetEffect","effect","call","charAt","toLowerCase","slice","MergeInto","debugObserver","Map","undefined","lutPaths","get","ClearLuts","Tr2PPSignalLossEffect","Tr2PPBloomEffect","Tr2PPFilmGrainEffect","Tr2PPDesaturateEffect","Tr2PPFadeEffect","lut","Tr2PPLutEffect","AddLut","Tr2PPVignetteEffect","Tr2PPDepthOfFieldEffect","cocScale","foregroundBlurNeeded","Tr2PPColorCorrectionEffect","Priority","Object","freeze","SCENE_DEFAULT_PRIORITY","LOW_PRIORITY","HIGH_PRIORITY","UI_PRIORITY","PRIORITY_COUNT","AttributeType","SIGNAL_LOSS_INTENSITY","BLOOM_BRIGHTNESS","BLOOM_LUMINANCE_THRESHOLD","BLOOM_LUMINANCE_SCALE","GRIME_INTENSITY","GRIME_PATH","FILM_GRAIN_INTENSITY","FILM_GRAIN_SIZE","FILM_GRAIN_DENSITY","FILM_GRAIN_CONTRAST","FILM_GRAIN_BRIGHTNESS_MODIFIER","FILM_GRAIN_COLORED","FILM_GRAIN_COLOR_AMOUNT","SATURATION","FADE_INTENSITY","FADE_COLOR","LUT_INTENSITY","LUT_PATH","VIGNETTE_INTENSITY","VIGNETTE_OPACITY","VIGNETTE_COLOR","VIGNETTE_DETAIL1_SIZE","VIGNETTE_DETAIL1_SCROLL","VIGNETTE_DETAIL2_SIZE","VIGNETTE_DETAIL2_SCROLL","VIGNETTE_SHAPE_PATH","VIGNETTE_DETAIL_PATH","VIGNETTE_SINE_FREQUENCY","VIGNETTE_MIN_SINE_FREQUENCY","VIGNETTE_MAX_SINE_FREQUENCY","DEPTH_OF_FIELD_SCALE","DEPTH_OF_FIELD_FOCAL_DISTANCE","DEPTH_OF_FIELD_FOCAL_LENGTH","DEPTH_OF_FIELD_SHAPE","WHITE_TEMPERATURE","WHITE_TINT","COLOR_SATURATION","COLOR_CONTRAST","COLOR_GAMMA","COLOR_GAIN","COLOR_OFFSET","POST_PROCESS_ATTRIBUTE_TYPE_COUNT","Shape","Disk","Triangle","Rectangle","Pentagon","Hexagon","Heart"],"mappings":";;;;;;;;;;;;;;;;;;AAmBA;AACA;AACA;AACA;AACA;AAJA,IAAAA;AAAA,IAAA,cAAAC,SAAA,CAAA;AAAA,EAAA,QAKA,MAAAC,wBAAA,SAC8CC,QAAQ,CACtD;AAAA,IAAA;AAAA,MAAA,CAAA;QAAAC,CAAA,EAAA,CAAAC,cAAA,EAAAC,oBAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,gCAAA,EAAAC,sCAAA,EAAAC,yBAAA,EAAAC,+BAAA,EAAAC,4BAAA,EAAAC,kCAAA,EAAAC,qBAAA,EAAAC,2BAAA,EAAAC,oCAAA,EAAAC,0CAAA,EAAAC,6BAAA,EAAAC,mCAAA,EAAAC,gCAAA,EAAAC,sCAAA,EAAAC,yBAAA,EAAAC,+BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,mCAAA,EAAAC,yCAAA,EAAAC,4BAAA,EAAAC,kCAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,+BAAA,EAAAC,qCAAA,EAAAC,wBAAA,EAAAC,8BAAA,EAAAC,+BAAA,EAAAC,qCAAA,EAAAC,wBAAA,EAAAC,8BAAA,EAAAC,0BAAA,EAAAC,gCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,6BAAA,EAAAC,mCAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,wCAAA,EAAAC,8CAAA,EAAAC,iCAAA,EAAAC,uCAAA,EAAAC,6BAAA,EAAAC,mCAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,iCAAA,EAAAC,uCAAA,EAAAC,0BAAA,EAAAC,gCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,0BAAA,EAAAC,gCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,yBAAA,EAAAC,+BAAA,EAAAC,kBAAA,EAAAC,wBAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,4BAAA,EAAAC,kCAAA,EAAAC,qBAAA,EAAAC,2BAAA,EAAAC,0BAAA,EAAAC,gCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,gCAAA,EAAAC,sCAAA,EAAAC,yBAAA,EAAAC,+BAAA,EAAAC,kCAAA,EAAAC,wCAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,gCAAA,EAAAC,sCAAA,EAAAC,yBAAA,EAAAC,+BAAA,EAAAC,kCAAA,EAAAC,wCAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,+BAAA,EAAAC,qCAAA,EAAAC,wBAAA,EAAAC,8BAAA,EAAAC,kCAAA,EAAAC,wCAAA,EAAAC,2BAAA,EAAAC,iCAAA,EAAAC,qCAAA,EAAAC,2CAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,qCAAA,EAAAC,2CAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,sCAAA,EAAAC,4CAAA,EAAAC,+BAAA,EAAAC,qCAAA,EAAAC,oCAAA,EAAAC,0CAAA,EAAAC,6BAAA,EAAAC,mCAAA,EAAAC,8BAAA,EAAAC,oCAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,6BAAA,EAAAC,mCAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,4BAAA,EAAAC,kCAAA,EAAAC,qBAAA,EAAAC,2BAAA,EAAAC,0BAAA,EAAAC,gCAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,uBAAA,EAAAC,6BAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,sBAAA,EAAAC,4BAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,wBAAA,EAAAC,8BAAA,EAAAC,iBAAA,EAAAC,uBAAA,EAAAC,UAAA,CAAA;QAAAC,CAAA,EAAA,CAAA1O,qBAAA,EAAA2O,UAAA;AAAA,OAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,QAAAA,SAAS,EAAE,0BAA0B;AAAEC,QAAAA,MAAM,EAAE;AAAc,OAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAI3EC,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACM,KAAK,EAAA,MAAA,EACVC,MAAM,CAACC,IAAI,CAAC,UAAU,CAAC,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAGvBJ,EAAE,EAAFA,EAAE,CAACK,IAAI,EACPT,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,wCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,wBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,6BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,gCAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,yBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,wCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,+BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,oCAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,mCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,4BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,mCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,mCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,4BAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,mCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,4BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACa,MAAM,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAAA,CAGXT,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,uCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,2BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,yBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,sCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,oCAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,yCAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,yBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,yCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,wBAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,eAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,8BAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAAA,CAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,0BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACa,MAAM,CAAA,EAAA,EAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAGXT,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,oCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACY,KAAK,2BAGVR,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,4BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACc,IAAI,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAGTV,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,0CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACc,IAAI,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGTV,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,4BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACc,IAAI,CAAA,EAAA,EAAA,EAAA,qBAAA,CAAA,EAAA,CAAA,CAGTV,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,8BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACc,IAAI,mCAGTV,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACa,MAAM,CAAA,EAAA,EAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,CAGXT,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,uCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACa,MAAM,CAAA,EAAA,EAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAGXT,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,8BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,uBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,6CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,iCAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,+BAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,kCAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,2BAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,4CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,yBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,0BAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACM,KAAK,UACVC,MAAM,CAACC,IAAI,CAAC,OAAO,CAAC,CAAA,EAAA,EAAA,EAAA,mBAAA,CAAA,EAAA,CAAA,CAGpBJ,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,qCAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,uBAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,wBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,sBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,eAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,+BAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACU,OAAO,CAAA,EAAA,EAAA,EAAA,YAAA,CAAA,EAAA,CAAA,CAGZN,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,kBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACe,IAAI,uBAGTX,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACW,OAAO,CAAA,EAAA,EAAA,EAAA,oBAAA,CAAA,EAAA,CAAA,CAGZP,EAAE,EAAFA,EAAE,CAACC,OAAO,EACVL,IAAI,EAAJA,IAAI,CAACe,IAAI,CAAA,EAAA,EAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAeTC,MAAM,EAANA,MAAM,CAACC,MAAM,EACbC,IAAI,EAAJA,IAAI,CAACC,WAAW,mBA6BhBH,MAAM,EAANA,MAAM,CAACC,MAAM,EACbC,IAAI,EAAJA,IAAI,CAACC,WAAW,uCAxf2B7P,QAAQ,CAAA;AAAA;AAMpD8P,IAAAA,QAAQ,IAAAxB,UAAA,CAAA,IAAA,CAAA,EAAApO,cAAA,CAAA,IAAA,EAAGH,qBAAwB,CAACgQ,eAAe,CAAA;AAInDC,IAAAA,SAAS,IAAA7P,oBAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAG,CAAC,CAAA;AAIb6P,IAAAA,0BAA0B,IAAA5P,qBAAA,CAAA,IAAA,CAAA,EAAAC,gCAAA,OAAG,KAAK,CAAA;AAIlC4P,IAAAA,mBAAmB,IAAA3P,sCAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,OAAG,CAAC,CAAA;AAIvB2P,IAAAA,sBAAsB,IAAA1P,+BAAA,CAAA,IAAA,CAAA,EAAAC,4BAAA,OAAG,KAAK,CAAA;AAI9B0P,IAAAA,eAAe,IAAAzP,kCAAA,CAAA,IAAA,CAAA,EAAAC,qBAAA,OAAG,CAAC,CAAA;AAInByP,IAAAA,8BAA8B,IAAAxP,2BAAA,CAAA,IAAA,CAAA,EAAAC,oCAAA,OAAG,KAAK,CAAA;AAItCwP,IAAAA,uBAAuB,IAAAvP,0CAAA,CAAA,IAAA,CAAA,EAAAC,6BAAA,OAAG,CAAC,CAAA;AAI3BuP,IAAAA,0BAA0B,IAAAtP,mCAAA,CAAA,IAAA,CAAA,EAAAC,gCAAA,OAAG,KAAK,CAAA;AAIlCsP,IAAAA,mBAAmB,IAAArP,sCAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,OAAG,CAAC,CAAA;AAIvBqP,IAAAA,qBAAqB,IAAApP,+BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BoP,IAAAA,cAAc,IAAAnP,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;AAIlBmP,IAAAA,6BAA6B,IAAAlP,0BAAA,CAAA,IAAA,CAAA,EAAAC,mCAAA,OAAG,KAAK,CAAA;AAIrCkP,IAAAA,sBAAsB,IAAAjP,yCAAA,CAAA,IAAA,CAAA,EAAAC,4BAAA,OAAG,CAAC,CAAA;AAI1BiP,IAAAA,qBAAqB,IAAAhP,kCAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BgP,IAAAA,cAAc,IAAA/O,iCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAG,GAAG,CAAA;AAIpB+O,IAAAA,qBAAqB,IAAA9O,yBAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B8O,IAAAA,cAAc,IAAA7O,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;AAIlB6O,IAAAA,qBAAqB,IAAA5O,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B4O,IAAAA,cAAc,IAAA3O,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;AAIlB2O,IAAAA,qBAAqB,IAAA1O,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B0O,IAAAA,cAAc,IAAAzO,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,EAAE,CAAA;AAInByO,IAAAA,qBAAqB,IAAAxO,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BwO,IAAAA,cAAc,IAAAvO,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,EAAE,CAAA;AAInBuO,IAAAA,qBAAqB,IAAAtO,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BsO,IAAAA,cAAc,IAAArO,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,EAAE,CAAA;AAInBqO,IAAAA,qBAAqB,IAAApO,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BoO,IAAAA,cAAc,IAAAnO,iCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,CAAA,IAAA,EAAGmO,IAAI,CAACC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAIhEC,IAAAA,qBAAqB,IAAApO,yBAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BoO,IAAAA,cAAc,IAAAnO,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,CAAA,IAAA,EAAG+N,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAI5DG,IAAAA,qBAAqB,IAAAlO,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BkO,IAAAA,cAAc,IAAAjO,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,CAAA,IAAA,EAAG2N,IAAI,CAACC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAA;AAIhEK,IAAAA,qBAAqB,IAAAhO,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7BgO,IAAAA,cAAc,IAAA/N,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,CAAA,IAAA,EAAGuN,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAI5DO,IAAAA,qBAAqB,IAAA9N,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B8N,IAAAA,cAAc,IAAA7N,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,CAAA,IAAA,EAAGmN,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAI5DS,IAAAA,qBAAqB,IAAA5N,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B4N,IAAAA,cAAc,IAAA3N,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,CAAA,IAAA,EAAG+M,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAA;AAI5DW,IAAAA,qBAAqB,IAAA1N,0BAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,KAAK,CAAA;AAI7B0N,IAAAA,cAAc,IAAAzN,iCAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;AAIlByN,IAAAA,gBAAgB,IAAAxN,0BAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,KAAK,CAAA;AAIxBwN,IAAAA,SAAS,IAAAvN,4BAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAG,EAAE,CAAA;AAIduN,IAAAA,yBAAyB,IAAAtN,qBAAA,CAAA,IAAA,CAAA,EAAAC,+BAAA,OAAG,KAAK,CAAA;AAIjCsN,IAAAA,kBAAkB,IAAArN,qCAAA,CAAA,IAAA,CAAA,EAAAC,wBAAA,OAAG,CAAC,CAAA;AAItBqN,IAAAA,yBAAyB,IAAApN,8BAAA,CAAA,IAAA,CAAA,EAAAC,+BAAA,OAAG,KAAK,CAAA;AAIjCoN,IAAAA,kBAAkB,IAAAnN,qCAAA,CAAA,IAAA,CAAA,EAAAC,wBAAA,OAAG,CAAC,CAAA;AAItBmN,IAAAA,oBAAoB,IAAAlN,8BAAA,CAAA,IAAA,CAAA,EAAAC,0BAAA,OAAG,KAAK,CAAA;AAI5BkN,IAAAA,aAAa,IAAAjN,gCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAG,CAAC,CAAA;AAIjBiN,IAAAA,uBAAuB,IAAAhN,yBAAA,CAAA,IAAA,CAAA,EAAAC,6BAAA,OAAG,KAAK,CAAA;AAI/BgN,IAAAA,gBAAgB,IAAA/M,mCAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,CAAC,CAAA;AAIpB+M,IAAAA,wBAAwB,IAAA9M,4BAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,KAAK,CAAA;AAIhC8M,IAAAA,iBAAiB,IAAA7M,oCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,CAAC,CAAA;AAIrB6M,IAAAA,kCAAkC,IAAA5M,6BAAA,CAAA,IAAA,CAAA,EAAAC,wCAAA,OAAG,KAAK,CAAA;AAI1C4M,IAAAA,2BAA2B,IAAA3M,8CAAA,CAAA,IAAA,CAAA,EAAAC,iCAAA,OAAG,CAAC,CAAA;AAI/B2M,IAAAA,uBAAuB,IAAA1M,uCAAA,CAAA,IAAA,CAAA,EAAAC,6BAAA,OAAG,KAAK,CAAA;AAI/B0M,IAAAA,gBAAgB,IAAAzM,mCAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,KAAK,CAAA;AAIxByM,IAAAA,2BAA2B,IAAAxM,4BAAA,CAAA,IAAA,CAAA,EAAAC,iCAAA,OAAG,KAAK,CAAA;AAInCwM,IAAAA,oBAAoB,IAAAvM,uCAAA,CAAA,IAAA,CAAA,EAAAC,0BAAA,OAAG,CAAC,CAAA;AAIxBuM,IAAAA,iBAAiB,IAAAtM,gCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,KAAK,CAAA;AAIzBsM,IAAAA,UAAU,IAAArM,6BAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,CAAC,CAAA;AAIdqM,IAAAA,oBAAoB,IAAApM,sBAAA,CAAA,IAAA,CAAA,EAAAC,0BAAA,OAAG,KAAK,CAAA;AAI5BoM,IAAAA,aAAa,IAAAnM,gCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAG,CAAC,CAAA;AAIjBmM,IAAAA,gBAAgB,IAAAlM,yBAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,KAAK,CAAA;AAIxBkM,IAAAA,SAAS,IAAAjM,4BAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,CAAA,IAAA,EAAG2J,IAAI,CAACC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAIvCqC,IAAAA,mBAAmB,IAAAhM,qBAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,OAAG,KAAK,CAAA;AAI3BgM,IAAAA,YAAY,IAAA/L,+BAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,OAAG,CAAC,CAAA;AAIhB+L,IAAAA,cAAc,IAAA9L,wBAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,KAAK,CAAA;AAItB8L,IAAAA,OAAO,IAAA7L,0BAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,EAAE,CAAA;AAIZ6L,IAAAA,wBAAwB,IAAA5L,mBAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,KAAK,CAAA;AAIhC4L,IAAAA,iBAAiB,IAAA3L,oCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,CAAC,CAAA;AAIrB2L,IAAAA,sBAAsB,IAAA1L,6BAAA,CAAA,IAAA,CAAA,EAAAC,4BAAA,OAAG,KAAK,CAAA;AAI9B0L,IAAAA,eAAe,IAAAzL,kCAAA,CAAA,IAAA,CAAA,EAAAC,qBAAA,OAAG,CAAC,CAAA;AAInByL,IAAAA,oBAAoB,IAAAxL,2BAAA,CAAA,IAAA,CAAA,EAAAC,0BAAA,OAAG,KAAK,CAAA;AAI5BwL,IAAAA,aAAa,IAAAvL,gCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,CAAA,IAAA,EAAGuI,IAAI,CAACC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAI3C+C,IAAAA,0BAA0B,IAAAtL,yBAAA,CAAA,IAAA,CAAA,EAAAC,gCAAA,OAAG,KAAK,CAAA;AAIlCsL,IAAAA,mBAAmB,IAAArL,sCAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,CAAA,IAAA,EAAGgG,IAAI,CAACoC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;AAI7CiD,IAAAA,4BAA4B,IAAApL,+BAAA,CAAA,IAAA,CAAA,EAAAC,kCAAA,OAAG,KAAK,CAAA;IAIpCoL,qBAAqB,IAAAnL,wCAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG4F,IAAI,CAACuF,MAAM,EAAE,CAAA;AAIrCC,IAAAA,0BAA0B,IAAAnL,iCAAA,CAAA,IAAA,CAAA,EAAAC,gCAAA,OAAG,KAAK,CAAA;AAIlCmL,IAAAA,mBAAmB,IAAAlL,sCAAA,CAAA,IAAA,CAAA,EAAAC,yBAAA,CAAA,IAAA,EAAGwF,IAAI,CAACoC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC,CAAA;AAI7CsD,IAAAA,4BAA4B,IAAAjL,+BAAA,CAAA,IAAA,CAAA,EAAAC,kCAAA,OAAG,KAAK,CAAA;IAIpCiL,qBAAqB,IAAAhL,wCAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAGoF,IAAI,CAACuF,MAAM,EAAE,CAAA;AAIrCK,IAAAA,wBAAwB,IAAA/K,iCAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,KAAK,CAAA;AAIhC+K,IAAAA,iBAAiB,IAAA9K,oCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,EAAE,CAAA;AAItB8K,IAAAA,yBAAyB,IAAA7K,6BAAA,CAAA,IAAA,CAAA,EAAAC,+BAAA,OAAG,KAAK,CAAA;AAIjC6K,IAAAA,kBAAkB,IAAA5K,qCAAA,CAAA,IAAA,CAAA,EAAAC,wBAAA,OAAG,EAAE,CAAA;AAIvB4K,IAAAA,4BAA4B,IAAA3K,8BAAA,CAAA,IAAA,CAAA,EAAAC,kCAAA,OAAG,KAAK,CAAA;AAIpC2K,IAAAA,qBAAqB,IAAA1K,wCAAA,CAAA,IAAA,CAAA,EAAAC,2BAAA,OAAG,CAAC,CAAA;AAIzB0K,IAAAA,+BAA+B,IAAAzK,iCAAA,CAAA,IAAA,CAAA,EAAAC,qCAAA,OAAG,KAAK,CAAA;AAIvCyK,IAAAA,wBAAwB,IAAAxK,2CAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,CAAC,CAAA;AAI5BwK,IAAAA,+BAA+B,IAAAvK,oCAAA,CAAA,IAAA,CAAA,EAAAC,qCAAA,OAAG,KAAK,CAAA;AAIvCuK,IAAAA,wBAAwB,IAAAtK,2CAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,CAAC,CAAA;AAI5BsK,IAAAA,wBAAwB,IAAArK,oCAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,KAAK,CAAA;AAIhCqK,IAAAA,iBAAiB,IAAApK,oCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,CAAC,CAAA;AAIrBoK,IAAAA,gCAAgC,IAAAnK,6BAAA,CAAA,IAAA,CAAA,EAAAC,sCAAA,OAAG,KAAK,CAAA;AAIxCmK,IAAAA,yBAAyB,IAAAlK,4CAAA,CAAA,IAAA,CAAA,EAAAC,+BAAA,OAAG,CAAC,CAAA;AAI7BkK,IAAAA,8BAA8B,IAAAjK,qCAAA,CAAA,IAAA,CAAA,EAAAC,oCAAA,OAAG,KAAK,CAAA;AAItCiK,IAAAA,uBAAuB,IAAAhK,0CAAA,CAAA,IAAA,CAAA,EAAAC,6BAAA,OAAG,CAAC,CAAA;AAI3BgK,IAAAA,wBAAwB,IAAA/J,mCAAA,CAAA,IAAA,CAAA,EAAAC,8BAAA,OAAG,KAAK,CAAA;AAKhC+J,IAAAA,iBAAiB,IAAA9J,oCAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,CAAC,CAAA;AAIrB8J,IAAAA,uBAAuB,IAAA7J,6BAAA,CAAA,IAAA,CAAA,EAAAC,6BAAA,OAAG,KAAK,CAAA;AAI/B6J,IAAAA,gBAAgB,IAAA5J,mCAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,IAAI,CAAA;AAIvB4J,IAAAA,gBAAgB,IAAA3J,4BAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,KAAK,CAAA;AAIxB2J,IAAAA,SAAS,IAAA1J,4BAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAG,CAAC,CAAA;AAIb0J,IAAAA,sBAAsB,IAAAzJ,qBAAA,CAAA,IAAA,CAAA,EAAAC,4BAAA,OAAG,KAAK,CAAA;AAI9ByJ,IAAAA,eAAe,IAAAxJ,kCAAA,CAAA,IAAA,CAAA,EAAAC,qBAAA,OAAG,CAAC,CAAA;AAInBwJ,IAAAA,oBAAoB,IAAAvJ,2BAAA,CAAA,IAAA,CAAA,EAAAC,0BAAA,OAAG,KAAK,CAAA;AAI5BuJ,IAAAA,aAAa,IAAAtJ,gCAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAG,CAAC,CAAA;AAIjBsJ,IAAAA,iBAAiB,IAAArJ,yBAAA,CAAA,IAAA,CAAA,EAAAC,uBAAA,OAAG,KAAK,CAAA;AAIzBqJ,IAAAA,UAAU,IAAApJ,6BAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,CAAC,CAAA;AAIdoJ,IAAAA,gBAAgB,IAAAnJ,sBAAA,CAAA,IAAA,CAAA,EAAAC,sBAAA,OAAG,KAAK,CAAA;AAIxBmJ,IAAAA,SAAS,IAAAlJ,4BAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAGyB,IAAI,CAACmC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAA;AAIpCsF,IAAAA,kBAAkB,IAAAjJ,qBAAA,CAAA,IAAA,CAAA,EAAAC,wBAAA,OAAG,KAAK,CAAA;IAI1BiJ,WAAW,IAAAhJ,8BAAA,CAAA,IAAA,CAAA,EAAAC,iBAAA,OAAGqB,IAAI,CAACsF,MAAM,EAAE,CAAA;;AAE3B;AACAqC,IAAAA,eAAe,IAAA/I,uBAAA,CAAA,IAAA,CAAA,EAAG,IAAIgJ,GAAG,EAAE;AAE3BC,IAAAA,uCAAuC,GAAG,KAAK;AAE/CC,IAAAA,gCAAgC,GAAG,KAAK;;AAExC;AACF;AACA;AACA;AACA;AAGEC,IAAAA,KAAKA,GACL;MACE,IAAI,CAACxH,SAAS,GAAG,CAAC;AAClB,MAAA,IAAI,CAACF,QAAQ,GAAG/P,qBAAwB,CAACgQ,eAAe;AACxD,MAAA,KAAK,MAAM0H,IAAI,IAAI1X,qBAAwB,CAAC2X,cAAc,EAC1D;AACE,QAAA,IAAI,CAACD,IAAI,CAAC,GAAG1X,qBAAwB,CAAC4X,UAAU,CAAC5X,qBAAwB,CAAC6X,aAAa,CAACH,IAAI,CAAC,CAAC;AAC9F,QAAA,IAAI,CAAC,CAAA,EAAGA,IAAI,CAAA,OAAA,CAAS,CAAC,GAAG,KAAK;AAChC,MAAA;AACA,MAAA,IAAI,CAACL,eAAe,CAACS,KAAK,EAAE;;AAE5B;AACA;MACA,IAAI,CAACvB,uBAAuB,GAAG,IAAI;MACnC,IAAI,CAACE,gBAAgB,GAAG,IAAI;MAC5B,IAAI,CAACE,sBAAsB,GAAG,IAAI;MAClC,IAAI,CAACE,oBAAoB,GAAG,IAAI;MAChC,IAAI,CAACE,iBAAiB,GAAG,IAAI;MAC7B,IAAI,CAACE,gBAAgB,GAAG,IAAI;MAC5B,IAAI,CAACE,kBAAkB,GAAG,IAAI;AAChC,IAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;AAGEY,IAAAA,eAAeA,CAACC,WAAW,EAAEjI,QAAQ,EAAEE,SAAS,EAChD;MACE,IAAI,CAACwH,KAAK,EAAE;MACZ,IAAI,CAACxH,SAAS,GAAGgI,MAAM,CAAChI,SAAS,IAAI,CAAC,CAAC;AACvC,MAAA,IAAI,CAACF,QAAQ,GAAGkI,MAAM,CAAClI,QAAQ,IAAI/P,qBAAwB,CAACgQ,eAAe,CAAC,GAAG,CAAC;MAChF,IAAI,CAACgI,WAAW,EAAE;AAElB,MAAA,MAAME,GAAG,GAAGA,CAACR,IAAI,EAAES,KAAK,KAAKnY,qBAAwB,CAACoY,SAAS,CAAC,IAAI,EAAEV,IAAI,EAAES,KAAK,EAAE,IAAI,CAAC;MACxF,MAAME,UAAU,GAAGL,WAAW,CAACM,wBAAwB,IAAI,IAAI,IAAI;MACnE,IAAID,UAAU,EAAEH,GAAG,CAAC,qBAAqB,EAAEG,UAAU,CAACE,QAAQ,CAAC;MAE/D,MAAMC,KAAK,GAAGR,WAAW,CAACS,mBAAmB,IAAI,IAAI,IAAI;AACzD,MAAA,IAAID,KAAK,EACT;AACEN,QAAAA,GAAG,CAAC,iBAAiB,EAAEM,KAAK,CAACE,UAAU,CAAC;AACxCR,QAAAA,GAAG,CAAC,qBAAqB,EAAEM,KAAK,CAACG,cAAc,CAAC;AAChDT,QAAAA,GAAG,CAAC,yBAAyB,EAAEM,KAAK,CAACI,kBAAkB,CAAC;AACxDV,QAAAA,GAAG,CAAC,gBAAgB,EAAEM,KAAK,CAACK,WAAW,CAAC;AACxCX,QAAAA,GAAG,CAAC,WAAW,EAAEM,KAAK,CAAC7F,SAAS,CAAC;AACjCuF,QAAAA,GAAG,CAAC,gBAAgB,EAAEM,KAAK,CAACM,SAAS,CAAC;AACtCZ,QAAAA,GAAG,CAAC,wBAAwB,EAAEM,KAAK,CAACO,iBAAiB,CAAC;QACtD,KAAK,IAAIC,KAAK,GAAG,CAAC,EAAEA,KAAK,IAAI,CAAC,EAAEA,KAAK,EAAE,EACvC;UACEd,GAAG,CAAC,gBAAgBc,KAAK,CAAA,CAAE,EAAER,KAAK,CAAC,OAAOQ,KAAK,CAAA,IAAA,CAAM,CAAC,IAAIR,KAAK,CAACS,SAAS,GAAGD,KAAK,GAAG,CAAC,CAAC,CAAC;UACvFd,GAAG,CAAC,gBAAgBc,KAAK,CAAA,CAAE,EAAER,KAAK,CAAC,OAAOQ,KAAK,CAAA,IAAA,CAAM,CAAC,IAAIR,KAAK,CAACU,SAAS,GAAGF,KAAK,GAAG,CAAC,CAAC,CAAC;AACzF,QAAA;AACF,MAAA;MAEA,MAAMG,SAAS,GAAGnB,WAAW,CAACoB,uBAAuB,IAAI,IAAI,IAAI;AACjE,MAAA,IAAID,SAAS,EACb;AACEjB,QAAAA,GAAG,CAAC,oBAAoB,EAAEiB,SAAS,CAAClJ,SAAS,CAAC;AAC9CiI,QAAAA,GAAG,CAAC,eAAe,EAAEiB,SAAS,CAACE,SAAS,CAAC;AACzCnB,QAAAA,GAAG,CAAC,kBAAkB,EAAEiB,SAAS,CAACG,YAAY,CAAC;AAC/CpB,QAAAA,GAAG,CAAC,mBAAmB,EAAEiB,SAAS,CAACI,aAAa,CAAC;AACjDrB,QAAAA,GAAG,CAAC,6BAA6B,EAAEiB,SAAS,CAACK,kBAAkB,CAAC;AAChEtB,QAAAA,GAAG,CAAC,kBAAkB,EAAEiB,SAAS,CAACM,OAAO,CAAC;AAC1CvB,QAAAA,GAAG,CAAC,sBAAsB,EAAEiB,SAAS,CAACO,WAAW,CAAC;AACpD,MAAA;MAEA,MAAMC,UAAU,GAAG3B,WAAW,CAAC4B,wBAAwB,IAAI,IAAI,IAAI;AACnE,MAAA,IAAID,UAAU,EAAEzB,GAAG,CAAC,YAAY,EAAED,MAAM,CAAC0B,UAAU,CAAC1J,SAAS,CAAC,GAAG,CAAC,CAAC;MAEnE,MAAM4J,IAAI,GAAG7B,WAAW,CAAC8B,kBAAkB,IAAI,IAAI,IAAI;AACvD,MAAA,IAAID,IAAI,EACR;AACE3B,QAAAA,GAAG,CAAC,eAAe,EAAE2B,IAAI,CAAC5J,SAAS,CAAC;AACpCiI,QAAAA,GAAG,CAAC,WAAW,EAAE2B,IAAI,CAACtK,KAAK,CAAC;AAC9B,MAAA;MAEA,MAAMwK,QAAQ,GAAG/B,WAAW,CAACgC,sBAAsB,IAAI,IAAI,IAAI;AAC/D,MAAA,IAAID,QAAQ,EACZ;AACE7B,QAAAA,GAAG,CAAC,mBAAmB,EAAE6B,QAAQ,CAAC9J,SAAS,CAAC;AAC5CiI,QAAAA,GAAG,CAAC,iBAAiB,EAAE6B,QAAQ,CAACE,OAAO,CAAC;AACxC/B,QAAAA,GAAG,CAAC,eAAe,EAAE6B,QAAQ,CAACxK,KAAK,CAAC;AACpC2I,QAAAA,GAAG,CAAC,qBAAqB,EAAE6B,QAAQ,CAACG,WAAW,CAAC;AAChDhC,QAAAA,GAAG,CAAC,uBAAuB,EAAE6B,QAAQ,CAACI,aAAa,CAAC;AACpDjC,QAAAA,GAAG,CAAC,qBAAqB,EAAE6B,QAAQ,CAACK,WAAW,CAAC;AAChDlC,QAAAA,GAAG,CAAC,uBAAuB,EAAE6B,QAAQ,CAACM,aAAa,CAAC;AACpDnC,QAAAA,GAAG,CAAC,mBAAmB,EAAE6B,QAAQ,CAACO,SAAS,CAAC;AAC5CpC,QAAAA,GAAG,CAAC,oBAAoB,EAAE6B,QAAQ,CAACQ,UAAU,CAAC;AAC9CrC,QAAAA,GAAG,CAAC,uBAAuB,EAAE6B,QAAQ,CAACS,aAAa,CAAC;AACpDtC,QAAAA,GAAG,CAAC,0BAA0B,EAAE6B,QAAQ,CAACU,WAAW,CAAC;AACrDvC,QAAAA,GAAG,CAAC,0BAA0B,EAAE6B,QAAQ,CAACW,WAAW,CAAC;AACvD,MAAA;MAEA,MAAMC,YAAY,GAAG3C,WAAW,CAAC4C,0BAA0B,IAAI,IAAI,IAAI;AACvE,MAAA,IAAID,YAAY,EAChB;AACEzC,QAAAA,GAAG,CAAC,mBAAmB,EAAEyC,YAAY,CAACE,KAAK,CAAC;AAC5C3C,QAAAA,GAAG,CAAC,2BAA2B,EAAEyC,YAAY,CAACG,aAAa,CAAC;AAC5D5C,QAAAA,GAAG,CAAC,yBAAyB,EAAEyC,YAAY,CAACI,WAAW,CAAC;AACxD7C,QAAAA,GAAG,CAAC,mBAAmB,EAAEyC,YAAY,CAACK,UAAU,CAAC;AACnD,MAAA;MAEA,MAAMC,IAAI,GAAGjD,WAAW,CAACkD,qBAAqB,GAAG,EAAE,CAAC,IAAI,EAAE;MAC1D,IAAID,IAAI,CAACE,MAAM,EACf;QACEjD,GAAG,CAAC,cAAc,EAAE+C,IAAI,CAAC,CAAC,CAAC,CAACG,SAAS,CAAC;QACtClD,GAAG,CAAC,SAAS,EAAE+C,IAAI,CAAC,CAAC,CAAC,CAACI,IAAI,CAAC;AAC9B,MAAA;MAEA,MAAMC,eAAe,GAAGtD,WAAW,CAACuD,6BAA6B,IAAI,IAAI,IAAI;AAC7E,MAAA,IAAID,eAAe,EACnB;AACEpD,QAAAA,GAAG,CAAC,kBAAkB,EAAEoD,eAAe,CAAC9E,gBAAgB,CAAC;AACzD0B,QAAAA,GAAG,CAAC,WAAW,EAAEoD,eAAe,CAAC5E,SAAS,CAAC;AAC3CwB,QAAAA,GAAG,CAAC,iBAAiB,EAAEoD,eAAe,CAAC1E,eAAe,CAAC;AACvDsB,QAAAA,GAAG,CAAC,eAAe,EAAEoD,eAAe,CAACxE,aAAa,CAAC;AACnDoB,QAAAA,GAAG,CAAC,YAAY,EAAEoD,eAAe,CAACtE,UAAU,CAAC;AAC7CkB,QAAAA,GAAG,CAAC,WAAW,EAAEoD,eAAe,CAACpE,SAAS,CAAC;AAC3CgB,QAAAA,GAAG,CAAC,aAAa,EAAEoD,eAAe,CAAClE,WAAW,CAAC;AACjD,MAAA;AACF,IAAA;AAkJA;AACF;AACA;AACA;IACE,OAAOQ,UAAUA,CAACO,KAAK,EACvB;AACE,MAAA,OAAOqD,WAAW,CAACC,MAAM,CAACtD,KAAK,CAAC,GAAG,IAAIA,KAAK,CAACuD,WAAW,CAACvD,KAAK,CAAC,GAAGA,KAAK;AACzE,IAAA;;AAEA;AACF;AACA;AACA;IACE,OAAOC,SAASA,CAACuD,MAAM,EAAEjE,IAAI,EAAES,KAAK,EAAEyD,OAAO,GAAG,IAAI,EACpD;MACED,MAAM,CAACjE,IAAI,CAAC,GAAG1X,qBAAwB,CAAC4X,UAAU,CAACO,KAAK,CAAC;AACzDwD,MAAAA,MAAM,CAAC,CAAA,EAAGjE,IAAI,CAAA,OAAA,CAAS,CAAC,GAAGkE,OAAO;AACpC,IAAA;;AAEA;AACF;AACA;AACA;AACA;AACE,IAAA,OAAOC,WAAWA,CAACC,MAAM,EAAE3D,KAAK,EAAE4D,MAAM,EACxC;AACE,MAAA,IAAIP,WAAW,CAACC,MAAM,CAACtD,KAAK,CAAC,IAAI6D,KAAK,CAACC,OAAO,CAAC9D,KAAK,CAAC,EACrD;QACE,IAAI,CAAC2D,MAAM,EAAEA,MAAM,GAAG,IAAII,YAAY,CAAC/D,KAAK,CAACgD,MAAM,CAAC;QACpD,KAAK,IAAInC,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGb,KAAK,CAACgD,MAAM,EAAEnC,KAAK,EAAE,EAAE8C,MAAM,CAAC9C,KAAK,CAAC,IAAIf,MAAM,CAACE,KAAK,CAACa,KAAK,CAAC,CAAC,GAAG+C,MAAM;AACjG,QAAA,OAAOD,MAAM;AACf,MAAA;AACA,MAAA,OAAO7D,MAAM,CAAC6D,MAAM,IAAI,CAAC,CAAC,GAAG7D,MAAM,CAACE,KAAK,IAAI,CAAC,CAAC,GAAG4D,MAAM;AAC1D,IAAA;;AAEA;AACF;AACA;AACA;IACE,OAAOI,SAASA,CAACzE,IAAI,EACrB;AACE,MAAA,MAAMS,KAAK,GAAGnY,qBAAwB,CAAC6X,aAAa,CAACH,IAAI,CAAC;AAC1D,MAAA,IAAI8D,WAAW,CAACC,MAAM,CAACtD,KAAK,CAAC,EAAE,OAAO,IAAI+D,YAAY,CAAC/D,KAAK,CAACgD,MAAM,CAAC;AACpE,MAAA,IAAI,OAAOhD,KAAK,KAAK,QAAQ,EAAE,OAAO,EAAE;AACxC,MAAA,IAAI,OAAOA,KAAK,KAAK,SAAS,EAAE,OAAO,KAAK;AAC5C,MAAA,OAAO,CAAC;AACV,IAAA;;AAEA;AACF;AACA;AACA;AACA;IACE,OAAOiE,mBAAmBA,GAC1B;MACE,MAAMC,OAAO,GAAG,EAAE;MAClB,IAAIC,OAAO,GAAG,IAAI;MAClB,OAAO;QACLC,cAAcA,CAAC7E,IAAI,EACnB;AACE4E,UAAAA,OAAO,GAAG;YAAE5E,IAAI;AAAE8E,YAAAA,WAAW,EAAE;WAAI;AACnCH,UAAAA,OAAO,CAAC3E,IAAI,CAAC,GAAG4E,OAAO;QACzB,CAAC;AACDG,QAAAA,SAASA,CAACC,UAAU,EAAEX,MAAM,EAC5B;AACEO,UAAAA,OAAO,EAAEE,WAAW,CAACG,IAAI,CAAC;YAAED,UAAU;AAAEX,YAAAA;AAAO,WAAC,CAAC;QACnD,CAAC;QACDa,YAAYA,CAACzE,KAAK,EAClB;UACE,IAAImE,OAAO,EAAEA,OAAO,CAACnE,KAAK,GAAGnY,qBAAwB,CAAC6c,eAAe,CAAC1E,KAAK,CAAC;AAC5EmE,UAAAA,OAAO,GAAG,IAAI;QAChB,CAAC;AACDQ,QAAAA,OAAOA,GACP;AACE,UAAA,OAAOT,OAAO;AAChB,QAAA;OACD;AACH,IAAA;;AAEA;AACF;AACA;AACA;IACE,OAAOQ,eAAeA,CAAC1E,KAAK,EAC5B;AACE,MAAA,IAAIqD,WAAW,CAACC,MAAM,CAACtD,KAAK,CAAC,EAAE,OAAO,IAAIA,KAAK,CAACuD,WAAW,CAACvD,KAAK,CAAC;AAClE,MAAA,IAAI6D,KAAK,CAACC,OAAO,CAAC9D,KAAK,CAAC,EAAE,OAAOA,KAAK,CAAC4E,GAAG,CAACC,IAAI,KAAK;QAAE,GAAGA;AAAK,OAAC,CAAC,CAAC;AACjE,MAAA,OAAO7E,KAAK;AACd,IAAA;;AAEA;AACF;AACA;AACA;AACE,IAAA,OAAO8E,UAAUA,CAACC,QAAQ,EAAExF,IAAI,EAChC;AACEwF,MAAAA,QAAQ,EAAEX,cAAc,GAAG7E,IAAI,CAAC;AAClC,IAAA;;AAEA;AACF;AACA;AACA;AACE,IAAA,OAAOyF,cAAcA,CAACD,QAAQ,EAAEE,MAAM,EAAErB,MAAM,EAC9C;AACEmB,MAAAA,QAAQ,EAAET,SAAS,GAAGW,MAAM,EAAErB,MAAM,CAAC;AACvC,IAAA;;AAEA;AACF;AACA;AACA;AACE,IAAA,OAAOsB,QAAQA,CAACH,QAAQ,EAAE/E,KAAK,EAC/B;AACE+E,MAAAA,QAAQ,EAAEN,YAAY,GAAGzE,KAAK,CAAC;AACjC,IAAA;;AAEA;AACF;AACA;AACA;AACA;AACA;IACE,OAAOmF,UAAUA,CAAC5F,IAAI,EAAE6F,OAAO,EAAEC,SAAS,GAAGxd,qBAAwB,CAACyd,mBAAmB,CAACC,GAAG,CAAChG,IAAI,CAAC,EAAEwF,QAAQ,GAAG,IAAI,EACpH;MACE,IAAIS,eAAe,GAAG,CAAC;MACvB,IAAI7B,MAAM,GAAG0B,SAAS,GAAGxd,qBAAwB,CAACmc,SAAS,CAACzE,IAAI,CAAC,GAAG,IAAI;MACxE,IAAIkG,UAAU,GAAG,CAAC;AAClB5d,MAAAA,qBAAwB,CAACid,UAAU,CAACC,QAAQ,EAAExF,IAAI,CAAC;MAEnD,KAAK,IAAImG,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGN,OAAO,CAACpC,MAAM,GAC1C;AACE,QAAA,IAAI2C,IAAI,GAAGD,KAAK,GAAG,CAAC;QACpB,OAAOC,IAAI,GAAGP,OAAO,CAACpC,MAAM,IAAIoC,OAAO,CAACO,IAAI,CAAC,CAAC/N,QAAQ,KAAKwN,OAAO,CAACM,KAAK,CAAC,CAAC9N,QAAQ,EAAE+N,IAAI,EAAE;QAE1F,IAAIC,sBAAsB,GAAG,CAAC;QAC9B,KAAK,IAAI/E,KAAK,GAAG6E,KAAK,EAAE7E,KAAK,GAAG8E,IAAI,EAAE9E,KAAK,EAAE,EAC7C;UACE,IAAIuE,OAAO,CAACvE,KAAK,CAAC,GAAG,CAAA,EAAGtB,IAAI,SAAS,CAAC,EAAEqG,sBAAsB,IAAI9F,MAAM,CAACsF,OAAO,CAACvE,KAAK,CAAC,CAAC/I,SAAS,CAAC;AACpG,QAAA;QACA,IAAI8N,sBAAsB,KAAK,CAAC,EAChC;UACE,MAAMC,aAAa,GAAGL,eAAe,GAAGM,IAAI,CAACC,GAAG,CAACH,sBAAsB,EAAE,CAAC,CAAC;UAC3E,KAAK,IAAI/E,KAAK,GAAG6E,KAAK,EAAE7E,KAAK,GAAG8E,IAAI,EAAE9E,KAAK,EAAE,EAC7C;AACE,YAAA,MAAMoE,MAAM,GAAGG,OAAO,CAACvE,KAAK,CAAC;AAC7B,YAAA,IAAI,CAACoE,MAAM,GAAG,GAAG1F,IAAI,CAAA,OAAA,CAAS,CAAC,EAAE;YACjC,MAAMqE,MAAM,GAAG9D,MAAM,CAACmF,MAAM,CAACnN,SAAS,CAAC,GAAG+N,aAAa;AACvD,YAAA,IAAIR,SAAS,EACb;cACE,IAAIzB,MAAM,GAAG6B,UAAU,EACvB;AACEA,gBAAAA,UAAU,GAAG7B,MAAM;AACnBD,gBAAAA,MAAM,GAAGsB,MAAM,CAAC1F,IAAI,CAAC;AACvB,cAAA;AACF,YAAA,CAAC,MAED;AACEoE,cAAAA,MAAM,GAAG9b,qBAAwB,CAAC6b,WAAW,CAACC,MAAM,EAAEsB,MAAM,CAAC1F,IAAI,CAAC,EAAEqE,MAAM,CAAC;AAC7E,YAAA;YACA/b,qBAAwB,CAACmd,cAAc,CAACD,QAAQ,EAAEE,MAAM,EAAErB,MAAM,CAAC;AACnE,UAAA;AACA4B,UAAAA,eAAe,IAAII,sBAAsB;UACzC,IAAIJ,eAAe,IAAI,CAAC,EAAE;AAC5B,QAAA;AACAE,QAAAA,KAAK,GAAGC,IAAI;AACd,MAAA;AACA,MAAA,MAAMK,UAAU,GAAGne,qBAAwB,CAAC4X,UAAU,CAACkE,MAAM,IAAI9b,qBAAwB,CAACmc,SAAS,CAACzE,IAAI,CAAC,CAAC;AAC1G1X,MAAAA,qBAAwB,CAACqd,QAAQ,CAACH,QAAQ,EAAEiB,UAAU,CAAC;AACvD,MAAA,OAAOA,UAAU;AACnB,IAAA;;AAEA;AACF;AACA;AACA;AACE,IAAA,OAAOC,cAAcA,CAACb,OAAO,EAAEL,QAAQ,GAAG,IAAI,EAC9C;MACE,IAAIS,eAAe,GAAG,CAAC;MACvB,MAAMU,MAAM,GAAG,EAAE;AACjBre,MAAAA,qBAAwB,CAACid,UAAU,CAACC,QAAQ,EAAE,SAAS,CAAC;MACxD,KAAK,IAAIW,KAAK,GAAG,CAAC,EAAEA,KAAK,GAAGN,OAAO,CAACpC,MAAM,GAC1C;AACE,QAAA,IAAI2C,IAAI,GAAGD,KAAK,GAAG,CAAC;QACpB,OAAOC,IAAI,GAAGP,OAAO,CAACpC,MAAM,IAAIoC,OAAO,CAACO,IAAI,CAAC,CAAC/N,QAAQ,KAAKwN,OAAO,CAACM,KAAK,CAAC,CAAC9N,QAAQ,EAAE+N,IAAI,EAAE;QAC1F,IAAIC,sBAAsB,GAAG,CAAC;QAC9B,KAAK,IAAI/E,KAAK,GAAG6E,KAAK,EAAE7E,KAAK,GAAG8E,IAAI,EAAE9E,KAAK,EAAE,EAC7C;AACE,UAAA,IAAIuE,OAAO,CAACvE,KAAK,CAAC,EAAE5E,cAAc,EAAE2J,sBAAsB,IAAI9F,MAAM,CAACsF,OAAO,CAACvE,KAAK,CAAC,CAAC/I,SAAS,CAAC;AAChG,QAAA;QACA,IAAI8N,sBAAsB,KAAK,CAAC,EAChC;UACE,MAAMC,aAAa,GAAGL,eAAe,GAAGM,IAAI,CAACC,GAAG,CAACH,sBAAsB,EAAE,CAAC,CAAC;UAC3E,KAAK,IAAI/E,KAAK,GAAG6E,KAAK,EAAE7E,KAAK,GAAG8E,IAAI,EAAE9E,KAAK,EAAE,EAC7C;AACE,YAAA,MAAMoE,MAAM,GAAGG,OAAO,CAACvE,KAAK,CAAC;AAC7B,YAAA,IAAI,CAACoE,MAAM,EAAEhJ,cAAc,EAAE;YAC7B,MAAM2H,MAAM,GAAG9D,MAAM,CAACmF,MAAM,CAACnN,SAAS,CAAC,GAAG+N,aAAa;AACvD,YAAA,MAAMM,QAAQ,GAAGD,MAAM,CAACE,IAAI,CAACvB,IAAI,IAAIA,IAAI,CAAC7E,KAAK,KAAKiF,MAAM,CAAC/I,OAAO,CAAC;AACnE,YAAA,IAAIiK,QAAQ,EACZ;cACEA,QAAQ,CAACvC,MAAM,IAAIA,MAAM;AAC3B,YAAA,CAAC,MACI,IAAIsC,MAAM,CAAClD,MAAM,GAAG,CAAC,EAC1B;cACEkD,MAAM,CAAC1B,IAAI,CAAC;gBAAExE,KAAK,EAAEiF,MAAM,CAAC/I,OAAO;AAAE0H,gBAAAA;AAAO,eAAC,CAAC;AAC9CsC,cAAAA,MAAM,CAACG,IAAI,CAAC,CAACC,CAAC,EAAEC,CAAC,KAAKA,CAAC,CAAC3C,MAAM,GAAG0C,CAAC,CAAC1C,MAAM,CAAC;AAC5C,YAAA,CAAC,MAED;AACE,cAAA,MAAM4C,QAAQ,GAAGN,MAAM,CAACO,SAAS,CAAC5B,IAAI,IAAIjB,MAAM,GAAGiB,IAAI,CAACjB,MAAM,CAAC;AAC/D,cAAA,IAAI4C,QAAQ,KAAK,EAAE,EAAEN,MAAM,CAACQ,MAAM,CAACF,QAAQ,EAAE,CAAC,EAAE;gBAAExG,KAAK,EAAEiF,MAAM,CAAC/I,OAAO;AAAE0H,gBAAAA;AAAO,eAAC,CAAC;cAClFsC,MAAM,CAAClD,MAAM,GAAG,CAAC;AACnB,YAAA;YACAnb,qBAAwB,CAACmd,cAAc,CAACD,QAAQ,EAAEE,MAAM,EAAErB,MAAM,CAAC;AACnE,UAAA;AACA4B,UAAAA,eAAe,IAAII,sBAAsB;UACzC,IAAIJ,eAAe,IAAI,CAAC,EAAE;AAC5B,QAAA;AACAE,QAAAA,KAAK,GAAGC,IAAI;AACd,MAAA;AACA,MAAA,MAAMgB,KAAK,GAAGT,MAAM,CAACU,MAAM,CAAC,CAACC,GAAG,EAAEhC,IAAI,KAAKgC,GAAG,GAAGhC,IAAI,CAACjB,MAAM,EAAE,CAAC,CAAC;AAChE,MAAA,IAAI+C,KAAK,GAAG,CAAC,EAAE,KAAK,MAAM9B,IAAI,IAAIqB,MAAM,EAAErB,IAAI,CAACjB,MAAM,IAAI+C,KAAK;AAC9D9e,MAAAA,qBAAwB,CAACqd,QAAQ,CAACH,QAAQ,EAAEmB,MAAM,CAAC;AACnD,MAAA,OAAOA,MAAM;AACf,IAAA;;AAEA;AACF;AACA;AACA;AACA;AACE,IAAA,OAAOY,SAASA,CAACjH,WAAW,EAAEN,IAAI,EAAEwH,MAAM,EAC1C;AACE,MAAA,MAAMtP,MAAM,GAAGoI,WAAW,CAAC,CAAA,GAAA,EAAMN,IAAI,EAAE,CAAC;AACxC,MAAA,IAAI,OAAO9H,MAAM,KAAK,UAAU,EAAEA,MAAM,CAACuP,IAAI,CAACnH,WAAW,EAAEkH,MAAM,CAAC,CAAC,KAC9DlH,WAAW,CAACN,IAAI,CAAC0H,MAAM,CAAC,CAAC,CAAC,CAACC,WAAW,EAAE,GAAG3H,IAAI,CAAC4H,KAAK,CAAC,CAAC,CAAC,CAAC,GAAGJ,MAAM;AACzE,IAAA;;AAEA;AACF;AACA;AACA;AACA;IACE,OAAOK,SAASA,CAACvH,WAAW,EAAEuF,OAAO,EAAEiC,aAAa,GAAG,IAAI,EAC3D;AACE,MAAA,MAAMnB,MAAM,GAAG,IAAIoB,GAAG,EAAE;AACxB,MAAA,KAAK,MAAM/H,IAAI,IAAI1X,qBAAwB,CAAC2X,cAAc,EAC1D;QACE,IAAID,IAAI,KAAK,SAAS,EAAE2G,MAAM,CAACnG,GAAG,CAACR,IAAI,EAAE1X,qBAAwB,CAACsd,UAAU,CAAC5F,IAAI,EAAE6F,OAAO,EAAEmC,SAAS,EAAEF,aAAa,CAAC,CAAC;AACxH,MAAA;AACAnB,MAAAA,MAAM,CAACnG,GAAG,CAAC,kCAAkC,EAAElY,qBAAwB,CAACsd,UAAU,CAAC,kCAAkC,EAAEC,OAAO,EAAE,IAAI,EAAEiC,aAAa,CAAC,CAAC;MACrJ,MAAMG,QAAQ,GAAG3f,qBAAwB,CAACoe,cAAc,CAACb,OAAO,EAAEiC,aAAa,CAAC;MAChF,MAAMrH,KAAK,GAAGT,IAAI,IAAI2G,MAAM,CAACuB,GAAG,CAAClI,IAAI,CAAC;MACtC1X,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;MAC9DhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;MACnEhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC;MAC7DhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,WAAW,EAAE,IAAI,CAAC;MAClEhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,YAAY,EAAE,IAAI,CAAC;MACnEhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,UAAU,EAAE,IAAI,CAAC;MACjEhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,cAAc,EAAE,IAAI,CAAC;MACrEhY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,iBAAiB,EAAE,IAAI,CAAC;MACxEA,WAAW,CAAC6H,SAAS,IAAI;MACzB,IAAI,CAAC7H,WAAW,CAAC6H,SAAS,EAAE7H,WAAW,CAACiD,IAAI,CAACE,MAAM,GAAG,CAAC;AAEvD,MAAA,MAAMhL,mBAAmB,GAAGgI,KAAK,CAAC,qBAAqB,CAAC;MACxD,IAAIhI,mBAAmB,GAAG,CAAC,EAC3B;AACE,QAAA,MAAM+O,MAAM,GAAG,IAAIY,qBAAqB,EAAE;QAC1CZ,MAAM,CAAC3G,QAAQ,GAAGpI,mBAAmB;QACrCnQ,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,YAAY,EAAEkH,MAAM,CAAC;AACvE,MAAA;AAEA,MAAA,MAAM7O,eAAe,GAAG8H,KAAK,CAAC,iBAAiB,CAAC;MAChD,IAAI9H,eAAe,GAAG,CAAC,EACvB;AACE,QAAA,MAAM6O,MAAM,GAAG,IAAIa,iBAAgB,EAAE;QACrCb,MAAM,CAACxG,UAAU,GAAGrI,eAAe;AACnC6O,QAAAA,MAAM,CAACtG,kBAAkB,GAAGT,KAAK,CAAC,yBAAyB,CAAC;AAC5D+G,QAAAA,MAAM,CAACvG,cAAc,GAAGR,KAAK,CAAC,qBAAqB,CAAC;AACpD+G,QAAAA,MAAM,CAACpG,SAAS,GAAGX,KAAK,CAAC,gBAAgB,CAAC;AAC1C+G,QAAAA,MAAM,CAACnG,iBAAiB,GAAGZ,KAAK,CAAC,wBAAwB,CAAC;QAC1D,KAAK,IAAIa,KAAK,GAAG,CAAC,EAAEA,KAAK,IAAI,CAAC,EAAEA,KAAK,EAAE,EACvC;UACEkG,MAAM,CAAC,CAAA,IAAA,EAAOlG,KAAK,CAAA,IAAA,CAAM,CAAC,GAAGb,KAAK,CAAC,CAAA,aAAA,EAAgBa,KAAK,CAAA,CAAE,CAAC;UAC3DkG,MAAM,CAAC,CAAA,IAAA,EAAOlG,KAAK,CAAA,IAAA,CAAM,CAAC,GAAGb,KAAK,CAAC,CAAA,aAAA,EAAgBa,KAAK,CAAA,CAAE,CAAC;AAC7D,QAAA;QACAhZ,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,OAAO,EAAEkH,MAAM,CAAC;AAClE,MAAA;AAEA,MAAA,MAAMzM,cAAc,GAAG0F,KAAK,CAAC,gBAAgB,CAAC;MAC9C,IAAI1F,cAAc,GAAG,CAAC,EACtB;AACE,QAAA,MAAMyM,MAAM,GAAGlH,WAAW,CAACS,mBAAmB,IAAI,IAAIT,WAAW,CAACQ,KAAK,IAAI,IAAIuH,iBAAgB,EAAE;QACjGb,MAAM,CAACrG,WAAW,GAAGpG,cAAc;AACnCyM,QAAAA,MAAM,CAACvM,SAAS,GAAGwF,KAAK,CAAC,WAAW,CAAC;QACrCnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,OAAO,EAAEkH,MAAM,CAAC;AAClE,MAAA;AAEA,MAAA,MAAMnM,kBAAkB,GAAGoF,KAAK,CAAC,oBAAoB,CAAC;MACtD,IAAIpF,kBAAkB,GAAG,CAAC,EAC1B;AACE,QAAA,MAAMmM,MAAM,GAAG,IAAIc,qBAAoB,EAAE;QACzCd,MAAM,CAACjP,SAAS,GAAG8C,kBAAkB;AACrCmM,QAAAA,MAAM,CAAC7F,SAAS,GAAGlB,KAAK,CAAC,eAAe,CAAC;AACzC+G,QAAAA,MAAM,CAAC5F,YAAY,GAAGnB,KAAK,CAAC,kBAAkB,CAAC;AAC/C+G,QAAAA,MAAM,CAAC3F,aAAa,GAAGpB,KAAK,CAAC,mBAAmB,CAAC;AACjD+G,QAAAA,MAAM,CAAC1F,kBAAkB,GAAGrB,KAAK,CAAC,6BAA6B,CAAC;AAChE+G,QAAAA,MAAM,CAACzF,OAAO,GAAGtB,KAAK,CAAC,kBAAkB,CAAC;AAC1C+G,QAAAA,MAAM,CAACxF,WAAW,GAAGvB,KAAK,CAAC,sBAAsB,CAAC;QAClDnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,WAAW,EAAEkH,MAAM,CAAC;AACtE,MAAA;AAEA,MAAA,MAAMrL,UAAU,GAAGsE,KAAK,CAAC,YAAY,CAAC;MACtC,IAAItE,UAAU,KAAK,CAAC,EACpB;AACE,QAAA,MAAMqL,MAAM,GAAG,IAAIe,qBAAqB,EAAE;AAC1Cf,QAAAA,MAAM,CAACjP,SAAS,GAAG4D,UAAU,GAAG,CAAC;QACjC7T,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,YAAY,EAAEkH,MAAM,CAAC;AACvE,MAAA;AAEA,MAAA,MAAMnL,aAAa,GAAGoE,KAAK,CAAC,eAAe,CAAC;MAC5C,IAAIpE,aAAa,GAAG,CAAC,EACrB;AACE,QAAA,MAAMmL,MAAM,GAAG,IAAIgB,gBAAe,EAAE;QACpChB,MAAM,CAACjP,SAAS,GAAG8D,aAAa;AAChCmL,QAAAA,MAAM,CAAC3P,KAAK,GAAG4I,KAAK,CAAC,WAAW,CAAC;QACjCnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,MAAM,EAAEkH,MAAM,CAAC;AACjE,MAAA;AAEA,MAAA,MAAM/K,YAAY,GAAGgE,KAAK,CAAC,cAAc,CAAC;AAC1C,MAAA,KAAK,MAAMgI,GAAG,IAAIR,QAAQ,EAC1B;AACE,QAAA,MAAMT,MAAM,GAAG,IAAIkB,eAAc,EAAE;AACnClB,QAAAA,MAAM,CAAC9D,SAAS,GAAG+E,GAAG,CAACpE,MAAM,GAAG5H,YAAY;AAC5C+K,QAAAA,MAAM,CAAC7D,IAAI,GAAG8E,GAAG,CAAChI,KAAK;AACvB,QAAA,IAAIH,WAAW,CAACqI,MAAM,EAAErI,WAAW,CAACqI,MAAM,CAACnB,MAAM,CAAC,CAAC,KAC9ClH,WAAW,CAACiD,IAAI,CAAC0B,IAAI,CAACuC,MAAM,CAAC;AACpC,MAAA;AAEA,MAAA,MAAM3K,iBAAiB,GAAG4D,KAAK,CAAC,mBAAmB,CAAC;MACpD,IAAI5D,iBAAiB,GAAG,CAAC,EACzB;AACE,QAAA,MAAM2K,MAAM,GAAG,IAAIoB,oBAAmB,EAAE;QACxCpB,MAAM,CAACjP,SAAS,GAAGsE,iBAAiB;AACpC2K,QAAAA,MAAM,CAACjF,OAAO,GAAG9B,KAAK,CAAC,iBAAiB,CAAC;AACzC+G,QAAAA,MAAM,CAAC3P,KAAK,GAAG4I,KAAK,CAAC,eAAe,CAAC;AACrC+G,QAAAA,MAAM,CAAChF,WAAW,GAAG/B,KAAK,CAAC,qBAAqB,CAAC;AACjD+G,QAAAA,MAAM,CAAC/E,aAAa,GAAGhC,KAAK,CAAC,uBAAuB,CAAC;AACrD+G,QAAAA,MAAM,CAAC9E,WAAW,GAAGjC,KAAK,CAAC,qBAAqB,CAAC;AACjD+G,QAAAA,MAAM,CAAC7E,aAAa,GAAGlC,KAAK,CAAC,uBAAuB,CAAC;AACrD+G,QAAAA,MAAM,CAAC5E,SAAS,GAAGnC,KAAK,CAAC,mBAAmB,CAAC;AAC7C+G,QAAAA,MAAM,CAAC3E,UAAU,GAAGpC,KAAK,CAAC,oBAAoB,CAAC;AAC/C+G,QAAAA,MAAM,CAAC1E,aAAa,GAAGrC,KAAK,CAAC,uBAAuB,CAAC;AACrD+G,QAAAA,MAAM,CAACzE,WAAW,GAAGtC,KAAK,CAAC,0BAA0B,CAAC;AACtD+G,QAAAA,MAAM,CAACxE,WAAW,GAAGvC,KAAK,CAAC,0BAA0B,CAAC;QACtDnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,UAAU,EAAEkH,MAAM,CAAC;AACrE,MAAA;AAEA,MAAA,MAAMlJ,iBAAiB,GAAGmC,KAAK,CAAC,mBAAmB,CAAC;MACpD,IAAInC,iBAAiB,GAAG,CAAC,EACzB;AACE,QAAA,MAAMkJ,MAAM,GAAG,IAAIqB,qBAAuB,EAAE;QAC5CrB,MAAM,CAACrE,KAAK,GAAG7E,iBAAiB;QAChCkJ,MAAM,CAACsB,QAAQ,GAAG,CAAC;AACnBtB,QAAAA,MAAM,CAACpE,aAAa,GAAG3C,KAAK,CAAC,2BAA2B,CAAC;AACzD+G,QAAAA,MAAM,CAACnE,WAAW,GAAG5C,KAAK,CAAC,yBAAyB,CAAC;AACrD+G,QAAAA,MAAM,CAAClE,UAAU,GAAG7C,KAAK,CAAC,mBAAmB,CAAC;AAC9C+G,QAAAA,MAAM,CAACuB,oBAAoB,GAAGtI,KAAK,CAAC,kCAAkC,CAAC;QACvEnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,cAAc,EAAEkH,MAAM,CAAC;AACzE,MAAA;AAEAlH,MAAAA,WAAW,CAACnF,kBAAkB,GAAGsF,KAAK,CAAC,oBAAoB,CAAC;AAC5D,MAAA,MAAM3B,gBAAgB,GAAG2B,KAAK,CAAC,kBAAkB,CAAC;MAClD,IAAI3B,gBAAgB,GAAG,CAAC,EACxB;AACE,QAAA,MAAM0I,MAAM,GAAG,IAAIwB,qBAA0B,EAAE;QAC/CxB,MAAM,CAAC1I,gBAAgB,GAAGA,gBAAgB;AAC1C0I,QAAAA,MAAM,CAACxI,SAAS,GAAGyB,KAAK,CAAC,WAAW,CAAC;AACrC+G,QAAAA,MAAM,CAACtI,eAAe,GAAGuB,KAAK,CAAC,iBAAiB,CAAC;AACjD+G,QAAAA,MAAM,CAACpI,aAAa,GAAGqB,KAAK,CAAC,eAAe,CAAC;AAC7C+G,QAAAA,MAAM,CAAClI,UAAU,GAAGmB,KAAK,CAAC,YAAY,CAAC;AACvC+G,QAAAA,MAAM,CAAChI,SAAS,GAAGiB,KAAK,CAAC,WAAW,CAAC;AACrC+G,QAAAA,MAAM,CAAC9H,WAAW,GAAGe,KAAK,CAAC,aAAa,CAAC;QACzCnY,qBAAwB,CAACif,SAAS,CAACjH,WAAW,EAAE,iBAAiB,EAAEkH,MAAM,CAAC;AAC5E,MAAA;AACA,MAAA,OAAOlH,WAAW;AACpB,IAAA;GAWD;AA9hBQ2I,EAAAA,QAAQ,GAAGC,MAAM,CAACC,MAAM,CAAC;AAC9BC,IAAAA,sBAAsB,EAAE,CAAC;AACzBC,IAAAA,YAAY,EAAE,CAAC;AACf/Q,IAAAA,eAAe,EAAE,CAAC;AAClBgR,IAAAA,aAAa,EAAE,CAAC;AAChBC,IAAAA,WAAW,EAAE,CAAC;AACdC,IAAAA,cAAc,EAAE;AAClB,GAAC,CAAC;AAEKC,EAAAA,aAAa,GAAGP,MAAM,CAACC,MAAM,CAAC;AACnCO,IAAAA,qBAAqB,EAAE,CAAC;AACxBC,IAAAA,gBAAgB,EAAE,CAAC;AACnBC,IAAAA,yBAAyB,EAAE,CAAC;AAC5BC,IAAAA,qBAAqB,EAAE,CAAC;AACxBC,IAAAA,eAAe,EAAE,CAAC;AAClBC,IAAAA,UAAU,EAAE,CAAC;AACbC,IAAAA,oBAAoB,EAAE,CAAC;AACvBC,IAAAA,eAAe,EAAE,CAAC;AAClBC,IAAAA,kBAAkB,EAAE,CAAC;AACrBC,IAAAA,mBAAmB,EAAE,CAAC;AACtBC,IAAAA,8BAA8B,EAAE,EAAE;AAClCC,IAAAA,kBAAkB,EAAE,EAAE;AACtBC,IAAAA,uBAAuB,EAAE,EAAE;AAC3BC,IAAAA,UAAU,EAAE,EAAE;AACdC,IAAAA,cAAc,EAAE,EAAE;AAClBC,IAAAA,UAAU,EAAE,EAAE;AACdC,IAAAA,aAAa,EAAE,EAAE;AACjBC,IAAAA,QAAQ,EAAE,EAAE;AACZC,IAAAA,kBAAkB,EAAE,EAAE;AACtBC,IAAAA,gBAAgB,EAAE,EAAE;AACpBC,IAAAA,cAAc,EAAE,EAAE;AAClBC,IAAAA,qBAAqB,EAAE,EAAE;AACzBC,IAAAA,uBAAuB,EAAE,EAAE;AAC3BC,IAAAA,qBAAqB,EAAE,EAAE;AACzBC,IAAAA,uBAAuB,EAAE,EAAE;AAC3BC,IAAAA,mBAAmB,EAAE,EAAE;AACvBC,IAAAA,oBAAoB,EAAE,EAAE;AACxBC,IAAAA,uBAAuB,EAAE,EAAE;AAC3BC,IAAAA,2BAA2B,EAAE,EAAE;AAC/BC,IAAAA,2BAA2B,EAAE,EAAE;AAC/BC,IAAAA,oBAAoB,EAAE,EAAE;AACxBC,IAAAA,6BAA6B,EAAE,EAAE;AACjCC,IAAAA,2BAA2B,EAAE,EAAE;AAC/BC,IAAAA,oBAAoB,EAAE,EAAE;AACxBC,IAAAA,iBAAiB,EAAE,EAAE;AACrBC,IAAAA,UAAU,EAAE,EAAE;AACdC,IAAAA,gBAAgB,EAAE,EAAE;AACpBC,IAAAA,cAAc,EAAE,EAAE;AAClBC,IAAAA,WAAW,EAAE,EAAE;AACfC,IAAAA,UAAU,EAAE,EAAE;AACdC,IAAAA,YAAY,EAAE,EAAE;AAChBC,IAAAA,iCAAiC,EAAE;AACrC,GAAC,CAAC;AAEK/C,EAAAA,sBAAsB,GAAG,CAAC;AAE1BC,EAAAA,YAAY,GAAG,CAAC;AAEhB/Q,EAAAA,eAAe,GAAG,CAAC;AAEnBgR,EAAAA,aAAa,GAAG,CAAC;AAEjBC,EAAAA,WAAW,GAAG,CAAC;AAEfC,EAAAA,cAAc,GAAG,CAAC;EAElBvJ,cAAc,GAAGiJ,MAAM,CAACC,MAAM,CAAC,CACpC,qBAAqB,EACrB,iBAAiB,EAAE,yBAAyB,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,wBAAwB,EAC/G,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAC1G,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAC1G,gBAAgB,EAAE,WAAW,EAAE,oBAAoB,EACnD,oBAAoB,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,6BAA6B,EAAE,kBAAkB,EAAE,sBAAsB,EACzJ,YAAY,EAAE,eAAe,EAAE,WAAW,EAAE,cAAc,EAAE,SAAS,EACrE,mBAAmB,EAAE,iBAAiB,EAAE,eAAe,EAAE,qBAAqB,EAAE,uBAAuB,EAAE,qBAAqB,EAAE,uBAAuB,EACvJ,mBAAmB,EAAE,oBAAoB,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,0BAA0B,EAC1H,mBAAmB,EAAE,2BAA2B,EAAE,yBAAyB,EAAE,mBAAmB,EAChG,kBAAkB,EAAE,WAAW,EAAE,iBAAiB,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,aAAa,CAC9G,CAAC;AAEKhJ,EAAAA,aAAa,GAAG+I,MAAM,CAACC,MAAM,CAAC;AACnC1Q,IAAAA,mBAAmB,EAAE,CAAC;AACtBE,IAAAA,eAAe,EAAE,CAAC;AAClBE,IAAAA,uBAAuB,EAAE,CAAC;AAC1BE,IAAAA,mBAAmB,EAAE,CAAC;AACtBE,IAAAA,cAAc,EAAE,CAAC;AACjBE,IAAAA,sBAAsB,EAAE,CAAC;AACzBE,IAAAA,cAAc,EAAE,GAAG;AACnBE,IAAAA,cAAc,EAAE,CAAC;AACjBE,IAAAA,cAAc,EAAE,CAAC;AACjBE,IAAAA,cAAc,EAAE,EAAE;AAClBE,IAAAA,cAAc,EAAE,EAAE;AAClBE,IAAAA,cAAc,EAAE,EAAE;AAClBE,IAAAA,cAAc,EAAEC,IAAI,CAACC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;AAC/DE,IAAAA,cAAc,EAAEH,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAC3DI,IAAAA,cAAc,EAAEL,IAAI,CAACC,UAAU,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC;AAC/DM,IAAAA,cAAc,EAAEP,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAC3DQ,IAAAA,cAAc,EAAET,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAC3DU,IAAAA,cAAc,EAAEX,IAAI,CAACC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC;AAC3DY,IAAAA,cAAc,EAAE,CAAC;AACjBE,IAAAA,SAAS,EAAE,EAAE;AACbE,IAAAA,kBAAkB,EAAE,CAAC;AACrBE,IAAAA,kBAAkB,EAAE,CAAC;AACrBE,IAAAA,aAAa,EAAE,CAAC;AAChBE,IAAAA,gBAAgB,EAAE,CAAC;AACnBE,IAAAA,iBAAiB,EAAE,CAAC;AACpBE,IAAAA,2BAA2B,EAAE,CAAC;AAC9BE,IAAAA,gBAAgB,EAAE,KAAK;AACvBE,IAAAA,oBAAoB,EAAE,CAAC;AACvBE,IAAAA,UAAU,EAAE,CAAC;AACbE,IAAAA,aAAa,EAAE,CAAC;AAChBE,IAAAA,SAAS,EAAErC,IAAI,CAACC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACtCsC,IAAAA,YAAY,EAAE,CAAC;AACfE,IAAAA,OAAO,EAAE,EAAE;AACXE,IAAAA,iBAAiB,EAAE,CAAC;AACpBE,IAAAA,eAAe,EAAE,CAAC;AAClBE,IAAAA,aAAa,EAAE/C,IAAI,CAACC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IAC1CgD,mBAAmB,EAAEpF,IAAI,CAACoC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC;AAC5CkD,IAAAA,qBAAqB,EAAEtF,IAAI,CAACuF,MAAM,EAAE;IACpCE,mBAAmB,EAAEzF,IAAI,CAACoC,UAAU,CAAC,EAAE,EAAE,EAAE,CAAC;AAC5CuD,IAAAA,qBAAqB,EAAE3F,IAAI,CAACuF,MAAM,EAAE;AACpCM,IAAAA,iBAAiB,EAAE,EAAE;AACrBE,IAAAA,kBAAkB,EAAE,EAAE;AACtBE,IAAAA,qBAAqB,EAAE,CAAC;AACxBE,IAAAA,wBAAwB,EAAE,CAAC;AAC3BE,IAAAA,wBAAwB,EAAE,CAAC;AAC3BE,IAAAA,iBAAiB,EAAE,CAAC;AACpBE,IAAAA,yBAAyB,EAAE,CAAC;AAC5BE,IAAAA,uBAAuB,EAAE,CAAC;AAC1BE,IAAAA,iBAAiB,EAAE,CAAC;AACpBkB,IAAAA,gCAAgC,EAAE,KAAK;AACvChB,IAAAA,gBAAgB,EAAE,IAAI;AACtBE,IAAAA,SAAS,EAAE,CAAC;AACZE,IAAAA,eAAe,EAAE,CAAC;AAClBE,IAAAA,aAAa,EAAE,CAAC;AAChBE,IAAAA,UAAU,EAAE,CAAC;IACbE,SAAS,EAAExH,IAAI,CAACmC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;AACnCuF,IAAAA,WAAW,EAAE1H,IAAI,CAACsF,MAAM;AAC1B,GAAC,CAAC;EAEKyI,mBAAmB,GAAGmD,MAAM,CAACC,MAAM,CAAC,IAAIvJ,GAAG,CAAC,CACjD,WAAW,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,kCAAkC,CACpI,CAAC,CAAC;AAuYIwM,EAAAA,KAAK,GAAGlD,MAAM,CAACC,MAAM,CAAC;AAC3BkD,IAAAA,IAAI,EAAE,CAAC;AACPC,IAAAA,QAAQ,EAAE,CAAC;AACXC,IAAAA,SAAS,EAAE,CAAC;AACZC,IAAAA,QAAQ,EAAE,CAAC;AACXC,IAAAA,OAAO,EAAE,CAAC;AACVC,IAAAA,KAAK,EAAE;AACT,GAAC,CAAC;EAAC1I,WAAAA,GAAA;IAAA,KAAA,CAAA5b,qBAAA,GAAA2O,UAAA,EAAA;AAAA,EAAA;AAAA,CAAA,EAAA;;;;"}
@@ -5,6 +5,11 @@ import { Tr2RenderContext as _Tr2RenderContext } from '../trinityCore/Tr2RenderC
5
5
  import { TriRenderJob as _TriRenderJob } from './TriRenderJob.js';
6
6
 
7
7
  let _initProto, _initClass, _init_recurring, _init_extra_recurring, _init_once, _init_extra_once, _init_chained, _init_extra_chained, _init_updateRecurring, _init_extra_updateRecurring;
8
+
9
+ /**
10
+ * The four render-job schedules a frame draws from - recurring, one-off, chained
11
+ * and update-recurring - and the order in which they are run.
12
+ */
8
13
  let _Tr2RenderJobs;
9
14
  new class extends _identity {
10
15
  static [class Tr2RenderJobs extends CjsModel {
@@ -25,6 +30,12 @@ new class extends _identity {
25
30
  once = (_init_extra_recurring(this), _init_once(this, []));
26
31
  chained = (_init_extra_once(this), _init_chained(this, []));
27
32
  updateRecurring = (_init_extra_chained(this), _init_updateRecurring(this, []));
33
+
34
+ /**
35
+ * Carbon Tr2RenderJobs::Run (cpp:23-98): runs every recurring job, then every one-off job keeping only those still RJ_IN_PROGRESS for the next frame, then chained jobs until one reports RJ_IN_PROGRESS, at which point that job and all remaining ones are carried over.
36
+ * The whole pass is bracketed by a render-target/depth-stencil batch so no job can leak a binding past the frame.
37
+ * @param {object} [executor] performs the work the jobs describe; defaults to the shared Tr2RenderContext
38
+ */
28
39
  Run(realTime, simTime, executor = null) {
29
40
  const context = executor || _Tr2RenderContext.GetDefault();
30
41
  let batch = null;
@@ -52,10 +63,33 @@ new class extends _identity {
52
63
  if (batch) _Tr2RenderJobs.#endBatch(context, this, batch);
53
64
  }
54
65
  }
66
+
67
+ /**
68
+ * Carbon Tr2RenderJobs::RunUpdate (cpp:100-111): runs the update-recurring
69
+ * jobs only; unlike Run this pass reschedules nothing and is not bracketed by
70
+ * a batch.
71
+ */
55
72
  RunUpdate(realTime, simTime, executor = null) {
56
73
  const context = executor || _Tr2RenderContext.GetDefault();
57
74
  for (const job of this.updateRecurring.slice()) _Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);
58
75
  }
76
+
77
+ /**
78
+ * Runs one scheduled job, reporting an invalid-render-job diagnostic and
79
+ * RJ_FAILED when the entry cannot be run.
80
+ */
81
+
82
+ /**
83
+ * Opens the frame's target scope: delegates to the executor's BeginBatch when
84
+ * it has one, otherwise pushes a render-target and depth-stencil entry to
85
+ * snapshot the current binding, undoing whatever was pushed if the second push
86
+ * throws. The returned token tells #endBatch what to close.
87
+ */
88
+
89
+ /**
90
+ * Closes the scope opened by #beginBatch, either delegating to EndBatch or
91
+ * popping the depth-stencil and render target in reverse order.
92
+ */
59
93
  }];
60
94
  #runJob(job, realTime, simTime, executor, owner) {
61
95
  if (!job?.Run) {
@@ -1 +1 @@
1
- {"version":3,"file":"Tr2RenderJobs.js","sources":["../../../src/renderJob/Tr2RenderJobs.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\RenderJob\\Tr2RenderJobs.h\n// Source: E:\\carbonengine\\trinity\\trinity\\RenderJob\\Tr2RenderJobs.cpp\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { Tr2RenderContext } from \"../trinityCore/Tr2RenderContext.js\";\nimport { TriRenderJob } from \"./TriRenderJob.js\";\n\n\n@type.define({ className: \"Tr2RenderJobs\", family: \"renderJob\" })\nexport class Tr2RenderJobs extends CjsModel\n{\n @io.persist\n @type.list(\"TriRenderJob\")\n recurring = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n once = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n chained = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n updateRecurring = [];\n\n @carbon.method\n @impl.adapted\n Run(realTime, simTime, executor = null)\n {\n const context = executor || Tr2RenderContext.GetDefault();\n let batch = null;\n try\n {\n batch = Tr2RenderJobs.#beginBatch(context, this);\n for (const job of this.recurring.slice()) Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n\n const continuedOnce = [];\n for (const job of this.once.slice())\n {\n const status = Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n if (status === TriRenderJob.Status.RJ_IN_PROGRESS) continuedOnce.push(job);\n }\n this.once = continuedOnce;\n\n const chained = this.chained.slice();\n const continuedChained = [];\n for (let index = 0; index < chained.length; index++)\n {\n const job = chained[index];\n const status = Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n if (status === TriRenderJob.Status.RJ_IN_PROGRESS)\n {\n continuedChained.push(...chained.slice(index));\n break;\n }\n }\n this.chained = continuedChained;\n }\n finally\n {\n if (batch) Tr2RenderJobs.#endBatch(context, this, batch);\n }\n }\n\n @carbon.method\n @impl.adapted\n RunUpdate(realTime, simTime, executor = null)\n {\n const context = executor || Tr2RenderContext.GetDefault();\n for (const job of this.updateRecurring.slice()) Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n }\n\n static #runJob(job, realTime, simTime, executor, owner)\n {\n if (!job?.Run)\n {\n executor?.AddDiagnostic?.({ type: \"invalid-render-job\", owner, job });\n return TriRenderJob.Status.RJ_FAILED;\n }\n return job.Run(realTime, simTime, executor);\n }\n\n static #beginBatch(executor, owner)\n {\n if (executor?.BeginBatch)\n {\n executor.BeginBatch(owner);\n return { delegated: true };\n }\n let renderTargetPushed = false;\n let depthStencilPushed = false;\n try\n {\n executor?.PushRenderTarget?.(null, 0);\n renderTargetPushed = !!executor?.PushRenderTarget;\n executor?.PushDepthStencil?.(null);\n depthStencilPushed = !!executor?.PushDepthStencil;\n return { delegated: false, renderTargetPushed, depthStencilPushed };\n }\n catch (error)\n {\n if (depthStencilPushed) executor?.PopDepthStencil?.();\n if (renderTargetPushed) executor?.PopRenderTarget?.(0);\n throw error;\n }\n }\n\n static #endBatch(executor, owner, batch)\n {\n if (batch.delegated) return executor?.EndBatch?.(owner);\n if (batch.depthStencilPushed) executor?.PopDepthStencil?.();\n if (batch.renderTargetPushed) executor?.PopRenderTarget?.(0);\n }\n}\n"],"names":["_Tr2RenderJobs","_identity","Tr2RenderJobs","CjsModel","e","_init_recurring","_init_extra_recurring","_init_once","_init_extra_once","_init_chained","_init_extra_chained","_init_updateRecurring","_init_extra_updateRecurring","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","list","carbon","method","impl","adapted","constructor","args","recurring","once","chained","updateRecurring","Run","realTime","simTime","executor","context","Tr2RenderContext","GetDefault","batch","job","slice","continuedOnce","status","TriRenderJob","Status","RJ_IN_PROGRESS","push","continuedChained","index","length","RunUpdate","#runJob","owner","AddDiagnostic","RJ_FAILED","#beginBatch","BeginBatch","delegated","renderTargetPushed","depthStencilPushed","PushRenderTarget","PushDepthStencil","error","PopDepthStencil","PopRenderTarget","#endBatch","EndBatch"],"mappings":"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"}
1
+ {"version":3,"file":"Tr2RenderJobs.js","sources":["../../../src/renderJob/Tr2RenderJobs.js"],"sourcesContent":["// Source: E:\\carbonengine\\trinity\\trinity\\RenderJob\\Tr2RenderJobs.h\n// Source: E:\\carbonengine\\trinity\\trinity\\RenderJob\\Tr2RenderJobs.cpp\nimport { CjsModel } from \"@carbonenginejs/runtime-utils/model\";\nimport { carbon, impl, io, type } from \"@carbonenginejs/runtime-utils/schema\";\nimport { Tr2RenderContext } from \"../trinityCore/Tr2RenderContext.js\";\nimport { TriRenderJob } from \"./TriRenderJob.js\";\n\n\n/**\n * The four render-job schedules a frame draws from - recurring, one-off, chained\n * and update-recurring - and the order in which they are run.\n */\n@type.define({ className: \"Tr2RenderJobs\", family: \"renderJob\" })\nexport class Tr2RenderJobs extends CjsModel\n{\n @io.persist\n @type.list(\"TriRenderJob\")\n recurring = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n once = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n chained = [];\n\n @io.persist\n @type.list(\"TriRenderJob\")\n updateRecurring = [];\n\n /**\n * Carbon Tr2RenderJobs::Run (cpp:23-98): runs every recurring job, then every one-off job keeping only those still RJ_IN_PROGRESS for the next frame, then chained jobs until one reports RJ_IN_PROGRESS, at which point that job and all remaining ones are carried over.\n * The whole pass is bracketed by a render-target/depth-stencil batch so no job can leak a binding past the frame.\n * @param {object} [executor] performs the work the jobs describe; defaults to the shared Tr2RenderContext\n */\n @carbon.method\n @impl.adapted\n Run(realTime, simTime, executor = null)\n {\n const context = executor || Tr2RenderContext.GetDefault();\n let batch = null;\n try\n {\n batch = Tr2RenderJobs.#beginBatch(context, this);\n for (const job of this.recurring.slice()) Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n\n const continuedOnce = [];\n for (const job of this.once.slice())\n {\n const status = Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n if (status === TriRenderJob.Status.RJ_IN_PROGRESS) continuedOnce.push(job);\n }\n this.once = continuedOnce;\n\n const chained = this.chained.slice();\n const continuedChained = [];\n for (let index = 0; index < chained.length; index++)\n {\n const job = chained[index];\n const status = Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n if (status === TriRenderJob.Status.RJ_IN_PROGRESS)\n {\n continuedChained.push(...chained.slice(index));\n break;\n }\n }\n this.chained = continuedChained;\n }\n finally\n {\n if (batch) Tr2RenderJobs.#endBatch(context, this, batch);\n }\n }\n\n /**\n * Carbon Tr2RenderJobs::RunUpdate (cpp:100-111): runs the update-recurring\n * jobs only; unlike Run this pass reschedules nothing and is not bracketed by\n * a batch.\n */\n @carbon.method\n @impl.adapted\n RunUpdate(realTime, simTime, executor = null)\n {\n const context = executor || Tr2RenderContext.GetDefault();\n for (const job of this.updateRecurring.slice()) Tr2RenderJobs.#runJob(job, realTime, simTime, context, this);\n }\n\n /**\n * Runs one scheduled job, reporting an invalid-render-job diagnostic and\n * RJ_FAILED when the entry cannot be run.\n */\n static #runJob(job, realTime, simTime, executor, owner)\n {\n if (!job?.Run)\n {\n executor?.AddDiagnostic?.({ type: \"invalid-render-job\", owner, job });\n return TriRenderJob.Status.RJ_FAILED;\n }\n return job.Run(realTime, simTime, executor);\n }\n\n /**\n * Opens the frame's target scope: delegates to the executor's BeginBatch when\n * it has one, otherwise pushes a render-target and depth-stencil entry to\n * snapshot the current binding, undoing whatever was pushed if the second push\n * throws. The returned token tells #endBatch what to close.\n */\n static #beginBatch(executor, owner)\n {\n if (executor?.BeginBatch)\n {\n executor.BeginBatch(owner);\n return { delegated: true };\n }\n let renderTargetPushed = false;\n let depthStencilPushed = false;\n try\n {\n executor?.PushRenderTarget?.(null, 0);\n renderTargetPushed = !!executor?.PushRenderTarget;\n executor?.PushDepthStencil?.(null);\n depthStencilPushed = !!executor?.PushDepthStencil;\n return { delegated: false, renderTargetPushed, depthStencilPushed };\n }\n catch (error)\n {\n if (depthStencilPushed) executor?.PopDepthStencil?.();\n if (renderTargetPushed) executor?.PopRenderTarget?.(0);\n throw error;\n }\n }\n\n /**\n * Closes the scope opened by #beginBatch, either delegating to EndBatch or\n * popping the depth-stencil and render target in reverse order.\n */\n static #endBatch(executor, owner, batch)\n {\n if (batch.delegated) return executor?.EndBatch?.(owner);\n if (batch.depthStencilPushed) executor?.PopDepthStencil?.();\n if (batch.renderTargetPushed) executor?.PopRenderTarget?.(0);\n }\n}\n"],"names":["_Tr2RenderJobs","_identity","Tr2RenderJobs","CjsModel","e","_init_recurring","_init_extra_recurring","_init_once","_init_extra_once","_init_chained","_init_extra_chained","_init_updateRecurring","_init_extra_updateRecurring","_initProto","c","_initClass","_applyDecs","type","define","className","family","io","persist","list","carbon","method","impl","adapted","constructor","args","recurring","once","chained","updateRecurring","Run","realTime","simTime","executor","context","Tr2RenderContext","GetDefault","batch","job","slice","continuedOnce","status","TriRenderJob","Status","RJ_IN_PROGRESS","push","continuedChained","index","length","RunUpdate","#runJob","owner","AddDiagnostic","RJ_FAILED","#beginBatch","BeginBatch","delegated","renderTargetPushed","depthStencilPushed","PushRenderTarget","PushDepthStencil","error","PopDepthStencil","PopRenderTarget","#endBatch","EndBatch"],"mappings":"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"}