blacktrigram 0.7.44 → 0.7.45

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 (746) hide show
  1. package/lib/audio/AudioManager.d.ts +26 -0
  2. package/lib/audio/AudioManager.d.ts.map +1 -1
  3. package/lib/audio/AudioManager.js +26 -0
  4. package/lib/audio/AudioManager.js.map +1 -1
  5. package/lib/audio/index.d.ts.map +1 -1
  6. package/lib/audio/index.js.map +1 -1
  7. package/lib/audio/types.d.ts +18 -2
  8. package/lib/audio/types.d.ts.map +1 -1
  9. package/lib/audio/types.js +1 -0
  10. package/lib/audio/types.js.map +1 -1
  11. package/lib/components/effects/WindParticles3D.d.ts.map +1 -1
  12. package/lib/components/index.d.ts.map +1 -1
  13. package/lib/components/index.js.map +1 -1
  14. package/lib/components/screens/combat/CombatScreen3D.d.ts.map +1 -1
  15. package/lib/components/screens/combat/CombatScreen3D.js.map +1 -1
  16. package/lib/components/screens/combat/components/controls/KeyboardHints.d.ts +0 -1
  17. package/lib/components/screens/combat/components/controls/KeyboardHints.d.ts.map +1 -1
  18. package/lib/components/screens/combat/components/controls/KeyboardHints.js +0 -1
  19. package/lib/components/screens/combat/components/controls/KeyboardHints.js.map +1 -1
  20. package/lib/components/screens/combat/components/controls/PauseMenu.d.ts.map +1 -1
  21. package/lib/components/screens/combat/components/controls/PauseMenu.js.map +1 -1
  22. package/lib/components/screens/combat/components/effects/ArterialSpray3D.d.ts.map +1 -1
  23. package/lib/components/screens/combat/components/effects/BloodDecals3D.d.ts.map +1 -1
  24. package/lib/components/screens/combat/components/effects/BloodDecals3D.js.map +1 -1
  25. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.d.ts.map +1 -1
  26. package/lib/components/screens/combat/components/effects/BloodLossOverlayHtml.js.map +1 -1
  27. package/lib/components/screens/combat/components/effects/BloodParticles3D.d.ts.map +1 -1
  28. package/lib/components/screens/combat/components/effects/BloodParticles3D.js.map +1 -1
  29. package/lib/components/screens/combat/components/effects/BloodViscosity3D.d.ts.map +1 -1
  30. package/lib/components/screens/combat/components/effects/BloodViscosity3D.js.map +1 -1
  31. package/lib/components/screens/combat/components/effects/BoneCrackParticles3D.d.ts.map +1 -1
  32. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.d.ts.map +1 -1
  33. package/lib/components/screens/combat/components/effects/CombatParticleEffects3D.js.map +1 -1
  34. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.d.ts.map +1 -1
  35. package/lib/components/screens/combat/components/effects/ConsciousnessBlur.js.map +1 -1
  36. package/lib/components/screens/combat/components/effects/DustClouds3D.d.ts.map +1 -1
  37. package/lib/components/screens/combat/components/effects/EarthCrackEffect3D.d.ts.map +1 -1
  38. package/lib/components/screens/combat/components/effects/EarthHealingEffect3D.d.ts.map +1 -1
  39. package/lib/components/screens/combat/components/effects/ImpactSparks3D.d.ts.map +1 -1
  40. package/lib/components/screens/combat/components/effects/InternalDamage3D.d.ts.map +1 -1
  41. package/lib/components/screens/combat/components/effects/InternalDamage3D.js.map +1 -1
  42. package/lib/components/screens/combat/components/effects/LiPrecisionTargetingOverlay.d.ts.map +1 -1
  43. package/lib/components/screens/combat/components/effects/NerveStrikeParticles3D.d.ts.map +1 -1
  44. package/lib/components/screens/combat/components/effects/PainVignette.d.ts.map +1 -1
  45. package/lib/components/screens/combat/components/effects/PainVignette.js.map +1 -1
  46. package/lib/components/screens/combat/components/effects/ParticleAudio3D.d.ts.map +1 -1
  47. package/lib/components/screens/combat/components/effects/ParticleAudio3D.js.map +1 -1
  48. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.d.ts.map +1 -1
  49. package/lib/components/screens/combat/components/effects/TraumaOverlay3D.js.map +1 -1
  50. package/lib/components/screens/combat/components/effects/WaterRipple3D.d.ts.map +1 -1
  51. package/lib/components/screens/combat/components/effects/WaterWave3D.d.ts.map +1 -1
  52. package/lib/components/screens/combat/components/effects/index.d.ts.map +1 -1
  53. package/lib/components/screens/combat/components/feedback/MatchCountdown.d.ts.map +1 -1
  54. package/lib/components/screens/combat/components/feedback/MatchCountdown.js.map +1 -1
  55. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.d.ts.map +1 -1
  56. package/lib/components/screens/combat/components/feedback/RoundAnnouncementOverlayHtml.js.map +1 -1
  57. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.d.ts.map +1 -1
  58. package/lib/components/screens/combat/components/feedback/RoundStartAnnouncementOverlayHtml.js.map +1 -1
  59. package/lib/components/screens/combat/components/hud/CombatBottomHUD.d.ts.map +1 -1
  60. package/lib/components/screens/combat/components/hud/CombatBottomHUD.js.map +1 -1
  61. package/lib/components/screens/combat/components/hud/CombatLeftHUD.d.ts.map +1 -1
  62. package/lib/components/screens/combat/components/hud/CombatLeftHUD.js.map +1 -1
  63. package/lib/components/screens/combat/components/hud/CombatPortraitStatusStrip.d.ts.map +1 -1
  64. package/lib/components/screens/combat/components/hud/CombatPortraitStatusStrip.js.map +1 -1
  65. package/lib/components/screens/combat/components/hud/CombatRightHUD.d.ts.map +1 -1
  66. package/lib/components/screens/combat/components/hud/CombatRightHUD.js.map +1 -1
  67. package/lib/components/screens/combat/components/hud/CombatTopHUD.d.ts.map +1 -1
  68. package/lib/components/screens/combat/components/hud/CombatTopHUD.js.map +1 -1
  69. package/lib/components/screens/combat/components/hud/DifficultyIndicator.d.ts.map +1 -1
  70. package/lib/components/screens/combat/components/hud/DifficultyIndicator.js.map +1 -1
  71. package/lib/components/screens/combat/components/hud/FPSMonitor.d.ts.map +1 -1
  72. package/lib/components/screens/combat/components/hud/FPSMonitor.js.map +1 -1
  73. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.d.ts.map +1 -1
  74. package/lib/components/screens/combat/components/hud/PlayerStateOverlayHtml.js.map +1 -1
  75. package/lib/components/screens/combat/components/indicators/BalanceIndicator.d.ts.map +1 -1
  76. package/lib/components/screens/combat/components/indicators/BalanceIndicator.js.map +1 -1
  77. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.d.ts +0 -1
  78. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.d.ts.map +1 -1
  79. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.js +0 -1
  80. package/lib/components/screens/combat/components/indicators/InputBufferDisplay.js.map +1 -1
  81. package/lib/components/screens/combat/components/indicators/StaminaWarning.d.ts.map +1 -1
  82. package/lib/components/screens/combat/components/indicators/StaminaWarning.js.map +1 -1
  83. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.d.ts +0 -2
  84. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.d.ts.map +1 -1
  85. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.js +0 -1
  86. package/lib/components/screens/combat/components/indicators/TechniqueNameDisplay.js.map +1 -1
  87. package/lib/components/screens/combat/helpers/AnimationUpdater.d.ts.map +1 -1
  88. package/lib/components/screens/combat/helpers/AnimationUpdater.js.map +1 -1
  89. package/lib/components/screens/combat/helpers/combatHelpers.d.ts.map +1 -1
  90. package/lib/components/screens/combat/helpers/combatHelpers.js.map +1 -1
  91. package/lib/components/screens/combat/hooks/useAICombat.d.ts.map +1 -1
  92. package/lib/components/screens/combat/hooks/useAICombat.js.map +1 -1
  93. package/lib/components/screens/combat/hooks/useCombatActions.d.ts.map +1 -1
  94. package/lib/components/screens/combat/hooks/useCombatActions.js.map +1 -1
  95. package/lib/components/screens/combat/hooks/useCombatAttackMovement.d.ts.map +1 -1
  96. package/lib/components/screens/combat/hooks/useCombatAttackMovement.js.map +1 -1
  97. package/lib/components/screens/combat/hooks/useCombatAudio.d.ts.map +1 -1
  98. package/lib/components/screens/combat/hooks/useCombatAudio.js.map +1 -1
  99. package/lib/components/screens/combat/hooks/useCombatLayout.d.ts.map +1 -1
  100. package/lib/components/screens/combat/hooks/useCombatLayout.js.map +1 -1
  101. package/lib/components/screens/combat/hooks/useCombatState.d.ts.map +1 -1
  102. package/lib/components/screens/combat/hooks/useCombatState.js.map +1 -1
  103. package/lib/components/screens/combat/hooks/useGrapplingAudio.d.ts.map +1 -1
  104. package/lib/components/screens/combat/hooks/usePreloadCombatAudio.d.ts.map +1 -1
  105. package/lib/components/screens/controls/ControlsScreen3D.d.ts.map +1 -1
  106. package/lib/components/screens/controls/ControlsScreen3D.js.map +1 -1
  107. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.d.ts.map +1 -1
  108. package/lib/components/screens/controls/components/ControlBindingsOverlayHtml.js.map +1 -1
  109. package/lib/components/screens/controls/components/GamepadVisualization3D.d.ts.map +1 -1
  110. package/lib/components/screens/controls/components/GamepadVisualization3D.js.map +1 -1
  111. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.d.ts.map +1 -1
  112. package/lib/components/screens/controls/components/InteractiveControlDemoOverlayHtml.js.map +1 -1
  113. package/lib/components/screens/controls/components/Key3D.d.ts.map +1 -1
  114. package/lib/components/screens/controls/components/Key3D.js.map +1 -1
  115. package/lib/components/screens/controls/components/VisualKeyboard3D.d.ts.map +1 -1
  116. package/lib/components/screens/controls/components/VisualKeyboard3D.js.map +1 -1
  117. package/lib/components/screens/controls/constants/ControlsConstants.d.ts.map +1 -1
  118. package/lib/components/screens/controls/constants/ControlsConstants.js.map +1 -1
  119. package/lib/components/screens/controls/hooks/useControlsState.d.ts.map +1 -1
  120. package/lib/components/screens/controls/hooks/useControlsState.js.map +1 -1
  121. package/lib/components/screens/endscreen/EndScreen3D.d.ts.map +1 -1
  122. package/lib/components/screens/endscreen/EndScreen3D.js.map +1 -1
  123. package/lib/components/screens/endscreen/components/DefeatAnimation3D.d.ts.map +1 -1
  124. package/lib/components/screens/endscreen/components/DefeatAnimation3D.js.map +1 -1
  125. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.d.ts.map +1 -1
  126. package/lib/components/screens/endscreen/components/NavigationButtonsOverlayHtml.js.map +1 -1
  127. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.d.ts.map +1 -1
  128. package/lib/components/screens/endscreen/components/PerformanceBreakdownOverlayHtml.js.map +1 -1
  129. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.d.ts.map +1 -1
  130. package/lib/components/screens/endscreen/components/PerformanceRatingOverlayHtml.js.map +1 -1
  131. package/lib/components/screens/endscreen/components/VictoryAnimation3D.d.ts.map +1 -1
  132. package/lib/components/screens/endscreen/components/VictoryAnimation3D.js.map +1 -1
  133. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.d.ts.map +1 -1
  134. package/lib/components/screens/endscreen/components/WinnerDisplayOverlayHtml.js.map +1 -1
  135. package/lib/components/screens/endscreen/components/index.d.ts.map +1 -1
  136. package/lib/components/screens/endscreen/index.d.ts.map +1 -1
  137. package/lib/components/screens/intro/IntroScreen3D.d.ts.map +1 -1
  138. package/lib/components/screens/intro/IntroScreen3D.js +1 -1
  139. package/lib/components/screens/intro/IntroScreen3D.js.map +1 -1
  140. package/lib/components/screens/intro/components/AbilityListOverlayHtml.d.ts.map +1 -1
  141. package/lib/components/screens/intro/components/AbilityListOverlayHtml.js.map +1 -1
  142. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.d.ts.map +1 -1
  143. package/lib/components/screens/intro/components/ArchetypeCardGridOverlayHtml.js.map +1 -1
  144. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.d.ts.map +1 -1
  145. package/lib/components/screens/intro/components/ArchetypeCardOverlayHtml.js.map +1 -1
  146. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.d.ts.map +1 -1
  147. package/lib/components/screens/intro/components/ArchetypeDisplayOverlayHtml.js.map +1 -1
  148. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.d.ts.map +1 -1
  149. package/lib/components/screens/intro/components/EnhancedArchetypeDisplayOverlayHtml.js.map +1 -1
  150. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.d.ts.map +1 -1
  151. package/lib/components/screens/intro/components/MenuButtonsOverlayHtml.js.map +1 -1
  152. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.d.ts.map +1 -1
  153. package/lib/components/screens/intro/components/MenuSectionOverlayHtml.js.map +1 -1
  154. package/lib/components/screens/intro/components/StatBarOverlayHtml.d.ts.map +1 -1
  155. package/lib/components/screens/intro/components/StatBarOverlayHtml.js.map +1 -1
  156. package/lib/components/screens/philosophy/PhilosophyScreen3D.d.ts.map +1 -1
  157. package/lib/components/screens/philosophy/PhilosophyScreen3D.js.map +1 -1
  158. package/lib/components/screens/philosophy/components/InteractiveTrigramGridOverlayHtml.d.ts +0 -1
  159. package/lib/components/screens/philosophy/components/InteractiveTrigramGridOverlayHtml.d.ts.map +1 -1
  160. package/lib/components/screens/philosophy/components/PhilosophyNavigationOverlayHtml.d.ts +0 -1
  161. package/lib/components/screens/philosophy/components/PhilosophyNavigationOverlayHtml.d.ts.map +1 -1
  162. package/lib/components/screens/philosophy/components/PhilosophySectionOverlayHtml.d.ts +0 -1
  163. package/lib/components/screens/philosophy/components/PhilosophySectionOverlayHtml.d.ts.map +1 -1
  164. package/lib/components/screens/philosophy/components/PhilosophyTextOverlayHtml.d.ts +0 -1
  165. package/lib/components/screens/philosophy/components/PhilosophyTextOverlayHtml.d.ts.map +1 -1
  166. package/lib/components/screens/philosophy/components/TrigramSymbol3D.d.ts +0 -1
  167. package/lib/components/screens/philosophy/components/TrigramSymbol3D.d.ts.map +1 -1
  168. package/lib/components/screens/philosophy/components/TrigramVisualization3D.d.ts +0 -1
  169. package/lib/components/screens/philosophy/components/TrigramVisualization3D.d.ts.map +1 -1
  170. package/lib/components/screens/philosophy/hooks/usePhilosophyState.d.ts +0 -1
  171. package/lib/components/screens/philosophy/hooks/usePhilosophyState.d.ts.map +1 -1
  172. package/lib/components/screens/training/TrainingScreen3D.d.ts.map +1 -1
  173. package/lib/components/screens/training/TrainingScreen3D.js.map +1 -1
  174. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.d.ts.map +1 -1
  175. package/lib/components/screens/training/components/AnatomyControlsOverlayHtml.js.map +1 -1
  176. package/lib/components/screens/training/components/AnatomyOverlay3D.d.ts.map +1 -1
  177. package/lib/components/screens/training/components/AnatomyOverlay3D.js.map +1 -1
  178. package/lib/components/screens/training/components/DamageNumber3D.d.ts.map +1 -1
  179. package/lib/components/screens/training/components/FootPlacementMarkers3D.d.ts.map +1 -1
  180. package/lib/components/screens/training/components/FootPlacementMarkers3D.js.map +1 -1
  181. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.d.ts.map +1 -1
  182. package/lib/components/screens/training/components/FootworkDrillsOverlayHtml.js.map +1 -1
  183. package/lib/components/screens/training/components/HitFeedbackEffect3D.d.ts.map +1 -1
  184. package/lib/components/screens/training/components/HitFeedbackEffect3D.js.map +1 -1
  185. package/lib/components/screens/training/components/TrainingAICharacter3D.d.ts.map +1 -1
  186. package/lib/components/screens/training/components/TrainingArena3D.d.ts.map +1 -1
  187. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.d.ts.map +1 -1
  188. package/lib/components/screens/training/components/TrainingControlsOverlayHtml.js.map +1 -1
  189. package/lib/components/screens/training/components/TrainingDummy3D.d.ts.map +1 -1
  190. package/lib/components/screens/training/components/TrainingDummy3D.js.map +1 -1
  191. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.d.ts.map +1 -1
  192. package/lib/components/screens/training/components/TrainingFeedbackOverlayHtml.js.map +1 -1
  193. package/lib/components/screens/training/components/TrainingHitEffects3D.d.ts.map +1 -1
  194. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.d.ts.map +1 -1
  195. package/lib/components/screens/training/components/TrainingModeSelectorOverlayHtml.js.map +1 -1
  196. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.d.ts.map +1 -1
  197. package/lib/components/screens/training/components/TrainingStatsOverlayHtml.js.map +1 -1
  198. package/lib/components/screens/training/components/VitalPointMarker3D.d.ts.map +1 -1
  199. package/lib/components/screens/training/components/VitalPointMarker3D.js.map +1 -1
  200. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.d.ts.map +1 -1
  201. package/lib/components/screens/training/components/VitalPointTrainingOverlayHtml.js.map +1 -1
  202. package/lib/components/screens/training/components/hud/TrainingBottomHUD.d.ts.map +1 -1
  203. package/lib/components/screens/training/components/hud/TrainingBottomHUD.js.map +1 -1
  204. package/lib/components/screens/training/components/hud/TrainingLeftHUD.d.ts.map +1 -1
  205. package/lib/components/screens/training/components/hud/TrainingLeftHUD.js.map +1 -1
  206. package/lib/components/screens/training/components/hud/TrainingRightHUD.d.ts.map +1 -1
  207. package/lib/components/screens/training/components/hud/TrainingRightHUD.js.map +1 -1
  208. package/lib/components/screens/training/components/hud/TrainingTopHUD.d.ts.map +1 -1
  209. package/lib/components/screens/training/components/hud/TrainingTopHUD.js.map +1 -1
  210. package/lib/components/screens/training/components/index.d.ts.map +1 -1
  211. package/lib/components/screens/training/hooks/useAttackMovement.d.ts.map +1 -1
  212. package/lib/components/screens/training/hooks/useAttackMovement.js.map +1 -1
  213. package/lib/components/screens/training/hooks/useTrainingActions.d.ts.map +1 -1
  214. package/lib/components/screens/training/hooks/useTrainingActions.js.map +1 -1
  215. package/lib/components/screens/training/hooks/useTrainingLayout.d.ts.map +1 -1
  216. package/lib/components/screens/training/hooks/useTrainingLayout.js.map +1 -1
  217. package/lib/components/screens/training/hooks/useTrainingState.d.ts.map +1 -1
  218. package/lib/components/screens/training/hooks/useTrainingState.js.map +1 -1
  219. package/lib/components/shared/base/AccessibilityProvider.d.ts.map +1 -1
  220. package/lib/components/shared/base/BaseButton.d.ts.map +1 -1
  221. package/lib/components/shared/base/BaseButton.js.map +1 -1
  222. package/lib/components/shared/base/BaseButtonOverlayHtml.d.ts.map +1 -1
  223. package/lib/components/shared/base/BaseButtonOverlayHtml.js.map +1 -1
  224. package/lib/components/shared/base/BasePanel.d.ts.map +1 -1
  225. package/lib/components/shared/base/BasePanel.js.map +1 -1
  226. package/lib/components/shared/base/BaseText.d.ts.map +1 -1
  227. package/lib/components/shared/base/BaseText.js.map +1 -1
  228. package/lib/components/shared/base/ResponsiveContainer.d.ts.map +1 -1
  229. package/lib/components/shared/base/index.d.ts.map +1 -1
  230. package/lib/components/shared/base/useKoreanTheme.d.ts.map +1 -1
  231. package/lib/components/shared/base/useKoreanTheme.js.map +1 -1
  232. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.d.ts.map +1 -1
  233. package/lib/components/shared/debug/PerformanceDebugOverlayHtml.js.map +1 -1
  234. package/lib/components/shared/effects/ScreenFlash.d.ts.map +1 -1
  235. package/lib/components/shared/mobile/ActionButtons.d.ts.map +1 -1
  236. package/lib/components/shared/mobile/ActionButtons.js +0 -1
  237. package/lib/components/shared/mobile/ActionButtons.js.map +1 -1
  238. package/lib/components/shared/mobile/GestureRecognizerPure.d.ts +0 -1
  239. package/lib/components/shared/mobile/GestureRecognizerPure.d.ts.map +1 -1
  240. package/lib/components/shared/mobile/GestureRecognizerPure.js +0 -1
  241. package/lib/components/shared/mobile/GestureRecognizerPure.js.map +1 -1
  242. package/lib/components/shared/mobile/HapticController.d.ts +0 -13
  243. package/lib/components/shared/mobile/HapticController.d.ts.map +1 -1
  244. package/lib/components/shared/mobile/HapticController.js +0 -10
  245. package/lib/components/shared/mobile/HapticController.js.map +1 -1
  246. package/lib/components/shared/mobile/MobileControlsPure.d.ts.map +1 -1
  247. package/lib/components/shared/mobile/MobileControlsPure.js.map +1 -1
  248. package/lib/components/shared/mobile/PerformanceMonitor.d.ts +0 -15
  249. package/lib/components/shared/mobile/PerformanceMonitor.d.ts.map +1 -1
  250. package/lib/components/shared/mobile/StanceWheelPure.d.ts +0 -1
  251. package/lib/components/shared/mobile/StanceWheelPure.d.ts.map +1 -1
  252. package/lib/components/shared/mobile/StanceWheelPure.js +0 -1
  253. package/lib/components/shared/mobile/StanceWheelPure.js.map +1 -1
  254. package/lib/components/shared/mobile/TouchOptimizer.d.ts +0 -4
  255. package/lib/components/shared/mobile/TouchOptimizer.d.ts.map +1 -1
  256. package/lib/components/shared/mobile/TouchOptimizer.js +0 -3
  257. package/lib/components/shared/mobile/TouchOptimizer.js.map +1 -1
  258. package/lib/components/shared/mobile/VirtualDPad.d.ts.map +1 -1
  259. package/lib/components/shared/mobile/VirtualDPad.js +0 -1
  260. package/lib/components/shared/mobile/VirtualDPad.js.map +1 -1
  261. package/lib/components/shared/mobile/index.d.ts.map +1 -1
  262. package/lib/components/shared/three/anatomy/BodySurface.d.ts.map +1 -1
  263. package/lib/components/shared/three/anatomy/BodySurface.js.map +1 -1
  264. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.d.ts.map +1 -1
  265. package/lib/components/shared/three/anatomy/BoneAttachedMuscles.js.map +1 -1
  266. package/lib/components/shared/three/anatomy/BoneClothing.d.ts.map +1 -1
  267. package/lib/components/shared/three/anatomy/BoneClothing.js.map +1 -1
  268. package/lib/components/shared/three/anatomy/BoneRenderer.d.ts +0 -1
  269. package/lib/components/shared/three/anatomy/BoneRenderer.d.ts.map +1 -1
  270. package/lib/components/shared/three/anatomy/BoneRenderer.js.map +1 -1
  271. package/lib/components/shared/three/anatomy/Face3D.d.ts.map +1 -1
  272. package/lib/components/shared/three/anatomy/Face3D.js.map +1 -1
  273. package/lib/components/shared/three/anatomy/Foot3D.d.ts +0 -1
  274. package/lib/components/shared/three/anatomy/Foot3D.d.ts.map +1 -1
  275. package/lib/components/shared/three/anatomy/Foot3D.js.map +1 -1
  276. package/lib/components/shared/three/anatomy/Hand3D.d.ts +0 -1
  277. package/lib/components/shared/three/anatomy/Hand3D.d.ts.map +1 -1
  278. package/lib/components/shared/three/anatomy/Hand3D.js.map +1 -1
  279. package/lib/components/shared/three/effects/ActionFeedback.d.ts.map +1 -1
  280. package/lib/components/shared/three/effects/ActionFeedback.js.map +1 -1
  281. package/lib/components/shared/three/effects/DamageNumbers.d.ts.map +1 -1
  282. package/lib/components/shared/three/effects/DamageNumbers.js.map +1 -1
  283. package/lib/components/shared/three/effects/ExplosiveBurstEffect3D.d.ts.map +1 -1
  284. package/lib/components/shared/three/effects/GrapplingIndicator3D.d.ts.map +1 -1
  285. package/lib/components/shared/three/effects/HitEffects3D.d.ts.map +1 -1
  286. package/lib/components/shared/three/effects/HitEffects3D.js.map +1 -1
  287. package/lib/components/shared/three/effects/LimbExposureIndicator3D.d.ts.map +1 -1
  288. package/lib/components/shared/three/effects/NerveDisruptionEffect3D.d.ts.map +1 -1
  289. package/lib/components/shared/three/effects/PlayerStateIndicators.d.ts.map +1 -1
  290. package/lib/components/shared/three/effects/PlayerStateIndicators.js.map +1 -1
  291. package/lib/components/shared/three/effects/StanceSymbol3D.d.ts.map +1 -1
  292. package/lib/components/shared/three/effects/StanceSymbol3D.js.map +1 -1
  293. package/lib/components/shared/three/effects/StanceTransitionEffect.d.ts.map +1 -1
  294. package/lib/components/shared/three/effects/StanceTransitionEffect.js.map +1 -1
  295. package/lib/components/shared/three/effects/ThunderEffect3D.d.ts.map +1 -1
  296. package/lib/components/shared/three/effects/VitalPointMarkers3D.d.ts.map +1 -1
  297. package/lib/components/shared/three/effects/VitalPointMarkers3D.js.map +1 -1
  298. package/lib/components/shared/three/index.d.ts.map +1 -1
  299. package/lib/components/shared/three/indicators/ElementalColorSystem.d.ts +0 -6
  300. package/lib/components/shared/three/indicators/ElementalColorSystem.d.ts.map +1 -1
  301. package/lib/components/shared/three/indicators/ElementalColorSystem.js +0 -4
  302. package/lib/components/shared/three/indicators/ElementalColorSystem.js.map +1 -1
  303. package/lib/components/shared/three/indicators/GuardIndicator.d.ts +0 -1
  304. package/lib/components/shared/three/indicators/GuardIndicator.d.ts.map +1 -1
  305. package/lib/components/shared/three/indicators/GuardIndicator.js +0 -1
  306. package/lib/components/shared/three/indicators/GuardIndicator.js.map +1 -1
  307. package/lib/components/shared/three/indicators/HapticFeedback.d.ts +0 -7
  308. package/lib/components/shared/three/indicators/HapticFeedback.d.ts.map +1 -1
  309. package/lib/components/shared/three/indicators/HapticFeedback.js +0 -2
  310. package/lib/components/shared/three/indicators/HapticFeedback.js.map +1 -1
  311. package/lib/components/shared/three/indicators/StanceChangeIndicator.d.ts +0 -1
  312. package/lib/components/shared/three/indicators/StanceChangeIndicator.d.ts.map +1 -1
  313. package/lib/components/shared/three/indicators/StanceChangeIndicator.js +0 -1
  314. package/lib/components/shared/three/indicators/StanceChangeIndicator.js.map +1 -1
  315. package/lib/components/shared/three/indicators/TrigramSymbol3D.d.ts +0 -1
  316. package/lib/components/shared/three/indicators/TrigramSymbol3D.d.ts.map +1 -1
  317. package/lib/components/shared/three/models/Player3DWithTransitions.d.ts.map +1 -1
  318. package/lib/components/shared/three/models/Player3DWithTransitions.js.map +1 -1
  319. package/lib/components/shared/three/models/SkeletalPlayer3D.d.ts.map +1 -1
  320. package/lib/components/shared/three/models/SkeletalPlayer3D.js.map +1 -1
  321. package/lib/components/shared/three/optimization/AdaptiveQuality.d.ts.map +1 -1
  322. package/lib/components/shared/three/optimization/AdaptiveQuality.js.map +1 -1
  323. package/lib/components/shared/three/optimization/InstancedGeometry.d.ts.map +1 -1
  324. package/lib/components/shared/three/optimization/LODSystem.d.ts.map +1 -1
  325. package/lib/components/shared/three/scene/AtmosphericParticles3D.d.ts.map +1 -1
  326. package/lib/components/shared/three/scene/AtmosphericParticles3D.js.map +1 -1
  327. package/lib/components/shared/three/scene/BackgroundScene3D.d.ts.map +1 -1
  328. package/lib/components/shared/three/scene/BackgroundScene3D.js.map +1 -1
  329. package/lib/components/shared/three/scene/CombatArena3D.d.ts.map +1 -1
  330. package/lib/components/shared/three/scene/CombatArena3D.js.map +1 -1
  331. package/lib/components/shared/three/scene/DebugCollision.d.ts +0 -2
  332. package/lib/components/shared/three/scene/DebugCollision.d.ts.map +1 -1
  333. package/lib/components/shared/three/scene/KoreanSignage3D.d.ts.map +1 -1
  334. package/lib/components/shared/three/scene/KoreanSignage3D.js.map +1 -1
  335. package/lib/components/shared/three/ui/ArchetypeCard.d.ts.map +1 -1
  336. package/lib/components/shared/three/ui/ArchetypeCard.js.map +1 -1
  337. package/lib/components/shared/three/ui/BodyPartHealthDisplay.d.ts.map +1 -1
  338. package/lib/components/shared/three/ui/BodyPartHealthDisplay.js.map +1 -1
  339. package/lib/components/shared/three/ui/BreathingIndicator.d.ts.map +1 -1
  340. package/lib/components/shared/three/ui/BreathingIndicator2.js.map +1 -1
  341. package/lib/components/shared/three/ui/CombatReadinessBar.d.ts.map +1 -1
  342. package/lib/components/shared/three/ui/CombatReadinessBar.js.map +1 -1
  343. package/lib/components/shared/three/ui/ComboCounter.d.ts.map +1 -1
  344. package/lib/components/shared/three/ui/ComboCounter.js.map +1 -1
  345. package/lib/components/shared/three/ui/HealthBar.d.ts.map +1 -1
  346. package/lib/components/shared/three/ui/HealthBar.js.map +1 -1
  347. package/lib/components/shared/three/ui/KoreanButton.d.ts.map +1 -1
  348. package/lib/components/shared/three/ui/KoreanButton.js.map +1 -1
  349. package/lib/components/shared/three/ui/KoreanPanel.d.ts.map +1 -1
  350. package/lib/components/shared/three/ui/KoreanPanel.js.map +1 -1
  351. package/lib/components/shared/three/ui/KoreanText.d.ts.map +1 -1
  352. package/lib/components/shared/three/ui/KoreanText.js.map +1 -1
  353. package/lib/components/shared/three/ui/MenuList.d.ts.map +1 -1
  354. package/lib/components/shared/three/ui/MenuList.js.map +1 -1
  355. package/lib/components/shared/three/ui/PlayerHUD.d.ts.map +1 -1
  356. package/lib/components/shared/three/ui/PlayerHUD.js.map +1 -1
  357. package/lib/components/shared/three/ui/ProgressBar.d.ts.map +1 -1
  358. package/lib/components/shared/three/ui/ProgressBar.js.map +1 -1
  359. package/lib/components/shared/three/ui/SpeedIndicatorHUD.d.ts +0 -1
  360. package/lib/components/shared/three/ui/SpeedIndicatorHUD.d.ts.map +1 -1
  361. package/lib/components/shared/three/ui/SpeedIndicatorHUD.js +0 -1
  362. package/lib/components/shared/three/ui/SpeedIndicatorHUD.js.map +1 -1
  363. package/lib/components/shared/three/ui/StaminaBar.d.ts.map +1 -1
  364. package/lib/components/shared/three/ui/StaminaBar.js.map +1 -1
  365. package/lib/components/shared/three/ui/TechniqueBar.d.ts.map +1 -1
  366. package/lib/components/shared/three/ui/TechniqueBar.js.map +1 -1
  367. package/lib/components/shared/three/ui/TechniqueBarContainer.d.ts.map +1 -1
  368. package/lib/components/shared/three/ui/TechniqueCard.d.ts.map +1 -1
  369. package/lib/components/shared/three/ui/TechniqueCard.js.map +1 -1
  370. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.d.ts.map +1 -1
  371. package/lib/components/shared/three/ui/VitalPointOverlayControlsHtml.js.map +1 -1
  372. package/lib/components/shared/three/ui/VulnerabilityWindowHUD.d.ts.map +1 -1
  373. package/lib/components/shared/ui/BaseHUDContainer.d.ts.map +1 -1
  374. package/lib/components/shared/ui/BaseHUDContainer.js.map +1 -1
  375. package/lib/components/shared/ui/CombatTimer.d.ts.map +1 -1
  376. package/lib/components/shared/ui/CombatTimer.js.map +1 -1
  377. package/lib/components/shared/ui/ErrorBoundary.d.ts.map +1 -1
  378. package/lib/components/shared/ui/ErrorModal.d.ts.map +1 -1
  379. package/lib/components/shared/ui/ErrorModal.js.map +1 -1
  380. package/lib/components/shared/ui/HUDSection.d.ts.map +1 -1
  381. package/lib/components/shared/ui/LoadingState.d.ts.map +1 -1
  382. package/lib/components/shared/ui/LoadingState.js.map +1 -1
  383. package/lib/components/shared/ui/MobileHUDLayout.d.ts +0 -1
  384. package/lib/components/shared/ui/MobileHUDLayout.d.ts.map +1 -1
  385. package/lib/components/shared/ui/ResponsiveContainer.d.ts +0 -1
  386. package/lib/components/shared/ui/ResponsiveContainer.d.ts.map +1 -1
  387. package/lib/components/shared/ui/SplashScreen.d.ts.map +1 -1
  388. package/lib/components/shared/ui/SplashScreen.js +2 -2
  389. package/lib/components/shared/ui/SplashScreen.js.map +1 -1
  390. package/lib/components/shared/ui/StyledHUDPanel.d.ts.map +1 -1
  391. package/lib/components/shared/ui/VitalPointOverlayControlsPure.d.ts.map +1 -1
  392. package/lib/components/shared/ui/VitalPointOverlayControlsPure.js.map +1 -1
  393. package/lib/components/shared/ui/VolumeControl.d.ts.map +1 -1
  394. package/lib/components/shared/ui/VolumeControl.js.map +1 -1
  395. package/lib/components/shared/ui/shared/ConfirmDialog.d.ts.map +1 -1
  396. package/lib/components/shared/ui/shared/ConfirmDialog.js.map +1 -1
  397. package/lib/components/test/Hello3D.d.ts.map +1 -1
  398. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.d.ts.map +1 -1
  399. package/lib/components/ui/combat/BalanceIndicatorOverlayHtml.js.map +1 -1
  400. package/lib/components/ui/combat/ComboCounter.d.ts.map +1 -1
  401. package/lib/components/ui/combat/PressureMeter.d.ts.map +1 -1
  402. package/lib/systems/CombatSystem.d.ts +0 -6
  403. package/lib/systems/CombatSystem.d.ts.map +1 -1
  404. package/lib/systems/CombatSystem.js +0 -6
  405. package/lib/systems/CombatSystem.js.map +1 -1
  406. package/lib/systems/EffectCalculator.d.ts +0 -7
  407. package/lib/systems/EffectCalculator.d.ts.map +1 -1
  408. package/lib/systems/EffectCalculator.js +0 -4
  409. package/lib/systems/EffectCalculator.js.map +1 -1
  410. package/lib/systems/LayoutSystem.d.ts +0 -1
  411. package/lib/systems/LayoutSystem.d.ts.map +1 -1
  412. package/lib/systems/LayoutSystem.js +0 -1
  413. package/lib/systems/LayoutSystem.js.map +1 -1
  414. package/lib/systems/PlayerEffectManager.d.ts +0 -10
  415. package/lib/systems/PlayerEffectManager.d.ts.map +1 -1
  416. package/lib/systems/PlayerEffectManager.js +0 -3
  417. package/lib/systems/PlayerEffectManager.js.map +1 -1
  418. package/lib/systems/ResponsiveScaling.d.ts +0 -12
  419. package/lib/systems/ResponsiveScaling.d.ts.map +1 -1
  420. package/lib/systems/ResponsiveScaling.js +0 -12
  421. package/lib/systems/ResponsiveScaling.js.map +1 -1
  422. package/lib/systems/TrigramSystem.d.ts +0 -13
  423. package/lib/systems/TrigramSystem.d.ts.map +1 -1
  424. package/lib/systems/TrigramSystem.js +0 -13
  425. package/lib/systems/TrigramSystem.js.map +1 -1
  426. package/lib/systems/VitalPointSystem.d.ts +0 -10
  427. package/lib/systems/VitalPointSystem.d.ts.map +1 -1
  428. package/lib/systems/VitalPointSystem.js +0 -10
  429. package/lib/systems/VitalPointSystem.js.map +1 -1
  430. package/lib/systems/animation/builders/KeyframeInterpolation.d.ts +0 -4
  431. package/lib/systems/animation/builders/KeyframeInterpolation.d.ts.map +1 -1
  432. package/lib/systems/animation/builders/KeyframeInterpolation.js +0 -1
  433. package/lib/systems/animation/builders/KeyframeInterpolation.js.map +1 -1
  434. package/lib/systems/animation/builders/SkeletonRig.d.ts +0 -4
  435. package/lib/systems/animation/builders/SkeletonRig.d.ts.map +1 -1
  436. package/lib/systems/animation/builders/SkeletonRig.js +0 -3
  437. package/lib/systems/animation/builders/SkeletonRig.js.map +1 -1
  438. package/lib/systems/animation/catalogs/RecoveryAnimations.d.ts +0 -5
  439. package/lib/systems/animation/catalogs/RecoveryAnimations.d.ts.map +1 -1
  440. package/lib/systems/animation/catalogs/RecoveryAnimations.js +0 -5
  441. package/lib/systems/animation/catalogs/RecoveryAnimations.js.map +1 -1
  442. package/lib/systems/animation/core/AnimationHitTiming.d.ts +0 -6
  443. package/lib/systems/animation/core/AnimationHitTiming.d.ts.map +1 -1
  444. package/lib/systems/animation/core/AnimationHitTiming.js +0 -4
  445. package/lib/systems/animation/core/AnimationHitTiming.js.map +1 -1
  446. package/lib/systems/animation/core/AnimationTransitions.d.ts +0 -3
  447. package/lib/systems/animation/core/AnimationTransitions.d.ts.map +1 -1
  448. package/lib/systems/animation/core/AnimationTransitions.js.map +1 -1
  449. package/lib/systems/animation/core/LateralityTransform.d.ts +0 -3
  450. package/lib/systems/animation/core/LateralityTransform.d.ts.map +1 -1
  451. package/lib/systems/animation/core/LateralityTransform.js +0 -1
  452. package/lib/systems/animation/core/LateralityTransform.js.map +1 -1
  453. package/lib/systems/animation/core/RecoveryPhaseEnhancer.d.ts +0 -1
  454. package/lib/systems/animation/core/RecoveryPhaseEnhancer.d.ts.map +1 -1
  455. package/lib/systems/animation/core/RecoveryPhaseEnhancer.js.map +1 -1
  456. package/lib/systems/animation/core/TechniqueAnimationMapper.d.ts +0 -10
  457. package/lib/systems/animation/core/TechniqueAnimationMapper.d.ts.map +1 -1
  458. package/lib/systems/animation/core/TechniqueAnimationMapper.js +0 -8
  459. package/lib/systems/animation/core/TechniqueAnimationMapper.js.map +1 -1
  460. package/lib/systems/animation/core/TrigramAnimationMapping.d.ts +0 -10
  461. package/lib/systems/animation/core/TrigramAnimationMapping.d.ts.map +1 -1
  462. package/lib/systems/animation/core/TrigramStanceTransitions.d.ts +0 -2
  463. package/lib/systems/animation/core/TrigramStanceTransitions.d.ts.map +1 -1
  464. package/lib/systems/animation/core/types.d.ts +0 -39
  465. package/lib/systems/animation/core/types.d.ts.map +1 -1
  466. package/lib/systems/animation/core/types.js +0 -9
  467. package/lib/systems/animation/core/types.js.map +1 -1
  468. package/lib/systems/animation/systems/AdvancedJointMovements.d.ts +0 -27
  469. package/lib/systems/animation/systems/AdvancedJointMovements.d.ts.map +1 -1
  470. package/lib/systems/animation/systems/AdvancedJointMovements.js +0 -1
  471. package/lib/systems/animation/systems/AdvancedJointMovements.js.map +1 -1
  472. package/lib/systems/animation/systems/BodyFacingSystem.d.ts +0 -19
  473. package/lib/systems/animation/systems/BodyFacingSystem.d.ts.map +1 -1
  474. package/lib/systems/animation/systems/BodyFacingSystem.js +0 -14
  475. package/lib/systems/animation/systems/BodyFacingSystem.js.map +1 -1
  476. package/lib/systems/animation/systems/FacialExpressions.d.ts +0 -10
  477. package/lib/systems/animation/systems/FacialExpressions.d.ts.map +1 -1
  478. package/lib/systems/animation/systems/FacialExpressions.js +0 -2
  479. package/lib/systems/animation/systems/FacialExpressions.js.map +1 -1
  480. package/lib/systems/animation/systems/FallAnimations.d.ts +0 -4
  481. package/lib/systems/animation/systems/FallAnimations.d.ts.map +1 -1
  482. package/lib/systems/animation/systems/FallAnimations.js +0 -2
  483. package/lib/systems/animation/systems/FallAnimations.js.map +1 -1
  484. package/lib/systems/animation/systems/HeadMovements.d.ts +0 -10
  485. package/lib/systems/animation/systems/HeadMovements.d.ts.map +1 -1
  486. package/lib/systems/bodypart/BodyPartDamageIntegration.d.ts +0 -7
  487. package/lib/systems/bodypart/BodyPartDamageIntegration.d.ts.map +1 -1
  488. package/lib/systems/bodypart/BodyPartDamageIntegration.js +0 -7
  489. package/lib/systems/bodypart/BodyPartDamageIntegration.js.map +1 -1
  490. package/lib/systems/bodypart/BodyPartHealthSystem.d.ts +0 -13
  491. package/lib/systems/bodypart/BodyPartHealthSystem.d.ts.map +1 -1
  492. package/lib/systems/bodypart/BodyPartHealthSystem.js +0 -13
  493. package/lib/systems/bodypart/BodyPartHealthSystem.js.map +1 -1
  494. package/lib/systems/bodypart/BodyPartPositionMapping.d.ts +0 -6
  495. package/lib/systems/bodypart/BodyPartPositionMapping.d.ts.map +1 -1
  496. package/lib/systems/bodypart/BodyPartPositionMapping.js +0 -6
  497. package/lib/systems/bodypart/BodyPartPositionMapping.js.map +1 -1
  498. package/lib/systems/bodypart/CombatInjuryIntegration.d.ts +0 -10
  499. package/lib/systems/bodypart/CombatInjuryIntegration.d.ts.map +1 -1
  500. package/lib/systems/bodypart/CombatInjuryIntegration.js +0 -8
  501. package/lib/systems/bodypart/CombatInjuryIntegration.js.map +1 -1
  502. package/lib/systems/bodypart/InjuryIntegration.d.ts +0 -2
  503. package/lib/systems/bodypart/InjuryIntegration.d.ts.map +1 -1
  504. package/lib/systems/bodypart/InjuryIntegration.js +0 -2
  505. package/lib/systems/bodypart/InjuryIntegration.js.map +1 -1
  506. package/lib/systems/bodypart/InjuryTracker.d.ts +0 -14
  507. package/lib/systems/bodypart/InjuryTracker.d.ts.map +1 -1
  508. package/lib/systems/bodypart/InjuryTracker.js +0 -12
  509. package/lib/systems/bodypart/InjuryTracker.js.map +1 -1
  510. package/lib/systems/bodypart/MovementPenaltySystem.d.ts +0 -8
  511. package/lib/systems/bodypart/MovementPenaltySystem.d.ts.map +1 -1
  512. package/lib/systems/bodypart/MovementPenaltySystem.js +0 -8
  513. package/lib/systems/bodypart/MovementPenaltySystem.js.map +1 -1
  514. package/lib/systems/bodypart/PlayerInjuryTrackingManager.d.ts +0 -8
  515. package/lib/systems/bodypart/PlayerInjuryTrackingManager.d.ts.map +1 -1
  516. package/lib/systems/bodypart/PlayerInjuryTrackingManager.js +0 -8
  517. package/lib/systems/bodypart/PlayerInjuryTrackingManager.js.map +1 -1
  518. package/lib/systems/bodypart/types.d.ts +0 -13
  519. package/lib/systems/bodypart/types.d.ts.map +1 -1
  520. package/lib/systems/bodypart/types.js +0 -5
  521. package/lib/systems/bodypart/types.js.map +1 -1
  522. package/lib/systems/breathing/BreathingDisruptionSystem.d.ts +0 -3
  523. package/lib/systems/breathing/BreathingDisruptionSystem.d.ts.map +1 -1
  524. package/lib/systems/breathing/BreathingDisruptionSystem.js +0 -2
  525. package/lib/systems/breathing/BreathingDisruptionSystem.js.map +1 -1
  526. package/lib/systems/combat/BalanceSystem.d.ts +0 -25
  527. package/lib/systems/combat/BalanceSystem.d.ts.map +1 -1
  528. package/lib/systems/combat/BalanceSystem.js +0 -25
  529. package/lib/systems/combat/BalanceSystem.js.map +1 -1
  530. package/lib/systems/combat/BreakingStatusEffects.d.ts +0 -4
  531. package/lib/systems/combat/BreakingStatusEffects.d.ts.map +1 -1
  532. package/lib/systems/combat/BreakingStatusEffects.js +0 -3
  533. package/lib/systems/combat/BreakingStatusEffects.js.map +1 -1
  534. package/lib/systems/combat/CombatStateSystem.d.ts +0 -9
  535. package/lib/systems/combat/CombatStateSystem.d.ts.map +1 -1
  536. package/lib/systems/combat/CombatStateSystem.js +0 -9
  537. package/lib/systems/combat/CombatStateSystem.js.map +1 -1
  538. package/lib/systems/combat/ConsciousnessSystem.d.ts +0 -16
  539. package/lib/systems/combat/ConsciousnessSystem.d.ts.map +1 -1
  540. package/lib/systems/combat/ConsciousnessSystem.js +0 -16
  541. package/lib/systems/combat/ConsciousnessSystem.js.map +1 -1
  542. package/lib/systems/combat/FallIntegration.d.ts +0 -3
  543. package/lib/systems/combat/FallIntegration.d.ts.map +1 -1
  544. package/lib/systems/combat/FallIntegration.js +0 -3
  545. package/lib/systems/combat/FallIntegration.js.map +1 -1
  546. package/lib/systems/combat/GrappleSystem.d.ts +0 -2
  547. package/lib/systems/combat/GrappleSystem.d.ts.map +1 -1
  548. package/lib/systems/combat/GrappleSystem.js +0 -2
  549. package/lib/systems/combat/GrappleSystem.js.map +1 -1
  550. package/lib/systems/combat/LimbExposureSystem.d.ts +0 -7
  551. package/lib/systems/combat/LimbExposureSystem.d.ts.map +1 -1
  552. package/lib/systems/combat/LimbExposureSystem.js +0 -7
  553. package/lib/systems/combat/LimbExposureSystem.js.map +1 -1
  554. package/lib/systems/combat/PainResponseSystem.d.ts +0 -11
  555. package/lib/systems/combat/PainResponseSystem.d.ts.map +1 -1
  556. package/lib/systems/combat/PainResponseSystem.js +0 -11
  557. package/lib/systems/combat/PainResponseSystem.js.map +1 -1
  558. package/lib/systems/combat/painConsciousnessUtils.d.ts +0 -7
  559. package/lib/systems/combat/painConsciousnessUtils.d.ts.map +1 -1
  560. package/lib/systems/combat/painConsciousnessUtils.js +0 -7
  561. package/lib/systems/combat/painConsciousnessUtils.js.map +1 -1
  562. package/lib/systems/effects.d.ts +11 -0
  563. package/lib/systems/effects.d.ts.map +1 -1
  564. package/lib/systems/effects.js +10 -0
  565. package/lib/systems/effects.js.map +1 -1
  566. package/lib/systems/game.d.ts +16 -0
  567. package/lib/systems/game.d.ts.map +1 -1
  568. package/lib/systems/game.js +1 -0
  569. package/lib/systems/game.js.map +1 -1
  570. package/lib/systems/index.d.ts +5 -1
  571. package/lib/systems/index.d.ts.map +1 -1
  572. package/lib/systems/index.js.map +1 -1
  573. package/lib/systems/movement/InjuryMovementModifier.d.ts +0 -10
  574. package/lib/systems/movement/InjuryMovementModifier.d.ts.map +1 -1
  575. package/lib/systems/movement/InjuryMovementModifier.js +0 -7
  576. package/lib/systems/movement/InjuryMovementModifier.js.map +1 -1
  577. package/lib/systems/movement/integration.d.ts +0 -3
  578. package/lib/systems/movement/integration.d.ts.map +1 -1
  579. package/lib/systems/movement/integration.js +0 -3
  580. package/lib/systems/movement/integration.js.map +1 -1
  581. package/lib/systems/physics/AttackMovementPhysics.d.ts +0 -9
  582. package/lib/systems/physics/AttackMovementPhysics.d.ts.map +1 -1
  583. package/lib/systems/physics/AttackMovementPhysics.js +0 -7
  584. package/lib/systems/physics/AttackMovementPhysics.js.map +1 -1
  585. package/lib/systems/physics/CollisionDetection.d.ts +0 -6
  586. package/lib/systems/physics/CollisionDetection.d.ts.map +1 -1
  587. package/lib/systems/physics/CollisionDetection.js +0 -6
  588. package/lib/systems/physics/CollisionDetection.js.map +1 -1
  589. package/lib/systems/physics/CoordinateMapper.d.ts +0 -1
  590. package/lib/systems/physics/CoordinateMapper.d.ts.map +1 -1
  591. package/lib/systems/physics/CoordinateMapper.js +0 -1
  592. package/lib/systems/physics/CoordinateMapper.js.map +1 -1
  593. package/lib/systems/physics/KnockbackPhysics.d.ts +0 -11
  594. package/lib/systems/physics/KnockbackPhysics.d.ts.map +1 -1
  595. package/lib/systems/physics/KnockbackPhysics.js +0 -8
  596. package/lib/systems/physics/KnockbackPhysics.js.map +1 -1
  597. package/lib/systems/physics/MovementPhysics.d.ts +0 -10
  598. package/lib/systems/physics/MovementPhysics.d.ts.map +1 -1
  599. package/lib/systems/physics/MovementPhysics.js +0 -8
  600. package/lib/systems/physics/MovementPhysics.js.map +1 -1
  601. package/lib/systems/physics/PhysicalReachCalculator.d.ts +0 -6
  602. package/lib/systems/physics/PhysicalReachCalculator.d.ts.map +1 -1
  603. package/lib/systems/physics/PhysicalReachCalculator.js +0 -5
  604. package/lib/systems/physics/PhysicalReachCalculator.js.map +1 -1
  605. package/lib/systems/physics/SpeedModifierSystem.d.ts +0 -5
  606. package/lib/systems/physics/SpeedModifierSystem.d.ts.map +1 -1
  607. package/lib/systems/physics/SpeedModifierSystem.js +0 -4
  608. package/lib/systems/physics/SpeedModifierSystem.js.map +1 -1
  609. package/lib/systems/player.d.ts +0 -5
  610. package/lib/systems/player.d.ts.map +1 -1
  611. package/lib/systems/trigram/TrigramCalculator.d.ts +0 -1
  612. package/lib/systems/trigram/TrigramCalculator.d.ts.map +1 -1
  613. package/lib/systems/trigram/TrigramCalculator.js +0 -1
  614. package/lib/systems/trigram/TrigramCalculator.js.map +1 -1
  615. package/lib/systems/trigram/types.d.ts +0 -4
  616. package/lib/systems/trigram/types.d.ts.map +1 -1
  617. package/lib/systems/trigram/types.js +0 -2
  618. package/lib/systems/trigram/types.js.map +1 -1
  619. package/lib/systems/types.d.ts +7 -2
  620. package/lib/systems/types.d.ts.map +1 -1
  621. package/lib/systems/types.js.map +1 -1
  622. package/lib/systems/vitalpoint/DamageCalculator.d.ts +0 -3
  623. package/lib/systems/vitalpoint/DamageCalculator.d.ts.map +1 -1
  624. package/lib/systems/vitalpoint/DamageCalculator.js +0 -3
  625. package/lib/systems/vitalpoint/DamageCalculator.js.map +1 -1
  626. package/lib/systems/vitalpoint/KoreanVitalPoints.d.ts +0 -8
  627. package/lib/systems/vitalpoint/KoreanVitalPoints.d.ts.map +1 -1
  628. package/lib/systems/vitalpoint/KoreanVitalPoints.js +0 -8
  629. package/lib/systems/vitalpoint/KoreanVitalPoints.js.map +1 -1
  630. package/lib/systems/vitalpoint/VitalPointsData.d.ts +0 -3
  631. package/lib/systems/vitalpoint/VitalPointsData.d.ts.map +1 -1
  632. package/lib/systems/vitalpoint/VitalPointsData.js +0 -1
  633. package/lib/systems/vitalpoint/VitalPointsData.js.map +1 -1
  634. package/lib/types/PhysicsTypes.d.ts +21 -78
  635. package/lib/types/PhysicsTypes.d.ts.map +1 -1
  636. package/lib/types/PhysicsTypes.js +17 -63
  637. package/lib/types/PhysicsTypes.js.map +1 -1
  638. package/lib/types/clothing.d.ts +0 -9
  639. package/lib/types/clothing.d.ts.map +1 -1
  640. package/lib/types/constants/animations.d.ts +35 -1
  641. package/lib/types/constants/animations.d.ts.map +1 -1
  642. package/lib/types/constants/animations.js +12 -1
  643. package/lib/types/constants/animations.js.map +1 -1
  644. package/lib/types/constants/colors.d.ts +28 -2
  645. package/lib/types/constants/colors.d.ts.map +1 -1
  646. package/lib/types/constants/colors.js +30 -4
  647. package/lib/types/constants/colors.js.map +1 -1
  648. package/lib/types/constants/index.d.ts +5 -1
  649. package/lib/types/constants/index.d.ts.map +1 -1
  650. package/lib/types/constants/index.js.map +1 -1
  651. package/lib/types/constants/performance.d.ts +0 -2
  652. package/lib/types/constants/performance.d.ts.map +1 -1
  653. package/lib/types/constants/performance.js +0 -2
  654. package/lib/types/constants/performance.js.map +1 -1
  655. package/lib/types/constants/typography.d.ts +40 -2
  656. package/lib/types/constants/typography.d.ts.map +1 -1
  657. package/lib/types/constants/typography.js +40 -2
  658. package/lib/types/constants/typography.js.map +1 -1
  659. package/lib/types/constants/ui.d.ts +89 -1
  660. package/lib/types/constants/ui.d.ts.map +1 -1
  661. package/lib/types/constants/ui.js +33 -1
  662. package/lib/types/constants/ui.js.map +1 -1
  663. package/lib/types/facial.d.ts +0 -15
  664. package/lib/types/facial.d.ts.map +1 -1
  665. package/lib/types/facial.js +0 -8
  666. package/lib/types/facial.js.map +1 -1
  667. package/lib/types/hand-animation.d.ts +34 -147
  668. package/lib/types/hand-animation.d.ts.map +1 -1
  669. package/lib/types/hand-animation.js +0 -2
  670. package/lib/types/hand-animation.js.map +1 -1
  671. package/lib/types/injury.d.ts +0 -2
  672. package/lib/types/injury.d.ts.map +1 -1
  673. package/lib/types/injury.js +0 -1
  674. package/lib/types/injury.js.map +1 -1
  675. package/lib/types/physics.d.ts +0 -21
  676. package/lib/types/physics.d.ts.map +1 -1
  677. package/lib/types/physics.js +0 -6
  678. package/lib/types/physics.js.map +1 -1
  679. package/lib/types/physicsConstants.d.ts +0 -12
  680. package/lib/types/physicsConstants.d.ts.map +1 -1
  681. package/lib/types/physicsConstants.js +0 -12
  682. package/lib/types/physicsConstants.js.map +1 -1
  683. package/lib/types/player-visual.d.ts +45 -189
  684. package/lib/types/player-visual.d.ts.map +1 -1
  685. package/lib/types/technique.d.ts +1 -5
  686. package/lib/types/technique.d.ts.map +1 -1
  687. package/lib/types/techniqueId.d.ts +0 -1
  688. package/lib/types/techniqueId.d.ts.map +1 -1
  689. package/lib/types/techniqueId.js +0 -1
  690. package/lib/types/techniqueId.js.map +1 -1
  691. package/lib/utils/arenaWorldDimensions.d.ts +0 -11
  692. package/lib/utils/arenaWorldDimensions.d.ts.map +1 -1
  693. package/lib/utils/arenaWorldDimensions.js +0 -6
  694. package/lib/utils/arenaWorldDimensions.js.map +1 -1
  695. package/lib/utils/controlMapping.d.ts +3 -4
  696. package/lib/utils/controlMapping.d.ts.map +1 -1
  697. package/lib/utils/controlMapping.js +1 -2
  698. package/lib/utils/controlMapping.js.map +1 -1
  699. package/lib/utils/deviceDetection.d.ts +0 -5
  700. package/lib/utils/deviceDetection.d.ts.map +1 -1
  701. package/lib/utils/deviceDetection.js +0 -5
  702. package/lib/utils/deviceDetection.js.map +1 -1
  703. package/lib/utils/hapticFeedback.d.ts +23 -95
  704. package/lib/utils/hapticFeedback.d.ts.map +1 -1
  705. package/lib/utils/hapticFeedback.js +9 -39
  706. package/lib/utils/hapticFeedback.js.map +1 -1
  707. package/lib/utils/haptics.d.ts +0 -3
  708. package/lib/utils/haptics.d.ts.map +1 -1
  709. package/lib/utils/haptics.js +0 -1
  710. package/lib/utils/haptics.js.map +1 -1
  711. package/lib/utils/math.d.ts +0 -3
  712. package/lib/utils/math.d.ts.map +1 -1
  713. package/lib/utils/math.js +0 -2
  714. package/lib/utils/math.js.map +1 -1
  715. package/lib/utils/mobileLayoutHelpers.d.ts +0 -3
  716. package/lib/utils/mobileLayoutHelpers.d.ts.map +1 -1
  717. package/lib/utils/mobileLayoutHelpers.js +0 -1
  718. package/lib/utils/mobileLayoutHelpers.js.map +1 -1
  719. package/lib/utils/mobileUIUtils.d.ts +5 -100
  720. package/lib/utils/mobileUIUtils.d.ts.map +1 -1
  721. package/lib/utils/mobileUIUtils.js +0 -9
  722. package/lib/utils/mobileUIUtils.js.map +1 -1
  723. package/lib/utils/physicalAttributeValidation.d.ts.map +1 -1
  724. package/lib/utils/player3DHelpers.d.ts.map +1 -1
  725. package/lib/utils/player3DHelpers.js.map +1 -1
  726. package/lib/utils/responsiveLayoutHelpers.d.ts +0 -65
  727. package/lib/utils/responsiveLayoutHelpers.d.ts.map +1 -1
  728. package/lib/utils/responsiveLayoutHelpers.js +0 -65
  729. package/lib/utils/responsiveLayoutHelpers.js.map +1 -1
  730. package/lib/utils/responsiveOrientationConstants.d.ts +0 -7
  731. package/lib/utils/responsiveOrientationConstants.d.ts.map +1 -1
  732. package/lib/utils/responsiveOrientationConstants.js +0 -7
  733. package/lib/utils/responsiveOrientationConstants.js.map +1 -1
  734. package/lib/utils/safeAreaUtils.d.ts +0 -6
  735. package/lib/utils/safeAreaUtils.d.ts.map +1 -1
  736. package/lib/utils/safeAreaUtils.js +0 -2
  737. package/lib/utils/safeAreaUtils.js.map +1 -1
  738. package/lib/utils/sharedPhysicsConfig.d.ts +0 -4
  739. package/lib/utils/sharedPhysicsConfig.d.ts.map +1 -1
  740. package/lib/utils/sharedPhysicsConfig.js +0 -2
  741. package/lib/utils/sharedPhysicsConfig.js.map +1 -1
  742. package/lib/utils/skeletonScaling.d.ts +0 -9
  743. package/lib/utils/skeletonScaling.d.ts.map +1 -1
  744. package/lib/utils/skeletonScaling.js +0 -1
  745. package/lib/utils/skeletonScaling.js.map +1 -1
  746. package/package.json +7 -7
