@aura3d/cli 4.0.2 → 4.0.4
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.
- package/data/aura.exports.json +591 -0
- package/data/root-export-dispositions.json +24195 -0
- package/dist/codemods/camera-cast.d.ts +34 -0
- package/dist/codemods/camera-cast.d.ts.map +1 -0
- package/dist/codemods/camera-cast.js +259 -0
- package/dist/codemods/camera-cast.js.map +1 -0
- package/dist/codemods/core-v2.d.ts +55 -0
- package/dist/codemods/core-v2.d.ts.map +1 -0
- package/dist/codemods/core-v2.js +371 -0
- package/dist/codemods/core-v2.js.map +1 -0
- package/dist/codemods/engine-entry-imports.js +3 -3
- package/dist/codemods/engine-entry-imports.js.map +1 -1
- package/dist/codemods/post-v2.d.ts +88 -0
- package/dist/codemods/post-v2.d.ts.map +1 -0
- package/dist/codemods/post-v2.js +379 -0
- package/dist/codemods/post-v2.js.map +1 -0
- package/dist/commands/prd01/index.js +1 -1
- package/dist/commands/prd01/index.js.map +1 -1
- package/dist/commands/prd02/environmentsBake.d.ts.map +1 -1
- package/dist/commands/prd02/environmentsBake.js +1 -1
- package/dist/commands/prd02/environmentsBake.js.map +1 -1
- package/dist/commands/prd03/index.d.ts +4 -2
- package/dist/commands/prd03/index.d.ts.map +1 -1
- package/dist/commands/prd03/index.js +4 -2
- package/dist/commands/prd03/index.js.map +1 -1
- package/dist/commands/prd08/feelLint.js +1 -1
- package/dist/commands/prd08/feelLint.js.map +1 -1
- package/dist/commands/prd08/index.js +1 -1
- package/dist/commands/prd08/index.js.map +1 -1
- package/dist/commands/prd10/index.js +8 -1
- package/dist/commands/prd10/index.js.map +1 -1
- package/dist/lint/feelSourceScan.d.ts +20 -0
- package/dist/lint/feelSourceScan.d.ts.map +1 -0
- package/dist/lint/feelSourceScan.js +91 -0
- package/dist/lint/feelSourceScan.js.map +1 -0
- package/dist/look/lint-static.js +1 -1
- package/dist/look/lint-static.js.map +1 -1
- package/dist/migrate-three/CompatibilityWarnings.d.ts.map +1 -1
- package/dist/migrate-three/CompatibilityWarnings.js +57 -12
- package/dist/migrate-three/CompatibilityWarnings.js.map +1 -1
- package/dist/migrate-three/ImportMap.d.ts +36 -12
- package/dist/migrate-three/ImportMap.d.ts.map +1 -1
- package/dist/migrate-three/ImportMap.js +120 -22
- package/dist/migrate-three/ImportMap.js.map +1 -1
- package/dist/migrate-three/ThreeToA3DAdapter.d.ts.map +1 -1
- package/dist/migrate-three/ThreeToA3DAdapter.js +3 -1
- package/dist/migrate-three/ThreeToA3DAdapter.js.map +1 -1
- package/dist/migrate-three/emit.d.ts +14 -1
- package/dist/migrate-three/emit.d.ts.map +1 -1
- package/dist/migrate-three/emit.js +670 -23
- package/dist/migrate-three/emit.js.map +1 -1
- package/dist/migrate-three/mappings.d.ts +24 -2
- package/dist/migrate-three/mappings.d.ts.map +1 -1
- package/dist/migrate-three/mappings.js +259 -12
- package/dist/migrate-three/mappings.js.map +1 -1
- package/dist/migrate-three/parse.d.ts +2 -0
- package/dist/migrate-three/parse.d.ts.map +1 -1
- package/dist/migrate-three/parse.js +134 -19
- package/dist/migrate-three/parse.js.map +1 -1
- package/dist/migrate-three/report.d.ts +1 -0
- package/dist/migrate-three/report.d.ts.map +1 -1
- package/dist/migrate-three/report.js +1 -1
- package/dist/migrate-three/report.js.map +1 -1
- package/package.json +6 -4
- package/skills/llms.txt +91 -7
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/mappings.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"mappings.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/mappings.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AA4BH,MAAM,eAAe,GAAG,yBAAyB,CAAC;AAClD,MAAM,WAAW,GAAG,qBAAqB,CAAC;AAC1C,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AACpD,MAAM,aAAa,GAAG,uBAAuB,CAAC;AAC9C,MAAM,YAAY,GAAG,sBAAsB,CAAC;AAE5C,MAAM,CAAC,MAAM,qBAAqB,GAA4B;IAC5D,wEAAwE;IACxE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oGAAoG,EAAE;IAClM,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4IAA4I,EAAE;IACpQ,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,qBAAqB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4FAA4F,EAAE;IACtN,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,IAAI,EAAE,0GAA0G,EAAE,OAAO,EAAE,aAAa,EAAE;IACjN,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gFAAgF,EAAE;IAC9K,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gFAAgF,EAAE;IACjL,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wHAAwH,EAAE;IAC7O,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uIAAuI,EAAE;IACrP,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+GAA+G,EAAE;IACjO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iMAAiM,EAAE;IACnS,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yHAAyH,EAAE;IAC/O,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uNAAuN,EAAE;IAE9U,wEAAwE;IACxE,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mGAAmG,EAAE;IACrN,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8FAA8F,EAAE;IACtN,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,qBAAqB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qIAAqI,EAAE;IACjQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6GAA6G,EAAE;IACnO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oGAAoG,EAAE;IAC1N,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qHAAqH,EAAE;IAC/O,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2JAA2J,EAAE;IACjS,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uZAAuZ,EAAE;IAC9hB,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2YAA2Y,EAAE;IACzhB,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kIAAkI,EAAE;IAC/Q,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kIAAkI,EAAE;IAC/Q,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kRAAkR,EAAE;IACpZ,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oIAAoI,EAAE;IACzQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4FAA4F,EAAE;IACrO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yFAAyF,EAAE;IAC9N,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+IAA+I,EAAE;IACpR,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uFAAuF,EAAE;IAC9N,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uHAAuH,EAAE;IAClQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0FAA0F,EAAE;IACjO,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uGAAuG,EAAE;IACtP,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oJAAoJ,EAAE;IACrS,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4FAA4F,EAAE;IAC9O,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4FAA4F,EAAE;IAC9O,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2FAA2F,EAAE;IAC5O,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6FAA6F,EAAE;IAChP,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+EAA+E,EAAE;IAChO,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6GAA6G,EAAE;IAChP,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2GAA2G,EAAE;IACtP,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yIAAyI,EAAE;IACjQ,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,8FAA8F,EAAE;IACrL,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,kDAAkD,EAAE;IAE7H,wEAAwE;IACxE,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0FAA0F,EAAE;IACjN,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sHAAsH,EAAE;IAClP,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qFAAqF,EAAE;IACzM,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0FAA0F,EAAE;IAChN,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gHAAgH,EAAE;IACpO,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gGAAgG,EAAE;IACxK,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iGAAiG,EAAE;IACxK,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE;IAChI,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sFAAsF,EAAE;IAC9J,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,mGAAmG,EAAE;IACzK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;IACpH,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kNAAkN,EAAE;IACvV,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uHAAuH,EAAE;IAC/P,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,wLAAwL,EAAE;IAC7R,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yGAAyG,EAAE;IAC7M,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oFAAoF,EAAE;IAC7L,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yFAAyF,EAAE;IAC3L,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8EAA8E,EAAE;IAEjL,wEAAwE;IACxE,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wFAAwF,EAAE;IAC/M,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uDAAuD,EAAE;IAClK,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2DAA2D,EAAE;IACpK,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gDAAgD,EAAE;IAC/J,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,gBAAgB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6IAA6I,EAAE;IAC/P,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0GAA0G,EAAE;IAC5O,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oJAAoJ,EAAE;IACpQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0GAA0G,EAAE;IACjO,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6GAA6G,EAAE;IACvO,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oLAAoL,EAAE;IAE/S,wEAAwE;IACxE,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+FAA+F,EAAE;IAC/J,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qIAAqI,EAAE;IAC7O,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,2GAA2G,EAAE;IAC3K,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wIAAwI,EAAE;IACnQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iNAAiN,EAAE;IACjV,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uGAAuG,EAAE;IAC5L,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+EAA+E,EAAE;IACnN,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6KAA6K,EAAE;IACrS,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mLAAmL,EAAE;IACzT,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qMAAqM,EAAE;IAC/T,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wMAAwM,EAAE;IAC1W,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sIAAsI,EAAE;IACzN,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qIAAqI,EAAE;IACpS,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,YAAY,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mIAAmI,EAAE;IACtR,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sHAAsH,EAAE;IAC1S,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8FAA8F,EAAE;IACtQ,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iHAAiH,EAAE;IACrS,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,aAAa,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0GAA0G,EAAE;IAClR,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,oIAAoI,EAAE;IAC5Q,6EAA6E;IAC7E,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,oEAAoE,EAAE;IACnI,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IACnH,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE;IACrH,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sDAAsD,EAAE;IAC1H,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IACnH,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IACnH,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;IAChH,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;IACrH,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAClH,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IACvH,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IACnH,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,mDAAmD,EAAE;IACtH,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,mDAAmD,EAAE;IAC3H,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC9G,6CAA6C;IAC7C,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,qGAAqG,EAAE;IACvK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IAClG,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IAClG,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IAClG,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IACnG,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IACpG,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,iCAAiC,EAAE;IAEtG,wEAAwE;IACxE,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,cAAc,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yKAAyK,EAAE;IACvR,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0GAA0G,EAAE;IAC1Q,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kGAAkG,EAAE;IACpR,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6EAA6E,EAAE;IACzP,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qGAAqG,EAAE;IACrQ,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iIAAiI,EAAE;IACzT,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gGAAgG,EAAE;IACxR,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,cAAc,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yIAAyI,EAAE;IAC5S,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,eAAe,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+GAA+G,EAAE;IAEjS,wEAAwE;IACxE,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4LAA4L,EAAE;IACvV,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wNAAwN,EAAE;IAC3X,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,mBAAmB,EAAE,gBAAgB,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,ySAAyS,EAAE;IAE1d,wEAAwE;IACxE,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+IAA+I,EAAE;IAC3Q,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4HAA4H,EAAE;IACzN,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8GAA8G,EAAE;IAChO,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yDAAyD,EAAE;IACrK,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mJAAmJ,EAAE;IAClQ,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8GAA8G,EAAE;IAClO,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+HAA+H,EAAE;IACpP,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,sBAAsB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qJAAqJ,EAAE;IACxQ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,0BAA0B,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wCAAwC,EAAE;IAC9J,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,0BAA0B,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uCAAuC,EAAE;IAC5J,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,0BAA0B,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wCAAwC,EAAE;IAC9J,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,gCAAgC,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6CAA6C,EAAE;IACxK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mEAAmE,EAAE;IACnL,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,mBAAmB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kGAAkG,EAAE;IACjN,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,oBAAoB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8EAA8E,EAAE;IAC7L,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+JAA+J,EAAE;IAC7P,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kIAAkI,EAAE;IAC7O,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yMAAyM,EAAE;IAChT,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;IAC9G,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,gDAAgD,EAAE;IACnH,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sFAAsF,EAAE;IACvJ,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,kDAAkD,EAAE;IAChH,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC7G,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,0GAA0G,EAAE;IAC7K,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,0GAA0G,EAAE;IAC5K,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,sGAAsG,EAAE;IACtK,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,oDAAoD,EAAE;IACxH,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0XAA0X,EAAE;IAC7gB,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sXAAsX,EAAE;IACrf,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+OAA+O,EAAE;IACrX,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,iBAAiB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6GAA6G,EAAE;IAC7O,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,0cAA0c,EAAE;IAC/jB,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,0SAA0S,EAAE;IAEpZ,wEAAwE;IACxE,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iLAAiL,EAAE;IAC/T,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,sBAAsB,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gIAAgI,EAAE;IAE9P,wEAAwE;IACxE,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,aAAa,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uIAAuI,EAAE;IAC3O,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,kBAAkB,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sFAAsF,EAAE;IAEnM,wEAAwE;IACxE,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,eAAe,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gKAAgK,EAAE;IAClR,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yJAAyJ,EAAE;IACvR,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8MAA8M,EAAE;IAEvV,wEAAwE;IACxE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qHAAqH,EAAE;IACxO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uEAAuE,EAAE;IAC9L,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6GAA6G,EAAE;IAC5O,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uGAAuG,EAAE;IACzN,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kHAAkH,EAAE;IAEtO,wEAAwE;IACxE,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yEAAyE,EAAE;IACzN,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4HAA4H,EAAE;IACzM,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yEAAyE,EAAE;IACzN,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gGAAgG,EAAE;IACzP,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,mIAAmI,EAAE;IAC7M,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0IAA0I,EAAE;IAC1R,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0FAA0F,EAAE;IAC1O,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qLAAqL,EAAE;IAC5T,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4FAA4F,EAAE;IACzO,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,OAAO,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gIAAgI,EAAE;IAC1Q,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,KAAK,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sKAAsK,EAAE;IAC1S,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0HAA0H,EAAE;IAC1Q,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8EAA8E,EAAE;IACvJ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,wGAAwG,EAAE;IAC5P,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,+FAA+F,EAAE;IACzP,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,0FAA0F,EAAE;IAClO,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,yGAAyG,EAAE;IAC1P,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,oHAAoH,EAAE;IACxQ,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,qBAAqB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,oHAAoH,EAAE;IACtS,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,QAAQ,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,uHAAuH,EAAE;IAClQ,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,8IAA8I,EAAE;IAE/S,wEAAwE;IACxE,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,gMAAgM,EAAE;IACzW,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,mBAAmB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,sFAAsF,EAAE;IAClQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,sFAAsF,EAAE;IAC/P,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,uBAAuB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,uBAAuB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,sFAAsF,EAAE;IAC9Q,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,sBAAsB,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,0FAA0F,EAAE;IAC/Q,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,uEAAuE,EAAE;IAC9N,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,+EAA+E,EAAE;IACnO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,aAAa,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,wEAAwE,EAAE;IAClO,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,cAAc,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,0IAA0I,EAAE;IACvS,EAAE,SAAS,EAAE,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,UAAU,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,kHAAkH,EAAE;IACnQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,WAAW,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,2GAA2G,EAAE;IAC/P,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,yKAAyK,EAAE;IAC9S,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,WAAW,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,oHAAoH,EAAE;IAE5P,wEAAwE;IACxE,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,2UAA2U,EAAE;IACvc,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,WAAW,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,IAAI,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,2TAA2T,EAAE;IACvb,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,iUAAiU,EAAE;IAC7Z,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,yJAAyJ,EAAE;IAClQ,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iNAAiN,EAAE;IACxU,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,kOAAkO,EAAE;IACxT,EAAE,SAAS,EAAE,mBAAmB,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,sLAAsL,EAAE;IACjS,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6IAA6I,EAAE;IAC5P,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wIAAwI,EAAE;IACrP,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yHAAyH,EAAE;IACzO,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wLAAwL,EAAE;IACrT,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qWAAqW,EAAE;IACpe,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+YAA+Y,EAAE;IAEhhB,wEAAwE;IACxE,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qFAAqF,EAAE;IAClN,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kFAAkF,EAAE;IAC/M,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,uEAAuE,EAAE;IAC9M,EAAE,SAAS,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iEAAiE,EAAE;IAC5L,EAAE,SAAS,EAAE,YAAY,EAAE,MAAM,EAAE,cAAc,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yDAAyD,EAAE;IACtL,EAAE,SAAS,EAAE,cAAc,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,iEAAiE,EAAE;IAClM,EAAE,SAAS,EAAE,wBAAwB,EAAE,MAAM,EAAE,0BAA0B,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,0EAA0E,EAAE;IAC/N,EAAE,SAAS,EAAE,uBAAuB,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,sJAAsJ,EAAE;IAClQ,EAAE,SAAS,EAAE,kBAAkB,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,gEAAgE,EAAE;IACzM,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,EAAE,mBAAmB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6DAA6D,EAAE;IACpM,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,kBAAkB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,4DAA4D,EAAE;IACjM,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,+DAA+D,EAAE;IAC9L,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,EAAE,eAAe,EAAE,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,sJAAsJ,EAAE;IAExP,wEAAwE;IACxE,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,qBAAqB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wIAAwI,EAAE;IAC5R,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kHAAkH,EAAE;IAClT,EAAE,SAAS,EAAE,gBAAgB,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,qHAAqH,EAAE;IACnS,EAAE,SAAS,EAAE,eAAe,EAAE,MAAM,EAAE,gBAAgB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2IAA2I,EAAE;IACxT,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,kLAAkL,EAAE;IAC/W,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,yIAAyI,EAAE;IACtU,EAAE,SAAS,EAAE,oBAAoB,EAAE,MAAM,EAAE,oBAAoB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,wIAAwI,EAAE;IAClU,EAAE,SAAS,EAAE,yBAAyB,EAAE,MAAM,EAAE,yBAAyB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,yBAAyB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6IAA6I,EAAE;IACtV,EAAE,SAAS,EAAE,sBAAsB,EAAE,MAAM,EAAE,sBAAsB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,6IAA6I,EAAE;IAC7U,EAAE,SAAS,EAAE,qBAAqB,EAAE,MAAM,EAAE,qBAAqB,EAAE,IAAI,EAAE,SAAS,EAAE,YAAY,EAAE,qBAAqB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,OAAO,EAAE,aAAa,EAAE,IAAI,EAAE,2IAA2I,EAAE;CAEzU,CAAC;AAEF,MAAM,WAAW,GAAG,IAAI,GAAG,CAAuB,qBAAqB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;AAEtG,MAAM,UAAU,eAAe,CAAC,SAAiB;IAC/C,OAAO,WAAW,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;AACpC,CAAC"}
|
|
@@ -13,6 +13,8 @@ export interface ThreeConstruct {
|
|
|
13
13
|
readonly line: number;
|
|
14
14
|
/** Constructor-call argument source, trimmed ("" for non-ctor matches). */
|
|
15
15
|
readonly args: string;
|
|
16
|
+
/** Untrimmed argument source exactly as written (constructor matches only), for exact-text rewrites. */
|
|
17
|
+
readonly rawArgs?: string;
|
|
16
18
|
/** Import specifier when the construct is an import ("three", "three/addons/…"). */
|
|
17
19
|
readonly specifier?: string;
|
|
18
20
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"parse.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,MAAM,WAAW,cAAc;IAC7B,0EAA0E;IAC1E,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,sDAAsD;IACtD,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,2EAA2E;IAC3E,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,wGAAwG;IACxG,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,oFAAoF;IACpF,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;CAC7B;AAmGD,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,MAAM,GAAG,cAAc,EAAE,CAmDjE"}
|
|
@@ -6,19 +6,122 @@
|
|
|
6
6
|
* `from "three"`-family import specifiers. Produces the construct list the
|
|
7
7
|
* emitter and report walk.
|
|
8
8
|
*/
|
|
9
|
-
const
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
const NEW_OPEN = /\bnew\s+(THREE\.)?([A-Za-z0-9_]+)\s*\(/g;
|
|
10
|
+
/**
|
|
11
|
+
* Index of the `)` that closes the `(` at `open`, or -1 when unbalanced.
|
|
12
|
+
* Parens inside strings, template literals and comments are ignored. The
|
|
13
|
+
* argument list may span lines and nest to any depth, so a pretty-printed
|
|
14
|
+
* `new THREE.Mesh(new THREE.TubeGeometry(new THREE.CatmullRomCurve3(p), 8), m)`
|
|
15
|
+
* is captured whole instead of being skipped. Regex literals are not
|
|
16
|
+
* recognised (a paren inside one would unbalance the scan).
|
|
17
|
+
*/
|
|
18
|
+
function matchingParen(source, open) {
|
|
19
|
+
let depth = 0;
|
|
20
|
+
for (let i = open; i < source.length; i++) {
|
|
21
|
+
const ch = source[i];
|
|
22
|
+
if (ch === "(")
|
|
23
|
+
depth++;
|
|
24
|
+
else if (ch === ")") {
|
|
25
|
+
depth--;
|
|
26
|
+
if (depth === 0)
|
|
27
|
+
return i;
|
|
28
|
+
}
|
|
29
|
+
else if (ch === '"' || ch === "'") {
|
|
30
|
+
for (i++; i < source.length && source[i] !== ch; i++)
|
|
31
|
+
if (source[i] === "\\")
|
|
32
|
+
i++;
|
|
33
|
+
}
|
|
34
|
+
else if (ch === "`") {
|
|
35
|
+
for (i++; i < source.length && source[i] !== "`"; i++)
|
|
36
|
+
if (source[i] === "\\")
|
|
37
|
+
i++;
|
|
38
|
+
}
|
|
39
|
+
else if (ch === "/" && source[i + 1] === "/") {
|
|
40
|
+
while (i < source.length && source[i] !== "\n")
|
|
41
|
+
i++;
|
|
42
|
+
}
|
|
43
|
+
else if (ch === "/" && source[i + 1] === "*") {
|
|
44
|
+
const end = source.indexOf("*/", i + 2);
|
|
45
|
+
if (end < 0)
|
|
46
|
+
return -1;
|
|
47
|
+
i = end + 1;
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
return -1;
|
|
51
|
+
}
|
|
52
|
+
/** Every `new X(...)` / `new THREE.X(...)` call in the source, nested calls included. */
|
|
53
|
+
function scanNewCalls(source) {
|
|
54
|
+
const calls = [];
|
|
55
|
+
const lineStarts = [0];
|
|
56
|
+
for (let i = 0; i < source.length; i++)
|
|
57
|
+
if (source[i] === "\n")
|
|
58
|
+
lineStarts.push(i + 1);
|
|
59
|
+
const lineOf = (index) => {
|
|
60
|
+
let lo = 0;
|
|
61
|
+
let hi = lineStarts.length - 1;
|
|
62
|
+
while (lo < hi) {
|
|
63
|
+
const mid = (lo + hi + 1) >> 1;
|
|
64
|
+
if ((lineStarts[mid] ?? 0) <= index)
|
|
65
|
+
lo = mid;
|
|
66
|
+
else
|
|
67
|
+
hi = mid - 1;
|
|
68
|
+
}
|
|
69
|
+
return lo + 1;
|
|
70
|
+
};
|
|
71
|
+
for (const m of source.matchAll(NEW_OPEN)) {
|
|
72
|
+
const open = (m.index ?? 0) + m[0].length - 1;
|
|
73
|
+
const close = matchingParen(source, open);
|
|
74
|
+
if (close < 0)
|
|
75
|
+
continue;
|
|
76
|
+
calls.push({ name: m[2] ?? "", three: m[1] !== undefined, line: lineOf(m.index ?? 0), rawArgs: source.slice(open + 1, close) });
|
|
77
|
+
}
|
|
78
|
+
return calls;
|
|
79
|
+
}
|
|
12
80
|
const LOADER_LOAD = /\b([A-Za-z0-9_]+)\.load\s*\(/g;
|
|
13
|
-
const LOADER_DECL = /\b(?:const|let|var)\s+([A-Za-z0-9_]+)\s*=\s*new\s+THREE\.([A-Za-z0-9_]+)/g;
|
|
81
|
+
const LOADER_DECL = /\b(?:const|let|var)\s+([A-Za-z0-9_]+)\s*=\s*new\s+(?:THREE\.)?([A-Za-z0-9_]+)/g;
|
|
14
82
|
const THREE_IMPORT = /\bfrom\s+["'](three(?:\/[^"']*)?)["']/g;
|
|
15
|
-
|
|
83
|
+
// SC-04: `VRButton.createButton(renderer)` / `ARButton.createButton(renderer)` and the `renderer.xr.*` WebXRManager surface.
|
|
84
|
+
const XR_BUTTON = /\b(VRButton|ARButton)\.createButton\s*\(/g;
|
|
85
|
+
const WEBXR_MANAGER = /\b[A-Za-z_$][\w$]*\.xr\.(?:enabled|setSession|setReferenceSpaceType|setFramebufferScaleFactor|getController|getControllerGrip|getHand|isPresenting)\b/;
|
|
86
|
+
// SG-10 (P2): `scene.overrideMaterial = material` — a property write, so it is detected here, not by `new X(`.
|
|
87
|
+
const OVERRIDE_MATERIAL_WRITE = /\b([A-Za-z_$][\w$]*)\.overrideMaterial\s*=(?!=)/g;
|
|
88
|
+
const LOADER_NAMES = new Set([
|
|
89
|
+
"GLTFLoader",
|
|
90
|
+
"RGBELoader",
|
|
91
|
+
"TextureLoader",
|
|
92
|
+
"CubeTextureLoader",
|
|
93
|
+
"EXRLoader",
|
|
94
|
+
"AudioLoader",
|
|
95
|
+
"FileLoader",
|
|
96
|
+
"ImageBitmapLoader",
|
|
97
|
+
"DataTextureLoader",
|
|
98
|
+
"FontLoader",
|
|
99
|
+
"FBXLoader",
|
|
100
|
+
"MMDLoader",
|
|
101
|
+
"PLYLoader",
|
|
102
|
+
"STLLoader",
|
|
103
|
+
"USDZLoader",
|
|
104
|
+
"ThreeMFLoader",
|
|
105
|
+
"VOXLoader",
|
|
106
|
+
"ColladaLoader",
|
|
107
|
+
"TDSLoader",
|
|
108
|
+
"AMFLoader",
|
|
109
|
+
"IFCLoader"
|
|
110
|
+
]);
|
|
16
111
|
export function parseThreeSource(source) {
|
|
17
112
|
const constructs = [];
|
|
18
113
|
const lines = source.split("\n");
|
|
19
114
|
const seenLoaderTypes = new Set();
|
|
20
|
-
|
|
21
|
-
|
|
115
|
+
const callsByLine = new Map();
|
|
116
|
+
for (const call of scanNewCalls(source)) {
|
|
117
|
+
if (call.three)
|
|
118
|
+
seenLoaderTypes.add(call.name);
|
|
119
|
+
const bucket = callsByLine.get(call.line);
|
|
120
|
+
if (bucket)
|
|
121
|
+
bucket.push(call);
|
|
122
|
+
else
|
|
123
|
+
callsByLine.set(call.line, [call]);
|
|
124
|
+
}
|
|
22
125
|
// variable → loader type so `loader.load(...)` resolves to `GLTFLoader.load`
|
|
23
126
|
const varTypes = new Map();
|
|
24
127
|
for (const m of source.matchAll(LOADER_DECL))
|
|
@@ -28,27 +131,39 @@ export function parseThreeSource(source) {
|
|
|
28
131
|
for (const m of text.matchAll(THREE_IMPORT)) {
|
|
29
132
|
constructs.push({ construct: "import", line, args: "", specifier: m[1] });
|
|
30
133
|
}
|
|
31
|
-
|
|
32
|
-
|
|
134
|
+
const lineCalls = callsByLine.get(line) ?? [];
|
|
135
|
+
for (const call of lineCalls) {
|
|
136
|
+
if (call.three)
|
|
137
|
+
constructs.push({ construct: call.name, line, args: call.rawArgs.trim(), rawArgs: call.rawArgs });
|
|
33
138
|
}
|
|
34
|
-
for (const
|
|
35
|
-
// dedup with
|
|
36
|
-
if (
|
|
37
|
-
constructs.push({ construct: "Euler", line, args:
|
|
38
|
-
}
|
|
139
|
+
for (const call of lineCalls) {
|
|
140
|
+
// dedup with the THREE.-prefixed pass above: Euler already captured there
|
|
141
|
+
if (call.name === "Euler" && !call.three)
|
|
142
|
+
constructs.push({ construct: "Euler", line, args: call.rawArgs.trim(), rawArgs: call.rawArgs });
|
|
39
143
|
}
|
|
40
144
|
for (const m of text.matchAll(LOADER_LOAD)) {
|
|
41
145
|
const name = m[1] ?? "";
|
|
42
146
|
const resolved = varTypes.get(name) ?? (LOADER_NAMES.has(name) ? name : undefined);
|
|
43
|
-
|
|
147
|
+
// only real loader types qualify — `mat.load()` must not become
|
|
148
|
+
// `ShaderMaterial.load` just because `mat` was a `new`.
|
|
149
|
+
if (resolved && LOADER_NAMES.has(resolved))
|
|
44
150
|
constructs.push({ construct: `${resolved}.load`, line, args: "" });
|
|
45
151
|
}
|
|
46
|
-
|
|
47
|
-
for (const m of text.matchAll(NEW_BARE)) {
|
|
152
|
+
for (const m of text.matchAll(OVERRIDE_MATERIAL_WRITE)) {
|
|
48
153
|
const name = m[1] ?? "";
|
|
49
|
-
|
|
154
|
+
// Only a Scene qualifies: `mat.overrideMaterial = …` on an arbitrary object is not three's scene API.
|
|
155
|
+
if (varTypes.get(name) === "Scene" || name === "scene")
|
|
156
|
+
constructs.push({ construct: "Scene.overrideMaterial", line, args: "" });
|
|
157
|
+
}
|
|
158
|
+
for (const m of text.matchAll(XR_BUTTON))
|
|
159
|
+
constructs.push({ construct: `${m[1]}.createButton`, line, args: "" });
|
|
160
|
+
if (WEBXR_MANAGER.test(text))
|
|
161
|
+
constructs.push({ construct: "WebXRManager", line, args: "" });
|
|
162
|
+
// bare `new X(...)` for names a bare-THREE import could declare
|
|
163
|
+
for (const call of lineCalls) {
|
|
164
|
+
if (call.three || seenLoaderTypes.has(call.name))
|
|
50
165
|
continue;
|
|
51
|
-
constructs.push({ construct: name, line, args:
|
|
166
|
+
constructs.push({ construct: call.name, line, args: call.rawArgs.trim(), rawArgs: call.rawArgs, specifier: "bare" });
|
|
52
167
|
}
|
|
53
168
|
});
|
|
54
169
|
return constructs;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/parse.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;
|
|
1
|
+
{"version":3,"file":"parse.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/parse.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/report.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"report.d.ts","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/report.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAE5C,MAAM,WAAW,aAAa;IAC5B,QAAQ,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,CAAC;IACrC,QAAQ,CAAC,MAAM,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;CAC5H;AAED,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,SAAS,UAAU,EAAE,GAAG,aAAa,CAI7E;AAED,wBAAgB,mBAAmB,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CAEjE"}
|
|
@@ -5,7 +5,7 @@
|
|
|
5
5
|
* JSON plus a one-line summary count per mapping class.
|
|
6
6
|
*/
|
|
7
7
|
export function buildMigrateReport(rows) {
|
|
8
|
-
const counts = { exact: 0, approximate: 0, none: 0 };
|
|
8
|
+
const counts = { exact: 0, approximate: 0, none: 0, pending: 0 };
|
|
9
9
|
for (const row of rows)
|
|
10
10
|
counts[row.mapping]++;
|
|
11
11
|
return { rows, counts };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/report.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,UAAU,kBAAkB,CAAC,IAA2B;IAC5D,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;
|
|
1
|
+
{"version":3,"file":"report.js","sourceRoot":"","sources":["../../../../../packages/aura3d-cli/src/migrate-three/report.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AASH,MAAM,UAAU,kBAAkB,CAAC,IAA2B;IAC5D,MAAM,MAAM,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,CAAC,EAAE,CAAC;IACjE,KAAK,MAAM,GAAG,IAAI,IAAI;QAAE,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE,CAAC;IAC9C,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC;AAC1B,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,MAAqB;IACvD,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACzC,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@aura3d/cli",
|
|
3
|
-
"version": "4.0.
|
|
3
|
+
"version": "4.0.4",
|
|
4
4
|
"type": "module",
|
|
5
5
|
"bin": {
|
|
6
6
|
"aura3d": "dist/cli.js",
|
|
@@ -8,6 +8,7 @@
|
|
|
8
8
|
"cli": "dist/cli.js"
|
|
9
9
|
},
|
|
10
10
|
"files": [
|
|
11
|
+
"data",
|
|
11
12
|
"README.md",
|
|
12
13
|
"skills",
|
|
13
14
|
"!skills/AUTHORING.md",
|
|
@@ -27,9 +28,10 @@
|
|
|
27
28
|
"types": "./dist/index.d.ts",
|
|
28
29
|
"dependencies": {
|
|
29
30
|
"typescript": "^5.8.3",
|
|
30
|
-
"@aura3d/asset-index": "4.0.
|
|
31
|
-
"
|
|
32
|
-
"@aura3d/
|
|
31
|
+
"@aura3d/asset-index": "4.0.4",
|
|
32
|
+
"@aura3d/audio": "4.0.4",
|
|
33
|
+
"@aura3d/rendering": "4.0.4",
|
|
34
|
+
"create-aura3d": "4.0.4"
|
|
33
35
|
},
|
|
34
36
|
"description": "Bring real GLB/glTF assets into Aura3D browser apps with typed references, provenance, catalog search, validation, screenshots, and deploy checks.",
|
|
35
37
|
"keywords": [
|
package/skills/llms.txt
CHANGED
|
@@ -1,6 +1,77 @@
|
|
|
1
|
+
# Aura3D
|
|
2
|
+
|
|
3
|
+
> Aura3D: AI-Native TypeScript 3D SDK for Browser 3D Apps — typed scenes, looks, typed GLB/glTF assets, camera rigs, gameFeel, and gameplay through `@aura3d/engine` plus the `@aura3d/cli` toolchain, for browser 3D apps and interactive websites.
|
|
4
|
+
|
|
5
|
+
Aura3D is the AI-native TypeScript 3D SDK for browser 3D apps, interactive websites, prompt-to-code scene kits, typed GLB/glTF assets, Vite templates, diagnostics, screenshots, and static deploy checks.
|
|
6
|
+
|
|
7
|
+
## Facts
|
|
8
|
+
|
|
9
|
+
- Product: AI-native TypeScript 3D SDK for browser 3D apps, interactive websites, and prompt-to-code scene kits
|
|
10
|
+
- Website: https://aura3d.auraone.ai
|
|
11
|
+
- Current release: Aura3D 4.0.4 (per the repo manifest — the same source the build's version guard uses)
|
|
12
|
+
- Docs: https://aura3d.auraone.ai/docs/api.html
|
|
13
|
+
- Showcase game: https://aura3d.auraone.ai/showcase/aura-clash/
|
|
14
|
+
- Sitemap: https://aura3d.auraone.ai/sitemap.xml
|
|
15
|
+
- Crawl policy: https://aura3d.auraone.ai/robots.txt (public content allow-all; build internals and source maps disallowed)
|
|
16
|
+
- Last updated: 2026-10-20
|
|
17
|
+
|
|
18
|
+
## Pages
|
|
19
|
+
|
|
20
|
+
- [Home](https://aura3d.auraone.ai/): Aura3D is the AI-native TypeScript 3D SDK for browser 3D apps, interactive websites, prompt-to-code scene kits, typed GLB/glTF assets, Vite templates, diagnostics, screenshots, and static deploy checks.
|
|
21
|
+
|
|
22
|
+
### Docs
|
|
23
|
+
|
|
24
|
+
- [Aura3D Agent Quickstart for TypeScript 3D Apps](https://aura3d.auraone.ai/docs/agent-quickstart.html): Create an Aura3D browser 3D app with Vite, scene kits, typed assets, diagnostics, and AI-assisted TypeScript development.
|
|
25
|
+
- [Aura3D Agent Setup for AI Coding Assistants](https://aura3d.auraone.ai/docs/agent-rules.html): Set up AI coding assistants to generate Aura3D TypeScript scenes with public SDK imports, scene kits, primitives, typed assets, and Vite templates.
|
|
26
|
+
- [Aura3D TypeScript API for Agent-Written 3D Scenes](https://aura3d.auraone.ai/docs/api.html): Aura3D TypeScript API overview for scenes, models, cameras, lights, materials, primitives, scene kits, interactions, diagnostics, screenshots, and typed assets.
|
|
27
|
+
- [Aura3D Typed GLB and glTF Asset Workflow](https://aura3d.auraone.ai/docs/assets.html): Register GLB and glTF assets with the Aura3D CLI, import generated typed asset references, and build product viewers without string asset IDs.
|
|
28
|
+
- [Aura3D Vite Templates for Browser 3D Apps](https://aura3d.auraone.ai/docs/templates.html): Use create-aura3d Vite templates for product viewers, cinematic 3D scenes, mini-games, typed assets, diagnostics, and AI-assisted browser 3D development.
|
|
29
|
+
- [Aura3D Prompt-to-3D Recipes for AI Agents](https://aura3d.auraone.ai/docs/prompt-recipes.html): Prompt-to-3D recipes for Aura3D scene kits, primitives, particles, physics, materials, city scenes, data visualization, mini-games, and typed GLB product viewers.
|
|
30
|
+
- [Aura3D Deployment Checks for Static Browser 3D Sites](https://aura3d.auraone.ai/docs/deployment.html): Deploy Aura3D browser 3D apps with static builds, route checks, asset validation, browser-safe paths, and production hosting guidance.
|
|
31
|
+
- [Aura3D Guide for Claude-Assisted 3D Apps](https://aura3d.auraone.ai/docs/claude.html): Use Claude with Aura3D to generate TypeScript browser 3D scenes from scene kits, primitives, typed GLB/glTF assets, and Vite templates.
|
|
32
|
+
- [Aura3D Guide for Cursor AI 3D Development](https://aura3d.auraone.ai/docs/cursor.html): Use Cursor with Aura3D projects to edit TypeScript browser 3D scenes, Vite templates, typed GLB/glTF assets, scene kits, and prompt-to-3D workflows.
|
|
33
|
+
- [Aura3D Evidence and Release Gates](https://aura3d.auraone.ai/docs/evidence.html): How Aura3D binds public package, asset, browser, game, visual, and deployment claims to retained evidence.
|
|
34
|
+
- [Aura3D Claims, Limits, and Release Scope](https://aura3d.auraone.ai/docs/claims.html): Current Aura3D 4.0.4 claim boundaries for the root API, game presentations, assets, rendering, WebGPU, and diagnostics.
|
|
35
|
+
- [Aura3D 4.0.4 vs. Raw Three.js — Open-Source TypeScript 3D Engine](https://aura3d.auraone.ai/docs/aura3d-vs-threejs.html): Stop assembling 14 fragile npm packages to render a 3D scene. Compare Aura3D 4.0.4 (@aura3d/engine@4.0.4) against raw Three.js across architecture, asset type safety, WebGPU compute, physics, and 18-line scene boot.
|
|
36
|
+
- [Aura Clash: Aura3D Browser Fighting-Game Runtime Proof](https://aura3d.auraone.ai/docs/aura-clash-showcase.html): Aura Clash Arena is the Aura3D browser fighting-game development showcase: typed GLB runtime evidence, arena visuals, gameplay UI, accessibility controls, evidence routes, and release gates.
|
|
37
|
+
|
|
38
|
+
### Showcase
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
|
|
42
|
+
### Example apps
|
|
43
|
+
|
|
44
|
+
- [Aura3D Concept Car Cinema: Typed GLB Product Configurator Example](https://aura3d.auraone.ai/apps/wow-concept-car-cinema/)
|
|
45
|
+
- [Aura3D Damaged Helmet PBR Detail: Typed GLB Asset Viewer Example](https://aura3d.auraone.ai/apps/wow-damaged-helmet-pbr-detail/)
|
|
46
|
+
- [Aura3D Examples and Games](https://aura3d.auraone.ai/apps/showcase-index/)
|
|
47
|
+
- [Aura Slam 3D — Championship 3D Tennis on Aura3D](https://aura3d.auraone.ai/apps/showcase-top-tennis/)
|
|
48
|
+
- [Aura Slam 3D — Championship 3D Tennis (Second Edition) on Aura3D](https://aura3d.auraone.ai/apps/showcase-top-tennis-v2/)
|
|
49
|
+
- [Apex Overdrive — 3D Sky-Lane Highway Racer on Aura3D](https://aura3d.auraone.ai/apps/showcase-roadster-rush/)
|
|
50
|
+
- [Apex Overdrive — 3D Sky-Lane Highway Racer (Second Edition) on Aura3D](https://aura3d.auraone.ai/apps/showcase-roadster-rush-v2/)
|
|
51
|
+
- [THERMAL DRIFT — High-Velocity Combat Drone Racer · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-heatsink/)
|
|
52
|
+
- [THERMAL DRIFT — High-Velocity Combat Drone Racer (Second Edition) · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-heatsink-v2/)
|
|
53
|
+
- [Grid Dispatch — San Francisco Robotaxi &amp; Autonomous Fleet Showcase (Aura3D 4.0.4)](https://aura3d.auraone.ai/apps/showcase-teleoperator/)
|
|
54
|
+
- [Grid Dispatch — San Francisco Robotaxi &amp; Autonomous Fleet Showcase (Second Edition, Aura3D 4.0.4)](https://aura3d.auraone.ai/apps/showcase-teleoperator-v2/)
|
|
55
|
+
- [IRON CROWN — 2.5D Arena Fighter · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-iron-crown/)
|
|
56
|
+
- [PIP'S BIG LEAP — 3D Mascot Platformer · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-pips-big-leap/)
|
|
57
|
+
- [Aura Hoops 3D — Streetball Worldwide · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-aura-hoops-3d/): Aura Hoops 3D: NBA-Jam-pace 3v3 streetball on the Aura3D engine — check-ball, shot meter, Jam Meter dunk packages, six world courts, Dunk Lab, Handles Lab and a 32-team Street Tour.
|
|
58
|
+
- [Aura Diamond 3D — Baseball at Golden Hour · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-aura-diamond-3d/): Aura Diamond 3D: broadcast-grade 3D baseball — real at-bats with PCI hitting, 4 pitch arsenals, 6 ballparks from Harbor Sandlot to Lunar Park, a 10-out Derby Lab, Bullpen Lab pitch-recognition drills, and a 32-team World Classic.
|
|
59
|
+
- [Aura FC 3D — Street & Stadium Football · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-aura-fc-3d/): Aura FC 3D: five-a-side broadcast football on the Aura3D engine — six venues from a favela cage to a glacier dome, Shootout & Touch Labs, a 32-team World Circuit, and a Player Studio.
|
|
60
|
+
- [Red Zone 3D — Prime-Time Football on Aura3D](https://aura3d.auraone.ai/apps/showcase-red-zone-3d/): Red Zone 3D: broadcast-grade 3D American football — 7v7 arcade play-calling, six stadiums, Route Lab, Tackle Lab, and a 32-team Gridiron Series, rendered by the Aura3D engine.
|
|
61
|
+
- [Aura Links 3D — Postcard Golf Worldwide · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-aura-links-3d/): Aura Links 3D: three-click arcade golf on the Aura3D engine — six storybook courses from Scottish dunes to a lunar crater, Range & Putting Labs, and a 32-player Pro Circuit.
|
|
62
|
+
- [Bunker Zero — Retro Corridor FPS on Aura3D](https://aura3d.auraone.ai/apps/showcase-bunker-zero/): Bunker Zero: a six-floor retro corridor shooter in the Wolfenstein mold — grid mazes, push-wall secrets, three enemy archetypes and the Iron Warden, rendered by the Aura3D engine.
|
|
63
|
+
- [Aura3D - Slingshot Siege](https://aura3d.auraone.ai/apps/showcase-slingshot-siege/): Aura3D Slingshot Siege prototype: a Saturday-morning-cartoon physics destruction sandbox. Pull the pouch, lob five ammo types, squash every gull, topple every tower.
|
|
64
|
+
- [Dot Dash 3D — Neon Maze Chase · Aura3D Showcase](https://aura3d.auraone.ai/apps/showcase-dot-dash-3d/): Aura3D Dot Dash 3D showcase, a neon maze-chase arcade game: dash through six glowing circuits gobbling light-dots while four Specters hunt with distinct AI personalities.
|
|
65
|
+
- [Cross Hop — Aura3D Endless Lane Hopper](https://aura3d.auraone.ai/apps/showcase-cross-hop/): Aura3D Cross Hop showcase, an endless lane-hopping game: dodge cars, trams, trains, rivers and lava across 6 remixed themes, rescue critters, chase the high score.
|
|
66
|
+
|
|
67
|
+
## Notes
|
|
68
|
+
|
|
69
|
+
- Domain: https://aura3d.auraone.ai is a placeholder — swap AURA3D_SITE_URL (or the generator's ORIGIN) at deploy time; every URL in robots.txt, sitemap.xml, and this file follows.
|
|
70
|
+
|
|
71
|
+
<!-- agent-guide: everything below this marker is the long-form agent guide; gen-seo.mjs preserves it verbatim -->
|
|
1
72
|
Aura3D agent guide — a typed scene API for building real 3D apps: scenes, looks,
|
|
2
73
|
lighting, materials, typed assets, camera rigs, gameFeel, SDF text, decals, rigid bodies, and gameplay through
|
|
3
|
-
`@aura3d/engine` plus the `@aura3d/cli` toolchain. Current release: Aura3D 4.0.
|
|
74
|
+
`@aura3d/engine` plus the `@aura3d/cli` toolchain. Current release: Aura3D 4.0.4 (succeeding 4.0.1).
|
|
4
75
|
|
|
5
76
|
Hello world: every scene gets a look first.
|
|
6
77
|
|
|
@@ -104,14 +175,15 @@ cd my-scene && npm run dev
|
|
|
104
175
|
|
|
105
176
|
Mandatory 3D game & scene anti-failure guardrails:
|
|
106
177
|
|
|
107
|
-
1. No primitive-box characters, vehicles, or hero props ("no stick-figure humans or box cars"):
|
|
178
|
+
1. No primitive-box characters, vehicles, or hero props ("no stick-figure humans or box cars") & prop normalization (`targetMaxDimension` vs `targetHeight`):
|
|
108
179
|
- Never assemble characters, athletes, enemies, vehicles, aircraft, trees, or architectural landmarks out of `primitives.box`, `primitives.sphere`, or `primitives.cylinder` — keep every silhouette, look, lighting, and shadow readable with real 3D geometry.
|
|
109
|
-
- Every character, vehicle, creature, weapon, and landmark must mount a real 3D GLB via `model(assets.<name>, { targetMaxDimension, role })` from `src/aura-assets.ts
|
|
180
|
+
- Every character, vehicle, creature, weapon, and landmark must mount a real 3D GLB via `model(assets.<name>, { targetMaxDimension, role })` from `src/aura-assets.ts` (use `targetHeight` only for upright humanoids and `targetMaxDimension` for horizontal vehicles, rackets, paddles, weapons, barriers, and wide props so aspect ratios and silhouettes never stretch vertically). If the catalog lacks a required 3D model, generate a bespoke PBR 3D model with Meshy (`meshy`) and admit it via `aura3d assets import-meshy`.
|
|
181
|
+
- Drive rigged humanoid and creature GLBs (`skins > 0`) via `handle.setAnimation({ clip, loop: true, speed })` (or `AnimationController`) synchronized to locomotion (`idle`, `walk`, `run`, `attack`, `swing`) so limbs articulate under the key light and shadow instead of sliding rigid statues across the floor.
|
|
110
182
|
- Primitives (`primitives.plane`, `primitives.box`, `primitives.cylinder`, `primitives.torus`) are reserved strictly for ground/court surfaces, field lines, UI rings/reticles, laser beams, and invisible physics colliders.
|
|
111
|
-
2. Boot
|
|
112
|
-
-
|
|
113
|
-
-
|
|
114
|
-
- Keep mode, stage, camera, and roster selectors in a compact, non-blocking top HUD bar, and always call `button.blur()` after button clicks so `Space` or `Enter` gameplay keys never re-trigger focused HUD buttons.
|
|
183
|
+
2. Boot sequence gate (`await app.ready()`) & default manual control (`autopilot = false` on Frame 1):
|
|
184
|
+
- Gate Frame 1 on `await app.ready()` before fading out `#boot-gate` (`opacity: 0; pointer-events: none` then remove) and starting the gameplay simulation loop so lighting, shadow, and GLB silhouettes never pop in mid-frame.
|
|
185
|
+
- Default `autopilot` / AI demo mode to `false` (immediate manual control on Frame 1 once `#boot-gate` clears); enable AI autopilot only when `?autoplay=1` or `?demo=1` is present in the URL or when the user clicks the HUD `Auto` toggle button, and yield back to manual control on keyboard (`keydown`), pointer, touch, or gamepad input.
|
|
186
|
+
- Keep mode, stage, camera, `Auto`, and roster selectors in a compact, non-blocking top HUD bar that preserves camera framing, and always call `button.blur()` after button clicks so `Space` or `Enter` gameplay keys never re-trigger focused HUD buttons.
|
|
115
187
|
3. Always decimate and compress Meshy 3D GLBs before admission (`<= 20,000` vertices, `<= 2 MB`, 16-bit indices):
|
|
116
188
|
- Raw Meshy exports often contain `200,000–1,750,000` vertices and `20–65 MB` of uncompressed 4K PNG textures, which stall main-thread glTF parsing and exhaust GPU memory when multiple models load in one scene.
|
|
117
189
|
- Every generated Meshy GLB must be simplified (`MeshoptSimplifier` to `<= 20,000` vertices for props/vehicles, 16-bit `Uint16Array` indices, de-interleaved `byteStride === 0` buffers) and have its textures compressed to `<= 1024x1024` (`~0.5–2.0 MB` per GLB) before being admitted into `public/aura-assets/` so PBR palette, contrast, and reflection stay responsive.
|
|
@@ -120,6 +192,14 @@ Mandatory 3D game & scene anti-failure guardrails:
|
|
|
120
192
|
- Never omit `hash` in custom `defineAssets(...)` declarations and never place unhashed duplicate GLBs in route-local `apps/<route>/public/aura-assets/` that collide with root `public/aura-assets/`.
|
|
121
193
|
5. Mutate node handles instead of calling `app.setScene()` on every restart:
|
|
122
194
|
- Do not call `app.setScene()` when restarting a round, hole, or bout on the same stage/world; tearing down and remounting the scene disposes live GPU resources, breaks lighting and postprocess continuity, and aborts in-flight GLB loads. Track a scene signature (`stageId` / `worldId`) and reset positions, visibility, and animations through runtime node handles (`app.nodes.require(...)`).
|
|
195
|
+
6. Prevent fog whitewash, overexposure, and instanced emissive blowout (`qualityRebuild.flags`):
|
|
196
|
+
- Pass `{ fogDensityScale: 0, exposureEv: -0.1 }` to `looks.preset(...)` and include `qualityRebuild: { flags: ["game", "-compiler", "-post", "-vfxFog"] }` alongside `...looks.appOptions(...)` on fast action/arcade routes unless distance haze is explicitly desired (`looks.preset` emits `density: 24 / far`, which under `A3D_QR_VFX_FOG` creates an `exp2` haze wall at 20–30m). Never stack duplicate high-intensity `lights.directional`, `lights.ambient`, or `lights.hemisphere` nodes on top of `looks.preset(...)`.
|
|
197
|
+
- Never set `emissive: "#ffffff"` with high `emissiveIntensity` on an instanced pool material (`instances.box` / `primitives.box({ instances })`): per-instance `instanceColors` multiply `u_baseColor`, not `u_emissiveColor`, so white emissive blows out every instance to pure white regardless of instance color. Always pass an explicit `material: material.pbr({ color })` on untextured preview GLBs.
|
|
198
|
+
7. Ground `model()` feet on platform top surfaces (`y + sy / 2`) & wind custom meshes CCW:
|
|
199
|
+
- `model(asset, { targetHeight })` normalizes the GLB with `minY = 0` (feet at `position[1]`), whereas `primitives.box` and `primitives.cylinder` (`instances.box` / `instances.cylinder`) are centered on `[-0.5..+0.5]` so a platform at `(y, sy)` has its top surface at `y + sy / 2`. Always place grounded characters and vehicles at `platform.y + platform.sy / 2` so they never sink into logs, pads, or road lanes. Wind custom `primitives.mesh` triangles CCW when viewed from `+Y`.
|
|
200
|
+
8. Enforce full-viewport `100vw × 100vh` canvas, deep ground apron, and pushbox separation:
|
|
201
|
+
- Size `html, body, #app, canvas` to `100vw × 100vh` (`position: fixed; inset: 0; overflow: hidden`) and extend the 3D ground/stage apron deep enough in `+Z`/`-Z` under the camera frustum so the bottom third of the viewport never shows a black clear-color void. Disable `collision: true` on `camera.rigs.shoulder` when the target character has attached child runtime nodes, and enforce `>= 1.4m` fighter pushbox separation (`|x| >= 1.8m` at spawn).
|
|
202
|
+
|
|
123
203
|
|
|
124
204
|
Claims: use every feature freely. Claim only what a judged capture shows.
|
|
125
205
|
|
|
@@ -145,3 +225,7 @@ label the result `prototype`.
|
|
|
145
225
|
| --- | --- | --- |
|
|
146
226
|
| Material lab | `sceneKits.materialLab()` | root-proven (partial advanced coat extensions) |
|
|
147
227
|
|
|
228
|
+
|
|
229
|
+
|
|
230
|
+
|
|
231
|
+
|