@shopware-ag/dive 3.0.11 → 4.0.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 (200) hide show
  1. package/README.md +31 -5
  2. package/build/chunks/{AssetCache-MtISiPD2.cjs → AssetCache-DdxevusY.cjs} +1 -1
  3. package/build/chunks/{AssetCache-DOB996Vk.mjs → AssetCache-MXFCGzZU.mjs} +1 -1
  4. package/build/chunks/AssetExporter-CD2iuQce.mjs +108 -0
  5. package/build/chunks/AssetExporter-CoL-QXkB.cjs +1 -0
  6. package/build/chunks/{AssetLoader-B1n3KGOu.cjs → AssetLoader-BDDJG9JL.cjs} +2 -2
  7. package/build/chunks/{AssetLoader-BY5D3Cvc.mjs → AssetLoader-kRhuVN4p.mjs} +12 -21
  8. package/build/chunks/FileTypes-DGSsi-AX.mjs +2294 -0
  9. package/build/chunks/FileTypes-gD_1MonW.cjs +29 -0
  10. package/build/chunks/ModelComponent-Cj3ff6nL.cjs +1 -0
  11. package/build/chunks/ModelComponent-DkfAgTL0.mjs +87 -0
  12. package/build/chunks/OrbitController-DFPcXvlO.cjs +1 -0
  13. package/build/chunks/OrbitController-DLEyTvUt.mjs +612 -0
  14. package/build/chunks/SpriteTextComponent-ByefJLeU.cjs +1 -0
  15. package/build/chunks/SpriteTextComponent-CG5vfiFy.mjs +83 -0
  16. package/build/chunks/collectAnimations-BgYCN1le.mjs +35 -0
  17. package/build/chunks/collectAnimations-C3HfZHte.cjs +1 -0
  18. package/build/chunks/contributesToBounds-C1mva__U.cjs +1 -0
  19. package/build/chunks/contributesToBounds-DYmHYES4.mjs +14 -0
  20. package/build/chunks/detachTransformControls-2XQrpLN-.cjs +1 -0
  21. package/build/chunks/detachTransformControls-Dr3TIdVy.mjs +209 -0
  22. package/build/chunks/{isFileTypeSupported-C-hfGk-7.mjs → isFileExtensionSupported-CgcqpgqN.mjs} +1 -1
  23. package/build/chunks/{isFileTypeSupported-xoGjHFuz.cjs → isFileExtensionSupported-RvlnH2dr.cjs} +1 -1
  24. package/build/chunks/isVisibleInHierarchy-D9JcLqR5.cjs +1 -0
  25. package/build/chunks/isVisibleInHierarchy-KzVGvDEw.mjs +21 -0
  26. package/build/components/boundingbox/BoundingBoxComponent.d.ts +100 -0
  27. package/build/components/boundingbox/index.d.ts +1 -0
  28. package/build/components/camera/CameraComponent.d.ts +75 -0
  29. package/build/components/camera/index.d.ts +2 -0
  30. package/build/components/camera/perspective/PerspectiveCameraComponent.d.ts +39 -0
  31. package/build/components/grid/GridComponent.d.ts +50 -0
  32. package/build/components/index.d.ts +6 -9
  33. package/build/components/light/LightComponent.d.ts +65 -0
  34. package/build/components/light/ambient/AmbientLightComponent.d.ts +10 -0
  35. package/build/components/light/directional/DirectionalLightComponent.d.ts +23 -0
  36. package/build/components/light/hemi/HemisphereLightComponent.d.ts +21 -0
  37. package/build/components/light/index.d.ts +5 -3
  38. package/build/components/light/point/PointLightComponent.d.ts +26 -0
  39. package/build/components/line/MultiLineComponent.d.ts +133 -0
  40. package/build/components/line/index.d.ts +1 -0
  41. package/build/components/mesh/MeshComponent.d.ts +74 -0
  42. package/build/components/mesh/floor/FloorComponent.d.ts +36 -0
  43. package/build/components/mesh/index.d.ts +4 -0
  44. package/build/components/mesh/model/ModelComponent.d.ts +67 -0
  45. package/build/components/mesh/primitive/PrimitiveComponent.d.ts +43 -0
  46. package/build/components/spritetext/SpriteTextComponent.d.ts +58 -0
  47. package/build/constants/VisibilityLayerMask.d.ts +23 -0
  48. package/build/dive.cjs +1 -1
  49. package/build/dive.mjs +252 -774
  50. package/build/engine/Dive.d.ts +17 -13
  51. package/build/engine/boundingbox/BoundingBox.d.ts +76 -0
  52. package/build/engine/component/Component.d.ts +236 -0
  53. package/build/engine/environment/Environment.d.ts +8 -18
  54. package/build/engine/index.d.ts +4 -1
  55. package/build/engine/node/Node.d.ts +189 -0
  56. package/build/engine/promise/abortable/AbortablePromise.d.ts +8 -0
  57. package/build/engine/renderer/Renderer.d.ts +43 -7
  58. package/build/engine/scene/Scene.d.ts +88 -4
  59. package/build/engine/scene/root/Root.d.ts +29 -0
  60. package/build/engine/scene/xrroot/XRRoot.d.ts +1 -1
  61. package/build/engine/view/View.d.ts +15 -4
  62. package/build/helpers/collectAnimations/collectAnimations.d.ts +23 -0
  63. package/build/helpers/computeProductBounds/computeProductBounds.d.ts +18 -0
  64. package/build/helpers/contributesToBounds/contributesToBounds.d.ts +17 -0
  65. package/build/helpers/detachTransformControls/detachTransformControls.d.ts +15 -0
  66. package/build/helpers/disposeComponents/disposeComponents.d.ts +20 -0
  67. package/build/helpers/findSceneRecursive/findSceneRecursive.d.ts +7 -3
  68. package/build/helpers/implementsInterface/implementsInterface.d.ts +11 -0
  69. package/build/helpers/index.d.ts +6 -1
  70. package/build/helpers/isVisibleInHierarchy/isVisibleInHierarchy.d.ts +12 -0
  71. package/build/index.d.ts +0 -1
  72. package/build/plugins/animation/index.mjs +3 -2
  73. package/build/plugins/animation/src/system/AnimationSystem.d.ts +3 -2
  74. package/build/plugins/ar/index.cjs +1 -1
  75. package/build/plugins/ar/index.mjs +2 -2
  76. package/build/plugins/ar/src/webxr/WebXR.d.ts +7 -0
  77. package/build/plugins/assetcache/index.cjs +1 -1
  78. package/build/plugins/assetcache/index.mjs +1 -1
  79. package/build/plugins/assetexporter/index.cjs +1 -1
  80. package/build/plugins/assetexporter/index.mjs +1 -1
  81. package/build/plugins/assetexporter/src/AssetExporter.d.ts +12 -0
  82. package/build/plugins/assetloader/index.cjs +1 -1
  83. package/build/plugins/assetloader/index.mjs +2 -2
  84. package/build/plugins/mediacreator/index.cjs +1 -1
  85. package/build/plugins/mediacreator/index.mjs +32 -30
  86. package/build/plugins/mediacreator/src/MediaCreator.d.ts +1 -2
  87. package/build/plugins/orbitcontroller/index.cjs +1 -1
  88. package/build/plugins/orbitcontroller/index.d.ts +1 -0
  89. package/build/plugins/orbitcontroller/index.mjs +1 -1
  90. package/build/plugins/orbitcontroller/src/OrbitController.d.ts +39 -6
  91. package/build/plugins/orientationdisplay/index.cjs +1 -1
  92. package/build/plugins/orientationdisplay/index.mjs +41 -33
  93. package/build/plugins/orientationdisplay/src/OrientationDisplay.d.ts +3 -3
  94. package/build/plugins/quickview/index.cjs +1 -1
  95. package/build/plugins/quickview/index.mjs +71 -19
  96. package/build/plugins/quickview/src/QuickView.d.ts +40 -8
  97. package/build/plugins/quickview/types/QuickViewSettings.d.ts +14 -0
  98. package/build/plugins/state/index.cjs +1 -27
  99. package/build/plugins/state/index.mjs +2031 -4135
  100. package/build/plugins/state/src/EngineGateway.d.ts +98 -0
  101. package/build/plugins/state/src/EntityRegistry.d.ts +51 -0
  102. package/build/plugins/state/src/State.d.ts +20 -9
  103. package/build/plugins/state/src/actions/camera/computeencompassingview.d.ts +1 -1
  104. package/build/plugins/state/src/actions/camera/movecamera.d.ts +2 -2
  105. package/build/plugins/state/src/actions/index.d.ts +1 -0
  106. package/build/plugins/state/src/actions/media/generatemedia.d.ts +1 -1
  107. package/build/plugins/state/src/actions/object/addobject.d.ts +2 -3
  108. package/build/plugins/state/src/actions/object/deleteobject.d.ts +3 -4
  109. package/build/plugins/state/src/actions/object/deselectobject.d.ts +3 -4
  110. package/build/plugins/state/src/actions/object/dropit.d.ts +2 -2
  111. package/build/plugins/state/src/actions/object/getallobjects.d.ts +2 -3
  112. package/build/plugins/state/src/actions/object/getobjects.d.ts +3 -4
  113. package/build/plugins/state/src/actions/object/index.d.ts +0 -1
  114. package/build/plugins/state/src/actions/object/modelloaded.d.ts +2 -2
  115. package/build/plugins/state/src/actions/object/selectobject.d.ts +3 -4
  116. package/build/plugins/state/src/actions/object/setparent.d.ts +3 -4
  117. package/build/plugins/state/src/actions/object/updateobject.d.ts +3 -4
  118. package/build/plugins/state/src/actions/renderer/startrender.d.ts +1 -1
  119. package/build/plugins/state/src/actions/scene/exportscene.d.ts +2 -2
  120. package/build/plugins/state/src/actions/scene/index.d.ts +0 -1
  121. package/build/plugins/state/src/actions/scene/setbackground.d.ts +2 -2
  122. package/build/plugins/state/src/actions/scene/updatescene.d.ts +2 -2
  123. package/build/plugins/state/src/actions/state/getstate.d.ts +8 -0
  124. package/build/plugins/state/src/actions/state/index.d.ts +2 -0
  125. package/build/plugins/state/src/actions/state/setstate.d.ts +8 -0
  126. package/build/plugins/state/src/helpers/copyVectors/copyVectors.d.ts +17 -0
  127. package/build/plugins/state/src/helpers/updateParentLink/updateParentLink.d.ts +29 -0
  128. package/build/plugins/state/src/helpers/watchEntity/watchEntity.d.ts +30 -0
  129. package/build/plugins/state/types/ActionTypes.d.ts +18 -3
  130. package/build/plugins/state/types/RegisteredEntity.d.ts +27 -0
  131. package/build/plugins/state/types/{StateSceneData.d.ts → StateData.d.ts} +7 -8
  132. package/build/plugins/state/types/index.d.ts +3 -1
  133. package/build/plugins/state/types/schema/BaseEntitySchema.d.ts +25 -0
  134. package/build/plugins/state/types/schema/CameraSchema.d.ts +18 -0
  135. package/build/plugins/state/types/schema/EntitySchema.d.ts +21 -0
  136. package/build/plugins/state/types/schema/EntityTypeSchema.d.ts +9 -0
  137. package/build/{types → plugins/state/types}/schema/GroupSchema.d.ts +8 -1
  138. package/build/{types → plugins/state/types}/schema/LightSchema.d.ts +16 -0
  139. package/build/plugins/state/types/schema/ModelSchema.d.ts +33 -0
  140. package/build/{types → plugins/state/types}/schema/PrimitiveSchema.d.ts +8 -4
  141. package/build/{types → plugins/state/types}/schema/index.d.ts +1 -4
  142. package/build/plugins/toolbox/index.cjs +1 -1
  143. package/build/plugins/toolbox/index.mjs +194 -150
  144. package/build/plugins/toolbox/src/PointerContext.d.ts +7 -0
  145. package/build/plugins/toolbox/src/SelectionState.d.ts +21 -0
  146. package/build/plugins/toolbox/src/Toolbox.d.ts +9 -2
  147. package/build/{components → plugins/toolbox/src}/gizmo/Gizmo.d.ts +16 -2
  148. package/build/{components → plugins/toolbox/src}/gizmo/handles/AxisHandle.d.ts +2 -3
  149. package/build/{components → plugins/toolbox/src}/gizmo/handles/RadialHandle.d.ts +2 -3
  150. package/build/{components → plugins/toolbox/src}/gizmo/handles/ScaleHandle.d.ts +2 -3
  151. package/build/{components → plugins/toolbox/src}/gizmo/rotate/RotateGizmo.d.ts +2 -2
  152. package/build/{components → plugins/toolbox/src}/gizmo/scale/ScaleGizmo.d.ts +3 -3
  153. package/build/{components → plugins/toolbox/src}/gizmo/translate/TranslateGizmo.d.ts +2 -2
  154. package/build/types/components/DIVESceneObject.d.ts +13 -6
  155. package/build/types/components/index.d.ts +0 -1
  156. package/build/types/events/DIVEComponentEventMap.d.ts +14 -0
  157. package/build/types/events/DIVEEntityEventMap.d.ts +47 -0
  158. package/build/types/events/index.d.ts +2 -0
  159. package/build/types/geometry/DIVEGeometry.d.ts +16 -0
  160. package/build/types/geometry/DIVEGeometryType.d.ts +7 -0
  161. package/build/types/geometry/index.d.ts +2 -0
  162. package/build/types/index.d.ts +3 -1
  163. package/build/types/material/DIVEMaterial.d.ts +21 -0
  164. package/build/types/material/index.d.ts +1 -0
  165. package/package.json +8 -9
  166. package/build/chunks/AssetExporter-Cdxb04b3.cjs +0 -1
  167. package/build/chunks/AssetExporter-DLL_vJae.mjs +0 -67
  168. package/build/chunks/FileTypes-DMTSUCcK.cjs +0 -29
  169. package/build/chunks/FileTypes-DYtXCJQV.mjs +0 -2141
  170. package/build/chunks/PerspectiveCamera-B5TvUzTa.mjs +0 -39
  171. package/build/chunks/PerspectiveCamera-DwQUmkDv.cjs +0 -1
  172. package/build/chunks/PovSchema-Co9FznEz.cjs +0 -1
  173. package/build/chunks/PovSchema-DWWvr_ED.mjs +0 -10
  174. package/build/chunks/findInterface-C6mrvf_t.cjs +0 -1
  175. package/build/chunks/findInterface-DbJ5qzbc.mjs +0 -11
  176. package/build/components/boundingbox/BoundingBox.d.ts +0 -136
  177. package/build/components/floor/Floor.d.ts +0 -14
  178. package/build/components/grid/Grid.d.ts +0 -23
  179. package/build/components/group/Group.d.ts +0 -28
  180. package/build/components/light/AmbientLight.d.ts +0 -19
  181. package/build/components/light/PointLight.d.ts +0 -29
  182. package/build/components/light/SceneLight.d.ts +0 -20
  183. package/build/components/model/Model.d.ts +0 -26
  184. package/build/components/node/Node.d.ts +0 -24
  185. package/build/components/primitive/Primitive.d.ts +0 -27
  186. package/build/components/root/Root.d.ts +0 -34
  187. package/build/engine/camera/PerspectiveCamera.d.ts +0 -24
  188. package/build/helpers/isFileTypeSupported/isFileTypeSupported.d.ts +0 -9
  189. package/build/plugins/state/src/actions/object/placeonfloor.d.ts +0 -12
  190. package/build/plugins/state/src/actions/scene/getallscenedata.d.ts +0 -9
  191. package/build/types/components/DIVELight.d.ts +0 -4
  192. package/build/types/schema/BaseEntitySchema.d.ts +0 -8
  193. package/build/types/schema/EntitySchema.d.ts +0 -11
  194. package/build/types/schema/EntityTypeSchema.d.ts +0 -1
  195. package/build/types/schema/GeometrySchema.d.ts +0 -7
  196. package/build/types/schema/GeometryTypeSchema.d.ts +0 -1
  197. package/build/types/schema/MaterialSchema.d.ts +0 -11
  198. package/build/types/schema/ModelSchema.d.ts +0 -14
  199. package/build/types/schema/PovSchema.d.ts +0 -10
  200. /package/build/{components → plugins/toolbox/src}/gizmo/plane/GizmoPlane.d.ts +0 -0
