universal-physics-tensor 0.4.5

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 (299) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +377 -0
  3. package/dist/bridges/equations/be-11-decoherence-master.d.ts +83 -0
  4. package/dist/bridges/equations/be-11-decoherence-master.d.ts.map +1 -0
  5. package/dist/bridges/equations/be-11-decoherence-master.js +116 -0
  6. package/dist/bridges/equations/be-11-decoherence-master.js.map +1 -0
  7. package/dist/bridges/equations/be-12-coherence-length.d.ts +80 -0
  8. package/dist/bridges/equations/be-12-coherence-length.d.ts.map +1 -0
  9. package/dist/bridges/equations/be-12-coherence-length.js +128 -0
  10. package/dist/bridges/equations/be-12-coherence-length.js.map +1 -0
  11. package/dist/bridges/equations/be-13-einstein-trace.d.ts +89 -0
  12. package/dist/bridges/equations/be-13-einstein-trace.d.ts.map +1 -0
  13. package/dist/bridges/equations/be-13-einstein-trace.js +143 -0
  14. package/dist/bridges/equations/be-13-einstein-trace.js.map +1 -0
  15. package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts +67 -0
  16. package/dist/bridges/equations/be-14-ryu-takayanagi.d.ts.map +1 -0
  17. package/dist/bridges/equations/be-14-ryu-takayanagi.js +112 -0
  18. package/dist/bridges/equations/be-14-ryu-takayanagi.js.map +1 -0
  19. package/dist/bridges/equations/be-15-emergence.d.ts +164 -0
  20. package/dist/bridges/equations/be-15-emergence.d.ts.map +1 -0
  21. package/dist/bridges/equations/be-15-emergence.js +204 -0
  22. package/dist/bridges/equations/be-15-emergence.js.map +1 -0
  23. package/dist/bridges/equations/be-16-landauer.d.ts +180 -0
  24. package/dist/bridges/equations/be-16-landauer.d.ts.map +1 -0
  25. package/dist/bridges/equations/be-16-landauer.js +206 -0
  26. package/dist/bridges/equations/be-16-landauer.js.map +1 -0
  27. package/dist/bridges/equations/be-17-einstein-cartan.d.ts +245 -0
  28. package/dist/bridges/equations/be-17-einstein-cartan.d.ts.map +1 -0
  29. package/dist/bridges/equations/be-17-einstein-cartan.js +304 -0
  30. package/dist/bridges/equations/be-17-einstein-cartan.js.map +1 -0
  31. package/dist/bridges/equations/be-18-higgs-mass.d.ts +65 -0
  32. package/dist/bridges/equations/be-18-higgs-mass.d.ts.map +1 -0
  33. package/dist/bridges/equations/be-18-higgs-mass.js +86 -0
  34. package/dist/bridges/equations/be-18-higgs-mass.js.map +1 -0
  35. package/dist/bridges/equations/be-19-quantum-bounce.d.ts +72 -0
  36. package/dist/bridges/equations/be-19-quantum-bounce.d.ts.map +1 -0
  37. package/dist/bridges/equations/be-19-quantum-bounce.js +151 -0
  38. package/dist/bridges/equations/be-19-quantum-bounce.js.map +1 -0
  39. package/dist/bridges/equations/be-20-vacuum-energy.d.ts +72 -0
  40. package/dist/bridges/equations/be-20-vacuum-energy.d.ts.map +1 -0
  41. package/dist/bridges/equations/be-20-vacuum-energy.js +115 -0
  42. package/dist/bridges/equations/be-20-vacuum-energy.js.map +1 -0
  43. package/dist/bridges/equations/be-21-kss-bound.d.ts +72 -0
  44. package/dist/bridges/equations/be-21-kss-bound.d.ts.map +1 -0
  45. package/dist/bridges/equations/be-21-kss-bound.js +103 -0
  46. package/dist/bridges/equations/be-21-kss-bound.js.map +1 -0
  47. package/dist/bridges/equations/be-22-topological-entanglement.d.ts +90 -0
  48. package/dist/bridges/equations/be-22-topological-entanglement.d.ts.map +1 -0
  49. package/dist/bridges/equations/be-22-topological-entanglement.js +123 -0
  50. package/dist/bridges/equations/be-22-topological-entanglement.js.map +1 -0
  51. package/dist/bridges/equations/be-23-syk-planckian.d.ts +89 -0
  52. package/dist/bridges/equations/be-23-syk-planckian.d.ts.map +1 -0
  53. package/dist/bridges/equations/be-23-syk-planckian.js +155 -0
  54. package/dist/bridges/equations/be-23-syk-planckian.js.map +1 -0
  55. package/dist/bridges/equations/be-24-foerster-fret.d.ts +81 -0
  56. package/dist/bridges/equations/be-24-foerster-fret.d.ts.map +1 -0
  57. package/dist/bridges/equations/be-24-foerster-fret.js +121 -0
  58. package/dist/bridges/equations/be-24-foerster-fret.js.map +1 -0
  59. package/dist/bridges/equations/be-25-iit-phi.d.ts +220 -0
  60. package/dist/bridges/equations/be-25-iit-phi.d.ts.map +1 -0
  61. package/dist/bridges/equations/be-25-iit-phi.js +259 -0
  62. package/dist/bridges/equations/be-25-iit-phi.js.map +1 -0
  63. package/dist/bridges/equations/be-25-orch-or.d.ts +78 -0
  64. package/dist/bridges/equations/be-25-orch-or.d.ts.map +1 -0
  65. package/dist/bridges/equations/be-25-orch-or.js +121 -0
  66. package/dist/bridges/equations/be-25-orch-or.js.map +1 -0
  67. package/dist/bridges/equations/be-26-dna-tunneling.d.ts +75 -0
  68. package/dist/bridges/equations/be-26-dna-tunneling.d.ts.map +1 -0
  69. package/dist/bridges/equations/be-26-dna-tunneling.js +138 -0
  70. package/dist/bridges/equations/be-26-dna-tunneling.js.map +1 -0
  71. package/dist/bridges/equations/be-27-effective-temperature.d.ts +81 -0
  72. package/dist/bridges/equations/be-27-effective-temperature.d.ts.map +1 -0
  73. package/dist/bridges/equations/be-27-effective-temperature.js +120 -0
  74. package/dist/bridges/equations/be-27-effective-temperature.js.map +1 -0
  75. package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts +175 -0
  76. package/dist/bridges/equations/be-28-onsager-entropy-production.d.ts.map +1 -0
  77. package/dist/bridges/equations/be-28-onsager-entropy-production.js +203 -0
  78. package/dist/bridges/equations/be-28-onsager-entropy-production.js.map +1 -0
  79. package/dist/bridges/equations/be-29-jarzynski.d.ts +86 -0
  80. package/dist/bridges/equations/be-29-jarzynski.d.ts.map +1 -0
  81. package/dist/bridges/equations/be-29-jarzynski.js +132 -0
  82. package/dist/bridges/equations/be-29-jarzynski.js.map +1 -0
  83. package/dist/bridges/equations/be-30-flm-first-law.d.ts +93 -0
  84. package/dist/bridges/equations/be-30-flm-first-law.d.ts.map +1 -0
  85. package/dist/bridges/equations/be-30-flm-first-law.js +109 -0
  86. package/dist/bridges/equations/be-30-flm-first-law.js.map +1 -0
  87. package/dist/bridges/equations/be-31-causal-set-bd.d.ts +96 -0
  88. package/dist/bridges/equations/be-31-causal-set-bd.d.ts.map +1 -0
  89. package/dist/bridges/equations/be-31-causal-set-bd.js +133 -0
  90. package/dist/bridges/equations/be-31-causal-set-bd.js.map +1 -0
  91. package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts +113 -0
  92. package/dist/bridges/equations/be-32-quantum-reference-frame.d.ts.map +1 -0
  93. package/dist/bridges/equations/be-32-quantum-reference-frame.js +155 -0
  94. package/dist/bridges/equations/be-32-quantum-reference-frame.js.map +1 -0
  95. package/dist/bridges/equations/be-33-hertz-millis.d.ts +77 -0
  96. package/dist/bridges/equations/be-33-hertz-millis.d.ts.map +1 -0
  97. package/dist/bridges/equations/be-33-hertz-millis.js +113 -0
  98. package/dist/bridges/equations/be-33-hertz-millis.js.map +1 -0
  99. package/dist/bridges/equations/be-34-kibble-zurek.d.ts +76 -0
  100. package/dist/bridges/equations/be-34-kibble-zurek.d.ts.map +1 -0
  101. package/dist/bridges/equations/be-34-kibble-zurek.js +139 -0
  102. package/dist/bridges/equations/be-34-kibble-zurek.js.map +1 -0
  103. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts +117 -0
  104. package/dist/bridges/equations/be-35-conformal-bootstrap.d.ts.map +1 -0
  105. package/dist/bridges/equations/be-35-conformal-bootstrap.js +167 -0
  106. package/dist/bridges/equations/be-35-conformal-bootstrap.js.map +1 -0
  107. package/dist/bridges/equations/be-36-gw-speed-bound.d.ts +77 -0
  108. package/dist/bridges/equations/be-36-gw-speed-bound.d.ts.map +1 -0
  109. package/dist/bridges/equations/be-36-gw-speed-bound.js +107 -0
  110. package/dist/bridges/equations/be-36-gw-speed-bound.js.map +1 -0
  111. package/dist/bridges/equations/be-37-shapiro-delay.d.ts +260 -0
  112. package/dist/bridges/equations/be-37-shapiro-delay.d.ts.map +1 -0
  113. package/dist/bridges/equations/be-37-shapiro-delay.js +429 -0
  114. package/dist/bridges/equations/be-37-shapiro-delay.js.map +1 -0
  115. package/dist/bridges/equations/be-38-mond.d.ts +86 -0
  116. package/dist/bridges/equations/be-38-mond.d.ts.map +1 -0
  117. package/dist/bridges/equations/be-38-mond.js +122 -0
  118. package/dist/bridges/equations/be-38-mond.js.map +1 -0
  119. package/dist/bridges/equations/be-39-asymptotic-safety.d.ts +106 -0
  120. package/dist/bridges/equations/be-39-asymptotic-safety.d.ts.map +1 -0
  121. package/dist/bridges/equations/be-39-asymptotic-safety.js +155 -0
  122. package/dist/bridges/equations/be-39-asymptotic-safety.js.map +1 -0
  123. package/dist/bridges/equations/be-40-composite-higgs.d.ts +81 -0
  124. package/dist/bridges/equations/be-40-composite-higgs.d.ts.map +1 -0
  125. package/dist/bridges/equations/be-40-composite-higgs.js +149 -0
  126. package/dist/bridges/equations/be-40-composite-higgs.js.map +1 -0
  127. package/dist/bridges/equations/be-41-swampland.d.ts +67 -0
  128. package/dist/bridges/equations/be-41-swampland.d.ts.map +1 -0
  129. package/dist/bridges/equations/be-41-swampland.js +109 -0
  130. package/dist/bridges/equations/be-41-swampland.js.map +1 -0
  131. package/dist/bridges/equations/be-42-hawking-temperature.d.ts +67 -0
  132. package/dist/bridges/equations/be-42-hawking-temperature.d.ts.map +1 -0
  133. package/dist/bridges/equations/be-42-hawking-temperature.js +109 -0
  134. package/dist/bridges/equations/be-42-hawking-temperature.js.map +1 -0
  135. package/dist/bridges/equations/be-43-er-epr.d.ts +73 -0
  136. package/dist/bridges/equations/be-43-er-epr.d.ts.map +1 -0
  137. package/dist/bridges/equations/be-43-er-epr.js +114 -0
  138. package/dist/bridges/equations/be-43-er-epr.js.map +1 -0
  139. package/dist/bridges/equations/be-44-soft-hair.d.ts +151 -0
  140. package/dist/bridges/equations/be-44-soft-hair.d.ts.map +1 -0
  141. package/dist/bridges/equations/be-44-soft-hair.js +185 -0
  142. package/dist/bridges/equations/be-44-soft-hair.js.map +1 -0
  143. package/dist/bridges/equations/be-45-tcc.d.ts +116 -0
  144. package/dist/bridges/equations/be-45-tcc.d.ts.map +1 -0
  145. package/dist/bridges/equations/be-45-tcc.js +157 -0
  146. package/dist/bridges/equations/be-45-tcc.js.map +1 -0
  147. package/dist/bridges/equations/be-46-multiverse-measure.d.ts +163 -0
  148. package/dist/bridges/equations/be-46-multiverse-measure.d.ts.map +1 -0
  149. package/dist/bridges/equations/be-46-multiverse-measure.js +198 -0
  150. package/dist/bridges/equations/be-46-multiverse-measure.js.map +1 -0
  151. package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts +72 -0
  152. package/dist/bridges/equations/be-47-bbn-dark-sector.d.ts.map +1 -0
  153. package/dist/bridges/equations/be-47-bbn-dark-sector.js +121 -0
  154. package/dist/bridges/equations/be-47-bbn-dark-sector.js.map +1 -0
  155. package/dist/bridges/equations/be-48-grw-localization.d.ts +84 -0
  156. package/dist/bridges/equations/be-48-grw-localization.d.ts.map +1 -0
  157. package/dist/bridges/equations/be-48-grw-localization.js +107 -0
  158. package/dist/bridges/equations/be-48-grw-localization.js.map +1 -0
  159. package/dist/bridges/equations/be-49-quantum-darwinism.d.ts +97 -0
  160. package/dist/bridges/equations/be-49-quantum-darwinism.d.ts.map +1 -0
  161. package/dist/bridges/equations/be-49-quantum-darwinism.js +129 -0
  162. package/dist/bridges/equations/be-49-quantum-darwinism.js.map +1 -0
  163. package/dist/bridges/equations/be-50-wheeler-feynman.d.ts +120 -0
  164. package/dist/bridges/equations/be-50-wheeler-feynman.d.ts.map +1 -0
  165. package/dist/bridges/equations/be-50-wheeler-feynman.js +151 -0
  166. package/dist/bridges/equations/be-50-wheeler-feynman.js.map +1 -0
  167. package/dist/bridges/gravitational-lensing.d.ts +52 -0
  168. package/dist/bridges/gravitational-lensing.d.ts.map +1 -0
  169. package/dist/bridges/gravitational-lensing.js +48 -0
  170. package/dist/bridges/gravitational-lensing.js.map +1 -0
  171. package/dist/bridges/index.d.ts +104 -0
  172. package/dist/bridges/index.d.ts.map +1 -0
  173. package/dist/bridges/index.js +1663 -0
  174. package/dist/bridges/index.js.map +1 -0
  175. package/dist/bridges/perihelion-precession.d.ts +62 -0
  176. package/dist/bridges/perihelion-precession.d.ts.map +1 -0
  177. package/dist/bridges/perihelion-precession.js +68 -0
  178. package/dist/bridges/perihelion-precession.js.map +1 -0
  179. package/dist/core/tensor.d.ts +135 -0
  180. package/dist/core/tensor.d.ts.map +1 -0
  181. package/dist/core/tensor.js +376 -0
  182. package/dist/core/tensor.js.map +1 -0
  183. package/dist/core/types.d.ts +131 -0
  184. package/dist/core/types.d.ts.map +1 -0
  185. package/dist/core/types.js +25 -0
  186. package/dist/core/types.js.map +1 -0
  187. package/dist/dimensional/algebra.d.ts +34 -0
  188. package/dist/dimensional/algebra.d.ts.map +1 -0
  189. package/dist/dimensional/algebra.js +90 -0
  190. package/dist/dimensional/algebra.js.map +1 -0
  191. package/dist/dimensional/bridge-check.d.ts +48 -0
  192. package/dist/dimensional/bridge-check.d.ts.map +1 -0
  193. package/dist/dimensional/bridge-check.js +137 -0
  194. package/dist/dimensional/bridge-check.js.map +1 -0
  195. package/dist/dimensional/connection-validators.d.ts +53 -0
  196. package/dist/dimensional/connection-validators.d.ts.map +1 -0
  197. package/dist/dimensional/connection-validators.js +84 -0
  198. package/dist/dimensional/connection-validators.js.map +1 -0
  199. package/dist/dimensional/connection.d.ts +40 -0
  200. package/dist/dimensional/connection.d.ts.map +1 -0
  201. package/dist/dimensional/connection.js +81 -0
  202. package/dist/dimensional/connection.js.map +1 -0
  203. package/dist/dimensional/constants.d.ts +30 -0
  204. package/dist/dimensional/constants.d.ts.map +1 -0
  205. package/dist/dimensional/constants.js +31 -0
  206. package/dist/dimensional/constants.js.map +1 -0
  207. package/dist/dimensional/errors.d.ts +161 -0
  208. package/dist/dimensional/errors.d.ts.map +1 -0
  209. package/dist/dimensional/errors.js +254 -0
  210. package/dist/dimensional/errors.js.map +1 -0
  211. package/dist/dimensional/fresh-label.d.ts +26 -0
  212. package/dist/dimensional/fresh-label.d.ts.map +1 -0
  213. package/dist/dimensional/fresh-label.js +31 -0
  214. package/dist/dimensional/fresh-label.js.map +1 -0
  215. package/dist/dimensional/metric-validators.d.ts +124 -0
  216. package/dist/dimensional/metric-validators.d.ts.map +1 -0
  217. package/dist/dimensional/metric-validators.js +141 -0
  218. package/dist/dimensional/metric-validators.js.map +1 -0
  219. package/dist/dimensional/metric.d.ts +67 -0
  220. package/dist/dimensional/metric.d.ts.map +1 -0
  221. package/dist/dimensional/metric.js +177 -0
  222. package/dist/dimensional/metric.js.map +1 -0
  223. package/dist/dimensional/tensor.d.ts +153 -0
  224. package/dist/dimensional/tensor.d.ts.map +1 -0
  225. package/dist/dimensional/tensor.js +138 -0
  226. package/dist/dimensional/tensor.js.map +1 -0
  227. package/dist/dimensional/types.d.ts +50 -0
  228. package/dist/dimensional/types.d.ts.map +1 -0
  229. package/dist/dimensional/types.js +66 -0
  230. package/dist/dimensional/types.js.map +1 -0
  231. package/dist/dimensional/validator.d.ts +84 -0
  232. package/dist/dimensional/validator.d.ts.map +1 -0
  233. package/dist/dimensional/validator.js +505 -0
  234. package/dist/dimensional/validator.js.map +1 -0
  235. package/dist/index.d.ts +25 -0
  236. package/dist/index.d.ts.map +1 -0
  237. package/dist/index.js +37 -0
  238. package/dist/index.js.map +1 -0
  239. package/dist/numerical/be37-covariant-eikonal.d.ts +90 -0
  240. package/dist/numerical/be37-covariant-eikonal.d.ts.map +1 -0
  241. package/dist/numerical/be37-covariant-eikonal.js +79 -0
  242. package/dist/numerical/be37-covariant-eikonal.js.map +1 -0
  243. package/dist/numerical/connection-lowering-helpers.d.ts +107 -0
  244. package/dist/numerical/connection-lowering-helpers.d.ts.map +1 -0
  245. package/dist/numerical/connection-lowering-helpers.js +315 -0
  246. package/dist/numerical/connection-lowering-helpers.js.map +1 -0
  247. package/dist/numerical/engine-registry.d.ts +50 -0
  248. package/dist/numerical/engine-registry.d.ts.map +1 -0
  249. package/dist/numerical/engine-registry.js +82 -0
  250. package/dist/numerical/engine-registry.js.map +1 -0
  251. package/dist/numerical/errors.d.ts +28 -0
  252. package/dist/numerical/errors.d.ts.map +1 -0
  253. package/dist/numerical/errors.js +39 -0
  254. package/dist/numerical/errors.js.map +1 -0
  255. package/dist/numerical/float64-engine.d.ts +53 -0
  256. package/dist/numerical/float64-engine.d.ts.map +1 -0
  257. package/dist/numerical/float64-engine.js +638 -0
  258. package/dist/numerical/float64-engine.js.map +1 -0
  259. package/dist/numerical/geodesic-integrator.d.ts +62 -0
  260. package/dist/numerical/geodesic-integrator.d.ts.map +1 -0
  261. package/dist/numerical/geodesic-integrator.js +103 -0
  262. package/dist/numerical/geodesic-integrator.js.map +1 -0
  263. package/dist/numerical/grid-field.d.ts +24 -0
  264. package/dist/numerical/grid-field.d.ts.map +1 -0
  265. package/dist/numerical/grid-field.js +2 -0
  266. package/dist/numerical/grid-field.js.map +1 -0
  267. package/dist/numerical/index.d.ts +80 -0
  268. package/dist/numerical/index.d.ts.map +1 -0
  269. package/dist/numerical/index.js +75 -0
  270. package/dist/numerical/index.js.map +1 -0
  271. package/dist/numerical/lowering.d.ts +48 -0
  272. package/dist/numerical/lowering.d.ts.map +1 -0
  273. package/dist/numerical/lowering.js +443 -0
  274. package/dist/numerical/lowering.js.map +1 -0
  275. package/dist/numerical/mathts-engine.d.ts +55 -0
  276. package/dist/numerical/mathts-engine.d.ts.map +1 -0
  277. package/dist/numerical/mathts-engine.js +164 -0
  278. package/dist/numerical/mathts-engine.js.map +1 -0
  279. package/dist/numerical/metric-inverse.d.ts +31 -0
  280. package/dist/numerical/metric-inverse.d.ts.map +1 -0
  281. package/dist/numerical/metric-inverse.js +68 -0
  282. package/dist/numerical/metric-inverse.js.map +1 -0
  283. package/dist/numerical/null-ray-integrator.d.ts +13 -0
  284. package/dist/numerical/null-ray-integrator.d.ts.map +1 -0
  285. package/dist/numerical/null-ray-integrator.js +53 -0
  286. package/dist/numerical/null-ray-integrator.js.map +1 -0
  287. package/dist/numerical/pderiv.d.ts +43 -0
  288. package/dist/numerical/pderiv.d.ts.map +1 -0
  289. package/dist/numerical/pderiv.js +121 -0
  290. package/dist/numerical/pderiv.js.map +1 -0
  291. package/dist/numerical/tensor-engine.d.ts +114 -0
  292. package/dist/numerical/tensor-engine.d.ts.map +1 -0
  293. package/dist/numerical/tensor-engine.js +64 -0
  294. package/dist/numerical/tensor-engine.js.map +1 -0
  295. package/dist/numerical/types.d.ts +37 -0
  296. package/dist/numerical/types.d.ts.map +1 -0
  297. package/dist/numerical/types.js +8 -0
  298. package/dist/numerical/types.js.map +1 -0
  299. package/package.json +72 -0