@@ -1 +1 @@
1
- {"version":3,"file":"KoreanVitalPoints.js","names":[],"sources":["../../../src/systems/vitalpoint/KoreanVitalPoints.ts"],"sourcesContent":["/**\n * Korean Vital Points (급소) - Complete 70-Point System\n *\n * This module provides the complete Korean martial arts vital point system\n * with all 70 anatomical targets. This is the primary export used by all\n * combat and training components.\n *\n * **Architecture Note**: This module re-exports VITAL_POINTS_DATA as\n * KOREAN_VITAL_POINTS to maintain backwards compatibility while providing\n * the complete 70-point system. All new code should use VITAL_POINTS_DATA\n * directly from VitalPointsData.ts.\n *\n * @module systems/vitalpoint/KoreanVitalPoints\n * @see {@link ./VitalPointsData.ts} for the complete data source\n */\n\nimport {\n TrigramStance,\n VitalPointCategory,\n VitalPointSeverity,\n} from \"../../types/common\";\nimport { VitalPoint } from \"./types\";\nimport { VITAL_POINTS_DATA } from \"./VitalPointsData\";\n\n/**\n * Complete Korean vital points (급소) system - All 70 anatomical targets\n *\n * **Distribution**:\n * - Head: 12 points (neurological, vascular, skeletal)\n * - Torso: 24 points (organs, ribs, spine, respiratory)\n * - Arms: 17 points (joints, nerves, skeletal)\n * - Legs: 17 points (joints, nerves, mobility)\n *\n * **Severity Levels**:\n * - LETHAL (4 points): Life-threatening strikes\n * - CRITICAL (18 points): Severe incapacitation\n * - MAJOR (28 points): Significant damage\n * - MODERATE (16 points): Moderate effectiveness\n * - MINOR (4 points): Low damage points\n *\n * @public\n * @korean 급소시스템\n */\nexport const KOREAN_VITAL_POINTS: readonly VitalPoint[] = VITAL_POINTS_DATA;\n\n/**\n * Filter vital points by category (neurological, skeletal, vascular, etc.)\n *\n * @param category - The vital point category to filter by\n * @returns Array of vital points in that category\n *\n * @public\n * @korean 범주별급소\n */\nexport const getVitalPointsByCategory = (\n category: VitalPointCategory\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.category === category);\n};\n\n/**\n * Filter vital points by body region ID prefix (head_, torso_, arm_, leg_)\n *\n * @param regionPrefix - Region prefix to filter by (e.g., \"head_\", \"torso_\")\n * @returns Array of vital points in that region\n *\n * @public\n * @korean 부위별급소\n */\nexport const getVitalPointsByRegion = (regionPrefix: string): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(regionPrefix));\n};\n\n/**\n * Get a specific vital point by its unique ID\n *\n * @param id - Unique vital point identifier\n * @returns The vital point or undefined if not found\n *\n * @public\n * @korean 급소검색\n */\nexport const getVitalPointById = (id: string): VitalPoint | undefined => {\n return KOREAN_VITAL_POINTS.find((vp) => vp.id === id);\n};\n\n/**\n * Get vital points that are most effective with a specific trigram stance\n *\n * @param stance - Trigram stance to check effectiveness for\n * @returns Array of vital points effective for that stance\n *\n * @public\n * @korean 자세별급소\n */\nexport const getVitalPointsByStance = (stance: TrigramStance): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) =>\n vp.effectiveStances.includes(stance)\n );\n};\n\n/**\n * Get vital points by targeting difficulty range\n *\n * @param minDifficulty - Minimum difficulty (0.0 to 1.0)\n * @param maxDifficulty - Maximum difficulty (0.0 to 1.0)\n * @returns Array of vital points within difficulty range\n *\n * @public\n * @korean 난이도별급소\n */\nexport const getVitalPointsByDifficulty = (\n minDifficulty: number,\n maxDifficulty: number\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter(\n (vp) =>\n vp.targetingDifficulty >= minDifficulty &&\n vp.targetingDifficulty <= maxDifficulty\n );\n};\n\n/**\n * Get vital points by severity level\n *\n * @param severity - Severity level to filter by\n * @returns Array of vital points at that severity\n *\n * @public\n * @korean 심각도별급소\n */\nexport const getVitalPointsBySeverity = (\n severity: VitalPointSeverity\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.severity === severity);\n};\n\n/**\n * Get vital points statistics for the complete 70-point system\n *\n * @returns Statistics about the vital points system\n *\n * @public\n * @korean 급소통계\n */\nexport const getVitalPointsStats = () => {\n const stats = {\n total: KOREAN_VITAL_POINTS.length,\n byRegion: {\n head: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"head_\")).length,\n torso: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"torso_\")).length,\n arms: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"arm_\")).length,\n legs: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"leg_\")).length,\n },\n bySeverity: {\n lethal: getVitalPointsBySeverity(VitalPointSeverity.LETHAL).length,\n critical: getVitalPointsBySeverity(VitalPointSeverity.CRITICAL).length,\n major: getVitalPointsBySeverity(VitalPointSeverity.MAJOR).length,\n moderate: getVitalPointsBySeverity(VitalPointSeverity.MODERATE).length,\n minor: getVitalPointsBySeverity(VitalPointSeverity.MINOR).length,\n },\n byCategory: {\n neurological: getVitalPointsByCategory(VitalPointCategory.NEUROLOGICAL).length,\n skeletal: getVitalPointsByCategory(VitalPointCategory.SKELETAL).length,\n vascular: getVitalPointsByCategory(VitalPointCategory.VASCULAR).length,\n organ: getVitalPointsByCategory(VitalPointCategory.ORGAN).length,\n joint: getVitalPointsByCategory(VitalPointCategory.JOINT).length,\n muscular: getVitalPointsByCategory(VitalPointCategory.MUSCULAR).length,\n respiratory: getVitalPointsByCategory(VitalPointCategory.RESPIRATORY).length,\n },\n };\n \n return stats;\n};\n\nexport default KOREAN_VITAL_POINTS;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA2CA,IAAa,sBAA6C;;;;;;;;;;AAW1D,IAAa,4BACX,aACiB;CACjB,OAAO,oBAAoB,QAAQ,OAAO,GAAG,aAAa,SAAS;;;;;;;;;;;AAYrE,IAAa,0BAA0B,iBAAuC;CAC5E,OAAO,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,aAAa,CAAC;;;;;;;;;;;AAY3E,IAAa,qBAAqB,OAAuC;CACvE,OAAO,oBAAoB,MAAM,OAAO,GAAG,OAAO,GAAG;;;;;;;;;;;AAYvD,IAAa,0BAA0B,WAAwC;CAC7E,OAAO,oBAAoB,QAAQ,OACjC,GAAG,iBAAiB,SAAS,OAAO,CACrC;;;;;;;;;;;;AAaH,IAAa,8BACX,eACA,kBACiB;CACjB,OAAO,oBAAoB,QACxB,OACC,GAAG,uBAAuB,iBAC1B,GAAG,uBAAuB,cAC7B;;;;;;;;;;;AAYH,IAAa,4BACX,aACiB;CACjB,OAAO,oBAAoB,QAAQ,OAAO,GAAG,aAAa,SAAS;;;;;;;;;;AAWrE,IAAa,4BAA4B;CA2BvC,OAAO;EAzBL,OAAO,oBAAoB;EAC3B,UAAU;GACR,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,QAAQ,CAAC,CAAC;GACpE,OAAO,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,SAAS,CAAC,CAAC;GACtE,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,OAAO,CAAC,CAAC;GACnE,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,OAAO,CAAC,CAAC;GACpE;EACD,YAAY;GACV,QAAQ,yBAAyB,mBAAmB,OAAO,CAAC;GAC5D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC3D;EACD,YAAY;GACV,cAAc,yBAAyB,mBAAmB,aAAa,CAAC;GACxE,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,aAAa,yBAAyB,mBAAmB,YAAY,CAAC;GACvE;EAGI"}
1
+ {"version":3,"file":"KoreanVitalPoints.js","names":[],"sources":["../../../src/systems/vitalpoint/KoreanVitalPoints.ts"],"sourcesContent":["/**\n * Korean Vital Points (급소) - Complete 70-Point System\n *\n * This module provides the complete Korean martial arts vital point system\n * with all 70 anatomical targets. This is the primary export used by all\n * combat and training components.\n *\n * **Architecture Note**: This module re-exports VITAL_POINTS_DATA as\n * KOREAN_VITAL_POINTS to maintain backwards compatibility while providing\n * the complete 70-point system. All new code should use VITAL_POINTS_DATA\n * directly from VitalPointsData.ts.\n *\n * @module systems/vitalpoint/KoreanVitalPoints\n * @see {@link ./VitalPointsData.ts} for the complete data source\n */\n\nimport {\n TrigramStance,\n VitalPointCategory,\n VitalPointSeverity,\n} from \"../../types/common\";\nimport { VitalPoint } from \"./types\";\nimport { VITAL_POINTS_DATA } from \"./VitalPointsData\";\n\n/**\n * Complete Korean vital points (급소) system - All 70 anatomical targets\n *\n * **Distribution**:\n * - Head: 12 points (neurological, vascular, skeletal)\n * - Torso: 24 points (organs, ribs, spine, respiratory)\n * - Arms: 17 points (joints, nerves, skeletal)\n * - Legs: 17 points (joints, nerves, mobility)\n *\n * **Severity Levels**:\n * - LETHAL (4 points): Life-threatening strikes\n * - CRITICAL (18 points): Severe incapacitation\n * - MAJOR (28 points): Significant damage\n * - MODERATE (16 points): Moderate effectiveness\n * - MINOR (4 points): Low damage points\n *\n * @korean 급소시스템\n */\nexport const KOREAN_VITAL_POINTS: readonly VitalPoint[] = VITAL_POINTS_DATA;\n\n/**\n * Filter vital points by category (neurological, skeletal, vascular, etc.)\n *\n * @param category - The vital point category to filter by\n * @returns Array of vital points in that category\n *\n * @korean 범주별급소\n */\nexport const getVitalPointsByCategory = (\n category: VitalPointCategory\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.category === category);\n};\n\n/**\n * Filter vital points by body region ID prefix (head_, torso_, arm_, leg_)\n *\n * @param regionPrefix - Region prefix to filter by (e.g., \"head_\", \"torso_\")\n * @returns Array of vital points in that region\n *\n * @korean 부위별급소\n */\nexport const getVitalPointsByRegion = (regionPrefix: string): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(regionPrefix));\n};\n\n/**\n * Get a specific vital point by its unique ID\n *\n * @param id - Unique vital point identifier\n * @returns The vital point or undefined if not found\n *\n * @korean 급소검색\n */\nexport const getVitalPointById = (id: string): VitalPoint | undefined => {\n return KOREAN_VITAL_POINTS.find((vp) => vp.id === id);\n};\n\n/**\n * Get vital points that are most effective with a specific trigram stance\n *\n * @param stance - Trigram stance to check effectiveness for\n * @returns Array of vital points effective for that stance\n *\n * @korean 자세별급소\n */\nexport const getVitalPointsByStance = (stance: TrigramStance): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) =>\n vp.effectiveStances.includes(stance)\n );\n};\n\n/**\n * Get vital points by targeting difficulty range\n *\n * @param minDifficulty - Minimum difficulty (0.0 to 1.0)\n * @param maxDifficulty - Maximum difficulty (0.0 to 1.0)\n * @returns Array of vital points within difficulty range\n *\n * @korean 난이도별급소\n */\nexport const getVitalPointsByDifficulty = (\n minDifficulty: number,\n maxDifficulty: number\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter(\n (vp) =>\n vp.targetingDifficulty >= minDifficulty &&\n vp.targetingDifficulty <= maxDifficulty\n );\n};\n\n/**\n * Get vital points by severity level\n *\n * @param severity - Severity level to filter by\n * @returns Array of vital points at that severity\n *\n * @korean 심각도별급소\n */\nexport const getVitalPointsBySeverity = (\n severity: VitalPointSeverity\n): VitalPoint[] => {\n return KOREAN_VITAL_POINTS.filter((vp) => vp.severity === severity);\n};\n\n/**\n * Get vital points statistics for the complete 70-point system\n *\n * @returns Statistics about the vital points system\n *\n * @korean 급소통계\n */\nexport const getVitalPointsStats = () => {\n const stats = {\n total: KOREAN_VITAL_POINTS.length,\n byRegion: {\n head: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"head_\")).length,\n torso: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"torso_\")).length,\n arms: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"arm_\")).length,\n legs: KOREAN_VITAL_POINTS.filter((vp) => vp.id.startsWith(\"leg_\")).length,\n },\n bySeverity: {\n lethal: getVitalPointsBySeverity(VitalPointSeverity.LETHAL).length,\n critical: getVitalPointsBySeverity(VitalPointSeverity.CRITICAL).length,\n major: getVitalPointsBySeverity(VitalPointSeverity.MAJOR).length,\n moderate: getVitalPointsBySeverity(VitalPointSeverity.MODERATE).length,\n minor: getVitalPointsBySeverity(VitalPointSeverity.MINOR).length,\n },\n byCategory: {\n neurological: getVitalPointsByCategory(VitalPointCategory.NEUROLOGICAL).length,\n skeletal: getVitalPointsByCategory(VitalPointCategory.SKELETAL).length,\n vascular: getVitalPointsByCategory(VitalPointCategory.VASCULAR).length,\n organ: getVitalPointsByCategory(VitalPointCategory.ORGAN).length,\n joint: getVitalPointsByCategory(VitalPointCategory.JOINT).length,\n muscular: getVitalPointsByCategory(VitalPointCategory.MUSCULAR).length,\n respiratory: getVitalPointsByCategory(VitalPointCategory.RESPIRATORY).length,\n },\n };\n \n return stats;\n};\n\nexport default KOREAN_VITAL_POINTS;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AA0CA,IAAa,sBAA6C;;;;;;;;;AAU1D,IAAa,4BACX,aACiB;CACjB,OAAO,oBAAoB,QAAQ,OAAO,GAAG,aAAa,SAAS;;;;;;;;;;AAWrE,IAAa,0BAA0B,iBAAuC;CAC5E,OAAO,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,aAAa,CAAC;;;;;;;;;;AAW3E,IAAa,qBAAqB,OAAuC;CACvE,OAAO,oBAAoB,MAAM,OAAO,GAAG,OAAO,GAAG;;;;;;;;;;AAWvD,IAAa,0BAA0B,WAAwC;CAC7E,OAAO,oBAAoB,QAAQ,OACjC,GAAG,iBAAiB,SAAS,OAAO,CACrC;;;;;;;;;;;AAYH,IAAa,8BACX,eACA,kBACiB;CACjB,OAAO,oBAAoB,QACxB,OACC,GAAG,uBAAuB,iBAC1B,GAAG,uBAAuB,cAC7B;;;;;;;;;;AAWH,IAAa,4BACX,aACiB;CACjB,OAAO,oBAAoB,QAAQ,OAAO,GAAG,aAAa,SAAS;;;;;;;;;AAUrE,IAAa,4BAA4B;CA2BvC,OAAO;EAzBL,OAAO,oBAAoB;EAC3B,UAAU;GACR,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,QAAQ,CAAC,CAAC;GACpE,OAAO,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,SAAS,CAAC,CAAC;GACtE,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,OAAO,CAAC,CAAC;GACnE,MAAM,oBAAoB,QAAQ,OAAO,GAAG,GAAG,WAAW,OAAO,CAAC,CAAC;GACpE;EACD,YAAY;GACV,QAAQ,yBAAyB,mBAAmB,OAAO,CAAC;GAC5D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC3D;EACD,YAAY;GACV,cAAc,yBAAyB,mBAAmB,aAAa,CAAC;GACxE,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,OAAO,yBAAyB,mBAAmB,MAAM,CAAC;GAC1D,UAAU,yBAAyB,mBAAmB,SAAS,CAAC;GAChE,aAAa,yBAAyB,mBAAmB,YAAY,CAAC;GACvE;EAGI"}
@@ -24,7 +24,6 @@ import { VitalPoint } from "./types";
24
24
  * - Arms: 17 points (각 8-9 per arm)
25
25
  * - Legs: 17 points (각 8-9 per leg)
26
26
  *
27
- * @public
28
27
  * @korean 급소데이터베이스
29
28
  */
30
29
  export declare const VITAL_POINTS_DATA: readonly VitalPoint[];
@@ -34,7 +33,6 @@ export declare const VITAL_POINTS_DATA: readonly VitalPoint[];
34
33
  * @param region - Body region to filter by
35
34
  * @returns Array of vital points in that region
36
35
  *
37
- * @public
38
36
  * @korean 부위별급소
39
37
  */
40
38
  export declare function getVitalPointsByRegion(region: BodyRegion): readonly VitalPoint[];
@@ -43,7 +41,6 @@ export declare function getVitalPointsByRegion(region: BodyRegion): readonly Vit
43
41
  *
44
42
  * @returns Total number of vital points
45
43
  *
46
- * @public
47
44
  * @korean 급소총개수
48
45
  */
49
46
  export declare function getTotalVitalPointsCount(): number;
@@ -1 +1 @@
1
- {"version":3,"file":"VitalPointsData.d.ts","sourceRoot":"","sources":["../../../src/systems/vitalpoint/VitalPointsData.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,UAAU,EAKX,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;;;;;;;;;;;;GAaG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,UAAU,EAkqDzC,CAAC;AAEX;;;;;;;;GAQG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,GACjB,SAAS,UAAU,EAAE,CAqBvB;AAED;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAED,eAAe,iBAAiB,CAAC"}
1
+ {"version":3,"file":"VitalPointsData.d.ts","sourceRoot":"","sources":["../../../src/systems/vitalpoint/VitalPointsData.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;GAYG;AAEH,OAAO,EACL,UAAU,EAKX,MAAM,SAAS,CAAC;AAEjB,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,iBAAiB,EAAE,SAAS,UAAU,EAkqDzC,CAAC;AAEX;;;;;;;GAOG;AACH,wBAAgB,sBAAsB,CACpC,MAAM,EAAE,UAAU,GACjB,SAAS,UAAU,EAAE,CAqBvB;AAED;;;;;;GAMG;AACH,wBAAgB,wBAAwB,IAAI,MAAM,CAEjD;AAED,eAAe,iBAAiB,CAAC"}
@@ -25,7 +25,6 @@ import { EffectIntensity } from "../effects.js";
25
25
  * - Arms: 17 points (각 8-9 per arm)
26
26
  * - Legs: 17 points (각 8-9 per leg)
27
27
  *
28
- * @public
29
28
  * @korean 급소데이터베이스
30
29
  */
31
30
  var VITAL_POINTS_DATA = [
@@ -1 +1 @@
1
- {"version":3,"file":"VitalPointsData.js","names":[],"sources":["../../../src/systems/vitalpoint/VitalPointsData.ts"],"sourcesContent":["/**\n * Comprehensive Korean Vital Points Database (급소 데이터베이스)\n *\n * **Korean**: 한국 무술 급소 시스템\n *\n * Contains all 70 Korean martial arts vital points (급소) based on traditional\n * martial arts knowledge and anatomical targeting. Points are organized by\n * body region and categorized by physiological system affected.\n *\n * @module systems/vitalpoint/VitalPointsData\n * @category Vital Point System\n * @korean 급소데이터\n */\n\nimport {\n BodyRegion,\n TrigramStance,\n VitalPointCategory,\n VitalPointEffectType,\n VitalPointSeverity,\n} from \"@/types\";\nimport { EffectIntensity } from \"../effects\";\nimport { VitalPoint } from \"./types\";\n\n/**\n * Complete database of 70 Korean vital points organized by body region.\n *\n * **Korean**: 70개 급소 데이터베이스\n *\n * Distribution:\n * - Head: 12 points\n * - Torso: 24 points\n * - Arms: 17 points (각 8-9 per arm)\n * - Legs: 17 points (각 8-9 per leg)\n *\n * @public\n * @korean 급소데이터베이스\n */\nexport const VITAL_POINTS_DATA: readonly VitalPoint[] = [\n // ============= HEAD REGION (12 points) =============\n {\n id: \"head_temple\",\n names: {\n korean: \"태양혈\",\n english: \"Temple\",\n romanized: \"taeyang-hyeol\",\n },\n position: { x: 100, y: 50 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 35,\n effects: [\n {\n id: \"stun_major\",\n type: VitalPointEffectType.STUN,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: { korean: \"심각한 기절\", english: \"Severe stunning\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"관자놀이의 압박점, 뇌진탕 위험\",\n english: \"Pressure point at temple, concussion risk\",\n romanized: \"gwanja-nori-ui apbakjeom\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.JIN],\n },\n {\n id: \"head_jaw\",\n names: {\n korean: \"턱끝\",\n english: \"Jaw Point\",\n romanized: \"teok-kkeut\",\n },\n position: { x: 105, y: 80 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"턱 끝 타격으로 뇌진탕 유발\",\n english: \"Jaw strike causes concussion\",\n romanized: \"teok-kkeut tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"head_nose\",\n names: {\n korean: \"코\",\n english: \"Nose Bridge\",\n romanized: \"ko\",\n },\n position: { x: 102, y: 65 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"코뼈 골절, 시야 방해\",\n english: \"Nasal bone fracture, vision impairment\",\n romanized: \"koppyeo goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"head_eye\",\n names: {\n korean: \"눈\",\n english: \"Eye\",\n romanized: \"nun\",\n },\n position: { x: 98, y: 55 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [],\n description: {\n korean: \"눈 공격, 실명 위험\",\n english: \"Eye strike, blindness risk\",\n romanized: \"nun gonggyeok\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_ear\",\n names: {\n korean: \"귀\",\n english: \"Ear\",\n romanized: \"gwi\",\n },\n position: { x: 90, y: 60 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [\n {\n id: \"balance_loss\",\n type: VitalPointEffectType.DISORIENTATION,\n intensity: EffectIntensity.MEDIUM,\n duration: 2500,\n description: {\n korean: \"평형 감각 상실 및 청력 손상\",\n english: \"Balance and hearing impairment\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"고막 손상, 평형 감각 상실\",\n english: \"Eardrum damage, balance loss\",\n romanized: \"gomak sonsang\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON],\n },\n {\n id: \"head_back_skull\",\n names: {\n korean: \"뒤통수\",\n english: \"Back of Skull\",\n romanized: \"dwi-tongsu\",\n },\n position: { x: 80, y: 50 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 50,\n effects: [\n {\n id: \"unconsciousness\",\n type: VitalPointEffectType.UNCONSCIOUSNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 10000,\n description: {\n korean: \"즉각적 무의식\",\n english: \"Instant unconsciousness\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"뇌간 손상, 즉각적 무의식\",\n english: \"Brainstem damage, instant unconsciousness\",\n romanized: \"noegan sonsang\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"head_crown\",\n names: {\n korean: \"정수리\",\n english: \"Crown\",\n romanized: \"jeongsu-ri\",\n },\n position: { x: 100, y: 30 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [],\n description: {\n korean: \"두개골 타격, 뇌 손상\",\n english: \"Skull impact, brain damage\",\n romanized: \"dugaegol tagyeok\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.GEON],\n },\n {\n id: \"head_philtrum\",\n names: {\n korean: \"인중\",\n english: \"Philtrum\",\n romanized: \"injung\",\n },\n position: { x: 102, y: 70 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"인중 타격, 통증 및 기절\",\n english: \"Philtrum strike, pain and stunning\",\n romanized: \"injung tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_side_neck\",\n names: {\n korean: \"목옆\",\n english: \"Side Neck\",\n romanized: \"mog-yeop\",\n },\n position: { x: 92, y: 85 },\n category: VitalPointCategory.VASCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 42,\n effects: [\n {\n id: \"unconsciousness_carotid\",\n type: VitalPointEffectType.UNCONSCIOUSNESS,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"경동맥 압박으로 실신\",\n english: \"Carotid compression unconsciousness\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"경동맥 압박, 실신 유발\",\n english: \"Carotid compression, unconsciousness\",\n romanized: \"gyeongdongmaek apbak\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.SON, TrigramStance.GAM],\n },\n {\n id: \"head_throat\",\n names: {\n korean: \"목\",\n english: \"Throat\",\n romanized: \"mok\",\n },\n position: { x: 102, y: 90 },\n category: VitalPointCategory.RESPIRATORY,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 55,\n effects: [\n {\n id: \"breathing_difficulty\",\n type: VitalPointEffectType.BREATHLESSNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 5000,\n description: {\n korean: \"호흡 곤란\",\n english: \"Severe breathing difficulty\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"기도 폐쇄, 호흡 곤란\",\n english: \"Airway closure, breathing difficulty\",\n romanized: \"gido pyeshwe\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_mastoid\",\n names: {\n korean: \"유양돌기\",\n english: \"Mastoid Process\",\n romanized: \"yuyang-dolgi\",\n },\n position: { x: 88, y: 75 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"귀 뒤 돌기, 평형 감각 손상\",\n english: \"Behind ear protrusion, balance disruption\",\n romanized: \"gwi dwi dolgi\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"head_chin\",\n names: {\n korean: \"턱\",\n english: \"Chin\",\n romanized: \"teok\",\n },\n position: { x: 102, y: 82 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"턱 중앙 타격, 뇌진탕\",\n english: \"Chin center strike, concussion\",\n romanized: \"teok jungang tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n\n // ============= TORSO REGION (24 points) =============\n {\n id: \"torso_solar_plexus\",\n names: {\n korean: \"명치\",\n english: \"Solar Plexus\",\n romanized: \"myeongchi\",\n },\n position: { x: 102, y: 140 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"breath_knocked_out\",\n type: VitalPointEffectType.BREATHLESSNESS,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: {\n korean: \"호흡 곤란 및 신경 충격\",\n english: \"Breathing difficulty and nerve shock\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신경총 타격, 호흡 곤란\",\n english: \"Nerve plexus strike, breathing difficulty\",\n romanized: \"singyeongjong tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"torso_heart\",\n names: {\n korean: \"심장\",\n english: \"Heart Region\",\n romanized: \"simjang\",\n },\n position: { x: 98, y: 130 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 60,\n effects: [\n {\n id: \"cardiac_disruption\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.EXTREME,\n duration: 10000,\n description: { korean: \"심장 충격\", english: \"Cardiac disruption\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"심장 충격, 심정지 위험\",\n english: \"Heart shock, cardiac arrest risk\",\n romanized: \"simjang chunggyeok\",\n },\n targetingDifficulty: 0.9,\n effectiveStances: [TrigramStance.JIN, TrigramStance.LI],\n },\n {\n id: \"torso_liver\",\n names: {\n korean: \"간\",\n english: \"Liver\",\n romanized: \"gan\",\n },\n position: { x: 110, y: 145 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 45,\n effects: [\n {\n id: \"internal_bleeding\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"내출혈 및 극심한 통증\",\n english: \"Internal bleeding and severe pain\",\n },\n stackable: false,\n },\n {\n id: \"liver_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 6000,\n description: { korean: \"간 타격 통증\", english: \"Liver strike pain\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"간 손상, 내출혈\",\n english: \"Liver damage, internal bleeding\",\n romanized: \"gan sonsang\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_spleen\",\n names: {\n korean: \"비장\",\n english: \"Spleen\",\n romanized: \"bijang\",\n },\n position: { x: 94, y: 145 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 45,\n effects: [\n {\n id: \"spleen_rupture_risk\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"비장 파열 위험\",\n english: \"Spleen rupture risk\",\n },\n stackable: false,\n },\n {\n id: \"internal_bleeding_spleen\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"내출혈로 인한 약화\",\n english: \"Weakness from internal bleeding\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"비장 파열 위험\",\n english: \"Spleen rupture risk\",\n romanized: \"bijang paryeol\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_kidney_left\",\n names: {\n korean: \"좌신장\",\n english: \"Left Kidney\",\n romanized: \"jwa-sinjang\",\n },\n position: { x: 94, y: 155 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 38,\n effects: [\n {\n id: \"kidney_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 4000,\n description: {\n korean: \"신장 타격 극심한 통증\",\n english: \"Severe kidney strike pain\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신장 타격, 심한 통증\",\n english: \"Kidney strike, severe pain\",\n romanized: \"sinjang tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_kidney_right\",\n names: {\n korean: \"우신장\",\n english: \"Right Kidney\",\n romanized: \"u-sinjang\",\n },\n position: { x: 110, y: 155 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 38,\n effects: [\n {\n id: \"kidney_pain_right\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 4000,\n description: {\n korean: \"신장 타격 극심한 통증\",\n english: \"Severe kidney strike pain\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신장 타격, 심한 통증\",\n english: \"Kidney strike, severe pain\",\n romanized: \"sinjang tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_ribs_floating\",\n names: {\n korean: \"갈비뼈\",\n english: \"Floating Ribs\",\n romanized: \"galbi-ppyeo\",\n },\n position: { x: 106, y: 150 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"늑골 골절, 내장 손상\",\n english: \"Rib fracture, organ damage\",\n romanized: \"neukgol goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_sternum\",\n names: {\n korean: \"흉골\",\n english: \"Sternum\",\n romanized: \"hyunggol\",\n },\n position: { x: 102, y: 130 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [],\n description: {\n korean: \"흉골 골절, 심장 압박\",\n english: \"Sternum fracture, heart compression\",\n romanized: \"hyunggol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_spine_upper\",\n names: {\n korean: \"상부척추\",\n english: \"Upper Spine\",\n romanized: \"sangbu-cheokchu\",\n },\n position: { x: 80, y: 120 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 55,\n effects: [\n {\n id: \"spinal_trauma\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.EXTREME,\n duration: 15000,\n description: {\n korean: \"척추 손상으로 마비\",\n english: \"Spinal trauma paralysis\",\n },\n stackable: false,\n },\n {\n id: \"nerve_disruption_spine\",\n type: VitalPointEffectType.NERVE_DISRUPTION,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"신경 차단\",\n english: \"Nerve pathway disruption\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"척추 손상, 마비 위험\",\n english: \"Spine damage, paralysis risk\",\n romanized: \"cheokchu sonsang\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_spine_mid\",\n names: {\n korean: \"중부척추\",\n english: \"Mid Spine\",\n romanized: \"jungbu-cheokchu\",\n },\n position: { x: 80, y: 145 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 42,\n effects: [\n {\n id: \"nerve_damage_mid_spine\",\n type: VitalPointEffectType.NERVE_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: { korean: \"신경 손상\", english: \"Nerve damage\" },\n stackable: false,\n },\n {\n id: \"spinal_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 6000,\n description: { korean: \"척추 통증\", english: \"Spinal pain\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"척추 타격, 신경 손상\",\n english: \"Spine strike, nerve damage\",\n romanized: \"cheokchu tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_groin\",\n names: {\n korean: \"사타구니\",\n english: \"Groin\",\n romanized: \"sata-guni\",\n },\n position: { x: 102, y: 170 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 50,\n effects: [\n {\n id: \"extreme_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.EXTREME,\n duration: 5000,\n description: { korean: \"극심한 통증\", english: \"Extreme pain\" },\n stackable: false,\n },\n {\n id: \"groin_stun\",\n type: VitalPointEffectType.STUN,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: {\n korean: \"충격으로 인한 기절\",\n english: \"Shock-induced incapacitation\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"사타구니 타격, 극심한 통증\",\n english: \"Groin strike, extreme pain\",\n romanized: \"sata-guni tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"torso_bladder\",\n names: {\n korean: \"방광\",\n english: \"Bladder\",\n romanized: \"banggwang\",\n },\n position: { x: 102, y: 165 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"방광 압박, 통증 및 기능 장애\",\n english: \"Bladder compression, pain and dysfunction\",\n romanized: \"banggwang apbak\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n // Additional torso points (continuing to 24 total)\n {\n id: \"torso_collarbone_left\",\n names: {\n korean: \"좌쇄골\",\n english: \"Left Collarbone\",\n romanized: \"jwa-swaegol\",\n },\n position: { x: 92, y: 110 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"쇄골 골절, 팔 움직임 제한\",\n english: \"Collarbone fracture, arm movement limitation\",\n romanized: \"swaegol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_collarbone_right\",\n names: {\n korean: \"우쇄골\",\n english: \"Right Collarbone\",\n romanized: \"u-swaegol\",\n },\n position: { x: 112, y: 110 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"쇄골 골절, 팔 움직임 제한\",\n english: \"Collarbone fracture, arm movement limitation\",\n romanized: \"swaegol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_armpit_nerve\",\n names: {\n korean: \"겨드랑이신경\",\n english: \"Armpit Nerve\",\n romanized: \"gyeodeu-rangi singyeong\",\n },\n position: { x: 85, y: 120 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"신경총 타격, 팔 마비\",\n english: \"Nerve plexus strike, arm paralysis\",\n romanized: \"singyeongjong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"torso_abs_center\",\n names: {\n korean: \"복부중앙\",\n english: \"Abdominal Center\",\n romanized: \"bokbu-jungang\",\n },\n position: { x: 102, y: 148 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"복근 손상, 호흡 곤란\",\n english: \"Abdominal muscle damage, breathing difficulty\",\n romanized: \"bokgeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_diaphragm\",\n names: {\n korean: \"횡격막\",\n english: \"Diaphragm\",\n romanized: \"hyeokgyeongmak\",\n },\n position: { x: 102, y: 142 },\n category: VitalPointCategory.RESPIRATORY,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"횡격막 충격, 호흡 정지\",\n english: \"Diaphragm shock, breathing cessation\",\n romanized: \"hyeokgyeongmak chunggyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"torso_lower_back\",\n names: {\n korean: \"요추\",\n english: \"Lower Back\",\n romanized: \"yochu\",\n },\n position: { x: 80, y: 160 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 36,\n effects: [],\n description: {\n korean: \"요추 타격, 다리 통증\",\n english: \"Lower back strike, leg pain\",\n romanized: \"yochu tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_side_ribs_left\",\n names: {\n korean: \"좌측늑골\",\n english: \"Left Side Ribs\",\n romanized: \"jwa-cheuk neukgol\",\n },\n position: { x: 90, y: 140 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 33,\n effects: [],\n description: {\n korean: \"늑골 타격, 호흡 곤란\",\n english: \"Rib strike, breathing difficulty\",\n romanized: \"neukgol tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"torso_side_ribs_right\",\n names: {\n korean: \"우측늑골\",\n english: \"Right Side Ribs\",\n romanized: \"u-cheuk neukgol\",\n },\n position: { x: 114, y: 140 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 33,\n effects: [],\n description: {\n korean: \"늑골 타격, 호흡 곤란\",\n english: \"Rib strike, breathing difficulty\",\n romanized: \"neukgol tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"torso_navel\",\n names: {\n korean: \"배꼽\",\n english: \"Navel\",\n romanized: \"bae-kkop\",\n },\n position: { x: 102, y: 152 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 27,\n effects: [],\n description: {\n korean: \"복부 중심 타격\",\n english: \"Abdominal center strike\",\n romanized: \"bokbu jungsim tagyeok\",\n },\n targetingDifficulty: 0.4,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_shoulder_blade_left\",\n names: {\n korean: \"좌견갑골\",\n english: \"Left Shoulder Blade\",\n romanized: \"jwa-gyeongapgol\",\n },\n position: { x: 75, y: 115 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"견갑골 타격, 팔 기능 저하\",\n english: \"Shoulder blade strike, arm function reduction\",\n romanized: \"gyeongapgol tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_shoulder_blade_right\",\n names: {\n korean: \"우견갑골\",\n english: \"Right Shoulder Blade\",\n romanized: \"u-gyeongapgol\",\n },\n position: { x: 129, y: 115 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"견갑골 타격, 팔 기능 저하\",\n english: \"Shoulder blade strike, arm function reduction\",\n romanized: \"gyeongapgol tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_tailbone\",\n names: {\n korean: \"미골\",\n english: \"Tailbone\",\n romanized: \"migol\",\n },\n position: { x: 80, y: 170 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 34,\n effects: [],\n description: {\n korean: \"미골 골절, 앉기 곤란\",\n english: \"Tailbone fracture, sitting difficulty\",\n romanized: \"migol goljeol\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GON, TrigramStance.JIN],\n },\n\n // ============= LEFT ARM REGION (8 points) =============\n {\n id: \"arm_left_shoulder\",\n names: {\n korean: \"좌어깨\",\n english: \"Left Shoulder\",\n romanized: \"jwa-eokkae\",\n },\n position: { x: 82, y: 110 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"어깨 관절 탈구\",\n english: \"Shoulder joint dislocation\",\n romanized: \"eokkae gwanjeol talgoo\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_left_bicep\",\n names: {\n korean: \"좌상완\",\n english: \"Left Bicep\",\n romanized: \"jwa-sangwan\",\n },\n position: { x: 78, y: 125 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"상완 근육 손상\",\n english: \"Bicep muscle damage\",\n romanized: \"sangwan geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"arm_left_elbow\",\n names: {\n korean: \"좌팔꿈치\",\n english: \"Left Elbow\",\n romanized: \"jwa-palkumchi\",\n },\n position: { x: 74, y: 142 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"팔꿈치 골절 또는 탈구\",\n english: \"Elbow fracture or dislocation\",\n romanized: \"palkumchi goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"arm_left_forearm\",\n names: {\n korean: \"좌전완\",\n english: \"Left Forearm\",\n romanized: \"jwa-jeonwan\",\n },\n position: { x: 72, y: 155 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"전완부 골절\",\n english: \"Forearm fracture\",\n romanized: \"jeonwanbu goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GAN],\n },\n {\n id: \"arm_left_wrist\",\n names: {\n korean: \"좌손목\",\n english: \"Left Wrist\",\n romanized: \"jwa-sonmok\",\n },\n position: { x: 70, y: 168 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"손목 골절 또는 염좌\",\n english: \"Wrist fracture or sprain\",\n romanized: \"sonmok goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_left_hand\",\n names: {\n korean: \"좌손등\",\n english: \"Left Hand\",\n romanized: \"jwa-sondeung\",\n },\n position: { x: 68, y: 178 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 16,\n effects: [],\n description: {\n korean: \"손등 타격, 기능 저하\",\n english: \"Hand strike, function reduction\",\n romanized: \"sondeung tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_left_radial_nerve\",\n names: {\n korean: \"좌요골신경\",\n english: \"Left Radial Nerve\",\n romanized: \"jwa-yogol singyeong\",\n },\n position: { x: 72, y: 148 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"요골 신경 타격, 팔 마비\",\n english: \"Radial nerve strike, arm paralysis\",\n romanized: \"yogol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"arm_left_ulnar_nerve\",\n names: {\n korean: \"좌척골신경\",\n english: \"Left Ulnar Nerve\",\n romanized: \"jwa-cheokgol singyeong\",\n },\n position: { x: 74, y: 150 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"척골 신경 타격, 손 기능 상실\",\n english: \"Ulnar nerve strike, hand function loss\",\n romanized: \"cheokgol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n\n // ============= RIGHT ARM REGION (9 points) =============\n {\n id: \"arm_right_shoulder\",\n names: {\n korean: \"우어깨\",\n english: \"Right Shoulder\",\n romanized: \"u-eokkae\",\n },\n position: { x: 122, y: 110 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"어깨 관절 탈구\",\n english: \"Shoulder joint dislocation\",\n romanized: \"eokkae gwanjeol talgoo\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_right_bicep\",\n names: {\n korean: \"우상완\",\n english: \"Right Bicep\",\n romanized: \"u-sangwan\",\n },\n position: { x: 126, y: 125 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"상완 근육 손상\",\n english: \"Bicep muscle damage\",\n romanized: \"sangwan geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"arm_right_elbow\",\n names: {\n korean: \"우팔꿈치\",\n english: \"Right Elbow\",\n romanized: \"u-palkumchi\",\n },\n position: { x: 130, y: 142 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"팔꿈치 골절 또는 탈구\",\n english: \"Elbow fracture or dislocation\",\n romanized: \"palkumchi goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"arm_right_forearm\",\n names: {\n korean: \"우전완\",\n english: \"Right Forearm\",\n romanized: \"u-jeonwan\",\n },\n position: { x: 132, y: 155 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"전완부 골절\",\n english: \"Forearm fracture\",\n romanized: \"jeonwanbu goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GAN],\n },\n {\n id: \"arm_right_wrist\",\n names: {\n korean: \"우손목\",\n english: \"Right Wrist\",\n romanized: \"u-sonmok\",\n },\n position: { x: 134, y: 168 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"손목 골절 또는 염좌\",\n english: \"Wrist fracture or sprain\",\n romanized: \"sonmok goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_right_hand\",\n names: {\n korean: \"우손등\",\n english: \"Right Hand\",\n romanized: \"u-sondeung\",\n },\n position: { x: 136, y: 178 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 16,\n effects: [],\n description: {\n korean: \"손등 타격, 기능 저하\",\n english: \"Hand strike, function reduction\",\n romanized: \"sondeung tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_right_radial_nerve\",\n names: {\n korean: \"우요골신경\",\n english: \"Right Radial Nerve\",\n romanized: \"u-yogol singyeong\",\n },\n position: { x: 132, y: 148 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"요골 신경 타격, 팔 마비\",\n english: \"Radial nerve strike, arm paralysis\",\n romanized: \"yogol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"arm_right_ulnar_nerve\",\n names: {\n korean: \"우척골신경\",\n english: \"Right Ulnar Nerve\",\n romanized: \"u-cheokgol singyeong\",\n },\n position: { x: 130, y: 150 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"척골 신경 타격, 손 기능 상실\",\n english: \"Ulnar nerve strike, hand function loss\",\n romanized: \"cheokgol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_right_tricep\",\n names: {\n korean: \"우삼두\",\n english: \"Right Tricep\",\n romanized: \"u-samdu\",\n },\n position: { x: 128, y: 135 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 17,\n effects: [],\n description: {\n korean: \"삼두근 손상\",\n english: \"Tricep muscle damage\",\n romanized: \"samdugeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON],\n },\n\n // ============= LEFT LEG REGION (8 points) =============\n {\n id: \"leg_left_thigh\",\n names: {\n korean: \"좌대퇴\",\n english: \"Left Thigh\",\n romanized: \"jwa-daetwe\",\n },\n position: { x: 94, y: 185 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"대퇴근 손상, 이동 곤란\",\n english: \"Thigh muscle damage, movement difficulty\",\n romanized: \"daetwegeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"leg_left_knee\",\n names: {\n korean: \"좌무릎\",\n english: \"Left Knee\",\n romanized: \"jwa-mureup\",\n },\n position: { x: 94, y: 205 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [\n {\n id: \"knee_destruction\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"무릎 파괴로 보행 불가\",\n english: \"Knee destruction, unable to walk\",\n },\n stackable: false,\n },\n {\n id: \"mobility_loss\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.MEDIUM,\n duration: 8000,\n description: { korean: \"이동력 상실\", english: \"Mobility loss\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"무릎 관절 파괴, 보행 불가\",\n english: \"Knee joint destruction, unable to walk\",\n romanized: \"mureup gwanjeol pagoe\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_left_shin\",\n names: {\n korean: \"좌정강이\",\n english: \"Left Shin\",\n romanized: \"jwa-jeonggang-i\",\n },\n position: { x: 94, y: 220 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"정강이 골절\",\n english: \"Shin fracture\",\n romanized: \"jeonggang-i goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GAN],\n },\n {\n id: \"leg_left_ankle\",\n names: {\n korean: \"좌발목\",\n english: \"Left Ankle\",\n romanized: \"jwa-balmok\",\n },\n position: { x: 94, y: 235 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"발목 염좌 또는 골절\",\n english: \"Ankle sprain or fracture\",\n romanized: \"balmok yeomjwa\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_left_foot\",\n names: {\n korean: \"좌발등\",\n english: \"Left Foot\",\n romanized: \"jwa-baldeung\",\n },\n position: { x: 94, y: 245 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"발등 골절, 보행 곤란\",\n english: \"Foot fracture, walking difficulty\",\n romanized: \"baldeung goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GON],\n },\n {\n id: \"leg_left_calf\",\n names: {\n korean: \"좌종아리\",\n english: \"Left Calf\",\n romanized: \"jwa-jong-ari\",\n },\n position: { x: 92, y: 225 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 23,\n effects: [],\n description: {\n korean: \"종아리 근육 손상\",\n english: \"Calf muscle damage\",\n romanized: \"jong-ari geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"leg_left_achilles\",\n names: {\n korean: \"좌아킬레스건\",\n english: \"Left Achilles Tendon\",\n romanized: \"jwa-akilleseugeon\",\n },\n position: { x: 90, y: 238 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"achilles_rupture\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"아킬레스건 파열\",\n english: \"Achilles tendon rupture\",\n },\n stackable: false,\n },\n {\n id: \"movement_impossible\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: { korean: \"이동 불가\", english: \"Cannot move\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"아킬레스건 파열, 이동 불가\",\n english: \"Achilles tendon rupture, cannot move\",\n romanized: \"akilleseugeon paryeol\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI, TrigramStance.GON],\n },\n {\n id: \"leg_left_femoral_nerve\",\n names: {\n korean: \"좌대퇴신경\",\n english: \"Left Femoral Nerve\",\n romanized: \"jwa-daetwe singyeong\",\n },\n position: { x: 96, y: 180 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"대퇴 신경 타격, 다리 마비\",\n english: \"Femoral nerve strike, leg paralysis\",\n romanized: \"daetwe singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n\n // ============= RIGHT LEG REGION (9 points) =============\n {\n id: \"leg_right_thigh\",\n names: {\n korean: \"우대퇴\",\n english: \"Right Thigh\",\n romanized: \"u-daetwe\",\n },\n position: { x: 110, y: 185 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"대퇴근 손상, 이동 곤란\",\n english: \"Thigh muscle damage, movement difficulty\",\n romanized: \"daetwegeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"leg_right_knee\",\n names: {\n korean: \"우무릎\",\n english: \"Right Knee\",\n romanized: \"u-mureup\",\n },\n position: { x: 110, y: 205 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [\n {\n id: \"knee_destruction_right\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"무릎 파괴로 보행 불가\",\n english: \"Knee destruction, unable to walk\",\n },\n stackable: false,\n },\n {\n id: \"mobility_loss_right\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.MEDIUM,\n duration: 8000,\n description: { korean: \"이동력 상실\", english: \"Mobility loss\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"무릎 관절 파괴, 보행 불가\",\n english: \"Knee joint destruction, unable to walk\",\n romanized: \"mureup gwanjeol pagoe\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_right_shin\",\n names: {\n korean: \"우정강이\",\n english: \"Right Shin\",\n romanized: \"u-jeonggang-i\",\n },\n position: { x: 110, y: 220 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"정강이 골절\",\n english: \"Shin fracture\",\n romanized: \"jeonggang-i goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GAN],\n },\n {\n id: \"leg_right_ankle\",\n names: {\n korean: \"우발목\",\n english: \"Right Ankle\",\n romanized: \"u-balmok\",\n },\n position: { x: 110, y: 235 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"발목 염좌 또는 골절\",\n english: \"Ankle sprain or fracture\",\n romanized: \"balmok yeomjwa\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_right_foot\",\n names: {\n korean: \"우발등\",\n english: \"Right Foot\",\n romanized: \"u-baldeung\",\n },\n position: { x: 110, y: 245 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"발등 골절, 보행 곤란\",\n english: \"Foot fracture, walking difficulty\",\n romanized: \"baldeung goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GON],\n },\n {\n id: \"leg_right_calf\",\n names: {\n korean: \"우종아리\",\n english: \"Right Calf\",\n romanized: \"u-jong-ari\",\n },\n position: { x: 112, y: 225 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 23,\n effects: [],\n description: {\n korean: \"종아리 근육 손상\",\n english: \"Calf muscle damage\",\n romanized: \"jong-ari geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"leg_right_achilles\",\n names: {\n korean: \"우아킬레스건\",\n english: \"Right Achilles Tendon\",\n romanized: \"u-akilleseugeon\",\n },\n position: { x: 114, y: 238 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"achilles_rupture_right\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"아킬레스건 파열\",\n english: \"Achilles tendon rupture\",\n },\n stackable: false,\n },\n {\n id: \"movement_impossible_right\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: { korean: \"이동 불가\", english: \"Cannot move\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"아킬레스건 파열, 이동 불가\",\n english: \"Achilles tendon rupture, cannot move\",\n romanized: \"akilleseugeon paryeol\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI, TrigramStance.GON],\n },\n {\n id: \"leg_right_femoral_nerve\",\n names: {\n korean: \"우대퇴신경\",\n english: \"Right Femoral Nerve\",\n romanized: \"u-daetwe singyeong\",\n },\n position: { x: 108, y: 180 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"대퇴 신경 타격, 다리 마비\",\n english: \"Femoral nerve strike, leg paralysis\",\n romanized: \"daetwe singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"leg_right_peroneal_nerve\",\n names: {\n korean: \"우비골신경\",\n english: \"Right Peroneal Nerve\",\n romanized: \"u-bigol singyeong\",\n },\n position: { x: 112, y: 210 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 27,\n effects: [],\n description: {\n korean: \"비골 신경 타격, 발 기능 상실\",\n english: \"Peroneal nerve strike, foot function loss\",\n romanized: \"bigol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n] as const;\n\n/**\n * Gets vital points by body region.\n *\n * @param region - Body region to filter by\n * @returns Array of vital points in that region\n *\n * @public\n * @korean 부위별급소\n */\nexport function getVitalPointsByRegion(\n region: BodyRegion\n): readonly VitalPoint[] {\n // This is a simplified implementation - in production you'd map IDs to regions properly\n const regionPrefixes: Record<BodyRegion, string[]> = {\n [BodyRegion.HEAD]: [\"head_\"],\n [BodyRegion.NECK]: [\"head_side_neck\", \"head_throat\"],\n [BodyRegion.TORSO]: [\"torso_\"],\n [BodyRegion.LEFT_ARM]: [\"arm_left_\"],\n [BodyRegion.RIGHT_ARM]: [\"arm_right_\"],\n [BodyRegion.LEFT_LEG]: [\"leg_left_\"],\n [BodyRegion.RIGHT_LEG]: [\"leg_right_\"],\n [BodyRegion.CORE]: [\n \"torso_solar_plexus\",\n \"torso_diaphragm\",\n \"torso_abs_center\",\n ],\n };\n\n const prefixes = regionPrefixes[region] ?? [];\n return VITAL_POINTS_DATA.filter((vp) =>\n prefixes.some((prefix) => vp.id.startsWith(prefix))\n );\n}\n\n/**\n * Gets total count of vital points.\n *\n * @returns Total number of vital points\n *\n * @public\n * @korean 급소총개수\n */\nexport function getTotalVitalPointsCount(): number {\n return VITAL_POINTS_DATA.length;\n}\n\nexport default VITAL_POINTS_DATA;\n"],"mappings":"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"}
1
+ {"version":3,"file":"VitalPointsData.js","names":[],"sources":["../../../src/systems/vitalpoint/VitalPointsData.ts"],"sourcesContent":["/**\n * Comprehensive Korean Vital Points Database (급소 데이터베이스)\n *\n * **Korean**: 한국 무술 급소 시스템\n *\n * Contains all 70 Korean martial arts vital points (급소) based on traditional\n * martial arts knowledge and anatomical targeting. Points are organized by\n * body region and categorized by physiological system affected.\n *\n * @module systems/vitalpoint/VitalPointsData\n * @category Vital Point System\n * @korean 급소데이터\n */\n\nimport {\n BodyRegion,\n TrigramStance,\n VitalPointCategory,\n VitalPointEffectType,\n VitalPointSeverity,\n} from \"@/types\";\nimport { EffectIntensity } from \"../effects\";\nimport { VitalPoint } from \"./types\";\n\n/**\n * Complete database of 70 Korean vital points organized by body region.\n *\n * **Korean**: 70개 급소 데이터베이스\n *\n * Distribution:\n * - Head: 12 points\n * - Torso: 24 points\n * - Arms: 17 points (각 8-9 per arm)\n * - Legs: 17 points (각 8-9 per leg)\n *\n * @korean 급소데이터베이스\n */\nexport const VITAL_POINTS_DATA: readonly VitalPoint[] = [\n // ============= HEAD REGION (12 points) =============\n {\n id: \"head_temple\",\n names: {\n korean: \"태양혈\",\n english: \"Temple\",\n romanized: \"taeyang-hyeol\",\n },\n position: { x: 100, y: 50 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 35,\n effects: [\n {\n id: \"stun_major\",\n type: VitalPointEffectType.STUN,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: { korean: \"심각한 기절\", english: \"Severe stunning\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"관자놀이의 압박점, 뇌진탕 위험\",\n english: \"Pressure point at temple, concussion risk\",\n romanized: \"gwanja-nori-ui apbakjeom\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.JIN],\n },\n {\n id: \"head_jaw\",\n names: {\n korean: \"턱끝\",\n english: \"Jaw Point\",\n romanized: \"teok-kkeut\",\n },\n position: { x: 105, y: 80 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"턱 끝 타격으로 뇌진탕 유발\",\n english: \"Jaw strike causes concussion\",\n romanized: \"teok-kkeut tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"head_nose\",\n names: {\n korean: \"코\",\n english: \"Nose Bridge\",\n romanized: \"ko\",\n },\n position: { x: 102, y: 65 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"코뼈 골절, 시야 방해\",\n english: \"Nasal bone fracture, vision impairment\",\n romanized: \"koppyeo goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"head_eye\",\n names: {\n korean: \"눈\",\n english: \"Eye\",\n romanized: \"nun\",\n },\n position: { x: 98, y: 55 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [],\n description: {\n korean: \"눈 공격, 실명 위험\",\n english: \"Eye strike, blindness risk\",\n romanized: \"nun gonggyeok\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_ear\",\n names: {\n korean: \"귀\",\n english: \"Ear\",\n romanized: \"gwi\",\n },\n position: { x: 90, y: 60 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [\n {\n id: \"balance_loss\",\n type: VitalPointEffectType.DISORIENTATION,\n intensity: EffectIntensity.MEDIUM,\n duration: 2500,\n description: {\n korean: \"평형 감각 상실 및 청력 손상\",\n english: \"Balance and hearing impairment\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"고막 손상, 평형 감각 상실\",\n english: \"Eardrum damage, balance loss\",\n romanized: \"gomak sonsang\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON],\n },\n {\n id: \"head_back_skull\",\n names: {\n korean: \"뒤통수\",\n english: \"Back of Skull\",\n romanized: \"dwi-tongsu\",\n },\n position: { x: 80, y: 50 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 50,\n effects: [\n {\n id: \"unconsciousness\",\n type: VitalPointEffectType.UNCONSCIOUSNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 10000,\n description: {\n korean: \"즉각적 무의식\",\n english: \"Instant unconsciousness\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"뇌간 손상, 즉각적 무의식\",\n english: \"Brainstem damage, instant unconsciousness\",\n romanized: \"noegan sonsang\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"head_crown\",\n names: {\n korean: \"정수리\",\n english: \"Crown\",\n romanized: \"jeongsu-ri\",\n },\n position: { x: 100, y: 30 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [],\n description: {\n korean: \"두개골 타격, 뇌 손상\",\n english: \"Skull impact, brain damage\",\n romanized: \"dugaegol tagyeok\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.GEON],\n },\n {\n id: \"head_philtrum\",\n names: {\n korean: \"인중\",\n english: \"Philtrum\",\n romanized: \"injung\",\n },\n position: { x: 102, y: 70 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"인중 타격, 통증 및 기절\",\n english: \"Philtrum strike, pain and stunning\",\n romanized: \"injung tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_side_neck\",\n names: {\n korean: \"목옆\",\n english: \"Side Neck\",\n romanized: \"mog-yeop\",\n },\n position: { x: 92, y: 85 },\n category: VitalPointCategory.VASCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 42,\n effects: [\n {\n id: \"unconsciousness_carotid\",\n type: VitalPointEffectType.UNCONSCIOUSNESS,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"경동맥 압박으로 실신\",\n english: \"Carotid compression unconsciousness\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"경동맥 압박, 실신 유발\",\n english: \"Carotid compression, unconsciousness\",\n romanized: \"gyeongdongmaek apbak\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.SON, TrigramStance.GAM],\n },\n {\n id: \"head_throat\",\n names: {\n korean: \"목\",\n english: \"Throat\",\n romanized: \"mok\",\n },\n position: { x: 102, y: 90 },\n category: VitalPointCategory.RESPIRATORY,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 55,\n effects: [\n {\n id: \"breathing_difficulty\",\n type: VitalPointEffectType.BREATHLESSNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 5000,\n description: {\n korean: \"호흡 곤란\",\n english: \"Severe breathing difficulty\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"기도 폐쇄, 호흡 곤란\",\n english: \"Airway closure, breathing difficulty\",\n romanized: \"gido pyeshwe\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"head_mastoid\",\n names: {\n korean: \"유양돌기\",\n english: \"Mastoid Process\",\n romanized: \"yuyang-dolgi\",\n },\n position: { x: 88, y: 75 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"귀 뒤 돌기, 평형 감각 손상\",\n english: \"Behind ear protrusion, balance disruption\",\n romanized: \"gwi dwi dolgi\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"head_chin\",\n names: {\n korean: \"턱\",\n english: \"Chin\",\n romanized: \"teok\",\n },\n position: { x: 102, y: 82 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"턱 중앙 타격, 뇌진탕\",\n english: \"Chin center strike, concussion\",\n romanized: \"teok jungang tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n\n // ============= TORSO REGION (24 points) =============\n {\n id: \"torso_solar_plexus\",\n names: {\n korean: \"명치\",\n english: \"Solar Plexus\",\n romanized: \"myeongchi\",\n },\n position: { x: 102, y: 140 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"breath_knocked_out\",\n type: VitalPointEffectType.BREATHLESSNESS,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: {\n korean: \"호흡 곤란 및 신경 충격\",\n english: \"Breathing difficulty and nerve shock\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신경총 타격, 호흡 곤란\",\n english: \"Nerve plexus strike, breathing difficulty\",\n romanized: \"singyeongjong tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"torso_heart\",\n names: {\n korean: \"심장\",\n english: \"Heart Region\",\n romanized: \"simjang\",\n },\n position: { x: 98, y: 130 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 60,\n effects: [\n {\n id: \"cardiac_disruption\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.EXTREME,\n duration: 10000,\n description: { korean: \"심장 충격\", english: \"Cardiac disruption\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"심장 충격, 심정지 위험\",\n english: \"Heart shock, cardiac arrest risk\",\n romanized: \"simjang chunggyeok\",\n },\n targetingDifficulty: 0.9,\n effectiveStances: [TrigramStance.JIN, TrigramStance.LI],\n },\n {\n id: \"torso_liver\",\n names: {\n korean: \"간\",\n english: \"Liver\",\n romanized: \"gan\",\n },\n position: { x: 110, y: 145 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 45,\n effects: [\n {\n id: \"internal_bleeding\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"내출혈 및 극심한 통증\",\n english: \"Internal bleeding and severe pain\",\n },\n stackable: false,\n },\n {\n id: \"liver_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 6000,\n description: { korean: \"간 타격 통증\", english: \"Liver strike pain\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"간 손상, 내출혈\",\n english: \"Liver damage, internal bleeding\",\n romanized: \"gan sonsang\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_spleen\",\n names: {\n korean: \"비장\",\n english: \"Spleen\",\n romanized: \"bijang\",\n },\n position: { x: 94, y: 145 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 45,\n effects: [\n {\n id: \"spleen_rupture_risk\",\n type: VitalPointEffectType.ORGAN_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: {\n korean: \"비장 파열 위험\",\n english: \"Spleen rupture risk\",\n },\n stackable: false,\n },\n {\n id: \"internal_bleeding_spleen\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"내출혈로 인한 약화\",\n english: \"Weakness from internal bleeding\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"비장 파열 위험\",\n english: \"Spleen rupture risk\",\n romanized: \"bijang paryeol\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_kidney_left\",\n names: {\n korean: \"좌신장\",\n english: \"Left Kidney\",\n romanized: \"jwa-sinjang\",\n },\n position: { x: 94, y: 155 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 38,\n effects: [\n {\n id: \"kidney_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 4000,\n description: {\n korean: \"신장 타격 극심한 통증\",\n english: \"Severe kidney strike pain\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신장 타격, 심한 통증\",\n english: \"Kidney strike, severe pain\",\n romanized: \"sinjang tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_kidney_right\",\n names: {\n korean: \"우신장\",\n english: \"Right Kidney\",\n romanized: \"u-sinjang\",\n },\n position: { x: 110, y: 155 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 38,\n effects: [\n {\n id: \"kidney_pain_right\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 4000,\n description: {\n korean: \"신장 타격 극심한 통증\",\n english: \"Severe kidney strike pain\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"신장 타격, 심한 통증\",\n english: \"Kidney strike, severe pain\",\n romanized: \"sinjang tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_ribs_floating\",\n names: {\n korean: \"갈비뼈\",\n english: \"Floating Ribs\",\n romanized: \"galbi-ppyeo\",\n },\n position: { x: 106, y: 150 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"늑골 골절, 내장 손상\",\n english: \"Rib fracture, organ damage\",\n romanized: \"neukgol goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_sternum\",\n names: {\n korean: \"흉골\",\n english: \"Sternum\",\n romanized: \"hyunggol\",\n },\n position: { x: 102, y: 130 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [],\n description: {\n korean: \"흉골 골절, 심장 압박\",\n english: \"Sternum fracture, heart compression\",\n romanized: \"hyunggol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_spine_upper\",\n names: {\n korean: \"상부척추\",\n english: \"Upper Spine\",\n romanized: \"sangbu-cheokchu\",\n },\n position: { x: 80, y: 120 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.LETHAL,\n baseDamage: 55,\n effects: [\n {\n id: \"spinal_trauma\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.EXTREME,\n duration: 15000,\n description: {\n korean: \"척추 손상으로 마비\",\n english: \"Spinal trauma paralysis\",\n },\n stackable: false,\n },\n {\n id: \"nerve_disruption_spine\",\n type: VitalPointEffectType.NERVE_DISRUPTION,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"신경 차단\",\n english: \"Nerve pathway disruption\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"척추 손상, 마비 위험\",\n english: \"Spine damage, paralysis risk\",\n romanized: \"cheokchu sonsang\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_spine_mid\",\n names: {\n korean: \"중부척추\",\n english: \"Mid Spine\",\n romanized: \"jungbu-cheokchu\",\n },\n position: { x: 80, y: 145 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 42,\n effects: [\n {\n id: \"nerve_damage_mid_spine\",\n type: VitalPointEffectType.NERVE_DISRUPTION,\n intensity: EffectIntensity.HIGH,\n duration: 8000,\n description: { korean: \"신경 손상\", english: \"Nerve damage\" },\n stackable: false,\n },\n {\n id: \"spinal_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.HIGH,\n duration: 6000,\n description: { korean: \"척추 통증\", english: \"Spinal pain\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"척추 타격, 신경 손상\",\n english: \"Spine strike, nerve damage\",\n romanized: \"cheokchu tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_groin\",\n names: {\n korean: \"사타구니\",\n english: \"Groin\",\n romanized: \"sata-guni\",\n },\n position: { x: 102, y: 170 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 50,\n effects: [\n {\n id: \"extreme_pain\",\n type: VitalPointEffectType.PAIN,\n intensity: EffectIntensity.EXTREME,\n duration: 5000,\n description: { korean: \"극심한 통증\", english: \"Extreme pain\" },\n stackable: false,\n },\n {\n id: \"groin_stun\",\n type: VitalPointEffectType.STUN,\n intensity: EffectIntensity.HIGH,\n duration: 3000,\n description: {\n korean: \"충격으로 인한 기절\",\n english: \"Shock-induced incapacitation\",\n },\n stackable: false,\n },\n ],\n description: {\n korean: \"사타구니 타격, 극심한 통증\",\n english: \"Groin strike, extreme pain\",\n romanized: \"sata-guni tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.GEON],\n },\n {\n id: \"torso_bladder\",\n names: {\n korean: \"방광\",\n english: \"Bladder\",\n romanized: \"banggwang\",\n },\n position: { x: 102, y: 165 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"방광 압박, 통증 및 기능 장애\",\n english: \"Bladder compression, pain and dysfunction\",\n romanized: \"banggwang apbak\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n // Additional torso points (continuing to 24 total)\n {\n id: \"torso_collarbone_left\",\n names: {\n korean: \"좌쇄골\",\n english: \"Left Collarbone\",\n romanized: \"jwa-swaegol\",\n },\n position: { x: 92, y: 110 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"쇄골 골절, 팔 움직임 제한\",\n english: \"Collarbone fracture, arm movement limitation\",\n romanized: \"swaegol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_collarbone_right\",\n names: {\n korean: \"우쇄골\",\n english: \"Right Collarbone\",\n romanized: \"u-swaegol\",\n },\n position: { x: 112, y: 110 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"쇄골 골절, 팔 움직임 제한\",\n english: \"Collarbone fracture, arm movement limitation\",\n romanized: \"swaegol goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.JIN],\n },\n {\n id: \"torso_armpit_nerve\",\n names: {\n korean: \"겨드랑이신경\",\n english: \"Armpit Nerve\",\n romanized: \"gyeodeu-rangi singyeong\",\n },\n position: { x: 85, y: 120 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"신경총 타격, 팔 마비\",\n english: \"Nerve plexus strike, arm paralysis\",\n romanized: \"singyeongjong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"torso_abs_center\",\n names: {\n korean: \"복부중앙\",\n english: \"Abdominal Center\",\n romanized: \"bokbu-jungang\",\n },\n position: { x: 102, y: 148 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"복근 손상, 호흡 곤란\",\n english: \"Abdominal muscle damage, breathing difficulty\",\n romanized: \"bokgeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_diaphragm\",\n names: {\n korean: \"횡격막\",\n english: \"Diaphragm\",\n romanized: \"hyeokgyeongmak\",\n },\n position: { x: 102, y: 142 },\n category: VitalPointCategory.RESPIRATORY,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 35,\n effects: [],\n description: {\n korean: \"횡격막 충격, 호흡 정지\",\n english: \"Diaphragm shock, breathing cessation\",\n romanized: \"hyeokgyeongmak chunggyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.JIN, TrigramStance.GEON],\n },\n {\n id: \"torso_lower_back\",\n names: {\n korean: \"요추\",\n english: \"Lower Back\",\n romanized: \"yochu\",\n },\n position: { x: 80, y: 160 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 36,\n effects: [],\n description: {\n korean: \"요추 타격, 다리 통증\",\n english: \"Lower back strike, leg pain\",\n romanized: \"yochu tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_side_ribs_left\",\n names: {\n korean: \"좌측늑골\",\n english: \"Left Side Ribs\",\n romanized: \"jwa-cheuk neukgol\",\n },\n position: { x: 90, y: 140 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 33,\n effects: [],\n description: {\n korean: \"늑골 타격, 호흡 곤란\",\n english: \"Rib strike, breathing difficulty\",\n romanized: \"neukgol tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"torso_side_ribs_right\",\n names: {\n korean: \"우측늑골\",\n english: \"Right Side Ribs\",\n romanized: \"u-cheuk neukgol\",\n },\n position: { x: 114, y: 140 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 33,\n effects: [],\n description: {\n korean: \"늑골 타격, 호흡 곤란\",\n english: \"Rib strike, breathing difficulty\",\n romanized: \"neukgol tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"torso_navel\",\n names: {\n korean: \"배꼽\",\n english: \"Navel\",\n romanized: \"bae-kkop\",\n },\n position: { x: 102, y: 152 },\n category: VitalPointCategory.ORGAN,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 27,\n effects: [],\n description: {\n korean: \"복부 중심 타격\",\n english: \"Abdominal center strike\",\n romanized: \"bokbu jungsim tagyeok\",\n },\n targetingDifficulty: 0.4,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"torso_shoulder_blade_left\",\n names: {\n korean: \"좌견갑골\",\n english: \"Left Shoulder Blade\",\n romanized: \"jwa-gyeongapgol\",\n },\n position: { x: 75, y: 115 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"견갑골 타격, 팔 기능 저하\",\n english: \"Shoulder blade strike, arm function reduction\",\n romanized: \"gyeongapgol tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_shoulder_blade_right\",\n names: {\n korean: \"우견갑골\",\n english: \"Right Shoulder Blade\",\n romanized: \"u-gyeongapgol\",\n },\n position: { x: 129, y: 115 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"견갑골 타격, 팔 기능 저하\",\n english: \"Shoulder blade strike, arm function reduction\",\n romanized: \"gyeongapgol tagyeok\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GON],\n },\n {\n id: \"torso_tailbone\",\n names: {\n korean: \"미골\",\n english: \"Tailbone\",\n romanized: \"migol\",\n },\n position: { x: 80, y: 170 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 34,\n effects: [],\n description: {\n korean: \"미골 골절, 앉기 곤란\",\n english: \"Tailbone fracture, sitting difficulty\",\n romanized: \"migol goljeol\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.GON, TrigramStance.JIN],\n },\n\n // ============= LEFT ARM REGION (8 points) =============\n {\n id: \"arm_left_shoulder\",\n names: {\n korean: \"좌어깨\",\n english: \"Left Shoulder\",\n romanized: \"jwa-eokkae\",\n },\n position: { x: 82, y: 110 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"어깨 관절 탈구\",\n english: \"Shoulder joint dislocation\",\n romanized: \"eokkae gwanjeol talgoo\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_left_bicep\",\n names: {\n korean: \"좌상완\",\n english: \"Left Bicep\",\n romanized: \"jwa-sangwan\",\n },\n position: { x: 78, y: 125 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"상완 근육 손상\",\n english: \"Bicep muscle damage\",\n romanized: \"sangwan geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"arm_left_elbow\",\n names: {\n korean: \"좌팔꿈치\",\n english: \"Left Elbow\",\n romanized: \"jwa-palkumchi\",\n },\n position: { x: 74, y: 142 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"팔꿈치 골절 또는 탈구\",\n english: \"Elbow fracture or dislocation\",\n romanized: \"palkumchi goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"arm_left_forearm\",\n names: {\n korean: \"좌전완\",\n english: \"Left Forearm\",\n romanized: \"jwa-jeonwan\",\n },\n position: { x: 72, y: 155 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"전완부 골절\",\n english: \"Forearm fracture\",\n romanized: \"jeonwanbu goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GAN],\n },\n {\n id: \"arm_left_wrist\",\n names: {\n korean: \"좌손목\",\n english: \"Left Wrist\",\n romanized: \"jwa-sonmok\",\n },\n position: { x: 70, y: 168 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"손목 골절 또는 염좌\",\n english: \"Wrist fracture or sprain\",\n romanized: \"sonmok goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_left_hand\",\n names: {\n korean: \"좌손등\",\n english: \"Left Hand\",\n romanized: \"jwa-sondeung\",\n },\n position: { x: 68, y: 178 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 16,\n effects: [],\n description: {\n korean: \"손등 타격, 기능 저하\",\n english: \"Hand strike, function reduction\",\n romanized: \"sondeung tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_left_radial_nerve\",\n names: {\n korean: \"좌요골신경\",\n english: \"Left Radial Nerve\",\n romanized: \"jwa-yogol singyeong\",\n },\n position: { x: 72, y: 148 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"요골 신경 타격, 팔 마비\",\n english: \"Radial nerve strike, arm paralysis\",\n romanized: \"yogol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"arm_left_ulnar_nerve\",\n names: {\n korean: \"좌척골신경\",\n english: \"Left Ulnar Nerve\",\n romanized: \"jwa-cheokgol singyeong\",\n },\n position: { x: 74, y: 150 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"척골 신경 타격, 손 기능 상실\",\n english: \"Ulnar nerve strike, hand function loss\",\n romanized: \"cheokgol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n\n // ============= RIGHT ARM REGION (9 points) =============\n {\n id: \"arm_right_shoulder\",\n names: {\n korean: \"우어깨\",\n english: \"Right Shoulder\",\n romanized: \"u-eokkae\",\n },\n position: { x: 122, y: 110 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"어깨 관절 탈구\",\n english: \"Shoulder joint dislocation\",\n romanized: \"eokkae gwanjeol talgoo\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_right_bicep\",\n names: {\n korean: \"우상완\",\n english: \"Right Bicep\",\n romanized: \"u-sangwan\",\n },\n position: { x: 126, y: 125 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"상완 근육 손상\",\n english: \"Bicep muscle damage\",\n romanized: \"sangwan geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"arm_right_elbow\",\n names: {\n korean: \"우팔꿈치\",\n english: \"Right Elbow\",\n romanized: \"u-palkumchi\",\n },\n position: { x: 130, y: 142 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 30,\n effects: [],\n description: {\n korean: \"팔꿈치 골절 또는 탈구\",\n english: \"Elbow fracture or dislocation\",\n romanized: \"palkumchi goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"arm_right_forearm\",\n names: {\n korean: \"우전완\",\n english: \"Right Forearm\",\n romanized: \"u-jeonwan\",\n },\n position: { x: 132, y: 155 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"전완부 골절\",\n english: \"Forearm fracture\",\n romanized: \"jeonwanbu goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GAN],\n },\n {\n id: \"arm_right_wrist\",\n names: {\n korean: \"우손목\",\n english: \"Right Wrist\",\n romanized: \"u-sonmok\",\n },\n position: { x: 134, y: 168 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"손목 골절 또는 염좌\",\n english: \"Wrist fracture or sprain\",\n romanized: \"sonmok goljeol\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GAM],\n },\n {\n id: \"arm_right_hand\",\n names: {\n korean: \"우손등\",\n english: \"Right Hand\",\n romanized: \"u-sondeung\",\n },\n position: { x: 136, y: 178 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 16,\n effects: [],\n description: {\n korean: \"손등 타격, 기능 저하\",\n english: \"Hand strike, function reduction\",\n romanized: \"sondeung tagyeok\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_right_radial_nerve\",\n names: {\n korean: \"우요골신경\",\n english: \"Right Radial Nerve\",\n romanized: \"u-yogol singyeong\",\n },\n position: { x: 132, y: 148 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 25,\n effects: [],\n description: {\n korean: \"요골 신경 타격, 팔 마비\",\n english: \"Radial nerve strike, arm paralysis\",\n romanized: \"yogol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"arm_right_ulnar_nerve\",\n names: {\n korean: \"우척골신경\",\n english: \"Right Ulnar Nerve\",\n romanized: \"u-cheokgol singyeong\",\n },\n position: { x: 130, y: 150 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 24,\n effects: [],\n description: {\n korean: \"척골 신경 타격, 손 기능 상실\",\n english: \"Ulnar nerve strike, hand function loss\",\n romanized: \"cheokgol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n {\n id: \"arm_right_tricep\",\n names: {\n korean: \"우삼두\",\n english: \"Right Tricep\",\n romanized: \"u-samdu\",\n },\n position: { x: 128, y: 135 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 17,\n effects: [],\n description: {\n korean: \"삼두근 손상\",\n english: \"Tricep muscle damage\",\n romanized: \"samdugeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON],\n },\n\n // ============= LEFT LEG REGION (8 points) =============\n {\n id: \"leg_left_thigh\",\n names: {\n korean: \"좌대퇴\",\n english: \"Left Thigh\",\n romanized: \"jwa-daetwe\",\n },\n position: { x: 94, y: 185 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"대퇴근 손상, 이동 곤란\",\n english: \"Thigh muscle damage, movement difficulty\",\n romanized: \"daetwegeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"leg_left_knee\",\n names: {\n korean: \"좌무릎\",\n english: \"Left Knee\",\n romanized: \"jwa-mureup\",\n },\n position: { x: 94, y: 205 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [\n {\n id: \"knee_destruction\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"무릎 파괴로 보행 불가\",\n english: \"Knee destruction, unable to walk\",\n },\n stackable: false,\n },\n {\n id: \"mobility_loss\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.MEDIUM,\n duration: 8000,\n description: { korean: \"이동력 상실\", english: \"Mobility loss\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"무릎 관절 파괴, 보행 불가\",\n english: \"Knee joint destruction, unable to walk\",\n romanized: \"mureup gwanjeol pagoe\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_left_shin\",\n names: {\n korean: \"좌정강이\",\n english: \"Left Shin\",\n romanized: \"jwa-jeonggang-i\",\n },\n position: { x: 94, y: 220 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"정강이 골절\",\n english: \"Shin fracture\",\n romanized: \"jeonggang-i goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GAN],\n },\n {\n id: \"leg_left_ankle\",\n names: {\n korean: \"좌발목\",\n english: \"Left Ankle\",\n romanized: \"jwa-balmok\",\n },\n position: { x: 94, y: 235 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"발목 염좌 또는 골절\",\n english: \"Ankle sprain or fracture\",\n romanized: \"balmok yeomjwa\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_left_foot\",\n names: {\n korean: \"좌발등\",\n english: \"Left Foot\",\n romanized: \"jwa-baldeung\",\n },\n position: { x: 94, y: 245 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"발등 골절, 보행 곤란\",\n english: \"Foot fracture, walking difficulty\",\n romanized: \"baldeung goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GON],\n },\n {\n id: \"leg_left_calf\",\n names: {\n korean: \"좌종아리\",\n english: \"Left Calf\",\n romanized: \"jwa-jong-ari\",\n },\n position: { x: 92, y: 225 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 23,\n effects: [],\n description: {\n korean: \"종아리 근육 손상\",\n english: \"Calf muscle damage\",\n romanized: \"jong-ari geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"leg_left_achilles\",\n names: {\n korean: \"좌아킬레스건\",\n english: \"Left Achilles Tendon\",\n romanized: \"jwa-akilleseugeon\",\n },\n position: { x: 90, y: 238 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"achilles_rupture\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"아킬레스건 파열\",\n english: \"Achilles tendon rupture\",\n },\n stackable: false,\n },\n {\n id: \"movement_impossible\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: { korean: \"이동 불가\", english: \"Cannot move\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"아킬레스건 파열, 이동 불가\",\n english: \"Achilles tendon rupture, cannot move\",\n romanized: \"akilleseugeon paryeol\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI, TrigramStance.GON],\n },\n {\n id: \"leg_left_femoral_nerve\",\n names: {\n korean: \"좌대퇴신경\",\n english: \"Left Femoral Nerve\",\n romanized: \"jwa-daetwe singyeong\",\n },\n position: { x: 96, y: 180 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"대퇴 신경 타격, 다리 마비\",\n english: \"Femoral nerve strike, leg paralysis\",\n romanized: \"daetwe singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n\n // ============= RIGHT LEG REGION (9 points) =============\n {\n id: \"leg_right_thigh\",\n names: {\n korean: \"우대퇴\",\n english: \"Right Thigh\",\n romanized: \"u-daetwe\",\n },\n position: { x: 110, y: 185 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 22,\n effects: [],\n description: {\n korean: \"대퇴근 손상, 이동 곤란\",\n english: \"Thigh muscle damage, movement difficulty\",\n romanized: \"daetwegeun sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.SON],\n },\n {\n id: \"leg_right_knee\",\n names: {\n korean: \"우무릎\",\n english: \"Right Knee\",\n romanized: \"u-mureup\",\n },\n position: { x: 110, y: 205 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 38,\n effects: [\n {\n id: \"knee_destruction_right\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: {\n korean: \"무릎 파괴로 보행 불가\",\n english: \"Knee destruction, unable to walk\",\n },\n stackable: false,\n },\n {\n id: \"mobility_loss_right\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.MEDIUM,\n duration: 8000,\n description: { korean: \"이동력 상실\", english: \"Mobility loss\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"무릎 관절 파괴, 보행 불가\",\n english: \"Knee joint destruction, unable to walk\",\n romanized: \"mureup gwanjeol pagoe\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_right_shin\",\n names: {\n korean: \"우정강이\",\n english: \"Right Shin\",\n romanized: \"u-jeonggang-i\",\n },\n position: { x: 110, y: 220 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 26,\n effects: [],\n description: {\n korean: \"정강이 골절\",\n english: \"Shin fracture\",\n romanized: \"jeonggang-i goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GEON, TrigramStance.GAN],\n },\n {\n id: \"leg_right_ankle\",\n names: {\n korean: \"우발목\",\n english: \"Right Ankle\",\n romanized: \"u-balmok\",\n },\n position: { x: 110, y: 235 },\n category: VitalPointCategory.JOINT,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 28,\n effects: [],\n description: {\n korean: \"발목 염좌 또는 골절\",\n english: \"Ankle sprain or fracture\",\n romanized: \"balmok yeomjwa\",\n },\n targetingDifficulty: 0.6,\n effectiveStances: [TrigramStance.TAE, TrigramStance.GON],\n },\n {\n id: \"leg_right_foot\",\n names: {\n korean: \"우발등\",\n english: \"Right Foot\",\n romanized: \"u-baldeung\",\n },\n position: { x: 110, y: 245 },\n category: VitalPointCategory.SKELETAL,\n severity: VitalPointSeverity.MINOR,\n baseDamage: 18,\n effects: [],\n description: {\n korean: \"발등 골절, 보행 곤란\",\n english: \"Foot fracture, walking difficulty\",\n romanized: \"baldeung goljeol\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.GON],\n },\n {\n id: \"leg_right_calf\",\n names: {\n korean: \"우종아리\",\n english: \"Right Calf\",\n romanized: \"u-jong-ari\",\n },\n position: { x: 112, y: 225 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 23,\n effects: [],\n description: {\n korean: \"종아리 근육 손상\",\n english: \"Calf muscle damage\",\n romanized: \"jong-ari geunnyuk sonsang\",\n },\n targetingDifficulty: 0.5,\n effectiveStances: [TrigramStance.SON, TrigramStance.GEON],\n },\n {\n id: \"leg_right_achilles\",\n names: {\n korean: \"우아킬레스건\",\n english: \"Right Achilles Tendon\",\n romanized: \"u-akilleseugeon\",\n },\n position: { x: 114, y: 238 },\n category: VitalPointCategory.MUSCULAR,\n severity: VitalPointSeverity.CRITICAL,\n baseDamage: 40,\n effects: [\n {\n id: \"achilles_rupture_right\",\n type: VitalPointEffectType.WEAKNESS,\n intensity: EffectIntensity.EXTREME,\n duration: 12000,\n description: {\n korean: \"아킬레스건 파열\",\n english: \"Achilles tendon rupture\",\n },\n stackable: false,\n },\n {\n id: \"movement_impossible_right\",\n type: VitalPointEffectType.PARALYSIS,\n intensity: EffectIntensity.HIGH,\n duration: 10000,\n description: { korean: \"이동 불가\", english: \"Cannot move\" },\n stackable: false,\n },\n ],\n description: {\n korean: \"아킬레스건 파열, 이동 불가\",\n english: \"Achilles tendon rupture, cannot move\",\n romanized: \"akilleseugeon paryeol\",\n },\n targetingDifficulty: 0.8,\n effectiveStances: [TrigramStance.LI, TrigramStance.GON],\n },\n {\n id: \"leg_right_femoral_nerve\",\n names: {\n korean: \"우대퇴신경\",\n english: \"Right Femoral Nerve\",\n romanized: \"u-daetwe singyeong\",\n },\n position: { x: 108, y: 180 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MAJOR,\n baseDamage: 32,\n effects: [],\n description: {\n korean: \"대퇴 신경 타격, 다리 마비\",\n english: \"Femoral nerve strike, leg paralysis\",\n romanized: \"daetwe singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI, TrigramStance.SON],\n },\n {\n id: \"leg_right_peroneal_nerve\",\n names: {\n korean: \"우비골신경\",\n english: \"Right Peroneal Nerve\",\n romanized: \"u-bigol singyeong\",\n },\n position: { x: 112, y: 210 },\n category: VitalPointCategory.NEUROLOGICAL,\n severity: VitalPointSeverity.MODERATE,\n baseDamage: 27,\n effects: [],\n description: {\n korean: \"비골 신경 타격, 발 기능 상실\",\n english: \"Peroneal nerve strike, foot function loss\",\n romanized: \"bigol singyeong tagyeok\",\n },\n targetingDifficulty: 0.7,\n effectiveStances: [TrigramStance.LI],\n },\n] as const;\n\n/**\n * Gets vital points by body region.\n *\n * @param region - Body region to filter by\n * @returns Array of vital points in that region\n *\n * @korean 부위별급소\n */\nexport function getVitalPointsByRegion(\n region: BodyRegion\n): readonly VitalPoint[] {\n // This is a simplified implementation - in production you'd map IDs to regions properly\n const regionPrefixes: Record<BodyRegion, string[]> = {\n [BodyRegion.HEAD]: [\"head_\"],\n [BodyRegion.NECK]: [\"head_side_neck\", \"head_throat\"],\n [BodyRegion.TORSO]: [\"torso_\"],\n [BodyRegion.LEFT_ARM]: [\"arm_left_\"],\n [BodyRegion.RIGHT_ARM]: [\"arm_right_\"],\n [BodyRegion.LEFT_LEG]: [\"leg_left_\"],\n [BodyRegion.RIGHT_LEG]: [\"leg_right_\"],\n [BodyRegion.CORE]: [\n \"torso_solar_plexus\",\n \"torso_diaphragm\",\n \"torso_abs_center\",\n ],\n };\n\n const prefixes = regionPrefixes[region] ?? [];\n return VITAL_POINTS_DATA.filter((vp) =>\n prefixes.some((prefix) => vp.id.startsWith(prefix))\n );\n}\n\n/**\n * Gets total count of vital points.\n *\n * @returns Total number of vital points\n *\n * @korean 급소총개수\n */\nexport function getTotalVitalPointsCount(): number {\n return VITAL_POINTS_DATA.length;\n}\n\nexport default VITAL_POINTS_DATA;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAqCA,IAAa,oBAA2C;CAEtD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAU,SAAS;IAAmB;GAC7D,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,KAAK;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAI;EAC1B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAI;EAC1B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK;EACvC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAI;EAC1B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK;EACvC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAI;EAC1B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAI;EAC1B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,KAAK;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAI;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CAGD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAS,SAAS;IAAsB;GAC/D,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,GAAG;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAW,SAAS;IAAqB;GAChE,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAS,SAAS;IAAgB;GACzD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAS,SAAS;IAAe;GACxD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAU,SAAS;IAAgB;GAC1D,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,KAAK;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CAED;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CAGD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI;EACtC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CAGD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI;EACtC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK;EACvC;CAGD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAU,SAAS;IAAiB;GAC3D,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI;EACtC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAS,SAAS;IAAe;GACxD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAI,GAAG;GAAK;EAC3B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CAGD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAU,SAAS;IAAiB;GAC3D,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,MAAM,cAAc,IAAI;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,IAAI;EACzD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI;EACtC;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,KAAK,cAAc,KAAK;EAC1D;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,CACP;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IACX,QAAQ;IACR,SAAS;IACV;GACD,WAAW;GACZ,EACD;GACE,IAAI;GACJ,MAAM,qBAAqB;GAC3B,WAAW,gBAAgB;GAC3B,UAAU;GACV,aAAa;IAAE,QAAQ;IAAS,SAAS;IAAe;GACxD,WAAW;GACZ,CACF;EACD,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,IAAI,cAAc,IAAI;EACxD;CACD;EACE,IAAI;EACJ,OAAO;GACL,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,UAAU;GAAE,GAAG;GAAK,GAAG;GAAK;EAC5B,UAAU,mBAAmB;EAC7B,UAAU,mBAAmB;EAC7B,YAAY;EACZ,SAAS,EAAE;EACX,aAAa;GACX,QAAQ;GACR,SAAS;GACT,WAAW;GACZ;EACD,qBAAqB;EACrB,kBAAkB,CAAC,cAAc,GAAG;EACrC;CACF"}