@@ -1,27 +1 @@
1
- "use strict";var $d=Object.defineProperty;var Hd=(d,g,o)=>g in d?$d(d,g,{enumerable:!0,configurable:!0,writable:!0,value:o}):d[g]=o;var rn=(d,g,o)=>Hd(d,typeof g!="symbol"?g+"":g,o);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const qd=require("three/webgpu"),zd=require("../../chunks/FileTypes-DMTSUCcK.cjs");require("three/examples/jsm/loaders/HDRLoader.js");require("three/tsl");const Mi=require("../../chunks/PovSchema-Co9FznEz.cjs"),Ao={};function G(d,g){Ao[d]=g}function xo(d){return Ao[d]}class F{constructor(g,o){rn(this,"_payload");rn(this,"_dependencies");this._payload=g,this._dependencies=o}static define({description:g,execute:o}){return class extends F{constructor(m,N){super(m,N);rn(this,"_description",g);rn(this,"_payload");this._payload=m}execute(){return o(this._payload,this._dependencies)}}}}const mo=F.define({description:"Launches AR mode in native capabilities. (iOS: AR Quick Look, Android: Google Scene Viewer)",execute:async(d,{getARSystem:g})=>g().then(o=>{o.launch(d.uri,d.options)})});G("LAUNCH_AR",mo);const Eo=F.define({description:"Calculates the camera position and target to view the whole scene. (experimental).",execute:(d,{engine:g,controller:o})=>{const S=new zd.BoundingBox(g.scene.root,!1,65280);return o.computeEncompassingView(S)}});G("COMPUTE_ENCOMPASSING_VIEW",Eo);const So=F.define({description:"Gets the current camera position and target.",execute:(d,{controller:g})=>({position:g.object.position.clone(),target:g.target.clone()})});G("GET_CAMERA_TRANSFORM",So);const bo=F.define({description:"Moves the camera to a new position and target.",execute:async(d,{controller:g,registered:o,getAnimationSystem:S,engine:m})=>{const N=await S();let q={x:0,y:0,z:0},un={x:0,y:0,z:0};if("id"in d){const Gn=o.get(d.id);if(!Gn)throw new Error(`POV with id ${d.id} not registered. Registered: ${o}`);if(!Mi.isPovSchema(Gn))throw new Error(`Object with id ${d.id} is not a POV. Object: ${Gn}`);q=Gn.position,un=Gn.target}else q=d.position,un=d.target;m.clock.hasTicker(N)||m.clock.addTicker(N),g.enabled=!0;const jn=await N.fromTargets([{object:g.object.position,to:q},{object:g.target,to:un}],d.duration,{easing:N.Easing.Quadratic.Out,onUpdate:()=>{g.object.lookAt(g.target)},onComplete:()=>{g.enabled=!d.locked}});return jn.play(),{stop:()=>jn.stop()}}});G("MOVE_CAMERA",bo);const Oo=F.define({description:"Sets the camera layer to a certain layer.",execute:(d,{controller:g})=>{"setCameraLayer"in g.object&&g.object.setCameraLayer(d.layer)}});G("SET_CAMERA_LAYER",Oo);const To=F.define({description:"Sets the camera position and target.",execute:(d,{controller:g})=>{g.object.position.copy(d.position),g.target.copy(d.target),g.update()}});G("SET_CAMERA_TRANSFORM",To);const Co=F.define({description:"Zooms the camera in or out by a certain amount.",execute:(d,{controller:g})=>{d.direction==="IN"&&g.zoomIn(d.by),d.direction==="OUT"&&g.zoomOut(d.by)}});G("ZOOM_CAMERA",Co);const Ro=F.define({description:"Generates a screenshot, stores it in a Blob and returns a Promise of a valid URI.",execute:async(d,{registered:g,getMediaCreator:o})=>{const S=await o();if("id"in d){const m=g.get(d.id);if(!m)throw new Error(`Object with id ${d.id} not registered. Registered: ${g}`);if(!Mi.isPovSchema(m))throw new Error(`Object with id ${d.id} is not a POV. Object: ${m}`);const{resolution:N}=d,{position:q,target:un}=m;return S.generateMedia({position:q,target:un,resolution:N})}return S.generateMedia(d)}});G("GENERATE_MEDIA",Ro);const Io=F.define({description:"Adds an object to the scene.",execute:(d,{engine:g,registered:o})=>{o.get(d.id)||(d.parentId===void 0&&(d.parentId=null),o.set(d.id,d),g.scene.root.addSceneObject(d))}});G("ADD_OBJECT",Io);var or=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{},lt={exports:{}};/**
2
- * @license
3
- * Lodash <https://lodash.com/>
4
- * Copyright OpenJS Foundation and other contributors <https://openjsf.org/>
5
- * Released under MIT license <https://lodash.com/license>
6
- * Based on Underscore.js 1.8.3 <http://underscorejs.org/LICENSE>
7
- * Copyright Jeremy Ashkenas, DocumentCloud and Investigative Reporters & Editors
8
- */var Kd=lt.exports,wo;function Zd(){return wo||(wo=1,function(d,g){(function(){var o,S="4.18.1",m=200,N="Unsupported core-js use. Try https://npms.io/search?q=ponyfill.",q="Expected a function",un="Invalid `variable` option passed into `_.template`",jn="Invalid `imports` option passed into `_.template`",Gn="__lodash_hash_undefined__",Yo=500,gt="__lodash_placeholder__",kn=1,Di=2,xe=4,me=1,_t=2,Cn=1,Ee=2,Bi=4,Nn=8,Ne=16,$n=32,$e=64,Hn=128,He=256,sr=512,Jo=30,Xo="...",Qo=800,Vo=16,Ui=1,jo=2,ko=3,ae=1/0,ne=9007199254740991,ns=17976931348623157e292,dt=NaN,Bn=4294967295,es=Bn-1,ts=Bn>>>1,rs=[["ary",Hn],["bind",Cn],["bindKey",Ee],["curry",Nn],["curryRight",Ne],["flip",sr],["partial",$n],["partialRight",$e],["rearg",He]],Se="[object Arguments]",pt="[object Array]",is="[object AsyncFunction]",qe="[object Boolean]",ze="[object Date]",us="[object DOMException]",vt="[object Error]",wt="[object Function]",Wi="[object GeneratorFunction]",Rn="[object Map]",Ke="[object Number]",fs="[object Null]",qn="[object Object]",Fi="[object Promise]",os="[object Proxy]",Ze="[object RegExp]",In="[object Set]",Ye="[object String]",At="[object Symbol]",ss="[object Undefined]",Je="[object WeakMap]",cs="[object WeakSet]",Xe="[object ArrayBuffer]",be="[object DataView]",cr="[object Float32Array]",ar="[object Float64Array]",lr="[object Int8Array]",hr="[object Int16Array]",gr="[object Int32Array]",_r="[object Uint8Array]",dr="[object Uint8ClampedArray]",pr="[object Uint16Array]",vr="[object Uint32Array]",as=/\b__p \+= '';/g,ls=/\b(__p \+=) '' \+/g,hs=/(__e\(.*?\)|\b__t\)) \+\n'';/g,Gi=/&(?:amp|lt|gt|quot|#39);/g,Ni=/[&<>"']/g,gs=RegExp(Gi.source),_s=RegExp(Ni.source),ds=/<%-([\s\S]+?)%>/g,ps=/<%([\s\S]+?)%>/g,$i=/<%=([\s\S]+?)%>/g,vs=/\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,ws=/^\w*$/,As=/[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g,wr=/[\\^$.*+?()[\]{}|]/g,xs=RegExp(wr.source),Ar=/^\s+/,ms=/\s/,Es=/\{(?:\n\/\* \[wrapped with .+\] \*\/)?\n?/,Ss=/\{\n\/\* \[wrapped with (.+)\] \*/,bs=/,? & /,Os=/[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g,Hi=/[()=,{}\[\]\/\s]/,Ts=/\\(\\)?/g,Cs=/\$\{([^\\}]*(?:\\.[^\\}]*)*)\}/g,qi=/\w*$/,Rs=/^[-+]0x[0-9a-f]+$/i,Is=/^0b[01]+$/i,ys=/^\[object .+?Constructor\]$/,Ls=/^0o[0-7]+$/i,Ms=/^(?:0|[1-9]\d*)$/,Ps=/[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g,xt=/($^)/,Ds=/['\n\r\u2028\u2029\\]/g,mt="\\ud800-\\udfff",Bs="\\u0300-\\u036f",Us="\\ufe20-\\ufe2f",Ws="\\u20d0-\\u20ff",zi=Bs+Us+Ws,Ki="\\u2700-\\u27bf",Zi="a-z\\xdf-\\xf6\\xf8-\\xff",Fs="\\xac\\xb1\\xd7\\xf7",Gs="\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf",Ns="\\u2000-\\u206f",$s=" \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000",Yi="A-Z\\xc0-\\xd6\\xd8-\\xde",Ji="\\ufe0e\\ufe0f",Xi=Fs+Gs+Ns+$s,xr="['’]",Hs="["+mt+"]",Qi="["+Xi+"]",Et="["+zi+"]",Vi="\\d+",qs="["+Ki+"]",ji="["+Zi+"]",ki="[^"+mt+Xi+Vi+Ki+Zi+Yi+"]",mr="\\ud83c[\\udffb-\\udfff]",zs="(?:"+Et+"|"+mr+")",nu="[^"+mt+"]",Er="(?:\\ud83c[\\udde6-\\uddff]){2}",Sr="[\\ud800-\\udbff][\\udc00-\\udfff]",Oe="["+Yi+"]",eu="\\u200d",tu="(?:"+ji+"|"+ki+")",Ks="(?:"+Oe+"|"+ki+")",ru="(?:"+xr+"(?:d|ll|m|re|s|t|ve))?",iu="(?:"+xr+"(?:D|LL|M|RE|S|T|VE))?",uu=zs+"?",fu="["+Ji+"]?",Zs="(?:"+eu+"(?:"+[nu,Er,Sr].join("|")+")"+fu+uu+")*",Ys="\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])",Js="\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])",ou=fu+uu+Zs,Xs="(?:"+[qs,Er,Sr].join("|")+")"+ou,Qs="(?:"+[nu+Et+"?",Et,Er,Sr,Hs].join("|")+")",Vs=RegExp(xr,"g"),js=RegExp(Et,"g"),br=RegExp(mr+"(?="+mr+")|"+Qs+ou,"g"),ks=RegExp([Oe+"?"+ji+"+"+ru+"(?="+[Qi,Oe,"$"].join("|")+")",Ks+"+"+iu+"(?="+[Qi,Oe+tu,"$"].join("|")+")",Oe+"?"+tu+"+"+ru,Oe+"+"+iu,Js,Ys,Vi,Xs].join("|"),"g"),nc=RegExp("["+eu+mt+zi+Ji+"]"),ec=/[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/,tc=["Array","Buffer","DataView","Date","Error","Float32Array","Float64Array","Function","Int8Array","Int16Array","Int32Array","Map","Math","Object","Promise","RegExp","Set","String","Symbol","TypeError","Uint8Array","Uint8ClampedArray","Uint16Array","Uint32Array","WeakMap","_","clearTimeout","isFinite","parseInt","setTimeout"],rc=-1,z={};z[cr]=z[ar]=z[lr]=z[hr]=z[gr]=z[_r]=z[dr]=z[pr]=z[vr]=!0,z[Se]=z[pt]=z[Xe]=z[qe]=z[be]=z[ze]=z[vt]=z[wt]=z[Rn]=z[Ke]=z[qn]=z[Ze]=z[In]=z[Ye]=z[Je]=!1;var H={};H[Se]=H[pt]=H[Xe]=H[be]=H[qe]=H[ze]=H[cr]=H[ar]=H[lr]=H[hr]=H[gr]=H[Rn]=H[Ke]=H[qn]=H[Ze]=H[In]=H[Ye]=H[At]=H[_r]=H[dr]=H[pr]=H[vr]=!0,H[vt]=H[wt]=H[Je]=!1;var ic={À:"A",Á:"A",Â:"A",Ã:"A",Ä:"A",Å:"A",à:"a",á:"a",â:"a",ã:"a",ä:"a",å:"a",Ç:"C",ç:"c",Ð:"D",ð:"d",È:"E",É:"E",Ê:"E",Ë:"E",è:"e",é:"e",ê:"e",ë:"e",Ì:"I",Í:"I",Î:"I",Ï:"I",ì:"i",í:"i",î:"i",ï:"i",Ñ:"N",ñ:"n",Ò:"O",Ó:"O",Ô:"O",Õ:"O",Ö:"O",Ø:"O",ò:"o",ó:"o",ô:"o",õ:"o",ö:"o",ø:"o",Ù:"U",Ú:"U",Û:"U",Ü:"U",ù:"u",ú:"u",û:"u",ü:"u",Ý:"Y",ý:"y",ÿ:"y",Æ:"Ae",æ:"ae",Þ:"Th",þ:"th",ß:"ss",Ā:"A",Ă:"A",Ą:"A",ā:"a",ă:"a",ą:"a",Ć:"C",Ĉ:"C",Ċ:"C",Č:"C",ć:"c",ĉ:"c",ċ:"c",č:"c",Ď:"D",Đ:"D",ď:"d",đ:"d",Ē:"E",Ĕ:"E",Ė:"E",Ę:"E",Ě:"E",ē:"e",ĕ:"e",ė:"e",ę:"e",ě:"e",Ĝ:"G",Ğ:"G",Ġ:"G",Ģ:"G",ĝ:"g",ğ:"g",ġ:"g",ģ:"g",Ĥ:"H",Ħ:"H",ĥ:"h",ħ:"h",Ĩ:"I",Ī:"I",Ĭ:"I",Į:"I",İ:"I",ĩ:"i",ī:"i",ĭ:"i",į:"i",ı:"i",Ĵ:"J",ĵ:"j",Ķ:"K",ķ:"k",ĸ:"k",Ĺ:"L",Ļ:"L",Ľ:"L",Ŀ:"L",Ł:"L",ĺ:"l",ļ:"l",ľ:"l",ŀ:"l",ł:"l",Ń:"N",Ņ:"N",Ň:"N",Ŋ:"N",ń:"n",ņ:"n",ň:"n",ŋ:"n",Ō:"O",Ŏ:"O",Ő:"O",ō:"o",ŏ:"o",ő:"o",Ŕ:"R",Ŗ:"R",Ř:"R",ŕ:"r",ŗ:"r",ř:"r",Ś:"S",Ŝ:"S",Ş:"S",Š:"S",ś:"s",ŝ:"s",ş:"s",š:"s",Ţ:"T",Ť:"T",Ŧ:"T",ţ:"t",ť:"t",ŧ:"t",Ũ:"U",Ū:"U",Ŭ:"U",Ů:"U",Ű:"U",Ų:"U",ũ:"u",ū:"u",ŭ:"u",ů:"u",ű:"u",ų:"u",Ŵ:"W",ŵ:"w",Ŷ:"Y",ŷ:"y",Ÿ:"Y",Ź:"Z",Ż:"Z",Ž:"Z",ź:"z",ż:"z",ž:"z",IJ:"IJ",ij:"ij",Œ:"Oe",œ:"oe",ʼn:"'n",ſ:"s"},uc={"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;","'":"&#39;"},fc={"&amp;":"&","&lt;":"<","&gt;":">","&quot;":'"',"&#39;":"'"},oc={"\\":"\\","'":"'","\n":"n","\r":"r","\u2028":"u2028","\u2029":"u2029"},sc=parseFloat,cc=parseInt,su=typeof or=="object"&&or&&or.Object===Object&&or,ac=typeof self=="object"&&self&&self.Object===Object&&self,k=su||ac||Function("return this")(),Or=g&&!g.nodeType&&g,le=Or&&!0&&d&&!d.nodeType&&d,cu=le&&le.exports===Or,Tr=cu&&su.process,xn=function(){try{var a=le&&le.require&&le.require("util").types;return a||Tr&&Tr.binding&&Tr.binding("util")}catch{}}(),au=xn&&xn.isArrayBuffer,lu=xn&&xn.isDate,hu=xn&&xn.isMap,gu=xn&&xn.isRegExp,_u=xn&&xn.isSet,du=xn&&xn.isTypedArray;function gn(a,_,h){switch(h.length){case 0:return a.call(_);case 1:return a.call(_,h[0]);case 2:return a.call(_,h[0],h[1]);case 3:return a.call(_,h[0],h[1],h[2])}return a.apply(_,h)}function lc(a,_,h,x){for(var C=-1,B=a==null?0:a.length;++C<B;){var Q=a[C];_(x,Q,h(Q),a)}return x}function _n(a,_){for(var h=-1,x=a==null?0:a.length;++h<x&&_(a[h],h,a)!==!1;);return a}function hc(a,_){for(var h=a==null?0:a.length;h--&&_(a[h],h,a)!==!1;);return a}function pu(a,_){for(var h=-1,x=a==null?0:a.length;++h<x;)if(!_(a[h],h,a))return!1;return!0}function ee(a,_){for(var h=-1,x=a==null?0:a.length,C=0,B=[];++h<x;){var Q=a[h];_(Q,h,a)&&(B[C++]=Q)}return B}function St(a,_){var h=a==null?0:a.length;return!!h&&Te(a,_,0)>-1}function Cr(a,_,h){for(var x=-1,C=a==null?0:a.length;++x<C;)if(h(_,a[x]))return!0;return!1}function K(a,_){for(var h=-1,x=a==null?0:a.length,C=Array(x);++h<x;)C[h]=_(a[h],h,a);return C}function te(a,_){for(var h=-1,x=_.length,C=a.length;++h<x;)a[C+h]=_[h];return a}function Rr(a,_,h,x){var C=-1,B=a==null?0:a.length;for(x&&B&&(h=a[++C]);++C<B;)h=_(h,a[C],C,a);return h}function gc(a,_,h,x){var C=a==null?0:a.length;for(x&&C&&(h=a[--C]);C--;)h=_(h,a[C],C,a);return h}function Ir(a,_){for(var h=-1,x=a==null?0:a.length;++h<x;)if(_(a[h],h,a))return!0;return!1}var _c=yr("length");function dc(a){return a.split("")}function pc(a){return a.match(Os)||[]}function vu(a,_,h){var x;return h(a,function(C,B,Q){if(_(C,B,Q))return x=B,!1}),x}function bt(a,_,h,x){for(var C=a.length,B=h+(x?1:-1);x?B--:++B<C;)if(_(a[B],B,a))return B;return-1}function Te(a,_,h){return _===_?Rc(a,_,h):bt(a,wu,h)}function vc(a,_,h,x){for(var C=h-1,B=a.length;++C<B;)if(x(a[C],_))return C;return-1}function wu(a){return a!==a}function Au(a,_){var h=a==null?0:a.length;return h?Mr(a,_)/h:dt}function yr(a){return function(_){return _==null?o:_[a]}}function Lr(a){return function(_){return a==null?o:a[_]}}function xu(a,_,h,x,C){return C(a,function(B,Q,$){h=x?(x=!1,B):_(h,B,Q,$)}),h}function wc(a,_){var h=a.length;for(a.sort(_);h--;)a[h]=a[h].value;return a}function Mr(a,_){for(var h,x=-1,C=a.length;++x<C;){var B=_(a[x]);B!==o&&(h=h===o?B:h+B)}return h}function Pr(a,_){for(var h=-1,x=Array(a);++h<a;)x[h]=_(h);return x}function Ac(a,_){return K(_,function(h){return[h,a[h]]})}function mu(a){return a&&a.slice(0,Ou(a)+1).replace(Ar,"")}function dn(a){return function(_){return a(_)}}function Dr(a,_){return K(_,function(h){return a[h]})}function Qe(a,_){return a.has(_)}function Eu(a,_){for(var h=-1,x=a.length;++h<x&&Te(_,a[h],0)>-1;);return h}function Su(a,_){for(var h=a.length;h--&&Te(_,a[h],0)>-1;);return h}function xc(a,_){for(var h=a.length,x=0;h--;)a[h]===_&&++x;return x}var mc=Lr(ic),Ec=Lr(uc);function Sc(a){return"\\"+oc[a]}function bc(a,_){return a==null?o:a[_]}function Ce(a){return nc.test(a)}function Oc(a){return ec.test(a)}function Tc(a){for(var _,h=[];!(_=a.next()).done;)h.push(_.value);return h}function Br(a){var _=-1,h=Array(a.size);return a.forEach(function(x,C){h[++_]=[C,x]}),h}function bu(a,_){return function(h){return a(_(h))}}function re(a,_){for(var h=-1,x=a.length,C=0,B=[];++h<x;){var Q=a[h];(Q===_||Q===gt)&&(a[h]=gt,B[C++]=h)}return B}function Ot(a){var _=-1,h=Array(a.size);return a.forEach(function(x){h[++_]=x}),h}function Cc(a){var _=-1,h=Array(a.size);return a.forEach(function(x){h[++_]=[x,x]}),h}function Rc(a,_,h){for(var x=h-1,C=a.length;++x<C;)if(a[x]===_)return x;return-1}function Ic(a,_,h){for(var x=h+1;x--;)if(a[x]===_)return x;return x}function Re(a){return Ce(a)?Lc(a):_c(a)}function yn(a){return Ce(a)?Mc(a):dc(a)}function Ou(a){for(var _=a.length;_--&&ms.test(a.charAt(_)););return _}var yc=Lr(fc);function Lc(a){for(var _=br.lastIndex=0;br.test(a);)++_;return _}function Mc(a){return a.match(br)||[]}function Pc(a){return a.match(ks)||[]}var Dc=function a(_){_=_==null?k:Ie.defaults(k.Object(),_,Ie.pick(k,tc));var h=_.Array,x=_.Date,C=_.Error,B=_.Function,Q=_.Math,$=_.Object,Ur=_.RegExp,Bc=_.String,mn=_.TypeError,Tt=h.prototype,Uc=B.prototype,ye=$.prototype,Ct=_["__core-js_shared__"],Rt=Uc.toString,U=ye.hasOwnProperty,Wc=0,Tu=function(){var n=/[^.]+$/.exec(Ct&&Ct.keys&&Ct.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}(),It=ye.toString,Fc=Rt.call($),Gc=k._,Nc=Ur("^"+Rt.call(U).replace(wr,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$"),yt=cu?_.Buffer:o,ie=_.Symbol,Lt=_.Uint8Array,Cu=yt?yt.allocUnsafe:o,Mt=bu($.getPrototypeOf,$),Ru=$.create,Iu=ye.propertyIsEnumerable,Pt=Tt.splice,yu=ie?ie.isConcatSpreadable:o,Ve=ie?ie.iterator:o,he=ie?ie.toStringTag:o,Dt=function(){try{var n=ve($,"defineProperty");return n({},"",{}),n}catch{}}(),$c=_.clearTimeout!==k.clearTimeout&&_.clearTimeout,Hc=x&&x.now!==k.Date.now&&x.now,qc=_.setTimeout!==k.setTimeout&&_.setTimeout,Bt=Q.ceil,Ut=Q.floor,Wr=$.getOwnPropertySymbols,zc=yt?yt.isBuffer:o,Lu=_.isFinite,Kc=Tt.join,Zc=bu($.keys,$),V=Q.max,en=Q.min,Yc=x.now,Jc=_.parseInt,Mu=Q.random,Xc=Tt.reverse,Fr=ve(_,"DataView"),je=ve(_,"Map"),Gr=ve(_,"Promise"),Le=ve(_,"Set"),ke=ve(_,"WeakMap"),nt=ve($,"create"),Wt=ke&&new ke,Me={},Qc=we(Fr),Vc=we(je),jc=we(Gr),kc=we(Le),na=we(ke),Ft=ie?ie.prototype:o,et=Ft?Ft.valueOf:o,Pu=Ft?Ft.toString:o;function u(n){if(Y(n)&&!R(n)&&!(n instanceof P)){if(n instanceof En)return n;if(U.call(n,"__wrapped__"))return Bf(n)}return new En(n)}var Pe=function(){function n(){}return function(e){if(!Z(e))return{};if(Ru)return Ru(e);n.prototype=e;var t=new n;return n.prototype=o,t}}();function Gt(){}function En(n,e){this.__wrapped__=n,this.__actions__=[],this.__chain__=!!e,this.__index__=0,this.__values__=o}u.templateSettings={escape:ds,evaluate:ps,interpolate:$i,variable:"",imports:{_:u}},u.prototype=Gt.prototype,u.prototype.constructor=u,En.prototype=Pe(Gt.prototype),En.prototype.constructor=En;function P(n){this.__wrapped__=n,this.__actions__=[],this.__dir__=1,this.__filtered__=!1,this.__iteratees__=[],this.__takeCount__=Bn,this.__views__=[]}function ea(){var n=new P(this.__wrapped__);return n.__actions__=cn(this.__actions__),n.__dir__=this.__dir__,n.__filtered__=this.__filtered__,n.__iteratees__=cn(this.__iteratees__),n.__takeCount__=this.__takeCount__,n.__views__=cn(this.__views__),n}function ta(){if(this.__filtered__){var n=new P(this);n.__dir__=-1,n.__filtered__=!0}else n=this.clone(),n.__dir__*=-1;return n}function ra(){var n=this.__wrapped__.value(),e=this.__dir__,t=R(n),r=e<0,i=t?n.length:0,f=dl(0,i,this.__views__),s=f.start,c=f.end,l=c-s,p=r?c:s-1,v=this.__iteratees__,w=v.length,A=0,E=en(l,this.__takeCount__);if(!t||!r&&i==l&&E==l)return rf(n,this.__actions__);var T=[];n:for(;l--&&A<E;){p+=e;for(var y=-1,b=n[p];++y<w;){var M=v[y],D=M.iteratee,wn=M.type,sn=D(b);if(wn==jo)b=sn;else if(!sn){if(wn==Ui)continue n;break n}}T[A++]=b}return T}P.prototype=Pe(Gt.prototype),P.prototype.constructor=P;function ge(n){var e=-1,t=n==null?0:n.length;for(this.clear();++e<t;){var r=n[e];this.set(r[0],r[1])}}function ia(){this.__data__=nt?nt(null):{},this.size=0}function ua(n){var e=this.has(n)&&delete this.__data__[n];return this.size-=e?1:0,e}function fa(n){var e=this.__data__;if(nt){var t=e[n];return t===Gn?o:t}return U.call(e,n)?e[n]:o}function oa(n){var e=this.__data__;return nt?e[n]!==o:U.call(e,n)}function sa(n,e){var t=this.__data__;return this.size+=this.has(n)?0:1,t[n]=nt&&e===o?Gn:e,this}ge.prototype.clear=ia,ge.prototype.delete=ua,ge.prototype.get=fa,ge.prototype.has=oa,ge.prototype.set=sa;function zn(n){var e=-1,t=n==null?0:n.length;for(this.clear();++e<t;){var r=n[e];this.set(r[0],r[1])}}function ca(){this.__data__=[],this.size=0}function aa(n){var e=this.__data__,t=Nt(e,n);if(t<0)return!1;var r=e.length-1;return t==r?e.pop():Pt.call(e,t,1),--this.size,!0}function la(n){var e=this.__data__,t=Nt(e,n);return t<0?o:e[t][1]}function ha(n){return Nt(this.__data__,n)>-1}function ga(n,e){var t=this.__data__,r=Nt(t,n);return r<0?(++this.size,t.push([n,e])):t[r][1]=e,this}zn.prototype.clear=ca,zn.prototype.delete=aa,zn.prototype.get=la,zn.prototype.has=ha,zn.prototype.set=ga;function Kn(n){var e=-1,t=n==null?0:n.length;for(this.clear();++e<t;){var r=n[e];this.set(r[0],r[1])}}function _a(){this.size=0,this.__data__={hash:new ge,map:new(je||zn),string:new ge}}function da(n){var e=jt(this,n).delete(n);return this.size-=e?1:0,e}function pa(n){return jt(this,n).get(n)}function va(n){return jt(this,n).has(n)}function wa(n,e){var t=jt(this,n),r=t.size;return t.set(n,e),this.size+=t.size==r?0:1,this}Kn.prototype.clear=_a,Kn.prototype.delete=da,Kn.prototype.get=pa,Kn.prototype.has=va,Kn.prototype.set=wa;function _e(n){var e=-1,t=n==null?0:n.length;for(this.__data__=new Kn;++e<t;)this.add(n[e])}function Aa(n){return this.__data__.set(n,Gn),this}function xa(n){return this.__data__.has(n)}_e.prototype.add=_e.prototype.push=Aa,_e.prototype.has=xa;function Ln(n){var e=this.__data__=new zn(n);this.size=e.size}function ma(){this.__data__=new zn,this.size=0}function Ea(n){var e=this.__data__,t=e.delete(n);return this.size=e.size,t}function Sa(n){return this.__data__.get(n)}function ba(n){return this.__data__.has(n)}function Oa(n,e){var t=this.__data__;if(t instanceof zn){var r=t.__data__;if(!je||r.length<m-1)return r.push([n,e]),this.size=++t.size,this;t=this.__data__=new Kn(r)}return t.set(n,e),this.size=t.size,this}Ln.prototype.clear=ma,Ln.prototype.delete=Ea,Ln.prototype.get=Sa,Ln.prototype.has=ba,Ln.prototype.set=Oa;function Du(n,e){var t=R(n),r=!t&&Ae(n),i=!t&&!r&&ce(n),f=!t&&!r&&!i&&We(n),s=t||r||i||f,c=s?Pr(n.length,Bc):[],l=c.length;for(var p in n)(e||U.call(n,p))&&!(s&&(p=="length"||i&&(p=="offset"||p=="parent")||f&&(p=="buffer"||p=="byteLength"||p=="byteOffset")||Jn(p,l)))&&c.push(p);return c}function Bu(n){var e=n.length;return e?n[Qr(0,e-1)]:o}function Ta(n,e){return kt(cn(n),de(e,0,n.length))}function Ca(n){return kt(cn(n))}function Nr(n,e,t){(t!==o&&!Pn(n[e],t)||t===o&&!(e in n))&&Un(n,e,t)}function tt(n,e,t){var r=n[e];(!(U.call(n,e)&&Pn(r,t))||t===o&&!(e in n))&&Un(n,e,t)}function Nt(n,e){for(var t=n.length;t--;)if(Pn(n[t][0],e))return t;return-1}function Ra(n,e,t,r){return ue(n,function(i,f,s){e(r,i,t(i),s)}),r}function Uu(n,e){return n&&Fn(e,j(e),n)}function Ia(n,e){return n&&Fn(e,ln(e),n)}function Un(n,e,t){e=="__proto__"&&Dt?Dt(n,e,{configurable:!0,enumerable:!0,value:t,writable:!0}):n[e]=t}function $r(n,e){for(var t=-1,r=e.length,i=h(r),f=n==null;++t<r;)i[t]=f?o:Ei(n,e[t]);return i}function de(n,e,t){return n===n&&(t!==o&&(n=n<=t?n:t),e!==o&&(n=n>=e?n:e)),n}function Sn(n,e,t,r,i,f){var s,c=e&kn,l=e&Di,p=e&xe;if(t&&(s=i?t(n,r,i,f):t(n)),s!==o)return s;if(!Z(n))return n;var v=R(n);if(v){if(s=vl(n),!c)return cn(n,s)}else{var w=tn(n),A=w==wt||w==Wi;if(ce(n))return of(n,c);if(w==qn||w==Se||A&&!i){if(s=l||A?{}:Tf(n),!c)return l?fl(n,Ia(s,n)):ul(n,Uu(s,n))}else{if(!H[w])return i?n:{};s=wl(n,w,c)}}f||(f=new Ln);var E=f.get(n);if(E)return E;f.set(n,s),eo(n)?n.forEach(function(b){s.add(Sn(b,e,t,b,n,f))}):kf(n)&&n.forEach(function(b,M){s.set(M,Sn(b,e,t,M,n,f))});var T=p?l?oi:fi:l?ln:j,y=v?o:T(n);return _n(y||n,function(b,M){y&&(M=b,b=n[M]),tt(s,M,Sn(b,e,t,M,n,f))}),s}function ya(n){var e=j(n);return function(t){return Wu(t,n,e)}}function Wu(n,e,t){var r=t.length;if(n==null)return!r;for(n=$(n);r--;){var i=t[r],f=e[i],s=n[i];if(s===o&&!(i in n)||!f(s))return!1}return!0}function Fu(n,e,t){if(typeof n!="function")throw new mn(q);return ct(function(){n.apply(o,t)},e)}function rt(n,e,t,r){var i=-1,f=St,s=!0,c=n.length,l=[],p=e.length;if(!c)return l;t&&(e=K(e,dn(t))),r?(f=Cr,s=!1):e.length>=m&&(f=Qe,s=!1,e=new _e(e));n:for(;++i<c;){var v=n[i],w=t==null?v:t(v);if(v=r||v!==0?v:0,s&&w===w){for(var A=p;A--;)if(e[A]===w)continue n;l.push(v)}else f(e,w,r)||l.push(v)}return l}var ue=hf(Wn),Gu=hf(qr,!0);function La(n,e){var t=!0;return ue(n,function(r,i,f){return t=!!e(r,i,f),t}),t}function $t(n,e,t){for(var r=-1,i=n.length;++r<i;){var f=n[r],s=e(f);if(s!=null&&(c===o?s===s&&!vn(s):t(s,c)))var c=s,l=f}return l}function Ma(n,e,t,r){var i=n.length;for(t=I(t),t<0&&(t=-t>i?0:i+t),r=r===o||r>i?i:I(r),r<0&&(r+=i),r=t>r?0:ro(r);t<r;)n[t++]=e;return n}function Nu(n,e){var t=[];return ue(n,function(r,i,f){e(r,i,f)&&t.push(r)}),t}function nn(n,e,t,r,i){var f=-1,s=n.length;for(t||(t=xl),i||(i=[]);++f<s;){var c=n[f];e>0&&t(c)?e>1?nn(c,e-1,t,r,i):te(i,c):r||(i[i.length]=c)}return i}var Hr=gf(),$u=gf(!0);function Wn(n,e){return n&&Hr(n,e,j)}function qr(n,e){return n&&$u(n,e,j)}function Ht(n,e){return ee(e,function(t){return Xn(n[t])})}function pe(n,e){e=oe(e,n);for(var t=0,r=e.length;n!=null&&t<r;)n=n[Mn(e[t++])];return t&&t==r?n:o}function Hu(n,e,t){var r=e(n);return R(n)?r:te(r,t(n))}function fn(n){return n==null?n===o?ss:fs:he&&he in $(n)?_l(n):Cl(n)}function zr(n,e){return n>e}function Pa(n,e){return n!=null&&U.call(n,e)}function Da(n,e){return n!=null&&e in $(n)}function Ba(n,e,t){return n>=en(e,t)&&n<V(e,t)}function Kr(n,e,t){for(var r=t?Cr:St,i=n[0].length,f=n.length,s=f,c=h(f),l=1/0,p=[];s--;){var v=n[s];s&&e&&(v=K(v,dn(e))),l=en(v.length,l),c[s]=!t&&(e||i>=120&&v.length>=120)?new _e(s&&v):o}v=n[0];var w=-1,A=c[0];n:for(;++w<i&&p.length<l;){var E=v[w],T=e?e(E):E;if(E=t||E!==0?E:0,!(A?Qe(A,T):r(p,T,t))){for(s=f;--s;){var y=c[s];if(!(y?Qe(y,T):r(n[s],T,t)))continue n}A&&A.push(T),p.push(E)}}return p}function Ua(n,e,t,r){return Wn(n,function(i,f,s){e(r,t(i),f,s)}),r}function it(n,e,t){e=oe(e,n),n=yf(n,e);var r=n==null?n:n[Mn(On(e))];return r==null?o:gn(r,n,t)}function qu(n){return Y(n)&&fn(n)==Se}function Wa(n){return Y(n)&&fn(n)==Xe}function Fa(n){return Y(n)&&fn(n)==ze}function ut(n,e,t,r,i){return n===e?!0:n==null||e==null||!Y(n)&&!Y(e)?n!==n&&e!==e:Ga(n,e,t,r,ut,i)}function Ga(n,e,t,r,i,f){var s=R(n),c=R(e),l=s?pt:tn(n),p=c?pt:tn(e);l=l==Se?qn:l,p=p==Se?qn:p;var v=l==qn,w=p==qn,A=l==p;if(A&&ce(n)){if(!ce(e))return!1;s=!0,v=!1}if(A&&!v)return f||(f=new Ln),s||We(n)?Sf(n,e,t,r,i,f):hl(n,e,l,t,r,i,f);if(!(t&me)){var E=v&&U.call(n,"__wrapped__"),T=w&&U.call(e,"__wrapped__");if(E||T){var y=E?n.value():n,b=T?e.value():e;return f||(f=new Ln),i(y,b,t,r,f)}}return A?(f||(f=new Ln),gl(n,e,t,r,i,f)):!1}function Na(n){return Y(n)&&tn(n)==Rn}function Zr(n,e,t,r){var i=t.length,f=i,s=!r;if(n==null)return!f;for(n=$(n);i--;){var c=t[i];if(s&&c[2]?c[1]!==n[c[0]]:!(c[0]in n))return!1}for(;++i<f;){c=t[i];var l=c[0],p=n[l],v=c[1];if(s&&c[2]){if(p===o&&!(l in n))return!1}else{var w=new Ln;if(r)var A=r(p,v,l,n,e,w);if(!(A===o?ut(v,p,me|_t,r,w):A))return!1}}return!0}function zu(n){if(!Z(n)||El(n))return!1;var e=Xn(n)?Nc:ys;return e.test(we(n))}function $a(n){return Y(n)&&fn(n)==Ze}function Ha(n){return Y(n)&&tn(n)==In}function qa(n){return Y(n)&&ur(n.length)&&!!z[fn(n)]}function Ku(n){return typeof n=="function"?n:n==null?hn:typeof n=="object"?R(n)?Ju(n[0],n[1]):Yu(n):po(n)}function Yr(n){if(!st(n))return Zc(n);var e=[];for(var t in $(n))U.call(n,t)&&t!="constructor"&&e.push(t);return e}function za(n){if(!Z(n))return Tl(n);var e=st(n),t=[];for(var r in n)r=="constructor"&&(e||!U.call(n,r))||t.push(r);return t}function Jr(n,e){return n<e}function Zu(n,e){var t=-1,r=an(n)?h(n.length):[];return ue(n,function(i,f,s){r[++t]=e(i,f,s)}),r}function Yu(n){var e=ci(n);return e.length==1&&e[0][2]?Rf(e[0][0],e[0][1]):function(t){return t===n||Zr(t,n,e)}}function Ju(n,e){return li(n)&&Cf(e)?Rf(Mn(n),e):function(t){var r=Ei(t,n);return r===o&&r===e?Si(t,n):ut(e,r,me|_t)}}function qt(n,e,t,r,i){n!==e&&Hr(e,function(f,s){if(i||(i=new Ln),Z(f))Ka(n,e,s,t,qt,r,i);else{var c=r?r(gi(n,s),f,s+"",n,e,i):o;c===o&&(c=f),Nr(n,s,c)}},ln)}function Ka(n,e,t,r,i,f,s){var c=gi(n,t),l=gi(e,t),p=s.get(l);if(p){Nr(n,t,p);return}var v=f?f(c,l,t+"",n,e,s):o,w=v===o;if(w){var A=R(l),E=!A&&ce(l),T=!A&&!E&&We(l);v=l,A||E||T?R(c)?v=c:J(c)?v=cn(c):E?(w=!1,v=of(l,!0)):T?(w=!1,v=sf(l,!0)):v=[]:at(l)||Ae(l)?(v=c,Ae(c)?v=io(c):(!Z(c)||Xn(c))&&(v=Tf(l))):w=!1}w&&(s.set(l,v),i(v,l,r,f,s),s.delete(l)),Nr(n,t,v)}function Xu(n,e){var t=n.length;if(t)return e+=e<0?t:0,Jn(e,t)?n[e]:o}function Qu(n,e,t){e.length?e=K(e,function(f){return R(f)?function(s){return pe(s,f.length===1?f[0]:f)}:f}):e=[hn];var r=-1;e=K(e,dn(O()));var i=Zu(n,function(f,s,c){var l=K(e,function(p){return p(f)});return{criteria:l,index:++r,value:f}});return wc(i,function(f,s){return il(f,s,t)})}function Za(n,e){return Vu(n,e,function(t,r){return Si(n,r)})}function Vu(n,e,t){for(var r=-1,i=e.length,f={};++r<i;){var s=e[r],c=pe(n,s);t(c,s)&&ft(f,oe(s,n),c)}return f}function Ya(n){return function(e){return pe(e,n)}}function Xr(n,e,t,r){var i=r?vc:Te,f=-1,s=e.length,c=n;for(n===e&&(e=cn(e)),t&&(c=K(n,dn(t)));++f<s;)for(var l=0,p=e[f],v=t?t(p):p;(l=i(c,v,l,r))>-1;)c!==n&&Pt.call(c,l,1),Pt.call(n,l,1);return n}function ju(n,e){for(var t=n?e.length:0,r=t-1;t--;){var i=e[t];if(t==r||i!==f){var f=i;Jn(i)?Pt.call(n,i,1):kr(n,i)}}return n}function Qr(n,e){return n+Ut(Mu()*(e-n+1))}function Ja(n,e,t,r){for(var i=-1,f=V(Bt((e-n)/(t||1)),0),s=h(f);f--;)s[r?f:++i]=n,n+=t;return s}function Vr(n,e){var t="";if(!n||e<1||e>ne)return t;do e%2&&(t+=n),e=Ut(e/2),e&&(n+=n);while(e);return t}function L(n,e){return _i(If(n,e,hn),n+"")}function Xa(n){return Bu(Fe(n))}function Qa(n,e){var t=Fe(n);return kt(t,de(e,0,t.length))}function ft(n,e,t,r){if(!Z(n))return n;e=oe(e,n);for(var i=-1,f=e.length,s=f-1,c=n;c!=null&&++i<f;){var l=Mn(e[i]),p=t;if(l==="__proto__"||l==="constructor"||l==="prototype")return n;if(i!=s){var v=c[l];p=r?r(v,l,c):o,p===o&&(p=Z(v)?v:Jn(e[i+1])?[]:{})}tt(c,l,p),c=c[l]}return n}var ku=Wt?function(n,e){return Wt.set(n,e),n}:hn,Va=Dt?function(n,e){return Dt(n,"toString",{configurable:!0,enumerable:!1,value:Oi(e),writable:!0})}:hn;function ja(n){return kt(Fe(n))}function bn(n,e,t){var r=-1,i=n.length;e<0&&(e=-e>i?0:i+e),t=t>i?i:t,t<0&&(t+=i),i=e>t?0:t-e>>>0,e>>>=0;for(var f=h(i);++r<i;)f[r]=n[r+e];return f}function ka(n,e){var t;return ue(n,function(r,i,f){return t=e(r,i,f),!t}),!!t}function zt(n,e,t){var r=0,i=n==null?r:n.length;if(typeof e=="number"&&e===e&&i<=ts){for(;r<i;){var f=r+i>>>1,s=n[f];s!==null&&!vn(s)&&(t?s<=e:s<e)?r=f+1:i=f}return i}return jr(n,e,hn,t)}function jr(n,e,t,r){var i=0,f=n==null?0:n.length;if(f===0)return 0;e=t(e);for(var s=e!==e,c=e===null,l=vn(e),p=e===o;i<f;){var v=Ut((i+f)/2),w=t(n[v]),A=w!==o,E=w===null,T=w===w,y=vn(w);if(s)var b=r||T;else p?b=T&&(r||A):c?b=T&&A&&(r||!E):l?b=T&&A&&!E&&(r||!y):E||y?b=!1:b=r?w<=e:w<e;b?i=v+1:f=v}return en(f,es)}function nf(n,e){for(var t=-1,r=n.length,i=0,f=[];++t<r;){var s=n[t],c=e?e(s):s;if(!t||!Pn(c,l)){var l=c;f[i++]=s===0?0:s}}return f}function ef(n){return typeof n=="number"?n:vn(n)?dt:+n}function pn(n){if(typeof n=="string")return n;if(R(n))return K(n,pn)+"";if(vn(n))return Pu?Pu.call(n):"";var e=n+"";return e=="0"&&1/n==-ae?"-0":e}function fe(n,e,t){var r=-1,i=St,f=n.length,s=!0,c=[],l=c;if(t)s=!1,i=Cr;else if(f>=m){var p=e?null:al(n);if(p)return Ot(p);s=!1,i=Qe,l=new _e}else l=e?[]:c;n:for(;++r<f;){var v=n[r],w=e?e(v):v;if(v=t||v!==0?v:0,s&&w===w){for(var A=l.length;A--;)if(l[A]===w)continue n;e&&l.push(w),c.push(v)}else i(l,w,t)||(l!==c&&l.push(w),c.push(v))}return c}function kr(n,e){e=oe(e,n);var t=-1,r=e.length;if(!r)return!0;for(;++t<r;){var i=Mn(e[t]);if(i==="__proto__"&&!U.call(n,"__proto__")||(i==="constructor"||i==="prototype")&&t<r-1)return!1}var f=yf(n,e);return f==null||delete f[Mn(On(e))]}function tf(n,e,t,r){return ft(n,e,t(pe(n,e)),r)}function Kt(n,e,t,r){for(var i=n.length,f=r?i:-1;(r?f--:++f<i)&&e(n[f],f,n););return t?bn(n,r?0:f,r?f+1:i):bn(n,r?f+1:0,r?i:f)}function rf(n,e){var t=n;return t instanceof P&&(t=t.value()),Rr(e,function(r,i){return i.func.apply(i.thisArg,te([r],i.args))},t)}function ni(n,e,t){var r=n.length;if(r<2)return r?fe(n[0]):[];for(var i=-1,f=h(r);++i<r;)for(var s=n[i],c=-1;++c<r;)c!=i&&(f[i]=rt(f[i]||s,n[c],e,t));return fe(nn(f,1),e,t)}function uf(n,e,t){for(var r=-1,i=n.length,f=e.length,s={};++r<i;){var c=r<f?e[r]:o;t(s,n[r],c)}return s}function ei(n){return J(n)?n:[]}function ti(n){return typeof n=="function"?n:hn}function oe(n,e){return R(n)?n:li(n,e)?[n]:Df(W(n))}var nl=L;function se(n,e,t){var r=n.length;return t=t===o?r:t,!e&&t>=r?n:bn(n,e,t)}var ff=$c||function(n){return k.clearTimeout(n)};function of(n,e){if(e)return n.slice();var t=n.length,r=Cu?Cu(t):new n.constructor(t);return n.copy(r),r}function ri(n){var e=new n.constructor(n.byteLength);return new Lt(e).set(new Lt(n)),e}function el(n,e){var t=e?ri(n.buffer):n.buffer;return new n.constructor(t,n.byteOffset,n.byteLength)}function tl(n){var e=new n.constructor(n.source,qi.exec(n));return e.lastIndex=n.lastIndex,e}function rl(n){return et?$(et.call(n)):{}}function sf(n,e){var t=e?ri(n.buffer):n.buffer;return new n.constructor(t,n.byteOffset,n.length)}function cf(n,e){if(n!==e){var t=n!==o,r=n===null,i=n===n,f=vn(n),s=e!==o,c=e===null,l=e===e,p=vn(e);if(!c&&!p&&!f&&n>e||f&&s&&l&&!c&&!p||r&&s&&l||!t&&l||!i)return 1;if(!r&&!f&&!p&&n<e||p&&t&&i&&!r&&!f||c&&t&&i||!s&&i||!l)return-1}return 0}function il(n,e,t){for(var r=-1,i=n.criteria,f=e.criteria,s=i.length,c=t.length;++r<s;){var l=cf(i[r],f[r]);if(l){if(r>=c)return l;var p=t[r];return l*(p=="desc"?-1:1)}}return n.index-e.index}function af(n,e,t,r){for(var i=-1,f=n.length,s=t.length,c=-1,l=e.length,p=V(f-s,0),v=h(l+p),w=!r;++c<l;)v[c]=e[c];for(;++i<s;)(w||i<f)&&(v[t[i]]=n[i]);for(;p--;)v[c++]=n[i++];return v}function lf(n,e,t,r){for(var i=-1,f=n.length,s=-1,c=t.length,l=-1,p=e.length,v=V(f-c,0),w=h(v+p),A=!r;++i<v;)w[i]=n[i];for(var E=i;++l<p;)w[E+l]=e[l];for(;++s<c;)(A||i<f)&&(w[E+t[s]]=n[i++]);return w}function cn(n,e){var t=-1,r=n.length;for(e||(e=h(r));++t<r;)e[t]=n[t];return e}function Fn(n,e,t,r){var i=!t;t||(t={});for(var f=-1,s=e.length;++f<s;){var c=e[f],l=r?r(t[c],n[c],c,t,n):o;l===o&&(l=n[c]),i?Un(t,c,l):tt(t,c,l)}return t}function ul(n,e){return Fn(n,ai(n),e)}function fl(n,e){return Fn(n,bf(n),e)}function Zt(n,e){return function(t,r){var i=R(t)?lc:Ra,f=e?e():{};return i(t,n,O(r,2),f)}}function De(n){return L(function(e,t){var r=-1,i=t.length,f=i>1?t[i-1]:o,s=i>2?t[2]:o;for(f=n.length>3&&typeof f=="function"?(i--,f):o,s&&on(t[0],t[1],s)&&(f=i<3?o:f,i=1),e=$(e);++r<i;){var c=t[r];c&&n(e,c,r,f)}return e})}function hf(n,e){return function(t,r){if(t==null)return t;if(!an(t))return n(t,r);for(var i=t.length,f=e?i:-1,s=$(t);(e?f--:++f<i)&&r(s[f],f,s)!==!1;);return t}}function gf(n){return function(e,t,r){for(var i=-1,f=$(e),s=r(e),c=s.length;c--;){var l=s[n?c:++i];if(t(f[l],l,f)===!1)break}return e}}function ol(n,e,t){var r=e&Cn,i=ot(n);function f(){var s=this&&this!==k&&this instanceof f?i:n;return s.apply(r?t:this,arguments)}return f}function _f(n){return function(e){e=W(e);var t=Ce(e)?yn(e):o,r=t?t[0]:e.charAt(0),i=t?se(t,1).join(""):e.slice(1);return r[n]()+i}}function Be(n){return function(e){return Rr(go(ho(e).replace(Vs,"")),n,"")}}function ot(n){return function(){var e=arguments;switch(e.length){case 0:return new n;case 1:return new n(e[0]);case 2:return new n(e[0],e[1]);case 3:return new n(e[0],e[1],e[2]);case 4:return new n(e[0],e[1],e[2],e[3]);case 5:return new n(e[0],e[1],e[2],e[3],e[4]);case 6:return new n(e[0],e[1],e[2],e[3],e[4],e[5]);case 7:return new n(e[0],e[1],e[2],e[3],e[4],e[5],e[6])}var t=Pe(n.prototype),r=n.apply(t,e);return Z(r)?r:t}}function sl(n,e,t){var r=ot(n);function i(){for(var f=arguments.length,s=h(f),c=f,l=Ue(i);c--;)s[c]=arguments[c];var p=f<3&&s[0]!==l&&s[f-1]!==l?[]:re(s,l);if(f-=p.length,f<t)return Af(n,e,Yt,i.placeholder,o,s,p,o,o,t-f);var v=this&&this!==k&&this instanceof i?r:n;return gn(v,this,s)}return i}function df(n){return function(e,t,r){var i=$(e);if(!an(e)){var f=O(t,3);e=j(e),t=function(c){return f(i[c],c,i)}}var s=n(e,t,r);return s>-1?i[f?e[s]:s]:o}}function pf(n){return Yn(function(e){var t=e.length,r=t,i=En.prototype.thru;for(n&&e.reverse();r--;){var f=e[r];if(typeof f!="function")throw new mn(q);if(i&&!s&&Vt(f)=="wrapper")var s=new En([],!0)}for(r=s?r:t;++r<t;){f=e[r];var c=Vt(f),l=c=="wrapper"?si(f):o;l&&hi(l[0])&&l[1]==(Hn|Nn|$n|He)&&!l[4].length&&l[9]==1?s=s[Vt(l[0])].apply(s,l[3]):s=f.length==1&&hi(f)?s[c]():s.thru(f)}return function(){var p=arguments,v=p[0];if(s&&p.length==1&&R(v))return s.plant(v).value();for(var w=0,A=t?e[w].apply(this,p):v;++w<t;)A=e[w].call(this,A);return A}})}function Yt(n,e,t,r,i,f,s,c,l,p){var v=e&Hn,w=e&Cn,A=e&Ee,E=e&(Nn|Ne),T=e&sr,y=A?o:ot(n);function b(){for(var M=arguments.length,D=h(M),wn=M;wn--;)D[wn]=arguments[wn];if(E)var sn=Ue(b),An=xc(D,sn);if(r&&(D=af(D,r,i,E)),f&&(D=lf(D,f,s,E)),M-=An,E&&M<p){var X=re(D,sn);return Af(n,e,Yt,b.placeholder,t,D,X,c,l,p-M)}var Dn=w?t:this,Vn=A?Dn[n]:n;return M=D.length,c?D=Rl(D,c):T&&M>1&&D.reverse(),v&&l<M&&(D.length=l),this&&this!==k&&this instanceof b&&(Vn=y||ot(Vn)),Vn.apply(Dn,D)}return b}function vf(n,e){return function(t,r){return Ua(t,n,e(r),{})}}function Jt(n,e){return function(t,r){var i;if(t===o&&r===o)return e;if(t!==o&&(i=t),r!==o){if(i===o)return r;typeof t=="string"||typeof r=="string"?(t=pn(t),r=pn(r)):(t=ef(t),r=ef(r)),i=n(t,r)}return i}}function ii(n){return Yn(function(e){return e=K(e,dn(O())),L(function(t){var r=this;return n(e,function(i){return gn(i,r,t)})})})}function Xt(n,e){e=e===o?" ":pn(e);var t=e.length;if(t<2)return t?Vr(e,n):e;var r=Vr(e,Bt(n/Re(e)));return Ce(e)?se(yn(r),0,n).join(""):r.slice(0,n)}function cl(n,e,t,r){var i=e&Cn,f=ot(n);function s(){for(var c=-1,l=arguments.length,p=-1,v=r.length,w=h(v+l),A=this&&this!==k&&this instanceof s?f:n;++p<v;)w[p]=r[p];for(;l--;)w[p++]=arguments[++c];return gn(A,i?t:this,w)}return s}function wf(n){return function(e,t,r){return r&&typeof r!="number"&&on(e,t,r)&&(t=r=o),e=Qn(e),t===o?(t=e,e=0):t=Qn(t),r=r===o?e<t?1:-1:Qn(r),Ja(e,t,r,n)}}function Qt(n){return function(e,t){return typeof e=="string"&&typeof t=="string"||(e=Tn(e),t=Tn(t)),n(e,t)}}function Af(n,e,t,r,i,f,s,c,l,p){var v=e&Nn,w=v?s:o,A=v?o:s,E=v?f:o,T=v?o:f;e|=v?$n:$e,e&=~(v?$e:$n),e&Bi||(e&=-4);var y=[n,e,i,E,w,T,A,c,l,p],b=t.apply(o,y);return hi(n)&&Lf(b,y),b.placeholder=r,Mf(b,n,e)}function ui(n){var e=Q[n];return function(t,r){if(t=Tn(t),r=r==null?0:en(I(r),292),r&&Lu(t)){var i=(W(t)+"e").split("e"),f=e(i[0]+"e"+(+i[1]+r));return i=(W(f)+"e").split("e"),+(i[0]+"e"+(+i[1]-r))}return e(t)}}var al=Le&&1/Ot(new Le([,-0]))[1]==ae?function(n){return new Le(n)}:Ri;function xf(n){return function(e){var t=tn(e);return t==Rn?Br(e):t==In?Cc(e):Ac(e,n(e))}}function Zn(n,e,t,r,i,f,s,c){var l=e&Ee;if(!l&&typeof n!="function")throw new mn(q);var p=r?r.length:0;if(p||(e&=-97,r=i=o),s=s===o?s:V(I(s),0),c=c===o?c:I(c),p-=i?i.length:0,e&$e){var v=r,w=i;r=i=o}var A=l?o:si(n),E=[n,e,t,r,i,v,w,f,s,c];if(A&&Ol(E,A),n=E[0],e=E[1],t=E[2],r=E[3],i=E[4],c=E[9]=E[9]===o?l?0:n.length:V(E[9]-p,0),!c&&e&(Nn|Ne)&&(e&=-25),!e||e==Cn)var T=ol(n,e,t);else e==Nn||e==Ne?T=sl(n,e,c):(e==$n||e==(Cn|$n))&&!i.length?T=cl(n,e,t,r):T=Yt.apply(o,E);var y=A?ku:Lf;return Mf(y(T,E),n,e)}function mf(n,e,t,r){return n===o||Pn(n,ye[t])&&!U.call(r,t)?e:n}function Ef(n,e,t,r,i,f){return Z(n)&&Z(e)&&(f.set(e,n),qt(n,e,o,Ef,f),f.delete(e)),n}function ll(n){return at(n)?o:n}function Sf(n,e,t,r,i,f){var s=t&me,c=n.length,l=e.length;if(c!=l&&!(s&&l>c))return!1;var p=f.get(n),v=f.get(e);if(p&&v)return p==e&&v==n;var w=-1,A=!0,E=t&_t?new _e:o;for(f.set(n,e),f.set(e,n);++w<c;){var T=n[w],y=e[w];if(r)var b=s?r(y,T,w,e,n,f):r(T,y,w,n,e,f);if(b!==o){if(b)continue;A=!1;break}if(E){if(!Ir(e,function(M,D){if(!Qe(E,D)&&(T===M||i(T,M,t,r,f)))return E.push(D)})){A=!1;break}}else if(!(T===y||i(T,y,t,r,f))){A=!1;break}}return f.delete(n),f.delete(e),A}function hl(n,e,t,r,i,f,s){switch(t){case be:if(n.byteLength!=e.byteLength||n.byteOffset!=e.byteOffset)return!1;n=n.buffer,e=e.buffer;case Xe:return!(n.byteLength!=e.byteLength||!f(new Lt(n),new Lt(e)));case qe:case ze:case Ke:return Pn(+n,+e);case vt:return n.name==e.name&&n.message==e.message;case Ze:case Ye:return n==e+"";case Rn:var c=Br;case In:var l=r&me;if(c||(c=Ot),n.size!=e.size&&!l)return!1;var p=s.get(n);if(p)return p==e;r|=_t,s.set(n,e);var v=Sf(c(n),c(e),r,i,f,s);return s.delete(n),v;case At:if(et)return et.call(n)==et.call(e)}return!1}function gl(n,e,t,r,i,f){var s=t&me,c=fi(n),l=c.length,p=fi(e),v=p.length;if(l!=v&&!s)return!1;for(var w=l;w--;){var A=c[w];if(!(s?A in e:U.call(e,A)))return!1}var E=f.get(n),T=f.get(e);if(E&&T)return E==e&&T==n;var y=!0;f.set(n,e),f.set(e,n);for(var b=s;++w<l;){A=c[w];var M=n[A],D=e[A];if(r)var wn=s?r(D,M,A,e,n,f):r(M,D,A,n,e,f);if(!(wn===o?M===D||i(M,D,t,r,f):wn)){y=!1;break}b||(b=A=="constructor")}if(y&&!b){var sn=n.constructor,An=e.constructor;sn!=An&&"constructor"in n&&"constructor"in e&&!(typeof sn=="function"&&sn instanceof sn&&typeof An=="function"&&An instanceof An)&&(y=!1)}return f.delete(n),f.delete(e),y}function Yn(n){return _i(If(n,o,Ff),n+"")}function fi(n){return Hu(n,j,ai)}function oi(n){return Hu(n,ln,bf)}var si=Wt?function(n){return Wt.get(n)}:Ri;function Vt(n){for(var e=n.name+"",t=Me[e],r=U.call(Me,e)?t.length:0;r--;){var i=t[r],f=i.func;if(f==null||f==n)return i.name}return e}function Ue(n){var e=U.call(u,"placeholder")?u:n;return e.placeholder}function O(){var n=u.iteratee||Ti;return n=n===Ti?Ku:n,arguments.length?n(arguments[0],arguments[1]):n}function jt(n,e){var t=n.__data__;return ml(e)?t[typeof e=="string"?"string":"hash"]:t.map}function ci(n){for(var e=j(n),t=e.length;t--;){var r=e[t],i=n[r];e[t]=[r,i,Cf(i)]}return e}function ve(n,e){var t=bc(n,e);return zu(t)?t:o}function _l(n){var e=U.call(n,he),t=n[he];try{n[he]=o;var r=!0}catch{}var i=It.call(n);return r&&(e?n[he]=t:delete n[he]),i}var ai=Wr?function(n){return n==null?[]:(n=$(n),ee(Wr(n),function(e){return Iu.call(n,e)}))}:Ii,bf=Wr?function(n){for(var e=[];n;)te(e,ai(n)),n=Mt(n);return e}:Ii,tn=fn;(Fr&&tn(new Fr(new ArrayBuffer(1)))!=be||je&&tn(new je)!=Rn||Gr&&tn(Gr.resolve())!=Fi||Le&&tn(new Le)!=In||ke&&tn(new ke)!=Je)&&(tn=function(n){var e=fn(n),t=e==qn?n.constructor:o,r=t?we(t):"";if(r)switch(r){case Qc:return be;case Vc:return Rn;case jc:return Fi;case kc:return In;case na:return Je}return e});function dl(n,e,t){for(var r=-1,i=t.length;++r<i;){var f=t[r],s=f.size;switch(f.type){case"drop":n+=s;break;case"dropRight":e-=s;break;case"take":e=en(e,n+s);break;case"takeRight":n=V(n,e-s);break}}return{start:n,end:e}}function pl(n){var e=n.match(Ss);return e?e[1].split(bs):[]}function Of(n,e,t){e=oe(e,n);for(var r=-1,i=e.length,f=!1;++r<i;){var s=Mn(e[r]);if(!(f=n!=null&&t(n,s)))break;n=n[s]}return f||++r!=i?f:(i=n==null?0:n.length,!!i&&ur(i)&&Jn(s,i)&&(R(n)||Ae(n)))}function vl(n){var e=n.length,t=new n.constructor(e);return e&&typeof n[0]=="string"&&U.call(n,"index")&&(t.index=n.index,t.input=n.input),t}function Tf(n){return typeof n.constructor=="function"&&!st(n)?Pe(Mt(n)):{}}function wl(n,e,t){var r=n.constructor;switch(e){case Xe:return ri(n);case qe:case ze:return new r(+n);case be:return el(n,t);case cr:case ar:case lr:case hr:case gr:case _r:case dr:case pr:case vr:return sf(n,t);case Rn:return new r;case Ke:case Ye:return new r(n);case Ze:return tl(n);case In:return new r;case At:return rl(n)}}function Al(n,e){var t=e.length;if(!t)return n;var r=t-1;return e[r]=(t>1?"& ":"")+e[r],e=e.join(t>2?", ":" "),n.replace(Es,`{
9
- /* [wrapped with `+e+`] */
10
- `)}function xl(n){return R(n)||Ae(n)||!!(yu&&n&&n[yu])}function Jn(n,e){var t=typeof n;return e=e??ne,!!e&&(t=="number"||t!="symbol"&&Ms.test(n))&&n>-1&&n%1==0&&n<e}function on(n,e,t){if(!Z(t))return!1;var r=typeof e;return(r=="number"?an(t)&&Jn(e,t.length):r=="string"&&e in t)?Pn(t[e],n):!1}function li(n,e){if(R(n))return!1;var t=typeof n;return t=="number"||t=="symbol"||t=="boolean"||n==null||vn(n)?!0:ws.test(n)||!vs.test(n)||e!=null&&n in $(e)}function ml(n){var e=typeof n;return e=="string"||e=="number"||e=="symbol"||e=="boolean"?n!=="__proto__":n===null}function hi(n){var e=Vt(n),t=u[e];if(typeof t!="function"||!(e in P.prototype))return!1;if(n===t)return!0;var r=si(t);return!!r&&n===r[0]}function El(n){return!!Tu&&Tu in n}var Sl=Ct?Xn:yi;function st(n){var e=n&&n.constructor,t=typeof e=="function"&&e.prototype||ye;return n===t}function Cf(n){return n===n&&!Z(n)}function Rf(n,e){return function(t){return t==null?!1:t[n]===e&&(e!==o||n in $(t))}}function bl(n){var e=rr(n,function(r){return t.size===Yo&&t.clear(),r}),t=e.cache;return e}function Ol(n,e){var t=n[1],r=e[1],i=t|r,f=i<(Cn|Ee|Hn),s=r==Hn&&t==Nn||r==Hn&&t==He&&n[7].length<=e[8]||r==(Hn|He)&&e[7].length<=e[8]&&t==Nn;if(!(f||s))return n;r&Cn&&(n[2]=e[2],i|=t&Cn?0:Bi);var c=e[3];if(c){var l=n[3];n[3]=l?af(l,c,e[4]):c,n[4]=l?re(n[3],gt):e[4]}return c=e[5],c&&(l=n[5],n[5]=l?lf(l,c,e[6]):c,n[6]=l?re(n[5],gt):e[6]),c=e[7],c&&(n[7]=c),r&Hn&&(n[8]=n[8]==null?e[8]:en(n[8],e[8])),n[9]==null&&(n[9]=e[9]),n[0]=e[0],n[1]=i,n}function Tl(n){var e=[];if(n!=null)for(var t in $(n))e.push(t);return e}function Cl(n){return It.call(n)}function If(n,e,t){return e=V(e===o?n.length-1:e,0),function(){for(var r=arguments,i=-1,f=V(r.length-e,0),s=h(f);++i<f;)s[i]=r[e+i];i=-1;for(var c=h(e+1);++i<e;)c[i]=r[i];return c[e]=t(s),gn(n,this,c)}}function yf(n,e){return e.length<2?n:pe(n,bn(e,0,-1))}function Rl(n,e){for(var t=n.length,r=en(e.length,t),i=cn(n);r--;){var f=e[r];n[r]=Jn(f,t)?i[f]:o}return n}function gi(n,e){if(!(e==="constructor"&&typeof n[e]=="function")&&e!="__proto__")return n[e]}var Lf=Pf(ku),ct=qc||function(n,e){return k.setTimeout(n,e)},_i=Pf(Va);function Mf(n,e,t){var r=e+"";return _i(n,Al(r,Il(pl(r),t)))}function Pf(n){var e=0,t=0;return function(){var r=Yc(),i=Vo-(r-t);if(t=r,i>0){if(++e>=Qo)return arguments[0]}else e=0;return n.apply(o,arguments)}}function kt(n,e){var t=-1,r=n.length,i=r-1;for(e=e===o?r:e;++t<e;){var f=Qr(t,i),s=n[f];n[f]=n[t],n[t]=s}return n.length=e,n}var Df=bl(function(n){var e=[];return n.charCodeAt(0)===46&&e.push(""),n.replace(As,function(t,r,i,f){e.push(i?f.replace(Ts,"$1"):r||t)}),e});function Mn(n){if(typeof n=="string"||vn(n))return n;var e=n+"";return e=="0"&&1/n==-ae?"-0":e}function we(n){if(n!=null){try{return Rt.call(n)}catch{}try{return n+""}catch{}}return""}function Il(n,e){return _n(rs,function(t){var r="_."+t[0];e&t[1]&&!St(n,r)&&n.push(r)}),n.sort()}function Bf(n){if(n instanceof P)return n.clone();var e=new En(n.__wrapped__,n.__chain__);return e.__actions__=cn(n.__actions__),e.__index__=n.__index__,e.__values__=n.__values__,e}function yl(n,e,t){(t?on(n,e,t):e===o)?e=1:e=V(I(e),0);var r=n==null?0:n.length;if(!r||e<1)return[];for(var i=0,f=0,s=h(Bt(r/e));i<r;)s[f++]=bn(n,i,i+=e);return s}function Ll(n){for(var e=-1,t=n==null?0:n.length,r=0,i=[];++e<t;){var f=n[e];f&&(i[r++]=f)}return i}function Ml(){var n=arguments.length;if(!n)return[];for(var e=h(n-1),t=arguments[0],r=n;r--;)e[r-1]=arguments[r];return te(R(t)?cn(t):[t],nn(e,1))}var Pl=L(function(n,e){return J(n)?rt(n,nn(e,1,J,!0)):[]}),Dl=L(function(n,e){var t=On(e);return J(t)&&(t=o),J(n)?rt(n,nn(e,1,J,!0),O(t,2)):[]}),Bl=L(function(n,e){var t=On(e);return J(t)&&(t=o),J(n)?rt(n,nn(e,1,J,!0),o,t):[]});function Ul(n,e,t){var r=n==null?0:n.length;return r?(e=t||e===o?1:I(e),bn(n,e<0?0:e,r)):[]}function Wl(n,e,t){var r=n==null?0:n.length;return r?(e=t||e===o?1:I(e),e=r-e,bn(n,0,e<0?0:e)):[]}function Fl(n,e){return n&&n.length?Kt(n,O(e,3),!0,!0):[]}function Gl(n,e){return n&&n.length?Kt(n,O(e,3),!0):[]}function Nl(n,e,t,r){var i=n==null?0:n.length;return i?(t&&typeof t!="number"&&on(n,e,t)&&(t=0,r=i),Ma(n,e,t,r)):[]}function Uf(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var i=t==null?0:I(t);return i<0&&(i=V(r+i,0)),bt(n,O(e,3),i)}function Wf(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var i=r-1;return t!==o&&(i=I(t),i=t<0?V(r+i,0):en(i,r-1)),bt(n,O(e,3),i,!0)}function Ff(n){var e=n==null?0:n.length;return e?nn(n,1):[]}function $l(n){var e=n==null?0:n.length;return e?nn(n,ae):[]}function Hl(n,e){var t=n==null?0:n.length;return t?(e=e===o?1:I(e),nn(n,e)):[]}function ql(n){for(var e=-1,t=n==null?0:n.length,r={};++e<t;){var i=n[e];Un(r,i[0],i[1])}return r}function Gf(n){return n&&n.length?n[0]:o}function zl(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var i=t==null?0:I(t);return i<0&&(i=V(r+i,0)),Te(n,e,i)}function Kl(n){var e=n==null?0:n.length;return e?bn(n,0,-1):[]}var Zl=L(function(n){var e=K(n,ei);return e.length&&e[0]===n[0]?Kr(e):[]}),Yl=L(function(n){var e=On(n),t=K(n,ei);return e===On(t)?e=o:t.pop(),t.length&&t[0]===n[0]?Kr(t,O(e,2)):[]}),Jl=L(function(n){var e=On(n),t=K(n,ei);return e=typeof e=="function"?e:o,e&&t.pop(),t.length&&t[0]===n[0]?Kr(t,o,e):[]});function Xl(n,e){return n==null?"":Kc.call(n,e)}function On(n){var e=n==null?0:n.length;return e?n[e-1]:o}function Ql(n,e,t){var r=n==null?0:n.length;if(!r)return-1;var i=r;return t!==o&&(i=I(t),i=i<0?V(r+i,0):en(i,r-1)),e===e?Ic(n,e,i):bt(n,wu,i,!0)}function Vl(n,e){return n&&n.length?Xu(n,I(e)):o}var jl=L(Nf);function Nf(n,e){return n&&n.length&&e&&e.length?Xr(n,e):n}function kl(n,e,t){return n&&n.length&&e&&e.length?Xr(n,e,O(t,2)):n}function nh(n,e,t){return n&&n.length&&e&&e.length?Xr(n,e,o,t):n}var eh=Yn(function(n,e){var t=n==null?0:n.length,r=$r(n,e);return ju(n,K(e,function(i){return Jn(i,t)?+i:i}).sort(cf)),r});function th(n,e){var t=[];if(!(n&&n.length))return t;var r=-1,i=[],f=n.length;for(e=O(e,3);++r<f;){var s=n[r];e(s,r,n)&&(t.push(s),i.push(r))}return ju(n,i),t}function di(n){return n==null?n:Xc.call(n)}function rh(n,e,t){var r=n==null?0:n.length;return r?(t&&typeof t!="number"&&on(n,e,t)?(e=0,t=r):(e=e==null?0:I(e),t=t===o?r:I(t)),bn(n,e,t)):[]}function ih(n,e){return zt(n,e)}function uh(n,e,t){return jr(n,e,O(t,2))}function fh(n,e){var t=n==null?0:n.length;if(t){var r=zt(n,e);if(r<t&&Pn(n[r],e))return r}return-1}function oh(n,e){return zt(n,e,!0)}function sh(n,e,t){return jr(n,e,O(t,2),!0)}function ch(n,e){var t=n==null?0:n.length;if(t){var r=zt(n,e,!0)-1;if(Pn(n[r],e))return r}return-1}function ah(n){return n&&n.length?nf(n):[]}function lh(n,e){return n&&n.length?nf(n,O(e,2)):[]}function hh(n){var e=n==null?0:n.length;return e?bn(n,1,e):[]}function gh(n,e,t){return n&&n.length?(e=t||e===o?1:I(e),bn(n,0,e<0?0:e)):[]}function _h(n,e,t){var r=n==null?0:n.length;return r?(e=t||e===o?1:I(e),e=r-e,bn(n,e<0?0:e,r)):[]}function dh(n,e){return n&&n.length?Kt(n,O(e,3),!1,!0):[]}function ph(n,e){return n&&n.length?Kt(n,O(e,3)):[]}var vh=L(function(n){return fe(nn(n,1,J,!0))}),wh=L(function(n){var e=On(n);return J(e)&&(e=o),fe(nn(n,1,J,!0),O(e,2))}),Ah=L(function(n){var e=On(n);return e=typeof e=="function"?e:o,fe(nn(n,1,J,!0),o,e)});function xh(n){return n&&n.length?fe(n):[]}function mh(n,e){return n&&n.length?fe(n,O(e,2)):[]}function Eh(n,e){return e=typeof e=="function"?e:o,n&&n.length?fe(n,o,e):[]}function pi(n){if(!(n&&n.length))return[];var e=0;return n=ee(n,function(t){if(J(t))return e=V(t.length,e),!0}),Pr(e,function(t){return K(n,yr(t))})}function $f(n,e){if(!(n&&n.length))return[];var t=pi(n);return e==null?t:K(t,function(r){return gn(e,o,r)})}var Sh=L(function(n,e){return J(n)?rt(n,e):[]}),bh=L(function(n){return ni(ee(n,J))}),Oh=L(function(n){var e=On(n);return J(e)&&(e=o),ni(ee(n,J),O(e,2))}),Th=L(function(n){var e=On(n);return e=typeof e=="function"?e:o,ni(ee(n,J),o,e)}),Ch=L(pi);function Rh(n,e){return uf(n||[],e||[],tt)}function Ih(n,e){return uf(n||[],e||[],ft)}var yh=L(function(n){var e=n.length,t=e>1?n[e-1]:o;return t=typeof t=="function"?(n.pop(),t):o,$f(n,t)});function Hf(n){var e=u(n);return e.__chain__=!0,e}function Lh(n,e){return e(n),n}function nr(n,e){return e(n)}var Mh=Yn(function(n){var e=n.length,t=e?n[0]:0,r=this.__wrapped__,i=function(f){return $r(f,n)};return e>1||this.__actions__.length||!(r instanceof P)||!Jn(t)?this.thru(i):(r=r.slice(t,+t+(e?1:0)),r.__actions__.push({func:nr,args:[i],thisArg:o}),new En(r,this.__chain__).thru(function(f){return e&&!f.length&&f.push(o),f}))});function Ph(){return Hf(this)}function Dh(){return new En(this.value(),this.__chain__)}function Bh(){this.__values__===o&&(this.__values__=to(this.value()));var n=this.__index__>=this.__values__.length,e=n?o:this.__values__[this.__index__++];return{done:n,value:e}}function Uh(){return this}function Wh(n){for(var e,t=this;t instanceof Gt;){var r=Bf(t);r.__index__=0,r.__values__=o,e?i.__wrapped__=r:e=r;var i=r;t=t.__wrapped__}return i.__wrapped__=n,e}function Fh(){var n=this.__wrapped__;if(n instanceof P){var e=n;return this.__actions__.length&&(e=new P(this)),e=e.reverse(),e.__actions__.push({func:nr,args:[di],thisArg:o}),new En(e,this.__chain__)}return this.thru(di)}function Gh(){return rf(this.__wrapped__,this.__actions__)}var Nh=Zt(function(n,e,t){U.call(n,t)?++n[t]:Un(n,t,1)});function $h(n,e,t){var r=R(n)?pu:La;return t&&on(n,e,t)&&(e=o),r(n,O(e,3))}function Hh(n,e){var t=R(n)?ee:Nu;return t(n,O(e,3))}var qh=df(Uf),zh=df(Wf);function Kh(n,e){return nn(er(n,e),1)}function Zh(n,e){return nn(er(n,e),ae)}function Yh(n,e,t){return t=t===o?1:I(t),nn(er(n,e),t)}function qf(n,e){var t=R(n)?_n:ue;return t(n,O(e,3))}function zf(n,e){var t=R(n)?hc:Gu;return t(n,O(e,3))}var Jh=Zt(function(n,e,t){U.call(n,t)?n[t].push(e):Un(n,t,[e])});function Xh(n,e,t,r){n=an(n)?n:Fe(n),t=t&&!r?I(t):0;var i=n.length;return t<0&&(t=V(i+t,0)),fr(n)?t<=i&&n.indexOf(e,t)>-1:!!i&&Te(n,e,t)>-1}var Qh=L(function(n,e,t){var r=-1,i=typeof e=="function",f=an(n)?h(n.length):[];return ue(n,function(s){f[++r]=i?gn(e,s,t):it(s,e,t)}),f}),Vh=Zt(function(n,e,t){Un(n,t,e)});function er(n,e){var t=R(n)?K:Zu;return t(n,O(e,3))}function jh(n,e,t,r){return n==null?[]:(R(e)||(e=e==null?[]:[e]),t=r?o:t,R(t)||(t=t==null?[]:[t]),Qu(n,e,t))}var kh=Zt(function(n,e,t){n[t?0:1].push(e)},function(){return[[],[]]});function ng(n,e,t){var r=R(n)?Rr:xu,i=arguments.length<3;return r(n,O(e,4),t,i,ue)}function eg(n,e,t){var r=R(n)?gc:xu,i=arguments.length<3;return r(n,O(e,4),t,i,Gu)}function tg(n,e){var t=R(n)?ee:Nu;return t(n,ir(O(e,3)))}function rg(n){var e=R(n)?Bu:Xa;return e(n)}function ig(n,e,t){(t?on(n,e,t):e===o)?e=1:e=I(e);var r=R(n)?Ta:Qa;return r(n,e)}function ug(n){var e=R(n)?Ca:ja;return e(n)}function fg(n){if(n==null)return 0;if(an(n))return fr(n)?Re(n):n.length;var e=tn(n);return e==Rn||e==In?n.size:Yr(n).length}function og(n,e,t){var r=R(n)?Ir:ka;return t&&on(n,e,t)&&(e=o),r(n,O(e,3))}var sg=L(function(n,e){if(n==null)return[];var t=e.length;return t>1&&on(n,e[0],e[1])?e=[]:t>2&&on(e[0],e[1],e[2])&&(e=[e[0]]),Qu(n,nn(e,1),[])}),tr=Hc||function(){return k.Date.now()};function cg(n,e){if(typeof e!="function")throw new mn(q);return n=I(n),function(){if(--n<1)return e.apply(this,arguments)}}function Kf(n,e,t){return e=t?o:e,e=n&&e==null?n.length:e,Zn(n,Hn,o,o,o,o,e)}function Zf(n,e){var t;if(typeof e!="function")throw new mn(q);return n=I(n),function(){return--n>0&&(t=e.apply(this,arguments)),n<=1&&(e=o),t}}var vi=L(function(n,e,t){var r=Cn;if(t.length){var i=re(t,Ue(vi));r|=$n}return Zn(n,r,e,t,i)}),Yf=L(function(n,e,t){var r=Cn|Ee;if(t.length){var i=re(t,Ue(Yf));r|=$n}return Zn(e,r,n,t,i)});function Jf(n,e,t){e=t?o:e;var r=Zn(n,Nn,o,o,o,o,o,e);return r.placeholder=Jf.placeholder,r}function Xf(n,e,t){e=t?o:e;var r=Zn(n,Ne,o,o,o,o,o,e);return r.placeholder=Xf.placeholder,r}function Qf(n,e,t){var r,i,f,s,c,l,p=0,v=!1,w=!1,A=!0;if(typeof n!="function")throw new mn(q);e=Tn(e)||0,Z(t)&&(v=!!t.leading,w="maxWait"in t,f=w?V(Tn(t.maxWait)||0,e):f,A="trailing"in t?!!t.trailing:A);function E(X){var Dn=r,Vn=i;return r=i=o,p=X,s=n.apply(Vn,Dn),s}function T(X){return p=X,c=ct(M,e),v?E(X):s}function y(X){var Dn=X-l,Vn=X-p,vo=e-Dn;return w?en(vo,f-Vn):vo}function b(X){var Dn=X-l,Vn=X-p;return l===o||Dn>=e||Dn<0||w&&Vn>=f}function M(){var X=tr();if(b(X))return D(X);c=ct(M,y(X))}function D(X){return c=o,A&&r?E(X):(r=i=o,s)}function wn(){c!==o&&ff(c),p=0,r=l=i=c=o}function sn(){return c===o?s:D(tr())}function An(){var X=tr(),Dn=b(X);if(r=arguments,i=this,l=X,Dn){if(c===o)return T(l);if(w)return ff(c),c=ct(M,e),E(l)}return c===o&&(c=ct(M,e)),s}return An.cancel=wn,An.flush=sn,An}var ag=L(function(n,e){return Fu(n,1,e)}),lg=L(function(n,e,t){return Fu(n,Tn(e)||0,t)});function hg(n){return Zn(n,sr)}function rr(n,e){if(typeof n!="function"||e!=null&&typeof e!="function")throw new mn(q);var t=function(){var r=arguments,i=e?e.apply(this,r):r[0],f=t.cache;if(f.has(i))return f.get(i);var s=n.apply(this,r);return t.cache=f.set(i,s)||f,s};return t.cache=new(rr.Cache||Kn),t}rr.Cache=Kn;function ir(n){if(typeof n!="function")throw new mn(q);return function(){var e=arguments;switch(e.length){case 0:return!n.call(this);case 1:return!n.call(this,e[0]);case 2:return!n.call(this,e[0],e[1]);case 3:return!n.call(this,e[0],e[1],e[2])}return!n.apply(this,e)}}function gg(n){return Zf(2,n)}var _g=nl(function(n,e){e=e.length==1&&R(e[0])?K(e[0],dn(O())):K(nn(e,1),dn(O()));var t=e.length;return L(function(r){for(var i=-1,f=en(r.length,t);++i<f;)r[i]=e[i].call(this,r[i]);return gn(n,this,r)})}),wi=L(function(n,e){var t=re(e,Ue(wi));return Zn(n,$n,o,e,t)}),Vf=L(function(n,e){var t=re(e,Ue(Vf));return Zn(n,$e,o,e,t)}),dg=Yn(function(n,e){return Zn(n,He,o,o,o,e)});function pg(n,e){if(typeof n!="function")throw new mn(q);return e=e===o?e:I(e),L(n,e)}function vg(n,e){if(typeof n!="function")throw new mn(q);return e=e==null?0:V(I(e),0),L(function(t){var r=t[e],i=se(t,0,e);return r&&te(i,r),gn(n,this,i)})}function wg(n,e,t){var r=!0,i=!0;if(typeof n!="function")throw new mn(q);return Z(t)&&(r="leading"in t?!!t.leading:r,i="trailing"in t?!!t.trailing:i),Qf(n,e,{leading:r,maxWait:e,trailing:i})}function Ag(n){return Kf(n,1)}function xg(n,e){return wi(ti(e),n)}function mg(){if(!arguments.length)return[];var n=arguments[0];return R(n)?n:[n]}function Eg(n){return Sn(n,xe)}function Sg(n,e){return e=typeof e=="function"?e:o,Sn(n,xe,e)}function bg(n){return Sn(n,kn|xe)}function Og(n,e){return e=typeof e=="function"?e:o,Sn(n,kn|xe,e)}function Tg(n,e){return e==null||Wu(n,e,j(e))}function Pn(n,e){return n===e||n!==n&&e!==e}var Cg=Qt(zr),Rg=Qt(function(n,e){return n>=e}),Ae=qu(function(){return arguments}())?qu:function(n){return Y(n)&&U.call(n,"callee")&&!Iu.call(n,"callee")},R=h.isArray,Ig=au?dn(au):Wa;function an(n){return n!=null&&ur(n.length)&&!Xn(n)}function J(n){return Y(n)&&an(n)}function yg(n){return n===!0||n===!1||Y(n)&&fn(n)==qe}var ce=zc||yi,Lg=lu?dn(lu):Fa;function Mg(n){return Y(n)&&n.nodeType===1&&!at(n)}function Pg(n){if(n==null)return!0;if(an(n)&&(R(n)||typeof n=="string"||typeof n.splice=="function"||ce(n)||We(n)||Ae(n)))return!n.length;var e=tn(n);if(e==Rn||e==In)return!n.size;if(st(n))return!Yr(n).length;for(var t in n)if(U.call(n,t))return!1;return!0}function Dg(n,e){return ut(n,e)}function Bg(n,e,t){t=typeof t=="function"?t:o;var r=t?t(n,e):o;return r===o?ut(n,e,o,t):!!r}function Ai(n){if(!Y(n))return!1;var e=fn(n);return e==vt||e==us||typeof n.message=="string"&&typeof n.name=="string"&&!at(n)}function Ug(n){return typeof n=="number"&&Lu(n)}function Xn(n){if(!Z(n))return!1;var e=fn(n);return e==wt||e==Wi||e==is||e==os}function jf(n){return typeof n=="number"&&n==I(n)}function ur(n){return typeof n=="number"&&n>-1&&n%1==0&&n<=ne}function Z(n){var e=typeof n;return n!=null&&(e=="object"||e=="function")}function Y(n){return n!=null&&typeof n=="object"}var kf=hu?dn(hu):Na;function Wg(n,e){return n===e||Zr(n,e,ci(e))}function Fg(n,e,t){return t=typeof t=="function"?t:o,Zr(n,e,ci(e),t)}function Gg(n){return no(n)&&n!=+n}function Ng(n){if(Sl(n))throw new C(N);return zu(n)}function $g(n){return n===null}function Hg(n){return n==null}function no(n){return typeof n=="number"||Y(n)&&fn(n)==Ke}function at(n){if(!Y(n)||fn(n)!=qn)return!1;var e=Mt(n);if(e===null)return!0;var t=U.call(e,"constructor")&&e.constructor;return typeof t=="function"&&t instanceof t&&Rt.call(t)==Fc}var xi=gu?dn(gu):$a;function qg(n){return jf(n)&&n>=-ne&&n<=ne}var eo=_u?dn(_u):Ha;function fr(n){return typeof n=="string"||!R(n)&&Y(n)&&fn(n)==Ye}function vn(n){return typeof n=="symbol"||Y(n)&&fn(n)==At}var We=du?dn(du):qa;function zg(n){return n===o}function Kg(n){return Y(n)&&tn(n)==Je}function Zg(n){return Y(n)&&fn(n)==cs}var Yg=Qt(Jr),Jg=Qt(function(n,e){return n<=e});function to(n){if(!n)return[];if(an(n))return fr(n)?yn(n):cn(n);if(Ve&&n[Ve])return Tc(n[Ve]());var e=tn(n),t=e==Rn?Br:e==In?Ot:Fe;return t(n)}function Qn(n){if(!n)return n===0?n:0;if(n=Tn(n),n===ae||n===-ae){var e=n<0?-1:1;return e*ns}return n===n?n:0}function I(n){var e=Qn(n),t=e%1;return e===e?t?e-t:e:0}function ro(n){return n?de(I(n),0,Bn):0}function Tn(n){if(typeof n=="number")return n;if(vn(n))return dt;if(Z(n)){var e=typeof n.valueOf=="function"?n.valueOf():n;n=Z(e)?e+"":e}if(typeof n!="string")return n===0?n:+n;n=mu(n);var t=Is.test(n);return t||Ls.test(n)?cc(n.slice(2),t?2:8):Rs.test(n)?dt:+n}function io(n){return Fn(n,ln(n))}function Xg(n){return n?de(I(n),-ne,ne):n===0?n:0}function W(n){return n==null?"":pn(n)}var Qg=De(function(n,e){if(st(e)||an(e)){Fn(e,j(e),n);return}for(var t in e)U.call(e,t)&&tt(n,t,e[t])}),uo=De(function(n,e){Fn(e,ln(e),n)}),fo=De(function(n,e,t,r){Fn(e,ln(e),n,r)}),mi=De(function(n,e,t,r){Fn(e,j(e),n,r)}),Vg=Yn($r);function jg(n,e){var t=Pe(n);return e==null?t:Uu(t,e)}var kg=L(function(n,e){n=$(n);var t=-1,r=e.length,i=r>2?e[2]:o;for(i&&on(e[0],e[1],i)&&(r=1);++t<r;)for(var f=e[t],s=ln(f),c=-1,l=s.length;++c<l;){var p=s[c],v=n[p];(v===o||Pn(v,ye[p])&&!U.call(n,p))&&(n[p]=f[p])}return n}),n_=L(function(n){return n.push(o,Ef),gn(oo,o,n)});function e_(n,e){return vu(n,O(e,3),Wn)}function t_(n,e){return vu(n,O(e,3),qr)}function r_(n,e){return n==null?n:Hr(n,O(e,3),ln)}function i_(n,e){return n==null?n:$u(n,O(e,3),ln)}function u_(n,e){return n&&Wn(n,O(e,3))}function f_(n,e){return n&&qr(n,O(e,3))}function o_(n){return n==null?[]:Ht(n,j(n))}function s_(n){return n==null?[]:Ht(n,ln(n))}function Ei(n,e,t){var r=n==null?o:pe(n,e);return r===o?t:r}function c_(n,e){return n!=null&&Of(n,e,Pa)}function Si(n,e){return n!=null&&Of(n,e,Da)}var a_=vf(function(n,e,t){e!=null&&typeof e.toString!="function"&&(e=It.call(e)),n[e]=t},Oi(hn)),l_=vf(function(n,e,t){e!=null&&typeof e.toString!="function"&&(e=It.call(e)),U.call(n,e)?n[e].push(t):n[e]=[t]},O),h_=L(it);function j(n){return an(n)?Du(n):Yr(n)}function ln(n){return an(n)?Du(n,!0):za(n)}function g_(n,e){var t={};return e=O(e,3),Wn(n,function(r,i,f){Un(t,e(r,i,f),r)}),t}function __(n,e){var t={};return e=O(e,3),Wn(n,function(r,i,f){Un(t,i,e(r,i,f))}),t}var d_=De(function(n,e,t){qt(n,e,t)}),oo=De(function(n,e,t,r){qt(n,e,t,r)}),p_=Yn(function(n,e){var t={};if(n==null)return t;var r=!1;e=K(e,function(f){return f=oe(f,n),r||(r=f.length>1),f}),Fn(n,oi(n),t),r&&(t=Sn(t,kn|Di|xe,ll));for(var i=e.length;i--;)kr(t,e[i]);return t});function v_(n,e){return so(n,ir(O(e)))}var w_=Yn(function(n,e){return n==null?{}:Za(n,e)});function so(n,e){if(n==null)return{};var t=K(oi(n),function(r){return[r]});return e=O(e),Vu(n,t,function(r,i){return e(r,i[0])})}function A_(n,e,t){e=oe(e,n);var r=-1,i=e.length;for(i||(i=1,n=o);++r<i;){var f=n==null?o:n[Mn(e[r])];f===o&&(r=i,f=t),n=Xn(f)?f.call(n):f}return n}function x_(n,e,t){return n==null?n:ft(n,e,t)}function m_(n,e,t,r){return r=typeof r=="function"?r:o,n==null?n:ft(n,e,t,r)}var co=xf(j),ao=xf(ln);function E_(n,e,t){var r=R(n),i=r||ce(n)||We(n);if(e=O(e,4),t==null){var f=n&&n.constructor;i?t=r?new f:[]:Z(n)?t=Xn(f)?Pe(Mt(n)):{}:t={}}return(i?_n:Wn)(n,function(s,c,l){return e(t,s,c,l)}),t}function S_(n,e){return n==null?!0:kr(n,e)}function b_(n,e,t){return n==null?n:tf(n,e,ti(t))}function O_(n,e,t,r){return r=typeof r=="function"?r:o,n==null?n:tf(n,e,ti(t),r)}function Fe(n){return n==null?[]:Dr(n,j(n))}function T_(n){return n==null?[]:Dr(n,ln(n))}function C_(n,e,t){return t===o&&(t=e,e=o),t!==o&&(t=Tn(t),t=t===t?t:0),e!==o&&(e=Tn(e),e=e===e?e:0),de(Tn(n),e,t)}function R_(n,e,t){return e=Qn(e),t===o?(t=e,e=0):t=Qn(t),n=Tn(n),Ba(n,e,t)}function I_(n,e,t){if(t&&typeof t!="boolean"&&on(n,e,t)&&(e=t=o),t===o&&(typeof e=="boolean"?(t=e,e=o):typeof n=="boolean"&&(t=n,n=o)),n===o&&e===o?(n=0,e=1):(n=Qn(n),e===o?(e=n,n=0):e=Qn(e)),n>e){var r=n;n=e,e=r}if(t||n%1||e%1){var i=Mu();return en(n+i*(e-n+sc("1e-"+((i+"").length-1))),e)}return Qr(n,e)}var y_=Be(function(n,e,t){return e=e.toLowerCase(),n+(t?lo(e):e)});function lo(n){return bi(W(n).toLowerCase())}function ho(n){return n=W(n),n&&n.replace(Ps,mc).replace(js,"")}function L_(n,e,t){n=W(n),e=pn(e);var r=n.length;t=t===o?r:de(I(t),0,r);var i=t;return t-=e.length,t>=0&&n.slice(t,i)==e}function M_(n){return n=W(n),n&&_s.test(n)?n.replace(Ni,Ec):n}function P_(n){return n=W(n),n&&xs.test(n)?n.replace(wr,"\\$&"):n}var D_=Be(function(n,e,t){return n+(t?"-":"")+e.toLowerCase()}),B_=Be(function(n,e,t){return n+(t?" ":"")+e.toLowerCase()}),U_=_f("toLowerCase");function W_(n,e,t){n=W(n),e=I(e);var r=e?Re(n):0;if(!e||r>=e)return n;var i=(e-r)/2;return Xt(Ut(i),t)+n+Xt(Bt(i),t)}function F_(n,e,t){n=W(n),e=I(e);var r=e?Re(n):0;return e&&r<e?n+Xt(e-r,t):n}function G_(n,e,t){n=W(n),e=I(e);var r=e?Re(n):0;return e&&r<e?Xt(e-r,t)+n:n}function N_(n,e,t){return t||e==null?e=0:e&&(e=+e),Jc(W(n).replace(Ar,""),e||0)}function $_(n,e,t){return(t?on(n,e,t):e===o)?e=1:e=I(e),Vr(W(n),e)}function H_(){var n=arguments,e=W(n[0]);return n.length<3?e:e.replace(n[1],n[2])}var q_=Be(function(n,e,t){return n+(t?"_":"")+e.toLowerCase()});function z_(n,e,t){return t&&typeof t!="number"&&on(n,e,t)&&(e=t=o),t=t===o?Bn:t>>>0,t?(n=W(n),n&&(typeof e=="string"||e!=null&&!xi(e))&&(e=pn(e),!e&&Ce(n))?se(yn(n),0,t):n.split(e,t)):[]}var K_=Be(function(n,e,t){return n+(t?" ":"")+bi(e)});function Z_(n,e,t){return n=W(n),t=t==null?0:de(I(t),0,n.length),e=pn(e),n.slice(t,t+e.length)==e}function Y_(n,e,t){var r=u.templateSettings;t&&on(n,e,t)&&(e=o),n=W(n),e=mi({},e,r,mf);var i=mi({},e.imports,r.imports,mf),f=j(i),s=Dr(i,f);_n(f,function(b){if(Hi.test(b))throw new C(jn)});var c,l,p=0,v=e.interpolate||xt,w="__p += '",A=Ur((e.escape||xt).source+"|"+v.source+"|"+(v===$i?Cs:xt).source+"|"+(e.evaluate||xt).source+"|$","g"),E="//# sourceURL="+(U.call(e,"sourceURL")?(e.sourceURL+"").replace(/\s/g," "):"lodash.templateSources["+ ++rc+"]")+`
11
- `;n.replace(A,function(b,M,D,wn,sn,An){return D||(D=wn),w+=n.slice(p,An).replace(Ds,Sc),M&&(c=!0,w+=`' +
12
- __e(`+M+`) +
13
- '`),sn&&(l=!0,w+=`';
14
- `+sn+`;
15
- __p += '`),D&&(w+=`' +
16
- ((__t = (`+D+`)) == null ? '' : __t) +
17
- '`),p=An+b.length,b}),w+=`';
18
- `;var T=U.call(e,"variable")&&e.variable;if(!T)w=`with (obj) {
19
- `+w+`
20
- }
21
- `;else if(Hi.test(T))throw new C(un);w=(l?w.replace(as,""):w).replace(ls,"$1").replace(hs,"$1;"),w="function("+(T||"obj")+`) {
22
- `+(T?"":`obj || (obj = {});
23
- `)+"var __t, __p = ''"+(c?", __e = _.escape":"")+(l?`, __j = Array.prototype.join;
24
- function print() { __p += __j.call(arguments, '') }
25
- `:`;
26
- `)+w+`return __p
27
- }`;var y=_o(function(){return B(f,E+"return "+w).apply(o,s)});if(y.source=w,Ai(y))throw y;return y}function J_(n){return W(n).toLowerCase()}function X_(n){return W(n).toUpperCase()}function Q_(n,e,t){if(n=W(n),n&&(t||e===o))return mu(n);if(!n||!(e=pn(e)))return n;var r=yn(n),i=yn(e),f=Eu(r,i),s=Su(r,i)+1;return se(r,f,s).join("")}function V_(n,e,t){if(n=W(n),n&&(t||e===o))return n.slice(0,Ou(n)+1);if(!n||!(e=pn(e)))return n;var r=yn(n),i=Su(r,yn(e))+1;return se(r,0,i).join("")}function j_(n,e,t){if(n=W(n),n&&(t||e===o))return n.replace(Ar,"");if(!n||!(e=pn(e)))return n;var r=yn(n),i=Eu(r,yn(e));return se(r,i).join("")}function k_(n,e){var t=Jo,r=Xo;if(Z(e)){var i="separator"in e?e.separator:i;t="length"in e?I(e.length):t,r="omission"in e?pn(e.omission):r}n=W(n);var f=n.length;if(Ce(n)){var s=yn(n);f=s.length}if(t>=f)return n;var c=t-Re(r);if(c<1)return r;var l=s?se(s,0,c).join(""):n.slice(0,c);if(i===o)return l+r;if(s&&(c+=l.length-c),xi(i)){if(n.slice(c).search(i)){var p,v=l;for(i.global||(i=Ur(i.source,W(qi.exec(i))+"g")),i.lastIndex=0;p=i.exec(v);)var w=p.index;l=l.slice(0,w===o?c:w)}}else if(n.indexOf(pn(i),c)!=c){var A=l.lastIndexOf(i);A>-1&&(l=l.slice(0,A))}return l+r}function nd(n){return n=W(n),n&&gs.test(n)?n.replace(Gi,yc):n}var ed=Be(function(n,e,t){return n+(t?" ":"")+e.toUpperCase()}),bi=_f("toUpperCase");function go(n,e,t){return n=W(n),e=t?o:e,e===o?Oc(n)?Pc(n):pc(n):n.match(e)||[]}var _o=L(function(n,e){try{return gn(n,o,e)}catch(t){return Ai(t)?t:new C(t)}}),td=Yn(function(n,e){return _n(e,function(t){t=Mn(t),Un(n,t,vi(n[t],n))}),n});function rd(n){var e=n==null?0:n.length,t=O();return n=e?K(n,function(r){if(typeof r[1]!="function")throw new mn(q);return[t(r[0]),r[1]]}):[],L(function(r){for(var i=-1;++i<e;){var f=n[i];if(gn(f[0],this,r))return gn(f[1],this,r)}})}function id(n){return ya(Sn(n,kn))}function Oi(n){return function(){return n}}function ud(n,e){return n==null||n!==n?e:n}var fd=pf(),od=pf(!0);function hn(n){return n}function Ti(n){return Ku(typeof n=="function"?n:Sn(n,kn))}function sd(n){return Yu(Sn(n,kn))}function cd(n,e){return Ju(n,Sn(e,kn))}var ad=L(function(n,e){return function(t){return it(t,n,e)}}),ld=L(function(n,e){return function(t){return it(n,t,e)}});function Ci(n,e,t){var r=j(e),i=Ht(e,r);t==null&&!(Z(e)&&(i.length||!r.length))&&(t=e,e=n,n=this,i=Ht(e,j(e)));var f=!(Z(t)&&"chain"in t)||!!t.chain,s=Xn(n);return _n(i,function(c){var l=e[c];n[c]=l,s&&(n.prototype[c]=function(){var p=this.__chain__;if(f||p){var v=n(this.__wrapped__),w=v.__actions__=cn(this.__actions__);return w.push({func:l,args:arguments,thisArg:n}),v.__chain__=p,v}return l.apply(n,te([this.value()],arguments))})}),n}function hd(){return k._===this&&(k._=Gc),this}function Ri(){}function gd(n){return n=I(n),L(function(e){return Xu(e,n)})}var _d=ii(K),dd=ii(pu),pd=ii(Ir);function po(n){return li(n)?yr(Mn(n)):Ya(n)}function vd(n){return function(e){return n==null?o:pe(n,e)}}var wd=wf(),Ad=wf(!0);function Ii(){return[]}function yi(){return!1}function xd(){return{}}function md(){return""}function Ed(){return!0}function Sd(n,e){if(n=I(n),n<1||n>ne)return[];var t=Bn,r=en(n,Bn);e=O(e),n-=Bn;for(var i=Pr(r,e);++t<n;)e(t);return i}function bd(n){return R(n)?K(n,Mn):vn(n)?[n]:cn(Df(W(n)))}function Od(n){var e=++Wc;return W(n)+e}var Td=Jt(function(n,e){return n+e},0),Cd=ui("ceil"),Rd=Jt(function(n,e){return n/e},1),Id=ui("floor");function yd(n){return n&&n.length?$t(n,hn,zr):o}function Ld(n,e){return n&&n.length?$t(n,O(e,2),zr):o}function Md(n){return Au(n,hn)}function Pd(n,e){return Au(n,O(e,2))}function Dd(n){return n&&n.length?$t(n,hn,Jr):o}function Bd(n,e){return n&&n.length?$t(n,O(e,2),Jr):o}var Ud=Jt(function(n,e){return n*e},1),Wd=ui("round"),Fd=Jt(function(n,e){return n-e},0);function Gd(n){return n&&n.length?Mr(n,hn):0}function Nd(n,e){return n&&n.length?Mr(n,O(e,2)):0}return u.after=cg,u.ary=Kf,u.assign=Qg,u.assignIn=uo,u.assignInWith=fo,u.assignWith=mi,u.at=Vg,u.before=Zf,u.bind=vi,u.bindAll=td,u.bindKey=Yf,u.castArray=mg,u.chain=Hf,u.chunk=yl,u.compact=Ll,u.concat=Ml,u.cond=rd,u.conforms=id,u.constant=Oi,u.countBy=Nh,u.create=jg,u.curry=Jf,u.curryRight=Xf,u.debounce=Qf,u.defaults=kg,u.defaultsDeep=n_,u.defer=ag,u.delay=lg,u.difference=Pl,u.differenceBy=Dl,u.differenceWith=Bl,u.drop=Ul,u.dropRight=Wl,u.dropRightWhile=Fl,u.dropWhile=Gl,u.fill=Nl,u.filter=Hh,u.flatMap=Kh,u.flatMapDeep=Zh,u.flatMapDepth=Yh,u.flatten=Ff,u.flattenDeep=$l,u.flattenDepth=Hl,u.flip=hg,u.flow=fd,u.flowRight=od,u.fromPairs=ql,u.functions=o_,u.functionsIn=s_,u.groupBy=Jh,u.initial=Kl,u.intersection=Zl,u.intersectionBy=Yl,u.intersectionWith=Jl,u.invert=a_,u.invertBy=l_,u.invokeMap=Qh,u.iteratee=Ti,u.keyBy=Vh,u.keys=j,u.keysIn=ln,u.map=er,u.mapKeys=g_,u.mapValues=__,u.matches=sd,u.matchesProperty=cd,u.memoize=rr,u.merge=d_,u.mergeWith=oo,u.method=ad,u.methodOf=ld,u.mixin=Ci,u.negate=ir,u.nthArg=gd,u.omit=p_,u.omitBy=v_,u.once=gg,u.orderBy=jh,u.over=_d,u.overArgs=_g,u.overEvery=dd,u.overSome=pd,u.partial=wi,u.partialRight=Vf,u.partition=kh,u.pick=w_,u.pickBy=so,u.property=po,u.propertyOf=vd,u.pull=jl,u.pullAll=Nf,u.pullAllBy=kl,u.pullAllWith=nh,u.pullAt=eh,u.range=wd,u.rangeRight=Ad,u.rearg=dg,u.reject=tg,u.remove=th,u.rest=pg,u.reverse=di,u.sampleSize=ig,u.set=x_,u.setWith=m_,u.shuffle=ug,u.slice=rh,u.sortBy=sg,u.sortedUniq=ah,u.sortedUniqBy=lh,u.split=z_,u.spread=vg,u.tail=hh,u.take=gh,u.takeRight=_h,u.takeRightWhile=dh,u.takeWhile=ph,u.tap=Lh,u.throttle=wg,u.thru=nr,u.toArray=to,u.toPairs=co,u.toPairsIn=ao,u.toPath=bd,u.toPlainObject=io,u.transform=E_,u.unary=Ag,u.union=vh,u.unionBy=wh,u.unionWith=Ah,u.uniq=xh,u.uniqBy=mh,u.uniqWith=Eh,u.unset=S_,u.unzip=pi,u.unzipWith=$f,u.update=b_,u.updateWith=O_,u.values=Fe,u.valuesIn=T_,u.without=Sh,u.words=go,u.wrap=xg,u.xor=bh,u.xorBy=Oh,u.xorWith=Th,u.zip=Ch,u.zipObject=Rh,u.zipObjectDeep=Ih,u.zipWith=yh,u.entries=co,u.entriesIn=ao,u.extend=uo,u.extendWith=fo,Ci(u,u),u.add=Td,u.attempt=_o,u.camelCase=y_,u.capitalize=lo,u.ceil=Cd,u.clamp=C_,u.clone=Eg,u.cloneDeep=bg,u.cloneDeepWith=Og,u.cloneWith=Sg,u.conformsTo=Tg,u.deburr=ho,u.defaultTo=ud,u.divide=Rd,u.endsWith=L_,u.eq=Pn,u.escape=M_,u.escapeRegExp=P_,u.every=$h,u.find=qh,u.findIndex=Uf,u.findKey=e_,u.findLast=zh,u.findLastIndex=Wf,u.findLastKey=t_,u.floor=Id,u.forEach=qf,u.forEachRight=zf,u.forIn=r_,u.forInRight=i_,u.forOwn=u_,u.forOwnRight=f_,u.get=Ei,u.gt=Cg,u.gte=Rg,u.has=c_,u.hasIn=Si,u.head=Gf,u.identity=hn,u.includes=Xh,u.indexOf=zl,u.inRange=R_,u.invoke=h_,u.isArguments=Ae,u.isArray=R,u.isArrayBuffer=Ig,u.isArrayLike=an,u.isArrayLikeObject=J,u.isBoolean=yg,u.isBuffer=ce,u.isDate=Lg,u.isElement=Mg,u.isEmpty=Pg,u.isEqual=Dg,u.isEqualWith=Bg,u.isError=Ai,u.isFinite=Ug,u.isFunction=Xn,u.isInteger=jf,u.isLength=ur,u.isMap=kf,u.isMatch=Wg,u.isMatchWith=Fg,u.isNaN=Gg,u.isNative=Ng,u.isNil=Hg,u.isNull=$g,u.isNumber=no,u.isObject=Z,u.isObjectLike=Y,u.isPlainObject=at,u.isRegExp=xi,u.isSafeInteger=qg,u.isSet=eo,u.isString=fr,u.isSymbol=vn,u.isTypedArray=We,u.isUndefined=zg,u.isWeakMap=Kg,u.isWeakSet=Zg,u.join=Xl,u.kebabCase=D_,u.last=On,u.lastIndexOf=Ql,u.lowerCase=B_,u.lowerFirst=U_,u.lt=Yg,u.lte=Jg,u.max=yd,u.maxBy=Ld,u.mean=Md,u.meanBy=Pd,u.min=Dd,u.minBy=Bd,u.stubArray=Ii,u.stubFalse=yi,u.stubObject=xd,u.stubString=md,u.stubTrue=Ed,u.multiply=Ud,u.nth=Vl,u.noConflict=hd,u.noop=Ri,u.now=tr,u.pad=W_,u.padEnd=F_,u.padStart=G_,u.parseInt=N_,u.random=I_,u.reduce=ng,u.reduceRight=eg,u.repeat=$_,u.replace=H_,u.result=A_,u.round=Wd,u.runInContext=a,u.sample=rg,u.size=fg,u.snakeCase=q_,u.some=og,u.sortedIndex=ih,u.sortedIndexBy=uh,u.sortedIndexOf=fh,u.sortedLastIndex=oh,u.sortedLastIndexBy=sh,u.sortedLastIndexOf=ch,u.startCase=K_,u.startsWith=Z_,u.subtract=Fd,u.sum=Gd,u.sumBy=Nd,u.template=Y_,u.times=Sd,u.toFinite=Qn,u.toInteger=I,u.toLength=ro,u.toLower=J_,u.toNumber=Tn,u.toSafeInteger=Xg,u.toString=W,u.toUpper=X_,u.trim=Q_,u.trimEnd=V_,u.trimStart=j_,u.truncate=k_,u.unescape=nd,u.uniqueId=Od,u.upperCase=ed,u.upperFirst=bi,u.each=qf,u.eachRight=zf,u.first=Gf,Ci(u,function(){var n={};return Wn(u,function(e,t){U.call(u.prototype,t)||(n[t]=e)}),n}(),{chain:!1}),u.VERSION=S,_n(["bind","bindKey","curry","curryRight","partial","partialRight"],function(n){u[n].placeholder=u}),_n(["drop","take"],function(n,e){P.prototype[n]=function(t){t=t===o?1:V(I(t),0);var r=this.__filtered__&&!e?new P(this):this.clone();return r.__filtered__?r.__takeCount__=en(t,r.__takeCount__):r.__views__.push({size:en(t,Bn),type:n+(r.__dir__<0?"Right":"")}),r},P.prototype[n+"Right"]=function(t){return this.reverse()[n](t).reverse()}}),_n(["filter","map","takeWhile"],function(n,e){var t=e+1,r=t==Ui||t==ko;P.prototype[n]=function(i){var f=this.clone();return f.__iteratees__.push({iteratee:O(i,3),type:t}),f.__filtered__=f.__filtered__||r,f}}),_n(["head","last"],function(n,e){var t="take"+(e?"Right":"");P.prototype[n]=function(){return this[t](1).value()[0]}}),_n(["initial","tail"],function(n,e){var t="drop"+(e?"":"Right");P.prototype[n]=function(){return this.__filtered__?new P(this):this[t](1)}}),P.prototype.compact=function(){return this.filter(hn)},P.prototype.find=function(n){return this.filter(n).head()},P.prototype.findLast=function(n){return this.reverse().find(n)},P.prototype.invokeMap=L(function(n,e){return typeof n=="function"?new P(this):this.map(function(t){return it(t,n,e)})}),P.prototype.reject=function(n){return this.filter(ir(O(n)))},P.prototype.slice=function(n,e){n=I(n);var t=this;return t.__filtered__&&(n>0||e<0)?new P(t):(n<0?t=t.takeRight(-n):n&&(t=t.drop(n)),e!==o&&(e=I(e),t=e<0?t.dropRight(-e):t.take(e-n)),t)},P.prototype.takeRightWhile=function(n){return this.reverse().takeWhile(n).reverse()},P.prototype.toArray=function(){return this.take(Bn)},Wn(P.prototype,function(n,e){var t=/^(?:filter|find|map|reject)|While$/.test(e),r=/^(?:head|last)$/.test(e),i=u[r?"take"+(e=="last"?"Right":""):e],f=r||/^find/.test(e);i&&(u.prototype[e]=function(){var s=this.__wrapped__,c=r?[1]:arguments,l=s instanceof P,p=c[0],v=l||R(s),w=function(M){var D=i.apply(u,te([M],c));return r&&A?D[0]:D};v&&t&&typeof p=="function"&&p.length!=1&&(l=v=!1);var A=this.__chain__,E=!!this.__actions__.length,T=f&&!A,y=l&&!E;if(!f&&v){s=y?s:new P(this);var b=n.apply(s,c);return b.__actions__.push({func:nr,args:[w],thisArg:o}),new En(b,A)}return T&&y?n.apply(this,c):(b=this.thru(w),T?r?b.value()[0]:b.value():b)})}),_n(["pop","push","shift","sort","splice","unshift"],function(n){var e=Tt[n],t=/^(?:push|sort|unshift)$/.test(n)?"tap":"thru",r=/^(?:pop|shift)$/.test(n);u.prototype[n]=function(){var i=arguments;if(r&&!this.__chain__){var f=this.value();return e.apply(R(f)?f:[],i)}return this[t](function(s){return e.apply(R(s)?s:[],i)})}}),Wn(P.prototype,function(n,e){var t=u[e];if(t){var r=t.name+"";U.call(Me,r)||(Me[r]=[]),Me[r].push({name:e,func:t})}}),Me[Yt(o,Ee).name]=[{name:"wrapper",func:o}],P.prototype.clone=ea,P.prototype.reverse=ta,P.prototype.value=ra,u.prototype.at=Mh,u.prototype.chain=Ph,u.prototype.commit=Dh,u.prototype.next=Bh,u.prototype.plant=Wh,u.prototype.reverse=Fh,u.prototype.toJSON=u.prototype.valueOf=u.prototype.value=Gh,u.prototype.first=u.prototype.head,Ve&&(u.prototype[Ve]=Uh),u},Ie=Dc();le?((le.exports=Ie)._=Ie,Or._=Ie):k._=Ie}).call(Kd)}(lt,lt.exports)),lt.exports}var Yd=Zd();const ht=F.define({description:"Updates an existing object.",execute:(d,{engine:g,registered:o})=>{const S=o.get(d.id);if(!S)throw new Error("Object not found.");const m=Yd.merge(S,d);o.set(d.id,m),g.scene.root.updateSceneObject({...d,id:m.id,entityType:m.entityType})}});G("UPDATE_OBJECT",ht);const Pi=F.define({description:"Attach an object to another object.",execute:(d,{engine:g,registered:o})=>{const S=o.get(d.object.id);if(!S)throw new Error("Object not found.");const m=g.scene.root.getSceneObject(S);if(!m)throw new Error("Object not found in scene.");if(d.parent===null){g.scene.root.attach(m),new ht({id:S.id,parentId:null},{engine:g,registered:o}).execute();return}if(d.object.id===d.parent.id){console.warn("Cannot attach object to itself.");return}const N=o.get(d.parent.id);if(!N){console.warn("Parent object not found.");return}const q=g.scene.root.getSceneObject(N);if(!q){console.warn("Parent object not found in scene.");return}q.attach(m),new ht({id:S.id,parentId:N.id},{engine:g,registered:o}).execute()}});G("SET_PARENT",Pi);const yo=F.define({description:"Deletes an object from the scene.",execute:(d,{engine:g,registered:o})=>{const S=o.get(d.id);if(!S)return!1;S.parentId&&new Pi({object:{id:S.id},parent:null},{engine:g,registered:o}).execute(),S.entityType==="group"&&o.forEach(m=>{m.parentId===S.id&&new ht({id:m.id,parentId:null},{engine:g,registered:o}).execute()}),Object.assign(d,S),o.delete(d.id),g.scene.root.deleteSceneObject(S)}});G("DELETE_OBJECT",yo);const Lo=F.define({description:"Deselects an existing object.",execute:async(d,{engine:g,getToolbox:o,registered:S})=>{const m=S.get(d.id);if(!m)throw new Error("Object not found.");const N=g.scene.root.getSceneObject(m);if(!N)throw new Error("Object not found in scene.");if(!("isSelectable"in N))throw new Error("Object is not selectable.");(await o()).selectionState.deselect()}});G("DESELECT_OBJECT",Lo);const Mo=F.define({description:"Places an object on top of an underlying object or the floor.",execute:(d,{engine:g,registered:o})=>{const S=o.get(d.id);if(!S)throw new Error(`Object with id ${d.id} not registered. Registered: ${o}`);const m=g.scene.root.getSceneObject(S);if(!m)throw new Error(`Object with id ${d.id} is not found in the scene. Scene: ${g.scene}`);if(!("isDIVEModel"in m))throw new Error(`Object with id ${d.id} is not a DIVEModel. Object: ${m}`);m.dropIt()}});G("DROP_IT",Mo);const Po=F.define({description:"Retrieves all objects in the state.",execute:(d,{registered:g})=>g});G("GET_ALL_OBJECTS",Po);const Do=F.define({description:"Returns a list of objects of given IDs.",execute:(d,{registered:g})=>d.ids.length===0?[]:Array.from(g.values()).filter(o=>d.ids.includes(o.id))});G("GET_OBJECTS",Do);const Bo=F.define({description:"Is triggered when a model is loaded.",execute:(d,{registered:g})=>{const o=g.get(d.id);if(!o)throw new Error(`Model with id ${d.id} not found`);if(!Mi.isModelSchema(o))throw new Error(`Model with id ${d.id} is not a ModelSchema`);o.loaded=!0}});G("MODEL_LOADED",Bo);const Uo=F.define({description:"Places an object on the floor.",execute:(d,{engine:g,registered:o})=>{const S=o.get(d.id);if(!S)throw new Error(`Object with id ${d.id} not registered. Registered: ${o}`);const m=g.scene.root.getSceneObject(S);if(!m)throw new Error(`Object with id ${d.id} is not found in the scene. Scene: ${g.scene}`);if(!("isDIVEModel"in m))throw new Error(`Object with id ${d.id} is not a DIVEModel. Object: ${m}`);m.placeOnFloor()}});G("PLACE_ON_FLOOR",Uo);const Wo=F.define({description:"Selects an existing object.",execute:async(d,{engine:g,getToolbox:o,registered:S})=>{const m=S.get(d.id);if(!m)throw new Error("Object not found.");const N=g.scene.root.getSceneObject(m);if(!N)throw new Error("Object not found in scene.");if(!("isSelectable"in N))throw new Error("Object is not selectable.");(await o()).selectionState.select(N)}});G("SELECT_OBJECT",Wo);const Fo=F.define({description:"Starts the render process.",execute:(d,{engine:g})=>{g.start()}});G("START_RENDER",Fo);const Go=F.define({description:"Exports the current scene to a blob and returns the URL.",execute:async(d,{engine:g,getAssetExporter:o})=>o().then(S=>S.export(g.scene.root,d.type))});G("EXPORT_SCENE",Go);const No=F.define({description:"Retrieves all current scene data.",execute:(d,{engine:g,controller:o,registered:S})=>({name:g.scene.name,mediaItem:null,backgroundColor:"#"+g.scene.background.getHexString(),floorEnabled:g.scene.root.floor.visible,floorColor:"#"+g.scene.root.floor.material.color.getHexString(),userCamera:{position:o.object.position.clone(),target:o.target.clone()},spotmarks:[],lights:Array.from(S.values()).filter(m=>m.entityType==="light"),objects:Array.from(S.values()).filter(m=>m.entityType==="model"),cameras:Array.from(S.values()).filter(m=>m.entityType==="pov"),primitives:Array.from(S.values()).filter(m=>m.entityType==="primitive"),groups:Array.from(S.values()).filter(m=>m.entityType==="group")})});G("GET_ALL_SCENE_DATA",No);const $o=F.define({description:"Set the background color of the scene.",execute:(d,{engine:g})=>{g.scene.setBackground(d.color)}});G("SET_BACKGROUND",$o);const Ho=F.define({description:"Updates scene properties.",execute:(d,{engine:g})=>{d.name!==void 0&&(g.scene.name=d.name),d.backgroundColor!==void 0&&g.scene.setBackground(d.backgroundColor),d.gridEnabled!==void 0&&g.scene.grid.setVisibility(d.gridEnabled),d.floorEnabled!==void 0&&g.scene.root.floor.setVisibility(d.floorEnabled),d.floorColor!==void 0&&g.scene.root.floor.setColor(d.floorColor),d.name=g.scene.name,d.backgroundColor="#"+g.scene.background.getHexString(),d.gridEnabled=g.scene.grid.visible,d.floorEnabled=g.scene.root.floor.visible,d.floorColor="#"+g.scene.root.floor.material.color.getHexString()}});G("UPDATE_SCENE",Ho);const qo=F.define({description:"Sets the gizmo's mode.",execute:async(d,{getToolbox:g})=>{(await g()).getTool("transform").setGizmoMode(d.mode)}});G("SET_GIZMO_MODE",qo);const zo=F.define({description:"Sets the gizmo's unified scale mode.",execute:async(d,{getToolbox:g})=>{(await g()).getTool("transform").setGizmoScaleLinked(d)}});G("SET_GIZMO_SCALE_LINKED",zo);const Ko=F.define({description:"Sets the gizmo's visibility.",execute:async(d,{getToolbox:g})=>{(await g()).getTool("transform").setGizmoVisible(d)}});G("SET_GIZMO_VISIBILITY",Ko);const Zo=F.define({description:"Activates a specific tool from the toolbox.",execute:async(d,{getToolbox:g})=>{(await g()).enableTool(d.tool)}});G("USE_TOOL",Zo);const Ge=class Ge{constructor(g,o){rn(this,"_id");rn(this,"engine");rn(this,"controller");rn(this,"_mediaCreator",null);rn(this,"_arSystem",null);rn(this,"_assetExplorer",null);rn(this,"_animationSystem",null);rn(this,"_toolbox",null);rn(this,"registered",new Map);rn(this,"listeners",new Map);this._id=qd.MathUtils.generateUUID(),this.engine=g,this.controller=o,Ge.__instances.push(this)}static get(g){const o=this.__instances.find(S=>S.id===g);return o||this.__instances.find(S=>Array.from(S.registered.values()).find(m=>m.id===g))}get id(){return this._id}async getMediaCreator(){return this._mediaCreator||(this._mediaCreator=new(await Promise.resolve().then(()=>require("../mediacreator/index.cjs"))).MediaCreator(this.engine.mainView.renderer,this.engine.scene,this.controller)),this._mediaCreator}async getARSystem(){return this._arSystem||(this._arSystem=new(await Promise.resolve().then(()=>require("../ar/index.cjs"))).ARSystem),this._arSystem}async getAssetExporter(){return this._assetExplorer||(this._assetExplorer=new(await Promise.resolve().then(()=>require("../assetexporter/index.cjs"))).AssetExporter),this._assetExplorer}async getAnimationSystem(){return this._animationSystem||(this._animationSystem=new(await Promise.resolve().then(()=>require("../animation/index.cjs"))).AnimationSystem),this._animationSystem}async getToolbox(){return this._toolbox||(this._toolbox=new(await Promise.resolve().then(()=>require("../toolbox/index.cjs"))).Toolbox(this.engine.scene,this.controller)),this._toolbox}destroyInstance(){const g=Ge.__instances.findIndex(o=>o.id===this.id);return g===-1?!1:(Ge.__instances.splice(g,1),!0)}performAction(g,...o){const S=xo(g);if(!S)throw new Error(`Action ${g} is not defined.`);const m=this.getDependencies(),N=o[0],q=new S(N,m);try{const un=q.execute();return un&&typeof un=="object"&&"then"in un?un.then(jn=>(this.dispatch(g,N),jn)).catch(jn=>{throw new Error(`Failed to execute ${g}`,{cause:jn})}):(this.dispatch(g,N),un)}catch(un){throw new Error(`Failed to execute ${g}`,{cause:un})}}subscribe(g,o){return this.listeners.get(g)||this.listeners.set(g,[]),this.listeners.get(g).push(o),()=>{const S=this.listeners.get(g);if(!S)return;const m=S.findIndex(N=>N===o);m!==-1&&S.splice(m,1)}}dispatch(g,o){const S=this.listeners.get(g);S&&S.forEach(m=>m(o))}getDependencies(){return{registered:this.registered,engine:this.engine,controller:this.controller,getARSystem:()=>this.getARSystem(),getAssetExporter:()=>this.getAssetExporter(),getAnimationSystem:()=>this.getAnimationSystem(),getMediaCreator:()=>this.getMediaCreator(),getToolbox:()=>this.getToolbox()}}};rn(Ge,"__instances",[]);let Li=Ge;exports.AddObjectAction=Io;exports.ComputeEncompassingViewAction=Eo;exports.DeleteObjectAction=yo;exports.DeselectObjectAction=Lo;exports.DropItAction=Mo;exports.ExportSceneAction=Go;exports.GenerateMediaAction=Ro;exports.GetAllObjectsAction=Po;exports.GetAllSceneDataAction=No;exports.GetCameraTransformAction=So;exports.GetObjectsAction=Do;exports.LaunchARAction=mo;exports.ModelLoadedAction=Bo;exports.MoveCameraAction=bo;exports.PlaceOnFloorAction=Uo;exports.SelectObjectAction=Wo;exports.SetBackgroundAction=$o;exports.SetCameraLayerAction=Oo;exports.SetCameraTransformAction=To;exports.SetGizmoModeAction=qo;exports.SetGizmoScaleLinkedAction=zo;exports.SetGizmoVisibleAction=Ko;exports.SetParentAction=Pi;exports.StartRenderAction=Fo;exports.State=Li;exports.UpdateObjectAction=ht;exports.UpdateSceneAction=Ho;exports.UseToolAction=Zo;exports.ZoomCameraAction=Co;exports.getActionClass=xo;exports.registerAction=G;
1
+ "use strict";var Ii=Object.defineProperty;var xi=(r,e,t)=>e in r?Ii(r,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):r[e]=t;var _=(r,e,t)=>xi(r,typeof e!="symbol"?e+"":e,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const Ft=require("three/webgpu"),A=require("../../chunks/FileTypes-gD_1MonW.cjs");require("three/examples/jsm/loaders/HDRLoader.js");require("three/tsl");const L=require("../../chunks/detachTransformControls-2XQrpLN-.cjs"),kt=require("../../chunks/ModelComponent-Cj3ff6nL.cjs"),Vn={};function p(r,e){Vn[r]=e}function Un(r){return Vn[r]}var B=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Mi(r){return r&&r.__esModule&&Object.prototype.hasOwnProperty.call(r,"default")?r.default:r}var W,Xt;function Pi(){if(Xt)return W;Xt=1;function r(){this.__data__=[],this.size=0}return W=r,W}var ee,Yt;function N(){if(Yt)return ee;Yt=1;function r(e,t){return e===t||e!==e&&t!==t}return ee=r,ee}var te,Qt;function z(){if(Qt)return te;Qt=1;var r=N();function e(t,n){for(var i=t.length;i--;)if(r(t[i][0],n))return i;return-1}return te=e,te}var re,Wt;function Li(){if(Wt)return re;Wt=1;var r=z(),e=Array.prototype,t=e.splice;function n(i){var a=this.__data__,o=r(a,i);if(o<0)return!1;var s=a.length-1;return o==s?a.pop():t.call(a,o,1),--this.size,!0}return re=n,re}var ne,er;function Di(){if(er)return ne;er=1;var r=z();function e(t){var n=this.__data__,i=r(n,t);return i<0?void 0:n[i][1]}return ne=e,ne}var ie,tr;function Gi(){if(tr)return ie;tr=1;var r=z();function e(t){return r(this.__data__,t)>-1}return ie=e,ie}var ae,rr;function ki(){if(rr)return ae;rr=1;var r=z();function e(t,n){var i=this.__data__,a=r(i,t);return a<0?(++this.size,i.push([t,n])):i[a][1]=n,this}return ae=e,ae}var oe,nr;function H(){if(nr)return oe;nr=1;var r=Pi(),e=Li(),t=Di(),n=Gi(),i=ki();function a(o){var s=-1,c=o==null?0:o.length;for(this.clear();++s<c;){var u=o[s];this.set(u[0],u[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,oe=a,oe}var se,ir;function Vi(){if(ir)return se;ir=1;var r=H();function e(){this.__data__=new r,this.size=0}return se=e,se}var ce,ar;function Ui(){if(ar)return ce;ar=1;function r(e){var t=this.__data__,n=t.delete(e);return this.size=t.size,n}return ce=r,ce}var ue,or;function Fi(){if(or)return ue;or=1;function r(e){return this.__data__.get(e)}return ue=r,ue}var fe,sr;function Bi(){if(sr)return fe;sr=1;function r(e){return this.__data__.has(e)}return fe=r,fe}var de,cr;function Fn(){if(cr)return de;cr=1;var r=typeof B=="object"&&B&&B.Object===Object&&B;return de=r,de}var le,ur;function x(){if(ur)return le;ur=1;var r=Fn(),e=typeof self=="object"&&self&&self.Object===Object&&self,t=r||e||Function("return this")();return le=t,le}var he,fr;function Bn(){if(fr)return he;fr=1;var r=x(),e=r.Symbol;return he=e,he}var pe,dr;function Ni(){if(dr)return pe;dr=1;var r=Bn(),e=Object.prototype,t=e.hasOwnProperty,n=e.toString,i=r?r.toStringTag:void 0;function a(o){var s=t.call(o,i),c=o[i];try{o[i]=void 0;var u=!0}catch{}var f=n.call(o);return u&&(s?o[i]=c:delete o[i]),f}return pe=a,pe}var ve,lr;function zi(){if(lr)return ve;lr=1;var r=Object.prototype,e=r.toString;function t(n){return e.call(n)}return ve=t,ve}var _e,hr;function K(){if(hr)return _e;hr=1;var r=Bn(),e=Ni(),t=zi(),n="[object Null]",i="[object Undefined]",a=r?r.toStringTag:void 0;function o(s){return s==null?s===void 0?i:n:a&&a in Object(s)?e(s):t(s)}return _e=o,_e}var ge,pr;function j(){if(pr)return ge;pr=1;function r(e){var t=typeof e;return e!=null&&(t=="object"||t=="function")}return ge=r,ge}var be,vr;function Bt(){if(vr)return be;vr=1;var r=K(),e=j(),t="[object AsyncFunction]",n="[object Function]",i="[object GeneratorFunction]",a="[object Proxy]";function o(s){if(!e(s))return!1;var c=r(s);return c==n||c==i||c==t||c==a}return be=o,be}var ye,_r;function Hi(){if(_r)return ye;_r=1;var r=x(),e=r["__core-js_shared__"];return ye=e,ye}var me,gr;function Ki(){if(gr)return me;gr=1;var r=Hi(),e=function(){var n=/[^.]+$/.exec(r&&r.keys&&r.keys.IE_PROTO||"");return n?"Symbol(src)_1."+n:""}();function t(n){return!!e&&e in n}return me=t,me}var Ae,br;function $i(){if(br)return Ae;br=1;var r=Function.prototype,e=r.toString;function t(n){if(n!=null){try{return e.call(n)}catch{}try{return n+""}catch{}}return""}return Ae=t,Ae}var Ce,yr;function Ji(){if(yr)return Ce;yr=1;var r=Bt(),e=Ki(),t=j(),n=$i(),i=/[\\^$.*+?()[\]{}|]/g,a=/^\[object .+?Constructor\]$/,o=Function.prototype,s=Object.prototype,c=o.toString,u=s.hasOwnProperty,f=RegExp("^"+c.call(u).replace(i,"\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g,"$1.*?")+"$");function d(v){if(!t(v)||e(v))return!1;var m=r(v)?f:a;return m.test(n(v))}return Ce=d,Ce}var Ee,mr;function Zi(){if(mr)return Ee;mr=1;function r(e,t){return e==null?void 0:e[t]}return Ee=r,Ee}var qe,Ar;function Nt(){if(Ar)return qe;Ar=1;var r=Ji(),e=Zi();function t(n,i){var a=e(n,i);return r(a)?a:void 0}return qe=t,qe}var Te,Cr;function Nn(){if(Cr)return Te;Cr=1;var r=Nt(),e=x(),t=r(e,"Map");return Te=t,Te}var Se,Er;function $(){if(Er)return Se;Er=1;var r=Nt(),e=r(Object,"create");return Se=e,Se}var we,qr;function Xi(){if(qr)return we;qr=1;var r=$();function e(){this.__data__=r?r(null):{},this.size=0}return we=e,we}var Oe,Tr;function Yi(){if(Tr)return Oe;Tr=1;function r(e){var t=this.has(e)&&delete this.__data__[e];return this.size-=t?1:0,t}return Oe=r,Oe}var je,Sr;function Qi(){if(Sr)return je;Sr=1;var r=$(),e="__lodash_hash_undefined__",t=Object.prototype,n=t.hasOwnProperty;function i(a){var o=this.__data__;if(r){var s=o[a];return s===e?void 0:s}return n.call(o,a)?o[a]:void 0}return je=i,je}var Re,wr;function Wi(){if(wr)return Re;wr=1;var r=$(),e=Object.prototype,t=e.hasOwnProperty;function n(i){var a=this.__data__;return r?a[i]!==void 0:t.call(a,i)}return Re=n,Re}var Ie,Or;function ea(){if(Or)return Ie;Or=1;var r=$(),e="__lodash_hash_undefined__";function t(n,i){var a=this.__data__;return this.size+=this.has(n)?0:1,a[n]=r&&i===void 0?e:i,this}return Ie=t,Ie}var xe,jr;function ta(){if(jr)return xe;jr=1;var r=Xi(),e=Yi(),t=Qi(),n=Wi(),i=ea();function a(o){var s=-1,c=o==null?0:o.length;for(this.clear();++s<c;){var u=o[s];this.set(u[0],u[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,xe=a,xe}var Me,Rr;function ra(){if(Rr)return Me;Rr=1;var r=ta(),e=H(),t=Nn();function n(){this.size=0,this.__data__={hash:new r,map:new(t||e),string:new r}}return Me=n,Me}var Pe,Ir;function na(){if(Ir)return Pe;Ir=1;function r(e){var t=typeof e;return t=="string"||t=="number"||t=="symbol"||t=="boolean"?e!=="__proto__":e===null}return Pe=r,Pe}var Le,xr;function J(){if(xr)return Le;xr=1;var r=na();function e(t,n){var i=t.__data__;return r(n)?i[typeof n=="string"?"string":"hash"]:i.map}return Le=e,Le}var De,Mr;function ia(){if(Mr)return De;Mr=1;var r=J();function e(t){var n=r(this,t).delete(t);return this.size-=n?1:0,n}return De=e,De}var Ge,Pr;function aa(){if(Pr)return Ge;Pr=1;var r=J();function e(t){return r(this,t).get(t)}return Ge=e,Ge}var ke,Lr;function oa(){if(Lr)return ke;Lr=1;var r=J();function e(t){return r(this,t).has(t)}return ke=e,ke}var Ve,Dr;function sa(){if(Dr)return Ve;Dr=1;var r=J();function e(t,n){var i=r(this,t),a=i.size;return i.set(t,n),this.size+=i.size==a?0:1,this}return Ve=e,Ve}var Ue,Gr;function ca(){if(Gr)return Ue;Gr=1;var r=ra(),e=ia(),t=aa(),n=oa(),i=sa();function a(o){var s=-1,c=o==null?0:o.length;for(this.clear();++s<c;){var u=o[s];this.set(u[0],u[1])}}return a.prototype.clear=r,a.prototype.delete=e,a.prototype.get=t,a.prototype.has=n,a.prototype.set=i,Ue=a,Ue}var Fe,kr;function ua(){if(kr)return Fe;kr=1;var r=H(),e=Nn(),t=ca(),n=200;function i(a,o){var s=this.__data__;if(s instanceof r){var c=s.__data__;if(!e||c.length<n-1)return c.push([a,o]),this.size=++s.size,this;s=this.__data__=new t(c)}return s.set(a,o),this.size=s.size,this}return Fe=i,Fe}var Be,Vr;function fa(){if(Vr)return Be;Vr=1;var r=H(),e=Vi(),t=Ui(),n=Fi(),i=Bi(),a=ua();function o(s){var c=this.__data__=new r(s);this.size=c.size}return o.prototype.clear=e,o.prototype.delete=t,o.prototype.get=n,o.prototype.has=i,o.prototype.set=a,Be=o,Be}var Ne,Ur;function zn(){if(Ur)return Ne;Ur=1;var r=Nt(),e=function(){try{var t=r(Object,"defineProperty");return t({},"",{}),t}catch{}}();return Ne=e,Ne}var ze,Fr;function zt(){if(Fr)return ze;Fr=1;var r=zn();function e(t,n,i){n=="__proto__"&&r?r(t,n,{configurable:!0,enumerable:!0,value:i,writable:!0}):t[n]=i}return ze=e,ze}var He,Br;function Hn(){if(Br)return He;Br=1;var r=zt(),e=N();function t(n,i,a){(a!==void 0&&!e(n[i],a)||a===void 0&&!(i in n))&&r(n,i,a)}return He=t,He}var Ke,Nr;function da(){if(Nr)return Ke;Nr=1;function r(e){return function(t,n,i){for(var a=-1,o=Object(t),s=i(t),c=s.length;c--;){var u=s[e?c:++a];if(n(o[u],u,o)===!1)break}return t}}return Ke=r,Ke}var $e,zr;function la(){if(zr)return $e;zr=1;var r=da(),e=r();return $e=e,$e}var D={exports:{}};D.exports;var Hr;function ha(){return Hr||(Hr=1,function(r,e){var t=x(),n=e&&!e.nodeType&&e,i=n&&!0&&r&&!r.nodeType&&r,a=i&&i.exports===n,o=a?t.Buffer:void 0,s=o?o.allocUnsafe:void 0;function c(u,f){if(f)return u.slice();var d=u.length,v=s?s(d):new u.constructor(d);return u.copy(v),v}r.exports=c}(D,D.exports)),D.exports}var Je,Kr;function pa(){if(Kr)return Je;Kr=1;var r=x(),e=r.Uint8Array;return Je=e,Je}var Ze,$r;function va(){if($r)return Ze;$r=1;var r=pa();function e(t){var n=new t.constructor(t.byteLength);return new r(n).set(new r(t)),n}return Ze=e,Ze}var Xe,Jr;function _a(){if(Jr)return Xe;Jr=1;var r=va();function e(t,n){var i=n?r(t.buffer):t.buffer;return new t.constructor(i,t.byteOffset,t.length)}return Xe=e,Xe}var Ye,Zr;function ga(){if(Zr)return Ye;Zr=1;function r(e,t){var n=-1,i=e.length;for(t||(t=Array(i));++n<i;)t[n]=e[n];return t}return Ye=r,Ye}var Qe,Xr;function ba(){if(Xr)return Qe;Xr=1;var r=j(),e=Object.create,t=function(){function n(){}return function(i){if(!r(i))return{};if(e)return e(i);n.prototype=i;var a=new n;return n.prototype=void 0,a}}();return Qe=t,Qe}var We,Yr;function ya(){if(Yr)return We;Yr=1;function r(e,t){return function(n){return e(t(n))}}return We=r,We}var et,Qr;function Kn(){if(Qr)return et;Qr=1;var r=ya(),e=r(Object.getPrototypeOf,Object);return et=e,et}var tt,Wr;function $n(){if(Wr)return tt;Wr=1;var r=Object.prototype;function e(t){var n=t&&t.constructor,i=typeof n=="function"&&n.prototype||r;return t===i}return tt=e,tt}var rt,en;function ma(){if(en)return rt;en=1;var r=ba(),e=Kn(),t=$n();function n(i){return typeof i.constructor=="function"&&!t(i)?r(e(i)):{}}return rt=n,rt}var nt,tn;function U(){if(tn)return nt;tn=1;function r(e){return e!=null&&typeof e=="object"}return nt=r,nt}var it,rn;function Aa(){if(rn)return it;rn=1;var r=K(),e=U(),t="[object Arguments]";function n(i){return e(i)&&r(i)==t}return it=n,it}var at,nn;function Jn(){if(nn)return at;nn=1;var r=Aa(),e=U(),t=Object.prototype,n=t.hasOwnProperty,i=t.propertyIsEnumerable,a=r(function(){return arguments}())?r:function(o){return e(o)&&n.call(o,"callee")&&!i.call(o,"callee")};return at=a,at}var ot,an;function Zn(){if(an)return ot;an=1;var r=Array.isArray;return ot=r,ot}var st,on;function Xn(){if(on)return st;on=1;var r=9007199254740991;function e(t){return typeof t=="number"&&t>-1&&t%1==0&&t<=r}return st=e,st}var ct,sn;function Ht(){if(sn)return ct;sn=1;var r=Bt(),e=Xn();function t(n){return n!=null&&e(n.length)&&!r(n)}return ct=t,ct}var ut,cn;function Ca(){if(cn)return ut;cn=1;var r=Ht(),e=U();function t(n){return e(n)&&r(n)}return ut=t,ut}var G={exports:{}},ft,un;function Ea(){if(un)return ft;un=1;function r(){return!1}return ft=r,ft}G.exports;var fn;function Yn(){return fn||(fn=1,function(r,e){var t=x(),n=Ea(),i=e&&!e.nodeType&&e,a=i&&!0&&r&&!r.nodeType&&r,o=a&&a.exports===i,s=o?t.Buffer:void 0,c=s?s.isBuffer:void 0,u=c||n;r.exports=u}(G,G.exports)),G.exports}var dt,dn;function qa(){if(dn)return dt;dn=1;var r=K(),e=Kn(),t=U(),n="[object Object]",i=Function.prototype,a=Object.prototype,o=i.toString,s=a.hasOwnProperty,c=o.call(Object);function u(f){if(!t(f)||r(f)!=n)return!1;var d=e(f);if(d===null)return!0;var v=s.call(d,"constructor")&&d.constructor;return typeof v=="function"&&v instanceof v&&o.call(v)==c}return dt=u,dt}var lt,ln;function Ta(){if(ln)return lt;ln=1;var r=K(),e=Xn(),t=U(),n="[object Arguments]",i="[object Array]",a="[object Boolean]",o="[object Date]",s="[object Error]",c="[object Function]",u="[object Map]",f="[object Number]",d="[object Object]",v="[object RegExp]",m="[object Set]",E="[object String]",q="[object WeakMap]",T="[object ArrayBuffer]",R="[object DataView]",g="[object Float32Array]",Y="[object Float64Array]",Q="[object Int8Array]",M="[object Int16Array]",S="[object Int32Array]",C="[object Uint8Array]",b="[object Uint8ClampedArray]",F="[object Uint16Array]",y="[object Uint32Array]",l={};l[g]=l[Y]=l[Q]=l[M]=l[S]=l[C]=l[b]=l[F]=l[y]=!0,l[n]=l[i]=l[T]=l[a]=l[R]=l[o]=l[s]=l[c]=l[u]=l[f]=l[d]=l[v]=l[m]=l[E]=l[q]=!1;function P(w){return t(w)&&e(w.length)&&!!l[r(w)]}return lt=P,lt}var ht,hn;function Sa(){if(hn)return ht;hn=1;function r(e){return function(t){return e(t)}}return ht=r,ht}var k={exports:{}};k.exports;var pn;function wa(){return pn||(pn=1,function(r,e){var t=Fn(),n=e&&!e.nodeType&&e,i=n&&!0&&r&&!r.nodeType&&r,a=i&&i.exports===n,o=a&&t.process,s=function(){try{var c=i&&i.require&&i.require("util").types;return c||o&&o.binding&&o.binding("util")}catch{}}();r.exports=s}(k,k.exports)),k.exports}var pt,vn;function Qn(){if(vn)return pt;vn=1;var r=Ta(),e=Sa(),t=wa(),n=t&&t.isTypedArray,i=n?e(n):r;return pt=i,pt}var vt,_n;function Wn(){if(_n)return vt;_n=1;function r(e,t){if(!(t==="constructor"&&typeof e[t]=="function")&&t!="__proto__")return e[t]}return vt=r,vt}var _t,gn;function Oa(){if(gn)return _t;gn=1;var r=zt(),e=N(),t=Object.prototype,n=t.hasOwnProperty;function i(a,o,s){var c=a[o];(!(n.call(a,o)&&e(c,s))||s===void 0&&!(o in a))&&r(a,o,s)}return _t=i,_t}var gt,bn;function ja(){if(bn)return gt;bn=1;var r=Oa(),e=zt();function t(n,i,a,o){var s=!a;a||(a={});for(var c=-1,u=i.length;++c<u;){var f=i[c],d=o?o(a[f],n[f],f,a,n):void 0;d===void 0&&(d=n[f]),s?e(a,f,d):r(a,f,d)}return a}return gt=t,gt}var bt,yn;function Ra(){if(yn)return bt;yn=1;function r(e,t){for(var n=-1,i=Array(e);++n<e;)i[n]=t(n);return i}return bt=r,bt}var yt,mn;function ei(){if(mn)return yt;mn=1;var r=9007199254740991,e=/^(?:0|[1-9]\d*)$/;function t(n,i){var a=typeof n;return i=i??r,!!i&&(a=="number"||a!="symbol"&&e.test(n))&&n>-1&&n%1==0&&n<i}return yt=t,yt}var mt,An;function Ia(){if(An)return mt;An=1;var r=Ra(),e=Jn(),t=Zn(),n=Yn(),i=ei(),a=Qn(),o=Object.prototype,s=o.hasOwnProperty;function c(u,f){var d=t(u),v=!d&&e(u),m=!d&&!v&&n(u),E=!d&&!v&&!m&&a(u),q=d||v||m||E,T=q?r(u.length,String):[],R=T.length;for(var g in u)(f||s.call(u,g))&&!(q&&(g=="length"||m&&(g=="offset"||g=="parent")||E&&(g=="buffer"||g=="byteLength"||g=="byteOffset")||i(g,R)))&&T.push(g);return T}return mt=c,mt}var At,Cn;function xa(){if(Cn)return At;Cn=1;function r(e){var t=[];if(e!=null)for(var n in Object(e))t.push(n);return t}return At=r,At}var Ct,En;function Ma(){if(En)return Ct;En=1;var r=j(),e=$n(),t=xa(),n=Object.prototype,i=n.hasOwnProperty;function a(o){if(!r(o))return t(o);var s=e(o),c=[];for(var u in o)u=="constructor"&&(s||!i.call(o,u))||c.push(u);return c}return Ct=a,Ct}var Et,qn;function ti(){if(qn)return Et;qn=1;var r=Ia(),e=Ma(),t=Ht();function n(i){return t(i)?r(i,!0):e(i)}return Et=n,Et}var qt,Tn;function Pa(){if(Tn)return qt;Tn=1;var r=ja(),e=ti();function t(n){return r(n,e(n))}return qt=t,qt}var Tt,Sn;function La(){if(Sn)return Tt;Sn=1;var r=Hn(),e=ha(),t=_a(),n=ga(),i=ma(),a=Jn(),o=Zn(),s=Ca(),c=Yn(),u=Bt(),f=j(),d=qa(),v=Qn(),m=Wn(),E=Pa();function q(T,R,g,Y,Q,M,S){var C=m(T,g),b=m(R,g),F=S.get(b);if(F){r(T,g,F);return}var y=M?M(C,b,g+"",T,R,S):void 0,l=y===void 0;if(l){var P=o(b),w=!P&&c(b),Zt=!P&&!w&&v(b);y=b,P||w||Zt?o(C)?y=C:s(C)?y=n(C):w?(l=!1,y=e(b,!0)):Zt?(l=!1,y=t(b,!0)):y=[]:d(b)||a(b)?(y=C,a(C)?y=E(C):(!f(C)||u(C))&&(y=i(b))):l=!1}l&&(S.set(b,y),Q(y,b,Y,M,S),S.delete(b)),r(T,g,y)}return Tt=q,Tt}var St,wn;function Da(){if(wn)return St;wn=1;var r=fa(),e=Hn(),t=la(),n=La(),i=j(),a=ti(),o=Wn();function s(c,u,f,d,v){c!==u&&t(u,function(m,E){if(v||(v=new r),i(m))n(c,u,E,f,s,d,v);else{var q=d?d(o(c,E),m,E+"",c,u,v):void 0;q===void 0&&(q=m),e(c,E,q)}},a)}return St=s,St}var wt,On;function ri(){if(On)return wt;On=1;function r(e){return e}return wt=r,wt}var Ot,jn;function Ga(){if(jn)return Ot;jn=1;function r(e,t,n){switch(n.length){case 0:return e.call(t);case 1:return e.call(t,n[0]);case 2:return e.call(t,n[0],n[1]);case 3:return e.call(t,n[0],n[1],n[2])}return e.apply(t,n)}return Ot=r,Ot}var jt,Rn;function ka(){if(Rn)return jt;Rn=1;var r=Ga(),e=Math.max;function t(n,i,a){return i=e(i===void 0?n.length-1:i,0),function(){for(var o=arguments,s=-1,c=e(o.length-i,0),u=Array(c);++s<c;)u[s]=o[i+s];s=-1;for(var f=Array(i+1);++s<i;)f[s]=o[s];return f[i]=a(u),r(n,this,f)}}return jt=t,jt}var Rt,In;function Va(){if(In)return Rt;In=1;function r(e){return function(){return e}}return Rt=r,Rt}var It,xn;function Ua(){if(xn)return It;xn=1;var r=Va(),e=zn(),t=ri(),n=e?function(i,a){return e(i,"toString",{configurable:!0,enumerable:!1,value:r(a),writable:!0})}:t;return It=n,It}var xt,Mn;function Fa(){if(Mn)return xt;Mn=1;var r=800,e=16,t=Date.now;function n(i){var a=0,o=0;return function(){var s=t(),c=e-(s-o);if(o=s,c>0){if(++a>=r)return arguments[0]}else a=0;return i.apply(void 0,arguments)}}return xt=n,xt}var Mt,Pn;function Ba(){if(Pn)return Mt;Pn=1;var r=Ua(),e=Fa(),t=e(r);return Mt=t,Mt}var Pt,Ln;function Na(){if(Ln)return Pt;Ln=1;var r=ri(),e=ka(),t=Ba();function n(i,a){return t(e(i,a,r),i+"")}return Pt=n,Pt}var Lt,Dn;function za(){if(Dn)return Lt;Dn=1;var r=N(),e=Ht(),t=ei(),n=j();function i(a,o,s){if(!n(s))return!1;var c=typeof o;return(c=="number"?e(s)&&t(o,s.length):c=="string"&&o in s)?r(s[o],a):!1}return Lt=i,Lt}var Dt,Gn;function Ha(){if(Gn)return Dt;Gn=1;var r=Na(),e=za();function t(n){return r(function(i,a){var o=-1,s=a.length,c=s>1?a[s-1]:void 0,u=s>2?a[2]:void 0;for(c=n.length>3&&typeof c=="function"?(s--,c):void 0,u&&e(a[0],a[1],u)&&(c=s<3?void 0:c,s=1),i=Object(i);++o<s;){var f=a[o];f&&n(i,f,o,c)}return i})}return Dt=t,Dt}var Gt,kn;function Ka(){if(kn)return Gt;kn=1;var r=Da(),e=Ha(),t=e(function(n,i,a){r(n,i,a)});return Gt=t,Gt}var $a=Ka();const Ja=Mi($a),Za=["position","rotation","scale","target"],Xa=r=>typeof r=="object"&&r!==null&&typeof r.x=="number"&&typeof r.y=="number"&&typeof r.z=="number",ni=r=>{const e={...r};return Za.forEach(t=>{const n=e[t];Xa(n)&&(e[t]={x:n.x,y:n.y,z:n.z})}),e};class Ya{constructor(){_(this,"_entities",new Map)}get size(){return this._entities.size}read(e){return e===void 0?Array.from(this._entities.values()):this._entities.get(e)}write(e,t){const n=this._entities.get(e);n&&Ja(n.schema,ni(t))}register(e,t,n){this._entities.set(e.id,{schema:e,node:t,unwatch:n})}unregister(e){var n;const t=this._entities.get(e);return t?((n=t.unwatch)==null||n.call(t),this._entities.delete(e)):!1}clear(){this._entities.forEach(e=>{var t;return(t=e.unwatch)==null?void 0:t.call(e)}),this._entities.clear()}}function ii(r){return r.entityType==="group"}function ai(r){return r.entityType==="light"}function Kt(r){return r.entityType==="model"}function Z(r){return r.entityType==="camera"}function oi(r){return r.entityType==="primitive"}const Qa=new Ft.Vector3,Vt=r=>{var t;const e=r.parent;!e||!("isDIVENode"in e)||(t=e.getComponent(A.MultiLineComponent))==null||t.setLineFor(r,Qa,r.position)};class si{constructor(e){_(this,"_engine");_(this,"_entities",new Map);this._engine=e}get root(){return this._engine.scene.root}findEntity(e){return this._entities.get(e.id)}createEntity(e){const t=this.findEntity(e);if(t)return console.warn(`EngineGateway.createEntity: Scene object with id ${e.id} already exists`),t;if(Z(e))return;const n=this._instantiate(e);return n.name=e.name,n.userData.id=e.id,this._entities.set(e.id,n),this.root.add(n),n}async applyEntity(e,t){await this._apply(e,t)}async updateEntity(e){const t=this.findEntity(e);if(!t){console.warn(`EngineGateway.updateEntity: Scene object with id ${e.id} does not exist`);return}await this._apply(t,e)}removeEntity(e){const t=this.findEntity(e);if(!t){console.warn(`EngineGateway.removeEntity: Object with id ${e.id} not found`);return}if(this._entities.delete(e.id),L.detachTransformControls(t),"isDIVENode"in t){const n=t.nodes;for(let i=n.length-1;i>=0;i--)this.root.attach(n[i])}A.disposeComponents(t),t.removeFromParent()}dispose(){this._entities.clear()}readSceneSettings(){const e=this._engine.scene;return{name:e.name,backgroundColor:"#"+e.background.getHexString(),gridEnabled:e.grid.visible,floorEnabled:e.root.floor.visible,floorColor:"#"+e.root.floor.material.color.getHexString()}}applySceneSettings(e){const t=this._engine.scene;e.name!==void 0&&(t.name=e.name),e.backgroundColor!==void 0&&t.setBackground(e.backgroundColor),e.gridEnabled!==void 0&&t.grid.setVisibility(e.gridEnabled),e.floorEnabled!==void 0&&t.root.floor.setVisibility(e.floorEnabled),e.floorColor!==void 0&&t.root.floor.setColor(e.floorColor)}startRendering(){return this._engine.startAsync()}registerTicker(e){this._engine.clock.hasTicker(e)||this._engine.clock.addTicker(e)}_instantiate(e){if(Kt(e)){const t=new A.DIVENode;return t.name="DIVEModel",t.userData.isDIVEModel=!0,t.addComponent(new kt.ModelComponent),t}if(oi(e)){const t=new A.DIVENode;return t.name="DIVEPrimitive",t.addComponent(new L.PrimitiveComponent),t}if(ii(e)){const t=new A.DIVENode;t.name="DIVEGroup";const n=t.addComponent(new A.MultiLineComponent);return t.addEventListener("childremoved",i=>n.removeLineFor(i.child)),t}if(ai(e))return this._instantiateLight(e);throw new Error(`EngineGateway.addEntity: Unknown entity type: ${e.entityType}`)}_instantiateLight(e){const t=new A.DIVENode;switch(t.name="DIVELight",e.type){case"scene":t.addComponent(new A.HemisphereLightComponent),t.addComponent(new A.DirectionalLightComponent);break;case"ambient":t.addComponent(new L.AmbientLightComponent);break;case"point":t.addComponent(new L.PointLightComponent);break;default:throw new Error(`EngineGateway.addEntity: Unknown light type: ${e.type}`)}return t}async _apply(e,t){if(t.entityType==="camera")return;const n=e;switch(t.entityType){case"light":this._applyLight(n,t);break;case"model":await this._applyModel(n,t);break;case"primitive":this._applyPrimitive(n,t);break;case"group":this._applyGroup(n,t);break;default:throw new Error(`EngineGateway.updateEntity: Unknown entity type: ${t.entityType}`)}t.name!==void 0&&(n.name=t.name),n.applyTransform(t),t.visible!==void 0&&n.setVisibility(t.visible),t.parentId!==void 0&&this._setParent({...t,parentId:t.parentId}),Vt(n)}_applyLight(e,t){e.getComponents(A.DIVELightComponent).forEach(i=>{t.intensity!==void 0&&i.setIntensity(t.intensity),t.enabled!==void 0&&i.setEnabled(t.enabled),t.color!==void 0&&i.setColor(new Ft.Color(t.color))})}async _applyModel(e,t){t.uri!==void 0&&t.uri!==e.userData.uri&&(await e.requireComponent(kt.ModelComponent).setFromURL(t.uri),e.userData.uri=t.uri),t.material!==void 0&&t.material!==null&&e.requireComponent(A.MeshComponent).setMaterial(t.material)}_applyPrimitive(e,t){t.geometry!==void 0&&t.geometry!==null&&e.requireComponent(L.PrimitiveComponent).setGeometry(t.geometry),t.material!==void 0&&t.material!==null&&e.requireComponent(A.MeshComponent).setMaterial(t.material)}_applyGroup(e,t){t.linksVisible!==void 0&&e.requireComponent(A.MultiLineComponent).setVisible(t.linksVisible)}_setParent(e){const t=this.findEntity(e);if(!t){console.warn(`EngineGateway._setParent: ${e.id} is not in the scene`);return}if(e.parentId===null){this.root.attach(t);return}const n=this.findEntity({id:e.parentId,entityType:e.entityType});if(!n){console.warn(`EngineGateway._setParent: Parent with id ${e.parentId} is not in the scene, ${e.id} stays at the root`);return}n.attach(t),Vt(t)}}class h{constructor(e,t){_(this,"_payload");_(this,"_dependencies");this._payload=e,this._dependencies=t}static define({description:e,execute:t}){return class extends h{constructor(i,a){super(i,a);_(this,"_description",e);_(this,"_payload");this._payload=i}execute(){return t(this._payload,this._dependencies)}}}}const ci=h.define({description:"Launches AR mode in native capabilities. (iOS: AR Quick Look, Android: Google Scene Viewer)",execute:async(r,{getARSystem:e})=>e().then(t=>{t.launch(r.uri,r.options)})});p("LAUNCH_AR",ci);const ui=h.define({description:"Calculates the camera position and target to view the whole scene. (experimental).",execute:(r,{gateway:e,controller:t})=>{const n=A.computeProductBounds(e.root).getBoundingSphere(new Ft.Sphere);return t.computeEncompassingView(n)}});p("COMPUTE_ENCOMPASSING_VIEW",ui);const fi=h.define({description:"Gets the current camera position and target.",execute:(r,{controller:e})=>({position:e.object.owner.position.clone(),target:e.target.clone()})});p("GET_CAMERA_TRANSFORM",fi);const di=h.define({description:"Moves the camera to a new position and target.",execute:async(r,{controller:e,registry:t,getAnimationSystem:n,gateway:i})=>{var u;const a=await n();let o={x:0,y:0,z:0},s={x:0,y:0,z:0};if("id"in r){const f=(u=t.read(r.id))==null?void 0:u.schema;if(!f)throw new Error(`CAMERA with id ${r.id} not registered.`);if(!Z(f))throw new Error(`Object with id ${r.id} is not a CAMERA. Object: ${f}`);o=f.position,s=f.target}else o=r.position,s=r.target;i.registerTicker(a),e.enabled=!0;const c=await a.fromTargets([{object:e.object.owner.position,to:o},{object:e.target,to:s}],r.duration,{easing:a.Easing.Quadratic.Out,onUpdate:()=>{e.object.lookAt(e.target)},onComplete:()=>{e.enabled=!r.locked}});return c.play(),{stop:()=>c.stop()}}});p("MOVE_CAMERA",di);const li=h.define({description:"Sets the camera layer to a certain layer.",execute:(r,{controller:e})=>{e.object.setCameraLayer(r.layer)}});p("SET_CAMERA_LAYER",li);const $t=h.define({description:"Sets the camera position and target.",execute:(r,{controller:e})=>{e.object.owner.position.copy(r.position),e.target.copy(r.target),e.update()}});p("SET_CAMERA_TRANSFORM",$t);const hi=h.define({description:"Zooms the camera in or out by a certain amount.",execute:(r,{controller:e})=>{r.direction==="IN"&&e.zoomIn(r.by),r.direction==="OUT"&&e.zoomOut(r.by)}});p("ZOOM_CAMERA",hi);const pi=h.define({description:"Generates a screenshot, stores it in a Blob and returns a Promise of a valid URI.",execute:async(r,{getMediaCreator:e,registry:t})=>{var i;const n=await e();if("id"in r){const a=(i=t.read(r.id))==null?void 0:i.schema;if(!a)throw new Error(`Object with id ${r.id} not registered.`);if(!Z(a))throw new Error(`Object with id ${r.id} is not a CAMERA. Object: ${a}`);const{resolution:o}=r,{position:s,target:c}=a;return n.generateMedia({position:s,target:c,resolution:o})}return n.generateMedia(r)}});p("GENERATE_MEDIA",pi);const Wa=(r,e,{registry:t,dispatch:n})=>{const{id:i,entityType:a}=e,o=d=>{const v=ni({id:i,entityType:a,position:d.position,rotation:d.rotation,scale:d.scale});t.write(i,v),Vt(r),n("UPDATE_OBJECT",v)},s=()=>{n("SELECT_OBJECT",{id:i,entityType:a})},c=()=>{n("DESELECT_OBJECT",{id:i,entityType:a})},u=()=>{t.write(i,{id:i,entityType:a,loaded:!0}),n("MODEL_LOADED",{id:i})};r.addEventListener("object-transform",o),r.addEventListener("object-select",s),r.addEventListener("object-deselect",c);const f=r.getComponent(kt.ModelComponent);return f==null||f.addEventListener("object-load",u),()=>{r.removeEventListener("object-transform",o),r.removeEventListener("object-select",s),r.removeEventListener("object-deselect",c),f==null||f.removeEventListener("object-load",u)}},O=h.define({description:"Adds an object to the scene.",execute:async(r,{gateway:e,registry:t,dispatch:n})=>{const i=t.read(r.id);if(i)return i.node;r.parentId===void 0&&(r.parentId=null);const a=e.createEntity(r);if(!a){t.register(r);return}t.register(r,a,Wa(a,r,{registry:t,dispatch:n}));try{await e.applyEntity(a,r)}catch(o){throw t.unregister(r.id),e.removeEntity(r),o}return a}});p("ADD_OBJECT",O);const V=h.define({description:"Updates an existing object.",execute:async(r,{gateway:e,registry:t})=>{var i;const n=(i=t.read(r.id))==null?void 0:i.schema;if(!n)throw new Error("Object not found.");t.write(r.id,r),await e.updateEntity({...r,id:n.id,entityType:n.entityType})}});p("UPDATE_OBJECT",V);const X=h.define({description:"Attach an object to another object.",execute:(r,{gateway:e,registry:t})=>{const n=t.read(r.object.id);if(!n)throw new Error("Object not found.");const i=n.schema,a=n.node;if(!a)throw new Error("Object is not in the scene.");if(r.parent===null){e.root.attach(a),new V({id:i.id,parentId:null},{gateway:e,registry:t}).execute();return}if(r.object.id===r.parent.id){console.warn("Cannot attach object to itself.");return}const o=t.read(r.parent.id);if(!o){console.warn("Parent object not found.");return}const s=o.schema,c=o.node;if(!c){console.warn("Parent object is not in the scene.");return}c.attach(a),new V({id:i.id,parentId:s.id},{gateway:e,registry:t}).execute()}});p("SET_PARENT",X);const Jt=h.define({description:"Deletes an object from the scene.",execute:(r,{gateway:e,registry:t})=>{var i;const n=(i=t.read(r.id))==null?void 0:i.schema;if(!n)return!1;n.parentId&&new X({object:{id:n.id},parent:null},{gateway:e,registry:t}).execute(),n.entityType==="group"&&t.read().forEach(({schema:a})=>{a.parentId===n.id&&new V({id:a.id,parentId:null},{gateway:e,registry:t}).execute()}),Object.assign(r,n),t.unregister(r.id),e.removeEntity(n)}});p("DELETE_OBJECT",Jt);const vi=h.define({description:"Deselects an existing object.",execute:async(r,{getToolbox:e,registry:t})=>{const n=t.read(r.id);if(!n)throw new Error("Object not found.");const i=n.node;if(!i)throw new Error("Object is not in the scene.");if(!("isSelectable"in i))throw new Error("Object is not selectable.");(await e()).selectionState.applyDeselection()}});p("DESELECT_OBJECT",vi);const _i=h.define({description:"Places an object on top of an underlying object or the floor.",execute:(r,{registry:e})=>{const t=e.read(r.id);if(!t)throw new Error(`Object with id ${r.id} not registered.`);const n=t.node;if(!n)throw new Error(`Object with id ${r.id} is not in the scene.`);n.dropIt()}});p("DROP_IT",_i);const gi=h.define({description:"Retrieves all objects in the state.",execute:(r,{registry:e})=>new Map(e.read().map(({schema:t})=>[t.id,t]))});p("GET_ALL_OBJECTS",gi);const bi=h.define({description:"Returns a list of objects of given IDs.",execute:(r,{registry:e})=>r.ids.map(t=>{var n;return(n=e.read(t))==null?void 0:n.schema}).filter(t=>t!==void 0)});p("GET_OBJECTS",bi);const yi=h.define({description:"Is triggered when a model is loaded.",execute:(r,{registry:e})=>{var n;const t=(n=e.read(r.id))==null?void 0:n.schema;if(!t)throw new Error(`Model with id ${r.id} not found`);if(!Kt(t))throw new Error(`Model with id ${r.id} is not a ModelSchema`);t.loaded=!0}});p("MODEL_LOADED",yi);const mi=h.define({description:"Selects an existing object.",execute:async(r,{getToolbox:e,registry:t})=>{const n=t.read(r.id);if(!n)throw new Error("Object not found.");const i=n.node;if(!i)throw new Error("Object is not in the scene.");if(!("isSelectable"in i))throw new Error("Object is not selectable.");(await e()).selectionState.applySelection(i)}});p("SELECT_OBJECT",mi);const Ai=h.define({description:"Starts the render process.",execute:async(r,{gateway:e})=>e.startRendering()});p("START_RENDER",Ai);const Ci=h.define({description:"Exports the current scene to a blob and returns the URL.",execute:async(r,{gateway:e,getAssetExporter:t})=>t().then(n=>n.export(e.root,r.type))});p("EXPORT_SCENE",Ci);const Ei=h.define({description:"Set the background color of the scene.",execute:(r,{gateway:e})=>{e.applySceneSettings({backgroundColor:r.color})}});p("SET_BACKGROUND",Ei);const qi=h.define({description:"Updates scene properties.",execute:(r,{gateway:e})=>{e.applySceneSettings(r),Object.assign(r,e.readSceneSettings())}});p("UPDATE_SCENE",qi);const Ti=h.define({description:"Retrieves complete state data.",execute:(r,{controller:e,gateway:t,registry:n})=>{const i=t.readSceneSettings();return{name:i.name,mediaItem:null,backgroundColor:i.backgroundColor,floorEnabled:i.floorEnabled,floorColor:i.floorColor,userCamera:{position:e.object.owner.position.clone(),target:e.target.clone()},spotmarks:[],lights:n.read().map(a=>a.schema).filter(a=>a.entityType==="light"),objects:n.read().map(a=>a.schema).filter(a=>a.entityType==="model"),cameras:n.read().map(a=>a.schema).filter(a=>a.entityType==="camera"),primitives:n.read().map(a=>a.schema).filter(a=>a.entityType==="primitive"),groups:n.read().map(a=>a.schema).filter(a=>a.entityType==="group")}}});p("GET_STATE",Ti);const Si=h.define({description:"Applies complete state data to current dive instance.",execute:async(r,{gateway:e,controller:t,registry:n,dispatch:i})=>{n.read().forEach(({schema:u})=>{new Jt({id:u.id,entityType:u.entityType},{gateway:e,registry:n}).execute()}),e.applySceneSettings(r),r.userCamera!==void 0&&new $t({position:r.userCamera.position,target:r.userCamera.target},{controller:t}).execute();const a=[],o=[],s=[],c=[];r.groups!==void 0&&r.groups.forEach(u=>{const f={...u,locked:u.locked??!1,visible:u.visible??!0,entityType:"group"};c.push(new O({...f,parentId:null},{gateway:e,registry:n,dispatch:i}).execute().then(d=>{o.push(f),d!==void 0&&a.push(d)}).catch(d=>{s.push({entity:f,reason:d})}))}),r.lights!==void 0&&r.lights.forEach(u=>{const f={...u,locked:u.locked??!1,visible:u.visible??!0,entityType:"light"};c.push(new O({...f,parentId:null},{gateway:e,registry:n,dispatch:i}).execute().then(d=>{o.push(f),d!==void 0&&a.push(d)}).catch(d=>{s.push({entity:f,reason:d})}))}),r.cameras!==void 0&&r.cameras.forEach(u=>{const f={...u,locked:u.locked??!1,visible:u.visible??!0,entityType:"camera"};c.push(new O({...f,parentId:null},{gateway:e,registry:n,dispatch:i}).execute().then(d=>{o.push(f),d!==void 0&&a.push(d)}).catch(d=>{s.push({entity:f,reason:d})}))}),r.primitives!==void 0&&r.primitives.forEach(u=>{const f={...u,locked:u.locked??!1,visible:u.visible??!0,entityType:"primitive"};c.push(new O({...f,parentId:null},{gateway:e,registry:n,dispatch:i}).execute().then(d=>{o.push(f),d!==void 0&&a.push(d)}).catch(d=>{s.push({entity:f,reason:d})}))}),r.objects!==void 0&&r.objects.forEach(u=>{const f={...u,locked:u.locked??!1,visible:u.visible??!0,entityType:"model"};c.push(new O({...f,parentId:null},{gateway:e,registry:n,dispatch:i}).execute().then(d=>{o.push(f),d!==void 0&&a.push(d)}).catch(d=>{s.push({entity:f,reason:d})}))}),r.spotmarks!==void 0&&console.warn("SET_STATE: Spotmarks are not supported yet and will be ignored."),await Promise.all(c);for(const u of o)if(u.parentId)try{await new X({object:{id:u.id},parent:{id:u.parentId}},{gateway:e,registry:n}).execute()}catch(f){s.push({entity:u,reason:f})}return s.length>0&&console.warn(`SET_STATE: ${s.length} of ${c.length} entities could not be applied.`,s),a}});p("SET_STATE",Si);const wi=h.define({description:"Sets the gizmo's mode.",execute:async(r,{getToolbox:e})=>{(await e()).getTool("transform").setGizmoMode(r.mode)}});p("SET_GIZMO_MODE",wi);const Oi=h.define({description:"Sets the gizmo's unified scale mode.",execute:async(r,{getToolbox:e})=>{(await e()).getTool("transform").setGizmoScaleLinked(r)}});p("SET_GIZMO_SCALE_LINKED",Oi);const ji=h.define({description:"Sets the gizmo's visibility.",execute:async(r,{getToolbox:e})=>{(await e()).getTool("transform").setGizmoVisible(r)}});p("SET_GIZMO_VISIBILITY",ji);const Ri=h.define({description:"Activates a specific tool from the toolbox.",execute:async(r,{getToolbox:e})=>{(await e()).enableTool(r.tool)}});p("USE_TOOL",Ri);const I=class I{constructor(e,t){_(this,"engine");_(this,"controller");_(this,"gateway");_(this,"_mediaCreator");_(this,"_arSystem");_(this,"_assetExplorer");_(this,"_animationSystem");_(this,"_toolbox");_(this,"registry",new Ya);_(this,"listeners",new Map);this.engine=e,this.controller=t,this.gateway=new si(e),I.__instances.push(this)}getMediaCreator(){return this._mediaCreator??(this._mediaCreator=Promise.resolve().then(()=>require("../mediacreator/index.cjs")).then(e=>new e.MediaCreator(this.engine.mainView.renderer,this.engine.scene,this.controller))),this._mediaCreator}getARSystem(){return this._arSystem??(this._arSystem=Promise.resolve().then(()=>require("../ar/index.cjs")).then(e=>new e.ARSystem)),this._arSystem}getAssetExporter(){return this._assetExplorer??(this._assetExplorer=Promise.resolve().then(()=>require("../assetexporter/index.cjs")).then(e=>new e.AssetExporter)),this._assetExplorer}getAnimationSystem(){return this._animationSystem??(this._animationSystem=Promise.resolve().then(()=>require("../animation/index.cjs")).then(e=>new e.AnimationSystem)),this._animationSystem}getToolbox(){return this._toolbox??(this._toolbox=Promise.resolve().then(()=>require("../toolbox/index.cjs")).then(e=>new e.Toolbox(this.engine.scene,this.controller))),this._toolbox}destroyInstance(){var t,n;const e=I.__instances.indexOf(this);return e===-1?!1:(I.__instances.splice(e,1),this.registry.clear(),this.listeners.clear(),(t=this._toolbox)==null||t.then(i=>i.dispose()),(n=this._animationSystem)==null||n.then(i=>i.dispose()),this.gateway.dispose(),!0)}performAction(e,...t){const n=Un(e);if(!n)throw new Error(`Action ${e} is not defined.`);const i=this.getDependencies(),a=t[0],o=new n(a,i);try{const s=o.execute();return s&&typeof s=="object"&&"then"in s?s.then(c=>(this.dispatch(e,a),c)).catch(c=>{throw new Error(`Failed to execute ${e}`,{cause:c})}):(this.dispatch(e,a),s)}catch(s){throw new Error(`Failed to execute ${e}`,{cause:s})}}subscribe(e,t){return this.listeners.get(e)||this.listeners.set(e,[]),this.listeners.get(e).push(t),()=>{const n=this.listeners.get(e);if(!n)return;const i=n.findIndex(a=>a===t);i!==-1&&n.splice(i,1)}}dispatch(e,t){const n=this.listeners.get(e);n&&n.forEach(i=>i(t))}getDependencies(){return{registry:this.registry,dispatch:(e,t)=>this.dispatch(e,t),gateway:this.gateway,controller:this.controller,getARSystem:()=>this.getARSystem(),getAssetExporter:()=>this.getAssetExporter(),getAnimationSystem:()=>this.getAnimationSystem(),getMediaCreator:()=>this.getMediaCreator(),getToolbox:()=>this.getToolbox()}}};_(I,"__instances",[]);let Ut=I;exports.AddObjectAction=O;exports.ComputeEncompassingViewAction=ui;exports.DeleteObjectAction=Jt;exports.DeselectObjectAction=vi;exports.DropItAction=_i;exports.EngineGateway=si;exports.ExportSceneAction=Ci;exports.GenerateMediaAction=pi;exports.GetAllObjectsAction=gi;exports.GetCameraTransformAction=fi;exports.GetObjectsAction=bi;exports.GetStateAction=Ti;exports.LaunchARAction=ci;exports.ModelLoadedAction=yi;exports.MoveCameraAction=di;exports.SelectObjectAction=mi;exports.SetBackgroundAction=Ei;exports.SetCameraLayerAction=li;exports.SetCameraTransformAction=$t;exports.SetGizmoModeAction=wi;exports.SetGizmoScaleLinkedAction=Oi;exports.SetGizmoVisibleAction=ji;exports.SetParentAction=X;exports.SetStateAction=Si;exports.StartRenderAction=Ai;exports.State=Ut;exports.UpdateObjectAction=V;exports.UpdateSceneAction=qi;exports.UseToolAction=Ri;exports.ZoomCameraAction=hi;exports.getActionClass=Un;exports.isCameraSchema=Z;exports.isGroupSchema=ii;exports.isLightSchema=ai;exports.isModelSchema=Kt;exports.isPrimitiveSchema=oi;exports.registerAction=p;