@@ -0,0 +1,376 @@
1
+ /**
2
+ * Universal Physics Tensor
3
+ *
4
+ * Core implementation of the rank-N tensor living in product space:
5
+ * Π ∈ H_scale ⊗ H_force ⊗ H_symmetry ⊗ H_info ⊗ H_dim ⊗ H_topo
6
+ *
7
+ * Decomposition: Π = L + B + E
8
+ * Where:
9
+ * - L: Known laws (diagonal elements)
10
+ * - B: Bridge equations (off-diagonal elements)
11
+ * - E: Emergent phenomena (higher-order correlations)
12
+ */
13
+ export class UniversalTensor {
14
+ config;
15
+ knownLaws;
16
+ bridgeEquations;
17
+ emergentPhenomena;
18
+ /**
19
+ * Sparse tensor storage: only store non-zero elements.
20
+ * Key: serialized tensor indices
21
+ * Value: set of equation IDs occupying that cell (multiple laws/bridges
22
+ * may coexist in a single tensor cell without overwriting each other).
23
+ */
24
+ tensorData;
25
+ constructor(config) {
26
+ // Runtime validation (strict TS catches these at compile time, but JS
27
+ // consumers bypass the type system — we validate defensively here).
28
+ if (![3, 4, 5, 6].includes(config.rank)) {
29
+ throw new RangeError(`TensorConfig.rank must be 3, 4, 5, or 6; got ${config.rank}`);
30
+ }
31
+ if (!Array.isArray(config.scales) || config.scales.length === 0) {
32
+ throw new TypeError('TensorConfig.scales must be a non-empty array');
33
+ }
34
+ if (!Array.isArray(config.forces) || config.forces.length === 0) {
35
+ throw new TypeError('TensorConfig.forces must be a non-empty array');
36
+ }
37
+ // Apply defaults
38
+ this.config = {
39
+ rank: config.rank,
40
+ scales: config.scales,
41
+ forces: config.forces,
42
+ symmetries: config.symmetries && config.symmetries.length > 0
43
+ ? config.symmetries
44
+ : ['poincare', 'gauge'],
45
+ informationMeasures: config.informationMeasures && config.informationMeasures.length > 0
46
+ ? config.informationMeasures
47
+ : ['vonNeumann', 'shannon'],
48
+ sparse: config.sparse ?? true,
49
+ };
50
+ this.knownLaws = new Map();
51
+ this.bridgeEquations = new Map();
52
+ this.emergentPhenomena = new Map();
53
+ this.tensorData = new Map();
54
+ }
55
+ /**
56
+ * Add a known physical law to the tensor.
57
+ * Returns true if newly added, false if it replaced an existing law with the same id.
58
+ * If replacing, stale cell entries from the previous law are removed first.
59
+ */
60
+ addLaw(law) {
61
+ this.validateId(law.id, 'PhysicalLaw');
62
+ if (!(law.confidence >= 0 && law.confidence <= 1)) {
63
+ throw new RangeError(`PhysicalLaw.confidence must be in [0,1]; got ${law.confidence}`);
64
+ }
65
+ this.validateAxisMembership(law.scales, 'scales', this.config.scales);
66
+ this.validateAxisMembership(law.forces, 'forces', this.config.forces);
67
+ this.validateAxisMembership(law.symmetries, 'symmetries', this.config.symmetries);
68
+ this.validateAxisMembership(law.informationMeasures, 'informationMeasures', this.config.informationMeasures);
69
+ this.validateFiniteIntegerArray(law.dimensions, 'dimensions');
70
+ this.validateFiniteIntegerArray(law.topologies, 'topologies');
71
+ const previous = this.knownLaws.get(law.id);
72
+ if (previous) {
73
+ // Remove stale cell entries from the prior version before writing new ones.
74
+ for (const scale of previous.scales) {
75
+ for (const force of previous.forces) {
76
+ this.removeFromCell(this.serializeIndices({ scale, force }), law.id);
77
+ }
78
+ }
79
+ }
80
+ this.knownLaws.set(law.id, law);
81
+ // Store in diagonal elements for all scale/force combinations.
82
+ // Multiple laws may occupy the same cell; we accumulate rather than overwrite.
83
+ for (const scale of law.scales) {
84
+ for (const force of law.forces) {
85
+ const key = this.serializeIndices({ scale, force });
86
+ this.addToCell(key, law.id);
87
+ }
88
+ }
89
+ return previous === undefined;
90
+ }
91
+ /**
92
+ * Add a bridge equation connecting regimes.
93
+ * Returns true if newly added, false if it replaced an existing bridge with the same id.
94
+ * If replacing, stale cell entries from the previous bridge are removed first.
95
+ */
96
+ addBridge(bridge) {
97
+ this.validateId(bridge.id, 'BridgeEquation');
98
+ if (!(bridge.confidence >= 0 && bridge.confidence <= 1)) {
99
+ throw new RangeError(`BridgeEquation.confidence must be in [0,1]; got ${bridge.confidence}`);
100
+ }
101
+ // Bridges are off-diagonal by definition — reject source == target
102
+ // (including the degenerate case where both are empty {}).
103
+ const sourceKey = this.serializeIndices(bridge.source);
104
+ const targetKey = this.serializeIndices(bridge.target);
105
+ if (sourceKey === targetKey) {
106
+ throw new RangeError(`BridgeEquation source must differ from target in at least one index; id=${bridge.id}` +
107
+ (sourceKey === '' ? ' (both were empty {})' : ''));
108
+ }
109
+ const previous = this.bridgeEquations.get(bridge.id);
110
+ if (previous) {
111
+ this.removeFromCell(this.bridgeCellKey(previous.source, previous.target), bridge.id);
112
+ }
113
+ this.bridgeEquations.set(bridge.id, bridge);
114
+ // Store in off-diagonal elements. Multiple bridges between the same
115
+ // source/target regime pair are accumulated in the same cell.
116
+ this.addToCell(this.bridgeCellKey(bridge.source, bridge.target), bridge.id);
117
+ return previous === undefined;
118
+ }
119
+ /**
120
+ * Reject empty or whitespace-only IDs — almost always caller error.
121
+ */
122
+ validateId(id, kind) {
123
+ if (typeof id !== 'string' || id.trim() === '') {
124
+ throw new TypeError(`${kind}.id must be a non-empty string`);
125
+ }
126
+ }
127
+ /**
128
+ * Reject axis values that are not declared in the tensor's config.
129
+ * Prevents silent drift between TensorConfig (declared axes) and actual stored content.
130
+ */
131
+ validateAxisMembership(values, axisName, declared) {
132
+ if (!values)
133
+ return;
134
+ for (const v of values) {
135
+ if (!declared.includes(v)) {
136
+ throw new RangeError(`${axisName} value '${v}' is not declared in TensorConfig.${axisName}=[${declared.join(', ')}]`);
137
+ }
138
+ }
139
+ }
140
+ /**
141
+ * Reject non-finite or non-integer numeric axis values (dimensions, topologies).
142
+ * Integer values (including 0, negative integers) are allowed;
143
+ * NaN, Infinity, and non-integers are rejected.
144
+ */
145
+ validateFiniteIntegerArray(values, axisName) {
146
+ if (!values)
147
+ return;
148
+ for (const v of values) {
149
+ if (!Number.isFinite(v) || !Number.isInteger(v)) {
150
+ throw new RangeError(`${axisName} values must be finite integers; got ${v}`);
151
+ }
152
+ }
153
+ }
154
+ /**
155
+ * Compose the cell key for a bridge equation's source→target indices.
156
+ */
157
+ bridgeCellKey(source, target) {
158
+ return this.serializeIndices(source) + ' -> ' + this.serializeIndices(target);
159
+ }
160
+ /**
161
+ * Accumulate an equation ID into the tensor cell at the given key.
162
+ * Creates a new Set if the cell is empty.
163
+ */
164
+ addToCell(key, equationId) {
165
+ let cell = this.tensorData.get(key);
166
+ if (!cell) {
167
+ cell = new Set();
168
+ this.tensorData.set(key, cell);
169
+ }
170
+ cell.add(equationId);
171
+ }
172
+ /**
173
+ * Remove an equation ID from a tensor cell. Prunes empty cells.
174
+ */
175
+ removeFromCell(key, equationId) {
176
+ const cell = this.tensorData.get(key);
177
+ if (!cell)
178
+ return;
179
+ cell.delete(equationId);
180
+ if (cell.size === 0)
181
+ this.tensorData.delete(key);
182
+ }
183
+ /**
184
+ * Add an emergent phenomenon.
185
+ * Returns true if newly added, false if it replaced an existing phenomenon.
186
+ */
187
+ addEmergence(phenomenon) {
188
+ this.validateId(phenomenon.id, 'EmergentPhenomenon');
189
+ if (!Number.isInteger(phenomenon.order) || phenomenon.order < 3) {
190
+ throw new RangeError(`EmergentPhenomenon.order must be an integer >= 3 (higher-order correlations); got ${phenomenon.order}`);
191
+ }
192
+ if (!(phenomenon.confidence >= 0 && phenomenon.confidence <= 1)) {
193
+ throw new RangeError(`EmergentPhenomenon.confidence must be in [0,1]; got ${phenomenon.confidence}`);
194
+ }
195
+ const previous = this.emergentPhenomena.get(phenomenon.id);
196
+ if (previous) {
197
+ for (const indices of previous.indices) {
198
+ const key = this.serializeIndices(indices);
199
+ if (key)
200
+ this.removeFromCell(key, phenomenon.id);
201
+ }
202
+ }
203
+ this.emergentPhenomena.set(phenomenon.id, phenomenon);
204
+ // Populate tensorData at each declared index-tuple, matching the L and B
205
+ // components' storage pattern so the Π = L + B + E decomposition is
206
+ // uniformly represented in the sparse tensor.
207
+ for (const indices of phenomenon.indices) {
208
+ const key = this.serializeIndices(indices);
209
+ if (key)
210
+ this.addToCell(key, phenomenon.id);
211
+ }
212
+ return previous === undefined;
213
+ }
214
+ /**
215
+ * Return the IDs of laws and emergent phenomena stored at the diagonal cell
216
+ * addressed by the given indices.
217
+ * For bridge-equation cells (off-diagonal, source→target), use getBridgeCellContents instead.
218
+ */
219
+ getCellContents(indices) {
220
+ const key = this.serializeIndices(indices);
221
+ const cell = this.tensorData.get(key);
222
+ return cell ? Array.from(cell) : [];
223
+ }
224
+ /**
225
+ * Return the IDs of bridge equations stored at the off-diagonal cell
226
+ * addressed by the given source/target indices.
227
+ */
228
+ getBridgeCellContents(source, target) {
229
+ const key = this.bridgeCellKey(source, target);
230
+ const cell = this.tensorData.get(key);
231
+ return cell ? Array.from(cell) : [];
232
+ }
233
+ /**
234
+ * Query tensor for laws applicable to specific regime
235
+ */
236
+ queryLaws(indices) {
237
+ const results = [];
238
+ for (const law of this.knownLaws.values()) {
239
+ if (this.lawMatchesQuery(law, indices)) {
240
+ results.push(law);
241
+ }
242
+ }
243
+ return results;
244
+ }
245
+ /**
246
+ * Find bridge equations connecting two regimes
247
+ */
248
+ findBridges(source, target) {
249
+ const results = [];
250
+ for (const bridge of this.bridgeEquations.values()) {
251
+ if (this.indicesMatch(bridge.source, source) &&
252
+ this.indicesMatch(bridge.target, target)) {
253
+ results.push(bridge);
254
+ }
255
+ }
256
+ return results;
257
+ }
258
+ /**
259
+ * Get all known laws
260
+ */
261
+ getLaws() {
262
+ return Array.from(this.knownLaws.values());
263
+ }
264
+ /**
265
+ * Get all bridge equations
266
+ */
267
+ getBridges() {
268
+ return Array.from(this.bridgeEquations.values());
269
+ }
270
+ /**
271
+ * Get all emergent phenomena
272
+ */
273
+ getEmergence() {
274
+ return Array.from(this.emergentPhenomena.values());
275
+ }
276
+ /**
277
+ * Get tensor statistics
278
+ */
279
+ getStats() {
280
+ // occupiedCells = number of distinct (diagonal or off-diagonal) tensor cells
281
+ // that hold at least one equation ID. Each cell may hold multiple IDs (Set).
282
+ let totalEntries = 0;
283
+ for (const cell of this.tensorData.values())
284
+ totalEntries += cell.size;
285
+ return {
286
+ rank: this.config.rank,
287
+ knownLaws: this.knownLaws.size,
288
+ bridgeEquations: this.bridgeEquations.size,
289
+ emergentPhenomena: this.emergentPhenomena.size,
290
+ occupiedCells: this.tensorData.size,
291
+ totalEntries,
292
+ sparse: this.config.sparse,
293
+ /** @deprecated use occupiedCells (cell count) or totalEntries (sum of set sizes) */
294
+ totalElements: this.tensorData.size,
295
+ };
296
+ }
297
+ /**
298
+ * Serialize tensor indices to string key.
299
+ * Uses !== undefined checks so that dimension/topology values of 0
300
+ * (e.g., trivial winding number, genus-0 surface) are preserved.
301
+ */
302
+ serializeIndices(indices) {
303
+ const parts = [];
304
+ if (indices.scale !== undefined)
305
+ parts.push(`scale:${indices.scale}`);
306
+ if (indices.force !== undefined)
307
+ parts.push(`force:${indices.force}`);
308
+ if (indices.symmetry !== undefined)
309
+ parts.push(`sym:${indices.symmetry}`);
310
+ if (indices.information !== undefined)
311
+ parts.push(`info:${indices.information}`);
312
+ if (indices.dimension !== undefined)
313
+ parts.push(`dim:${indices.dimension}`);
314
+ if (indices.topology !== undefined)
315
+ parts.push(`topo:${indices.topology}`);
316
+ return parts.join('|');
317
+ }
318
+ /**
319
+ * Check if a law matches query indices.
320
+ * If the query specifies an index dimension that the law does not declare
321
+ * (e.g., the law has no informationMeasures but the query asks for one),
322
+ * the law is excluded — querying on an undeclared index cannot match.
323
+ */
324
+ lawMatchesQuery(law, query) {
325
+ if (query.scale && !law.scales.includes(query.scale)) {
326
+ return false;
327
+ }
328
+ if (query.force && !law.forces.includes(query.force)) {
329
+ return false;
330
+ }
331
+ if (query.symmetry && !law.symmetries.includes(query.symmetry)) {
332
+ return false;
333
+ }
334
+ if (query.information) {
335
+ if (!law.informationMeasures || !law.informationMeasures.includes(query.information)) {
336
+ return false;
337
+ }
338
+ }
339
+ if (query.dimension !== undefined) {
340
+ if (!law.dimensions || !law.dimensions.includes(query.dimension)) {
341
+ return false;
342
+ }
343
+ }
344
+ if (query.topology !== undefined) {
345
+ if (!law.topologies || !law.topologies.includes(query.topology)) {
346
+ return false;
347
+ }
348
+ }
349
+ return true;
350
+ }
351
+ /**
352
+ * Check if two tensor indices match
353
+ */
354
+ indicesMatch(a, b) {
355
+ if (b.scale && a.scale !== b.scale) {
356
+ return false;
357
+ }
358
+ if (b.force && a.force !== b.force) {
359
+ return false;
360
+ }
361
+ if (b.symmetry && a.symmetry !== b.symmetry) {
362
+ return false;
363
+ }
364
+ if (b.information && a.information !== b.information) {
365
+ return false;
366
+ }
367
+ if (b.dimension !== undefined && a.dimension !== b.dimension) {
368
+ return false;
369
+ }
370
+ if (b.topology !== undefined && a.topology !== b.topology) {
371
+ return false;
372
+ }
373
+ return true;
374
+ }
375
+ }
376
+ //# sourceMappingURL=tensor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"tensor.js","sourceRoot":"","sources":["../../src/core/tensor.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,131 @@
1
+ /**
2
+ * Core types for Universal Physics Tensor Framework
3
+ *
4
+ * These types define the fundamental structure of the tensor and its components.
5
+ */
6
+ /**
7
+ * Physical scales represented in the tensor
8
+ */
9
+ export type PhysicalScale = 'quantum' | 'mesoscopic' | 'classical' | 'cosmological';
10
+ /**
11
+ * Fundamental forces
12
+ */
13
+ export type Force = 'gravitational' | 'electromagnetic' | 'weak' | 'strong' | 'emergent';
14
+ /**
15
+ * Symmetry types
16
+ */
17
+ export type Symmetry = 'poincare' | 'gauge' | 'conformal' | 'susy' | 'emergent';
18
+ /**
19
+ * Information measures
20
+ */
21
+ export type InformationMeasure = 'vonNeumann' | 'shannon' | 'kolmogorov' | 'quantumDiscord';
22
+ /**
23
+ * Tensor configuration for initialization
24
+ */
25
+ export interface TensorConfig {
26
+ /** Tensor rank (3-6) */
27
+ rank: 3 | 4 | 5 | 6;
28
+ /** Physical scales to include */
29
+ scales: PhysicalScale[];
30
+ /** Forces to include */
31
+ forces: Force[];
32
+ /** Symmetries to consider */
33
+ symmetries?: Symmetry[];
34
+ /** Information measures to track */
35
+ informationMeasures?: InformationMeasure[];
36
+ /** Enable sparse representation for memory efficiency */
37
+ sparse?: boolean;
38
+ }
39
+ /**
40
+ * Tensor indices for addressing specific components
41
+ */
42
+ export interface TensorIndices {
43
+ scale?: PhysicalScale;
44
+ force?: Force;
45
+ symmetry?: Symmetry;
46
+ information?: InformationMeasure;
47
+ dimension?: number;
48
+ topology?: number;
49
+ }
50
+ /**
51
+ * Known physical law representation
52
+ */
53
+ export interface PhysicalLaw {
54
+ /** Unique identifier */
55
+ id: string;
56
+ /** Human-readable name */
57
+ name: string;
58
+ /** Mathematical formulation (LaTeX) */
59
+ equation: string;
60
+ /** Applicable scales */
61
+ scales: PhysicalScale[];
62
+ /** Involved forces */
63
+ forces: Force[];
64
+ /** Required symmetries */
65
+ symmetries: Symmetry[];
66
+ /** Confidence level (0-1) */
67
+ confidence: number;
68
+ /** Applicable information measures (optional) */
69
+ informationMeasures?: InformationMeasure[];
70
+ /** Applicable spatial/spacetime dimensions (optional) */
71
+ dimensions?: number[];
72
+ /** Applicable topological invariants (optional) */
73
+ topologies?: number[];
74
+ /** References to experimental validation */
75
+ references?: string[];
76
+ }
77
+ /**
78
+ * Bridge equation connecting different regimes
79
+ */
80
+ export interface BridgeEquation {
81
+ /** Unique identifier */
82
+ id: string;
83
+ /** Name */
84
+ name: string;
85
+ /** Source regime indices */
86
+ source: TensorIndices;
87
+ /** Target regime indices */
88
+ target: TensorIndices;
89
+ /** Mathematical formulation */
90
+ equation: string;
91
+ /** Theoretical confidence (0-1) */
92
+ confidence: number;
93
+ /** Experimental validation status */
94
+ validated: boolean;
95
+ /** Context and description */
96
+ description: string;
97
+ }
98
+ /**
99
+ * Emergent phenomenon from higher-order correlations
100
+ */
101
+ export interface EmergentPhenomenon {
102
+ /** Unique identifier */
103
+ id: string;
104
+ /** Name */
105
+ name: string;
106
+ /** Order of correlation (≥3) */
107
+ order: number;
108
+ /** Involved indices */
109
+ indices: TensorIndices[];
110
+ /** Mathematical description */
111
+ description: string;
112
+ /** Prediction confidence */
113
+ confidence: number;
114
+ }
115
+ /**
116
+ * Physical constants used in computations
117
+ */
118
+ export declare const PhysicalConstants: {
119
+ readonly c: 299792458;
120
+ readonly h: 6.62607015e-34;
121
+ readonly hbar: 1.054571817e-34;
122
+ readonly G: 6.6743e-11;
123
+ readonly kB: 1.380649e-23;
124
+ readonly e: 1.602176634e-19;
125
+ readonly alpha: 0.0072973525693;
126
+ readonly lP: 1.616255e-35;
127
+ readonly tP: 5.391247e-44;
128
+ readonly mP: 2.176434e-8;
129
+ readonly H0: 2.184e-18;
130
+ };
131
+ //# sourceMappingURL=types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /**
2
+ * Core types for Universal Physics Tensor Framework
3
+ *
4
+ * These types define the fundamental structure of the tensor and its components.
5
+ */
6
+ /**
7
+ * Physical constants used in computations
8
+ */
9
+ export const PhysicalConstants = {
10
+ // Fundamental constants
11
+ c: 299792458, // Speed of light (m/s)
12
+ h: 6.62607015e-34, // Planck constant (J⋅s)
13
+ hbar: 1.054571817e-34, // Reduced Planck constant (J⋅s)
14
+ G: 6.67430e-11, // Gravitational constant (m³/kg⋅s²)
15
+ kB: 1.380649e-23, // Boltzmann constant (J/K)
16
+ e: 1.602176634e-19, // Elementary charge (C)
17
+ // Derived constants
18
+ alpha: 7.2973525693e-3, // Fine structure constant (≈1/137)
19
+ lP: 1.616255e-35, // Planck length (m)
20
+ tP: 5.391247e-44, // Planck time (s)
21
+ mP: 2.176434e-8, // Planck mass (kg)
22
+ // Cosmological
23
+ H0: 2.184e-18, // Hubble constant (s⁻¹) ≈ 67.4 km/s/Mpc (Planck 2018 CMB, Aghanim et al. A&A 641 A6 2020; SH0ES local measurement gives ~73.0 ± 1.0 km/s/Mpc — the "Hubble tension")
24
+ };
25
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../src/core/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAqKH;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG;IAC/B,wBAAwB;IACxB,CAAC,EAAE,SAAS,EAAe,uBAAuB;IAClD,CAAC,EAAE,cAAc,EAAU,wBAAwB;IACnD,IAAI,EAAE,eAAe,EAAM,gCAAgC;IAC3D,CAAC,EAAE,WAAW,EAAa,oCAAoC;IAC/D,EAAE,EAAE,YAAY,EAAW,2BAA2B;IACtD,CAAC,EAAE,eAAe,EAAS,wBAAwB;IAEnD,oBAAoB;IACpB,KAAK,EAAE,eAAe,EAAK,mCAAmC;IAC9D,EAAE,EAAE,YAAY,EAAW,oBAAoB;IAC/C,EAAE,EAAE,YAAY,EAAW,kBAAkB;IAC7C,EAAE,EAAE,WAAW,EAAY,mBAAmB;IAE9C,eAAe;IACf,EAAE,EAAE,SAAS,EAAc,qKAAqK;CACxL,CAAC"}
@@ -0,0 +1,34 @@
1
+ /**
2
+ * Dimensional algebra: per-base-exponent arithmetic.
3
+ *
4
+ * Operations follow standard dimensional analysis (Bridgman, "Dimensional Analysis", 1922):
5
+ * - multiply: add exponents per base
6
+ * - divide: subtract exponents per base
7
+ * - power: scale exponents by the scalar `n`
8
+ * - add/sub: permitted only when both operands have the same dimension
9
+ *
10
+ * @module dimensional/algebra
11
+ */
12
+ import { Dimension } from './types.js';
13
+ import { DimensionMismatchError } from './errors.js';
14
+ /** Re-exported for backward compatibility with consumers that import
15
+ * `DimensionMismatchError` from `algebra.js`. The canonical definition
16
+ * now lives in `errors.ts` alongside the new `UPTError` base class. */
17
+ export { DimensionMismatchError };
18
+ export declare function multiply(a: Dimension, b: Dimension): Dimension;
19
+ export declare function divide(a: Dimension, b: Dimension): Dimension;
20
+ export declare function power(a: Dimension, n: number): Dimension;
21
+ export declare function equals(a: Dimension, b: Dimension): boolean;
22
+ export declare function add(a: Dimension, b: Dimension): Dimension;
23
+ export declare function subtract(a: Dimension, b: Dimension): Dimension;
24
+ /**
25
+ * Format a `Dimension` for human display.
26
+ *
27
+ * Strategy:
28
+ * 1. If `d` matches a named SI dimension exactly, return e.g. "[energy]".
29
+ * "dimensionless" is rendered as "[1]" for compactness.
30
+ * 2. Otherwise emit the bracketed product form, e.g. "[M L^2 T^-2]".
31
+ * Bases with exponent 0 are omitted; exponent 1 is written without "^1".
32
+ */
33
+ export declare function format(d: Dimension): string;
34
+ //# sourceMappingURL=algebra.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"algebra.d.ts","sourceRoot":"","sources":["../../src/dimensional/algebra.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,SAAS,EAAoB,MAAM,YAAY,CAAC;AACzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC;AAErD;;wEAEwE;AACxE,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAKlC,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAM9D;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAM5D;AAED,wBAAgB,KAAK,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,GAAG,SAAS,CAMxD;AAED,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,OAAO,CAK1D;AAED,wBAAgB,GAAG,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CASzD;AAED,wBAAgB,QAAQ,CAAC,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,SAAS,GAAG,SAAS,CAS9D;AAED;;;;;;;;GAQG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,SAAS,GAAG,MAAM,CAgB3C"}