@bloopjs/toodle 0.1.5 → 0.1.6

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/dist/mod.js.map CHANGED
@@ -7,7 +7,7 @@
7
7
  "import type { BackendType } from \"./IRenderBackend\";\n\n/**\n * Detect the best available rendering backend.\n *\n * Tries WebGPU first (better performance), falls back to WebGL 2.\n */\nexport async function detectBackend(): Promise<BackendType> {\n // Check for WebGPU support\n if (typeof navigator !== \"undefined\" && \"gpu\" in navigator) {\n try {\n const adapter = await navigator.gpu.requestAdapter();\n if (adapter) {\n return \"webgpu\";\n }\n } catch {\n // WebGPU initialization failed, fall back to WebGL\n }\n }\n\n return \"webgl2\";\n}\n\n/**\n * Check if WebGPU is available in the current environment.\n */\nexport function isWebGPUAvailable(): boolean {\n return typeof navigator !== \"undefined\" && \"gpu\" in navigator;\n}\n\n/**\n * Check if WebGL 2 is available in the current environment.\n */\nexport function isWebGL2Available(): boolean {\n if (typeof document === \"undefined\") {\n return false;\n }\n\n try {\n const canvas = document.createElement(\"canvas\");\n const gl = canvas.getContext(\"webgl2\");\n return gl !== null;\n } catch {\n return false;\n }\n}\n",
8
8
  "export const vertexShader = /*glsl*/ `#version 300 es\nprecision highp float;\n\n// Engine uniforms\nuniform mat3 u_viewProjection;\nuniform vec2 u_resolution;\n\n// Instance data attributes\n// location 0-2 are the model matrix for this instanced quad (mat3 as 3 vec3s)\nlayout(location = 0) in vec4 a_model0;\nlayout(location = 1) in vec4 a_model1;\nlayout(location = 2) in vec4 a_model2;\n// location 3 is the tint color\nlayout(location = 3) in vec4 a_tint;\n// location 4 is the uv offset and scale\nlayout(location = 4) in vec4 a_uvOffsetAndScale;\n// location 5 is the crop offset and scale\nlayout(location = 5) in vec4 a_cropOffsetAndScale;\n// location 6 is the atlas index (integer attribute)\nlayout(location = 6) in uint a_atlasIndex;\n\n// Outputs to fragment shader\nout vec4 v_uv; // xy = atlas uv, zw = original uv\nout vec4 v_tint;\nflat out int v_atlasIndex;\n\n// Lookup tables for unit quad positions and UVs\nconst vec2 posLookup[4] = vec2[4](\n vec2(-0.5, 0.5),\n vec2(-0.5, -0.5),\n vec2(0.5, 0.5),\n vec2(0.5, -0.5)\n);\n\nconst vec2 uvLookup[4] = vec2[4](\n vec2(0.0, 0.0),\n vec2(0.0, 1.0),\n vec2(1.0, 0.0),\n vec2(1.0, 1.0)\n);\n\nvoid main() {\n // Reconstruct model matrix from instance data\n mat3 modelMatrix = mat3(a_model0.xyz, a_model1.xyz, a_model2.xyz);\n\n // Transform vertex position\n vec2 localPosition = posLookup[gl_VertexID];\n vec2 cropOffset = a_cropOffsetAndScale.xy;\n vec2 cropScale = a_cropOffsetAndScale.zw;\n vec2 croppedPosition = localPosition * cropScale + cropOffset;\n vec3 worldPosition = modelMatrix * vec3(croppedPosition, 1.0);\n vec3 clipPosition = u_viewProjection * worldPosition;\n gl_Position = vec4(clipPosition.xy, 0.0, 1.0);\n\n // Set UV coordinates\n vec2 originalUv = uvLookup[gl_VertexID];\n vec2 atlasUv = originalUv * a_uvOffsetAndScale.zw * cropScale + a_uvOffsetAndScale.xy;\n v_uv = vec4(atlasUv, originalUv);\n\n // Pass through tint and atlas index\n v_tint = a_tint;\n v_atlasIndex = int(a_atlasIndex);\n}\n\n`;\n\n/**\n * Default fragment shader for WebGL2 quad rendering.\n * Custom fragment shaders must follow the same contract:\n * - Required uniforms: u_resolution, u_textureArray\n * - Required inputs: v_uv (vec4), v_tint (vec4), v_atlasIndex (flat int)\n * - Required output: fragColor (vec4)\n */\nexport const fragmentShader = /*glsl*/ `#version 300 es\nprecision highp float;\nprecision highp sampler2DArray;\n\n// Engine uniforms\nuniform vec2 u_resolution;\n\n// Texture array sampler\nuniform sampler2DArray u_textureArray;\n\n// Inputs from vertex shader\nin vec4 v_uv; // xy = atlas uv, zw = original uv\nin vec4 v_tint;\nflat in int v_atlasIndex;\n\n// Output color\nout vec4 fragColor;\n\nvoid main() {\n vec2 atlasUv = v_uv.xy;\n vec2 originalUv = v_uv.zw;\n\n if (v_atlasIndex == 1000) {\n // Rectangle - return solid color\n fragColor = vec4(1.0, 1.0, 1.0, 1.0) * v_tint;\n } else if (v_atlasIndex == 1001) {\n // Circle\n float edgeWidth = 4.0 / max(u_resolution.x, u_resolution.y);\n float centerDistance = 2.0 * distance(vec2(0.5, 0.5), originalUv);\n float alpha = 1.0 - smoothstep(1.0 - edgeWidth, 1.0 + edgeWidth, centerDistance);\n fragColor = vec4(v_tint.rgb, alpha * v_tint.a);\n } else {\n // Texture - sample from texture array\n vec4 color = texture(u_textureArray, vec3(atlasUv, float(v_atlasIndex)));\n fragColor = color * v_tint;\n }\n}\n`;\n\n/** Alias for users who want to extend the default shader */\nexport const defaultFragmentShader = fragmentShader;\n",
9
9
  "export function assert(condition: any, message: string): asserts condition {\n if (!condition) {\n throw new Error(message);\n }\n}\n",
10
- "import type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { assert } from \"../../utils/assert\";\nimport type { IBackendShader } from \"../IBackendShader\";\nimport type { ITextureAtlas } from \"../ITextureAtlas\";\nimport { fragmentShader, vertexShader } from \"./glsl/quad.glsl\";\nimport type { WebGLBackend } from \"./WebGLBackend\";\n\n// Instance data size in floats (must match WGSL shader)\n// model (12) + tint (4) + uvOffsetAndScale (4) + cropOffsetAndScale (4) + atlasIndex (1) + padding (3) = 28\nconst INSTANCE_FLOATS = 28;\nconst INSTANCE_BYTES = INSTANCE_FLOATS * Float32Array.BYTES_PER_ELEMENT;\n\n/**\n * WebGL 2 implementation of quad shader for instanced rendering.\n */\nexport class WebGLQuadShader implements IBackendShader {\n readonly label: string;\n\n #backend: WebGLBackend;\n #atlas: ITextureAtlas;\n #program: WebGLProgram;\n #vao: WebGLVertexArrayObject;\n #instanceBuffer: WebGLBuffer;\n #cpuBuffer: Float32Array;\n #instanceCount: number;\n #instanceIndex = 0;\n\n // Uniform locations\n #uViewProjection: WebGLUniformLocation | null = null;\n #uResolution: WebGLUniformLocation | null = null;\n #uTextureArray: WebGLUniformLocation | null = null;\n\n constructor(\n label: string,\n backend: WebGLBackend,\n instanceCount: number,\n userFragmentShader?: string,\n atlasId?: string,\n ) {\n const atlas = backend.getTextureAtlas(atlasId ?? \"default\");\n if (!atlas) {\n throw new Error(`Atlas \"${atlasId ?? \"default\"}\" not found`);\n }\n\n this.#atlas = atlas;\n this.label = label;\n this.#backend = backend;\n this.#instanceCount = instanceCount;\n\n const gl = backend.gl;\n\n // Compile shaders\n const vs = this.#compileShader(gl, gl.VERTEX_SHADER, vertexShader);\n const fs = this.#compileShader(\n gl,\n gl.FRAGMENT_SHADER,\n userFragmentShader ?? fragmentShader,\n );\n\n // Create program\n const program = gl.createProgram();\n assert(program, \"Failed to create WebGL program\");\n gl.attachShader(program, vs);\n gl.attachShader(program, fs);\n gl.linkProgram(program);\n\n if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {\n const info = gl.getProgramInfoLog(program);\n throw new Error(`Failed to link shader program: ${info}`);\n }\n\n this.#program = program;\n\n // Get uniform locations\n this.#uViewProjection = gl.getUniformLocation(program, \"u_viewProjection\");\n this.#uResolution = gl.getUniformLocation(program, \"u_resolution\");\n this.#uTextureArray = gl.getUniformLocation(program, \"u_textureArray\");\n\n // Create VAO\n const vao = gl.createVertexArray();\n assert(vao, \"Failed to create WebGL VAO\");\n this.#vao = vao;\n\n // Create instance buffer\n const instanceBuffer = gl.createBuffer();\n assert(instanceBuffer, \"Failed to create WebGL instance buffer\");\n this.#instanceBuffer = instanceBuffer;\n\n // Allocate CPU buffer\n this.#cpuBuffer = new Float32Array(instanceCount * INSTANCE_FLOATS);\n\n // Set up VAO\n gl.bindVertexArray(vao);\n gl.bindBuffer(gl.ARRAY_BUFFER, instanceBuffer);\n gl.bufferData(\n gl.ARRAY_BUFFER,\n instanceCount * INSTANCE_BYTES,\n gl.DYNAMIC_DRAW,\n );\n\n // Set up instance attributes\n // Each vec4 attribute takes up 16 bytes\n // model0 at location 0\n gl.enableVertexAttribArray(0);\n gl.vertexAttribPointer(0, 4, gl.FLOAT, false, INSTANCE_BYTES, 0);\n gl.vertexAttribDivisor(0, 1);\n\n // model1 at location 1\n gl.enableVertexAttribArray(1);\n gl.vertexAttribPointer(1, 4, gl.FLOAT, false, INSTANCE_BYTES, 16);\n gl.vertexAttribDivisor(1, 1);\n\n // model2 at location 2\n gl.enableVertexAttribArray(2);\n gl.vertexAttribPointer(2, 4, gl.FLOAT, false, INSTANCE_BYTES, 32);\n gl.vertexAttribDivisor(2, 1);\n\n // tint at location 3\n gl.enableVertexAttribArray(3);\n gl.vertexAttribPointer(3, 4, gl.FLOAT, false, INSTANCE_BYTES, 48);\n gl.vertexAttribDivisor(3, 1);\n\n // uvOffsetAndScale at location 4\n gl.enableVertexAttribArray(4);\n gl.vertexAttribPointer(4, 4, gl.FLOAT, false, INSTANCE_BYTES, 64);\n gl.vertexAttribDivisor(4, 1);\n\n // cropOffsetAndScale at location 5\n gl.enableVertexAttribArray(5);\n gl.vertexAttribPointer(5, 4, gl.FLOAT, false, INSTANCE_BYTES, 80);\n gl.vertexAttribDivisor(5, 1);\n\n // atlasIndex at location 6 (integer attribute - use vertexAttribIPointer)\n gl.enableVertexAttribArray(6);\n gl.vertexAttribIPointer(6, 1, gl.UNSIGNED_INT, INSTANCE_BYTES, 96);\n gl.vertexAttribDivisor(6, 1);\n\n gl.bindVertexArray(null);\n gl.bindBuffer(gl.ARRAY_BUFFER, null);\n\n // Cleanup shaders (they're linked to the program now)\n gl.deleteShader(vs);\n gl.deleteShader(fs);\n }\n\n #cachedUniform: EngineUniform | null = null;\n\n startFrame(uniform: EngineUniform): void {\n this.#instanceIndex = 0;\n // Cache uniform for use in processBatch - WebGL state is global,\n // so we need to set program/uniforms/textures right before drawing\n this.#cachedUniform = uniform;\n }\n\n #bindState(): void {\n const gl = this.#backend.gl;\n const uniform = this.#cachedUniform;\n if (!uniform)\n throw new Error(\"Tried to bind state but engine uniform is not set\");\n\n gl.useProgram(this.#program);\n\n // Set uniforms\n if (this.#uViewProjection) {\n // wgpu-matrix mat3 is stored as 12 floats (3 columns × 4 floats with padding)\n // WebGL uniformMatrix3fv expects 9 floats, so extract the relevant values\n const m = uniform.viewProjectionMatrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uViewProjection, false, mat3x3);\n }\n\n if (this.#uResolution) {\n gl.uniform2f(\n this.#uResolution,\n uniform.resolution.width,\n uniform.resolution.height,\n );\n }\n\n // Bind texture array to texture unit 0\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, this.#atlas.handle as WebGLTexture);\n if (this.#uTextureArray) {\n gl.uniform1i(this.#uTextureArray, 0);\n }\n }\n\n processBatch(nodes: SceneNode[]): number {\n const gl = this.#backend.gl;\n\n // Bind program, uniforms, and textures right before drawing\n // (WebGL state is global, so this must happen per-batch)\n this.#bindState();\n\n if (nodes.length > this.#instanceCount) {\n throw new Error(\n `ToodleInstanceCap: ${nodes.length} instances enqueued, max is ${this.#instanceCount} for ${this.label} shader`,\n );\n }\n\n let instanceCount = 0;\n\n // WebGL2 doesn't support firstInstance in drawArraysInstanced,\n // so we always write starting at offset 0 for each batch\n for (let i = 0; i < nodes.length; i++) {\n const instance = nodes[i];\n assert(instance.renderComponent, \"instance has no render component\");\n const floatOffset = instanceCount * INSTANCE_FLOATS;\n\n instanceCount += instance.renderComponent.writeInstance(\n instance,\n this.#cpuBuffer,\n floatOffset,\n );\n }\n\n // Upload instance data to GPU starting at offset 0\n gl.bindBuffer(gl.ARRAY_BUFFER, this.#instanceBuffer);\n\n gl.bufferSubData(\n gl.ARRAY_BUFFER,\n 0,\n this.#cpuBuffer,\n 0,\n instanceCount * INSTANCE_FLOATS,\n );\n\n // Draw instances from offset 0\n gl.bindVertexArray(this.#vao);\n gl.drawArraysInstanced(gl.TRIANGLE_STRIP, 0, 4, instanceCount);\n gl.bindVertexArray(null);\n\n return 1;\n }\n\n endFrame(): void {\n // Nothing to do\n }\n\n #compileShader(\n gl: WebGL2RenderingContext,\n type: number,\n source: string,\n ): WebGLShader {\n const shader = gl.createShader(type);\n assert(shader, \"Failed to create WebGL shader\");\n\n gl.shaderSource(shader, source);\n gl.compileShader(shader);\n\n if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n const info = gl.getShaderInfoLog(shader);\n const typeStr = type === gl.VERTEX_SHADER ? \"vertex\" : \"fragment\";\n gl.deleteShader(shader);\n throw new Error(`Failed to compile ${typeStr} shader: ${info}`);\n }\n\n return shader;\n }\n\n destroy(): void {\n const gl = this.#backend.gl;\n gl.deleteProgram(this.#program);\n gl.deleteVertexArray(this.#vao);\n gl.deleteBuffer(this.#instanceBuffer);\n }\n}\n",
10
+ "import type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { assert } from \"../../utils/assert\";\nimport type { IBackendShader } from \"../IBackendShader\";\nimport type { ITextureAtlas } from \"../ITextureAtlas\";\nimport { fragmentShader, vertexShader } from \"./glsl/quad.glsl\";\nimport type { WebGLBackend } from \"./WebGLBackend\";\n\n// Instance data size in floats (must match WGSL shader)\n// model (12) + tint (4) + uvOffsetAndScale (4) + cropOffsetAndScale (4) + atlasIndex (1) + padding (3) = 28\nconst INSTANCE_FLOATS = 28;\nconst INSTANCE_BYTES = INSTANCE_FLOATS * Float32Array.BYTES_PER_ELEMENT;\n\n/**\n * WebGL 2 implementation of quad shader for instanced rendering.\n */\nexport class WebGLQuadShader implements IBackendShader {\n readonly label: string;\n readonly code: string;\n\n #backend: WebGLBackend;\n #atlas: ITextureAtlas;\n #program: WebGLProgram;\n #vao: WebGLVertexArrayObject;\n #instanceBuffer: WebGLBuffer;\n #cpuBuffer: Float32Array;\n #instanceCount: number;\n #instanceIndex = 0;\n\n // Uniform locations\n #uViewProjection: WebGLUniformLocation | null = null;\n #uResolution: WebGLUniformLocation | null = null;\n #uTextureArray: WebGLUniformLocation | null = null;\n\n constructor(\n label: string,\n backend: WebGLBackend,\n instanceCount: number,\n userFragmentShader?: string,\n atlasId?: string,\n ) {\n const atlas = backend.getTextureAtlas(atlasId ?? \"default\");\n if (!atlas) {\n throw new Error(`Atlas \"${atlasId ?? \"default\"}\" not found`);\n }\n\n this.#atlas = atlas;\n this.label = label;\n this.code = userFragmentShader ?? fragmentShader;\n this.#backend = backend;\n this.#instanceCount = instanceCount;\n\n const gl = backend.gl;\n\n // Compile shaders\n const vs = this.#compileShader(gl, gl.VERTEX_SHADER, vertexShader);\n const fs = this.#compileShader(\n gl,\n gl.FRAGMENT_SHADER,\n userFragmentShader ?? fragmentShader,\n );\n\n // Create program\n const program = gl.createProgram();\n assert(program, \"Failed to create WebGL program\");\n gl.attachShader(program, vs);\n gl.attachShader(program, fs);\n gl.linkProgram(program);\n\n if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {\n const info = gl.getProgramInfoLog(program);\n throw new Error(`Failed to link shader program: ${info}`);\n }\n\n this.#program = program;\n\n // Get uniform locations\n this.#uViewProjection = gl.getUniformLocation(program, \"u_viewProjection\");\n this.#uResolution = gl.getUniformLocation(program, \"u_resolution\");\n this.#uTextureArray = gl.getUniformLocation(program, \"u_textureArray\");\n\n // Create VAO\n const vao = gl.createVertexArray();\n assert(vao, \"Failed to create WebGL VAO\");\n this.#vao = vao;\n\n // Create instance buffer\n const instanceBuffer = gl.createBuffer();\n assert(instanceBuffer, \"Failed to create WebGL instance buffer\");\n this.#instanceBuffer = instanceBuffer;\n\n // Allocate CPU buffer\n this.#cpuBuffer = new Float32Array(instanceCount * INSTANCE_FLOATS);\n\n // Set up VAO\n gl.bindVertexArray(vao);\n gl.bindBuffer(gl.ARRAY_BUFFER, instanceBuffer);\n gl.bufferData(\n gl.ARRAY_BUFFER,\n instanceCount * INSTANCE_BYTES,\n gl.DYNAMIC_DRAW,\n );\n\n // Set up instance attributes\n // Each vec4 attribute takes up 16 bytes\n // model0 at location 0\n gl.enableVertexAttribArray(0);\n gl.vertexAttribPointer(0, 4, gl.FLOAT, false, INSTANCE_BYTES, 0);\n gl.vertexAttribDivisor(0, 1);\n\n // model1 at location 1\n gl.enableVertexAttribArray(1);\n gl.vertexAttribPointer(1, 4, gl.FLOAT, false, INSTANCE_BYTES, 16);\n gl.vertexAttribDivisor(1, 1);\n\n // model2 at location 2\n gl.enableVertexAttribArray(2);\n gl.vertexAttribPointer(2, 4, gl.FLOAT, false, INSTANCE_BYTES, 32);\n gl.vertexAttribDivisor(2, 1);\n\n // tint at location 3\n gl.enableVertexAttribArray(3);\n gl.vertexAttribPointer(3, 4, gl.FLOAT, false, INSTANCE_BYTES, 48);\n gl.vertexAttribDivisor(3, 1);\n\n // uvOffsetAndScale at location 4\n gl.enableVertexAttribArray(4);\n gl.vertexAttribPointer(4, 4, gl.FLOAT, false, INSTANCE_BYTES, 64);\n gl.vertexAttribDivisor(4, 1);\n\n // cropOffsetAndScale at location 5\n gl.enableVertexAttribArray(5);\n gl.vertexAttribPointer(5, 4, gl.FLOAT, false, INSTANCE_BYTES, 80);\n gl.vertexAttribDivisor(5, 1);\n\n // atlasIndex at location 6 (integer attribute - use vertexAttribIPointer)\n gl.enableVertexAttribArray(6);\n gl.vertexAttribIPointer(6, 1, gl.UNSIGNED_INT, INSTANCE_BYTES, 96);\n gl.vertexAttribDivisor(6, 1);\n\n gl.bindVertexArray(null);\n gl.bindBuffer(gl.ARRAY_BUFFER, null);\n\n // Cleanup shaders (they're linked to the program now)\n gl.deleteShader(vs);\n gl.deleteShader(fs);\n }\n\n #cachedUniform: EngineUniform | null = null;\n\n startFrame(uniform: EngineUniform): void {\n this.#instanceIndex = 0;\n // Cache uniform for use in processBatch - WebGL state is global,\n // so we need to set program/uniforms/textures right before drawing\n this.#cachedUniform = uniform;\n }\n\n #bindState(): void {\n const gl = this.#backend.gl;\n const uniform = this.#cachedUniform;\n if (!uniform)\n throw new Error(\"Tried to bind state but engine uniform is not set\");\n\n gl.useProgram(this.#program);\n\n // Set uniforms\n if (this.#uViewProjection) {\n // wgpu-matrix mat3 is stored as 12 floats (3 columns × 4 floats with padding)\n // WebGL uniformMatrix3fv expects 9 floats, so extract the relevant values\n const m = uniform.viewProjectionMatrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uViewProjection, false, mat3x3);\n }\n\n if (this.#uResolution) {\n gl.uniform2f(\n this.#uResolution,\n uniform.resolution.width,\n uniform.resolution.height,\n );\n }\n\n // Bind texture array to texture unit 0\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, this.#atlas.handle as WebGLTexture);\n if (this.#uTextureArray) {\n gl.uniform1i(this.#uTextureArray, 0);\n }\n }\n\n processBatch(nodes: SceneNode[]): number {\n const gl = this.#backend.gl;\n\n // Bind program, uniforms, and textures right before drawing\n // (WebGL state is global, so this must happen per-batch)\n this.#bindState();\n\n if (nodes.length > this.#instanceCount) {\n throw new Error(\n `ToodleInstanceCap: ${nodes.length} instances enqueued, max is ${this.#instanceCount} for ${this.label} shader`,\n );\n }\n\n let instanceCount = 0;\n\n // WebGL2 doesn't support firstInstance in drawArraysInstanced,\n // so we always write starting at offset 0 for each batch\n for (let i = 0; i < nodes.length; i++) {\n const instance = nodes[i];\n assert(instance.renderComponent, \"instance has no render component\");\n const floatOffset = instanceCount * INSTANCE_FLOATS;\n\n instanceCount += instance.renderComponent.writeInstance(\n instance,\n this.#cpuBuffer,\n floatOffset,\n );\n }\n\n // Upload instance data to GPU starting at offset 0\n gl.bindBuffer(gl.ARRAY_BUFFER, this.#instanceBuffer);\n\n gl.bufferSubData(\n gl.ARRAY_BUFFER,\n 0,\n this.#cpuBuffer,\n 0,\n instanceCount * INSTANCE_FLOATS,\n );\n\n // Draw instances from offset 0\n gl.bindVertexArray(this.#vao);\n gl.drawArraysInstanced(gl.TRIANGLE_STRIP, 0, 4, instanceCount);\n gl.bindVertexArray(null);\n\n return 1;\n }\n\n endFrame(): void {\n // Nothing to do\n }\n\n #compileShader(\n gl: WebGL2RenderingContext,\n type: number,\n source: string,\n ): WebGLShader {\n const shader = gl.createShader(type);\n assert(shader, \"Failed to create WebGL shader\");\n\n gl.shaderSource(shader, source);\n gl.compileShader(shader);\n\n if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n const info = gl.getShaderInfoLog(shader);\n const typeStr = type === gl.VERTEX_SHADER ? \"vertex\" : \"fragment\";\n gl.deleteShader(shader);\n throw new Error(`Failed to compile ${typeStr} shader: ${info}`);\n }\n\n return shader;\n }\n\n destroy(): void {\n const gl = this.#backend.gl;\n gl.deleteProgram(this.#program);\n gl.deleteVertexArray(this.#vao);\n gl.deleteBuffer(this.#instanceBuffer);\n }\n}\n",
11
11
  "import type { Color } from \"../../coreTypes/Color\";\nimport type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { Size } from \"../../coreTypes/Size\";\nimport type { Limits, LimitsOptions } from \"../../limits\";\nimport { DEFAULT_LIMITS } from \"../../limits\";\nimport type { CpuTextureAtlas } from \"../../textures/types\";\nimport { assert } from \"../../utils/assert\";\nimport type { IBackendShader, QuadShaderCreationOpts } from \"../IBackendShader\";\nimport type { IRenderBackend } from \"../IRenderBackend\";\nimport type {\n ITextureAtlas,\n TextureAtlasFormat,\n TextureAtlasOptions,\n} from \"../ITextureAtlas\";\nimport { WebGLQuadShader } from \"./WebGLQuadShader\";\n\nexport type WebGLBackendOptions = {\n limits?: LimitsOptions;\n format?: \"rgba8unorm\" | \"rg8unorm\";\n};\n\n/**\n * WebGL 2 implementation of the render backend.\n */\nexport class WebGLBackend implements IRenderBackend {\n readonly type = \"webgl2\" as const;\n readonly limits: Limits;\n readonly atlasSize: Size;\n readonly defaultAtlasId = \"default\";\n\n #atlases = new Map<string, ITextureAtlas>();\n #gl: WebGL2RenderingContext;\n #canvas: HTMLCanvasElement;\n\n private constructor(\n gl: WebGL2RenderingContext,\n canvas: HTMLCanvasElement,\n limits: Limits,\n ) {\n this.#gl = gl;\n this.#canvas = canvas;\n this.limits = limits;\n this.atlasSize = {\n width: limits.textureSize,\n height: limits.textureSize,\n };\n }\n\n /**\n * Create a WebGL 2 backend attached to a canvas.\n */\n static async create(\n canvas: HTMLCanvasElement,\n options: WebGLBackendOptions = {},\n ): Promise<WebGLBackend> {\n const gl = canvas.getContext(\"webgl2\", {\n alpha: true,\n antialias: false,\n premultipliedAlpha: true,\n });\n\n if (!gl) {\n throw new Error(\"WebGL 2 not supported\");\n }\n\n const limits: Limits = {\n ...DEFAULT_LIMITS,\n ...options.limits,\n };\n\n const backend = new WebGLBackend(gl, canvas, limits);\n\n // Create the default texture atlas\n backend.createTextureAtlas(\"default\", {\n format: options.format ?? \"rgba8unorm\",\n layers: limits.textureArrayLayers,\n size: limits.textureSize,\n });\n\n return backend;\n }\n\n startFrame(clearColor: Color, loadOp: \"clear\" | \"load\"): void {\n const gl = this.#gl;\n\n // Set viewport to canvas size\n gl.viewport(0, 0, this.#canvas.width, this.#canvas.height);\n\n if (loadOp === \"clear\") {\n gl.clearColor(clearColor.r, clearColor.g, clearColor.b, clearColor.a);\n gl.clear(gl.COLOR_BUFFER_BIT);\n }\n\n // Enable blending\n gl.enable(gl.BLEND);\n gl.blendFuncSeparate(\n gl.SRC_ALPHA,\n gl.ONE_MINUS_SRC_ALPHA,\n gl.ONE,\n gl.ONE_MINUS_SRC_ALPHA,\n );\n }\n\n endFrame(): void {\n const gl = this.#gl;\n gl.flush();\n }\n\n updateEngineUniform(_uniform: EngineUniform): void {\n // Uniforms are updated per-shader in WebGL, not at the backend level\n }\n\n async uploadAtlas(\n atlas: CpuTextureAtlas,\n layerIndex: number,\n atlasId?: string,\n ): Promise<void> {\n const gl = this.#gl;\n const targetAtlas = this.getTextureAtlas(atlasId ?? \"default\");\n assert(targetAtlas, `Atlas \"${atlasId ?? \"default\"}\" not found`);\n const texture = targetAtlas.handle as WebGLTexture;\n\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, texture);\n\n if (atlas.rg8Bytes) {\n // Upload raw bytes for RG8 format\n gl.texSubImage3D(\n gl.TEXTURE_2D_ARRAY,\n 0, // mip level\n 0,\n 0,\n layerIndex, // x, y, z offset\n targetAtlas.size,\n targetAtlas.size,\n 1, // width, height, depth\n gl.RG,\n gl.UNSIGNED_BYTE,\n atlas.rg8Bytes,\n );\n } else {\n // Upload ImageBitmap for RGBA format\n gl.texSubImage3D(\n gl.TEXTURE_2D_ARRAY,\n 0,\n 0,\n 0,\n layerIndex,\n atlas.texture.width,\n atlas.texture.height,\n 1,\n gl.RGBA,\n gl.UNSIGNED_BYTE,\n atlas.texture,\n );\n }\n\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, null);\n }\n\n createQuadShader(opts: QuadShaderCreationOpts): IBackendShader {\n return new WebGLQuadShader(\n opts.label,\n this,\n opts.instanceCount,\n opts.userCode,\n opts.atlasId,\n );\n }\n\n createTextureAtlas(id: string, options?: TextureAtlasOptions): ITextureAtlas {\n if (this.#atlases.has(id)) {\n throw new Error(`Atlas \"${id}\" already exists`);\n }\n\n const gl = this.#gl;\n const format: TextureAtlasFormat = options?.format ?? \"rgba8unorm\";\n const layers = options?.layers ?? this.limits.textureArrayLayers;\n const size = options?.size ?? this.limits.textureSize;\n\n const texture = gl.createTexture();\n assert(texture, \"Failed to create WebGL texture\");\n\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, texture);\n\n // Configure texture parameters\n gl.texParameteri(gl.TEXTURE_2D_ARRAY, gl.TEXTURE_MIN_FILTER, gl.LINEAR);\n gl.texParameteri(gl.TEXTURE_2D_ARRAY, gl.TEXTURE_MAG_FILTER, gl.LINEAR);\n gl.texParameteri(gl.TEXTURE_2D_ARRAY, gl.TEXTURE_WRAP_S, gl.CLAMP_TO_EDGE);\n gl.texParameteri(gl.TEXTURE_2D_ARRAY, gl.TEXTURE_WRAP_T, gl.CLAMP_TO_EDGE);\n\n // Allocate storage for texture array\n const internalFormat = format === \"rg8unorm\" ? gl.RG8 : gl.RGBA8;\n\n gl.texStorage3D(\n gl.TEXTURE_2D_ARRAY,\n 1, // mip levels\n internalFormat,\n size,\n size,\n layers,\n );\n\n gl.bindTexture(gl.TEXTURE_2D_ARRAY, null);\n\n const atlas: ITextureAtlas = { id, format, layers, size, handle: texture };\n this.#atlases.set(id, atlas);\n return atlas;\n }\n\n getTextureAtlas(id: string): ITextureAtlas | null {\n return this.#atlases.get(id) ?? null;\n }\n\n destroyTextureAtlas(id: string): void {\n const atlas = this.#atlases.get(id);\n if (atlas) {\n this.#gl.deleteTexture(atlas.handle as WebGLTexture);\n this.#atlases.delete(id);\n }\n }\n\n /**\n * Get the default texture atlas handle.\n * @deprecated Use getTextureAtlas(\"default\").handle instead\n */\n get textureArrayHandle(): WebGLTexture {\n return this.getTextureAtlas(\"default\")!.handle as WebGLTexture;\n }\n\n resize(_width: number, _height: number): void {\n // Canvas resize is handled by the application\n }\n\n destroy(): void {\n const gl = this.#gl;\n // Destroy all atlases\n for (const atlas of this.#atlases.values()) {\n gl.deleteTexture(atlas.handle as WebGLTexture);\n }\n this.#atlases.clear();\n }\n\n /**\n * Get the WebGL 2 rendering context.\n */\n get gl(): WebGL2RenderingContext {\n return this.#gl;\n }\n\n /**\n * Get the presentation format (of the default atlas).\n */\n get presentationFormat(): TextureAtlasFormat {\n return this.getTextureAtlas(\"default\")?.format ?? \"rgba8unorm\";\n }\n}\n",
12
12
  "export type PostProcess = {\n /**\n * A post-processor modifies the current render before it is presented to the screen.\n *\n * @param encoder - a GPUCommandEncoder used to create render passes\n * @param pingpong - a pair of GPUTextures used for ping-pong rendering\n * @param screen - the final screen GPUTexture to render to\n */\n process(\n queue: GPUQueue,\n encoder: GPUCommandEncoder,\n pingpong: [GPUTexture, GPUTexture],\n screen: GPUTexture,\n ): void;\n};\n\nexport const PostProcessDefaults = {\n sampler(device: GPUDevice): GPUSampler {\n return device.createSampler({\n label: \"toodle post process sampler\",\n magFilter: \"linear\",\n minFilter: \"linear\",\n mipmapFilter: \"linear\",\n addressModeU: \"clamp-to-edge\",\n addressModeV: \"clamp-to-edge\",\n });\n },\n\n vertexBufferLayout(_device: GPUDevice): GPUVertexBufferLayout {\n return {\n arrayStride: 4 * 4,\n attributes: [{ shaderLocation: 0, offset: 0, format: \"float32x2\" }],\n };\n },\n\n vertexShader(device: GPUDevice): GPUShaderModule {\n return device.createShaderModule({\n label: \"toodle post process vertex shader\",\n code: `\n struct VertexOut {\n @builtin(position) position: vec4<f32>,\n @location(0) uv: vec2<f32>,\n };\n\n const enginePosLookup = array(vec2f(-1, 1), vec2f(-1, -1), vec2f(1, 1), vec2f(1, -1));\n const engineUvLookup = array(vec2f(0, 0), vec2f(0, 1), vec2f(1, 0), vec2f(1, 1));\n\n @vertex\n fn vs_main(@builtin(vertex_index) vertexIndex: u32) -> VertexOut {\n var out: VertexOut;\n out.position = vec4(enginePosLookup[vertexIndex], 0.0, 1.0);\n out.uv = engineUvLookup[vertexIndex];\n return out;\n }\n `,\n });\n },\n\n pipelineDescriptor(device: GPUDevice): GPURenderPipelineDescriptor {\n return {\n label: \"toodle post process pipeline descriptor\",\n layout: \"auto\",\n\n primitive: { topology: \"triangle-strip\" },\n vertex: {\n buffers: [PostProcessDefaults.vertexBufferLayout(device)],\n module: PostProcessDefaults.vertexShader(device),\n },\n };\n },\n} as const;\n",
13
13
  "/* webgpu-utils@1.10.3, license MIT */\nconst roundUpToMultipleOf = (v, multiple) => (((v + multiple - 1) / multiple) | 0) * multiple;\nfunction keysOf(obj) {\n return Object.keys(obj);\n}\nfunction range(count, fn) {\n return new Array(count).fill(0).map((_, i) => fn(i));\n}\n\nclass TypedArrayViewGenerator {\n arrayBuffer;\n byteOffset;\n constructor(sizeInBytes) {\n this.arrayBuffer = new ArrayBuffer(sizeInBytes);\n this.byteOffset = 0;\n }\n align(alignment) {\n this.byteOffset = roundUpToMultipleOf(this.byteOffset, alignment);\n }\n pad(numBytes) {\n this.byteOffset += numBytes;\n }\n getView(Ctor, numElements) {\n const view = new Ctor(this.arrayBuffer, this.byteOffset, numElements);\n this.byteOffset += view.byteLength;\n return view;\n }\n}\nfunction subarray(arr, offset, length) {\n return arr.subarray(offset, offset + length);\n}\n// TODO: fix better?\nconst isTypedArray = (arr) => arr && typeof arr.length === 'number' && arr.buffer instanceof ArrayBuffer && typeof arr.byteLength === 'number';\n\nconst createTypeDefs = (defs) => defs;\nconst b$1 = createTypeDefs({\n i32: { numElements: 1, align: 4, size: 4, type: 'i32', View: Int32Array },\n u32: { numElements: 1, align: 4, size: 4, type: 'u32', View: Uint32Array },\n f32: { numElements: 1, align: 4, size: 4, type: 'f32', View: Float32Array },\n f16: { numElements: 1, align: 2, size: 2, type: 'u16', View: Uint16Array },\n vec2f: { numElements: 2, align: 8, size: 8, type: 'f32', View: Float32Array },\n vec2i: { numElements: 2, align: 8, size: 8, type: 'i32', View: Int32Array },\n vec2u: { numElements: 2, align: 8, size: 8, type: 'u32', View: Uint32Array },\n vec2h: { numElements: 2, align: 4, size: 4, type: 'u16', View: Uint16Array },\n vec3i: { numElements: 3, align: 16, size: 12, type: 'i32', View: Int32Array },\n vec3u: { numElements: 3, align: 16, size: 12, type: 'u32', View: Uint32Array },\n vec3f: { numElements: 3, align: 16, size: 12, type: 'f32', View: Float32Array },\n vec3h: { numElements: 3, align: 8, size: 6, type: 'u16', View: Uint16Array },\n vec4i: { numElements: 4, align: 16, size: 16, type: 'i32', View: Int32Array },\n vec4u: { numElements: 4, align: 16, size: 16, type: 'u32', View: Uint32Array },\n vec4f: { numElements: 4, align: 16, size: 16, type: 'f32', View: Float32Array },\n vec4h: { numElements: 4, align: 8, size: 8, type: 'u16', View: Uint16Array },\n // AlignOf(vecR)\tSizeOf(array<vecR, C>)\n mat2x2f: { numElements: 4, align: 8, size: 16, type: 'f32', View: Float32Array },\n mat2x2h: { numElements: 4, align: 4, size: 8, type: 'u16', View: Uint16Array },\n mat3x2f: { numElements: 6, align: 8, size: 24, type: 'f32', View: Float32Array },\n mat3x2h: { numElements: 6, align: 4, size: 12, type: 'u16', View: Uint16Array },\n mat4x2f: { numElements: 8, align: 8, size: 32, type: 'f32', View: Float32Array },\n mat4x2h: { numElements: 8, align: 4, size: 16, type: 'u16', View: Uint16Array },\n mat2x3f: { numElements: 8, align: 16, size: 32, pad: [3, 1], type: 'f32', View: Float32Array },\n mat2x3h: { numElements: 8, align: 8, size: 16, pad: [3, 1], type: 'u16', View: Uint16Array },\n mat3x3f: { numElements: 12, align: 16, size: 48, pad: [3, 1], type: 'f32', View: Float32Array },\n mat3x3h: { numElements: 12, align: 8, size: 24, pad: [3, 1], type: 'u16', View: Uint16Array },\n mat4x3f: { numElements: 16, align: 16, size: 64, pad: [3, 1], type: 'f32', View: Float32Array },\n mat4x3h: { numElements: 16, align: 8, size: 32, pad: [3, 1], type: 'u16', View: Uint16Array },\n mat2x4f: { numElements: 8, align: 16, size: 32, type: 'f32', View: Float32Array },\n mat2x4h: { numElements: 8, align: 8, size: 16, type: 'u16', View: Uint16Array },\n mat3x4f: { numElements: 12, align: 16, size: 48, pad: [3, 1], type: 'f32', View: Float32Array },\n mat3x4h: { numElements: 12, align: 8, size: 24, pad: [3, 1], type: 'u16', View: Uint16Array },\n mat4x4f: { numElements: 16, align: 16, size: 64, type: 'f32', View: Float32Array },\n mat4x4h: { numElements: 16, align: 8, size: 32, type: 'u16', View: Uint16Array },\n // Note: At least as of WGSL V1 you can not create a bool for uniform or storage.\n // You can only create one in an internal struct. But, this code generates\n // views of structs and it needs to not fail if the struct has a bool\n bool: { numElements: 0, align: 1, size: 0, type: 'bool', View: Uint32Array },\n});\nconst kWGSLTypeInfo = createTypeDefs({\n ...b$1,\n 'atomic<i32>': b$1.i32,\n 'atomic<u32>': b$1.u32,\n 'vec2<i32>': b$1.vec2i,\n 'vec2<u32>': b$1.vec2u,\n 'vec2<f32>': b$1.vec2f,\n 'vec2<f16>': b$1.vec2h,\n 'vec3<i32>': b$1.vec3i,\n 'vec3<u32>': b$1.vec3u,\n 'vec3<f32>': b$1.vec3f,\n 'vec3<f16>': b$1.vec3h,\n 'vec4<i32>': b$1.vec4i,\n 'vec4<u32>': b$1.vec4u,\n 'vec4<f32>': b$1.vec4f,\n 'vec4<f16>': b$1.vec4h,\n 'mat2x2<f32>': b$1.mat2x2f,\n 'mat2x2<f16>': b$1.mat2x2h,\n 'mat3x2<f32>': b$1.mat3x2f,\n 'mat3x2<f16>': b$1.mat3x2h,\n 'mat4x2<f32>': b$1.mat4x2f,\n 'mat4x2<f16>': b$1.mat4x2h,\n 'mat2x3<f32>': b$1.mat2x3f,\n 'mat2x3<f16>': b$1.mat2x3h,\n 'mat3x3<f32>': b$1.mat3x3f,\n 'mat3x3<f16>': b$1.mat3x3h,\n 'mat4x3<f32>': b$1.mat4x3f,\n 'mat4x3<f16>': b$1.mat4x3h,\n 'mat2x4<f32>': b$1.mat2x4f,\n 'mat2x4<f16>': b$1.mat2x4h,\n 'mat3x4<f32>': b$1.mat3x4f,\n 'mat3x4<f16>': b$1.mat3x4h,\n 'mat4x4<f32>': b$1.mat4x4f,\n 'mat4x4<f16>': b$1.mat4x4h,\n});\nconst kWGSLTypes = keysOf(kWGSLTypeInfo);\n\n/**\n * Set which intrinsic types to make views for.\n *\n * Example:\n *\n * Given a an array of intrinsics like this\n * `array<vec3, 200>`\n *\n * The default is to create a single `Float32Array(4 * 200)`\n * because creating 200 `Float32Array` views is not usually\n * what you want.\n *\n * If you do want individual views then you'd call\n * `setIntrinsicsToView(['vec3f'])` and now you get\n * an array of 200 `Float32Array`s.\n *\n * Note: `setIntrinsicsToView` always sets ALL types. The list you\n * pass it is the types you want views created for, all other types\n * will be reset to do the default. In other words\n *\n * ```js\n * setIntrinsicsToView(['vec3f'])\n * setIntrinsicsToView(['vec2f'])\n * ```\n *\n * Only `vec2f` will have views created. `vec3f` has been reset to the default by\n * the second call\n *\n * You can pass in `true` as the 2nd parameter to make it set which types\n * to flatten and all others will be set to have views created. For example\n * to expand all types would be `setIntrinsicsToView([], true)`. To expand\n * all except `f32` would be `setIntrinsicsToView(['f32'], true)`.\n *\n * To reset all types to the default call it with no arguments\n *\n * @param types array of types to make views for\n * @param flatten whether to flatten or expand the specified types.\n */\nfunction setIntrinsicsToView(types = [], flatten) {\n // we need to track what we've viewed because for example `vec3f` references\n // the same info as `vec3<f32>` so we'd set one and reset the other.\n const visited = new Set();\n for (const type of kWGSLTypes) {\n const info = kWGSLTypeInfo[type];\n if (!visited.has(info)) {\n visited.add(info);\n info.flatten = types.includes(type) ? flatten : !flatten;\n }\n }\n}\nsetIntrinsicsToView();\n// This needs to be fixed! 😱\nfunction getSizeOfTypeDef(typeDef) {\n const asArrayDef = typeDef;\n const elementType = asArrayDef.elementType;\n if (elementType) {\n return asArrayDef.size;\n /*\n if (isIntrinsic(elementType)) {\n const asIntrinsicDef = elementType as IntrinsicDefinition;\n const { align } = typeInfo[asIntrinsicDef.type];\n return roundUpToMultipleOf(typeDef.size, align) * asArrayDef.numElements;\n } else {\n return asArrayDef.numElements * getSizeOfTypeDef(elementType);\n }\n */\n }\n else {\n const asStructDef = typeDef;\n const numElements = asArrayDef.numElements || 1;\n if (asStructDef.fields) {\n return typeDef.size * numElements;\n }\n else {\n const asIntrinsicDef = typeDef;\n const { align } = kWGSLTypeInfo[asIntrinsicDef.type];\n return numElements > 1\n ? roundUpToMultipleOf(typeDef.size, align) * numElements\n : typeDef.size;\n }\n }\n}\n// If numElements is undefined this is NOT an array. If it is defined then it IS an array\n// Sizes for arrays are different than sizes for non-arrays. Example\n// a vec3f non array is Float32Array(3)\n// a vec3f array of 2 is Float32Array(4 * 2)\n// a vec3f array of 1 is Float32Array(4 * 1)\nfunction makeIntrinsicTypedArrayView(typeDef, buffer, baseOffset, numElements) {\n const { size, type } = typeDef;\n try {\n const { View, align, size: intrinsicSize } = kWGSLTypeInfo[type];\n const isArray = numElements !== undefined;\n const sizeInBytes = isArray\n ? roundUpToMultipleOf(size, align)\n : intrinsicSize;\n const baseNumElements = sizeInBytes / View.BYTES_PER_ELEMENT;\n const effectiveNumElements = isArray\n ? (numElements === 0\n ? (buffer.byteLength - baseOffset) / sizeInBytes\n : numElements)\n : 1;\n return new View(buffer, baseOffset, baseNumElements * effectiveNumElements);\n }\n catch {\n throw new Error(`unknown type: ${type}`);\n }\n}\nfunction isIntrinsic(typeDef) {\n return !typeDef.fields &&\n !typeDef.elementType;\n}\n/**\n * Creates a set of named TypedArray views on an ArrayBuffer. If you don't\n * pass in an ArrayBuffer, one will be created. If you're using an unsized\n * array then you must pass in your own arraybuffer\n *\n * Example:\n *\n * ```js\n * const code = `\n * struct Stuff {\n * direction: vec3f,\n * strength: f32,\n * matrix: mat4x4f,\n * };\n * @group(0) @binding(0) var<uniform> uni: Stuff;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const views = makeTypedArrayViews(devs.uniforms.uni.typeDefinition);\n * ```\n *\n * views would effectively be\n *\n * ```js\n * views = {\n * direction: Float32Array(arrayBuffer, 0, 3),\n * strength: Float32Array(arrayBuffer, 3, 4),\n * matrix: Float32Array(arraybuffer, 4, 20),\n * };\n * ```\n *\n * You can use the views directly or you can use {@link setStructuredView}\n *\n * @param typeDef Definition of the various types of views.\n * @param arrayBuffer Optional ArrayBuffer to use (if one provided one will be created)\n * @param offset Optional offset in existing ArrayBuffer to start the views.\n * @returns A bunch of named TypedArray views and the ArrayBuffer\n */\nfunction makeTypedArrayViews(typeDef, arrayBuffer, offset) {\n const baseOffset = offset || 0;\n const buffer = arrayBuffer || new ArrayBuffer(getSizeOfTypeDef(typeDef));\n const makeViews = (typeDef, baseOffset) => {\n const asArrayDef = typeDef;\n const elementType = asArrayDef.elementType;\n if (elementType) {\n // TODO: Should be optional? Per Type? Depth set? Per field?\n // The issue is, if we have `array<vec4, 1000>` we don't likely\n // want 1000 `Float32Array(4)` views. We want 1 `Float32Array(1000 * 4)` view.\n // On the other hand, if we have `array<mat4x4, 10>` the maybe we do want\n // 10 `Float32Array(16)` views since you might want to do\n // `mat4.perspective(fov, aspect, near, far, foo.bar.arrayOf10Mat4s[3])`;\n if (isIntrinsic(elementType) && kWGSLTypeInfo[elementType.type].flatten) {\n return makeIntrinsicTypedArrayView(elementType, buffer, baseOffset, asArrayDef.numElements);\n }\n else {\n const { size } = getSizeAndAlignmentOfUnsizedArrayElementOfTypeDef(typeDef);\n const effectiveNumElements = asArrayDef.numElements === 0\n ? (buffer.byteLength - baseOffset) / size\n : asArrayDef.numElements;\n return range(effectiveNumElements, i => makeViews(elementType, baseOffset + size * i));\n }\n }\n else if (typeof typeDef === 'string') {\n throw Error('unreachable');\n }\n else {\n const fields = typeDef.fields;\n if (fields) {\n const views = {};\n for (const [name, { type, offset }] of Object.entries(fields)) {\n views[name] = makeViews(type, baseOffset + offset);\n }\n return views;\n }\n else {\n return makeIntrinsicTypedArrayView(typeDef, buffer, baseOffset);\n }\n }\n };\n return { views: makeViews(typeDef, baseOffset), arrayBuffer: buffer };\n}\n/**\n * Given a set of TypeArrayViews and matching JavaScript data\n * sets the content of the views.\n *\n * Example:\n *\n * ```js\n * const code = `\n * struct Stuff {\n * direction: vec3f,\n * strength: f32,\n * matrix: mat4x4f,\n * };\n * @group(0) @binding(0) var<uniform> uni: Stuff;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const views = makeTypedArrayViews(devs.uniforms.uni.typeDefinition);\n *\n * setStructuredViews({\n * direction: [1, 2, 3],\n * strength: 45,\n * matrix: [\n * 1, 0, 0, 0,\n * 0, 1, 0, 0,\n * 0, 0, 1, 0,\n * 0, 0, 0, 1,\n * ],\n * });\n * ```\n *\n * The code above will set the various views, which all point to different\n * locations within the same array buffer.\n *\n * See {@link makeTypedArrayViews}.\n *\n * @param data The new values\n * @param views TypedArray views as returned from {@link makeTypedArrayViews}\n */\nfunction setStructuredView(data, views) {\n if (data === undefined) {\n return;\n }\n else if (isTypedArray(views)) {\n const view = views;\n if (view.length === 1 && typeof data === 'number') {\n view[0] = data;\n }\n else {\n if (Array.isArray(data[0]) || isTypedArray(data[0])) {\n // complete hack!\n // there's no type data here so let's guess based on the user's data\n const dataLen = data[0].length;\n const stride = dataLen === 3 ? 4 : dataLen;\n for (let i = 0; i < data.length; ++i) {\n const offset = i * stride;\n view.set(data[i], offset);\n }\n }\n else {\n view.set(data);\n }\n }\n }\n else if (Array.isArray(views)) {\n const asArray = views;\n data.forEach((newValue, ndx) => {\n setStructuredView(newValue, asArray[ndx]);\n });\n }\n else {\n const asViews = views;\n for (const [key, newValue] of Object.entries(data)) {\n const view = asViews[key];\n if (view) {\n setStructuredView(newValue, view);\n }\n }\n }\n}\n/**\n * Given a VariableDefinition, create matching TypedArray views\n *\n * @param varDef A VariableDefinition as returned from {@link makeShaderDataDefinitions}\n * @param arrayBuffer Optional ArrayBuffer for the views\n * @param offset Optional offset into the ArrayBuffer for the views\n * @returns TypedArray views for the various named fields of the structure as well\n * as a `set` function to make them easy to set, and the arrayBuffer\n *\n * ```js\n * const code = `\n * struct HSL {\n * hue: f32,\n * sat: f32,\n * lum: f32,\n * };\n * struct MyStorage {\n * colors: array<HSL, 4>,\n * brightness: f32,\n * kernel: array<f32, 9>,\n * };\n * @group(0) @binding(0) var<storage> myStorage: MyStorage;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const myUniformValues = makeStructuredView(defs.storages.myStorage);\n *\n * myUniformValues.set({\n * colors: [\n * ,\n * ,\n * { hue: 0.5, sat: 1.0, lum: 0.5 }, // only set the 3rd color\n * ],\n * brightness: 0.8,\n * kernel: [\n * 1, 0, -1,\n * 2, 0, -2,\n * 1, 0, -1,\n * ],\n * });\n * ```\n *\n * data definition can come from `defs.uniforms.<nameOfUniform>`, `defs.storages.<nameOfStorage>`\n * and `defs.structs.<nameOfStruct>`.\n *\n * What this function does:\n *\n * 1. It creates an `ArrayBuffer` of the size equal to the definition passed in (unless you pass in an existing ArrayBuffer)\n *\n * 2. It makes `TypedArray` views of to match the definition.\n *\n * 3. It returns an object with the the `ArrayBuffer`, the TypedArray views, and a `set` function which is just a wrapper\n * for `setStructView` that passes in the views.\n *\n * For example: Given a data definition created by makeShaderDataDefinitions for this WGSL\n *\n * ```wgsl\n * struct Light {\n * lightWorldPosition: vec3f,\n * shininess: f32,\n * lightDirection: vec3f,\n * innerLimit: f32,\n * outerLimit: f32,\n * };\n * struct Uniforms {\n * normalMatrix: mat3x3f,\n * worldViewProjection: mat4x4f,\n * world: mat4x4f,\n * color: vec4f,\n * viewWorldPosition: vec3f,\n * lights: array<Light, 3>,\n * };\n * @group(0) @binding(0) var<uniform> myUniforms: Uniforms;\n * ```\n *\n * `makeStructuredView(defs.uniforms.myUniforms)` would return this\n *\n * ```js\n * const arrayBuffer = new ArrayBuffer(368)\n * const views = {\n * normalMatrix: new Float32Array(arrayBuffer, 0, 12),\n * worldViewProjection: new Float32Array(arrayBuffer, 48, 16),\n * world: new Float32Array(arrayBuffer, 112, 16),\n * color: new Float32Array(arrayBuffer, 176, 4),\n * viewWorldPosition: new Float32Array(arrayBuffer, 192, 3),\n * lights: [\n * {\n * lightWorldPosition: new Float32Array(arrayBuffer, 208, 3),\n * shininess: new Float32Array(arrayBuffer, 220, 1),\n * lightDirection: new Float32Array(arrayBuffer, 224, 3),\n * innerLimit: new Float32Array(arrayBuffer, 236, 1),\n * outerLimit: new Float32Array(arrayBuffer, 240, 1),\n * },\n * {\n * lightWorldPosition: new Float32Array(arrayBuffer, 256, 3),\n * shininess: new Float32Array(arrayBuffer, 268, 1),\n * lightDirection: new Float32Array(arrayBuffer, 272, 3),\n * innerLimit: new Float32Array(arrayBuffer, 284, 1),\n * outerLimit: new Float32Array(arrayBuffer, 288, 1),\n * },\n * {\n * lightWorldPosition: new Float32Array(arrayBuffer, 304, 3),\n * shininess: new Float32Array(arrayBuffer, 316, 1),\n * lightDirection: new Float32Array(arrayBuffer, 320, 3),\n * innerLimit: new Float32Array(arrayBuffer, 332, 1),\n * outerLimit: new Float32Array(arrayBuffer, 336, 1),\n * },\n * ],\n * mode: new Uint32Array(UniformsValues, 352, 1),\n * };\n * result = {\n * arrayBuffer,\n * views,\n * set(data: any) {\n * setStructuredView(data, views.views);\n * },\n * }\n * ```\n *\n * From this, you can see you can set the value in the array buffer for any field/member/property\n * directly. Example\n *\n * ```js\n * result.views.lights[2].lightDirection.set([7, 8, 9]);\n * result.views.lights[2].innerLimit[0] = 4;\n * ```\n *\n * `set` just takes a JS object and matches property names to the view names.\n *\n * ```js\n * result.set({\n * color: [1, 1, 0, 1],\n * viewWorldPosition: [12, 34, 56],\n * mode: 8,\n * });\n * ```\n *\n * Is equivalent to\n *\n * ```js\n * result.views.color.set([1, 1, 0, 1]);\n * result.views.worldViewPosition.set([12, 34, 56]);\n * result.views.mode[0] = 8;\n * ```\n *\n * Further, `set` is just a short cut for `setStructuredView` passing in the root\n * `result'views`.\n *\n * So, for example, if you want to set the light at index 2, this would work.\n *\n * ```js\n * setStructuredView({\n * lightWorldPosition: [1, 2, 3],\n * shininess: 4,\n * lightDirection: [5, 6, 7],\n * innerLimit: 8,\n * outerLimit: 9,\n * }, result.views.lights[2]);\n * ```\n */\nfunction makeStructuredView(varDef, arrayBuffer, offset = 0) {\n const asVarDef = varDef;\n const typeDef = asVarDef.group === undefined ? varDef : asVarDef.typeDefinition;\n const views = makeTypedArrayViews(typeDef, arrayBuffer, offset);\n return {\n ...views,\n set(data) {\n setStructuredView(data, views.views);\n },\n };\n}\nconst s_views = new WeakMap();\nfunction getViewsByCtor(arrayBuffer) {\n let viewsByCtor = s_views.get(arrayBuffer);\n if (!viewsByCtor) {\n viewsByCtor = new Map();\n s_views.set(arrayBuffer, viewsByCtor);\n }\n return viewsByCtor;\n}\nfunction getView(arrayBuffer, Ctor) {\n const viewsByCtor = getViewsByCtor(arrayBuffer);\n let view = viewsByCtor.get(Ctor);\n if (!view) {\n view = new Ctor(arrayBuffer);\n viewsByCtor.set(Ctor, view);\n }\n return view;\n}\n// Is this something like [1,2,3]?\nfunction isArrayLikeOfNumber(data) {\n return isTypedArray(data) || Array.isArray(data) && typeof data[0] === 'number';\n}\nfunction setIntrinsicFromArrayLikeOfNumber(typeDef, data, arrayBuffer, offset) {\n const asIntrinsicDefinition = typeDef;\n const type = kWGSLTypeInfo[asIntrinsicDefinition.type];\n const view = getView(arrayBuffer, type.View);\n const index = offset / view.BYTES_PER_ELEMENT;\n if (typeof data === 'number') {\n view[index] = data;\n }\n else {\n view.set(data, index);\n }\n}\n/**\n * Sets values on an existing array buffer from a TypeDefinition\n * @param typeDef A type definition provided by {@link makeShaderDataDefinitions}\n * @param data The source data\n * @param arrayBuffer The arrayBuffer who's data to set.\n * @param offset An offset in the arrayBuffer to start at.\n */\nfunction setTypedValues(typeDef, data, arrayBuffer, offset = 0) {\n const asArrayDef = typeDef;\n const elementType = asArrayDef.elementType;\n if (elementType) {\n // It's ArrayDefinition\n if (isIntrinsic(elementType)) {\n const asIntrinsicDef = elementType;\n if (isArrayLikeOfNumber(data)) {\n setIntrinsicFromArrayLikeOfNumber(asIntrinsicDef, data, arrayBuffer, offset);\n return;\n }\n }\n data.forEach((newValue, ndx) => {\n setTypedValues(elementType, newValue, arrayBuffer, offset + elementType.size * ndx);\n });\n return;\n }\n const asStructDef = typeDef;\n const fields = asStructDef.fields;\n if (fields) {\n // It's StructDefinition\n for (const [key, newValue] of Object.entries(data)) {\n const fieldDef = fields[key];\n if (fieldDef) {\n setTypedValues(fieldDef.type, newValue, arrayBuffer, offset + fieldDef.offset);\n }\n }\n }\n else {\n // It's IntrinsicDefinition\n setIntrinsicFromArrayLikeOfNumber(typeDef, data, arrayBuffer, offset);\n }\n}\n/**\n * Same as {@link setTypedValues} except it takes a {@link VariableDefinition}.\n * @param varDef A variable definition provided by {@link makeShaderDataDefinitions}\n * @param data The source data\n * @param arrayBuffer The arrayBuffer who's data to set.\n * @param offset An offset in the arrayBuffer to start at.\n */\nfunction setStructuredValues(varDef, data, arrayBuffer, offset = 0) {\n setTypedValues(varDef.typeDefinition, data, arrayBuffer, offset);\n}\nfunction getAlignmentOfTypeDef(typeDef) {\n const asArrayDef = typeDef;\n const elementType = asArrayDef.elementType;\n if (elementType) {\n return getAlignmentOfTypeDef(elementType);\n }\n const asStructDef = typeDef;\n const fields = asStructDef.fields;\n if (fields) {\n return Object.values(fields).reduce((max, { type }) => Math.max(max, getAlignmentOfTypeDef(type)), 0);\n }\n const { type } = typeDef;\n const { align } = kWGSLTypeInfo[type];\n return align;\n}\nfunction getSizeAndAlignmentOfUnsizedArrayElementOfTypeDef(typeDef) {\n const asArrayDef = typeDef;\n const elementType = asArrayDef.elementType;\n if (elementType) {\n const unalignedSize = elementType.size;\n const align = getAlignmentOfTypeDef(elementType);\n return {\n unalignedSize,\n align,\n size: roundUpToMultipleOf(unalignedSize, align),\n };\n }\n const asStructDef = typeDef;\n const fields = asStructDef.fields;\n if (fields) {\n const lastField = Object.values(fields).pop();\n if (lastField.type.size === 0) {\n return getSizeAndAlignmentOfUnsizedArrayElementOfTypeDef(lastField.type);\n }\n }\n return {\n size: 0,\n unalignedSize: 0,\n align: 1,\n };\n}\n/**\n * Returns the size, align, and unalignedSize of \"the\" unsized array element. Unsized arrays are only\n * allowed at the outer most level or the last member of a top level struct.\n *\n * Example:\n *\n * ```js\n * const code = `\n * struct Foo {\n * a: u32,\n * b: array<vec3f>,\n * };\n * @group(0) @binding(0) var<storage> f: Foo;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const { size, align, unalignedSize } = getSizeAndAlignmentOfUnsizedArrayElement(\n * defs.storages.f);\n * // size = 16 (since you need to allocate 16 bytes per element)\n * // align = 16 (since vec3f needs to be aligned to 16 bytes)\n * // unalignedSize = 12 (since only 12 bytes are used for a vec3f)\n * ```\n *\n * Generally you only need size. Example:\n *\n * ```js\n * const code = `\n * struct Foo {\n * a: u32,\n * b: array<vec3f>,\n * };\n * @group(0) @binding(0) var<storage> f: Foo;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const { size } = getSizeAndAlignmentOfUnsizedArrayElement(defs.storages.f);\n * const numElements = 10;\n * const views = makeStructuredViews(\n * defs.storages.f,\n * new ArrayBuffer(defs.storages.f.size + size * numElements));\n * ```\n *\n * @param varDef A variable definition provided by {@link makeShaderDataDefinitions}\n * @returns the size, align, and unalignedSize in bytes of the unsized array element in this type definition.\n * If there is no unsized array, size = 0.\n */\nfunction getSizeAndAlignmentOfUnsizedArrayElement(varDef) {\n const asVarDef = varDef;\n const typeDef = asVarDef.group === undefined ? varDef : asVarDef.typeDefinition;\n return getSizeAndAlignmentOfUnsizedArrayElementOfTypeDef(typeDef);\n}\n\nclass e{constructor(e,t){this.name=e,this.attributes=t,this.size=0;}get isArray(){return false}get isStruct(){return false}get isTemplate(){return false}get isPointer(){return false}getTypeName(){return this.name}}class t{constructor(e,t,n){this.name=e,this.type=t,this.attributes=n,this.offset=0,this.size=0;}get isArray(){return this.type.isArray}get isStruct(){return this.type.isStruct}get isTemplate(){return this.type.isTemplate}get align(){return this.type.isStruct?this.type.align:0}get members(){return this.type.isStruct?this.type.members:null}get format(){return this.type.isArray||this.type.isTemplate?this.type.format:null}get count(){return this.type.isArray?this.type.count:0}get stride(){return this.type.isArray?this.type.stride:this.size}}class n extends e{constructor(e,t){super(e,t),this.members=[],this.align=0,this.startLine=-1,this.endLine=-1,this.inUse=false;}get isStruct(){return true}}class s extends e{constructor(e,t){super(e,t),this.count=0,this.stride=0;}get isArray(){return true}getTypeName(){return `array<${this.format.getTypeName()}, ${this.count}>`}}class r extends e{constructor(e,t,n){super(e,n),this.format=t;}get isPointer(){return true}getTypeName(){return `&${this.format.getTypeName()}`}}class a extends e{constructor(e,t,n,s){super(e,n),this.format=t,this.access=s;}get isTemplate(){return true}getTypeName(){let e=this.name;if(null!==this.format){if('vec2'===e||'vec3'===e||'vec4'===e||'mat2x2'===e||'mat2x3'===e||'mat2x4'===e||'mat3x2'===e||'mat3x3'===e||'mat3x4'===e||'mat4x2'===e||'mat4x3'===e||'mat4x4'===e){if('f32'===this.format.name)return e+='f',e;if('i32'===this.format.name)return e+='i',e;if('u32'===this.format.name)return e+='u',e;if('bool'===this.format.name)return e+='b',e;if('f16'===this.format.name)return e+='h',e}e+=`<${this.format.name}>`;}else if('vec2'===e||'vec3'===e||'vec4'===e)return e;return e}}var i;(e=>{e[e.Uniform=0]='Uniform',e[e.Storage=1]='Storage',e[e.Texture=2]='Texture',e[e.Sampler=3]='Sampler',e[e.StorageTexture=4]='StorageTexture';})(i||(i={}));class o{constructor(e,t,n,s,r,a,i){this.name=e,this.type=t,this.group=n,this.binding=s,this.attributes=r,this.resourceType=a,this.access=i;}get isArray(){return this.type.isArray}get isStruct(){return this.type.isStruct}get isTemplate(){return this.type.isTemplate}get size(){return this.type.size}get align(){return this.type.isStruct?this.type.align:0}get members(){return this.type.isStruct?this.type.members:null}get format(){return this.type.isArray||this.type.isTemplate?this.type.format:null}get count(){return this.type.isArray?this.type.count:0}get stride(){return this.type.isArray?this.type.stride:this.size}}class l{constructor(e,t){this.name=e,this.type=t;}}class c{constructor(e,t,n,s){this.name=e,this.type=t,this.locationType=n,this.location=s,this.interpolation=null;}}class u{constructor(e,t,n,s){this.name=e,this.type=t,this.locationType=n,this.location=s;}}class h{constructor(e,t,n,s){this.name=e,this.type=t,this.attributes=n,this.id=s;}}class f{constructor(e,t,n){this.name=e,this.type=t,this.attributes=n;}}class p{constructor(e,t=null,n){this.stage=null,this.inputs=[],this.outputs=[],this.arguments=[],this.returnType=null,this.resources=[],this.overrides=[],this.startLine=-1,this.endLine=-1,this.inUse=false,this.calls=new Set,this.name=e,this.stage=t,this.attributes=n;}}class d{constructor(){this.vertex=[],this.fragment=[],this.compute=[];}}const m=new Float32Array(1),_=new Int32Array(m.buffer),g=new Uint16Array(1);function x(e){m[0]=e;const t=_[0],n=t>>31&1;let s=t>>23&255,r=8388607&t;if(255===s)return g[0]=n<<15|31744|(0!==r?512:0),g[0];if(0===s){if(0===r)return g[0]=n<<15,g[0];r|=8388608;let e=113;for(;!(8388608&r);)r<<=1,e--;return s=127-e,r&=8388607,s>0?(r=(r>>126-s)+(r>>127-s&1),g[0]=n<<15|s<<10|r>>13,g[0]):(g[0]=n<<15,g[0])}return s=s-127+15,s>=31?(g[0]=n<<15|31744,g[0]):s<=0?s<-10?(g[0]=n<<15,g[0]):(r=(8388608|r)>>1-s,g[0]=n<<15|r>>13,g[0]):(r>>=13,g[0]=n<<15|s<<10|r,g[0])}const y=new Uint32Array(1),b=new Float32Array(y.buffer,0,1);function v(e){const t=112+(e>>6&31)<<23|(63&e)<<17;return y[0]=t,b[0]}function w(e,t,n,s,r,a,i,o,l){const c=s*(i>>=r)*(a>>=r)+n*i+t*o;switch(l){case 'r8unorm':return [k(e,c,'8unorm',1)[0]];case 'r8snorm':return [k(e,c,'8snorm',1)[0]];case 'r8uint':return [k(e,c,'8uint',1)[0]];case 'r8sint':return [k(e,c,'8sint',1)[0]];case 'rg8unorm':{const t=k(e,c,'8unorm',2);return [t[0],t[1]]}case 'rg8snorm':{const t=k(e,c,'8snorm',2);return [t[0],t[1]]}case 'rg8uint':{const t=k(e,c,'8uint',2);return [t[0],t[1]]}case 'rg8sint':{const t=k(e,c,'8sint',2);return [t[0],t[1]]}case 'rgba8unorm-srgb':case 'rgba8unorm':{const t=k(e,c,'8unorm',4);return [t[0],t[1],t[2],t[3]]}case 'rgba8snorm':{const t=k(e,c,'8snorm',4);return [t[0],t[1],t[2],t[3]]}case 'rgba8uint':{const t=k(e,c,'8uint',4);return [t[0],t[1],t[2],t[3]]}case 'rgba8sint':{const t=k(e,c,'8sint',4);return [t[0],t[1],t[2],t[3]]}case 'bgra8unorm-srgb':case 'bgra8unorm':{const t=k(e,c,'8unorm',4);return [t[2],t[1],t[0],t[3]]}case 'r16uint':return [k(e,c,'16uint',1)[0]];case 'r16sint':return [k(e,c,'16sint',1)[0]];case 'r16float':return [k(e,c,'16float',1)[0]];case 'rg16uint':{const t=k(e,c,'16uint',2);return [t[0],t[1]]}case 'rg16sint':{const t=k(e,c,'16sint',2);return [t[0],t[1]]}case 'rg16float':{const t=k(e,c,'16float',2);return [t[0],t[1]]}case 'rgba16uint':{const t=k(e,c,'16uint',4);return [t[0],t[1],t[2],t[3]]}case 'rgba16sint':{const t=k(e,c,'16sint',4);return [t[0],t[1],t[2],t[3]]}case 'rgba16float':{const t=k(e,c,'16float',4);return [t[0],t[1],t[2],t[3]]}case 'r32uint':return [k(e,c,'32uint',1)[0]];case 'r32sint':return [k(e,c,'32sint',1)[0]];case 'depth16unorm':case 'depth24plus':case 'depth24plus-stencil8':case 'depth32float':case 'depth32float-stencil8':case 'r32float':return [k(e,c,'32float',1)[0]];case 'rg32uint':{const t=k(e,c,'32uint',2);return [t[0],t[1]]}case 'rg32sint':{const t=k(e,c,'32sint',2);return [t[0],t[1]]}case 'rg32float':{const t=k(e,c,'32float',2);return [t[0],t[1]]}case 'rgba32uint':{const t=k(e,c,'32uint',4);return [t[0],t[1],t[2],t[3]]}case 'rgba32sint':{const t=k(e,c,'32sint',4);return [t[0],t[1],t[2],t[3]]}case 'rgba32float':{const t=k(e,c,'32float',4);return [t[0],t[1],t[2],t[3]]}case 'rg11b10ufloat':{const t=new Uint32Array(e.buffer,c,1)[0],n=(4192256&t)>>11,s=(4290772992&t)>>22;return [v(2047&t),v(n),function(e){const t=112+(e>>5&31)<<23|(31&e)<<18;return y[0]=t,b[0]}(s),1]}}return null}function k(e,t,n,s){const r=[0,0,0,0];for(let c=0;c<s;++c)switch(n){case '8unorm':r[c]=e[t]/255,t++;break;case '8snorm':r[c]=e[t]/255*2-1,t++;break;case '8uint':r[c]=e[t],t++;break;case '8sint':r[c]=e[t]-127,t++;break;case '16uint':r[c]=e[t]|e[t+1]<<8,t+=2;break;case '16sint':r[c]=(e[t]|e[t+1]<<8)-32768,t+=2;break;case '16float':r[c]=(a=e[t]|e[t+1]<<8,i=undefined,o=undefined,l=undefined,i=(32768&a)>>15,l=1023&a,0==(o=(31744&a)>>10)?(i?-1:1)*Math.pow(2,-14)*(l/Math.pow(2,10)):31==o?l?NaN:1/0*(i?-1:1):(i?-1:1)*Math.pow(2,o-15)*(1+l/Math.pow(2,10))),t+=2;break;case '32uint':case '32sint':r[c]=e[t]|e[t+1]<<8|e[t+2]<<16|e[t+3]<<24,t+=4;break;case '32float':r[c]=new Float32Array(e.buffer,t,1)[0],t+=4;}var a,i,o,l;return r}function I(e,t,n,s,r){for(let a=0;a<s;++a)switch(n){case '8unorm':e[t]=255*r[a],t++;break;case '8snorm':e[t]=.5*(r[a]+1)*255,t++;break;case '8uint':e[t]=r[a],t++;break;case '8sint':e[t]=r[a]+127,t++;break;case '16uint':new Uint16Array(e.buffer,t,1)[0]=r[a],t+=2;break;case '16sint':new Int16Array(e.buffer,t,1)[0]=r[a],t+=2;break;case '16float':{const n=x(r[a]);new Uint16Array(e.buffer,t,1)[0]=n,t+=2;break}case '32uint':new Uint32Array(e.buffer,t,1)[0]=r[a],t+=4;break;case '32sint':new Int32Array(e.buffer,t,1)[0]=r[a],t+=4;break;case '32float':new Float32Array(e.buffer,t,1)[0]=r[a],t+=4;}return r}const T={r8unorm:{bytesPerBlock:1,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r8snorm:{bytesPerBlock:1,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r8uint:{bytesPerBlock:1,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r8sint:{bytesPerBlock:1,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},rg8unorm:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg8snorm:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg8uint:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg8sint:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rgba8unorm:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},'rgba8unorm-srgb':{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba8snorm:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba8uint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba8sint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},bgra8unorm:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},'bgra8unorm-srgb':{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},r16uint:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r16sint:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r16float:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},rg16uint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg16sint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg16float:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rgba16uint:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba16sint:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba16float:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},r32uint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r32sint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},r32float:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:1},rg32uint:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg32sint:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rg32float:{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,channels:2},rgba32uint:{bytesPerBlock:16,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba32sint:{bytesPerBlock:16,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgba32float:{bytesPerBlock:16,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgb10a2uint:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rgb10a2unorm:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},rg11b10ufloat:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},stencil8:{bytesPerBlock:1,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:false,hasStencil:true,channels:1},depth16unorm:{bytesPerBlock:2,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:true,hasStencil:false,channels:1},depth24plus:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:true,hasStencil:false,depthOnlyFormat:'depth32float',channels:1},'depth24plus-stencil8':{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:true,hasStencil:true,depthOnlyFormat:'depth32float',channels:1},depth32float:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:true,hasStencil:false,channels:1},'depth32float-stencil8':{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:false,isDepthStencil:true,hasDepth:true,hasStencil:true,stencilOnlyFormat:'depth32float',channels:1},rgb9e5ufloat:{bytesPerBlock:4,blockWidth:1,blockHeight:1,isCompressed:false,channels:4},'bc1-rgba-unorm':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc1-rgba-unorm-srgb':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc2-rgba-unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc2-rgba-unorm-srgb':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc3-rgba-unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc3-rgba-unorm-srgb':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc4-r-unorm':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:1},'bc4-r-snorm':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:1},'bc5-rg-unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:2},'bc5-rg-snorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:2},'bc6h-rgb-ufloat':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc6h-rgb-float':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc7-rgba-unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'bc7-rgba-unorm-srgb':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgb8unorm':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgb8unorm-srgb':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgb8a1unorm':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgb8a1unorm-srgb':{bytesPerBlock:8,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgba8unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'etc2-rgba8unorm-srgb':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'eac-r11unorm':{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:true,channels:1},'eac-r11snorm':{bytesPerBlock:8,blockWidth:1,blockHeight:1,isCompressed:true,channels:1},'eac-rg11unorm':{bytesPerBlock:16,blockWidth:1,blockHeight:1,isCompressed:true,channels:2},'eac-rg11snorm':{bytesPerBlock:16,blockWidth:1,blockHeight:1,isCompressed:true,channels:2},'astc-4x4-unorm':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'astc-4x4-unorm-srgb':{bytesPerBlock:16,blockWidth:4,blockHeight:4,isCompressed:true,channels:4},'astc-5x4-unorm':{bytesPerBlock:16,blockWidth:5,blockHeight:4,isCompressed:true,channels:4},'astc-5x4-unorm-srgb':{bytesPerBlock:16,blockWidth:5,blockHeight:4,isCompressed:true,channels:4},'astc-5x5-unorm':{bytesPerBlock:16,blockWidth:5,blockHeight:5,isCompressed:true,channels:4},'astc-5x5-unorm-srgb':{bytesPerBlock:16,blockWidth:5,blockHeight:5,isCompressed:true,channels:4},'astc-6x5-unorm':{bytesPerBlock:16,blockWidth:6,blockHeight:5,isCompressed:true,channels:4},'astc-6x5-unorm-srgb':{bytesPerBlock:16,blockWidth:6,blockHeight:5,isCompressed:true,channels:4},'astc-6x6-unorm':{bytesPerBlock:16,blockWidth:6,blockHeight:6,isCompressed:true,channels:4},'astc-6x6-unorm-srgb':{bytesPerBlock:16,blockWidth:6,blockHeight:6,isCompressed:true,channels:4},'astc-8x5-unorm':{bytesPerBlock:16,blockWidth:8,blockHeight:5,isCompressed:true,channels:4},'astc-8x5-unorm-srgb':{bytesPerBlock:16,blockWidth:8,blockHeight:5,isCompressed:true,channels:4},'astc-8x6-unorm':{bytesPerBlock:16,blockWidth:8,blockHeight:6,isCompressed:true,channels:4},'astc-8x6-unorm-srgb':{bytesPerBlock:16,blockWidth:8,blockHeight:6,isCompressed:true,channels:4},'astc-8x8-unorm':{bytesPerBlock:16,blockWidth:8,blockHeight:8,isCompressed:true,channels:4},'astc-8x8-unorm-srgb':{bytesPerBlock:16,blockWidth:8,blockHeight:8,isCompressed:true,channels:4},'astc-10x5-unorm':{bytesPerBlock:16,blockWidth:10,blockHeight:5,isCompressed:true,channels:4},'astc-10x5-unorm-srgb':{bytesPerBlock:16,blockWidth:10,blockHeight:5,isCompressed:true,channels:4},'astc-10x6-unorm':{bytesPerBlock:16,blockWidth:10,blockHeight:6,isCompressed:true,channels:4},'astc-10x6-unorm-srgb':{bytesPerBlock:16,blockWidth:10,blockHeight:6,isCompressed:true,channels:4},'astc-10x8-unorm':{bytesPerBlock:16,blockWidth:10,blockHeight:8,isCompressed:true,channels:4},'astc-10x8-unorm-srgb':{bytesPerBlock:16,blockWidth:10,blockHeight:8,isCompressed:true,channels:4},'astc-10x10-unorm':{bytesPerBlock:16,blockWidth:10,blockHeight:10,isCompressed:true,channels:4},'astc-10x10-unorm-srgb':{bytesPerBlock:16,blockWidth:10,blockHeight:10,isCompressed:true,channels:4},'astc-12x10-unorm':{bytesPerBlock:16,blockWidth:12,blockHeight:10,isCompressed:true,channels:4},'astc-12x10-unorm-srgb':{bytesPerBlock:16,blockWidth:12,blockHeight:10,isCompressed:true,channels:4},'astc-12x12-unorm':{bytesPerBlock:16,blockWidth:12,blockHeight:12,isCompressed:true,channels:4},'astc-12x12-unorm-srgb':{bytesPerBlock:16,blockWidth:12,blockHeight:12,isCompressed:true,channels:4}};class S{constructor(){this.id=S._id++,this.line=0;}get isAstNode(){return true}get astNodeType(){return ''}search(e){e(this);}searchBlock(e,t){if(e){t(A.instance);for(const n of e)n instanceof Array?this.searchBlock(n,t):n.search(t);t(E.instance);}}constEvaluate(e,t){throw new Error('Cannot evaluate node')}constEvaluateString(e){return this.constEvaluate(e).toString()}}S._id=0;class A extends S{}A.instance=new A;class E extends S{}E.instance=new E;const $=new Set(['all','all','any','select','arrayLength','abs','acos','acosh','asin','asinh','atan','atanh','atan2','ceil','clamp','cos','cosh','countLeadingZeros','countOneBits','countTrailingZeros','cross','degrees','determinant','distance','dot','dot4U8Packed','dot4I8Packed','exp','exp2','extractBits','faceForward','firstLeadingBit','firstTrailingBit','floor','fma','fract','frexp','insertBits','inverseSqrt','ldexp','length','log','log2','max','min','mix','modf','normalize','pow','quantizeToF16','radians','reflect','refract','reverseBits','round','saturate','sign','sin','sinh','smoothStep','sqrt','step','tan','tanh','transpose','trunc','dpdx','dpdxCoarse','dpdxFine','dpdy','dpdyCoarse','dpdyFine','fwidth','fwidthCoarse','fwidthFine','textureDimensions','textureGather','textureGatherCompare','textureLoad','textureNumLayers','textureNumLevels','textureNumSamples','textureSample','textureSampleBias','textureSampleCompare','textureSampleCompareLevel','textureSampleGrad','textureSampleLevel','textureSampleBaseClampToEdge','textureStore','atomicLoad','atomicStore','atomicAdd','atomicSub','atomicMax','atomicMin','atomicAnd','atomicOr','atomicXor','atomicExchange','atomicCompareExchangeWeak','pack4x8snorm','pack4x8unorm','pack4xI8','pack4xU8','pack4x8Clamp','pack4xU8Clamp','pack2x16snorm','pack2x16unorm','pack2x16float','unpack4x8snorm','unpack4x8unorm','unpack4xI8','unpack4xU8','unpack2x16snorm','unpack2x16unorm','unpack2x16float','storageBarrier','textureBarrier','workgroupBarrier','workgroupUniformLoad','subgroupAdd','subgroupExclusiveAdd','subgroupInclusiveAdd','subgroupAll','subgroupAnd','subgroupAny','subgroupBallot','subgroupBroadcast','subgroupBroadcastFirst','subgroupElect','subgroupMax','subgroupMin','subgroupMul','subgroupExclusiveMul','subgroupInclusiveMul','subgroupOr','subgroupShuffle','subgroupShuffleDown','subgroupShuffleUp','subgroupShuffleXor','subgroupXor','quadBroadcast','quadSwapDiagonal','quadSwapX','quadSwapY']);class L extends S{constructor(){super();}}class C extends L{constructor(e,t,n,s,r,a){super(),this.calls=new Set,this.name=e,this.args=t,this.returnType=n,this.body=s,this.startLine=r,this.endLine=a;}get astNodeType(){return 'function'}search(e){if(this.attributes)for(const t of this.attributes)e(t);e(this);for(const t of this.args)e(t);this.searchBlock(this.body,e);}}class D extends L{constructor(e){super(),this.expression=e;}get astNodeType(){return 'staticAssert'}search(e){this.expression.search(e);}}class N extends L{constructor(e,t){super(),this.condition=e,this.body=t;}get astNodeType(){return 'while'}search(e){this.condition.search(e),this.searchBlock(this.body,e);}}class V extends L{constructor(e,t){super(),this.body=e,this.loopId=t;}get astNodeType(){return 'continuing'}search(e){this.searchBlock(this.body,e);}}class O extends L{constructor(e,t,n,s){super(),this.init=e,this.condition=t,this.increment=n,this.body=s;}get astNodeType(){return 'for'}search(e){var t,n,s;null===(t=this.init)||undefined===t||t.search(e),null===(n=this.condition)||undefined===n||n.search(e),null===(s=this.increment)||undefined===s||s.search(e),this.searchBlock(this.body,e);}}class B extends L{constructor(e,t,n,s,r){super(),this.attributes=null,this.name=e,this.type=t,this.storage=n,this.access=s,this.value=r;}get astNodeType(){return 'var'}search(e){var t;e(this),null===(t=this.value)||undefined===t||t.search(e);}}class F extends L{constructor(e,t,n){super(),this.attributes=null,this.name=e,this.type=t,this.value=n;}get astNodeType(){return 'override'}search(e){var t;null===(t=this.value)||undefined===t||t.search(e);}}class M extends L{constructor(e,t,n,s,r){super(),this.attributes=null,this.name=e,this.type=t,this.storage=n,this.access=s,this.value=r;}get astNodeType(){return 'let'}search(e){var t;e(this),null===(t=this.value)||undefined===t||t.search(e);}}class U extends L{constructor(e,t,n,s,r){super(),this.attributes=null,this.name=e,this.type=t,this.storage=n,this.access=s,this.value=r;}get astNodeType(){return 'const'}constEvaluate(e,t){return this.value.constEvaluate(e,t)}search(e){var t;e(this),null===(t=this.value)||undefined===t||t.search(e);}}var P,W,q,H;(e=>{e.increment='++',e.decrement='--';})(P||(P={})),(e=>{e.parse=function(t){const n=t;if('parse'==n)throw new Error('Invalid value for IncrementOperator');return e[n]};})(P||(P={}));class z extends L{constructor(e,t){super(),this.operator=e,this.variable=t;}get astNodeType(){return 'increment'}search(e){this.variable.search(e);}}(e=>{e.assign='=',e.addAssign='+=',e.subtractAssin='-=',e.multiplyAssign='*=',e.divideAssign='/=',e.moduloAssign='%=',e.andAssign='&=',e.orAssign='|=',e.xorAssign='^=',e.shiftLeftAssign='<<=',e.shiftRightAssign='>>=';})(W||(W={})),(e=>{e.parse=function(e){const t=e;if('parse'==t)throw new Error('Invalid value for AssignOperator');return t};})(W||(W={}));class R extends L{constructor(e,t,n){super(),this.operator=e,this.variable=t,this.value=n;}get astNodeType(){return 'assign'}search(e){this.variable.search(e),this.value.search(e);}}class G extends L{constructor(e,t){super(),this.name=e,this.args=t;}get astNodeType(){return 'call'}isBuiltin(){return $.has(this.name)}search(e){for(const t of this.args)t.search(e);e(this);}}class X extends L{constructor(e,t){super(),this.body=e,this.continuing=t;}get astNodeType(){return 'loop'}}class j extends L{constructor(e,t){super(),this.condition=e,this.cases=t;}get astNodeType(){return 'switch'}}class Z extends L{constructor(e,t,n,s){super(),this.condition=e,this.body=t,this.elseif=n,this.else=s;}get astNodeType(){return 'if'}search(e){this.condition.search(e),this.searchBlock(this.body,e),this.searchBlock(this.elseif,e),this.searchBlock(this.else,e);}}class Q extends L{constructor(e){super(),this.value=e;}get astNodeType(){return 'return'}search(e){var t;null===(t=this.value)||undefined===t||t.search(e);}}class Y extends L{constructor(e){super(),this.name=e;}get astNodeType(){return 'enable'}}class K extends L{constructor(e){super(),this.extensions=e;}get astNodeType(){return 'requires'}}class J extends L{constructor(e,t){super(),this.severity=e,this.rule=t;}get astNodeType(){return 'diagnostic'}}class ee extends L{constructor(e,t){super(),this.name=e,this.type=t;}get astNodeType(){return 'alias'}}class te extends L{constructor(){super();}get astNodeType(){return 'discard'}}class ne extends L{constructor(){super(),this.condition=null,this.loopId=-1;}get astNodeType(){return 'break'}}class se extends L{constructor(){super(),this.loopId=-1;}get astNodeType(){return 'continue'}}class re extends L{constructor(e){super(),this.attributes=null,this.name=e;}get astNodeType(){return 'type'}get isStruct(){return false}get isArray(){return false}static maxFormatType(e){let t=e[0];if('f32'===t.name)return t;for(let n=1;n<e.length;++n){const s=re._priority.get(t.name);re._priority.get(e[n].name)<s&&(t=e[n]);}return 'x32'===t.name?re.i32:t}getTypeName(){return this.name}}re.x32=new re('x32'),re.f32=new re('f32'),re.i32=new re('i32'),re.u32=new re('u32'),re.f16=new re('f16'),re.bool=new re('bool'),re.void=new re('void'),re._priority=new Map([['f32',0],['f16',1],['u32',2],['i32',3],['x32',3]]);class ae extends re{constructor(e){super(e);}}class ie extends re{constructor(e,t,n,s){super(e),this.members=t,this.startLine=n,this.endLine=s;}get astNodeType(){return 'struct'}get isStruct(){return true}getMemberIndex(e){for(let t=0;t<this.members.length;t++)if(this.members[t].name==e)return t;return -1}search(e){for(const t of this.members)e(t);}}class oe extends re{constructor(e,t,n){super(e),this.format=t,this.access=n;}get astNodeType(){return 'template'}getTypeName(){let e=this.name;if(null!==this.format){if('vec2'===e||'vec3'===e||'vec4'===e||'mat2x2'===e||'mat2x3'===e||'mat2x4'===e||'mat3x2'===e||'mat3x3'===e||'mat3x4'===e||'mat4x2'===e||'mat4x3'===e||'mat4x4'===e){if('f32'===this.format.name)return e+='f',e;if('i32'===this.format.name)return e+='i',e;if('u32'===this.format.name)return e+='u',e;if('bool'===this.format.name)return e+='b',e;if('f16'===this.format.name)return e+='h',e}e+=`<${this.format.name}>`;}else if('vec2'===e||'vec3'===e||'vec4'===e)return e;return e}}oe.vec2f=new oe('vec2',re.f32,null),oe.vec3f=new oe('vec3',re.f32,null),oe.vec4f=new oe('vec4',re.f32,null),oe.vec2i=new oe('vec2',re.i32,null),oe.vec3i=new oe('vec3',re.i32,null),oe.vec4i=new oe('vec4',re.i32,null),oe.vec2u=new oe('vec2',re.u32,null),oe.vec3u=new oe('vec3',re.u32,null),oe.vec4u=new oe('vec4',re.u32,null),oe.vec2h=new oe('vec2',re.f16,null),oe.vec3h=new oe('vec3',re.f16,null),oe.vec4h=new oe('vec4',re.f16,null),oe.vec2b=new oe('vec2',re.bool,null),oe.vec3b=new oe('vec3',re.bool,null),oe.vec4b=new oe('vec4',re.bool,null),oe.mat2x2f=new oe('mat2x2',re.f32,null),oe.mat2x3f=new oe('mat2x3',re.f32,null),oe.mat2x4f=new oe('mat2x4',re.f32,null),oe.mat3x2f=new oe('mat3x2',re.f32,null),oe.mat3x3f=new oe('mat3x3',re.f32,null),oe.mat3x4f=new oe('mat3x4',re.f32,null),oe.mat4x2f=new oe('mat4x2',re.f32,null),oe.mat4x3f=new oe('mat4x3',re.f32,null),oe.mat4x4f=new oe('mat4x4',re.f32,null),oe.mat2x2h=new oe('mat2x2',re.f16,null),oe.mat2x3h=new oe('mat2x3',re.f16,null),oe.mat2x4h=new oe('mat2x4',re.f16,null),oe.mat3x2h=new oe('mat3x2',re.f16,null),oe.mat3x3h=new oe('mat3x3',re.f16,null),oe.mat3x4h=new oe('mat3x4',re.f16,null),oe.mat4x2h=new oe('mat4x2',re.f16,null),oe.mat4x3h=new oe('mat4x3',re.f16,null),oe.mat4x4h=new oe('mat4x4',re.f16,null),oe.mat2x2i=new oe('mat2x2',re.i32,null),oe.mat2x3i=new oe('mat2x3',re.i32,null),oe.mat2x4i=new oe('mat2x4',re.i32,null),oe.mat3x2i=new oe('mat3x2',re.i32,null),oe.mat3x3i=new oe('mat3x3',re.i32,null),oe.mat3x4i=new oe('mat3x4',re.i32,null),oe.mat4x2i=new oe('mat4x2',re.i32,null),oe.mat4x3i=new oe('mat4x3',re.i32,null),oe.mat4x4i=new oe('mat4x4',re.i32,null),oe.mat2x2u=new oe('mat2x2',re.u32,null),oe.mat2x3u=new oe('mat2x3',re.u32,null),oe.mat2x4u=new oe('mat2x4',re.u32,null),oe.mat3x2u=new oe('mat3x2',re.u32,null),oe.mat3x3u=new oe('mat3x3',re.u32,null),oe.mat3x4u=new oe('mat3x4',re.u32,null),oe.mat4x2u=new oe('mat4x2',re.u32,null),oe.mat4x3u=new oe('mat4x3',re.u32,null),oe.mat4x4u=new oe('mat4x4',re.u32,null);class le extends re{constructor(e,t,n,s){super(e),this.storage=t,this.type=n,this.access=s;}get astNodeType(){return 'pointer'}}class ce extends re{constructor(e,t,n,s){super(e),this.attributes=t,this.format=n,this.count=s;}get astNodeType(){return 'array'}get isArray(){return true}}class ue extends re{constructor(e,t,n){super(e),this.format=t,this.access=n;}get astNodeType(){return 'sampler'}}class he extends S{constructor(){super(),this.postfix=null;}}class fe extends he{constructor(e){super(),this.value=e;}get astNodeType(){return 'stringExpr'}toString(){return this.value}constEvaluateString(){return this.value}}class pe extends he{constructor(e,t){super(),this.type=e,this.args=t;}get astNodeType(){return 'createExpr'}search(e){if(e(this),this.args)for(const t of this.args)t.search(e);}constEvaluate(e,t){return t&&(t[0]=this.type),e.evalExpression(this,e.context)}}class de extends he{constructor(e,t){super(),this.cachedReturnValue=null,this.name=e,this.args=t;}get astNodeType(){return 'callExpr'}setCachedReturnValue(e){this.cachedReturnValue=e;}get isBuiltin(){return $.has(this.name)}constEvaluate(e,t){return e.evalExpression(this,e.context)}search(e){for(const t of this.args)t.search(e);e(this);}}class me extends he{constructor(e){super(),this.name=e;}get astNodeType(){return 'varExpr'}search(e){e(this),this.postfix&&this.postfix.search(e);}constEvaluate(e,t){return e.evalExpression(this,e.context)}}class _e extends he{constructor(e,t){super(),this.name=e,this.initializer=t;}get astNodeType(){return 'constExpr'}constEvaluate(e,t){if(this.initializer){const t=e.evalExpression(this.initializer,e.context);return null!==t&&this.postfix?t.getSubData(e,this.postfix,e.context):t}return null}search(e){this.initializer.search(e);}}class ge extends he{constructor(e,t){super(),this.value=e,this.type=t;}get astNodeType(){return 'literalExpr'}constEvaluate(e,t){return undefined!==t&&(t[0]=this.type),this.value}get isScalar(){return this.value instanceof Oe}get isVector(){return this.value instanceof Fe||this.value instanceof Me}get scalarValue(){return this.value instanceof Oe?this.value.value:(console.error('Value is not scalar.'),0)}get vectorValue(){return this.value instanceof Fe||this.value instanceof Me?this.value.data:(console.error('Value is not a vector or matrix.'),new Float32Array(0))}}class xe extends he{constructor(e,t){super(),this.type=e,this.value=t;}get astNodeType(){return 'bitcastExpr'}search(e){this.value.search(e);}}class be extends he{constructor(e){super(),this.index=e;}search(e){this.index.search(e);}}class ve extends he{constructor(){super();}}class we extends ve{constructor(e,t){super(),this.operator=e,this.right=t;}get astNodeType(){return 'unaryOp'}constEvaluate(e,t){return e.evalExpression(this,e.context)}search(e){this.right.search(e);}}class ke extends ve{constructor(e,t,n){super(),this.operator=e,this.left=t,this.right=n;}get astNodeType(){return 'binaryOp'}_getPromotedType(e,t){return e.name===t.name?e:'f32'===e.name||'f32'===t.name?re.f32:'u32'===e.name||'u32'===t.name?re.u32:re.i32}constEvaluate(e,t){return e.evalExpression(this,e.context)}search(e){this.left.search(e),this.right.search(e);}}class Ie extends S{constructor(e){super(),this.body=e;}}class Te extends he{constructor(){super();}get astNodeType(){return 'default'}}class Se extends Ie{constructor(e,t){super(t),this.selectors=e;}get astNodeType(){return 'case'}search(e){this.searchBlock(this.body,e);}}class Ae extends Ie{constructor(e){super(e);}get astNodeType(){return 'default'}search(e){this.searchBlock(this.body,e);}}class Ee extends S{constructor(e,t,n){super(),this.name=e,this.type=t,this.attributes=n;}get astNodeType(){return 'argument'}}class $e extends S{constructor(e,t){super(),this.condition=e,this.body=t;}get astNodeType(){return 'elseif'}search(e){this.condition.search(e),this.searchBlock(this.body,e);}}class Le extends S{constructor(e,t,n){super(),this.name=e,this.type=t,this.attributes=n;}get astNodeType(){return 'member'}}class Ce extends S{constructor(e,t){super(),this.name=e,this.value=t;}get astNodeType(){return 'attribute'}}class De{constructor(e,t){this.parent=null,this.typeInfo=e,this.parent=t,this.id=De._id++;}clone(){throw `Clone: Not implemented for ${this.constructor.name}`}setDataValue(e,t,n,s){console.error(`SetDataValue: Not implemented for ${this.constructor.name}`);}getSubData(e,t,n){return console.error(`GetDataValue: Not implemented for ${this.constructor.name}`),null}toString(){return `<${this.typeInfo.getTypeName()}>`}}De._id=0;class Ne extends De{constructor(){super(new e('void',null),null);}toString(){return 'void'}}Ne.void=new Ne;class Ve extends De{constructor(e){super(new r('pointer',e.typeInfo,null),null),this.reference=e;}clone(){return this}setDataValue(e,t,n,s){this.reference.setDataValue(e,t,n,s);}getSubData(e,t,n){return t?this.reference.getSubData(e,t,n):this}toString(){return `&${this.reference.toString()}`}}class Oe extends De{constructor(e,t,n=null){super(t,n),e instanceof Int32Array||e instanceof Uint32Array||e instanceof Float32Array?this.data=e:'x32'===this.typeInfo.name?e-Math.floor(e)!=0?this.data=new Float32Array([e]):this.data=e>=0?new Uint32Array([e]):new Int32Array([e]):'i32'===this.typeInfo.name||'bool'===this.typeInfo.name?this.data=new Int32Array([e]):'u32'===this.typeInfo.name?this.data=new Uint32Array([e]):'f32'===this.typeInfo.name||'f16'===this.typeInfo.name?this.data=new Float32Array([e]):console.error('ScalarData2: Invalid type',t);}clone(){if(this.data instanceof Float32Array)return new Oe(new Float32Array(this.data),this.typeInfo,null);if(this.data instanceof Int32Array)return new Oe(new Int32Array(this.data),this.typeInfo,null);if(this.data instanceof Uint32Array)return new Oe(new Uint32Array(this.data),this.typeInfo,null);throw 'ScalarData: Invalid data type'}get value(){return this.data[0]}set value(e){this.data[0]=e;}setDataValue(e,t,n,s){if(n)return void console.error('SetDataValue: Scalar data does not support postfix',n);if(!(t instanceof Oe))return void console.error('SetDataValue: Invalid value',t);let r=t.data[0];'i32'===this.typeInfo.name||'u32'===this.typeInfo.name?r=Math.floor(r):'bool'===this.typeInfo.name&&(r=r?1:0),this.data[0]=r;}getSubData(e,t,n){return t?(console.error('getSubData: Scalar data does not support postfix',t),null):this}toString(){return `${this.value}`}}function Be(e,t,n){const s=t.length;return 2===s?'f32'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec2f')):'i32'===n||'bool'===n?new Fe(new Int32Array(t),e.getTypeInfo('vec2i')):'u32'===n?new Fe(new Uint32Array(t),e.getTypeInfo('vec2u')):'f16'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec2h')):(console.error(`getSubData: Unknown format ${n}`),null):3===s?'f32'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec3f')):'i32'===n||'bool'===n?new Fe(new Int32Array(t),e.getTypeInfo('vec3i')):'u32'===n?new Fe(new Uint32Array(t),e.getTypeInfo('vec3u')):'f16'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec3h')):(console.error(`getSubData: Unknown format ${n}`),null):4===s?'f32'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec4f')):'i32'===n||'bool'===n?new Fe(new Int32Array(t),e.getTypeInfo('vec4i')):'u32'===n?new Fe(new Uint32Array(t),e.getTypeInfo('vec4u')):'f16'===n?new Fe(new Float32Array(t),e.getTypeInfo('vec4h')):(console.error(`getSubData: Unknown format ${n}`),null):(console.error(`getSubData: Invalid vector size ${t.length}`),null)}class Fe extends De{constructor(e,t,n=null){if(super(t,n),e instanceof Float32Array||e instanceof Uint32Array||e instanceof Int32Array)this.data=e;else {const t=this.typeInfo.name;'vec2f'===t||'vec3f'===t||'vec4f'===t?this.data=new Float32Array(e):'vec2i'===t||'vec3i'===t||'vec4i'===t?this.data=new Int32Array(e):'vec2u'===t||'vec3u'===t||'vec4u'===t?this.data=new Uint32Array(e):'vec2h'===t||'vec3h'===t||'vec4h'===t?this.data=new Float32Array(e):'vec2b'===t||'vec3b'===t||'vec4b'===t?this.data=new Int32Array(e):'vec2'===t||'vec3'===t||'vec4'===t?this.data=new Float32Array(e):console.error(`VectorData: Invalid type ${t}`);}}clone(){if(this.data instanceof Float32Array)return new Fe(new Float32Array(this.data),this.typeInfo,null);if(this.data instanceof Int32Array)return new Fe(new Int32Array(this.data),this.typeInfo,null);if(this.data instanceof Uint32Array)return new Fe(new Uint32Array(this.data),this.typeInfo,null);throw 'VectorData: Invalid data type'}setDataValue(e,t,n,s){n instanceof fe?console.error('TODO: Set vector postfix'):t instanceof Fe?this.data=t.data:console.error('SetDataValue: Invalid value',t);}getSubData(e,t,n){if(null===t)return this;let s=e.getTypeInfo('f32');if(this.typeInfo instanceof a)s=this.typeInfo.format||s;else {const t=this.typeInfo.name;'vec2f'===t||'vec3f'===t||'vec4f'===t?s=e.getTypeInfo('f32'):'vec2i'===t||'vec3i'===t||'vec4i'===t?s=e.getTypeInfo('i32'):'vec2b'===t||'vec3b'===t||'vec4b'===t?s=e.getTypeInfo('bool'):'vec2u'===t||'vec3u'===t||'vec4u'===t?s=e.getTypeInfo('u32'):'vec2h'===t||'vec3h'===t||'vec4h'===t?s=e.getTypeInfo('f16'):console.error(`GetSubData: Unknown type ${t}`);}let r=this;for(;null!==t&&null!==r;){if(t instanceof be){const a=t.index;let i=-1;if(a instanceof ge){if(!(a.value instanceof Oe))return console.error(`GetSubData: Invalid array index ${a.value}`),null;i=a.value.value;}else {const t=e.evalExpression(a,n);if(!(t instanceof Oe))return console.error('GetSubData: Unknown index type',a),null;i=t.value;}if(i<0||i>=r.data.length)return console.error('GetSubData: Index out of range',i),null;if(r.data instanceof Float32Array){const e=new Float32Array(r.data.buffer,r.data.byteOffset+4*i,1);return new Oe(e,s)}if(r.data instanceof Int32Array){const e=new Int32Array(r.data.buffer,r.data.byteOffset+4*i,1);return new Oe(e,s)}if(r.data instanceof Uint32Array){const e=new Uint32Array(r.data.buffer,r.data.byteOffset+4*i,1);return new Oe(e,s)}throw 'GetSubData: Invalid data type'}if(!(t instanceof fe))return console.error('GetSubData: Unknown postfix',t),null;{const n=t.value.toLowerCase();if(1===n.length){let e=0;if('x'===n||'r'===n)e=0;else if('y'===n||'g'===n)e=1;else if('z'===n||'b'===n)e=2;else {if('w'!==n&&'a'!==n)return console.error(`GetSubData: Unknown member ${n}`),null;e=3;}if(this.data instanceof Float32Array){let t=new Float32Array(this.data.buffer,this.data.byteOffset+4*e,1);return new Oe(t,s,this)}if(this.data instanceof Int32Array){let t=new Int32Array(this.data.buffer,this.data.byteOffset+4*e,1);return new Oe(t,s,this)}if(this.data instanceof Uint32Array){let t=new Uint32Array(this.data.buffer,this.data.byteOffset+4*e,1);return new Oe(t,s,this)}}const a=[];for(const e of n)'x'===e||'r'===e?a.push(this.data[0]):'y'===e||'g'===e?a.push(this.data[1]):'z'===e||'b'===e?a.push(this.data[2]):'w'===e||'a'===e?a.push(this.data[3]):console.error(`GetDataValue: Unknown member ${e}`);r=Be(e,a,s.name);}t=t.postfix;}return r}toString(){let e=`${this.data[0]}`;for(let t=1;t<this.data.length;++t)e+=`, ${this.data[t]}`;return e}}class Me extends De{constructor(e,t,n=null){super(t,n),e instanceof Float32Array?this.data=e:this.data=new Float32Array(e);}clone(){return new Me(new Float32Array(this.data),this.typeInfo,null)}setDataValue(e,t,n,s){n instanceof fe?console.error('TODO: Set matrix postfix'):t instanceof Me?this.data=t.data:console.error('SetDataValue: Invalid value',t);}getSubData(e,t,n){if(null===t)return this;const s=this.typeInfo.name;if(e.getTypeInfo('f32'),this.typeInfo instanceof a)this.typeInfo.format;else if(s.endsWith('f'))e.getTypeInfo('f32');else if(s.endsWith('i'))e.getTypeInfo('i32');else if(s.endsWith('u'))e.getTypeInfo('u32');else {if(!s.endsWith('h'))return console.error(`GetDataValue: Unknown type ${s}`),null;e.getTypeInfo('f16');}if(t instanceof be){const r=t.index;let a=-1;if(r instanceof ge){if(!(r.value instanceof Oe))return console.error(`GetDataValue: Invalid array index ${r.value}`),null;a=r.value.value;}else {const t=e.evalExpression(r,n);if(!(t instanceof Oe))return console.error('GetDataValue: Unknown index type',r),null;a=t.value;}if(a<0||a>=this.data.length)return console.error('GetDataValue: Index out of range',a),null;const i=s.endsWith('h')?'h':'f';let o;if('mat2x2'===s||'mat2x2f'===s||'mat2x2h'===s||'mat3x2'===s||'mat3x2f'===s||'mat3x2h'===s||'mat4x2'===s||'mat4x2f'===s||'mat4x2h'===s)o=new Fe(new Float32Array(this.data.buffer,this.data.byteOffset+2*a*4,2),e.getTypeInfo(`vec2${i}`));else if('mat2x3'===s||'mat2x3f'===s||'mat2x3h'===s||'mat3x3'===s||'mat3x3f'===s||'mat3x3h'===s||'mat4x3'===s||'mat4x3f'===s||'mat4x3h'===s)o=new Fe(new Float32Array(this.data.buffer,this.data.byteOffset+3*a*4,3),e.getTypeInfo(`vec3${i}`));else {if('mat2x4'!==s&&'mat2x4f'!==s&&'mat2x4h'!==s&&'mat3x4'!==s&&'mat3x4f'!==s&&'mat3x4h'!==s&&'mat4x4'!==s&&'mat4x4f'!==s&&'mat4x4h'!==s)return console.error(`GetDataValue: Unknown type ${s}`),null;o=new Fe(new Float32Array(this.data.buffer,this.data.byteOffset+4*a*4,4),e.getTypeInfo(`vec4${i}`));}return t.postfix?o.getSubData(e,t.postfix,n):o}return console.error('GetDataValue: Invalid postfix',t),null}toString(){let e=`${this.data[0]}`;for(let t=1;t<this.data.length;++t)e+=`, ${this.data[t]}`;return e}}class Ue extends De{constructor(e,t,n=0,s=null){super(t,s),this.buffer=e instanceof ArrayBuffer?e:e.buffer,this.offset=n;}clone(){const e=new Uint8Array(new Uint8Array(this.buffer,this.offset,this.typeInfo.size));return new Ue(e.buffer,this.typeInfo,0,null)}setDataValue(t,r,a,i){if(null===r)return void console.log('setDataValue: NULL data.');let o=this.offset,l=this.typeInfo;for(;a;){if(a instanceof be)if(l instanceof s){const e=a.index;if(e instanceof ge){if(!(e.value instanceof Oe))return void console.error(`SetDataValue: Invalid index type ${e.value}`);o+=e.value.value*l.stride;}else {const n=t.evalExpression(e,i);if(!(n instanceof Oe))return void console.error('SetDataValue: Unknown index type',e);o+=n.value*l.stride;}l=l.format;}else console.error(`SetDataValue: Type ${l.getTypeName()} is not an array`);else {if(!(a instanceof fe))return void console.error('SetDataValue: Unknown postfix type',a);{const t=a.value;if(l instanceof n){let e=false;for(const n of l.members)if(n.name===t){o+=n.offset,l=n.type,e=true;break}if(!e)return void console.error(`SetDataValue: Member ${t} not found`)}else if(l instanceof e){const e=l.getTypeName();let n=0;if('x'===t||'r'===t)n=0;else if('y'===t||'g'===t)n=1;else if('z'===t||'b'===t)n=2;else {if('w'!==t&&'a'!==t)return void console.error(`SetDataValue: Unknown member ${t}`);n=3;}if(!(r instanceof Oe))return void console.error('SetDataValue: Invalid value',r);const s=r.value;return 'vec2f'===e?void(new Float32Array(this.buffer,o,2)[n]=s):'vec3f'===e?void(new Float32Array(this.buffer,o,3)[n]=s):'vec4f'===e?void(new Float32Array(this.buffer,o,4)[n]=s):'vec2i'===e?void(new Int32Array(this.buffer,o,2)[n]=s):'vec3i'===e?void(new Int32Array(this.buffer,o,3)[n]=s):'vec4i'===e?void(new Int32Array(this.buffer,o,4)[n]=s):'vec2u'===e?void(new Uint32Array(this.buffer,o,2)[n]=s):'vec3u'===e?void(new Uint32Array(this.buffer,o,3)[n]=s):'vec4u'===e?void(new Uint32Array(this.buffer,o,4)[n]=s):void console.error(`SetDataValue: Type ${e} is not a struct`)}}}a=a.postfix;}this.setData(t,r,l,o,i);}setData(e,t,n,s,r){const a=n.getTypeName();if('f32'!==a&&'f16'!==a)if('i32'!==a&&'atomic<i32>'!==a&&'x32'!==a)if('u32'!==a&&'atomic<u32>'!==a)if('bool'!==a)if('vec2f'!==a&&'vec2h'!==a)if('vec3f'!==a&&'vec3h'!==a)if('vec4f'!==a&&'vec4h'!==a)if('vec2i'!==a)if('vec3i'!==a)if('vec4i'!==a)if('vec2u'!==a)if('vec3u'!==a)if('vec4u'!==a)if('vec2b'!==a)if('vec3b'!==a)if('vec4b'!==a)if('mat2x2f'!==a&&'mat2x2h'!==a)if('mat2x3f'!==a&&'mat2x3h'!==a)if('mat2x4f'!==a&&'mat2x4h'!==a)if('mat3x2f'!==a&&'mat3x2h'!==a)if('mat3x3f'!==a&&'mat3x3h'!==a)if('mat3x4f'!==a&&'mat3x4h'!==a)if('mat4x2f'!==a&&'mat4x2h'!==a)if('mat4x3f'!==a&&'mat4x3h'!==a)if('mat4x4f'!==a&&'mat4x4h'!==a)if(t instanceof Ue){if(n===t.typeInfo){return void new Uint8Array(this.buffer,s,t.buffer.byteLength).set(new Uint8Array(t.buffer))}console.error('SetDataValue: Type mismatch',a,t.typeInfo.getTypeName());}else console.error(`SetData: Unknown type ${a}`);else {const e=new Float32Array(this.buffer,s,16);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7],e[8]=t.data[8],e[9]=t.data[9],e[10]=t.data[10],e[11]=t.data[11],e[12]=t.data[12],e[13]=t.data[13],e[14]=t.data[14],e[15]=t.data[15]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11],e[12]=t[12],e[13]=t[13],e[14]=t[14],e[15]=t[15]);}else {const e=new Float32Array(this.buffer,s,12);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7],e[8]=t.data[8],e[9]=t.data[9],e[10]=t.data[10],e[11]=t.data[11]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11]);}else {const e=new Float32Array(this.buffer,s,8);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7]);}else {const e=new Float32Array(this.buffer,s,12);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7],e[8]=t.data[8],e[9]=t.data[9],e[10]=t.data[10],e[11]=t.data[11]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8],e[9]=t[9],e[10]=t[10],e[11]=t[11]);}else {const e=new Float32Array(this.buffer,s,9);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7],e[8]=t.data[8]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7],e[8]=t[8]);}else {const e=new Float32Array(this.buffer,s,6);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5]);}else {const e=new Float32Array(this.buffer,s,8);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5],e[6]=t.data[6],e[7]=t.data[7]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5],e[6]=t[6],e[7]=t[7]);}else {const e=new Float32Array(this.buffer,s,6);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3],e[4]=t.data[4],e[5]=t.data[5]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3],e[4]=t[4],e[5]=t[5]);}else {const e=new Float32Array(this.buffer,s,4);t instanceof Me?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3]);}else {const e=new Uint32Array(this.buffer,s,4);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3]);}else {const e=new Uint32Array(this.buffer,s,3);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2]):(e[0]=t[0],e[1]=t[1],e[2]=t[2]);}else {const e=new Uint32Array(this.buffer,s,2);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1]):(e[0]=t[0],e[1]=t[1]);}else {const e=new Uint32Array(this.buffer,s,4);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3]);}else {const e=new Uint32Array(this.buffer,s,3);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2]):(e[0]=t[0],e[1]=t[1],e[2]=t[2]);}else {const e=new Uint32Array(this.buffer,s,2);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1]):(e[0]=t[0],e[1]=t[1]);}else {const e=new Int32Array(this.buffer,s,4);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3]);}else {const e=new Int32Array(this.buffer,s,3);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2]):(e[0]=t[0],e[1]=t[1],e[2]=t[2]);}else {const e=new Int32Array(this.buffer,s,2);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1]):(e[0]=t[0],e[1]=t[1]);}else {const e=new Float32Array(this.buffer,s,4);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2],e[3]=t.data[3]):(e[0]=t[0],e[1]=t[1],e[2]=t[2],e[3]=t[3]);}else {const e=new Float32Array(this.buffer,s,3);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1],e[2]=t.data[2]):(e[0]=t[0],e[1]=t[1],e[2]=t[2]);}else {const e=new Float32Array(this.buffer,s,2);t instanceof Fe?(e[0]=t.data[0],e[1]=t.data[1]):(e[0]=t[0],e[1]=t[1]);}else t instanceof Oe&&(new Int32Array(this.buffer,s,1)[0]=t.value);else t instanceof Oe&&(new Uint32Array(this.buffer,s,1)[0]=t.value);else t instanceof Oe&&(new Int32Array(this.buffer,s,1)[0]=t.value);else t instanceof Oe&&(new Float32Array(this.buffer,s,1)[0]=t.value);}getSubData(t,r,i){var o,l,c;if(null===r)return this;let u=this.offset,h=this.typeInfo;for(;r;){if(r instanceof be){const e=r.index,n=e instanceof he?t.evalExpression(e,i):e;let a=0;if(n instanceof Oe?a=n.value:'number'==typeof n?a=n:console.error('GetDataValue: Invalid index type',e),h instanceof s)u+=a*h.stride,h=h.format;else {const e=h.getTypeName();'mat4x4'===e||'mat4x4f'===e||'mat4x4h'===e?(u+=16*a,h=t.getTypeInfo('vec4f')):console.error(`getDataValue: Type ${h.getTypeName()} is not an array`);}}else {if(!(r instanceof fe))return console.error('GetDataValue: Unknown postfix type',r),null;{const s=r.value;if(h instanceof n){let e=false;for(const t of h.members)if(t.name===s){u+=t.offset,h=t.type,e=true;break}if(!e)return console.error(`GetDataValue: Member ${s} not found`),null}else if(h instanceof e){const e=h.getTypeName();if('vec2f'===e||'vec3f'===e||'vec4f'===e||'vec2i'===e||'vec3i'===e||'vec4i'===e||'vec2u'===e||'vec3u'===e||'vec4u'===e||'vec2b'===e||'vec3b'===e||'vec4b'===e||'vec2h'===e||'vec3h'===e||'vec4h'===e||'vec2'===e||'vec3'===e||'vec4'===e){if(s.length>0&&s.length<5){let n='f';const r=[];for(let a=0;a<s.length;++a){const i=s[a].toLowerCase();let o=0;if('x'===i||'r'===i)o=0;else if('y'===i||'g'===i)o=1;else if('z'===i||'b'===i)o=2;else {if('w'!==i&&'a'!==i)return console.error(`Unknown member ${s}`),null;o=3;}if(1===s.length){if(e.endsWith('f'))return this.buffer.byteLength<u+4*o+4?(console.log('Insufficient buffer data'),null):new Oe(new Float32Array(this.buffer,u+4*o,1),t.getTypeInfo('f32'),this);if(e.endsWith('h'))return new Oe(new Float32Array(this.buffer,u+4*o,1),t.getTypeInfo('f16'),this);if(e.endsWith('i'))return new Oe(new Int32Array(this.buffer,u+4*o,1),t.getTypeInfo('i32'),this);if(e.endsWith('b'))return new Oe(new Int32Array(this.buffer,u+4*o,1),t.getTypeInfo('bool'),this);if(e.endsWith('u'))return new Oe(new Uint32Array(this.buffer,u+4*o,1),t.getTypeInfo('i32'),this)}if('vec2f'===e)r.push(new Float32Array(this.buffer,u,2)[o]);else if('vec3f'===e){if(u+12>=this.buffer.byteLength)return console.log('Insufficient buffer data'),null;const e=new Float32Array(this.buffer,u,3);r.push(e[o]);}else if('vec4f'===e)r.push(new Float32Array(this.buffer,u,4)[o]);else if('vec2i'===e)n='i',r.push(new Int32Array(this.buffer,u,2)[o]);else if('vec3i'===e)n='i',r.push(new Int32Array(this.buffer,u,3)[o]);else if('vec4i'===e)n='i',r.push(new Int32Array(this.buffer,u,4)[o]);else if('vec2u'===e){n='u';const e=new Uint32Array(this.buffer,u,2);r.push(e[o]);}else 'vec3u'===e?(n='u',r.push(new Uint32Array(this.buffer,u,3)[o])):'vec4u'===e&&(n='u',r.push(new Uint32Array(this.buffer,u,4)[o]));}return 2===r.length?h=t.getTypeInfo(`vec2${n}`):3===r.length?h=t.getTypeInfo(`vec3${n}`):4===r.length?h=t.getTypeInfo(`vec4${n}`):console.error(`GetDataValue: Invalid vector length ${r.length}`),new Fe(r,h,null)}return console.error(`GetDataValue: Unknown member ${s}`),null}return console.error(`GetDataValue: Type ${e} is not a struct`),null}}}r=r.postfix;}const f=h.getTypeName();return 'f32'===f?new Oe(new Float32Array(this.buffer,u,1),h,this):'i32'===f?new Oe(new Int32Array(this.buffer,u,1),h,this):'u32'===f?new Oe(new Uint32Array(this.buffer,u,1),h,this):'vec2f'===f?new Fe(new Float32Array(this.buffer,u,2),h,this):'vec3f'===f?new Fe(new Float32Array(this.buffer,u,3),h,this):'vec4f'===f?new Fe(new Float32Array(this.buffer,u,4),h,this):'vec2i'===f?new Fe(new Int32Array(this.buffer,u,2),h,this):'vec3i'===f?new Fe(new Int32Array(this.buffer,u,3),h,this):'vec4i'===f?new Fe(new Int32Array(this.buffer,u,4),h,this):'vec2u'===f?new Fe(new Uint32Array(this.buffer,u,2),h,this):'vec3u'===f?new Fe(new Uint32Array(this.buffer,u,3),h,this):'vec4u'===f?new Fe(new Uint32Array(this.buffer,u,4),h,this):h instanceof a&&'atomic'===h.name?'u32'===(null===(o=h.format)||undefined===o?undefined:o.name)?new Oe(new Uint32Array(this.buffer,u,1)[0],h.format,this):'i32'===(null===(l=h.format)||undefined===l?undefined:l.name)?new Oe(new Int32Array(this.buffer,u,1)[0],h.format,this):(console.error(`GetDataValue: Invalid atomic format ${null===(c=h.format)||undefined===c?undefined:c.name}`),null):new Ue(this.buffer,h,u,this)}toString(){let e='';if(this.typeInfo instanceof s)if('f32'===this.typeInfo.format.name){const t=new Float32Array(this.buffer,this.offset);e=`[${t[0]}`;for(let n=1;n<t.length;++n)e+=`, ${t[n]}`;}else if('i32'===this.typeInfo.format.name){const t=new Int32Array(this.buffer,this.offset);e=`[${t[0]}`;for(let n=1;n<t.length;++n)e+=`, ${t[n]}`;}else if('u32'===this.typeInfo.format.name){const t=new Uint32Array(this.buffer,this.offset);e=`[${t[0]}`;for(let n=1;n<t.length;++n)e+=`, ${t[n]}`;}else if('vec2f'===this.typeInfo.format.name){const t=new Float32Array(this.buffer,this.offset);e=`[${t[0]}, ${t[1]}]`;for(let n=1;n<t.length/2;++n)e+=`, [${t[2*n]}, ${t[2*n+1]}]`;}else if('vec3f'===this.typeInfo.format.name){const t=new Float32Array(this.buffer,this.offset);e=`[${t[0]}, ${t[1]}, ${t[2]}]`;for(let n=4;n<t.length;n+=4)e+=`, [${t[n]}, ${t[n+1]}, ${t[n+2]}]`;}else if('vec4f'===this.typeInfo.format.name){const t=new Float32Array(this.buffer,this.offset);e=`[${t[0]}, ${t[1]}, ${t[2]}, ${t[3]}]`;for(let n=4;n<t.length;n+=4)e+=`, [${t[n]}, ${t[n+1]}, ${t[n+2]}, ${t[n+3]}]`;}else e='[...]';else this.typeInfo instanceof n?e+='{...}':e='[...]';return e}}class Pe extends De{constructor(e,t,n,s){super(t,null),this.data=e,this.descriptor=n,this.view=s;}clone(){return new Pe(this.data,this.typeInfo,this.descriptor,this.view)}get width(){var e,t;const n=this.descriptor.size;return n instanceof Array&&n.length>0?null!==(e=n[0])&&undefined!==e?e:0:n instanceof Object&&null!==(t=n.width)&&undefined!==t?t:0}get height(){var e,t;const n=this.descriptor.size;return n instanceof Array&&n.length>1?null!==(e=n[1])&&undefined!==e?e:0:n instanceof Object&&null!==(t=n.height)&&undefined!==t?t:0}get depthOrArrayLayers(){var e,t;const n=this.descriptor.size;return n instanceof Array&&n.length>2?null!==(e=n[2])&&undefined!==e?e:0:n instanceof Object&&null!==(t=n.depthOrArrayLayers)&&undefined!==t?t:0}get format(){var e;return this.descriptor&&null!==(e=this.descriptor.format)&&undefined!==e?e:'rgba8unorm'}get sampleCount(){var e;return this.descriptor&&null!==(e=this.descriptor.sampleCount)&&undefined!==e?e:1}get mipLevelCount(){var e;return this.descriptor&&null!==(e=this.descriptor.mipLevelCount)&&undefined!==e?e:1}get dimension(){var e;return this.descriptor&&null!==(e=this.descriptor.dimension)&&undefined!==e?e:'2d'}getMipLevelSize(e){if(e>=this.mipLevelCount)return [0,0,0];const t=[this.width,this.height,this.depthOrArrayLayers];for(let n=0;n<t.length;++n)t[n]=Math.max(1,t[n]>>e);return t}get texelByteSize(){const e=this.format,t=T[e];return t?t.isDepthStencil?4:t.bytesPerBlock:0}get bytesPerRow(){return this.width*this.texelByteSize}get isDepthStencil(){const e=this.format,t=T[e];return !!t&&t.isDepthStencil}getGpuSize(){const e=this.format,t=T[e],n=this.width;if(!e||n<=0||!t)return -1;const s=this.height,r=this.depthOrArrayLayers,a=this.dimension;return n/t.blockWidth*('1d'===a?1:s/t.blockHeight)*t.bytesPerBlock*r}getPixel(e,t,n=0,s=0){const r=this.texelByteSize,a=this.bytesPerRow,i=this.height,o=this.data[s];return w(new Uint8Array(o),e,t,n,s,i,a,r,this.format)}setPixel(e,t,n,s,r){const a=this.texelByteSize,i=this.bytesPerRow,o=this.height,l=this.data[s];!function(e,t,n,s,r,a,i,o,l,c){const u=s*(i>>=r)*(a>>=r)+n*i+t*o;switch(l){case 'r8unorm':return void I(e,u,'8unorm',1,c);case 'r8snorm':return void I(e,u,'8snorm',1,c);case 'r8uint':return void I(e,u,'8uint',1,c);case 'r8sint':return void I(e,u,'8sint',1,c);case 'rg8unorm':return void I(e,u,'8unorm',2,c);case 'rg8snorm':return void I(e,u,'8snorm',2,c);case 'rg8uint':return void I(e,u,'8uint',2,c);case 'rg8sint':return void I(e,u,'8sint',2,c);case 'rgba8unorm-srgb':case 'rgba8unorm':case 'bgra8unorm-srgb':case 'bgra8unorm':return void I(e,u,'8unorm',4,c);case 'rgba8snorm':return void I(e,u,'8snorm',4,c);case 'rgba8uint':return void I(e,u,'8uint',4,c);case 'rgba8sint':return void I(e,u,'8sint',4,c);case 'r16uint':return void I(e,u,'16uint',1,c);case 'r16sint':return void I(e,u,'16sint',1,c);case 'r16float':return void I(e,u,'16float',1,c);case 'rg16uint':return void I(e,u,'16uint',2,c);case 'rg16sint':return void I(e,u,'16sint',2,c);case 'rg16float':return void I(e,u,'16float',2,c);case 'rgba16uint':return void I(e,u,'16uint',4,c);case 'rgba16sint':return void I(e,u,'16sint',4,c);case 'rgba16float':return void I(e,u,'16float',4,c);case 'r32uint':return void I(e,u,'32uint',1,c);case 'r32sint':return void I(e,u,'32sint',1,c);case 'depth16unorm':case 'depth24plus':case 'depth24plus-stencil8':case 'depth32float':case 'depth32float-stencil8':case 'r32float':return void I(e,u,'32float',1,c);case 'rg32uint':return void I(e,u,'32uint',2,c);case 'rg32sint':return void I(e,u,'32sint',2,c);case 'rg32float':return void I(e,u,'32float',2,c);case 'rgba32uint':return void I(e,u,'32uint',4,c);case 'rgba32sint':return void I(e,u,'32sint',4,c);case 'rgba32float':return void I(e,u,'32float',4,c);case 'rg11b10ufloat':console.error('TODO: rg11b10ufloat not supported for writing');}}(new Uint8Array(l),e,t,n,s,o,i,a,this.format,r);}}(e=>{e[e.token=0]='token',e[e.keyword=1]='keyword',e[e.reserved=2]='reserved';})(H||(H={}));class We{constructor(e,t,n){this.name=e,this.type=t,this.rule=n;}toString(){return this.name}}class qe{}q=qe,qe.none=new We('',H.reserved,''),qe.eof=new We('EOF',H.token,''),qe.reserved={asm:new We('asm',H.reserved,'asm'),bf16:new We('bf16',H.reserved,'bf16'),do:new We('do',H.reserved,'do'),enum:new We('enum',H.reserved,'enum'),f16:new We('f16',H.reserved,'f16'),f64:new We('f64',H.reserved,'f64'),handle:new We('handle',H.reserved,'handle'),i8:new We('i8',H.reserved,'i8'),i16:new We('i16',H.reserved,'i16'),i64:new We('i64',H.reserved,'i64'),mat:new We('mat',H.reserved,'mat'),premerge:new We('premerge',H.reserved,'premerge'),regardless:new We('regardless',H.reserved,'regardless'),typedef:new We('typedef',H.reserved,'typedef'),u8:new We('u8',H.reserved,'u8'),u16:new We('u16',H.reserved,'u16'),u64:new We('u64',H.reserved,'u64'),unless:new We('unless',H.reserved,'unless'),using:new We('using',H.reserved,'using'),vec:new We('vec',H.reserved,'vec'),void:new We('void',H.reserved,'void')},qe.keywords={array:new We('array',H.keyword,'array'),atomic:new We('atomic',H.keyword,'atomic'),bool:new We('bool',H.keyword,'bool'),f32:new We('f32',H.keyword,'f32'),i32:new We('i32',H.keyword,'i32'),mat2x2:new We('mat2x2',H.keyword,'mat2x2'),mat2x3:new We('mat2x3',H.keyword,'mat2x3'),mat2x4:new We('mat2x4',H.keyword,'mat2x4'),mat3x2:new We('mat3x2',H.keyword,'mat3x2'),mat3x3:new We('mat3x3',H.keyword,'mat3x3'),mat3x4:new We('mat3x4',H.keyword,'mat3x4'),mat4x2:new We('mat4x2',H.keyword,'mat4x2'),mat4x3:new We('mat4x3',H.keyword,'mat4x3'),mat4x4:new We('mat4x4',H.keyword,'mat4x4'),ptr:new We('ptr',H.keyword,'ptr'),sampler:new We('sampler',H.keyword,'sampler'),sampler_comparison:new We('sampler_comparison',H.keyword,'sampler_comparison'),struct:new We('struct',H.keyword,'struct'),texture_1d:new We('texture_1d',H.keyword,'texture_1d'),texture_2d:new We('texture_2d',H.keyword,'texture_2d'),texture_2d_array:new We('texture_2d_array',H.keyword,'texture_2d_array'),texture_3d:new We('texture_3d',H.keyword,'texture_3d'),texture_cube:new We('texture_cube',H.keyword,'texture_cube'),texture_cube_array:new We('texture_cube_array',H.keyword,'texture_cube_array'),texture_multisampled_2d:new We('texture_multisampled_2d',H.keyword,'texture_multisampled_2d'),texture_storage_1d:new We('texture_storage_1d',H.keyword,'texture_storage_1d'),texture_storage_2d:new We('texture_storage_2d',H.keyword,'texture_storage_2d'),texture_storage_2d_array:new We('texture_storage_2d_array',H.keyword,'texture_storage_2d_array'),texture_storage_3d:new We('texture_storage_3d',H.keyword,'texture_storage_3d'),texture_depth_2d:new We('texture_depth_2d',H.keyword,'texture_depth_2d'),texture_depth_2d_array:new We('texture_depth_2d_array',H.keyword,'texture_depth_2d_array'),texture_depth_cube:new We('texture_depth_cube',H.keyword,'texture_depth_cube'),texture_depth_cube_array:new We('texture_depth_cube_array',H.keyword,'texture_depth_cube_array'),texture_depth_multisampled_2d:new We('texture_depth_multisampled_2d',H.keyword,'texture_depth_multisampled_2d'),texture_external:new We('texture_external',H.keyword,'texture_external'),u32:new We('u32',H.keyword,'u32'),vec2:new We('vec2',H.keyword,'vec2'),vec3:new We('vec3',H.keyword,'vec3'),vec4:new We('vec4',H.keyword,'vec4'),bitcast:new We('bitcast',H.keyword,'bitcast'),block:new We('block',H.keyword,'block'),break:new We('break',H.keyword,'break'),case:new We('case',H.keyword,'case'),continue:new We('continue',H.keyword,'continue'),continuing:new We('continuing',H.keyword,'continuing'),default:new We('default',H.keyword,'default'),diagnostic:new We('diagnostic',H.keyword,'diagnostic'),discard:new We('discard',H.keyword,'discard'),else:new We('else',H.keyword,'else'),enable:new We('enable',H.keyword,'enable'),fallthrough:new We('fallthrough',H.keyword,'fallthrough'),false:new We('false',H.keyword,'false'),fn:new We('fn',H.keyword,'fn'),for:new We('for',H.keyword,'for'),function:new We('function',H.keyword,'function'),if:new We('if',H.keyword,'if'),let:new We('let',H.keyword,'let'),const:new We('const',H.keyword,'const'),loop:new We('loop',H.keyword,'loop'),while:new We('while',H.keyword,'while'),private:new We('private',H.keyword,'private'),read:new We('read',H.keyword,'read'),read_write:new We('read_write',H.keyword,'read_write'),return:new We('return',H.keyword,'return'),requires:new We('requires',H.keyword,'requires'),storage:new We('storage',H.keyword,'storage'),switch:new We('switch',H.keyword,'switch'),true:new We('true',H.keyword,'true'),alias:new We('alias',H.keyword,'alias'),type:new We('type',H.keyword,'type'),uniform:new We('uniform',H.keyword,'uniform'),var:new We('var',H.keyword,'var'),override:new We('override',H.keyword,'override'),workgroup:new We('workgroup',H.keyword,'workgroup'),write:new We('write',H.keyword,'write'),r8unorm:new We('r8unorm',H.keyword,'r8unorm'),r8snorm:new We('r8snorm',H.keyword,'r8snorm'),r8uint:new We('r8uint',H.keyword,'r8uint'),r8sint:new We('r8sint',H.keyword,'r8sint'),r16uint:new We('r16uint',H.keyword,'r16uint'),r16sint:new We('r16sint',H.keyword,'r16sint'),r16float:new We('r16float',H.keyword,'r16float'),rg8unorm:new We('rg8unorm',H.keyword,'rg8unorm'),rg8snorm:new We('rg8snorm',H.keyword,'rg8snorm'),rg8uint:new We('rg8uint',H.keyword,'rg8uint'),rg8sint:new We('rg8sint',H.keyword,'rg8sint'),r32uint:new We('r32uint',H.keyword,'r32uint'),r32sint:new We('r32sint',H.keyword,'r32sint'),r32float:new We('r32float',H.keyword,'r32float'),rg16uint:new We('rg16uint',H.keyword,'rg16uint'),rg16sint:new We('rg16sint',H.keyword,'rg16sint'),rg16float:new We('rg16float',H.keyword,'rg16float'),rgba8unorm:new We('rgba8unorm',H.keyword,'rgba8unorm'),rgba8unorm_srgb:new We('rgba8unorm_srgb',H.keyword,'rgba8unorm_srgb'),rgba8snorm:new We('rgba8snorm',H.keyword,'rgba8snorm'),rgba8uint:new We('rgba8uint',H.keyword,'rgba8uint'),rgba8sint:new We('rgba8sint',H.keyword,'rgba8sint'),bgra8unorm:new We('bgra8unorm',H.keyword,'bgra8unorm'),bgra8unorm_srgb:new We('bgra8unorm_srgb',H.keyword,'bgra8unorm_srgb'),rgb10a2unorm:new We('rgb10a2unorm',H.keyword,'rgb10a2unorm'),rg11b10float:new We('rg11b10float',H.keyword,'rg11b10float'),rg32uint:new We('rg32uint',H.keyword,'rg32uint'),rg32sint:new We('rg32sint',H.keyword,'rg32sint'),rg32float:new We('rg32float',H.keyword,'rg32float'),rgba16uint:new We('rgba16uint',H.keyword,'rgba16uint'),rgba16sint:new We('rgba16sint',H.keyword,'rgba16sint'),rgba16float:new We('rgba16float',H.keyword,'rgba16float'),rgba32uint:new We('rgba32uint',H.keyword,'rgba32uint'),rgba32sint:new We('rgba32sint',H.keyword,'rgba32sint'),rgba32float:new We('rgba32float',H.keyword,'rgba32float'),static_assert:new We('static_assert',H.keyword,'static_assert')},qe.tokens={decimal_float_literal:new We('decimal_float_literal',H.token,/((-?[0-9]*\\.[0-9]+|-?[0-9]+\\.[0-9]*)((e|E)(\\+|-)?[0-9]+)?[fh]?)|(-?[0-9]+(e|E)(\\+|-)?[0-9]+[fh]?)|(-?[0-9]+[fh])/),hex_float_literal:new We('hex_float_literal',H.token,/-?0x((([0-9a-fA-F]*\\.[0-9a-fA-F]+|[0-9a-fA-F]+\\.[0-9a-fA-F]*)((p|P)(\\+|-)?[0-9]+[fh]?)?)|([0-9a-fA-F]+(p|P)(\\+|-)?[0-9]+[fh]?))/),int_literal:new We('int_literal',H.token,/-?0x[0-9a-fA-F]+|0i?|-?[1-9][0-9]*i?/),uint_literal:new We('uint_literal',H.token,/0x[0-9a-fA-F]+u|0u|[1-9][0-9]*u/),name:new We('name',H.token,/([_\\p{XID_Start}][\\p{XID_Continue}]+)|([\\p{XID_Start}])/u),ident:new We('ident',H.token,/[_a-zA-Z][0-9a-zA-Z_]*/),and:new We('and',H.token,'&'),and_and:new We('and_and',H.token,'&&'),arrow:new We('arrow ',H.token,'->'),attr:new We('attr',H.token,'@'),forward_slash:new We('forward_slash',H.token,'/'),bang:new We('bang',H.token,'!'),bracket_left:new We('bracket_left',H.token,'['),bracket_right:new We('bracket_right',H.token,']'),brace_left:new We('brace_left',H.token,'{'),brace_right:new We('brace_right',H.token,'}'),colon:new We('colon',H.token,':'),comma:new We('comma',H.token,','),equal:new We('equal',H.token,'='),equal_equal:new We('equal_equal',H.token,'=='),not_equal:new We('not_equal',H.token,'!='),greater_than:new We('greater_than',H.token,'>'),greater_than_equal:new We('greater_than_equal',H.token,'>='),shift_right:new We('shift_right',H.token,'>>'),less_than:new We('less_than',H.token,'<'),less_than_equal:new We('less_than_equal',H.token,'<='),shift_left:new We('shift_left',H.token,'<<'),modulo:new We('modulo',H.token,'%'),minus:new We('minus',H.token,'-'),minus_minus:new We('minus_minus',H.token,'--'),period:new We('period',H.token,'.'),plus:new We('plus',H.token,'+'),plus_plus:new We('plus_plus',H.token,'++'),or:new We('or',H.token,'|'),or_or:new We('or_or',H.token,'||'),paren_left:new We('paren_left',H.token,'('),paren_right:new We('paren_right',H.token,')'),semicolon:new We('semicolon',H.token,';'),star:new We('star',H.token,'*'),tilde:new We('tilde',H.token,'~'),underscore:new We('underscore',H.token,'_'),xor:new We('xor',H.token,'^'),plus_equal:new We('plus_equal',H.token,'+='),minus_equal:new We('minus_equal',H.token,'-='),times_equal:new We('times_equal',H.token,'*='),division_equal:new We('division_equal',H.token,'/='),modulo_equal:new We('modulo_equal',H.token,'%='),and_equal:new We('and_equal',H.token,'&='),or_equal:new We('or_equal',H.token,'|='),xor_equal:new We('xor_equal',H.token,'^='),shift_right_equal:new We('shift_right_equal',H.token,'>>='),shift_left_equal:new We('shift_left_equal',H.token,'<<=')},qe.simpleTokens={'@':q.tokens.attr,'{':q.tokens.brace_left,'}':q.tokens.brace_right,':':q.tokens.colon,',':q.tokens.comma,'(':q.tokens.paren_left,')':q.tokens.paren_right,';':q.tokens.semicolon},qe.literalTokens={'&':q.tokens.and,'&&':q.tokens.and_and,'->':q.tokens.arrow,'/':q.tokens.forward_slash,'!':q.tokens.bang,'[':q.tokens.bracket_left,']':q.tokens.bracket_right,'=':q.tokens.equal,'==':q.tokens.equal_equal,'!=':q.tokens.not_equal,'>':q.tokens.greater_than,'>=':q.tokens.greater_than_equal,'>>':q.tokens.shift_right,'<':q.tokens.less_than,'<=':q.tokens.less_than_equal,'<<':q.tokens.shift_left,'%':q.tokens.modulo,'-':q.tokens.minus,'--':q.tokens.minus_minus,'.':q.tokens.period,'+':q.tokens.plus,'++':q.tokens.plus_plus,'|':q.tokens.or,'||':q.tokens.or_or,'*':q.tokens.star,'~':q.tokens.tilde,_:q.tokens.underscore,'^':q.tokens.xor,'+=':q.tokens.plus_equal,'-=':q.tokens.minus_equal,'*=':q.tokens.times_equal,'/=':q.tokens.division_equal,'%=':q.tokens.modulo_equal,'&=':q.tokens.and_equal,'|=':q.tokens.or_equal,'^=':q.tokens.xor_equal,'>>=':q.tokens.shift_right_equal,'<<=':q.tokens.shift_left_equal},qe.regexTokens={decimal_float_literal:q.tokens.decimal_float_literal,hex_float_literal:q.tokens.hex_float_literal,int_literal:q.tokens.int_literal,uint_literal:q.tokens.uint_literal,ident:q.tokens.ident},qe.storage_class=[q.keywords.function,q.keywords.private,q.keywords.workgroup,q.keywords.uniform,q.keywords.storage],qe.access_mode=[q.keywords.read,q.keywords.write,q.keywords.read_write],qe.sampler_type=[q.keywords.sampler,q.keywords.sampler_comparison],qe.sampled_texture_type=[q.keywords.texture_1d,q.keywords.texture_2d,q.keywords.texture_2d_array,q.keywords.texture_3d,q.keywords.texture_cube,q.keywords.texture_cube_array],qe.multisampled_texture_type=[q.keywords.texture_multisampled_2d],qe.storage_texture_type=[q.keywords.texture_storage_1d,q.keywords.texture_storage_2d,q.keywords.texture_storage_2d_array,q.keywords.texture_storage_3d],qe.depth_texture_type=[q.keywords.texture_depth_2d,q.keywords.texture_depth_2d_array,q.keywords.texture_depth_cube,q.keywords.texture_depth_cube_array,q.keywords.texture_depth_multisampled_2d],qe.texture_external_type=[q.keywords.texture_external],qe.any_texture_type=[...q.sampled_texture_type,...q.multisampled_texture_type,...q.storage_texture_type,...q.depth_texture_type,...q.texture_external_type],qe.texel_format=[q.keywords.r8unorm,q.keywords.r8snorm,q.keywords.r8uint,q.keywords.r8sint,q.keywords.r16uint,q.keywords.r16sint,q.keywords.r16float,q.keywords.rg8unorm,q.keywords.rg8snorm,q.keywords.rg8uint,q.keywords.rg8sint,q.keywords.r32uint,q.keywords.r32sint,q.keywords.r32float,q.keywords.rg16uint,q.keywords.rg16sint,q.keywords.rg16float,q.keywords.rgba8unorm,q.keywords.rgba8unorm_srgb,q.keywords.rgba8snorm,q.keywords.rgba8uint,q.keywords.rgba8sint,q.keywords.bgra8unorm,q.keywords.bgra8unorm_srgb,q.keywords.rgb10a2unorm,q.keywords.rg11b10float,q.keywords.rg32uint,q.keywords.rg32sint,q.keywords.rg32float,q.keywords.rgba16uint,q.keywords.rgba16sint,q.keywords.rgba16float,q.keywords.rgba32uint,q.keywords.rgba32sint,q.keywords.rgba32float],qe.const_literal=[q.tokens.int_literal,q.tokens.uint_literal,q.tokens.decimal_float_literal,q.tokens.hex_float_literal,q.keywords.true,q.keywords.false],qe.literal_or_ident=[q.tokens.ident,q.tokens.int_literal,q.tokens.uint_literal,q.tokens.decimal_float_literal,q.tokens.hex_float_literal,q.tokens.name],qe.element_count_expression=[q.tokens.int_literal,q.tokens.uint_literal,q.tokens.ident],qe.template_types=[q.keywords.vec2,q.keywords.vec3,q.keywords.vec4,q.keywords.mat2x2,q.keywords.mat2x3,q.keywords.mat2x4,q.keywords.mat3x2,q.keywords.mat3x3,q.keywords.mat3x4,q.keywords.mat4x2,q.keywords.mat4x3,q.keywords.mat4x4,q.keywords.atomic,q.keywords.bitcast,...q.any_texture_type],qe.attribute_name=[q.tokens.ident,q.keywords.block,q.keywords.diagnostic],qe.assignment_operators=[q.tokens.equal,q.tokens.plus_equal,q.tokens.minus_equal,q.tokens.times_equal,q.tokens.division_equal,q.tokens.modulo_equal,q.tokens.and_equal,q.tokens.or_equal,q.tokens.xor_equal,q.tokens.shift_right_equal,q.tokens.shift_left_equal],qe.increment_operators=[q.tokens.plus_plus,q.tokens.minus_minus];class He{constructor(e,t,n,s,r){this.type=e,this.lexeme=t,this.line=n,this.start=s,this.end=r;}toString(){return this.lexeme}isTemplateType(){return -1!=qe.template_types.indexOf(this.type)}isArrayType(){return this.type==qe.keywords.array}isArrayOrTemplateType(){return this.isArrayType()||this.isTemplateType()}}class ze{constructor(e){this._tokens=[],this._start=0,this._current=0,this._line=1,this._source=null!=e?e:'';}scanTokens(){for(;!this._isAtEnd();)if(this._start=this._current,!this.scanToken())throw `Invalid syntax at line ${this._line}`;return this._tokens.push(new He(qe.eof,'',this._line,this._current,this._current)),this._tokens}scanToken(){let e=this._advance();if('\\n'==e)return this._line++,true;if(this._isWhitespace(e))return true;if('/'==e){if('/'==this._peekAhead()){for(;'\\n'!=e;){if(this._isAtEnd())return true;e=this._advance();}return this._line++,true}if('*'==this._peekAhead()){this._advance();let t=1;for(;t>0;){if(this._isAtEnd())return true;if(e=this._advance(),'\\n'==e)this._line++;else if('*'==e){if('/'==this._peekAhead()&&(this._advance(),t--,0==t))return true}else '/'==e&&'*'==this._peekAhead()&&(this._advance(),t++);}return true}}const t=qe.simpleTokens[e];if(t)return this._addToken(t),true;let n=qe.none;const s=this._isAlpha(e),r='_'===e;if(this._isAlphaNumeric(e)){let t=this._peekAhead();for(;this._isAlphaNumeric(t);)e+=this._advance(),t=this._peekAhead();}if(s){const t=qe.keywords[e];if(t)return this._addToken(t),true}if(s||r)return this._addToken(qe.tokens.ident),true;for(;;){let t=this._findType(e);const s=this._peekAhead();if('-'==e&&this._tokens.length>0){if('='==s)return this._current++,e+=s,this._addToken(qe.tokens.minus_equal),true;if('-'==s)return this._current++,e+=s,this._addToken(qe.tokens.minus_minus),true;const n=this._tokens.length-1;if((-1!=qe.literal_or_ident.indexOf(this._tokens[n].type)||this._tokens[n].type==qe.tokens.paren_right)&&'>'!=s)return this._addToken(t),true}if('>'==e&&('>'==s||'='==s)){let e=false,n=this._tokens.length-1;for(let t=0;t<5&&n>=0&&-1===qe.assignment_operators.indexOf(this._tokens[n].type);++t,--n)if(this._tokens[n].type===qe.tokens.less_than){n>0&&this._tokens[n-1].isArrayOrTemplateType()&&(e=true);break}if(e)return this._addToken(t),true}if(t===qe.none){let s=e,r=0;const a=2;for(let e=0;e<a;++e)if(s+=this._peekAhead(e),t=this._findType(s),t!==qe.none){r=e;break}if(t===qe.none)return n!==qe.none&&(this._current--,this._addToken(n),true);e=s,this._current+=r+1;}if(n=t,this._isAtEnd())break;e+=this._advance();}return n!==qe.none&&(this._addToken(n),true)}_findType(e){for(const t in qe.regexTokens){const n=qe.regexTokens[t];if(this._match(e,n.rule))return n}const t=qe.literalTokens[e];return t||qe.none}_match(e,t){const n=t.exec(e);return n&&0==n.index&&n[0]==e}_isAtEnd(){return this._current>=this._source.length}_isAlpha(e){return !this._isNumeric(e)&&!this._isWhitespace(e)&&'_'!==e&&'.'!==e&&'('!==e&&')'!==e&&'['!==e&&']'!==e&&'{'!==e&&'}'!==e&&','!==e&&';'!==e&&':'!==e&&'='!==e&&'!'!==e&&'<'!==e&&'>'!==e&&'+'!==e&&'-'!==e&&'*'!==e&&'/'!==e&&'%'!==e&&'&'!==e&&'|'!==e&&'^'!==e&&'~'!==e&&'@'!==e&&'#'!==e&&'?'!==e&&'\\''!==e&&'`'!==e&&'\"'!==e&&'\\\\'!==e&&'\\n'!==e&&'\\r'!==e&&'\\t'!==e&&'\\0'!==e}_isNumeric(e){return e>='0'&&e<='9'}_isAlphaNumeric(e){return this._isAlpha(e)||this._isNumeric(e)||'_'===e}_isWhitespace(e){return ' '==e||'\\t'==e||'\\r'==e}_advance(e=0){let t=this._source[this._current];return e=e||0,e++,this._current+=e,t}_peekAhead(e=0){return e=e||0,this._current+e>=this._source.length?'\\0':this._source[this._current+e]}_addToken(e){const t=this._source.substring(this._start,this._current);this._tokens.push(new He(e,t,this._line,this._start,this._current));}}function Re(e){return Array.isArray(e)||(null==e?undefined:e.buffer)instanceof ArrayBuffer}const Ge=new Float32Array(1),Xe=new Uint32Array(Ge.buffer),je=new Uint32Array(Ge.buffer),Ze=new Int32Array(1),Qe=new Float32Array(Ze.buffer),Ye=new Uint32Array(Ze.buffer),Ke=new Uint32Array(1),Je=new Float32Array(Ke.buffer),et=new Int32Array(Ke.buffer);function tt(e,t,n){if(t===n)return e;if('f32'===t){if('i32'===n||'x32'===n)return Ge[0]=e,Xe[0];if('u32'===n)return Ge[0]=e,je[0]}else if('i32'===t||'x32'===t){if('f32'===n)return Ze[0]=e,Qe[0];if('u32'===n)return Ze[0]=e,Ye[0]}else if('u32'===t){if('f32'===n)return Ke[0]=e,Je[0];if('i32'===n||'x32'===n)return Ke[0]=e,et[0]}return console.error(`Unsupported cast from ${t} to ${n}`),e}class nt{constructor(e){this.resources=null,this.inUse=false,this.info=null,this.node=e;}}class st{constructor(e,t){this.align=e,this.size=t;}}class rt{constructor(){this.uniforms=[],this.storage=[],this.textures=[],this.samplers=[],this.aliases=[],this.overrides=[],this.structs=[],this.entry=new d,this.functions=[],this._types=new Map,this._functions=new Map;}_isStorageTexture(e){return 'texture_storage_1d'==e.name||'texture_storage_2d'==e.name||'texture_storage_2d_array'==e.name||'texture_storage_3d'==e.name}updateAST(e){for(const t of e)t instanceof C&&this._functions.set(t.name,new nt(t));for(const t of e)if(t instanceof ie){const e=this.getTypeInfo(t,null);e instanceof n&&this.structs.push(e);}for(const t of e)if(t instanceof ee)this.aliases.push(this._getAliasInfo(t));else if(t instanceof F){const e=t,n=this._getAttributeNum(e.attributes,'id',0),s=null!=e.type?this.getTypeInfo(e.type,e.attributes):null;this.overrides.push(new h(e.name,s,e.attributes,n));}else if(this._isUniformVar(t)){const e=t,n=this._getAttributeNum(e.attributes,'group',0),s=this._getAttributeNum(e.attributes,'binding',0),r=this.getTypeInfo(e.type,e.attributes),a=new o(e.name,r,n,s,e.attributes,i.Uniform,e.access);a.access||(a.access='read'),this.uniforms.push(a);}else if(this._isStorageVar(t)){const e=t,n=this._getAttributeNum(e.attributes,'group',0),s=this._getAttributeNum(e.attributes,'binding',0),r=this.getTypeInfo(e.type,e.attributes),a=this._isStorageTexture(r),l=new o(e.name,r,n,s,e.attributes,a?i.StorageTexture:i.Storage,e.access);l.access||(l.access='read'),this.storage.push(l);}else if(this._isTextureVar(t)){const e=t,n=this._getAttributeNum(e.attributes,'group',0),s=this._getAttributeNum(e.attributes,'binding',0),r=this.getTypeInfo(e.type,e.attributes),a=this._isStorageTexture(r),l=new o(e.name,r,n,s,e.attributes,a?i.StorageTexture:i.Texture,e.access);l.access||(l.access='read'),a?this.storage.push(l):this.textures.push(l);}else if(this._isSamplerVar(t)){const e=t,n=this._getAttributeNum(e.attributes,'group',0),s=this._getAttributeNum(e.attributes,'binding',0),r=this.getTypeInfo(e.type,e.attributes),a=new o(e.name,r,n,s,e.attributes,i.Sampler,e.access);this.samplers.push(a);}else;for(const t of e)if(t instanceof C){const e=this._getAttribute(t,'vertex'),n=this._getAttribute(t,'fragment'),s=this._getAttribute(t,'compute'),r=e||n||s,a=new p(t.name,null==r?undefined:r.name,t.attributes);a.attributes=t.attributes,a.startLine=t.startLine,a.endLine=t.endLine,this.functions.push(a),this._functions.get(t.name).info=a,r&&(this._functions.get(t.name).inUse=true,a.inUse=true,a.resources=this._findResources(t,!!r),a.inputs=this._getInputs(t.args),a.outputs=this._getOutputs(t.returnType),this.entry[r.name].push(a)),a.arguments=t.args.map((e=>new f(e.name,this.getTypeInfo(e.type,e.attributes),e.attributes))),a.returnType=t.returnType?this.getTypeInfo(t.returnType,t.attributes):null;}for(const e of this._functions.values())e.info&&(e.info.inUse=e.inUse,this._addCalls(e.node,e.info.calls));for(const e of this._functions.values())e.node.search((t=>{var n,s,r;if(t instanceof Ce){if(t.value)if(Re(t.value))for(const s of t.value)for(const t of this.overrides)s===t.name&&(null===(n=e.info)||undefined===n||n.overrides.push(t));else for(const n of this.overrides)t.value===n.name&&(null===(s=e.info)||undefined===s||s.overrides.push(n));}else if(t instanceof me)for(const n of this.overrides)t.name===n.name&&(null===(r=e.info)||undefined===r||r.overrides.push(n));}));for(const e of this.uniforms)this._markStructsInUse(e.type);for(const e of this.storage)this._markStructsInUse(e.type);}getStructInfo(e){for(const t of this.structs)if(t.name==e)return t;return null}getOverrideInfo(e){for(const t of this.overrides)if(t.name==e)return t;return null}_markStructsInUse(e){if(e)if(e.isStruct){if(e.inUse=true,e.members)for(const t of e.members)this._markStructsInUse(t.type);}else if(e.isArray)this._markStructsInUse(e.format);else if(e.isTemplate)e.format&&this._markStructsInUse(e.format);else {const t=this._getAlias(e.name);t&&this._markStructsInUse(t);}}_addCalls(e,t){var n;for(const s of e.calls){const e=null===(n=this._functions.get(s.name))||undefined===n?undefined:n.info;e&&t.add(e);}}findResource(e,t,n){if(n){for(const s of this.entry.compute)if(s.name===n)for(const n of s.resources)if(n.group==e&&n.binding==t)return n;for(const s of this.entry.vertex)if(s.name===n)for(const n of s.resources)if(n.group==e&&n.binding==t)return n;for(const s of this.entry.fragment)if(s.name===n)for(const n of s.resources)if(n.group==e&&n.binding==t)return n}for(const n of this.uniforms)if(n.group==e&&n.binding==t)return n;for(const n of this.storage)if(n.group==e&&n.binding==t)return n;for(const n of this.textures)if(n.group==e&&n.binding==t)return n;for(const n of this.samplers)if(n.group==e&&n.binding==t)return n;return null}_findResource(e){for(const t of this.uniforms)if(t.name==e)return t;for(const t of this.storage)if(t.name==e)return t;for(const t of this.textures)if(t.name==e)return t;for(const t of this.samplers)if(t.name==e)return t;return null}_markStructsFromAST(e){const t=this.getTypeInfo(e,null);this._markStructsInUse(t);}_findResources(e,t){const n=[],s=this,r=[];return e.search((a=>{if(a instanceof A)r.push({});else if(a instanceof E)r.pop();else if(a instanceof B){const e=a;t&&null!==e.type&&this._markStructsFromAST(e.type),r.length>0&&(r[r.length-1][e.name]=e);}else if(a instanceof pe){const e=a;t&&null!==e.type&&this._markStructsFromAST(e.type);}else if(a instanceof M){const e=a;t&&null!==e.type&&this._markStructsFromAST(e.type),r.length>0&&(r[r.length-1][e.name]=e);}else if(a instanceof me){const e=a;if(r.length>0){if(r[r.length-1][e.name])return}const t=s._findResource(e.name);t&&n.push(t);}else if(a instanceof de){const r=a,i=s._functions.get(r.name);i&&(t&&(i.inUse=true),e.calls.add(i.node),null===i.resources&&(i.resources=s._findResources(i.node,t)),n.push(...i.resources));}else if(a instanceof G){const r=a,i=s._functions.get(r.name);i&&(t&&(i.inUse=true),e.calls.add(i.node),null===i.resources&&(i.resources=s._findResources(i.node,t)),n.push(...i.resources));}})),[...new Map(n.map((e=>[e.name,e]))).values()]}getBindGroups(){const e=[];function t(t,n){t>=e.length&&(e.length=t+1),undefined===e[t]&&(e[t]=[]),n>=e[t].length&&(e[t].length=n+1);}for(const n of this.uniforms){t(n.group,n.binding);e[n.group][n.binding]=n;}for(const n of this.storage){t(n.group,n.binding);e[n.group][n.binding]=n;}for(const n of this.textures){t(n.group,n.binding);e[n.group][n.binding]=n;}for(const n of this.samplers){t(n.group,n.binding);e[n.group][n.binding]=n;}return e}_getOutputs(e,t=undefined){if(undefined===t&&(t=[]),e instanceof ie)this._getStructOutputs(e,t);else {const n=this._getOutputInfo(e);null!==n&&t.push(n);}return t}_getStructOutputs(e,t){for(const n of e.members)if(n.type instanceof ie)this._getStructOutputs(n.type,t);else {const e=this._getAttribute(n,'location')||this._getAttribute(n,'builtin');if(null!==e){const s=this.getTypeInfo(n.type,n.type.attributes),r=this._parseInt(e.value),a=new u(n.name,s,e.name,r);t.push(a);}}}_getOutputInfo(e){const t=this._getAttribute(e,'location')||this._getAttribute(e,'builtin');if(null!==t){const n=this.getTypeInfo(e,e.attributes),s=this._parseInt(t.value);return new u('',n,t.name,s)}return null}_getInputs(e,t=undefined){ undefined===t&&(t=[]);for(const n of e)if(n.type instanceof ie)this._getStructInputs(n.type,t);else {const e=this._getInputInfo(n);null!==e&&t.push(e);}return t}_getStructInputs(e,t){for(const n of e.members)if(n.type instanceof ie)this._getStructInputs(n.type,t);else {const e=this._getInputInfo(n);null!==e&&t.push(e);}}_getInputInfo(e){const t=this._getAttribute(e,'location')||this._getAttribute(e,'builtin');if(null!==t){const n=this._getAttribute(e,'interpolation'),s=this.getTypeInfo(e.type,e.attributes),r=this._parseInt(t.value),a=new c(e.name,s,t.name,r);return null!==n&&(a.interpolation=this._parseString(n.value)),a}return null}_parseString(e){return e instanceof Array&&(e=e[0]),e}_parseInt(e){e instanceof Array&&(e=e[0]);const t=parseInt(e);return isNaN(t)?e:t}_getAlias(e){for(const t of this.aliases)if(t.name==e)return t.type;return null}_getAliasInfo(e){return new l(e.name,this.getTypeInfo(e.type,null))}getTypeInfoByName(e){for(const t of this.structs)if(t.name==e)return t;for(const t of this.aliases)if(t.name==e)return t.type;return null}getTypeInfo(i,o=null){if(this._types.has(i))return this._types.get(i);if(i instanceof le){const e=i.type?this.getTypeInfo(i.type,i.attributes):null,t=new r(i.name,e,o);return this._types.set(i,t),this._updateTypeInfo(t),t}if(i instanceof ce){const e=i,t=e.format?this.getTypeInfo(e.format,e.attributes):null,n=new s(e.name,o);return n.format=t,n.count=e.count,this._types.set(i,n),this._updateTypeInfo(n),n}if(i instanceof ie){const e=i,s=new n(e.name,o);s.startLine=e.startLine,s.endLine=e.endLine;for(const n of e.members){const e=this.getTypeInfo(n.type,n.attributes);s.members.push(new t(n.name,e,n.attributes));}return this._types.set(i,s),this._updateTypeInfo(s),s}if(i instanceof ue){const t=i,n=t.format instanceof re,s=t.format?n?this.getTypeInfo(t.format,null):new e(t.format,null):null,r=new a(t.name,s,o,t.access);return this._types.set(i,r),this._updateTypeInfo(r),r}if(i instanceof oe){const e=i,t=e.format?this.getTypeInfo(e.format,null):null,n=new a(e.name,t,o,e.access);return this._types.set(i,n),this._updateTypeInfo(n),n}const l=new e(i.name,o);return this._types.set(i,l),this._updateTypeInfo(l),l}_updateTypeInfo(e){var t,a,i;const o=this._getTypeSize(e);if(e.size=null!==(t=null==o?undefined:o.size)&&undefined!==t?t:0,e instanceof s&&e.format){const t=this._getTypeSize(e.format);e.stride=Math.max(null!==(a=null==t?undefined:t.size)&&undefined!==a?a:0,null!==(i=null==t?undefined:t.align)&&undefined!==i?i:0),this._updateTypeInfo(e.format);}e instanceof r&&this._updateTypeInfo(e.format),e instanceof n&&this._updateStructInfo(e);}_updateStructInfo(e){var t;let n=0,s=0,r=0,a=0;for(let i=0,o=e.members.length;i<o;++i){const o=e.members[i],l=this._getTypeSize(o);if(!l)continue;null!==(t=this._getAlias(o.type.name))&&undefined!==t||o.type;const c=l.align,u=l.size;n=this._roundUp(c,n+s),s=u,r=n,a=Math.max(a,c),o.offset=n,o.size=u,this._updateTypeInfo(o.type);}e.size=this._roundUp(a,r+s),e.align=a;}_getTypeSize(r){var a,i;if(null==r)return null;const o=this._getAttributeNum(r.attributes,'size',0),l=this._getAttributeNum(r.attributes,'align',0);if(r instanceof t&&(r=r.type),r instanceof e){const e=this._getAlias(r.name);null!==e&&(r=e);}{const e=rt._typeInfo[r.name];if(undefined!==e){const t='f16'===(null===(a=r.format)||undefined===a?undefined:a.name)?2:1;return new st(Math.max(l,e.align/t),Math.max(o,e.size/t))}}{const e=rt._typeInfo[r.name.substring(0,r.name.length-1)];if(e){const t='h'===r.name[r.name.length-1]?2:1;return new st(Math.max(l,e.align/t),Math.max(o,e.size/t))}}if(r instanceof s){let e=r,t=8,n=8;const s=this._getTypeSize(e.format);null!==s&&(n=s.size,t=s.align);return n=e.count*this._getAttributeNum(null!==(i=null==r?undefined:r.attributes)&&undefined!==i?i:null,'stride',this._roundUp(t,n)),o&&(n=o),new st(Math.max(l,t),Math.max(o,n))}if(r instanceof n){let e=0,t=0,n=0,s=0,a=0;for(const t of r.members){const r=this._getTypeSize(t.type);null!==r&&(e=Math.max(r.align,e),n=this._roundUp(r.align,n+s),s=r.size,a=n);}return t=this._roundUp(e,a+s),new st(Math.max(l,e),Math.max(o,t))}return null}_isUniformVar(e){return e instanceof B&&'uniform'==e.storage}_isStorageVar(e){return e instanceof B&&'storage'==e.storage}_isTextureVar(e){return e instanceof B&&null!==e.type&&-1!=rt._textureTypes.indexOf(e.type.name)}_isSamplerVar(e){return e instanceof B&&null!==e.type&&-1!=rt._samplerTypes.indexOf(e.type.name)}_getAttribute(e,t){const n=e;if(!n||!n.attributes)return null;const s=n.attributes;for(let e of s)if(e.name==t)return e;return null}_getAttributeNum(e,t,n){if(null===e)return n;for(let s of e)if(s.name==t){let e=null!==s&&null!==s.value?s.value:n;return e instanceof Array&&(e=e[0]),'number'==typeof e?e:'string'==typeof e?parseInt(e):n}return n}_roundUp(e,t){return Math.ceil(t/e)*e}}rt._typeInfo={f16:{align:2,size:2},i32:{align:4,size:4},u32:{align:4,size:4},f32:{align:4,size:4},atomic:{align:4,size:4},vec2:{align:8,size:8},vec3:{align:16,size:12},vec4:{align:16,size:16},mat2x2:{align:8,size:16},mat3x2:{align:8,size:24},mat4x2:{align:8,size:32},mat2x3:{align:16,size:32},mat3x3:{align:16,size:48},mat4x3:{align:16,size:64},mat2x4:{align:16,size:32},mat3x4:{align:16,size:48},mat4x4:{align:16,size:64}},rt._textureTypes=qe.any_texture_type.map((e=>e.name)),rt._samplerTypes=qe.sampler_type.map((e=>e.name));let at=0;class it{constructor(e,t,n){this.id=at++,this.name=e,this.value=t,this.node=n;}clone(){return new it(this.name,this.value,this.node)}}class ot{constructor(e){this.id=at++,this.name=e.name,this.node=e;}clone(){return new ot(this.node)}}class lt{constructor(e){this.parent=null,this.variables=new Map,this.functions=new Map,this.currentFunctionName='',this.id=at++,e&&(this.parent=e,this.currentFunctionName=e.currentFunctionName);}getVariable(e){var t;return this.variables.has(e)?null!==(t=this.variables.get(e))&&undefined!==t?t:null:this.parent?this.parent.getVariable(e):null}getFunction(e){var t;return this.functions.has(e)?null!==(t=this.functions.get(e))&&undefined!==t?t:null:this.parent?this.parent.getFunction(e):null}createVariable(e,t,n){this.variables.set(e,new it(e,t,null!=n?n:null));}setVariable(e,t,n){const s=this.getVariable(e);null!==s?s.value=t:this.createVariable(e,t,n);}getVariableValue(e){var t;const n=this.getVariable(e);return null!==(t=null==n?undefined:n.value)&&undefined!==t?t:null}clone(){return new lt(this)}}class ct{evalExpression(e,t){return null}getTypeInfo(e){return null}getVariableName(e,t){return ''}}class ut{constructor(e){this.exec=e;}getTypeInfo(e){return this.exec.getTypeInfo(e)}All(e,t){const n=this.exec.evalExpression(e.args[0],t);let s=true;if(n instanceof Fe)return n.data.forEach((e=>{e||(s=false);})),new Oe(s?1:0,this.getTypeInfo('bool'));throw new Error(`All() expects a vector argument. Line ${e.line}`)}Any(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe){const e=n.data.some((e=>e));return new Oe(e?1:0,this.getTypeInfo('bool'))}throw new Error(`Any() expects a vector argument. Line ${e.line}`)}Select(e,t){const n=this.exec.evalExpression(e.args[2],t);if(!(n instanceof Oe))throw new Error(`Select() expects a bool condition. Line ${e.line}`);return n.value?this.exec.evalExpression(e.args[1],t):this.exec.evalExpression(e.args[0],t)}ArrayLength(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.evalExpression(n,t);if(s instanceof Ue&&0===s.typeInfo.size){const e=s.typeInfo,t=s.buffer.byteLength/e.stride;return new Oe(t,this.getTypeInfo('u32'))}return new Oe(s.typeInfo.size,this.getTypeInfo('u32'))}Abs(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.abs(e))),n.typeInfo);const s=n;return new Oe(Math.abs(s.value),s.typeInfo)}Acos(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.acos(e))),n.typeInfo);const s=n;return new Oe(Math.acos(s.value),n.typeInfo)}Acosh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.acosh(e))),n.typeInfo);const s=n;return new Oe(Math.acosh(s.value),n.typeInfo)}Asin(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.asin(e))),n.typeInfo);const s=n;return new Oe(Math.asin(s.value),n.typeInfo)}Asinh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.asinh(e))),n.typeInfo);const s=n;return new Oe(Math.asinh(s.value),n.typeInfo)}Atan(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.atan(e))),n.typeInfo);const s=n;return new Oe(Math.atan(s.value),n.typeInfo)}Atanh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.atanh(e))),n.typeInfo);const s=n;return new Oe(Math.atanh(s.value),n.typeInfo)}Atan2(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>Math.atan2(e,s.data[t]))),n.typeInfo);const r=n,a=s;return new Oe(Math.atan2(r.value,a.value),n.typeInfo)}Ceil(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.ceil(e))),n.typeInfo);const s=n;return new Oe(Math.ceil(s.value),n.typeInfo)}_clamp(e,t,n){return Math.min(Math.max(e,t),n)}Clamp(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(n instanceof Fe&&s instanceof Fe&&r instanceof Fe)return new Fe(n.data.map(((e,t)=>this._clamp(e,s.data[t],r.data[t]))),n.typeInfo);const a=n,i=s,o=r;return new Oe(this._clamp(a.value,i.value,o.value),n.typeInfo)}Cos(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.cos(e))),n.typeInfo);const s=n;return new Oe(Math.cos(s.value),n.typeInfo)}Cosh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.cosh(e))),n.typeInfo);const s=n;return new Oe(Math.cos(s.value),n.typeInfo)}CountLeadingZeros(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.clz32(e))),n.typeInfo);const s=n;return new Oe(Math.clz32(s.value),n.typeInfo)}_countOneBits(e){let t=0;for(;0!==e;)1&e&&t++,e>>=1;return t}CountOneBits(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>this._countOneBits(e))),n.typeInfo);const s=n;return new Oe(this._countOneBits(s.value),n.typeInfo)}_countTrailingZeros(e){if(0===e)return 32;let t=0;for(;!(1&e);)e>>=1,t++;return t}CountTrailingZeros(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>this._countTrailingZeros(e))),n.typeInfo);const s=n;return new Oe(this._countTrailingZeros(s.value),n.typeInfo)}Cross(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe){if(3!==n.data.length||3!==s.data.length)return console.error(`Cross() expects 3D vectors. Line ${e.line}`),null;const t=n.data,r=s.data;return new Fe([t[1]*r[2]-r[1]*t[2],t[2]*r[0]-r[2]*t[0],t[0]*r[1]-r[0]*t[1]],n.typeInfo)}return console.error(`Cross() expects vector arguments. Line ${e.line}`),null}Degrees(e,t){const n=this.exec.evalExpression(e.args[0],t),s=180/Math.PI;if(n instanceof Fe)return new Fe(n.data.map((e=>e*s)),n.typeInfo);return new Oe(n.value*s,this.getTypeInfo('f32'))}Determinant(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Me){const e=n.data,t=n.typeInfo.getTypeName(),s=t.endsWith('h')?this.getTypeInfo('f16'):this.getTypeInfo('f32');if('mat2x2'===t||'mat2x2f'===t||'mat2x2h'===t)return new Oe(e[0]*e[3]-e[1]*e[2],s);if('mat2x3'===t||'mat2x3f'===t||'mat2x3h'===t)return new Oe(e[0]*(e[4]*e[8]-e[5]*e[7])-e[1]*(e[3]*e[8]-e[5]*e[6])+e[2]*(e[3]*e[7]-e[4]*e[6]),s);if('mat2x4'===t||'mat2x4f'===t||'mat2x4h'===t)console.error(`TODO: Determinant for ${t}`);else if('mat3x2'===t||'mat3x2f'===t||'mat3x2h'===t)console.error(`TODO: Determinant for ${t}`);else {if('mat3x3'===t||'mat3x3f'===t||'mat3x3h'===t)return new Oe(e[0]*(e[4]*e[8]-e[5]*e[7])-e[1]*(e[3]*e[8]-e[5]*e[6])+e[2]*(e[3]*e[7]-e[4]*e[6]),s);'mat3x4'===t||'mat3x4f'===t||'mat3x4h'===t||'mat4x2'===t||'mat4x2f'===t||'mat4x2h'===t||'mat4x3'===t||'mat4x3f'===t||'mat4x3h'===t?console.error(`TODO: Determinant for ${t}`):'mat4x4'!==t&&'mat4x4f'!==t&&'mat4x4h'!==t||console.error(`TODO: Determinant for ${t}`);}}return console.error(`Determinant expects a matrix argument. Line ${e.line}`),null}Distance(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe){let e=0;for(let t=0;t<n.data.length;++t)e+=(n.data[t]-s.data[t])*(n.data[t]-s.data[t]);return new Oe(Math.sqrt(e),this.getTypeInfo('f32'))}const r=n,a=s;return new Oe(Math.abs(r.value-a.value),n.typeInfo)}_dot(e,t){let n=0;for(let s=0;s<e.length;++s)n+=t[s]*e[s];return n}Dot(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);return n instanceof Fe&&s instanceof Fe?new Oe(this._dot(n.data,s.data),this.getTypeInfo('f32')):(console.error(`Dot() expects vector arguments. Line ${e.line}`),null)}Dot4U8Packed(e,t){return console.error(`TODO: dot4U8Packed. Line ${e.line}`),null}Dot4I8Packed(e,t){return console.error(`TODO: dot4I8Packed. Line ${e.line}`),null}Exp(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.exp(e))),n.typeInfo);const s=n;return new Oe(Math.exp(s.value),n.typeInfo)}Exp2(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.pow(2,e))),n.typeInfo);const s=n;return new Oe(Math.pow(2,s.value),n.typeInfo)}ExtractBits(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if('u32'!==s.typeInfo.name&&'x32'!==s.typeInfo.name)return console.error(`ExtractBits() expects an i32 offset argument. Line ${e.line}`),null;if('u32'!==r.typeInfo.name&&'x32'!==r.typeInfo.name)return console.error(`ExtractBits() expects an i32 count argument. Line ${e.line}`),null;const a=s.value,i=r.value;if(n instanceof Fe)return new Fe(n.data.map((e=>e>>a&(1<<i)-1)),n.typeInfo);if('i32'!==n.typeInfo.name&&'x32'!==n.typeInfo.name)return console.error(`ExtractBits() expects an i32 argument. Line ${e.line}`),null;const o=n.value;return new Oe(o>>a&(1<<i)-1,this.getTypeInfo('i32'))}FaceForward(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(n instanceof Fe&&s instanceof Fe&&r instanceof Fe){const e=this._dot(s.data,r.data);return new Fe(e<0?Array.from(n.data):n.data.map((e=>-e)),n.typeInfo)}return console.error(`FaceForward() expects vector arguments. Line ${e.line}`),null}_firstLeadingBit(e){return 0===e?-1:31-Math.clz32(e)}FirstLeadingBit(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>this._firstLeadingBit(e))),n.typeInfo);const s=n;return new Oe(this._firstLeadingBit(s.value),n.typeInfo)}_firstTrailingBit(e){return 0===e?-1:Math.log2(e&-e)}FirstTrailingBit(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>this._firstTrailingBit(e))),n.typeInfo);const s=n;return new Oe(this._firstTrailingBit(s.value),n.typeInfo)}Floor(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.floor(e))),n.typeInfo);const s=n;return new Oe(Math.floor(s.value),n.typeInfo)}Fma(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(n instanceof Fe&&s instanceof Fe&&r instanceof Fe)return n.data.length!==s.data.length||n.data.length!==r.data.length?(console.error(`Fma() expects vectors of the same length. Line ${e.line}`),null):new Fe(n.data.map(((e,t)=>e*s.data[t]+r.data[t])),n.typeInfo);const a=n,i=s,o=r;return new Oe(a.value*i.value+o.value,a.typeInfo)}Fract(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>e-Math.floor(e))),n.typeInfo);const s=n;return new Oe(s.value-Math.floor(s.value),n.typeInfo)}Frexp(e,t){return console.error(`TODO: frexp. Line ${e.line}`),null}InsertBits(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t),a=this.exec.evalExpression(e.args[3],t);if('u32'!==r.typeInfo.name&&'x32'!==r.typeInfo.name)return console.error(`InsertBits() expects an i32 offset argument. Line ${e.line}`),null;const i=r.value,o=(1<<a.value)-1<<i,l=~o;if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>e&l|s.data[t]<<i&o)),n.typeInfo);const c=n.value,u=s.value;return new Oe(c&l|u<<i&o,n.typeInfo)}InverseSqrt(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>1/Math.sqrt(e))),n.typeInfo);const s=n;return new Oe(1/Math.sqrt(s.value),n.typeInfo)}Ldexp(e,t){return console.error(`TODO: ldexp. Line ${e.line}`),null}Length(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe){let e=0;return n.data.forEach((t=>{e+=t*t;})),new Oe(Math.sqrt(e),this.getTypeInfo('f32'))}const s=n;return new Oe(Math.abs(s.value),n.typeInfo)}Log(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.log(e))),n.typeInfo);const s=n;return new Oe(Math.log(s.value),n.typeInfo)}Log2(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.log2(e))),n.typeInfo);const s=n;return new Oe(Math.log2(s.value),n.typeInfo)}Max(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>Math.max(e,s.data[t]))),n.typeInfo);const r=n,a=s;return new Oe(Math.max(r.value,a.value),n.typeInfo)}Min(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>Math.min(e,s.data[t]))),n.typeInfo);const r=n,a=s;return new Oe(Math.min(r.value,a.value),n.typeInfo)}Mix(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(n instanceof Fe&&s instanceof Fe&&r instanceof Fe)return new Fe(n.data.map(((e,t)=>n.data[t]*(1-r.data[t])+s.data[t]*r.data[t])),n.typeInfo);const a=s,i=r;return new Oe(n.value*(1-i.value)+a.value*i.value,n.typeInfo)}Modf(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>e%s.data[t])),n.typeInfo);const r=s;return new Oe(n.value%r.value,n.typeInfo)}Normalize(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe){const s=this.Length(e,t).value;return new Fe(n.data.map((e=>e/s)),n.typeInfo)}return console.error(`Normalize() expects a vector argument. Line ${e.line}`),null}Pow(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe)return new Fe(n.data.map(((e,t)=>Math.pow(e,s.data[t]))),n.typeInfo);const r=n,a=s;return new Oe(Math.pow(r.value,a.value),n.typeInfo)}QuantizeToF16(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>e)),n.typeInfo);return new Oe(n.value,n.typeInfo)}Radians(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>e*Math.PI/180)),n.typeInfo);return new Oe(n.value*Math.PI/180,this.getTypeInfo('f32'))}Reflect(e,t){let n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(n instanceof Fe&&s instanceof Fe){const e=this._dot(n.data,s.data);return new Fe(n.data.map(((t,n)=>t-2*e*s.data[n])),n.typeInfo)}return console.error(`Reflect() expects vector arguments. Line ${e.line}`),null}Refract(e,t){let n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(n instanceof Fe&&s instanceof Fe&&r instanceof Oe){const e=this._dot(s.data,n.data);return new Fe(n.data.map(((t,n)=>{const a=1-r.value*r.value*(1-e*e);if(a<0)return 0;const i=Math.sqrt(a);return r.value*t-(r.value*e+i)*s.data[n]})),n.typeInfo)}return console.error(`Refract() expects vector arguments and a scalar argument. Line ${e.line}`),null}ReverseBits(e,t){return console.error(`TODO: reverseBits. Line ${e.line}`),null}Round(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.round(e))),n.typeInfo);const s=n;return new Oe(Math.round(s.value),n.typeInfo)}Saturate(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.min(Math.max(e,0),1))),n.typeInfo);const s=n;return new Oe(Math.min(Math.max(s.value,0),1),n.typeInfo)}Sign(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.sign(e))),n.typeInfo);const s=n;return new Oe(Math.sign(s.value),n.typeInfo)}Sin(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.sin(e))),n.typeInfo);const s=n;return new Oe(Math.sin(s.value),n.typeInfo)}Sinh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.sinh(e))),n.typeInfo);const s=n;return new Oe(Math.sinh(s.value),n.typeInfo)}_smoothstep(e,t,n){const s=Math.min(Math.max((n-e)/(t-e),0),1);return s*s*(3-2*s)}SmoothStep(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t),r=this.exec.evalExpression(e.args[2],t);if(r instanceof Fe&&n instanceof Fe&&s instanceof Fe)return new Fe(r.data.map(((e,t)=>this._smoothstep(n.data[t],s.data[t],e))),r.typeInfo);const a=n,i=s,o=r;return new Oe(this._smoothstep(a.value,i.value,o.value),r.typeInfo)}Sqrt(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.sqrt(e))),n.typeInfo);const s=n;return new Oe(Math.sqrt(s.value),n.typeInfo)}Step(e,t){const n=this.exec.evalExpression(e.args[0],t),s=this.exec.evalExpression(e.args[1],t);if(s instanceof Fe&&n instanceof Fe)return new Fe(s.data.map(((e,t)=>e<n.data[t]?0:1)),s.typeInfo);const r=n;return new Oe(s.value<r.value?0:1,r.typeInfo)}Tan(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.tan(e))),n.typeInfo);const s=n;return new Oe(Math.tan(s.value),n.typeInfo)}Tanh(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.tanh(e))),n.typeInfo);const s=n;return new Oe(Math.tanh(s.value),n.typeInfo)}_getTransposeType(e){const t=e.getTypeName();return 'mat2x2f'===t||'mat2x2h'===t?e:'mat2x3f'===t?this.getTypeInfo('mat3x2f'):'mat2x3h'===t?this.getTypeInfo('mat3x2h'):'mat2x4f'===t?this.getTypeInfo('mat4x2f'):'mat2x4h'===t?this.getTypeInfo('mat4x2h'):'mat3x2f'===t?this.getTypeInfo('mat2x3f'):'mat3x2h'===t?this.getTypeInfo('mat2x3h'):'mat3x3f'===t||'mat3x3h'===t?e:'mat3x4f'===t?this.getTypeInfo('mat4x3f'):'mat3x4h'===t?this.getTypeInfo('mat4x3h'):'mat4x2f'===t?this.getTypeInfo('mat2x4f'):'mat4x2h'===t?this.getTypeInfo('mat2x4h'):'mat4x3f'===t?this.getTypeInfo('mat3x4f'):'mat4x3h'===t?this.getTypeInfo('mat3x4h'):('mat4x4f'===t||'mat4x4h'===t||console.error(`Invalid matrix type ${t}`),e)}Transpose(e,t){const n=this.exec.evalExpression(e.args[0],t);if(!(n instanceof Me))return console.error(`Transpose() expects a matrix argument. Line ${e.line}`),null;const s=this._getTransposeType(n.typeInfo);if('mat2x2'===n.typeInfo.name||'mat2x2f'===n.typeInfo.name||'mat2x2h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[2],e[1],e[3]],s)}if('mat2x3'===n.typeInfo.name||'mat2x3f'===n.typeInfo.name||'mat2x3h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[3],e[6],e[1],e[4],e[7]],s)}if('mat2x4'===n.typeInfo.name||'mat2x4f'===n.typeInfo.name||'mat2x4h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13]],s)}if('mat3x2'===n.typeInfo.name||'mat3x2f'===n.typeInfo.name||'mat3x2h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[3],e[1],e[4],e[2],e[5]],s)}if('mat3x3'===n.typeInfo.name||'mat3x3f'===n.typeInfo.name||'mat3x3h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[3],e[6],e[1],e[4],e[7],e[2],e[5],e[8]],s)}if('mat3x4'===n.typeInfo.name||'mat3x4f'===n.typeInfo.name||'mat3x4h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13],e[2],e[6],e[10],e[14]],s)}if('mat4x2'===n.typeInfo.name||'mat4x2f'===n.typeInfo.name||'mat4x2h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[4],e[1],e[5],e[2],e[6]],s)}if('mat4x3'===n.typeInfo.name||'mat4x3f'===n.typeInfo.name||'mat4x3h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[4],e[8],e[1],e[5],e[9],e[2],e[6],e[10]],s)}if('mat4x4'===n.typeInfo.name||'mat4x4f'===n.typeInfo.name||'mat4x4h'===n.typeInfo.name){const e=n.data;return new Me([e[0],e[4],e[8],e[12],e[1],e[5],e[9],e[13],e[2],e[6],e[10],e[14],e[3],e[7],e[11],e[15]],s)}return console.error(`Invalid matrix type ${n.typeInfo.name}`),null}Trunc(e,t){const n=this.exec.evalExpression(e.args[0],t);if(n instanceof Fe)return new Fe(n.data.map((e=>Math.trunc(e))),n.typeInfo);const s=n;return new Oe(Math.trunc(s.value),n.typeInfo)}Dpdx(e,t){return console.error(`TODO: dpdx. Line ${e.line}`),null}DpdxCoarse(e,t){return console.error(`TODO: dpdxCoarse. Line ${e.line}`),null}DpdxFine(e,t){return console.error('TODO: dpdxFine'),null}Dpdy(e,t){return console.error('TODO: dpdy'),null}DpdyCoarse(e,t){return console.error('TODO: dpdyCoarse'),null}DpdyFine(e,t){return console.error('TODO: dpdyFine'),null}Fwidth(e,t){return console.error('TODO: fwidth'),null}FwidthCoarse(e,t){return console.error('TODO: fwidthCoarse'),null}FwidthFine(e,t){return console.error('TODO: fwidthFine'),null}TextureDimensions(e,t){const n=e.args[0],s=e.args.length>1?this.exec.evalExpression(e.args[1],t).value:0;if(n instanceof me){const r=n.name,a=t.getVariableValue(r);if(a instanceof Pe){if(s<0||s>=a.mipLevelCount)return console.error(`Invalid mip level for textureDimensions. Line ${e.line}`),null;const t=a.getMipLevelSize(s),n=a.dimension;return '1d'===n?new Oe(t[0],this.getTypeInfo('u32')):'3d'===n?new Fe(t,this.getTypeInfo('vec3u')):'2d'===n?new Fe(t.slice(0,2),this.getTypeInfo('vec2u')):(console.error(`Invalid texture dimension ${n} not found. Line ${e.line}`),null)}return console.error(`Texture ${r} not found. Line ${e.line}`),null}return console.error(`Invalid texture argument for textureDimensions. Line ${e.line}`),null}TextureGather(e,t){return console.error('TODO: textureGather'),null}TextureGatherCompare(e,t){return console.error('TODO: textureGatherCompare'),null}TextureLoad(e,t){const n=e.args[0],s=this.exec.evalExpression(e.args[1],t),r=e.args.length>2?this.exec.evalExpression(e.args[2],t).value:0;if(!(s instanceof Fe)||2!==s.data.length)return console.error(`Invalid UV argument for textureLoad. Line ${e.line}`),null;if(n instanceof me){const a=n.name,i=t.getVariableValue(a);if(i instanceof Pe){const t=Math.floor(s.data[0]),n=Math.floor(s.data[1]);if(t<0||t>=i.width||n<0||n>=i.height)return console.error(`Texture ${a} out of bounds. Line ${e.line}`),null;const o=i.getPixel(t,n,0,r);return null===o?(console.error(`Invalid texture format for textureLoad. Line ${e.line}`),null):new Fe(o,this.getTypeInfo('vec4f'))}return console.error(`Texture ${a} not found. Line ${e.line}`),null}return console.error(`Invalid texture argument for textureLoad. Line ${e.line}`),null}TextureNumLayers(e,t){const n=e.args[0];if(n instanceof me){const s=n.name,r=t.getVariableValue(s);return r instanceof Pe?new Oe(r.depthOrArrayLayers,this.getTypeInfo('u32')):(console.error(`Texture ${s} not found. Line ${e.line}`),null)}return console.error(`Invalid texture argument for textureNumLayers. Line ${e.line}`),null}TextureNumLevels(e,t){const n=e.args[0];if(n instanceof me){const s=n.name,r=t.getVariableValue(s);return r instanceof Pe?new Oe(r.mipLevelCount,this.getTypeInfo('u32')):(console.error(`Texture ${s} not found. Line ${e.line}`),null)}return console.error(`Invalid texture argument for textureNumLevels. Line ${e.line}`),null}TextureNumSamples(e,t){const n=e.args[0];if(n instanceof me){const s=n.name,r=t.getVariableValue(s);return r instanceof Pe?new Oe(r.sampleCount,this.getTypeInfo('u32')):(console.error(`Texture ${s} not found. Line ${e.line}`),null)}return console.error(`Invalid texture argument for textureNumSamples. Line ${e.line}`),null}TextureSample(e,t){return console.error('TODO: textureSample'),null}TextureSampleBias(e,t){return console.error('TODO: textureSampleBias'),null}TextureSampleCompare(e,t){return console.error('TODO: textureSampleCompare'),null}TextureSampleCompareLevel(e,t){return console.error('TODO: textureSampleCompareLevel'),null}TextureSampleGrad(e,t){return console.error('TODO: textureSampleGrad'),null}TextureSampleLevel(e,t){return console.error('TODO: textureSampleLevel'),null}TextureSampleBaseClampToEdge(e,t){return console.error('TODO: textureSampleBaseClampToEdge'),null}TextureStore(e,t){const n=e.args[0],s=this.exec.evalExpression(e.args[1],t),r=4===e.args.length?this.exec.evalExpression(e.args[2],t).value:0,a=4===e.args.length?this.exec.evalExpression(e.args[3],t).data:this.exec.evalExpression(e.args[2],t).data;if(4!==a.length)return console.error(`Invalid value argument for textureStore. Line ${e.line}`),null;if(!(s instanceof Fe)||2!==s.data.length)return console.error(`Invalid UV argument for textureStore. Line ${e.line}`),null;if(n instanceof me){const i=n.name,o=t.getVariableValue(i);if(o instanceof Pe){const t=o.getMipLevelSize(0),n=Math.floor(s.data[0]),l=Math.floor(s.data[1]);return n<0||n>=t[0]||l<0||l>=t[1]?(console.error(`Texture ${i} out of bounds. Line ${e.line}`),null):(o.setPixel(n,l,0,r,Array.from(a)),null)}return console.error(`Texture ${i} not found. Line ${e.line}`),null}return console.error(`Invalid texture argument for textureStore. Line ${e.line}`),null}AtomicLoad(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t);return t.getVariable(s).value.getSubData(this.exec,n.postfix,t)}AtomicStore(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t);return o instanceof Oe&&i instanceof Oe&&(o.value=i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),null}AtomicAdd(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value+=i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicSub(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value-=i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicMax(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=Math.max(o.value,i.value)),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicMin(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=Math.min(o.value,i.value)),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicAnd(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=o.value&i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicOr(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=o.value|i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicXor(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=o.value^i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicExchange(e,t){let n=e.args[0];n instanceof we&&(n=n.right);const s=this.exec.getVariableName(n,t),r=t.getVariable(s);let a=e.args[1];const i=this.exec.evalExpression(a,t),o=r.value.getSubData(this.exec,n.postfix,t),l=new Oe(o.value,o.typeInfo);return o instanceof Oe&&i instanceof Oe&&(o.value=i.value),r.value instanceof Ue&&r.value.setDataValue(this.exec,o,n.postfix,t),l}AtomicCompareExchangeWeak(e,t){return console.error('TODO: atomicCompareExchangeWeak'),null}Pack4x8snorm(e,t){return console.error('TODO: pack4x8snorm'),null}Pack4x8unorm(e,t){return console.error('TODO: pack4x8unorm'),null}Pack4xI8(e,t){return console.error('TODO: pack4xI8'),null}Pack4xU8(e,t){return console.error('TODO: pack4xU8'),null}Pack4x8Clamp(e,t){return console.error('TODO: pack4x8Clamp'),null}Pack4xU8Clamp(e,t){return console.error('TODO: pack4xU8Clamp'),null}Pack2x16snorm(e,t){return console.error('TODO: pack2x16snorm'),null}Pack2x16unorm(e,t){return console.error('TODO: pack2x16unorm'),null}Pack2x16float(e,t){return console.error('TODO: pack2x16float'),null}Unpack4x8snorm(e,t){return console.error('TODO: unpack4x8snorm'),null}Unpack4x8unorm(e,t){return console.error('TODO: unpack4x8unorm'),null}Unpack4xI8(e,t){return console.error('TODO: unpack4xI8'),null}Unpack4xU8(e,t){return console.error('TODO: unpack4xU8'),null}Unpack2x16snorm(e,t){return console.error('TODO: unpack2x16snorm'),null}Unpack2x16unorm(e,t){return console.error('TODO: unpack2x16unorm'),null}Unpack2x16float(e,t){return console.error('TODO: unpack2x16float'),null}StorageBarrier(e,t){return null}TextureBarrier(e,t){return null}WorkgroupBarrier(e,t){return null}WorkgroupUniformLoad(e,t){return null}SubgroupAdd(e,t){return console.error('TODO: subgroupAdd'),null}SubgroupExclusiveAdd(e,t){return console.error('TODO: subgroupExclusiveAdd'),null}SubgroupInclusiveAdd(e,t){return console.error('TODO: subgroupInclusiveAdd'),null}SubgroupAll(e,t){return console.error('TODO: subgroupAll'),null}SubgroupAnd(e,t){return console.error('TODO: subgroupAnd'),null}SubgroupAny(e,t){return console.error('TODO: subgroupAny'),null}SubgroupBallot(e,t){return console.error('TODO: subgroupBallot'),null}SubgroupBroadcast(e,t){return console.error('TODO: subgroupBroadcast'),null}SubgroupBroadcastFirst(e,t){return console.error('TODO: subgroupBroadcastFirst'),null}SubgroupElect(e,t){return console.error('TODO: subgroupElect'),null}SubgroupMax(e,t){return console.error('TODO: subgroupMax'),null}SubgroupMin(e,t){return console.error('TODO: subgroupMin'),null}SubgroupMul(e,t){return console.error('TODO: subgroupMul'),null}SubgroupExclusiveMul(e,t){return console.error('TODO: subgroupExclusiveMul'),null}SubgroupInclusiveMul(e,t){return console.error('TODO: subgroupInclusiveMul'),null}SubgroupOr(e,t){return console.error('TODO: subgroupOr'),null}SubgroupShuffle(e,t){return console.error('TODO: subgroupShuffle'),null}SubgroupShuffleDown(e,t){return console.error('TODO: subgroupShuffleDown'),null}SubgroupShuffleUp(e,t){return console.error('TODO: subgroupShuffleUp'),null}SubgroupShuffleXor(e,t){return console.error('TODO: subgroupShuffleXor'),null}SubgroupXor(e,t){return console.error('TODO: subgroupXor'),null}QuadBroadcast(e,t){return console.error('TODO: quadBroadcast'),null}QuadSwapDiagonal(e,t){return console.error('TODO: quadSwapDiagonal'),null}QuadSwapX(e,t){return console.error('TODO: quadSwapX'),null}QuadSwapY(e,t){return console.error('TODO: quadSwapY'),null}}const ht={vec2:2,vec2f:2,vec2i:2,vec2u:2,vec2b:2,vec2h:2,vec3:3,vec3f:3,vec3i:3,vec3u:3,vec3b:3,vec3h:3,vec4:4,vec4f:4,vec4i:4,vec4u:4,vec4b:4,vec4h:4},ft={mat2x2:[2,2,4],mat2x2f:[2,2,4],mat2x2h:[2,2,4],mat2x3:[2,3,6],mat2x3f:[2,3,6],mat2x3h:[2,3,6],mat2x4:[2,4,8],mat2x4f:[2,4,8],mat2x4h:[2,4,8],mat3x2:[3,2,6],mat3x2f:[3,2,6],mat3x2h:[3,2,6],mat3x3:[3,3,9],mat3x3f:[3,3,9],mat3x3h:[3,3,9],mat3x4:[3,4,12],mat3x4f:[3,4,12],mat3x4h:[3,4,12],mat4x2:[4,2,8],mat4x2f:[4,2,8],mat4x2h:[4,2,8],mat4x3:[4,3,12],mat4x3f:[4,3,12],mat4x3h:[4,3,12],mat4x4:[4,4,16],mat4x4f:[4,4,16],mat4x4h:[4,4,16]};class pt extends ct{constructor(e,t){var n;super(),this.ast=null!=e?e:[],this.reflection=new rt,this.reflection.updateAST(this.ast),this.context=null!==(n=null==t?undefined:t.clone())&&undefined!==n?n:new lt,this.builtins=new ut(this),this.typeInfo={bool:this.getTypeInfo(re.bool),i32:this.getTypeInfo(re.i32),u32:this.getTypeInfo(re.u32),f32:this.getTypeInfo(re.f32),f16:this.getTypeInfo(re.f16),vec2f:this.getTypeInfo(oe.vec2f),vec2u:this.getTypeInfo(oe.vec2u),vec2i:this.getTypeInfo(oe.vec2i),vec2h:this.getTypeInfo(oe.vec2h),vec3f:this.getTypeInfo(oe.vec3f),vec3u:this.getTypeInfo(oe.vec3u),vec3i:this.getTypeInfo(oe.vec3i),vec3h:this.getTypeInfo(oe.vec3h),vec4f:this.getTypeInfo(oe.vec4f),vec4u:this.getTypeInfo(oe.vec4u),vec4i:this.getTypeInfo(oe.vec4i),vec4h:this.getTypeInfo(oe.vec4h),mat2x2f:this.getTypeInfo(oe.mat2x2f),mat2x3f:this.getTypeInfo(oe.mat2x3f),mat2x4f:this.getTypeInfo(oe.mat2x4f),mat3x2f:this.getTypeInfo(oe.mat3x2f),mat3x3f:this.getTypeInfo(oe.mat3x3f),mat3x4f:this.getTypeInfo(oe.mat3x4f),mat4x2f:this.getTypeInfo(oe.mat4x2f),mat4x3f:this.getTypeInfo(oe.mat4x3f),mat4x4f:this.getTypeInfo(oe.mat4x4f)};}getVariableValue(e){var t,n;const r=null!==(n=null===(t=this.context.getVariable(e))||undefined===t?undefined:t.value)&&undefined!==n?n:null;if(null===r)return null;if(r instanceof Oe)return r.value;if(r instanceof Fe)return Array.from(r.data);if(r instanceof Me)return Array.from(r.data);if(r instanceof Ue&&r.typeInfo instanceof s){if('u32'===r.typeInfo.format.name)return Array.from(new Uint32Array(r.buffer,r.offset,r.typeInfo.count));if('i32'===r.typeInfo.format.name)return Array.from(new Int32Array(r.buffer,r.offset,r.typeInfo.count));if('f32'===r.typeInfo.format.name)return Array.from(new Float32Array(r.buffer,r.offset,r.typeInfo.count))}return console.error(`Unsupported return variable type ${r.typeInfo.name}`),null}execute(e){(e=null!=e?e:{}).constants&&this._setOverrides(e.constants,this.context),this._execStatements(this.ast,this.context);}dispatchWorkgroups(e,t,n,s){const r=this.context.clone();(s=null!=s?s:{}).constants&&this._setOverrides(s.constants,r),this._execStatements(this.ast,r);const a=r.getFunction(e);if(!a)return void console.error(`Function ${e} not found`);if('number'==typeof t)t=[t,1,1];else {if(0===t.length)return void console.error('Invalid dispatch count');1===t.length?t=[t[0],1,1]:2===t.length?t=[t[0],t[1],1]:t.length>3&&(t=[t[0],t[1],t[2]]);}const i=t[0],o=t[1],l=t[2],c=this.getTypeInfo('vec3u');r.setVariable('@num_workgroups',new Fe(t,c));for(const e in n)for(const t in n[e]){const s=n[e][t];r.variables.forEach((n=>{var r;const a=n.node;if(null==a?undefined:a.attributes){let i=null,o=null;for(const e of a.attributes)'binding'===e.name?i=e.value:'group'===e.name&&(o=e.value);if(t==i&&e==o)if(undefined!==s.texture&&undefined!==s.descriptor){const e=new Pe(s.texture,this.getTypeInfo(a.type),s.descriptor,null!==(r=s.texture.view)&&undefined!==r?r:null);n.value=e;}else undefined!==s.uniform?n.value=new Ue(s.uniform,this.getTypeInfo(a.type)):n.value=new Ue(s,this.getTypeInfo(a.type));}}));}for(let e=0;e<l;++e)for(let t=0;t<o;++t)for(let n=0;n<i;++n)r.setVariable('@workgroup_id',new Fe([n,t,e],this.getTypeInfo('vec3u'))),this._dispatchWorkgroup(a,[n,t,e],r);}execStatement(e,t){if(e instanceof Q)return this.evalExpression(e.value,t);if(e instanceof ne){if(e.condition){const n=this.evalExpression(e.condition,t);if(!(n instanceof Oe))throw new Error('Invalid break-if condition');if(!n.value)return null}return pt._breakObj}if(e instanceof se)return pt._continueObj;if(e instanceof M)this._let(e,t);else if(e instanceof B)this._var(e,t);else if(e instanceof U)this._const(e,t);else if(e instanceof C)this._function(e,t);else {if(e instanceof Z)return this._if(e,t);if(e instanceof j)return this._switch(e,t);if(e instanceof O)return this._for(e,t);if(e instanceof N)return this._while(e,t);if(e instanceof X)return this._loop(e,t);if(e instanceof V){const n=t.clone();return n.currentFunctionName=t.currentFunctionName,this._execStatements(e.body,n)}if(e instanceof R)this._assign(e,t);else if(e instanceof z)this._increment(e,t);else {if(e instanceof ie)return null;if(e instanceof F){const n=e.name;null===t.getVariable(n)&&t.setVariable(n,new Oe(0,this.getTypeInfo('u32')));}else if(e instanceof G)this._call(e,t);else {if(e instanceof J)return null;if(e instanceof ee)return null;console.error('Invalid statement type.',e,`Line ${e.line}`);}}}return null}evalExpression(e,t){return e instanceof ke?this._evalBinaryOp(e,t):e instanceof ge?this._evalLiteral(e,t):e instanceof me?this._evalVariable(e,t):e instanceof de?this._evalCall(e,t):e instanceof pe?this._evalCreate(e,t):e instanceof _e?this._evalConst(e,t):e instanceof xe?this._evalBitcast(e,t):e instanceof we?this._evalUnaryOp(e,t):(console.error('Invalid expression type',e,`Line ${e.line}`),null)}getTypeInfo(e){var t;if(e instanceof re){const t=this.reflection.getTypeInfo(e);if(null!==t)return t}let n=null!==(t=this.typeInfo[e])&&undefined!==t?t:null;return null!==n||(n=this.reflection.getTypeInfoByName(e)),n}_setOverrides(e,t){for(const n in e){const s=e[n],r=this.reflection.getOverrideInfo(n);null!==r?(null===r.type&&(r.type=this.getTypeInfo('u32')),'u32'===r.type.name||'i32'===r.type.name||'f32'===r.type.name||'f16'===r.type.name?t.setVariable(n,new Oe(s,r.type)):'bool'===r.type.name?t.setVariable(n,new Oe(s?1:0,r.type)):'vec2'===r.type.name||'vec3'===r.type.name||'vec4'===r.type.name||'vec2f'===r.type.name||'vec3f'===r.type.name||'vec4f'===r.type.name||'vec2i'===r.type.name||'vec3i'===r.type.name||'vec4i'===r.type.name||'vec2u'===r.type.name||'vec3u'===r.type.name||'vec4u'===r.type.name||'vec2h'===r.type.name||'vec3h'===r.type.name||'vec4h'===r.type.name?t.setVariable(n,new Fe(s,r.type)):console.error(`Invalid constant type for ${n}`)):console.error(`Override ${n} does not exist in the shader.`);}}_dispatchWorkgroup(e,t,n){const s=[1,1,1];for(const t of e.node.attributes)if('workgroup_size'===t.name){if(t.value.length>0){const e=n.getVariableValue(t.value[0]);s[0]=e instanceof Oe?e.value:parseInt(t.value[0]);}if(t.value.length>1){const e=n.getVariableValue(t.value[1]);s[1]=e instanceof Oe?e.value:parseInt(t.value[1]);}if(t.value.length>2){const e=n.getVariableValue(t.value[2]);s[2]=e instanceof Oe?e.value:parseInt(t.value[2]);}}const r=this.getTypeInfo('vec3u'),a=this.getTypeInfo('u32');n.setVariable('@workgroup_size',new Fe(s,r));const i=s[0],o=s[1],l=s[2];for(let c=0,u=0;c<l;++c)for(let l=0;l<o;++l)for(let o=0;o<i;++o,++u){const i=[o,l,c],h=[o+t[0]*s[0],l+t[1]*s[1],c+t[2]*s[2]];n.setVariable('@local_invocation_id',new Fe(i,r)),n.setVariable('@global_invocation_id',new Fe(h,r)),n.setVariable('@local_invocation_index',new Oe(u,a)),this._dispatchExec(e,n);}}_dispatchExec(e,t){for(const n of e.node.args)for(const e of n.attributes)if('builtin'===e.name){const s=`@${e.value}`,r=t.getVariable(s);undefined!==r&&t.variables.set(n.name,r);}this._execStatements(e.node.body,t);}getVariableName(e,t){for(;e instanceof we;)e=e.right;return e instanceof me?e.name:(console.error('Unknown variable type',e,'Line',e.line),null)}_execStatements(e,t){for(const n of e){if(n instanceof Array){const e=t.clone(),s=this._execStatements(n,e);if(s)return s;continue}const e=this.execStatement(n,t);if(e)return e}return null}_call(e,t){const n=t.clone();n.currentFunctionName=e.name;const s=t.getFunction(e.name);if(s){for(let t=0;t<s.node.args.length;++t){const r=s.node.args[t],a=this.evalExpression(e.args[t],n);n.setVariable(r.name,a,r);}this._execStatements(s.node.body,n);}else if(e.isBuiltin)this._callBuiltinFunction(e,n);else {this.getTypeInfo(e.name)&&this._evalCreate(e,t);}}_increment(e,t){const n=this.getVariableName(e.variable,t),s=t.getVariable(n);s?'++'===e.operator?s.value instanceof Oe?s.value.value++:console.error(`Variable ${n} is not a scalar. Line ${e.line}`):'--'===e.operator?s.value instanceof Oe?s.value.value--:console.error(`Variable ${n} is not a scalar. Line ${e.line}`):console.error(`Unknown increment operator ${e.operator}. Line ${e.line}`):console.error(`Variable ${n} not found. Line ${e.line}`);}_getVariableData(e,t){if(e instanceof me){const n=this.getVariableName(e,t),s=t.getVariable(n);return null===s?(console.error(`Variable ${n} not found. Line ${e.line}`),null):s.value.getSubData(this,e.postfix,t)}if(e instanceof we){if('*'===e.operator){const n=this._getVariableData(e.right,t);return n instanceof Ve?n.reference.getSubData(this,e.postfix,t):(console.error(`Variable ${e.right} is not a pointer. Line ${e.line}`),null)}if('&'===e.operator){const n=this._getVariableData(e.right,t);return new Ve(n)}}return null}_assign(e,t){let n=null,s='<var>',r=null;if(e.variable instanceof we){const n=this._getVariableData(e.variable,t),s=this.evalExpression(e.value,t),r=e.operator;if('='===r){if(n instanceof Oe||n instanceof Fe||n instanceof Me){if(s instanceof Oe||s instanceof Fe||s instanceof Me&&n.data.length===s.data.length)return void n.data.set(s.data);console.error(`Invalid assignment. Line ${e.line}`);}else if(n instanceof Ue&&s instanceof Ue&&n.buffer.byteLength-n.offset>=s.buffer.byteLength-s.offset)return void(n.buffer.byteLength%4==0?new Uint32Array(n.buffer,n.offset,n.typeInfo.size/4).set(new Uint32Array(s.buffer,s.offset,s.typeInfo.size/4)):new Uint8Array(n.buffer,n.offset,n.typeInfo.size).set(new Uint8Array(s.buffer,s.offset,s.typeInfo.size)));return console.error(`Invalid assignment. Line ${e.line}`),null}if('+='===r)return n instanceof Oe||n instanceof Fe||n instanceof Me?s instanceof Oe||s instanceof Fe||s instanceof Me?void n.data.set(s.data.map(((e,t)=>n.data[t]+e))):void console.error(`Invalid assignment . Line ${e.line}`):void console.error(`Invalid assignment. Line ${e.line}`);if('-='===r)return (n instanceof Oe||n instanceof Fe||n instanceof Me)&&(s instanceof Oe||s instanceof Fe||s instanceof Me)?void n.data.set(s.data.map(((e,t)=>n.data[t]-e))):void console.error(`Invalid assignment. Line ${e.line}`)}if(e.variable instanceof we){if('*'===e.variable.operator){s=this.getVariableName(e.variable.right,t);const r=t.getVariable(s);if(!(r&&r.value instanceof Ve))return void console.error(`Variable ${s} is not a pointer. Line ${e.line}`);n=r.value.reference;let a=e.variable.postfix;if(!a){let t=e.variable.right;for(;t instanceof we;){if(t.postfix){a=t.postfix;break}t=t.right;}}a&&(n=n.getSubData(this,a,t));}}else {r=e.variable.postfix,s=this.getVariableName(e.variable,t);const a=t.getVariable(s);if(null===a)return void console.error(`Variable ${s} not found. Line ${e.line}`);n=a.value;}if(n instanceof Ve&&(n=n.reference),null===n)return void console.error(`Variable ${s} not found. Line ${e.line}`);const a=this.evalExpression(e.value,t),i=e.operator;if('='===i)if(n instanceof Ue)n.setDataValue(this,a,r,t);else if(r){if(!(n instanceof Fe||n instanceof Me))return void console.error(`Variable ${s} is not a vector or matrix. Line ${e.line}`);if(r instanceof be){const i=this.evalExpression(r.index,t).value;if(n instanceof Fe){if(!(a instanceof Oe))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[i]=a.value;}else {if(!(n instanceof Me))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);{const i=this.evalExpression(r.index,t).value;if(i<0)return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);if(!(a instanceof Fe))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);{const t=n.typeInfo.getTypeName();if('mat2x2'===t||'mat2x2f'===t||'mat2x2h'===t){if(!(i<2&&2===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[2*i]=a.data[0],n.data[2*i+1]=a.data[1];}else if('mat2x3'===t||'mat2x3f'===t||'mat2x3h'===t){if(!(i<2&&3===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[3*i]=a.data[0],n.data[3*i+1]=a.data[1],n.data[3*i+2]=a.data[2];}else if('mat2x4'===t||'mat2x4f'===t||'mat2x4h'===t){if(!(i<2&&4===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[4*i]=a.data[0],n.data[4*i+1]=a.data[1],n.data[4*i+2]=a.data[2],n.data[4*i+3]=a.data[3];}else if('mat3x2'===t||'mat3x2f'===t||'mat3x2h'===t){if(!(i<3&&2===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[2*i]=a.data[0],n.data[2*i+1]=a.data[1];}else if('mat3x3'===t||'mat3x3f'===t||'mat3x3h'===t){if(!(i<3&&3===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[3*i]=a.data[0],n.data[3*i+1]=a.data[1],n.data[3*i+2]=a.data[2];}else if('mat3x4'===t||'mat3x4f'===t||'mat3x4h'===t){if(!(i<3&&4===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[4*i]=a.data[0],n.data[4*i+1]=a.data[1],n.data[4*i+2]=a.data[2],n.data[4*i+3]=a.data[3];}else if('mat4x2'===t||'mat4x2f'===t||'mat4x2h'===t){if(!(i<4&&2===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[2*i]=a.data[0],n.data[2*i+1]=a.data[1];}else if('mat4x3'===t||'mat4x3f'===t||'mat4x3h'===t){if(!(i<4&&3===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[3*i]=a.data[0],n.data[3*i+1]=a.data[1],n.data[3*i+2]=a.data[2];}else {if('mat4x4'!==t&&'mat4x4f'!==t&&'mat4x4h'!==t)return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);if(!(i<4&&4===a.data.length))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);n.data[4*i]=a.data[0],n.data[4*i+1]=a.data[1],n.data[4*i+2]=a.data[2],n.data[4*i+3]=a.data[3];}}}}}else if(r instanceof fe){const t=r.value;if(!(n instanceof Fe))return void console.error(`Invalid assignment to ${t}. Variable ${s} is not a vector. Line ${e.line}`);if(a instanceof Oe){if(t.length>1)return void console.error(`Invalid assignment to ${t} for variable ${s}. Line ${e.line}`);if('x'===t)n.data[0]=a.value;else if('y'===t){if(n.data.length<2)return void console.error(`Invalid assignment to ${t} for variable ${s}. Line ${e.line}`);n.data[1]=a.value;}else if('z'===t){if(n.data.length<3)return void console.error(`Invalid assignment to ${t} for variable ${s}. Line ${e.line}`);n.data[2]=a.value;}else if('w'===t){if(n.data.length<4)return void console.error(`Invalid assignment to ${t} for variable ${s}. Line ${e.line}`);n.data[3]=a.value;}}else {if(!(a instanceof Fe))return void console.error(`Invalid assignment to ${s}. Line ${e.line}`);if(t.length!==a.data.length)return void console.error(`Invalid assignment to ${t} for variable ${s}. Line ${e.line}`);for(let r=0;r<t.length;++r){const i=t[r];if('x'===i||'r'===i)n.data[0]=a.data[r];else if('y'===i||'g'===i){if(a.data.length<2)return void console.error(`Invalid assignment to ${i} for variable ${s}. Line ${e.line}`);n.data[1]=a.data[r];}else if('z'===i||'b'===i){if(a.data.length<3)return void console.error(`Invalid assignment to ${i} for variable ${s}. Line ${e.line}`);n.data[2]=a.data[r];}else {if('w'!==i&&'a'!==i)return void console.error(`Invalid assignment to ${i} for variable ${s}. Line ${e.line}`);if(a.data.length<4)return void console.error(`Invalid assignment to ${i} for variable ${s}. Line ${e.line}`);n.data[3]=a.data[r];}}}}}else n instanceof Oe&&a instanceof Oe?n.value=a.value:n instanceof Fe&&a instanceof Fe||n instanceof Me&&a instanceof Me?n.data.set(a.data):console.error(`Invalid assignment to ${s}. Line ${e.line}`);else {const s=n.getSubData(this,r,t);if(s instanceof Fe&&a instanceof Oe){const t=s.data,n=a.value;if('+='===i)for(let e=0;e<t.length;++e)t[e]+=n;else if('-='===i)for(let e=0;e<t.length;++e)t[e]-=n;else if('*='===i)for(let e=0;e<t.length;++e)t[e]*=n;else if('/='===i)for(let e=0;e<t.length;++e)t[e]/=n;else if('%='===i)for(let e=0;e<t.length;++e)t[e]%=n;else if('&='===i)for(let e=0;e<t.length;++e)t[e]&=n;else if('|='===i)for(let e=0;e<t.length;++e)t[e]|=n;else if('^='===i)for(let e=0;e<t.length;++e)t[e]^=n;else if('<<='===i)for(let e=0;e<t.length;++e)t[e]<<=n;else if('>>='===i)for(let e=0;e<t.length;++e)t[e]>>=n;else console.error(`Invalid operator ${i}. Line ${e.line}`);}else if(s instanceof Fe&&a instanceof Fe){const t=s.data,n=a.data;if(t.length!==n.length)return void console.error(`Vector length mismatch. Line ${e.line}`);if('+='===i)for(let e=0;e<t.length;++e)t[e]+=n[e];else if('-='===i)for(let e=0;e<t.length;++e)t[e]-=n[e];else if('*='===i)for(let e=0;e<t.length;++e)t[e]*=n[e];else if('/='===i)for(let e=0;e<t.length;++e)t[e]/=n[e];else if('%='===i)for(let e=0;e<t.length;++e)t[e]%=n[e];else if('&='===i)for(let e=0;e<t.length;++e)t[e]&=n[e];else if('|='===i)for(let e=0;e<t.length;++e)t[e]|=n[e];else if('^='===i)for(let e=0;e<t.length;++e)t[e]^=n[e];else if('<<='===i)for(let e=0;e<t.length;++e)t[e]<<=n[e];else if('>>='===i)for(let e=0;e<t.length;++e)t[e]>>=n[e];else console.error(`Invalid operator ${i}. Line ${e.line}`);}else {if(!(s instanceof Oe&&a instanceof Oe))return void console.error(`Invalid type for ${e.operator} operator. Line ${e.line}`);'+='===i?s.value+=a.value:'-='===i?s.value-=a.value:'*='===i?s.value*=a.value:'/='===i?s.value/=a.value:'%='===i?s.value%=a.value:'&='===i?s.value&=a.value:'|='===i?s.value|=a.value:'^='===i?s.value^=a.value:'<<='===i?s.value<<=a.value:'>>='===i?s.value>>=a.value:console.error(`Invalid operator ${i}. Line ${e.line}`);}n instanceof Ue&&n.setDataValue(this,s,r,t);}}_function(e,t){const n=new ot(e);t.functions.set(e.name,n);}_const(e,t){let n=null;null!==e.value&&(n=this.evalExpression(e.value,t)),t.createVariable(e.name,n,e);}_let(e,t){let n=null;if(null!==e.value){if(n=this.evalExpression(e.value,t),null===n)return void console.error(`Invalid value for variable ${e.name}. Line ${e.line}`);e.value instanceof we||(n=n.clone());}else {const s=e.type.name;if('f32'===s||'i32'===s||'u32'===s||'bool'===s||'f16'===s||'vec2'===s||'vec3'===s||'vec4'===s||'vec2f'===s||'vec3f'===s||'vec4f'===s||'vec2i'===s||'vec3i'===s||'vec4i'===s||'vec2u'===s||'vec3u'===s||'vec4u'===s||'vec2h'===s||'vec3h'===s||'vec4h'===s||'vec2b'===s||'vec3b'===s||'vec4b'===s||'mat2x2'===s||'mat2x3'===s||'mat2x4'===s||'mat3x2'===s||'mat3x3'===s||'mat3x4'===s||'mat4x2'===s||'mat4x3'===s||'mat4x4'===s||'mat2x2f'===s||'mat2x3f'===s||'mat2x4f'===s||'mat3x2f'===s||'mat3x3f'===s||'mat3x4f'===s||'mat4x2f'===s||'mat4x3f'===s||'mat4x4f'===s||'mat2x2h'===s||'mat2x3h'===s||'mat2x4h'===s||'mat3x2h'===s||'mat3x3h'===s||'mat3x4h'===s||'mat4x2h'===s||'mat4x3h'===s||'mat4x4h'===s||'array'===s){const s=new pe(e.type,[]);n=this._evalCreate(s,t);}}t.createVariable(e.name,n,e);}_var(e,t){let n=null;if(null!==e.value){if(n=this.evalExpression(e.value,t),null===n)return void console.error(`Invalid value for variable ${e.name}. Line ${e.line}`);e.value instanceof we||(n=n.clone());}else {if(null===e.type)return void console.error(`Variable ${e.name} has no type. Line ${e.line}`);const s=e.type.name;if('f32'===s||'i32'===s||'u32'===s||'bool'===s||'f16'===s||'vec2'===s||'vec3'===s||'vec4'===s||'vec2f'===s||'vec3f'===s||'vec4f'===s||'vec2i'===s||'vec3i'===s||'vec4i'===s||'vec2u'===s||'vec3u'===s||'vec4u'===s||'vec2h'===s||'vec3h'===s||'vec4h'===s||'vec2b'===s||'vec3b'===s||'vec4b'===s||'mat2x2'===s||'mat2x3'===s||'mat2x4'===s||'mat3x2'===s||'mat3x3'===s||'mat3x4'===s||'mat4x2'===s||'mat4x3'===s||'mat4x4'===s||'mat2x2f'===s||'mat2x3f'===s||'mat2x4f'===s||'mat3x2f'===s||'mat3x3f'===s||'mat3x4f'===s||'mat4x2f'===s||'mat4x3f'===s||'mat4x4f'===s||'mat2x2h'===s||'mat2x3h'===s||'mat2x4h'===s||'mat3x2h'===s||'mat3x3h'===s||'mat3x4h'===s||'mat4x2h'===s||'mat4x3h'===s||'mat4x4h'===s||e.type instanceof ce||e.type instanceof ie||e.type instanceof oe){const s=new pe(e.type,[]);n=this._evalCreate(s,t);}}t.createVariable(e.name,n,e);}_switch(e,t){t=t.clone();const n=this.evalExpression(e.condition,t);if(!(n instanceof Oe))return console.error(`Invalid if condition. Line ${e.line}`),null;let s=null;for(const r of e.cases)if(r instanceof Se)for(const a of r.selectors){if(a instanceof Te){s=r;continue}const i=this.evalExpression(a,t);if(!(i instanceof Oe))return console.error(`Invalid case selector. Line ${e.line}`),null;if(i.value===n.value)return this._execStatements(r.body,t)}else r instanceof Ae&&(s=r);return s?this._execStatements(s.body,t):null}_if(e,t){t=t.clone();const n=this.evalExpression(e.condition,t);if(!(n instanceof Oe))return console.error(`Invalid if condition. Line ${e.line}`),null;if(n.value)return this._execStatements(e.body,t);for(const n of e.elseif){const s=this.evalExpression(n.condition,t);if(!(s instanceof Oe))return console.error(`Invalid if condition. Line ${e.line}`),null;if(s.value)return this._execStatements(n.body,t)}return e.else?this._execStatements(e.else,t):null}_getScalarValue(e){return e instanceof Oe?e.value:(console.error('Expected scalar value.',e),0)}_for(e,t){for(t=t.clone(),this.execStatement(e.init,t);this._getScalarValue(this.evalExpression(e.condition,t));){const n=this._execStatements(e.body,t);if(n===pt._breakObj)break;if(null!==n&&n!==pt._continueObj)return n;this.execStatement(e.increment,t);}return null}_loop(e,t){for(t=t.clone();;){const n=this._execStatements(e.body,t);if(n===pt._breakObj)break;if(n===pt._continueObj){if(e.continuing){if(this._execStatements(e.continuing.body,t)===pt._breakObj)break}}else if(null!==n)return n}return null}_while(e,t){for(t=t.clone();this._getScalarValue(this.evalExpression(e.condition,t));){const n=this._execStatements(e.body,t);if(n===pt._breakObj)break;if(n!==pt._continueObj&&null!==n)return n}return null}_evalBitcast(e,t){const n=this.evalExpression(e.value,t),s=e.type;if(n instanceof Oe){const e=tt(n.value,n.typeInfo.name,s.name);return new Oe(e,this.getTypeInfo(s))}if(n instanceof Fe){const t=n.typeInfo.getTypeName();let r='';if(t.endsWith('f'))r='f32';else if(t.endsWith('i'))r='i32';else if(t.endsWith('u'))r='u32';else if(t.endsWith('b'))r='bool';else {if(!t.endsWith('h'))return console.error(`Unknown vector type ${t}. Line ${e.line}`),null;r='f16';}const a=s.getTypeName();let i='';if(a.endsWith('f'))i='f32';else if(a.endsWith('i'))i='i32';else if(a.endsWith('u'))i='u32';else if(a.endsWith('b'))i='bool';else {if(!a.endsWith('h'))return console.error(`Unknown vector type ${i}. Line ${e.line}`),null;i='f16';}const o=function(e,t,n){if(t===n)return e;const s=new Array(e.length);for(let r=0;r<e.length;r++)s[r]=tt(e[r],t,n);return s}(Array.from(n.data),r,i);return new Fe(o,this.getTypeInfo(s))}return console.error(`TODO: bitcast for ${n.typeInfo.name}. Line ${e.line}`),null}_evalConst(e,t){return t.getVariableValue(e.name).clone().getSubData(this,e.postfix,t)}_evalCreate(e,t){var r;if(e instanceof pe){if(null===e.type)return Ne.void;switch(e.type.getTypeName()){case 'bool':case 'i32':case 'u32':case 'f32':case 'f16':return this._callConstructorValue(e,t);case 'vec2':case 'vec3':case 'vec4':case 'vec2f':case 'vec3f':case 'vec4f':case 'vec2h':case 'vec3h':case 'vec4h':case 'vec2i':case 'vec3i':case 'vec4i':case 'vec2u':case 'vec3u':case 'vec4u':case 'vec2b':case 'vec3b':case 'vec4b':return this._callConstructorVec(e,t);case 'mat2x2':case 'mat2x2f':case 'mat2x2h':case 'mat2x3':case 'mat2x3f':case 'mat2x3h':case 'mat2x4':case 'mat2x4f':case 'mat2x4h':case 'mat3x2':case 'mat3x2f':case 'mat3x2h':case 'mat3x3':case 'mat3x3f':case 'mat3x3h':case 'mat3x4':case 'mat3x4f':case 'mat3x4h':case 'mat4x2':case 'mat4x2f':case 'mat4x2h':case 'mat4x3':case 'mat4x3f':case 'mat4x3h':case 'mat4x4':case 'mat4x4f':case 'mat4x4h':return this._callConstructorMatrix(e,t)}}const a=e instanceof pe?e.type.name:e.name,i=e instanceof pe?this.getTypeInfo(e.type):this.getTypeInfo(e.name);if(null===i)return console.error(`Unknown type ${a}. Line ${e.line}`),null;if(0===i.size)return null;const o=new Ue(new ArrayBuffer(i.size),i,0);if(i instanceof n){if(e.args)for(let n=0;n<e.args.length;++n){const s=i.members[n],r=e.args[n],a=this.evalExpression(r,t);o.setData(this,a,s.type,s.offset,t);}}else if(i instanceof s){let n=0;if(e.args)for(let s=0;s<e.args.length;++s){const a=e.args[s],l=this.evalExpression(a,t);null===i.format&&('x32'===(null===(r=l.typeInfo)||undefined===r?undefined:r.name)?i.format=this.getTypeInfo('i32'):i.format=l.typeInfo),o.setData(this,l,i.format,n,t),n+=i.stride;}}else console.error(`Unknown type \"${a}\". Line ${e.line}`);return e instanceof pe?o.getSubData(this,e.postfix,t):o}_evalLiteral(e,t){const n=this.getTypeInfo(e.type),s=n.name;if('x32'===s||'u32'===s||'f32'===s||'f16'===s||'i32'===s||'bool'===s){return new Oe(e.scalarValue,n)}return 'vec2'===s||'vec3'===s||'vec4'===s||'vec2f'===s||'vec3f'===s||'vec4f'===s||'vec2h'===s||'vec3h'===s||'vec4h'===s||'vec2i'===s||'vec3i'===s||'vec4i'===s||'vec2u'===s||'vec3u'===s||'vec4u'===s?this._callConstructorVec(e,t):'mat2x2'===s||'mat2x3'===s||'mat2x4'===s||'mat3x2'===s||'mat3x3'===s||'mat3x4'===s||'mat4x2'===s||'mat4x3'===s||'mat4x4'===s||'mat2x2f'===s||'mat2x3f'===s||'mat2x4f'===s||'mat3x2f'===s||'mat3x3f'===s||'mat3x4f'===s||'mat4x2f'===s||'mat4x3f'===s||'mat4x4f'===s||'mat2x2h'===s||'mat2x3h'===s||'mat2x4h'===s||'mat3x2h'===s||'mat3x3h'===s||'mat3x4h'===s||'mat4x2h'===s||'mat4x3h'===s||'mat4x4h'===s?this._callConstructorMatrix(e,t):e.value}_evalVariable(e,t){const n=t.getVariableValue(e.name);return null===n?n:n.getSubData(this,e.postfix,t)}_maxFormatTypeInfo(e){let t=e[0];if('f32'===t.name)return t;for(let n=1;n<e.length;++n){const s=pt._priority.get(t.name);pt._priority.get(e[n].name)<s&&(t=e[n]);}return 'x32'===t.name?this.getTypeInfo('i32'):t}_evalUnaryOp(e,t){const n=this.evalExpression(e.right,t);if('&'===e.operator)return new Ve(n);if('*'===e.operator)return n instanceof Ve?n.reference.getSubData(this,e.postfix,t):(console.error(`Invalid dereference. Line ${e.line}`),null);const s=n instanceof Oe?n.value:n instanceof Fe?Array.from(n.data):null;switch(e.operator){case '+':{if(Re(s)){const e=s.map(((e,t)=>+e));return new Fe(e,n.typeInfo)}const e=s,t=this._maxFormatTypeInfo([n.typeInfo,n.typeInfo]);return new Oe(+e,t)}case '-':{if(Re(s)){const e=s.map(((e,t)=>-e));return new Fe(e,n.typeInfo)}const e=s,t=this._maxFormatTypeInfo([n.typeInfo,n.typeInfo]);return new Oe(-e,t)}case '!':{if(Re(s)){const e=s.map(((e,t)=>e?0:1));return new Fe(e,n.typeInfo)}const e=s,t=this._maxFormatTypeInfo([n.typeInfo,n.typeInfo]);return new Oe(e?0:1,t)}case '~':{if(Re(s)){const e=s.map(((e,t)=>~e));return new Fe(e,n.typeInfo)}const e=s,t=this._maxFormatTypeInfo([n.typeInfo,n.typeInfo]);return new Oe(~e,t)}}return console.error(`Invalid unary operator ${e.operator}. Line ${e.line}`),null}_evalBinaryOp(e,t){const n=this.evalExpression(e.left,t),s=this.evalExpression(e.right,t),r=n instanceof Oe?n.value:n instanceof Fe||n instanceof Me?Array.from(n.data):null,a=s instanceof Oe?s.value:s instanceof Fe||s instanceof Me?Array.from(s.data):null;switch(e.operator){case '+':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e+s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t+e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e+t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t+i,o)}case '-':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e-s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t-e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e-t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t-i,o)}case '*':{if(Re(r)&&Re(a)){const t=r,i=a;if(n instanceof Me&&s instanceof Me){const r=function(e,t,n,s){if(undefined===ft[t.name]||undefined===ft[s.name])return null;const r=ft[t.name][0],a=ft[t.name][1],i=ft[s.name][0];if(r!==ft[s.name][1])return null;const o=new Array(i*a);for(let t=0;t<a;t++)for(let s=0;s<i;s++){let l=0;for(let i=0;i<r;i++)l+=e[i*a+t]*n[s*r+i];o[t*i+s]=l;}return o}(t,n.typeInfo,i,s.typeInfo);if(null===r)return console.error(`Matrix multiplication failed. Line ${e.line}.`),null;const a=ft[s.typeInfo.name][0],o=ft[n.typeInfo.name][1],l=this.getTypeInfo(`mat${a}x${o}f`);return new Me(r,l)}if(n instanceof Me&&s instanceof Fe){const r=function(e,t,n,s){if(undefined===ft[t.name]||undefined===ht[s.name])return null;const r=ft[t.name][0],a=ft[t.name][1];if(r!==n.length)return null;const i=new Array(a);for(let t=0;t<a;t++){let s=0;for(let i=0;i<r;i++)s+=e[i*a+t]*n[i];i[t]=s;}return i}(t,n.typeInfo,i,s.typeInfo);return null===r?(console.error(`Matrix vector multiplication failed. Line ${e.line}.`),null):new Fe(r,s.typeInfo)}if(n instanceof Fe&&s instanceof Me){const r=function(e,t,n,s){if(undefined===ht[t.name]||undefined===ft[s.name])return null;const r=ft[s.name][0],a=ft[s.name][1];if(a!==e.length)return null;const i=[];for(let t=0;t<r;t++){let s=0;for(let i=0;i<a;i++)s+=e[i]*n[i*r+t];i[t]=s;}return i}(t,n.typeInfo,i,s.typeInfo);return null===r?(console.error(`Matrix vector multiplication failed. Line ${e.line}.`),null):new Fe(r,n.typeInfo)}{if(t.length!==i.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const s=t.map(((e,t)=>e*i[t]));return new Fe(s,n.typeInfo)}}if(Re(r)){const e=a,t=r.map(((t,n)=>t*e));return n instanceof Me?new Me(t,n.typeInfo):new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e*t));return s instanceof Me?new Me(t,s.typeInfo):new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t*i,o)}case '%':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e%s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t%e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e%t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t%i,o)}case '/':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e/s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t/e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e/t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t/i,o)}case '&':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e&s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t&e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e&t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t&i,o)}case '|':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e|s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t|e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e|t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t|i,o)}case '^':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e^s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t^e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e^t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t^i,o)}case '<<':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e<<s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t<<e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e<<t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t<<i,o)}case '>>':{if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e>>s[t]));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t>>e));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e>>t));return new Fe(t,s.typeInfo)}const t=r,i=a,o=this._maxFormatTypeInfo([n.typeInfo,s.typeInfo]);return new Oe(t>>i,o)}case '>':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e>s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t>e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e>t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r>a?1:0,this.getTypeInfo('bool'));case '<':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e<s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t<e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e<t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r<a?1:0,this.getTypeInfo('bool'));case '==':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e===s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t==e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e==t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r===a?1:0,this.getTypeInfo('bool'));case '!=':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e!==s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t!==e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e!==t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r!==a?1:0,this.getTypeInfo('bool'));case '>=':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e>=s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t>=e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e>=t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r>=a?1:0,this.getTypeInfo('bool'));case '<=':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e<=s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t<=e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e<=t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r<=a?1:0,this.getTypeInfo('bool'));case '&&':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e&&s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t&&e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e&&t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r&&a?1:0,this.getTypeInfo('bool'));case '||':if(Re(r)&&Re(a)){const t=r,s=a;if(t.length!==s.length)return console.error(`Vector length mismatch. Line ${e.line}.`),null;const i=t.map(((e,t)=>e||s[t]?1:0));return new Fe(i,n.typeInfo)}if(Re(r)){const e=a,t=r.map(((t,n)=>t||e?1:0));return new Fe(t,n.typeInfo)}if(Re(a)){const e=r,t=a.map(((t,n)=>e||t?1:0));return new Fe(t,s.typeInfo)}return new Oe(r||a?1:0,this.getTypeInfo('bool'))}return console.error(`Unknown operator ${e.operator}. Line ${e.line}`),null}_evalCall(e,t){if(null!==e.cachedReturnValue)return e.cachedReturnValue;const n=t.clone();n.currentFunctionName=e.name;const s=t.getFunction(e.name);if(!s){if(e.isBuiltin)return this._callBuiltinFunction(e,n);return this.getTypeInfo(e.name)?this._evalCreate(e,t):(console.error(`Unknown function \"${e.name}\". Line ${e.line}`),null)}for(let t=0;t<s.node.args.length;++t){const r=s.node.args[t],a=this.evalExpression(e.args[t],n);n.createVariable(r.name,a,r);}return this._execStatements(s.node.body,n)}_callBuiltinFunction(e,t){switch(e.name){case 'all':return this.builtins.All(e,t);case 'any':return this.builtins.Any(e,t);case 'select':return this.builtins.Select(e,t);case 'arrayLength':return this.builtins.ArrayLength(e,t);case 'abs':return this.builtins.Abs(e,t);case 'acos':return this.builtins.Acos(e,t);case 'acosh':return this.builtins.Acosh(e,t);case 'asin':return this.builtins.Asin(e,t);case 'asinh':return this.builtins.Asinh(e,t);case 'atan':return this.builtins.Atan(e,t);case 'atanh':return this.builtins.Atanh(e,t);case 'atan2':return this.builtins.Atan2(e,t);case 'ceil':return this.builtins.Ceil(e,t);case 'clamp':return this.builtins.Clamp(e,t);case 'cos':return this.builtins.Cos(e,t);case 'cosh':return this.builtins.Cosh(e,t);case 'countLeadingZeros':return this.builtins.CountLeadingZeros(e,t);case 'countOneBits':return this.builtins.CountOneBits(e,t);case 'countTrailingZeros':return this.builtins.CountTrailingZeros(e,t);case 'cross':return this.builtins.Cross(e,t);case 'degrees':return this.builtins.Degrees(e,t);case 'determinant':return this.builtins.Determinant(e,t);case 'distance':return this.builtins.Distance(e,t);case 'dot':return this.builtins.Dot(e,t);case 'dot4U8Packed':return this.builtins.Dot4U8Packed(e,t);case 'dot4I8Packed':return this.builtins.Dot4I8Packed(e,t);case 'exp':return this.builtins.Exp(e,t);case 'exp2':return this.builtins.Exp2(e,t);case 'extractBits':return this.builtins.ExtractBits(e,t);case 'faceForward':return this.builtins.FaceForward(e,t);case 'firstLeadingBit':return this.builtins.FirstLeadingBit(e,t);case 'firstTrailingBit':return this.builtins.FirstTrailingBit(e,t);case 'floor':return this.builtins.Floor(e,t);case 'fma':return this.builtins.Fma(e,t);case 'fract':return this.builtins.Fract(e,t);case 'frexp':return this.builtins.Frexp(e,t);case 'insertBits':return this.builtins.InsertBits(e,t);case 'inverseSqrt':return this.builtins.InverseSqrt(e,t);case 'ldexp':return this.builtins.Ldexp(e,t);case 'length':return this.builtins.Length(e,t);case 'log':return this.builtins.Log(e,t);case 'log2':return this.builtins.Log2(e,t);case 'max':return this.builtins.Max(e,t);case 'min':return this.builtins.Min(e,t);case 'mix':return this.builtins.Mix(e,t);case 'modf':return this.builtins.Modf(e,t);case 'normalize':return this.builtins.Normalize(e,t);case 'pow':return this.builtins.Pow(e,t);case 'quantizeToF16':return this.builtins.QuantizeToF16(e,t);case 'radians':return this.builtins.Radians(e,t);case 'reflect':return this.builtins.Reflect(e,t);case 'refract':return this.builtins.Refract(e,t);case 'reverseBits':return this.builtins.ReverseBits(e,t);case 'round':return this.builtins.Round(e,t);case 'saturate':return this.builtins.Saturate(e,t);case 'sign':return this.builtins.Sign(e,t);case 'sin':return this.builtins.Sin(e,t);case 'sinh':return this.builtins.Sinh(e,t);case 'smoothStep':return this.builtins.SmoothStep(e,t);case 'sqrt':return this.builtins.Sqrt(e,t);case 'step':return this.builtins.Step(e,t);case 'tan':return this.builtins.Tan(e,t);case 'tanh':return this.builtins.Tanh(e,t);case 'transpose':return this.builtins.Transpose(e,t);case 'trunc':return this.builtins.Trunc(e,t);case 'dpdx':return this.builtins.Dpdx(e,t);case 'dpdxCoarse':return this.builtins.DpdxCoarse(e,t);case 'dpdxFine':return this.builtins.DpdxFine(e,t);case 'dpdy':return this.builtins.Dpdy(e,t);case 'dpdyCoarse':return this.builtins.DpdyCoarse(e,t);case 'dpdyFine':return this.builtins.DpdyFine(e,t);case 'fwidth':return this.builtins.Fwidth(e,t);case 'fwidthCoarse':return this.builtins.FwidthCoarse(e,t);case 'fwidthFine':return this.builtins.FwidthFine(e,t);case 'textureDimensions':return this.builtins.TextureDimensions(e,t);case 'textureGather':return this.builtins.TextureGather(e,t);case 'textureGatherCompare':return this.builtins.TextureGatherCompare(e,t);case 'textureLoad':return this.builtins.TextureLoad(e,t);case 'textureNumLayers':return this.builtins.TextureNumLayers(e,t);case 'textureNumLevels':return this.builtins.TextureNumLevels(e,t);case 'textureNumSamples':return this.builtins.TextureNumSamples(e,t);case 'textureSample':return this.builtins.TextureSample(e,t);case 'textureSampleBias':return this.builtins.TextureSampleBias(e,t);case 'textureSampleCompare':return this.builtins.TextureSampleCompare(e,t);case 'textureSampleCompareLevel':return this.builtins.TextureSampleCompareLevel(e,t);case 'textureSampleGrad':return this.builtins.TextureSampleGrad(e,t);case 'textureSampleLevel':return this.builtins.TextureSampleLevel(e,t);case 'textureSampleBaseClampToEdge':return this.builtins.TextureSampleBaseClampToEdge(e,t);case 'textureStore':return this.builtins.TextureStore(e,t);case 'atomicLoad':return this.builtins.AtomicLoad(e,t);case 'atomicStore':return this.builtins.AtomicStore(e,t);case 'atomicAdd':return this.builtins.AtomicAdd(e,t);case 'atomicSub':return this.builtins.AtomicSub(e,t);case 'atomicMax':return this.builtins.AtomicMax(e,t);case 'atomicMin':return this.builtins.AtomicMin(e,t);case 'atomicAnd':return this.builtins.AtomicAnd(e,t);case 'atomicOr':return this.builtins.AtomicOr(e,t);case 'atomicXor':return this.builtins.AtomicXor(e,t);case 'atomicExchange':return this.builtins.AtomicExchange(e,t);case 'atomicCompareExchangeWeak':return this.builtins.AtomicCompareExchangeWeak(e,t);case 'pack4x8snorm':return this.builtins.Pack4x8snorm(e,t);case 'pack4x8unorm':return this.builtins.Pack4x8unorm(e,t);case 'pack4xI8':return this.builtins.Pack4xI8(e,t);case 'pack4xU8':return this.builtins.Pack4xU8(e,t);case 'pack4x8Clamp':return this.builtins.Pack4x8Clamp(e,t);case 'pack4xU8Clamp':return this.builtins.Pack4xU8Clamp(e,t);case 'pack2x16snorm':return this.builtins.Pack2x16snorm(e,t);case 'pack2x16unorm':return this.builtins.Pack2x16unorm(e,t);case 'pack2x16float':return this.builtins.Pack2x16float(e,t);case 'unpack4x8snorm':return this.builtins.Unpack4x8snorm(e,t);case 'unpack4x8unorm':return this.builtins.Unpack4x8unorm(e,t);case 'unpack4xI8':return this.builtins.Unpack4xI8(e,t);case 'unpack4xU8':return this.builtins.Unpack4xU8(e,t);case 'unpack2x16snorm':return this.builtins.Unpack2x16snorm(e,t);case 'unpack2x16unorm':return this.builtins.Unpack2x16unorm(e,t);case 'unpack2x16float':return this.builtins.Unpack2x16float(e,t);case 'storageBarrier':return this.builtins.StorageBarrier(e,t);case 'textureBarrier':return this.builtins.TextureBarrier(e,t);case 'workgroupBarrier':return this.builtins.WorkgroupBarrier(e,t);case 'workgroupUniformLoad':return this.builtins.WorkgroupUniformLoad(e,t);case 'subgroupAdd':return this.builtins.SubgroupAdd(e,t);case 'subgroupExclusiveAdd':return this.builtins.SubgroupExclusiveAdd(e,t);case 'subgroupInclusiveAdd':return this.builtins.SubgroupInclusiveAdd(e,t);case 'subgroupAll':return this.builtins.SubgroupAll(e,t);case 'subgroupAnd':return this.builtins.SubgroupAnd(e,t);case 'subgroupAny':return this.builtins.SubgroupAny(e,t);case 'subgroupBallot':return this.builtins.SubgroupBallot(e,t);case 'subgroupBroadcast':return this.builtins.SubgroupBroadcast(e,t);case 'subgroupBroadcastFirst':return this.builtins.SubgroupBroadcastFirst(e,t);case 'subgroupElect':return this.builtins.SubgroupElect(e,t);case 'subgroupMax':return this.builtins.SubgroupMax(e,t);case 'subgroupMin':return this.builtins.SubgroupMin(e,t);case 'subgroupMul':return this.builtins.SubgroupMul(e,t);case 'subgroupExclusiveMul':return this.builtins.SubgroupExclusiveMul(e,t);case 'subgroupInclusiveMul':return this.builtins.SubgroupInclusiveMul(e,t);case 'subgroupOr':return this.builtins.SubgroupOr(e,t);case 'subgroupShuffle':return this.builtins.SubgroupShuffle(e,t);case 'subgroupShuffleDown':return this.builtins.SubgroupShuffleDown(e,t);case 'subgroupShuffleUp':return this.builtins.SubgroupShuffleUp(e,t);case 'subgroupShuffleXor':return this.builtins.SubgroupShuffleXor(e,t);case 'subgroupXor':return this.builtins.SubgroupXor(e,t);case 'quadBroadcast':return this.builtins.QuadBroadcast(e,t);case 'quadSwapDiagonal':return this.builtins.QuadSwapDiagonal(e,t);case 'quadSwapX':return this.builtins.QuadSwapX(e,t);case 'quadSwapY':return this.builtins.QuadSwapY(e,t)}const n=t.getFunction(e.name);if(n){const s=t.clone();for(let t=0;t<n.node.args.length;++t){const r=n.node.args[t],a=this.evalExpression(e.args[t],s);s.setVariable(r.name,a,r);}return this._execStatements(n.node.body,s)}return null}_callConstructorValue(e,t){if(!e.args||0===e.args.length)return new Oe(0,this.getTypeInfo(e.type));const n=this.evalExpression(e.args[0],t);return n.typeInfo=this.getTypeInfo(e.type),n.getSubData(this,e.postfix,t).clone()}_callConstructorVec(e,t){const n=this.getTypeInfo(e.type),s=e.type.getTypeName(),r=ht[s];if(undefined===r)return console.error(`Invalid vec constructor ${s}. Line ${e.line}`),null;const a=[];if(e instanceof ge)if(e.isVector){const t=e.vectorValue;for(const e of t)a.push(e);}else a.push(e.scalarValue);else if(e.args)for(const n of e.args){const e=this.evalExpression(n,t);if(e instanceof Fe){const t=e.data;for(let e=0;e<t.length;++e){let n=t[e];a.push(n);}}else if(e instanceof Oe){let t=e.value;a.push(t);}}if(e.type instanceof oe&&null===e.type.format&&(e.type.format=oe.f32),0===a.length){const s=new Array(r).fill(0);return new Fe(s,n).getSubData(this,e.postfix,t)}if(1===a.length)for(;a.length<r;)a.push(a[0]);if(a.length<r)return console.error(`Invalid vec constructor. Line ${e.line}`),null;return new Fe(a.length>r?a.slice(0,r):a,n).getSubData(this,e.postfix,t)}_callConstructorMatrix(e,t){const n=this.getTypeInfo(e.type),s=e.type.getTypeName(),r=ft[s];if(undefined===r)return console.error(`Invalid matrix constructor ${s}. Line ${e.line}`),null;const i=[];if(e instanceof ge)if(e.isVector){const t=e.vectorValue;for(const e of t)i.push(e);}else i.push(e.scalarValue);else if(e.args)for(const n of e.args){const e=this.evalExpression(n,t);e instanceof Fe?i.push(...e.data):e instanceof Oe?i.push(e.value):e instanceof Me&&i.push(...e.data);}if(n instanceof a&&null===n.format&&(n.format=this.getTypeInfo('f32')),0===i.length){const s=new Array(r[2]).fill(0);return new Me(s,n).getSubData(this,e.postfix,t)}return i.length!==r[2]?(console.error(`Invalid matrix constructor. Line ${e.line}`),null):new Me(i,n).getSubData(this,e.postfix,t)}}pt._breakObj=new De(new e('BREAK',null),null),pt._continueObj=new De(new e('CONTINUE',null),null),pt._priority=new Map([['f32',0],['f16',1],['u32',2],['i32',3],['x32',3]]);class dt{constructor(){this.constants=new Map,this.aliases=new Map,this.structs=new Map;}}class mt{constructor(){this._tokens=[],this._current=0,this._currentLine=1,this._deferArrayCountEval=[],this._currentLoop=[],this._context=new dt,this._exec=new pt,this._forwardTypeCount=0;}parse(e){this._initialize(e),this._deferArrayCountEval.length=0;const t=[];for(;!this._isAtEnd();){const e=this._global_decl_or_directive();if(!e)break;t.push(e);}if(this._deferArrayCountEval.length>0){for(const e of this._deferArrayCountEval){const t=e.arrayType,n=e.countNode;if(n instanceof me){const e=n.name,s=this._context.constants.get(e);if(s)try{const e=s.constEvaluate(this._exec);t.count=e;}catch(e){}}}this._deferArrayCountEval.length=0;}if(this._forwardTypeCount>0)for(const e of t)e.search((e=>{e instanceof Le||e instanceof le?e.type=this._forwardType(e.type):e instanceof ce?e.format=this._forwardType(e.format):e instanceof B||e instanceof M||e instanceof U?e.type=this._forwardType(e.type):e instanceof C?e.returnType=this._forwardType(e.returnType):e instanceof Ee&&(e.type=this._forwardType(e.type));}));return t}_forwardType(e){if(e instanceof ae){const t=this._getType(e.name);if(t)return t}else e instanceof le?e.type=this._forwardType(e.type):e instanceof ce&&(e.format=this._forwardType(e.format));return e}_initialize(e){if(e)if('string'==typeof e){const t=new ze(e);this._tokens=t.scanTokens();}else this._tokens=e;else this._tokens=[];this._current=0;}_updateNode(e,t){return e.line=null!=t?t:this._currentLine,e}_error(e,t){return {token:e,message:t,toString:()=>`${t}`}}_isAtEnd(){return this._current>=this._tokens.length||this._peek().type==qe.eof}_match(e){if(e instanceof We)return !!this._check(e)&&(this._advance(),true);for(let t=0,n=e.length;t<n;++t){const n=e[t];if(this._check(n))return this._advance(),true}return false}_consume(e,t){if(this._check(e))return this._advance();throw this._error(this._peek(),`${t}. Line:${this._currentLine}`)}_check(e){if(this._isAtEnd())return false;const t=this._peek();if(e instanceof Array){const n=t.type;let s=false;for(const t of e){if(n===t)return true;t===qe.tokens.name&&(s=true);}if(s){const e=qe.tokens.name.rule.exec(t.lexeme);if(e&&0==e.index&&e[0]==t.lexeme)return true}return false}if(t.type===e)return true;if(e===qe.tokens.name){const e=qe.tokens.name.rule.exec(t.lexeme);return e&&0==e.index&&e[0]==t.lexeme}return false}_advance(){var e,t;return this._currentLine=null!==(t=null===(e=this._peek())||undefined===e?undefined:e.line)&&undefined!==t?t:-1,this._isAtEnd()||this._current++,this._previous()}_peek(){return this._tokens[this._current]}_previous(){return this._tokens[this._current-1]}_global_decl_or_directive(){for(;this._match(qe.tokens.semicolon)&&!this._isAtEnd(););if(this._match(qe.keywords.alias)){const e=this._type_alias();return this._consume(qe.tokens.semicolon,'Expected \\';\\''),this._exec.reflection.updateAST([e]),e}if(this._match(qe.keywords.diagnostic)){const e=this._diagnostic();return this._consume(qe.tokens.semicolon,'Expected \\';\\''),this._exec.reflection.updateAST([e]),e}if(this._match(qe.keywords.requires)){const e=this._requires_directive();return this._consume(qe.tokens.semicolon,'Expected \\';\\''),this._exec.reflection.updateAST([e]),e}if(this._match(qe.keywords.enable)){const e=this._enable_directive();return this._consume(qe.tokens.semicolon,'Expected \\';\\''),this._exec.reflection.updateAST([e]),e}const e=this._attribute();if(this._check(qe.keywords.var)){const t=this._global_variable_decl();return null!=t&&(t.attributes=e),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),this._exec.reflection.updateAST([t]),t}if(this._check(qe.keywords.override)){const t=this._override_variable_decl();return null!=t&&(t.attributes=e),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),this._exec.reflection.updateAST([t]),t}if(this._check(qe.keywords.let)){const t=this._global_let_decl();return null!=t&&(t.attributes=e),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),this._exec.reflection.updateAST([t]),t}if(this._check(qe.keywords.const)){const t=this._global_const_decl();return null!=t&&(t.attributes=e),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),this._exec.reflection.updateAST([t]),t}if(this._check(qe.keywords.struct)){const t=this._struct_decl();return null!=t&&(t.attributes=e),this._exec.reflection.updateAST([t]),t}if(this._check(qe.keywords.fn)){const t=this._function_decl();return null!=t&&(t.attributes=e),this._exec.reflection.updateAST([t]),t}return null}_function_decl(){if(!this._match(qe.keywords.fn))return null;const e=this._currentLine,t=this._consume(qe.tokens.ident,'Expected function name.').toString();this._consume(qe.tokens.paren_left,'Expected \\'(\\' for function arguments.');const n=[];if(!this._check(qe.tokens.paren_right))do{if(this._check(qe.tokens.paren_right))break;const e=this._attribute(),t=this._consume(qe.tokens.name,'Expected argument name.').toString();this._consume(qe.tokens.colon,'Expected \\':\\' for argument type.');const s=this._attribute(),r=this._type_decl();null!=r&&(r.attributes=s,n.push(this._updateNode(new Ee(t,r,e))));}while(this._match(qe.tokens.comma));this._consume(qe.tokens.paren_right,'Expected \\')\\' after function arguments.');let s=null;if(this._match(qe.tokens.arrow)){const e=this._attribute();s=this._type_decl(),null!=s&&(s.attributes=e);}const r=this._compound_statement(),a=this._currentLine;return this._updateNode(new C(t,n,s,r,e,a),e)}_compound_statement(){const e=[];for(this._consume(qe.tokens.brace_left,'Expected \\'{\\' for block.');!this._check(qe.tokens.brace_right);){const t=this._statement();null!==t&&e.push(t);}return this._consume(qe.tokens.brace_right,'Expected \\'}\\' for block.'),e}_statement(){for(;this._match(qe.tokens.semicolon)&&!this._isAtEnd(););if(this._check(qe.tokens.attr)&&this._attribute(),this._check(qe.keywords.if))return this._if_statement();if(this._check(qe.keywords.switch))return this._switch_statement();if(this._check(qe.keywords.loop))return this._loop_statement();if(this._check(qe.keywords.for))return this._for_statement();if(this._check(qe.keywords.while))return this._while_statement();if(this._check(qe.keywords.continuing))return this._continuing_statement();if(this._check(qe.keywords.static_assert))return this._static_assert_statement();if(this._check(qe.tokens.brace_left))return this._compound_statement();let e=null;if(this._check(qe.keywords.return))e=this._return_statement();else if(this._check([qe.keywords.var,qe.keywords.let,qe.keywords.const]))e=this._variable_statement();else if(this._match(qe.keywords.discard))e=this._updateNode(new te);else if(this._match(qe.keywords.break)){const t=this._updateNode(new ne);if(this._currentLoop.length>0){const e=this._currentLoop[this._currentLoop.length-1];t.loopId=e.id;}e=t,this._check(qe.keywords.if)&&(this._advance(),t.condition=this._optional_paren_expression());}else if(this._match(qe.keywords.continue)){const t=this._updateNode(new se);if(!(this._currentLoop.length>0))throw this._error(this._peek(),`Continue statement must be inside a loop. Line: ${t.line}`);{const e=this._currentLoop[this._currentLoop.length-1];t.loopId=e.id;}e=t;}else e=this._increment_decrement_statement()||this._func_call_statement()||this._assignment_statement();return null!=e&&this._consume(qe.tokens.semicolon,'Expected \\';\\' after statement.'),e}_static_assert_statement(){if(!this._match(qe.keywords.static_assert))return null;const e=this._currentLine,t=this._optional_paren_expression();return this._updateNode(new D(t),e)}_while_statement(){if(!this._match(qe.keywords.while))return null;const e=this._updateNode(new N(null,null));return this._currentLoop.push(e),e.condition=this._optional_paren_expression(),this._check(qe.tokens.attr)&&this._attribute(),e.body=this._compound_statement(),this._currentLoop.pop(),e}_continuing_statement(){const e=this._currentLoop.length>0?this._currentLoop[this._currentLoop.length-1].id:-1;if(!this._match(qe.keywords.continuing))return null;const t=this._currentLine,n=this._compound_statement();return this._updateNode(new V(n,e),t)}_for_statement(){if(!this._match(qe.keywords.for))return null;this._consume(qe.tokens.paren_left,'Expected \\'(\\'.');const e=this._updateNode(new O(null,null,null,null));return this._currentLoop.push(e),e.init=this._check(qe.tokens.semicolon)?null:this._for_init(),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),e.condition=this._check(qe.tokens.semicolon)?null:this._short_circuit_or_expression(),this._consume(qe.tokens.semicolon,'Expected \\';\\'.'),e.increment=this._check(qe.tokens.paren_right)?null:this._for_increment(),this._consume(qe.tokens.paren_right,'Expected \\')\\'.'),this._check(qe.tokens.attr)&&this._attribute(),e.body=this._compound_statement(),this._currentLoop.pop(),e}_for_init(){return this._variable_statement()||this._func_call_statement()||this._assignment_statement()}_for_increment(){return this._func_call_statement()||this._increment_decrement_statement()||this._assignment_statement()}_variable_statement(){if(this._check(qe.keywords.var)){const e=this._variable_decl();if(null===e)throw this._error(this._peek(),'Variable declaration expected.');let t=null;return this._match(qe.tokens.equal)&&(t=this._short_circuit_or_expression()),this._updateNode(new B(e.name,e.type,e.storage,e.access,t),e.line)}if(this._match(qe.keywords.let)){const e=this._currentLine,t=this._consume(qe.tokens.name,'Expected name for let.').toString();let n=null;if(this._match(qe.tokens.colon)){const e=this._attribute();n=this._type_decl(),null!=n&&(n.attributes=e);}this._consume(qe.tokens.equal,'Expected \\'=\\' for let.');const s=this._short_circuit_or_expression();return this._updateNode(new M(t,n,null,null,s),e)}if(this._match(qe.keywords.const)){const e=this._currentLine,t=this._consume(qe.tokens.name,'Expected name for const.').toString();let n=null;if(this._match(qe.tokens.colon)){const e=this._attribute();n=this._type_decl(),null!=n&&(n.attributes=e);}this._consume(qe.tokens.equal,'Expected \\'=\\' for const.');const s=this._short_circuit_or_expression();return null===n&&s instanceof ge&&(n=s.type),this._updateNode(new U(t,n,null,null,s),e)}return null}_increment_decrement_statement(){const e=this._current,t=this._unary_expression();if(null==t)return null;if(!this._check(qe.increment_operators))return this._current=e,null;const n=this._consume(qe.increment_operators,'Expected increment operator');return this._updateNode(new z(n.type===qe.tokens.plus_plus?P.increment:P.decrement,t))}_assignment_statement(){let e=null;const t=this._currentLine;if(this._check(qe.tokens.brace_right))return null;let n=this._match(qe.tokens.underscore);if(n||(e=this._unary_expression()),!n&&null==e)return null;const s=this._consume(qe.assignment_operators,'Expected assignment operator.'),r=this._short_circuit_or_expression();return this._updateNode(new R(W.parse(s.lexeme),e,r),t)}_func_call_statement(){if(!this._check(qe.tokens.ident))return null;const e=this._currentLine,t=this._current,n=this._consume(qe.tokens.ident,'Expected function name.'),s=this._argument_expression_list();return null===s?(this._current=t,null):this._updateNode(new G(n.lexeme,s),e)}_loop_statement(){if(!this._match(qe.keywords.loop))return null;this._check(qe.tokens.attr)&&this._attribute(),this._consume(qe.tokens.brace_left,'Expected \\'{\\' for loop.');const e=this._updateNode(new X([],null));this._currentLoop.push(e);let t=this._statement();for(;null!==t;){if(Array.isArray(t))for(let n of t)e.body.push(n);else e.body.push(t);if(t instanceof V){e.continuing=t;break}t=this._statement();}return this._currentLoop.pop(),this._consume(qe.tokens.brace_right,'Expected \\'}\\' for loop.'),e}_switch_statement(){if(!this._match(qe.keywords.switch))return null;const e=this._updateNode(new j(null,[]));if(this._currentLoop.push(e),e.condition=this._optional_paren_expression(),this._check(qe.tokens.attr)&&this._attribute(),this._consume(qe.tokens.brace_left,'Expected \\'{\\' for switch.'),e.cases=this._switch_body(),null==e.cases||0==e.cases.length)throw this._error(this._previous(),'Expected \\'case\\' or \\'default\\'.');return this._consume(qe.tokens.brace_right,'Expected \\'}\\' for switch.'),this._currentLoop.pop(),e}_switch_body(){const e=[];let t=false;for(;this._check([qe.keywords.default,qe.keywords.case]);){if(this._match(qe.keywords.case)){const n=this._case_selectors();for(const e of n)if(e instanceof Te){if(t)throw this._error(this._previous(),'Multiple default cases in switch statement.');t=true;break}this._match(qe.tokens.colon),this._check(qe.tokens.attr)&&this._attribute(),this._consume(qe.tokens.brace_left,'Exected \\'{\\' for switch case.');const s=this._case_body();this._consume(qe.tokens.brace_right,'Exected \\'}\\' for switch case.'),e.push(this._updateNode(new Se(n,s)));}if(this._match(qe.keywords.default)){if(t)throw this._error(this._previous(),'Multiple default cases in switch statement.');this._match(qe.tokens.colon),this._check(qe.tokens.attr)&&this._attribute(),this._consume(qe.tokens.brace_left,'Exected \\'{\\' for switch default.');const n=this._case_body();this._consume(qe.tokens.brace_right,'Exected \\'}\\' for switch default.'),e.push(this._updateNode(new Ae(n)));}}return e}_case_selectors(){const e=[];for(this._match(qe.keywords.default)?e.push(this._updateNode(new Te)):e.push(this._shift_expression());this._match(qe.tokens.comma);)this._match(qe.keywords.default)?e.push(this._updateNode(new Te)):e.push(this._shift_expression());return e}_case_body(){if(this._match(qe.keywords.fallthrough))return this._consume(qe.tokens.semicolon,'Expected \\';\\''),[];let e=this._statement();if(null==e)return [];e instanceof Array||(e=[e]);const t=this._case_body();return 0==t.length?e:[...e,t[0]]}_if_statement(){if(!this._match(qe.keywords.if))return null;const e=this._currentLine,t=this._optional_paren_expression();this._check(qe.tokens.attr)&&this._attribute();const n=this._compound_statement();let s=[];this._match_elseif()&&(this._check(qe.tokens.attr)&&this._attribute(),s=this._elseif_statement(s));let r=null;return this._match(qe.keywords.else)&&(this._check(qe.tokens.attr)&&this._attribute(),r=this._compound_statement()),this._updateNode(new Z(t,n,s,r),e)}_match_elseif(){return this._tokens[this._current].type===qe.keywords.else&&this._tokens[this._current+1].type===qe.keywords.if&&(this._advance(),this._advance(),true)}_elseif_statement(e=[]){const t=this._optional_paren_expression(),n=this._compound_statement();return e.push(this._updateNode(new $e(t,n))),this._match_elseif()&&(this._check(qe.tokens.attr)&&this._attribute(),this._elseif_statement(e)),e}_return_statement(){if(!this._match(qe.keywords.return))return null;const e=this._short_circuit_or_expression();return this._updateNode(new Q(e))}_short_circuit_or_expression(){let e=this._short_circuit_and_expr();for(;this._match(qe.tokens.or_or);)e=this._updateNode(new ke(this._previous().toString(),e,this._short_circuit_and_expr()));return e}_short_circuit_and_expr(){let e=this._inclusive_or_expression();for(;this._match(qe.tokens.and_and);)e=this._updateNode(new ke(this._previous().toString(),e,this._inclusive_or_expression()));return e}_inclusive_or_expression(){let e=this._exclusive_or_expression();for(;this._match(qe.tokens.or);)e=this._updateNode(new ke(this._previous().toString(),e,this._exclusive_or_expression()));return e}_exclusive_or_expression(){let e=this._and_expression();for(;this._match(qe.tokens.xor);)e=this._updateNode(new ke(this._previous().toString(),e,this._and_expression()));return e}_and_expression(){let e=this._equality_expression();for(;this._match(qe.tokens.and);)e=this._updateNode(new ke(this._previous().toString(),e,this._equality_expression()));return e}_equality_expression(){const e=this._relational_expression();return this._match([qe.tokens.equal_equal,qe.tokens.not_equal])?this._updateNode(new ke(this._previous().toString(),e,this._relational_expression())):e}_relational_expression(){let e=this._shift_expression();for(;this._match([qe.tokens.less_than,qe.tokens.greater_than,qe.tokens.less_than_equal,qe.tokens.greater_than_equal]);)e=this._updateNode(new ke(this._previous().toString(),e,this._shift_expression()));return e}_shift_expression(){let e=this._additive_expression();for(;this._match([qe.tokens.shift_left,qe.tokens.shift_right]);)e=this._updateNode(new ke(this._previous().toString(),e,this._additive_expression()));return e}_additive_expression(){let e=this._multiplicative_expression();for(;this._match([qe.tokens.plus,qe.tokens.minus]);)e=this._updateNode(new ke(this._previous().toString(),e,this._multiplicative_expression()));return e}_multiplicative_expression(){let e=this._unary_expression();for(;this._match([qe.tokens.star,qe.tokens.forward_slash,qe.tokens.modulo]);)e=this._updateNode(new ke(this._previous().toString(),e,this._unary_expression()));return e}_unary_expression(){return this._match([qe.tokens.minus,qe.tokens.bang,qe.tokens.tilde,qe.tokens.star,qe.tokens.and])?this._updateNode(new we(this._previous().toString(),this._unary_expression())):this._singular_expression()}_singular_expression(){const e=this._primary_expression(),t=this._postfix_expression();return t&&(e.postfix=t),e}_postfix_expression(){if(this._match(qe.tokens.bracket_left)){const e=this._short_circuit_or_expression();this._consume(qe.tokens.bracket_right,'Expected \\']\\'.');const t=this._updateNode(new be(e)),n=this._postfix_expression();return n&&(t.postfix=n),t}if(this._match(qe.tokens.period)){const e=this._consume(qe.tokens.name,'Expected member name.'),t=this._postfix_expression(),n=this._updateNode(new fe(e.lexeme));return t&&(n.postfix=t),n}return null}_getStruct(e){if(this._context.aliases.has(e)){return this._context.aliases.get(e).type}if(this._context.structs.has(e)){return this._context.structs.get(e)}return null}_getType(e){const t=this._getStruct(e);if(null!==t)return t;switch(e){case 'void':return re.void;case 'bool':return re.bool;case 'i32':return re.i32;case 'u32':return re.u32;case 'f32':return re.f32;case 'f16':return re.f16;case 'vec2f':return oe.vec2f;case 'vec3f':return oe.vec3f;case 'vec4f':return oe.vec4f;case 'vec2i':return oe.vec2i;case 'vec3i':return oe.vec3i;case 'vec4i':return oe.vec4i;case 'vec2u':return oe.vec2u;case 'vec3u':return oe.vec3u;case 'vec4u':return oe.vec4u;case 'vec2h':return oe.vec2h;case 'vec3h':return oe.vec3h;case 'vec4h':return oe.vec4h;case 'mat2x2f':return oe.mat2x2f;case 'mat2x3f':return oe.mat2x3f;case 'mat2x4f':return oe.mat2x4f;case 'mat3x2f':return oe.mat3x2f;case 'mat3x3f':return oe.mat3x3f;case 'mat3x4f':return oe.mat3x4f;case 'mat4x2f':return oe.mat4x2f;case 'mat4x3f':return oe.mat4x3f;case 'mat4x4f':return oe.mat4x4f;case 'mat2x2h':return oe.mat2x2h;case 'mat2x3h':return oe.mat2x3h;case 'mat2x4h':return oe.mat2x4h;case 'mat3x2h':return oe.mat3x2h;case 'mat3x3h':return oe.mat3x3h;case 'mat3x4h':return oe.mat3x4h;case 'mat4x2h':return oe.mat4x2h;case 'mat4x3h':return oe.mat4x3h;case 'mat4x4h':return oe.mat4x4h;case 'mat2x2i':return oe.mat2x2i;case 'mat2x3i':return oe.mat2x3i;case 'mat2x4i':return oe.mat2x4i;case 'mat3x2i':return oe.mat3x2i;case 'mat3x3i':return oe.mat3x3i;case 'mat3x4i':return oe.mat3x4i;case 'mat4x2i':return oe.mat4x2i;case 'mat4x3i':return oe.mat4x3i;case 'mat4x4i':return oe.mat4x4i;case 'mat2x2u':return oe.mat2x2u;case 'mat2x3u':return oe.mat2x3u;case 'mat2x4u':return oe.mat2x4u;case 'mat3x2u':return oe.mat3x2u;case 'mat3x3u':return oe.mat3x3u;case 'mat3x4u':return oe.mat3x4u;case 'mat4x2u':return oe.mat4x2u;case 'mat4x3u':return oe.mat4x3u;case 'mat4x4u':return oe.mat4x4u}return null}_validateTypeRange(e,t){if('i32'===t.name){if(e<-2147483648||e>2147483647)throw this._error(this._previous(),`Value out of range for i32: ${e}. Line: ${this._currentLine}.`)}else if('u32'===t.name&&(e<0||e>4294967295))throw this._error(this._previous(),`Value out of range for u32: ${e}. Line: ${this._currentLine}.`)}_primary_expression(){if(this._match(qe.tokens.ident)){const e=this._previous().toString();if(this._check(qe.tokens.paren_left)){const t=this._argument_expression_list(),n=this._getType(e);return null!==n?this._updateNode(new pe(n,t)):this._updateNode(new de(e,t))}if(this._context.constants.has(e)){const t=this._context.constants.get(e);return this._updateNode(new _e(e,t.value))}return this._updateNode(new me(e))}if(this._match(qe.tokens.int_literal)){const e=this._previous().toString();let t=e.endsWith('i')||e.endsWith('i')?re.i32:e.endsWith('u')||e.endsWith('U')?re.u32:re.x32;const n=parseInt(e);return this._validateTypeRange(n,t),this._updateNode(new ge(new Oe(n,this._exec.getTypeInfo(t)),t))}if(this._match(qe.tokens.uint_literal)){const e=parseInt(this._previous().toString());return this._validateTypeRange(e,re.u32),this._updateNode(new ge(new Oe(e,this._exec.getTypeInfo(re.u32)),re.u32))}if(this._match([qe.tokens.decimal_float_literal,qe.tokens.hex_float_literal])){let e=this._previous().toString(),t=e.endsWith('h');t&&(e=e.substring(0,e.length-1));const n=parseFloat(e);this._validateTypeRange(n,t?re.f16:re.f32);const s=t?re.f16:re.f32;return this._updateNode(new ge(new Oe(n,this._exec.getTypeInfo(s)),s))}if(this._match([qe.keywords.true,qe.keywords.false])){let e=this._previous().toString()===qe.keywords.true.rule;return this._updateNode(new ge(new Oe(e?1:0,this._exec.getTypeInfo(re.bool)),re.bool))}if(this._check(qe.tokens.paren_left))return this._paren_expression();if(this._match(qe.keywords.bitcast)){this._consume(qe.tokens.less_than,'Expected \\'<\\'.');const e=this._type_decl();this._consume(qe.tokens.greater_than,'Expected \\'>\\'.');const t=this._paren_expression();return this._updateNode(new xe(e,t))}const e=this._type_decl(),t=this._argument_expression_list();return this._updateNode(new pe(e,t))}_argument_expression_list(){if(!this._match(qe.tokens.paren_left))return null;const e=[];do{if(this._check(qe.tokens.paren_right))break;const t=this._short_circuit_or_expression();e.push(t);}while(this._match(qe.tokens.comma));return this._consume(qe.tokens.paren_right,'Expected \\')\\' for agument list'),e}_optional_paren_expression(){this._match(qe.tokens.paren_left);const e=this._short_circuit_or_expression();return this._match(qe.tokens.paren_right),e}_paren_expression(){this._consume(qe.tokens.paren_left,'Expected \\'(\\'.');const e=this._short_circuit_or_expression();return this._consume(qe.tokens.paren_right,'Expected \\')\\'.'),e}_struct_decl(){if(!this._match(qe.keywords.struct))return null;const e=this._currentLine,t=this._consume(qe.tokens.ident,'Expected name for struct.').toString();this._consume(qe.tokens.brace_left,'Expected \\'{\\' for struct body.');const n=[];for(;!this._check(qe.tokens.brace_right);){const e=this._attribute(),t=this._consume(qe.tokens.name,'Expected variable name.').toString();this._consume(qe.tokens.colon,'Expected \\':\\' for struct member type.');const s=this._attribute(),r=this._type_decl();null!=r&&(r.attributes=s),this._check(qe.tokens.brace_right)?this._match(qe.tokens.comma):this._consume(qe.tokens.comma,'Expected \\',\\' for struct member.'),n.push(this._updateNode(new Le(t,r,e)));}this._consume(qe.tokens.brace_right,'Expected \\'}\\' after struct body.');const s=this._currentLine,r=this._updateNode(new ie(t,n,e,s),e);return this._context.structs.set(t,r),r}_global_variable_decl(){const e=this._variable_decl();if(!e)return null;if(this._match(qe.tokens.equal)){const t=this._const_expression();e.value=t;}if(null!==e.type&&e.value instanceof ge){if('x32'!==e.value.type.name){if(e.type.getTypeName()!==e.value.type.getTypeName())throw this._error(this._peek(),`Invalid cast from ${e.value.type.name} to ${e.type.name}. Line:${this._currentLine}`)}e.value.isScalar&&this._validateTypeRange(e.value.scalarValue,e.type),e.value.type=e.type;}else null===e.type&&e.value instanceof ge&&(e.type='x32'===e.value.type.name?re.i32:e.value.type,e.value.isScalar&&this._validateTypeRange(e.value.scalarValue,e.type));return e}_override_variable_decl(){const e=this._override_decl();return e&&this._match(qe.tokens.equal)&&(e.value=this._const_expression()),e}_global_const_decl(){var e;if(!this._match(qe.keywords.const))return null;const t=this._consume(qe.tokens.name,'Expected variable name'),n=this._currentLine;let s=null;if(this._match(qe.tokens.colon)){const e=this._attribute();s=this._type_decl(),null!=s&&(s.attributes=e);}let r=null;this._consume(qe.tokens.equal,'const declarations require an assignment');const i=this._short_circuit_or_expression();try{let e=[re.f32],n=i.constEvaluate(this._exec,e);n instanceof Oe&&this._validateTypeRange(n.value,e[0]),e[0]instanceof oe&&null===e[0].format&&n.typeInfo instanceof a&&null!==n.typeInfo.format&&('f16'===n.typeInfo.format.name?e[0].format=re.f16:'f32'===n.typeInfo.format.name?e[0].format=re.f32:'i32'===n.typeInfo.format.name?e[0].format=re.i32:'u32'===n.typeInfo.format.name?e[0].format=re.u32:'bool'===n.typeInfo.format.name?e[0].format=re.bool:console.error(`TODO: impelement template format type ${n.typeInfo.format.name}`)),r=this._updateNode(new ge(n,e[0])),this._exec.context.setVariable(t.toString(),n);}catch(e){r=i;}if(null!==s&&r instanceof ge){if('x32'!==r.type.name){if(s.getTypeName()!==r.type.getTypeName())throw this._error(this._peek(),`Invalid cast from ${r.type.name} to ${s.name}. Line:${this._currentLine}`)}r.type=s,r.isScalar&&this._validateTypeRange(r.scalarValue,r.type);}else null===s&&r instanceof ge&&(s=null!==(e=null==r?undefined:r.type)&&undefined!==e?e:re.f32,s===re.x32&&(s=re.i32));const o=this._updateNode(new U(t.toString(),s,'','',r),n);return this._context.constants.set(o.name,o),o}_global_let_decl(){if(!this._match(qe.keywords.let))return null;const e=this._currentLine,t=this._consume(qe.tokens.name,'Expected variable name');let n=null;if(this._match(qe.tokens.colon)){const e=this._attribute();n=this._type_decl(),null!=n&&(n.attributes=e);}let s=null;if(this._match(qe.tokens.equal)&&(s=this._const_expression()),null!==n&&s instanceof ge){if('x32'!==s.type.name){if(n.getTypeName()!==s.type.getTypeName())throw this._error(this._peek(),`Invalid cast from ${s.type.name} to ${n.name}. Line:${this._currentLine}`)}s.type=n;}else null===n&&s instanceof ge&&(n='x32'===s.type.name?re.i32:s.type);return s instanceof ge&&s.isScalar&&this._validateTypeRange(s.scalarValue,n),this._updateNode(new M(t.toString(),n,'','',s),e)}_const_expression(){return this._short_circuit_or_expression()}_variable_decl(){if(!this._match(qe.keywords.var))return null;const e=this._currentLine;let t='',n='';this._match(qe.tokens.less_than)&&(t=this._consume(qe.storage_class,'Expected storage_class.').toString(),this._match(qe.tokens.comma)&&(n=this._consume(qe.access_mode,'Expected access_mode.').toString()),this._consume(qe.tokens.greater_than,'Expected \\'>\\'.'));const s=this._consume(qe.tokens.name,'Expected variable name');let r=null;if(this._match(qe.tokens.colon)){const e=this._attribute();r=this._type_decl(),null!=r&&(r.attributes=e);}return this._updateNode(new B(s.toString(),r,t,n,null),e)}_override_decl(){if(!this._match(qe.keywords.override))return null;const e=this._consume(qe.tokens.name,'Expected variable name');let t=null;if(this._match(qe.tokens.colon)){const e=this._attribute();t=this._type_decl(),null!=t&&(t.attributes=e);}return this._updateNode(new F(e.toString(),t,null))}_diagnostic(){this._consume(qe.tokens.paren_left,'Expected \\'(\\'');const e=this._consume(qe.tokens.ident,'Expected severity control name.');this._consume(qe.tokens.comma,'Expected \\',\\'');let t=this._consume(qe.tokens.ident,'Expected diagnostic rule name.').toString();if(this._match(qe.tokens.period)){t+=`.${this._consume(qe.tokens.ident,'Expected diagnostic message.').toString()}`;}return this._consume(qe.tokens.paren_right,'Expected \\')\\''),this._updateNode(new J(e.toString(),t))}_enable_directive(){const e=this._consume(qe.tokens.ident,'identity expected.');return this._updateNode(new Y(e.toString()))}_requires_directive(){const e=[this._consume(qe.tokens.ident,'identity expected.').toString()];for(;this._match(qe.tokens.comma);){const t=this._consume(qe.tokens.ident,'identity expected.');e.push(t.toString());}return this._updateNode(new K(e))}_type_alias(){const e=this._consume(qe.tokens.ident,'identity expected.');this._consume(qe.tokens.equal,'Expected \\'=\\' for type alias.');let t=this._type_decl();if(null===t)throw this._error(this._peek(),'Expected Type for Alias.');this._context.aliases.has(t.name)&&(t=this._context.aliases.get(t.name).type);const n=this._updateNode(new ee(e.toString(),t));return this._context.aliases.set(n.name,n),n}_type_decl(){if(this._check([qe.tokens.ident,...qe.texel_format,qe.keywords.bool,qe.keywords.f32,qe.keywords.i32,qe.keywords.u32])){const e=this._advance().toString();if(this._context.structs.has(e))return this._context.structs.get(e);if(this._context.aliases.has(e))return this._context.aliases.get(e).type;if(!this._getType(e)){const t=this._updateNode(new ae(e));return this._forwardTypeCount++,t}return this._updateNode(new re(e))}let e=this._texture_sampler_types();if(e)return e;if(this._check(qe.template_types)){let e=this._advance().toString(),t=null,n=null;this._match(qe.tokens.less_than)&&(t=this._type_decl(),n=null,this._match(qe.tokens.comma)&&(n=this._consume(qe.access_mode,'Expected access_mode for pointer').toString()),this._consume(qe.tokens.greater_than,'Expected \\'>\\' for type.'));return this._updateNode(new oe(e,t,n))}if(this._match(qe.keywords.ptr)){let e=this._previous().toString();this._consume(qe.tokens.less_than,'Expected \\'<\\' for pointer.');const t=this._consume(qe.storage_class,'Expected storage_class for pointer');this._consume(qe.tokens.comma,'Expected \\',\\' for pointer.');const n=this._type_decl();let s=null;this._match(qe.tokens.comma)&&(s=this._consume(qe.access_mode,'Expected access_mode for pointer').toString()),this._consume(qe.tokens.greater_than,'Expected \\'>\\' for pointer.');return this._updateNode(new le(e,t.toString(),n,s))}const t=this._attribute();if(this._match(qe.keywords.array)){let e=null,n=-1;const s=this._previous();let r=null;if(this._match(qe.tokens.less_than)){e=this._type_decl(),this._context.aliases.has(e.name)&&(e=this._context.aliases.get(e.name).type);let t='';if(this._match(qe.tokens.comma)){r=this._shift_expression();try{t=r.constEvaluate(this._exec).toString(),r=null;}catch(e){t='1';}}this._consume(qe.tokens.greater_than,'Expected \\'>\\' for array.'),n=t?parseInt(t):0;}const a=this._updateNode(new ce(s.toString(),t,e,n));return r&&this._deferArrayCountEval.push({arrayType:a,countNode:r}),a}return null}_texture_sampler_types(){if(this._match(qe.sampler_type))return this._updateNode(new ue(this._previous().toString(),null,null));if(this._match(qe.depth_texture_type))return this._updateNode(new ue(this._previous().toString(),null,null));if(this._match(qe.sampled_texture_type)||this._match(qe.multisampled_texture_type)){const e=this._previous();this._consume(qe.tokens.less_than,'Expected \\'<\\' for sampler type.');const t=this._type_decl();return this._consume(qe.tokens.greater_than,'Expected \\'>\\' for sampler type.'),this._updateNode(new ue(e.toString(),t,null))}if(this._match(qe.storage_texture_type)){const e=this._previous();this._consume(qe.tokens.less_than,'Expected \\'<\\' for sampler type.');const t=this._consume(qe.texel_format,'Invalid texel format.').toString();this._consume(qe.tokens.comma,'Expected \\',\\' after texel format.');const n=this._consume(qe.access_mode,'Expected access mode for storage texture type.').toString();return this._consume(qe.tokens.greater_than,'Expected \\'>\\' for sampler type.'),this._updateNode(new ue(e.toString(),t,n))}return null}_attribute(){let e=[];for(;this._match(qe.tokens.attr);){const t=this._consume(qe.attribute_name,'Expected attribute name'),n=this._updateNode(new Ce(t.toString(),null));if(this._match(qe.tokens.paren_left)){if(n.value=this._consume(qe.literal_or_ident,'Expected attribute value').toString(),this._check(qe.tokens.comma)){this._advance();do{const e=this._consume(qe.literal_or_ident,'Expected attribute value').toString();n.value instanceof Array||(n.value=[n.value]),n.value.push(e);}while(this._match(qe.tokens.comma))}this._consume(qe.tokens.paren_right,'Expected \\')\\'');}e.push(n);}return 0==e.length?null:e}}class _t extends rt{constructor(e){super(),e&&this.update(e);}update(e){const t=(new mt).parse(e);this.updateAST(t);}}\n\nfunction getEntryPointForStage(defs, stage, stageFlags) {\n const { entryPoint: entryPointName } = stage;\n if (entryPointName) {\n const ep = defs.entryPoints[entryPointName];\n return (ep && ep.stage === stageFlags) ? ep : undefined;\n }\n return Object.values(defs.entryPoints).filter(ep => ep.stage === stageFlags)[0];\n}\nfunction getStageResources(defs, stage, stageFlags) {\n if (!stage) {\n return [];\n }\n const entryPoint = getEntryPointForStage(defs, stage, stageFlags);\n return entryPoint?.resources || [];\n}\nconst byBinding = (a, b) => Math.sign(a.binding - b.binding);\n/**\n * Gets GPUBindGroupLayoutDescriptors for the given pipeline.\n *\n * Important: Assumes you pipeline is valid (it doesn't check for errors).\n *\n * Note: In WebGPU some layouts must be specified manually. For example an unfiltered-float\n * sampler can not be derived since it is unknown at compile time pipeline creation time\n * which texture you'll use.\n *\n * MAINTENANCE_TODO: Add example\n *\n * @param defs ShaderDataDefinitions or an array of ShaderDataDefinitions as\n * returned from {@link makeShaderDataDefinitions}. If an array more than 1\n * definition it's assumed the vertex shader is in the first and the fragment\n * shader in the second.\n * @param desc A PipelineDescriptor. You should be able to pass in the same object you passed\n * to `createRenderPipeline` or `createComputePipeline`.\n * @returns An array of GPUBindGroupLayoutDescriptors which you can pass, one at a time, to\n * `createBindGroupLayout`. Note: the array will be sparse if there are gaps in group\n * numbers. Note: Each GPUBindGroupLayoutDescriptor.entries will be sorted by binding.\n */\nfunction makeBindGroupLayoutDescriptors(defs, desc) {\n defs = Array.isArray(defs) ? defs : [defs];\n const resources = [\n ...getStageResources(defs[0], desc.vertex, GPUShaderStage.VERTEX),\n ...getStageResources(defs[defs.length - 1], desc.fragment, GPUShaderStage.FRAGMENT),\n ...getStageResources(defs[0], desc.compute, GPUShaderStage.COMPUTE),\n ];\n const bindGroupLayoutDescriptorsByGroupByBinding = [];\n for (const resource of resources) {\n const bindingsToBindGroupEntry = bindGroupLayoutDescriptorsByGroupByBinding[resource.group] || new Map();\n bindGroupLayoutDescriptorsByGroupByBinding[resource.group] = bindingsToBindGroupEntry;\n // Should we error here if the 2 don't match?\n const entry = bindingsToBindGroupEntry.get(resource.entry.binding);\n bindingsToBindGroupEntry.set(resource.entry.binding, {\n ...resource.entry,\n visibility: resource.entry.visibility | (entry?.visibility || 0),\n });\n }\n const descriptors = bindGroupLayoutDescriptorsByGroupByBinding.map(v => ({ entries: [...v.values()].sort(byBinding) }));\n for (let i = 0; i < descriptors.length; ++i) {\n if (!descriptors[i]) {\n descriptors[i] = { entries: [] };\n }\n }\n return descriptors;\n}\nfunction getNamedVariables(reflect, variables) {\n return Object.fromEntries(variables.map(v => {\n const typeDefinition = addVariableType(reflect, v, 0);\n return [\n v.name,\n {\n typeDefinition,\n group: v.group,\n binding: v.binding,\n size: typeDefinition.size,\n },\n ];\n }));\n}\nfunction makeStructDefinition(reflect, structInfo, offset) {\n // StructDefinition\n const fields = Object.fromEntries(structInfo.members.map(m => {\n return [\n m.name,\n {\n offset: m.offset,\n type: addType(reflect, m.type, 0),\n },\n ];\n }));\n return {\n fields,\n size: structInfo.size,\n offset,\n };\n}\nfunction getTextureSampleType(type) {\n if (type.name.includes('depth')) {\n return 'depth';\n }\n // unfiltered-float\n switch (type.format?.name) {\n case 'f32': return 'float';\n case 'i32': return 'sint';\n case 'u32': return 'uint';\n default:\n throw new Error('unknown texture sample type');\n }\n}\nfunction getViewDimension(type) {\n if (type.name.includes('2d_array')) {\n return '2d-array';\n }\n if (type.name.includes('cube_array')) {\n return 'cube-array';\n }\n if (type.name.includes('3d')) {\n return '3d';\n }\n if (type.name.includes('1d')) {\n return '1d';\n }\n if (type.name.includes('cube')) {\n return 'cube';\n }\n return '2d';\n}\nfunction getStorageTextureAccess(type) {\n switch (type.access) {\n case 'read': return 'read-only';\n case 'write': return 'write-only';\n case 'read_write': return 'read-write';\n default:\n throw new Error('unknonw storage texture access');\n }\n}\nfunction getSamplerType(type) {\n // \"non-filtering\" can only be specified manually.\n return type.name.endsWith('_comparison')\n ? 'comparison'\n : 'filtering';\n}\nfunction getBindGroupLayoutEntry(resource, visibility) {\n const { binding, access, type } = resource;\n switch (resource.resourceType) {\n case i.Uniform:\n return {\n binding,\n visibility,\n buffer: {\n ...(resource.size && { minBindingSize: resource.size }),\n },\n };\n case i.Storage:\n return {\n binding,\n visibility,\n buffer: {\n type: (access === '' || access === 'read') ? 'read-only-storage' : 'storage',\n ...(resource.size && { minBindingSize: resource.size }),\n },\n };\n case i.Texture: {\n if (type.name === 'texture_external') {\n return {\n binding,\n visibility,\n externalTexture: {},\n };\n }\n const multisampled = type.name.includes('multisampled');\n return {\n binding,\n visibility,\n texture: {\n sampleType: getTextureSampleType(type),\n viewDimension: getViewDimension(type),\n multisampled,\n },\n };\n }\n case i.Sampler:\n return {\n binding,\n visibility,\n sampler: {\n type: getSamplerType(type),\n },\n };\n case i.StorageTexture:\n return {\n binding,\n visibility,\n storageTexture: {\n access: getStorageTextureAccess(type),\n format: type.format.name,\n viewDimension: getViewDimension(type),\n },\n };\n default:\n throw new Error('unknown resource type');\n }\n}\nfunction addEntryPoints(funcInfos, stage) {\n const entryPoints = {};\n for (const info of funcInfos) {\n entryPoints[info.name] = {\n stage,\n resources: info.resources.map(resource => {\n const { name, group } = resource;\n return {\n name,\n group,\n entry: getBindGroupLayoutEntry(resource, stage),\n };\n }),\n };\n }\n return entryPoints;\n}\n/**\n * Given a WGSL shader, returns data definitions for structures,\n * uniforms, and storage buffers\n *\n * Example:\n *\n * ```js\n * const code = `\n * struct MyStruct {\n * color: vec4f,\n * brightness: f32,\n * kernel: array<f32, 9>,\n * };\n * @group(0) @binding(0) var<uniform> myUniforms: MyUniforms;\n * `;\n * const defs = makeShaderDataDefinitions(code);\n * const myUniformValues = makeStructuredView(defs.uniforms.myUniforms);\n *\n * myUniformValues.set({\n * color: [1, 0, 1, 1],\n * brightness: 0.8,\n * kernel: [\n * 1, 0, -1,\n * 2, 0, -2,\n * 1, 0, -1,\n * ],\n * });\n * device.queue.writeBuffer(uniformBuffer, 0, myUniformValues.arrayBuffer);\n * ```\n *\n * @param code WGSL shader. Note: it is not required for this to be a complete shader\n * @returns definitions of the structures by name. Useful for passing to {@link makeStructuredView}\n */\nfunction makeShaderDataDefinitions(code) {\n const reflect = new _t(code);\n const structs = Object.fromEntries(reflect.structs.map(structInfo => {\n return [structInfo.name, makeStructDefinition(reflect, structInfo, 0)];\n }));\n const uniforms = getNamedVariables(reflect, reflect.uniforms);\n const storages = getNamedVariables(reflect, reflect.storage.filter(v => v.resourceType === i.Storage));\n const storageTextures = getNamedVariables(reflect, reflect.storage.filter(v => v.resourceType === i.StorageTexture));\n const textures = getNamedVariables(reflect, reflect.textures.filter(v => v.type.name !== 'texture_external'));\n const externalTextures = getNamedVariables(reflect, reflect.textures.filter(v => v.type.name === 'texture_external'));\n const samplers = getNamedVariables(reflect, reflect.samplers);\n const entryPoints = {\n ...addEntryPoints(reflect.entry.vertex, GPUShaderStage.VERTEX),\n ...addEntryPoints(reflect.entry.fragment, GPUShaderStage.FRAGMENT),\n ...addEntryPoints(reflect.entry.compute, GPUShaderStage.COMPUTE),\n };\n return {\n externalTextures,\n samplers,\n structs,\n storages,\n storageTextures,\n textures,\n uniforms,\n entryPoints,\n };\n}\nfunction assert(cond, msg = '') {\n if (!cond) {\n throw new Error(msg);\n }\n}\n/*\n write down what I want for a given type\n\n struct VSUniforms {\n foo: u32,\n };\n @group(4) @binding(1) var<uniform> uni1: f32;\n @group(3) @binding(2) var<uniform> uni2: array<f32, 5>;\n @group(2) @binding(3) var<uniform> uni3: VSUniforms;\n @group(1) @binding(4) var<uniform> uni4: array<VSUniforms, 6>;\n\n uni1: {\n type: 'f32',\n numElements: undefined\n },\n uni2: {\n type: 'array',\n elementType: 'f32'\n numElements: 5,\n },\n uni3: {\n type: 'struct',\n fields: {\n foo: {\n type: 'f32',\n numElements: undefined\n }\n },\n },\n uni4: {\n type: 'array',\n elementType:\n fields: {\n foo: {\n type: 'f32',\n numElements: undefined\n }\n },\n fields: {\n foo: {\n type: 'f32',\n numElements: undefined\n }\n },\n ...\n ]\n\n */\nfunction addVariableType(reflect, v, offset) {\n switch (v.resourceType) {\n case i.Uniform:\n case i.Storage:\n case i.StorageTexture:\n return addType(reflect, v.type, offset);\n default:\n return {\n size: 0,\n type: v.type.name,\n };\n }\n}\nfunction addType(reflect, typeInfo, offset) {\n if (typeInfo.isArray) {\n assert(!typeInfo.isStruct, 'struct array is invalid');\n assert(!typeInfo.isStruct, 'template array is invalid');\n const arrayInfo = typeInfo;\n // ArrayDefinition\n return {\n size: arrayInfo.size,\n elementType: addType(reflect, arrayInfo.format, offset),\n numElements: arrayInfo.count,\n };\n }\n else if (typeInfo.isStruct) {\n assert(!typeInfo.isTemplate, 'template struct is invalid');\n const structInfo = typeInfo;\n return makeStructDefinition(reflect, structInfo, offset);\n }\n else {\n // template is like vec4<f32> or mat4x4<f16>\n const asTemplateInfo = typeInfo;\n const type = typeInfo.isTemplate\n ? `${asTemplateInfo.name}<${asTemplateInfo.format.name}>`\n : typeInfo.name;\n // IntrinsicDefinition\n return {\n size: typeInfo.size,\n type: type,\n };\n }\n}\n\nfunction guessTextureBindingViewDimensionForTexture(dimension, depthOrArrayLayers) {\n switch (dimension) {\n case '1d': return '1d';\n case '3d': return '3d';\n default: return depthOrArrayLayers > 1 ? '2d-array' : '2d';\n }\n}\nfunction normalizeGPUExtent3Dict(size) {\n return [size.width, size.height || 1, size.depthOrArrayLayers || 1];\n}\n/**\n * Converts a `GPUExtent3D` into an array of numbers\n *\n * `GPUExtent3D` has two forms `[width, height?, depth?]` or\n * `{width: number, height?: number, depthOrArrayLayers?: number}`\n *\n * You pass one of those in here and it returns an array of 3 numbers\n * so that your code doesn't have to deal with multiple forms.\n *\n * @param size\n * @returns an array of 3 numbers, [width, height, depthOrArrayLayers]\n */\nfunction normalizeGPUExtent3D(size) {\n return (Array.isArray(size) || isTypedArray(size))\n ? [...size, 1, 1].slice(0, 3)\n : normalizeGPUExtent3Dict(size);\n}\n/**\n * Given a GPUExtent3D returns the number of mip levels needed\n *\n * @param size\n * @returns number of mip levels needed for the given size\n */\nfunction numMipLevels(size, dimension) {\n const sizes = normalizeGPUExtent3D(size);\n const maxSize = Math.max(...sizes.slice(0, dimension === '3d' ? 3 : 2));\n return 1 + Math.log2(maxSize) | 0;\n}\n// Use a WeakMap so the device can be destroyed and/or lost\nconst byDevice = new WeakMap();\n/**\n * Generates mip levels from level 0 to the last mip for an existing texture\n *\n * The texture must have been created with TEXTURE_BINDING and RENDER_ATTACHMENT\n * and been created with mip levels\n *\n * @param device A GPUDevice\n * @param texture The texture to create mips for\n * @param textureBindingViewDimension This is only needed in compatibility mode\n * and it is only needed when the texture is going to be used as a cube map.\n */\nfunction generateMipmap(device, texture, textureBindingViewDimension) {\n let perDeviceInfo = byDevice.get(device);\n if (!perDeviceInfo) {\n perDeviceInfo = {\n pipelineByFormatAndViewDimension: {},\n moduleByViewDimension: {},\n };\n byDevice.set(device, perDeviceInfo);\n }\n let { sampler, module, } = perDeviceInfo;\n const { pipelineByFormatAndViewDimension, } = perDeviceInfo;\n textureBindingViewDimension = device.features.has('core-features-and-limits')\n ? '2d-array'\n : textureBindingViewDimension ?? guessTextureBindingViewDimensionForTexture(texture.dimension, texture.depthOrArrayLayers);\n if (!module) {\n module = device.createShaderModule({\n label: `mip level generation for ${textureBindingViewDimension}`,\n code: `\n const faceMat = array(\n mat3x3f( 0, 0, -2, 0, -2, 0, 1, 1, 1), // pos-x\n mat3x3f( 0, 0, 2, 0, -2, 0, -1, 1, -1), // neg-x\n mat3x3f( 2, 0, 0, 0, 0, 2, -1, 1, -1), // pos-y\n mat3x3f( 2, 0, 0, 0, 0, -2, -1, -1, 1), // neg-y\n mat3x3f( 2, 0, 0, 0, -2, 0, -1, 1, 1), // pos-z\n mat3x3f(-2, 0, 0, 0, -2, 0, 1, 1, -1)); // neg-z\n\n struct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) texcoord: vec2f,\n @location(1) @interpolate(flat, either) baseArrayLayer: u32,\n };\n\n @vertex fn vs(\n @builtin(vertex_index) vertexIndex : u32,\n @builtin(instance_index) baseArrayLayer: u32,\n ) -> VSOutput {\n var pos = array<vec2f, 3>(\n vec2f(-1.0, -1.0),\n vec2f(-1.0, 3.0),\n vec2f( 3.0, -1.0),\n );\n\n var vsOutput: VSOutput;\n let xy = pos[vertexIndex];\n vsOutput.position = vec4f(xy, 0.0, 1.0);\n vsOutput.texcoord = xy * vec2f(0.5, -0.5) + vec2f(0.5);\n vsOutput.baseArrayLayer = baseArrayLayer;\n return vsOutput;\n }\n\n @group(0) @binding(0) var ourSampler: sampler;\n\n @group(0) @binding(1) var ourTexture2d: texture_2d<f32>;\n @fragment fn fs2d(fsInput: VSOutput) -> @location(0) vec4f {\n return textureSample(ourTexture2d, ourSampler, fsInput.texcoord);\n }\n\n @group(0) @binding(1) var ourTexture2dArray: texture_2d_array<f32>;\n @fragment fn fs2darray(fsInput: VSOutput) -> @location(0) vec4f {\n return textureSample(\n ourTexture2dArray,\n ourSampler,\n fsInput.texcoord,\n fsInput.baseArrayLayer);\n }\n\n @group(0) @binding(1) var ourTextureCube: texture_cube<f32>;\n @fragment fn fscube(fsInput: VSOutput) -> @location(0) vec4f {\n return textureSample(\n ourTextureCube,\n ourSampler,\n faceMat[fsInput.baseArrayLayer] * vec3f(fract(fsInput.texcoord), 1));\n }\n\n @group(0) @binding(1) var ourTextureCubeArray: texture_cube_array<f32>;\n @fragment fn fscubearray(fsInput: VSOutput) -> @location(0) vec4f {\n return textureSample(\n ourTextureCubeArray,\n ourSampler,\n faceMat[fsInput.baseArrayLayer] * vec3f(fract(fsInput.texcoord), 1), fsInput.baseArrayLayer);\n }\n `,\n });\n sampler = device.createSampler({\n minFilter: 'linear',\n magFilter: 'linear',\n });\n Object.assign(perDeviceInfo, { sampler, module });\n }\n const id = `${texture.format}.${textureBindingViewDimension}`;\n if (!pipelineByFormatAndViewDimension[id]) {\n const entryPoint = `fs${textureBindingViewDimension.replace(/[\\W]/, '')}`;\n pipelineByFormatAndViewDimension[id] = device.createRenderPipeline({\n label: `mip level generator pipeline for ${textureBindingViewDimension}`,\n layout: 'auto',\n vertex: {\n module,\n },\n fragment: {\n module,\n entryPoint,\n targets: [{ format: texture.format }],\n },\n });\n }\n const pipeline = pipelineByFormatAndViewDimension[id];\n const encoder = device.createCommandEncoder({\n label: 'mip gen encoder',\n });\n for (let baseMipLevel = 1; baseMipLevel < texture.mipLevelCount; ++baseMipLevel) {\n for (let baseArrayLayer = 0; baseArrayLayer < texture.depthOrArrayLayers; ++baseArrayLayer) {\n const bindGroup = device.createBindGroup({\n layout: pipeline.getBindGroupLayout(0),\n entries: [\n { binding: 0, resource: sampler },\n {\n binding: 1,\n resource: texture.createView({\n dimension: textureBindingViewDimension,\n baseMipLevel: baseMipLevel - 1,\n mipLevelCount: 1,\n }),\n },\n ],\n });\n const renderPassDescriptor = {\n label: 'mip gen renderPass',\n colorAttachments: [\n {\n view: texture.createView({\n dimension: '2d',\n baseMipLevel,\n mipLevelCount: 1,\n baseArrayLayer,\n arrayLayerCount: 1,\n }),\n loadOp: 'clear',\n storeOp: 'store',\n },\n ],\n };\n const pass = encoder.beginRenderPass(renderPassDescriptor);\n pass.setPipeline(pipeline);\n pass.setBindGroup(0, bindGroup);\n pass.draw(3, 1, 0, baseArrayLayer);\n pass.end();\n }\n }\n const commandBuffer = encoder.finish();\n device.queue.submit([commandBuffer]);\n}\n\nconst kTypedArrayToAttribFormat = new Map([\n [Int8Array, { formats: ['sint8', 'snorm8'], defaultForType: 1 }],\n [Uint8Array, { formats: ['uint8', 'unorm8'], defaultForType: 1 }],\n [Int16Array, { formats: ['sint16', 'snorm16'], defaultForType: 1 }],\n [Uint16Array, { formats: ['uint16', 'unorm16'], defaultForType: 1 }],\n [Int32Array, { formats: ['sint32', 'snorm32'], defaultForType: 0 }],\n [Uint32Array, { formats: ['uint32', 'unorm32'], defaultForType: 0 }],\n [Float32Array, { formats: ['float32', 'float32'], defaultForType: 0 }],\n // TODO: Add Float16Array\n]);\nconst kVertexFormatPrefixToType = new Map([...kTypedArrayToAttribFormat.entries()].map(([Type, { formats: [s1, s2] }]) => [[s1, Type], [s2, Type]]).flat());\nfunction isIndices(name) {\n return name === \"indices\";\n}\nfunction makeTypedArrayFromArrayUnion(array, name) {\n if (isTypedArray(array)) {\n return array;\n }\n let asFullSpec = array;\n if (isTypedArray(asFullSpec.data)) {\n return asFullSpec.data;\n }\n if (Array.isArray(array) || typeof array === 'number') {\n asFullSpec = {\n data: array,\n };\n }\n let Type = asFullSpec.type;\n if (!Type) {\n if (isIndices(name)) {\n Type = Uint32Array;\n }\n else {\n Type = Float32Array;\n }\n }\n return new Type(asFullSpec.data); // ugh!\n}\nfunction getArray(array) {\n const arr = array.length ? array : array.data;\n return arr;\n}\nconst kNameToNumComponents = [\n { re: /coord|texture|uv/i, numComponents: 2 },\n { re: /color|colour/i, numComponents: 4 },\n];\nfunction guessNumComponentsFromNameImpl(name) {\n for (const { re, numComponents } of kNameToNumComponents) {\n if (re.test(name)) {\n return numComponents;\n }\n }\n return 3;\n}\nfunction guessNumComponentsFromName(name, length) {\n const numComponents = guessNumComponentsFromNameImpl(name);\n if (length % numComponents > 0) {\n throw new Error(`Can not guess numComponents for attribute '${name}'. Tried ${numComponents} but ${length} values is not evenly divisible by ${numComponents}. You should specify it.`);\n }\n return numComponents;\n}\nfunction getNumComponents(array, arrayName) {\n return array.numComponents || guessNumComponentsFromName(arrayName, getArray(array).length);\n}\nconst kVertexFormatRE = /(\\w+)(?:x(\\d))$/;\nfunction numComponentsAndTypeFromVertexFormat(format) {\n const m = kVertexFormatRE.exec(format);\n const [prefix, numComponents] = m ? [m[1], parseInt(m[2])] : [format, 1];\n return {\n Type: kVertexFormatPrefixToType.get(prefix),\n numComponents,\n };\n}\nfunction createTypedArrayOfSameType(typedArray, arrayBuffer) {\n const Ctor = Object.getPrototypeOf(typedArray).constructor;\n return new Ctor(arrayBuffer);\n}\n/**\n * Given a set of named arrays, generates an array `GPUBufferLayout`s\n *\n * Examples:\n *\n * ```js\n * const arrays = {\n * position: [1, 1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1, 1, 1, -1, -1, 1, -1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1],\n * normal: [1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1],\n * texcoord: [1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1],\n * };\n *\n * const { bufferLayouts, typedArrays } = createBufferLayoutsFromArrays(arrays);\n * ```\n *\n * results in `bufferLayouts` being\n *\n * ```js\n * [\n * {\n * stepMode: 'vertex',\n * arrayStride: 32,\n * attributes: [\n * { shaderLocation: 0, offset: 0, format: 'float32x3' },\n * { shaderLocation: 1, offset: 12, format: 'float32x3' },\n * { shaderLocation: 2, offset: 24, format: 'float32x2' },\n * ],\n * },\n * ]\n * ```\n *\n * and `typedArrays` being\n *\n * ```\n * [\n * someFloat32Array0,\n * someFloat32Array1,\n * someFloat32Array2,\n * ]\n * ```\n *\n * See {@link Arrays} for details on the various types of arrays.\n *\n * Note: If typed arrays are passed in the same typed arrays will come out (copies will not be made)\n */\nfunction createBufferLayoutsFromArrays(arrays, options = {}) {\n const interleave = options.interleave === undefined ? true : options.interleave;\n const stepMode = options.stepMode || 'vertex';\n const shaderLocations = options.shaderLocation\n ? (Array.isArray(options.shaderLocation) ? options.shaderLocation : [options.shaderLocation])\n : [0];\n let currentOffset = 0;\n const bufferLayouts = [];\n const attributes = [];\n const typedArrays = [];\n Object.keys(arrays)\n .filter(arrayName => !isIndices(arrayName))\n .forEach(arrayName => {\n const array = arrays[arrayName];\n const data = makeTypedArrayFromArrayUnion(array, arrayName);\n const totalNumComponents = getNumComponents(array, arrayName);\n // if totalNumComponents > 4 then we clearly need to split this into multiple\n // attributes\n // (a) <= 4 doesn't mean don't split and\n // (b) how to split? We could divide by 4 and if it's not even then divide by 3\n // as a guess?\n // 5 is error? or 1x4 + 1x1?\n // 6 is 2x3\n // 7 is error? or 1x4 + 1x3?\n // 8 is 2x4\n // 9 is 3x3\n // 10 is error? or 2x4 + 1x2?\n // 11 is error? or 2x4 + 1x3?\n // 12 is 3x4 or 4x3?\n // 13 is error? or 3x4 + 1x1 or 4x3 + 1x1?\n // 14 is error? or 3x4 + 1x2 or 4x3 + 1x2?\n // 15 is error? or 3x4 + 1x3 or 4x3 + 1x3?\n // 16 is 4x4\n const by4 = totalNumComponents / 4;\n const by3 = totalNumComponents / 3;\n const step = by4 % 1 === 0 ? 4 : (by3 % 1 === 0 ? 3 : 4);\n for (let component = 0; component < totalNumComponents; component += step) {\n const numComponents = Math.min(step, totalNumComponents - component);\n const offset = currentOffset;\n currentOffset += numComponents * data.BYTES_PER_ELEMENT;\n const { defaultForType, formats } = kTypedArrayToAttribFormat.get(Object.getPrototypeOf(data).constructor);\n const normalize = array.normalize;\n const formatNdx = typeof normalize === 'undefined' ? defaultForType : (normalize ? 1 : 0);\n const format = `${formats[formatNdx]}${numComponents > 1 ? `x${numComponents}` : ''}`;\n // TODO: cleanup with generator?\n const shaderLocation = shaderLocations.shift();\n if (shaderLocations.length === 0) {\n shaderLocations.push(shaderLocation + 1);\n }\n attributes.push({\n offset,\n format,\n shaderLocation,\n });\n typedArrays.push({\n data,\n offset: component,\n stride: totalNumComponents,\n });\n }\n if (!interleave) {\n bufferLayouts.push({\n stepMode,\n arrayStride: currentOffset,\n attributes: attributes.slice(),\n });\n currentOffset = 0;\n attributes.length = 0;\n }\n });\n if (attributes.length) {\n bufferLayouts.push({\n stepMode,\n arrayStride: currentOffset,\n attributes: attributes,\n });\n }\n return {\n bufferLayouts,\n typedArrays,\n };\n}\nfunction getTypedArrayWithOffsetAndStride(ta, numComponents) {\n return (isTypedArray(ta)\n ? { data: ta, offset: 0, stride: numComponents }\n : ta);\n}\n/**\n * Given an array of `GPUVertexAttribute`s and a corresponding array\n * of TypedArrays, interleaves the contents of the typed arrays\n * into the given ArrayBuffer\n *\n * example:\n *\n * ```js\n * const attributes: GPUVertexAttribute[] = [\n * { shaderLocation: 0, offset: 0, format: 'float32x3' },\n * { shaderLocation: 1, offset: 12, format: 'float32x3' },\n * { shaderLocation: 2, offset: 24, format: 'float32x2' },\n * ];\n * const typedArrays = [\n * new Float32Array([1, 1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1, 1, 1, -1, -1, 1, -1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1]),\n * new Float32Array([1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1]),\n * new Float32Array([1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1]),\n * ];\n * const arrayStride = (3 + 3 + 2) * 4; // pos + nrm + uv\n * const arrayBuffer = new ArrayBuffer(arrayStride * 24)\n * interleaveVertexData(attributes, typedArrays, arrayStride, arrayBuffer)\n * ```\n *\n * results in the contents of `arrayBuffer` to be the 3 TypedArrays interleaved\n *\n * See {@link Arrays} for details on the various types of arrays.\n *\n * Note: You can generate `attributes` and `typedArrays` above by calling\n * {@link createBufferLayoutsFromArrays}\n */\nfunction interleaveVertexData(attributes, typedArrays, arrayStride, arrayBuffer) {\n const views = new Map();\n const getView = (typedArray) => {\n const Ctor = Object.getPrototypeOf(typedArray).constructor;\n const view = views.get(Ctor);\n if (view) {\n return view;\n }\n const newView = new Ctor(arrayBuffer);\n views.set(Ctor, newView);\n return newView;\n };\n attributes.forEach((attribute, ndx) => {\n const { offset, format } = attribute;\n const { numComponents } = numComponentsAndTypeFromVertexFormat(format);\n const { data, offset: srcOffset, stride, } = getTypedArrayWithOffsetAndStride(typedArrays[ndx], numComponents);\n const view = getView(data);\n for (let i = 0; i < data.length; i += stride) {\n const ndx = i / stride;\n const dstOffset = (offset + ndx * arrayStride) / view.BYTES_PER_ELEMENT;\n const srcOff = i + srcOffset;\n const s = data.subarray(srcOff, srcOff + numComponents);\n view.set(s, dstOffset);\n }\n });\n}\n/**\n * Given arrays, create buffers, fills the buffers with data if provided, optionally\n * interleaves the data (the default).\n *\n * Example:\n *\n * ```js\n * const {\n * buffers,\n * bufferLayouts,\n * indexBuffer,\n * indexFormat,\n * numElements,\n * } = createBuffersAndAttributesFromArrays(device, {\n * position: [1, 1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1, -1, 1, -1, 1, 1, 1, 1, 1, 1, 1, -1, -1, 1, -1, -1, -1, -1, 1, -1, -1, 1, -1, 1, -1, -1, 1, 1, 1, 1, -1, 1, 1, -1, -1, 1, 1, -1, 1, -1, 1, -1, 1, 1, -1, 1, -1, -1, -1, -1, -1],\n * normal: [1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, 1, 0, 0, -1, 0, 0, -1, 0, 0, -1, 0, 0, -1],\n * texcoord: [1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1, 1, 0, 0, 0, 0, 1, 1, 1],\n * indices: [0, 1, 2, 0, 2, 3, 4, 5, 6, 4, 6, 7, 8, 9, 10, 8, 10, 11, 12, 13, 14, 12, 14, 15, 16, 17, 18, 16, 18, 19, 20, 21, 22, 20, 22, 23],\n * });\n * ```\n *\n * Where `bufferLayouts` will be\n *\n * ```js\n * [\n * {\n * stepMode: 'vertex',\n * arrayStride: 32,\n * attributes: [\n * { shaderLocation: 0, offset: 0, format: 'float32x3' },\n * { shaderLocation: 1, offset: 12, format: 'float32x3' },\n * { shaderLocation: 2, offset: 24, format: 'float32x2' },\n * ],\n * },\n * ]\n * ```\n *\n * * `buffers` will have one `GPUBuffer` of usage `GPUBufferUsage.VERTEX`\n * * `indexBuffer` will be `GPUBuffer` of usage `GPUBufferUsage.INDEX`\n * * `indexFormat` will be `uint32` (use a full spec or a typedarray of `Uint16Array` if you want 16bit indices)\n * * `numElements` will be 36 (this is either the number entries in the array named `indices` or if no\n * indices are provided then it's the length of the first array divided by numComponents. See {@link Arrays})\n *\n * See {@link Arrays} for details on the various types of arrays.\n * Also see the cube and instancing examples.\n */\nfunction createBuffersAndAttributesFromArrays(device, arrays, options = {}) {\n const usage = (options.usage || 0);\n const { bufferLayouts, typedArrays, } = createBufferLayoutsFromArrays(arrays, options);\n const buffers = [];\n let numElements = -1;\n let bufferNdx = 0;\n for (const { attributes, arrayStride } of bufferLayouts) {\n const attribs = attributes;\n const attrib0 = attribs[0];\n const { numComponents } = numComponentsAndTypeFromVertexFormat(attrib0.format);\n const { data: data0, stride, } = getTypedArrayWithOffsetAndStride(typedArrays[bufferNdx], numComponents);\n if (numElements < 0) {\n numElements = data0.length / stride;\n }\n const size = arrayStride * numElements;\n const buffer = device.createBuffer({\n usage: usage | GPUBufferUsage.VERTEX,\n size,\n mappedAtCreation: true,\n });\n const arrayBuffer = buffer.getMappedRange();\n if (attribs.length === 1 && arrayStride === data0.BYTES_PER_ELEMENT * numComponents) {\n const view = createTypedArrayOfSameType(data0, arrayBuffer);\n view.set(data0);\n }\n else {\n interleaveVertexData(attribs, typedArrays.slice(bufferNdx), arrayStride, arrayBuffer);\n }\n buffer.unmap();\n buffers.push(buffer);\n bufferNdx += attribs.length;\n }\n const buffersAndAttributes = {\n numElements,\n bufferLayouts,\n buffers,\n };\n const indicesEntry = Object.entries(arrays).find(([arrayName]) => isIndices(arrayName));\n if (indicesEntry) {\n const indices = makeTypedArrayFromArrayUnion(indicesEntry[1], 'indices');\n const indexBuffer = device.createBuffer({\n size: indices.byteLength,\n usage: GPUBufferUsage.INDEX | usage,\n mappedAtCreation: true,\n });\n const dst = createTypedArrayOfSameType(indices, indexBuffer.getMappedRange());\n dst.set(indices);\n indexBuffer.unmap();\n buffersAndAttributes.indexBuffer = indexBuffer;\n buffersAndAttributes.indexFormat = indices instanceof Uint16Array ? 'uint16' : 'uint32';\n buffersAndAttributes.numElements = indices.length;\n }\n return buffersAndAttributes;\n}\n/**\n * Calls `passEncoder.setVertexBuffer` and optionally `passEncoder.setIndexBuffer`\n * for the buffers specified in `buffersAndAttributes`.\n *\n * This is extremely simple function. It is equivalent to\n *\n * ```js\n * buffersAndAttributes.buffers.forEach((buffer, i) => {\n * passEncoder.setVertexBuffer(firstVertexBufferIndex + i, buffer);\n * });\n*\n * if (buffersAndAttributes.indexBuffer) {\n * passEncoder.setIndexBuffer(buffersAndAttributes.indexBuffer, buffersAndAttributes.indexFormat!);\n * }\n * ```\n *\n * It exists solely for simple cases. If you have a complex case, call the passEncoder\n * yourself as appropriate.\n *\n * @param passEncoder a render pass encoder\n * @param buffersAndAttributes As returned from {@link createBuffersAndAttributesFromArrays}\n * @param firstVertexBufferIndex The first vertex buffer index. default = 0.\n */\nfunction setVertexAndIndexBuffers(passEncoder, buffersAndAttributes, firstVertexBufferIndex = 0) {\n buffersAndAttributes.buffers.forEach((buffer, i) => {\n passEncoder.setVertexBuffer(firstVertexBufferIndex + i, buffer);\n });\n if (buffersAndAttributes.indexBuffer) {\n passEncoder.setIndexBuffer(buffersAndAttributes.indexBuffer, buffersAndAttributes.indexFormat);\n }\n}\n/**\n * Calls {@link setVertexAndIndexBuffers} and then calls either `draw` or `drawIndexed`\n *\n * This is an extremely simple function. See {@link setVertexAndIndexBuffers}.\n * If you need something more complex, call pass encoder functions yourself as appropriate.\n *\n * @param passEncoder a render pass encoder\n * @param buffersAndAttributes As returned from {@link createBuffersAndAttributesFromArrays}\n */\nfunction drawArrays(passEncoder, buffersAndAttributes) {\n setVertexAndIndexBuffers(passEncoder, buffersAndAttributes);\n if (buffersAndAttributes.indexBuffer) {\n passEncoder.drawIndexed(buffersAndAttributes.numElements);\n }\n else {\n passEncoder.draw(buffersAndAttributes.numElements);\n }\n}\n\nfunction isTextureData(source) {\n const src = source;\n return isTypedArray(src.data) || Array.isArray(src.data);\n}\nfunction isTextureRawDataSource(source) {\n return isTypedArray(source) || Array.isArray(source) || isTextureData(source);\n}\nfunction toTypedArray(v, format) {\n if (isTypedArray(v)) {\n return v;\n }\n const { Type } = getTextureFormatInfo(format);\n return new Type(v);\n}\nfunction guessDimensions(width, height, numElements, dimension = '2d') {\n if (numElements % 1 !== 0) {\n throw new Error(\"can't guess dimensions\");\n }\n if (!width && !height) {\n const size = Math.sqrt(numElements / (dimension === 'cube' ? 6 : 1));\n if (size % 1 === 0) {\n width = size;\n height = size;\n }\n else {\n width = numElements;\n height = 1;\n }\n }\n else if (!height) {\n height = numElements / width;\n if (height % 1) {\n throw new Error(\"can't guess dimensions\");\n }\n }\n else if (!width) {\n width = numElements / height;\n if (width % 1) {\n throw new Error(\"can't guess dimensions\");\n }\n }\n const depth = numElements / width / height;\n if (depth % 1) {\n throw new Error(\"can't guess dimensions\");\n }\n return [width, height, depth];\n}\nfunction textureViewDimensionToDimension(viewDimension) {\n switch (viewDimension) {\n case '1d': return '1d';\n case '3d': return '3d';\n default: return '2d';\n }\n}\nconst kFormatToTypedArray = {\n '8snorm': Int8Array,\n '8unorm': Uint8Array,\n '8sint': Int8Array,\n '8uint': Uint8Array,\n '16snorm': Int16Array,\n '16unorm': Uint16Array,\n '16sint': Int16Array,\n '16uint': Uint16Array,\n '32snorm': Int32Array,\n '32unorm': Uint32Array,\n '32sint': Int32Array,\n '32uint': Uint32Array,\n '16float': Uint16Array, // TODO: change to Float16Array\n '32float': Float32Array,\n};\nconst kTextureFormatRE = /([a-z]+)(\\d+)([a-z]+)/;\nfunction getTextureFormatInfo(format) {\n // this is a hack! It will only work for common formats\n const [, channels, bits, typeName] = kTextureFormatRE.exec(format);\n // TODO: if the regex fails, use table for other formats?\n const numChannels = channels.length;\n const bytesPerChannel = parseInt(bits) / 8;\n const bytesPerElement = numChannels * bytesPerChannel;\n const Type = kFormatToTypedArray[`${bits}${typeName}`];\n return {\n channels,\n numChannels,\n bytesPerChannel,\n bytesPerElement,\n Type,\n };\n}\n/**\n * Gets the size of a mipLevel. Returns an array of 3 numbers [width, height, depthOrArrayLayers]\n */\nfunction getSizeForMipFromTexture(texture, mipLevel) {\n return [\n texture.width,\n texture.height,\n texture.depthOrArrayLayers,\n ].map(v => Math.max(1, Math.floor(v / 2 ** mipLevel)));\n}\n/**\n * Uploads Data to a texture\n */\nfunction uploadDataToTexture(device, texture, source, options) {\n const data = toTypedArray(source.data || source, texture.format);\n const mipLevel = 0;\n const size = getSizeForMipFromTexture(texture, mipLevel);\n const { bytesPerElement } = getTextureFormatInfo(texture.format);\n const origin = options.origin || [0, 0, 0];\n device.queue.writeTexture({ texture, origin }, data, { bytesPerRow: bytesPerElement * size[0], rowsPerImage: size[1] }, size);\n}\n/**\n * Copies a an array of \"sources\" (Video, Canvas, OffscreenCanvas, ImageBitmap)\n * to a texture and then optionally generates mip levels\n */\nfunction copySourcesToTexture(device, texture, sources, options = {}) {\n let tempTexture;\n sources.forEach((source, layer) => {\n const origin = [0, 0, layer + (options.baseArrayLayer || 0)];\n if (isTextureRawDataSource(source)) {\n uploadDataToTexture(device, texture, source, { origin });\n }\n else {\n const s = source;\n // work around limit that you can't call copyExternalImageToTexture for 3d texture.\n // sse https://github.com/gpuweb/gpuweb/issues/4697 for if we can remove this\n let dstTexture = texture;\n let copyOrigin = origin;\n if (texture.dimension === '3d') {\n tempTexture = tempTexture ?? device.createTexture({\n format: texture.format,\n usage: texture.usage | GPUTextureUsage.COPY_SRC,\n size: [texture.width, texture.height, 1],\n });\n dstTexture = tempTexture;\n copyOrigin = [0, 0, 0];\n }\n const { flipY, premultipliedAlpha, colorSpace } = options;\n device.queue.copyExternalImageToTexture({ source: s, flipY, }, { texture: dstTexture, premultipliedAlpha, colorSpace, origin: copyOrigin }, getSizeFromSource(s, options));\n if (tempTexture) {\n const encoder = device.createCommandEncoder();\n encoder.copyTextureToTexture({ texture: tempTexture }, { texture, origin }, tempTexture);\n device.queue.submit([encoder.finish()]);\n }\n }\n });\n if (tempTexture) {\n tempTexture.destroy();\n }\n if (texture.mipLevelCount > 1) {\n const viewDimension = options.viewDimension ?? guessTextureBindingViewDimensionForTexture(texture.dimension, texture.depthOrArrayLayers);\n generateMipmap(device, texture, viewDimension);\n }\n}\n/**\n * Copies a \"source\" (Video, Canvas, OffscreenCanvas, ImageBitmap)\n * to a texture and then optionally generates mip levels\n */\nfunction copySourceToTexture(device, texture, source, options = {}) {\n copySourcesToTexture(device, texture, [source], options);\n}\n/**\n * Gets the size from a source. This is to smooth out the fact that different\n * sources have a different way to get their size.\n */\nfunction getSizeFromSource(source, options) {\n if ('videoWidth' in source && 'videoHeight' in source) {\n return [source.videoWidth, source.videoHeight, 1];\n }\n else {\n const maybeHasWidthAndHeight = source;\n const { width, height } = maybeHasWidthAndHeight;\n if (width > 0 && height > 0 && !isTextureRawDataSource(source)) {\n // this should cover Canvas, Image, ImageData, ImageBitmap, TextureCreationData\n return [width, height, 1];\n }\n const format = options.format || 'rgba8unorm';\n const { bytesPerElement, bytesPerChannel } = getTextureFormatInfo(format);\n const data = isTypedArray(source) || Array.isArray(source)\n ? source\n : source.data;\n const numBytes = isTypedArray(data)\n ? data.byteLength\n : (data.length * bytesPerChannel);\n const numElements = numBytes / bytesPerElement;\n return guessDimensions(width, height, numElements);\n }\n}\n/**\n * Create a texture from an array of sources (Video, Canvas, OffscreenCanvas, ImageBitmap)\n * and optionally create mip levels. If you set `mips: true` and don't set a mipLevelCount\n * then it will automatically make the correct number of mip levels.\n *\n * Example:\n *\n * ```js\n * const texture = createTextureFromSource(\n * device,\n * [\n * someCanvasOrVideoOrImageImageBitmap0,\n * someCanvasOrVideoOrImageImageBitmap1,\n * ],\n * {\n * usage: GPUTextureUsage.TEXTURE_BINDING |\n * GPUTextureUsage.RENDER_ATTACHMENT |\n * GPUTextureUsage.COPY_DST,\n * mips: true,\n * }\n * );\n * ```\n *\n * Note: If you are supporting compatibility mode you will need to pass in your\n * intended view dimension for cubemaps. Example:\n *\n * ```js\n * const texture = createTextureFromSource(\n * device,\n * [\n * someCanvasOrVideoOrImageImageBitmapPosX,\n * someCanvasOrVideoOrImageImageBitmapNegY,\n * someCanvasOrVideoOrImageImageBitmapPosY,\n * someCanvasOrVideoOrImageImageBitmapNegY,\n * someCanvasOrVideoOrImageImageBitmapPosZ,\n * someCanvasOrVideoOrImageImageBitmapNegZ,\n * ],\n * {\n * usage: GPUTextureUsage.TEXTURE_BINDING |\n * GPUTextureUsage.RENDER_ATTACHMENT |\n * GPUTextureUsage.COPY_DST,\n * mips: true,\n * viewDimension: 'cube', // <=- Required for compatibility mode\n * }\n * );\n * ```\n */\nfunction createTextureFromSources(device, sources, options = {}) {\n // NOTE: We assume all the sizes are the same. If they are not you'll get\n // an error.\n const size = getSizeFromSource(sources[0], options);\n size[2] = size[2] > 1 ? size[2] : sources.length;\n const viewDimension = options.viewDimension ?? guessTextureBindingViewDimensionForTexture(options.dimension, size[2]);\n const dimension = textureViewDimensionToDimension(viewDimension);\n const texture = device.createTexture({\n dimension,\n textureBindingViewDimension: viewDimension,\n format: options.format || 'rgba8unorm',\n mipLevelCount: options.mipLevelCount\n ? options.mipLevelCount\n : options.mips ? numMipLevels(size) : 1,\n size,\n usage: (options.usage ?? 0) |\n GPUTextureUsage.TEXTURE_BINDING |\n GPUTextureUsage.COPY_DST |\n GPUTextureUsage.RENDER_ATTACHMENT,\n });\n copySourcesToTexture(device, texture, sources, options);\n return texture;\n}\n/**\n * Create a texture from a source (Video, Canvas, OffscreenCanvas, ImageBitmap)\n * and optionally create mip levels. If you set `mips: true` and don't set a mipLevelCount\n * then it will automatically make the correct number of mip levels.\n *\n * Example:\n *\n * ```js\n * const texture = createTextureFromSource(\n * device,\n * someCanvasOrVideoOrImageImageBitmap,\n * {\n * usage: GPUTextureUsage.TEXTURE_BINDING |\n * GPUTextureUsage.RENDER_ATTACHMENT |\n * GPUTextureUsage.COPY_DST,\n * mips: true,\n * }\n * );\n * ```\n */\nfunction createTextureFromSource(device, source, options = {}) {\n return createTextureFromSources(device, [source], options);\n}\n/**\n * Load an ImageBitmap\n * @param url\n * @param options\n * @returns the loaded ImageBitmap\n */\nasync function loadImageBitmap(url, options = {}) {\n const res = await fetch(url);\n const blob = await res.blob();\n const opt = {\n ...options,\n ...(options.colorSpaceConversion !== undefined && { colorSpaceConversion: 'none' }),\n };\n return await createImageBitmap(blob, opt);\n}\n/**\n * Load images and create a texture from them, optionally generating mip levels\n *\n * Assumes all the urls reference images of the same size.\n *\n * Example:\n *\n * ```js\n * const texture = await createTextureFromImage(\n * device,\n * [\n * 'https://someimage1.url',\n * 'https://someimage2.url',\n * ],\n * {\n * mips: true,\n * flipY: true,\n * },\n * );\n * ```\n */\nasync function createTextureFromImages(device, urls, options = {}) {\n // TODO: start once we've loaded one?\n // We need at least 1 to know the size of the texture to create\n const imgBitmaps = await Promise.all(urls.map(url => loadImageBitmap(url)));\n return createTextureFromSources(device, imgBitmaps, options);\n}\n/**\n * Load an image and create a texture from it, optionally generating mip levels\n *\n * Example:\n *\n * ```js\n * const texture = await createTextureFromImage(device, 'https://someimage.url', {\n * mips: true,\n * flipY: true,\n * });\n * ```\n */\nasync function createTextureFromImage(device, url, options = {}) {\n return createTextureFromImages(device, [url], options);\n}\n\n/*\n * Copyright 2023 Gregg Tavares\n *\n * Permission is hereby granted, free of charge, to any person obtaining a\n * copy of this software and associated documentation files (the \"Software\"),\n * to deal in the Software without restriction, including without limitation\n * the rights to use, copy, modify, merge, publish, distribute, sublicense,\n * and/or sell copies of the Software, and to permit persons to whom the\n * Software is furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in\n * all copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL\n * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING\n * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER\n * DEALINGS IN THE SOFTWARE.\n */\n/**\n * A class to provide `push` on a typed array.\n *\n * example:\n *\n * ```js\n * const positions = new TypedArrayWrapper(new Float32Array(300), 3);\n * positions.push(1, 2, 3); // add a position\n * positions.push([4, 5, 6]); // add a position\n * positions.push(new Float32Array(6)); // add 2 positions\n * const data = positions.typedArray;\n * ```\n */\nclass TypedArrayWrapper {\n typedArray;\n cursor = 0;\n numComponents;\n constructor(arr, numComponents) {\n this.typedArray = arr;\n this.numComponents = numComponents;\n }\n get numElements() {\n return this.typedArray.length / this.numComponents;\n }\n push(...data) {\n for (const value of data) {\n if (Array.isArray(value) || isTypedArray(value)) {\n const asArray = data;\n this.typedArray.set(asArray, this.cursor);\n this.cursor += asArray.length;\n }\n else {\n this.typedArray[this.cursor++] = value;\n }\n }\n }\n reset(index = 0) {\n this.cursor = index;\n }\n}\n/**\n * creates a typed array with a `push` function attached\n * so that you can easily *push* values.\n *\n * `push` can take multiple arguments. If an argument is an array each element\n * of the array will be added to the typed array.\n *\n * Example:\n *\n * const array = createAugmentedTypedArray(3, 2, Float32Array);\n * array.push(1, 2, 3);\n * array.push([4, 5, 6]);\n * // array now contains [1, 2, 3, 4, 5, 6]\n *\n * Also has `numComponents` and `numElements` properties.\n *\n * @param numComponents number of components\n * @param numElements number of elements. The total size of the array will be `numComponents * numElements`.\n * @param Type A constructor for the type. Default = `Float32Array`.\n */\nfunction createAugmentedTypedArray(numComponents, numElements, Type) {\n return new TypedArrayWrapper(new Type(numComponents * numElements), numComponents);\n}\n// I couldn't figure out how to make this because TypedArrayWrapper wants a type\n// but this is explicity kind of type-less.\nfunction createAugmentedTypedArrayFromExisting(numComponents, numElements, existingArray) {\n const Ctor = existingArray.constructor;\n const array = new Ctor(numComponents * numElements);\n return new TypedArrayWrapper(array, numComponents);\n}\n/**\n * Creates XY quad vertices\n *\n * The default with no parameters will return a 2x2 quad with values from -1 to +1.\n * If you want a unit quad with that goes from 0 to 1 you'd call it with\n *\n * createXYQuadVertices(1, 0.5, 0.5);\n *\n * If you want a unit quad centered above 0,0 you'd call it with\n *\n * primitives.createXYQuadVertices(1, 0, 0.5);\n *\n * @param params\n * @param params.size the size across the quad. Defaults to 2 which means vertices will go from -1 to +1\n * @param params.xOffset the amount to offset the quad in X. Default = 0\n * @param params.yOffset the amount to offset the quad in Y. Default = 0\n * @return the created XY Quad vertices\n */\nfunction createXYQuadVertices({ size: inSize = 2, xOffset = 0, yOffset = 0 } = {}) {\n const size = inSize * 0.5;\n return {\n position: {\n numComponents: 2,\n data: [\n xOffset + -1 * size, yOffset + -1 * size,\n xOffset + 1 * size, yOffset + -1 * size,\n xOffset + -1 * size, yOffset + 1 * size,\n xOffset + 1 * size, yOffset + 1 * size,\n ],\n },\n normal: [\n 0, 0, 1,\n 0, 0, 1,\n 0, 0, 1,\n 0, 0, 1,\n ],\n texcoord: [\n 0, 0,\n 1, 0,\n 0, 1,\n 1, 1,\n ],\n indices: [0, 1, 2, 2, 1, 3],\n };\n}\n/**\n * Creates XZ plane vertices.\n *\n * The created plane has position, normal, and texcoord data\n *\n * @param params\n * @param params.width Width of the plane. Default = 1\n * @param params.depth Depth of the plane. Default = 1\n * @param params.subdivisionsWidth Number of steps across the plane. Default = 1\n * @param params.subdivisionsDepth Number of steps down the plane. Default = 1\n * @return The created plane vertices.\n */\nfunction createPlaneVertices({ width = 1, depth = 1, subdivisionsWidth = 1, subdivisionsDepth = 1, } = {}) {\n const numVertices = (subdivisionsWidth + 1) * (subdivisionsDepth + 1);\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n for (let z = 0; z <= subdivisionsDepth; z++) {\n for (let x = 0; x <= subdivisionsWidth; x++) {\n const u = x / subdivisionsWidth;\n const v = z / subdivisionsDepth;\n positions.push(width * u - width * 0.5, 0, depth * v - depth * 0.5);\n normals.push(0, 1, 0);\n texcoords.push(u, v);\n }\n }\n const numVertsAcross = subdivisionsWidth + 1;\n const indices = createAugmentedTypedArray(3, subdivisionsWidth * subdivisionsDepth * 2, Uint16Array);\n for (let z = 0; z < subdivisionsDepth; z++) { // eslint-disable-line\n for (let x = 0; x < subdivisionsWidth; x++) { // eslint-disable-line\n // Make triangle 1 of quad.\n indices.push((z + 0) * numVertsAcross + x, (z + 1) * numVertsAcross + x, (z + 0) * numVertsAcross + x + 1);\n // Make triangle 2 of quad.\n indices.push((z + 1) * numVertsAcross + x, (z + 1) * numVertsAcross + x + 1, (z + 0) * numVertsAcross + x + 1);\n }\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\n/**\n * Creates sphere vertices.\n *\n * The created sphere has position, normal, and texcoord data\n *\n * @param params\n * @param params.radius radius of the sphere. Default = 1\n * @param params.subdivisionsAxis number of steps around the sphere. Default = 24\n * @param params.subdivisionsHeight number of vertically on the sphere. Default = 12\n * @param params.startLatitudeInRadians where to start the\n * top of the sphere. Default = 0\n * @param params.endLatitudeInRadians Where to end the\n * bottom of the sphere. Default = π\n * @param params.startLongitudeInRadians where to start\n * wrapping the sphere. Default = 0\n * @param params.endLongitudeInRadians where to end\n * wrapping the sphere. Default = 2π\n * @return The created sphere vertices.\n */\nfunction createSphereVertices({ radius = 1, subdivisionsAxis = 24, subdivisionsHeight = 12, startLatitudeInRadians = 0, endLatitudeInRadians = Math.PI, startLongitudeInRadians = 0, endLongitudeInRadians = Math.PI * 2, } = {}) {\n if (subdivisionsAxis <= 0 || subdivisionsHeight <= 0) {\n throw new Error('subdivisionAxis and subdivisionHeight must be > 0');\n }\n const latRange = endLatitudeInRadians - startLatitudeInRadians;\n const longRange = endLongitudeInRadians - startLongitudeInRadians;\n // We are going to generate our sphere by iterating through its\n // spherical coordinates and generating 2 triangles for each quad on a\n // ring of the sphere.\n const numVertices = (subdivisionsAxis + 1) * (subdivisionsHeight + 1);\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n // Generate the individual vertices in our vertex buffer.\n for (let y = 0; y <= subdivisionsHeight; y++) {\n for (let x = 0; x <= subdivisionsAxis; x++) {\n // Generate a vertex based on its spherical coordinates\n const u = x / subdivisionsAxis;\n const v = y / subdivisionsHeight;\n const theta = longRange * u + startLongitudeInRadians;\n const phi = latRange * v + startLatitudeInRadians;\n const sinTheta = Math.sin(theta);\n const cosTheta = Math.cos(theta);\n const sinPhi = Math.sin(phi);\n const cosPhi = Math.cos(phi);\n const ux = cosTheta * sinPhi;\n const uy = cosPhi;\n const uz = sinTheta * sinPhi;\n positions.push(radius * ux, radius * uy, radius * uz);\n normals.push(ux, uy, uz);\n texcoords.push(1 - u, v);\n }\n }\n const numVertsAround = subdivisionsAxis + 1;\n const indices = createAugmentedTypedArray(3, subdivisionsAxis * subdivisionsHeight * 2, Uint16Array);\n for (let x = 0; x < subdivisionsAxis; x++) { // eslint-disable-line\n for (let y = 0; y < subdivisionsHeight; y++) { // eslint-disable-line\n // Make triangle 1 of quad.\n indices.push((y + 0) * numVertsAround + x, (y + 0) * numVertsAround + x + 1, (y + 1) * numVertsAround + x);\n // Make triangle 2 of quad.\n indices.push((y + 1) * numVertsAround + x, (y + 0) * numVertsAround + x + 1, (y + 1) * numVertsAround + x + 1);\n }\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\n/**\n * Array of the indices of corners of each face of a cube.\n */\nconst CUBE_FACE_INDICES = [\n [3, 7, 5, 1], // right\n [6, 2, 0, 4], // left\n [6, 7, 3, 2], // ??\n [0, 1, 5, 4], // ??\n [7, 6, 4, 5], // front\n [2, 3, 1, 0], // back\n];\n/**\n * Creates the vertices and indices for a cube.\n *\n * The cube is created around the origin. (-size / 2, size / 2).\n *\n * @param params\n * @param params.size width, height and depth of the cube. Default = 1\n * @return The created vertices.\n */\nfunction createCubeVertices({ size = 1 } = {}) {\n const k = size / 2;\n const cornerVertices = [\n [-k, -k, -k],\n [+k, -k, -k],\n [-k, +k, -k],\n [+k, +k, -k],\n [-k, -k, +k],\n [+k, -k, +k],\n [-k, +k, +k],\n [+k, +k, +k],\n ];\n const faceNormals = [\n [1, 0, 0],\n [-1, 0, 0],\n [0, 1, 0],\n [0, -1, 0],\n [0, 0, 1],\n [0, 0, -1],\n ];\n const uvCoords = [\n [1, 0],\n [0, 0],\n [0, 1],\n [1, 1],\n ];\n const numVertices = 6 * 4;\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n const indices = createAugmentedTypedArray(3, 6 * 2, Uint16Array);\n for (let f = 0; f < 6; ++f) {\n const faceIndices = CUBE_FACE_INDICES[f];\n for (let v = 0; v < 4; ++v) {\n const position = cornerVertices[faceIndices[v]];\n const normal = faceNormals[f];\n const uv = uvCoords[v];\n // Each face needs all four vertices because the normals and texture\n // coordinates are not all the same.\n positions.push(...position);\n normals.push(...normal);\n texcoords.push(...uv);\n }\n // Two triangles make a square face.\n const offset = 4 * f;\n indices.push(offset + 0, offset + 1, offset + 2);\n indices.push(offset + 0, offset + 2, offset + 3);\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\n/**\n * Creates vertices for a truncated cone, which is like a cylinder\n * except that it has different top and bottom radii. A truncated cone\n * can also be used to create cylinders and regular cones. The\n * truncated cone will be created centered about the origin, with the\n * y axis as its vertical axis. .\n *\n * @param params\n * @param params.bottomRadius Bottom radius of truncated cone. Default = 1\n * @param params.topRadius Top radius of truncated cone. Default = 0\n * @param params.height Height of truncated cone. Default = 1\n * @param params.radialSubdivisions The number of subdivisions around the\n * truncated cone. Default = 24\n * @param params.verticalSubdivisions The number of subdivisions down the\n * truncated cone. Default = 1\n * @param params.topCap Create top cap. Default = true.\n * @param params.bottomCap Create bottom cap. Default = true.\n * @return The created cone vertices.\n */\nfunction createTruncatedConeVertices({ bottomRadius = 1, topRadius = 0, height = 1, radialSubdivisions = 24, verticalSubdivisions = 1, topCap = true, bottomCap = true, } = {}) {\n if (radialSubdivisions < 3) {\n throw new Error('radialSubdivisions must be 3 or greater');\n }\n if (verticalSubdivisions < 1) {\n throw new Error('verticalSubdivisions must be 1 or greater');\n }\n const extra = (topCap ? 2 : 0) + (bottomCap ? 2 : 0);\n const numVertices = (radialSubdivisions + 1) * (verticalSubdivisions + 1 + extra);\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n const indices = createAugmentedTypedArray(3, radialSubdivisions * (verticalSubdivisions + extra / 2) * 2, Uint16Array);\n const vertsAroundEdge = radialSubdivisions + 1;\n // The slant of the cone is constant across its surface\n const slant = Math.atan2(bottomRadius - topRadius, height);\n const cosSlant = Math.cos(slant);\n const sinSlant = Math.sin(slant);\n const start = topCap ? -2 : 0;\n const end = verticalSubdivisions + (bottomCap ? 2 : 0);\n for (let yy = start; yy <= end; ++yy) {\n let v = yy / verticalSubdivisions;\n let y = height * v;\n let ringRadius;\n if (yy < 0) {\n y = 0;\n v = 1;\n ringRadius = bottomRadius;\n }\n else if (yy > verticalSubdivisions) {\n y = height;\n v = 1;\n ringRadius = topRadius;\n }\n else {\n ringRadius = bottomRadius +\n (topRadius - bottomRadius) * (yy / verticalSubdivisions);\n }\n if (yy === -2 || yy === verticalSubdivisions + 2) {\n ringRadius = 0;\n v = 0;\n }\n y -= height / 2;\n for (let ii = 0; ii < vertsAroundEdge; ++ii) {\n const sin = Math.sin(ii * Math.PI * 2 / radialSubdivisions);\n const cos = Math.cos(ii * Math.PI * 2 / radialSubdivisions);\n positions.push(sin * ringRadius, y, cos * ringRadius);\n if (yy < 0) {\n normals.push(0, -1, 0);\n }\n else if (yy > verticalSubdivisions) {\n normals.push(0, 1, 0);\n }\n else if (ringRadius === 0.0) {\n normals.push(0, 0, 0);\n }\n else {\n normals.push(sin * cosSlant, sinSlant, cos * cosSlant);\n }\n texcoords.push((ii / radialSubdivisions), 1 - v);\n }\n }\n for (let yy = 0; yy < verticalSubdivisions + extra; ++yy) { // eslint-disable-line\n if (yy === 1 && topCap || yy === verticalSubdivisions + extra - 2 && bottomCap) {\n continue;\n }\n for (let ii = 0; ii < radialSubdivisions; ++ii) { // eslint-disable-line\n indices.push(vertsAroundEdge * (yy + 0) + 0 + ii, vertsAroundEdge * (yy + 0) + 1 + ii, vertsAroundEdge * (yy + 1) + 1 + ii);\n indices.push(vertsAroundEdge * (yy + 0) + 0 + ii, vertsAroundEdge * (yy + 1) + 1 + ii, vertsAroundEdge * (yy + 1) + 0 + ii);\n }\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\n/**\n * Expands RLE data\n * @param rleData data in format of run-length, x, y, z, run-length, x, y, z\n * @param padding value to add each entry with.\n * @return the expanded rleData\n */\nfunction expandRLEData(rleData, padding = []) {\n padding = padding || [];\n const data = [];\n for (let ii = 0; ii < rleData.length; ii += 4) {\n const runLength = rleData[ii];\n const element = rleData.slice(ii + 1, ii + 4);\n element.push(...padding);\n for (let jj = 0; jj < runLength; ++jj) {\n data.push(...element);\n }\n }\n return data;\n}\n/**\n * Creates 3D 'F' vertices.\n * An 'F' is useful because you can easily tell which way it is oriented.\n * The created 'F' has position, normal, texcoord, and color arrays.\n *\n * @return The created vertices.\n */\nfunction create3DFVertices() {\n const positions = [\n // left column front\n 0, 0, 0,\n 0, 150, 0,\n 30, 0, 0,\n 0, 150, 0,\n 30, 150, 0,\n 30, 0, 0,\n // top rung front\n 30, 0, 0,\n 30, 30, 0,\n 100, 0, 0,\n 30, 30, 0,\n 100, 30, 0,\n 100, 0, 0,\n // middle rung front\n 30, 60, 0,\n 30, 90, 0,\n 67, 60, 0,\n 30, 90, 0,\n 67, 90, 0,\n 67, 60, 0,\n // left column back\n 0, 0, 30,\n 30, 0, 30,\n 0, 150, 30,\n 0, 150, 30,\n 30, 0, 30,\n 30, 150, 30,\n // top rung back\n 30, 0, 30,\n 100, 0, 30,\n 30, 30, 30,\n 30, 30, 30,\n 100, 0, 30,\n 100, 30, 30,\n // middle rung back\n 30, 60, 30,\n 67, 60, 30,\n 30, 90, 30,\n 30, 90, 30,\n 67, 60, 30,\n 67, 90, 30,\n // top\n 0, 0, 0,\n 100, 0, 0,\n 100, 0, 30,\n 0, 0, 0,\n 100, 0, 30,\n 0, 0, 30,\n // top rung front\n 100, 0, 0,\n 100, 30, 0,\n 100, 30, 30,\n 100, 0, 0,\n 100, 30, 30,\n 100, 0, 30,\n // under top rung\n 30, 30, 0,\n 30, 30, 30,\n 100, 30, 30,\n 30, 30, 0,\n 100, 30, 30,\n 100, 30, 0,\n // between top rung and middle\n 30, 30, 0,\n 30, 60, 30,\n 30, 30, 30,\n 30, 30, 0,\n 30, 60, 0,\n 30, 60, 30,\n // top of middle rung\n 30, 60, 0,\n 67, 60, 30,\n 30, 60, 30,\n 30, 60, 0,\n 67, 60, 0,\n 67, 60, 30,\n // front of middle rung\n 67, 60, 0,\n 67, 90, 30,\n 67, 60, 30,\n 67, 60, 0,\n 67, 90, 0,\n 67, 90, 30,\n // bottom of middle rung.\n 30, 90, 0,\n 30, 90, 30,\n 67, 90, 30,\n 30, 90, 0,\n 67, 90, 30,\n 67, 90, 0,\n // front of bottom\n 30, 90, 0,\n 30, 150, 30,\n 30, 90, 30,\n 30, 90, 0,\n 30, 150, 0,\n 30, 150, 30,\n // bottom\n 0, 150, 0,\n 0, 150, 30,\n 30, 150, 30,\n 0, 150, 0,\n 30, 150, 30,\n 30, 150, 0,\n // left side\n 0, 0, 0,\n 0, 0, 30,\n 0, 150, 30,\n 0, 0, 0,\n 0, 150, 30,\n 0, 150, 0,\n ];\n const texcoords = [\n // left column front\n 0.22, 0.19,\n 0.22, 0.79,\n 0.34, 0.19,\n 0.22, 0.79,\n 0.34, 0.79,\n 0.34, 0.19,\n // top rung front\n 0.34, 0.19,\n 0.34, 0.31,\n 0.62, 0.19,\n 0.34, 0.31,\n 0.62, 0.31,\n 0.62, 0.19,\n // middle rung front\n 0.34, 0.43,\n 0.34, 0.55,\n 0.49, 0.43,\n 0.34, 0.55,\n 0.49, 0.55,\n 0.49, 0.43,\n // left column back\n 0, 0,\n 1, 0,\n 0, 1,\n 0, 1,\n 1, 0,\n 1, 1,\n // top rung back\n 0, 0,\n 1, 0,\n 0, 1,\n 0, 1,\n 1, 0,\n 1, 1,\n // middle rung back\n 0, 0,\n 1, 0,\n 0, 1,\n 0, 1,\n 1, 0,\n 1, 1,\n // top\n 0, 0,\n 1, 0,\n 1, 1,\n 0, 0,\n 1, 1,\n 0, 1,\n // top rung front\n 0, 0,\n 1, 0,\n 1, 1,\n 0, 0,\n 1, 1,\n 0, 1,\n // under top rung\n 0, 0,\n 0, 1,\n 1, 1,\n 0, 0,\n 1, 1,\n 1, 0,\n // between top rung and middle\n 0, 0,\n 1, 1,\n 0, 1,\n 0, 0,\n 1, 0,\n 1, 1,\n // top of middle rung\n 0, 0,\n 1, 1,\n 0, 1,\n 0, 0,\n 1, 0,\n 1, 1,\n // front of middle rung\n 0, 0,\n 1, 1,\n 0, 1,\n 0, 0,\n 1, 0,\n 1, 1,\n // bottom of middle rung.\n 0, 0,\n 0, 1,\n 1, 1,\n 0, 0,\n 1, 1,\n 1, 0,\n // front of bottom\n 0, 0,\n 1, 1,\n 0, 1,\n 0, 0,\n 1, 0,\n 1, 1,\n // bottom\n 0, 0,\n 0, 1,\n 1, 1,\n 0, 0,\n 1, 1,\n 1, 0,\n // left side\n 0, 0,\n 0, 1,\n 1, 1,\n 0, 0,\n 1, 1,\n 1, 0,\n ];\n const normals = expandRLEData([\n // left column front\n // top rung front\n // middle rung front\n 18, 0, 0, 1,\n // left column back\n // top rung back\n // middle rung back\n 18, 0, 0, -1,\n // top\n 6, 0, 1, 0,\n // top rung front\n 6, 1, 0, 0,\n // under top rung\n 6, 0, -1, 0,\n // between top rung and middle\n 6, 1, 0, 0,\n // top of middle rung\n 6, 0, 1, 0,\n // front of middle rung\n 6, 1, 0, 0,\n // bottom of middle rung.\n 6, 0, -1, 0,\n // front of bottom\n 6, 1, 0, 0,\n // bottom\n 6, 0, -1, 0,\n // left side\n 6, -1, 0, 0,\n ]);\n const colors = expandRLEData([\n // left column front\n // top rung front\n // middle rung front\n 18, 200, 70, 120,\n // left column back\n // top rung back\n // middle rung back\n 18, 80, 70, 200,\n // top\n 6, 70, 200, 210,\n // top rung front\n 6, 200, 200, 70,\n // under top rung\n 6, 210, 100, 70,\n // between top rung and middle\n 6, 210, 160, 70,\n // top of middle rung\n 6, 70, 180, 210,\n // front of middle rung\n 6, 100, 70, 210,\n // bottom of middle rung.\n 6, 76, 210, 100,\n // front of bottom\n 6, 140, 210, 80,\n // bottom\n 6, 90, 130, 110,\n // left side\n 6, 160, 160, 220,\n ], [255]);\n const numVerts = positions.length / 3;\n const arrays = {\n position: createAugmentedTypedArray(3, numVerts, Float32Array),\n texcoord: createAugmentedTypedArray(2, numVerts, Float32Array),\n normal: createAugmentedTypedArray(3, numVerts, Float32Array),\n color: createAugmentedTypedArray(4, numVerts, Uint8Array),\n indices: createAugmentedTypedArray(3, numVerts / 3, Uint16Array),\n };\n arrays.position.push(positions);\n arrays.texcoord.push(texcoords);\n arrays.normal.push(normals);\n arrays.color.push(colors);\n for (let ii = 0; ii < numVerts; ++ii) {\n arrays.indices.push(ii);\n }\n return Object.fromEntries(Object.entries(arrays).map(([k, v]) => [k, v.typedArray]));\n}\n/**\n * Creates cylinder vertices. The cylinder will be created around the origin\n * along the y-axis.\n *\n * @param params\n * @param params.radius Radius of cylinder. Default = 1\n * @param params.height Height of cylinder. Default = 1\n * @param params.radialSubdivisions The number of subdivisions around the cylinder. Default = 24\n * @param params.verticalSubdivisions The number of subdivisions down the cylinder. Default = 1\n * @param params.topCap Create top cap. Default = true.\n * @param params.bottomCap Create bottom cap. Default = true.\n * @return The created vertices.\n */\nfunction createCylinderVertices({ radius = 1, height = 1, radialSubdivisions = 24, verticalSubdivisions = 1, topCap = true, bottomCap = true, } = {}) {\n return createTruncatedConeVertices({\n bottomRadius: radius,\n topRadius: radius,\n height,\n radialSubdivisions,\n verticalSubdivisions,\n topCap,\n bottomCap,\n });\n}\n/**\n * Creates vertices for a torus\n *\n * @param params\n * @param params.radius radius of center of torus circle. Default = 1\n * @param params.thickness radius of torus ring. Default = 0.24\n * @param params.radialSubdivisions The number of subdivisions around the torus. Default = 24\n * @param params.bodySubdivisions The number of subdivisions around the body torus. Default = 12\n * @param params.startAngle start angle in radians. Default = 0.\n * @param params.endAngle end angle in radians. Default = Math.PI * 2.\n * @return The created vertices.\n */\nfunction createTorusVertices({ radius = 1, thickness = 0.24, radialSubdivisions = 24, bodySubdivisions = 12, startAngle = 0, endAngle = Math.PI * 2, } = {}) {\n if (radialSubdivisions < 3) {\n throw new Error('radialSubdivisions must be 3 or greater');\n }\n if (bodySubdivisions < 3) {\n throw new Error('verticalSubdivisions must be 3 or greater');\n }\n const range = endAngle - startAngle;\n const radialParts = radialSubdivisions + 1;\n const bodyParts = bodySubdivisions + 1;\n const numVertices = radialParts * bodyParts;\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n const indices = createAugmentedTypedArray(3, (radialSubdivisions) * (bodySubdivisions) * 2, Uint16Array);\n for (let slice = 0; slice < bodyParts; ++slice) {\n const v = slice / bodySubdivisions;\n const sliceAngle = v * Math.PI * 2;\n const sliceSin = Math.sin(sliceAngle);\n const ringRadius = radius + sliceSin * thickness;\n const ny = Math.cos(sliceAngle);\n const y = ny * thickness;\n for (let ring = 0; ring < radialParts; ++ring) {\n const u = ring / radialSubdivisions;\n const ringAngle = startAngle + u * range;\n const xSin = Math.sin(ringAngle);\n const zCos = Math.cos(ringAngle);\n const x = xSin * ringRadius;\n const z = zCos * ringRadius;\n const nx = xSin * sliceSin;\n const nz = zCos * sliceSin;\n positions.push(x, y, z);\n normals.push(nx, ny, nz);\n texcoords.push(u, 1 - v);\n }\n }\n for (let slice = 0; slice < bodySubdivisions; ++slice) { // eslint-disable-line\n for (let ring = 0; ring < radialSubdivisions; ++ring) { // eslint-disable-line\n const nextRingIndex = 1 + ring;\n const nextSliceIndex = 1 + slice;\n indices.push(radialParts * slice + ring, radialParts * nextSliceIndex + ring, radialParts * slice + nextRingIndex);\n indices.push(radialParts * nextSliceIndex + ring, radialParts * nextSliceIndex + nextRingIndex, radialParts * slice + nextRingIndex);\n }\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\n/**\n * Creates disc vertices. The disc will be in the xz plane, centered at\n * the origin. When creating, at least 3 divisions, or pie\n * pieces, need to be specified, otherwise the triangles making\n * up the disc will be degenerate. You can also specify the\n * number of radial pieces `stacks`. A value of 1 for\n * stacks will give you a simple disc of pie pieces. If you\n * want to create an annulus you can set `innerRadius` to a\n * value > 0. Finally, `stackPower` allows you to have the widths\n * increase or decrease as you move away from the center. This\n * is particularly useful when using the disc as a ground plane\n * with a fixed camera such that you don't need the resolution\n * of small triangles near the perimeter. For example, a value\n * of 2 will produce stacks whose outside radius increases with\n * the square of the stack index. A value of 1 will give uniform\n * stacks.\n *\n * @param params\n * @param params.radius Radius of the ground plane. Default = 1\n * @param params.divisions Number of triangles in the ground plane (at least 3). Default = 24\n * @param params.stacks Number of radial divisions. Default = 1\n * @param params.innerRadius Default = 0\n * @param params.stackPower Power to raise stack size to for decreasing width. Default = 1\n * @return The created vertices.\n */\nfunction createDiscVertices({ radius = 1, divisions = 24, stacks = 1, innerRadius = 0, stackPower = 1, } = {}) {\n if (divisions < 3) {\n throw new Error('divisions must be at least 3');\n }\n // Note: We don't share the center vertex because that would\n // mess up texture coordinates.\n const numVertices = (divisions + 1) * (stacks + 1);\n const positions = createAugmentedTypedArray(3, numVertices, Float32Array);\n const normals = createAugmentedTypedArray(3, numVertices, Float32Array);\n const texcoords = createAugmentedTypedArray(2, numVertices, Float32Array);\n const indices = createAugmentedTypedArray(3, stacks * divisions * 2, Uint16Array);\n let firstIndex = 0;\n const radiusSpan = radius - innerRadius;\n const pointsPerStack = divisions + 1;\n // Build the disk one stack at a time.\n for (let stack = 0; stack <= stacks; ++stack) {\n const stackRadius = innerRadius + radiusSpan * Math.pow(stack / stacks, stackPower);\n for (let i = 0; i <= divisions; ++i) {\n const theta = 2.0 * Math.PI * i / divisions;\n const x = stackRadius * Math.cos(theta);\n const z = stackRadius * Math.sin(theta);\n positions.push(x, 0, z);\n normals.push(0, 1, 0);\n texcoords.push(1 - (i / divisions), stack / stacks);\n if (stack > 0 && i !== divisions) {\n // a, b, c and d are the indices of the vertices of a quad. unless\n // the current stack is the one closest to the center, in which case\n // the vertices a and b connect to the center vertex.\n const a = firstIndex + (i + 1);\n const b = firstIndex + i;\n const c = firstIndex + i - pointsPerStack;\n const d = firstIndex + (i + 1) - pointsPerStack;\n // Make a quad of the vertices a, b, c, d.\n indices.push(a, b, c);\n indices.push(a, c, d);\n }\n }\n firstIndex += divisions + 1;\n }\n return {\n position: positions.typedArray,\n normal: normals.typedArray,\n texcoord: texcoords.typedArray,\n indices: indices.typedArray,\n };\n}\nfunction allButIndices(name) {\n return name !== \"indices\";\n}\n/**\n * Given indexed vertices creates a new set of vertices un-indexed by expanding the vertices by index.\n */\nfunction deindex(arrays) {\n const indicesP = arrays.indices;\n const newVertices = {};\n const indices = makeTypedArrayFromArrayUnion(indicesP, 'indices');\n const numElements = indices.length;\n function expandToUnindexed(channel) {\n const srcBuffer = makeTypedArrayFromArrayUnion(arrays[channel], channel);\n const numComponents = getNumComponents(srcBuffer, channel);\n const dstBuffer = createAugmentedTypedArrayFromExisting(numComponents, numElements, srcBuffer);\n for (let ii = 0; ii < numElements; ++ii) {\n const ndx = indices[ii];\n const offset = ndx * numComponents;\n for (let jj = 0; jj < numComponents; ++jj) {\n dstBuffer.push(srcBuffer[offset + jj]);\n }\n }\n newVertices[channel] = dstBuffer.typedArray;\n }\n Object.keys(arrays).filter(allButIndices).forEach(expandToUnindexed);\n return newVertices;\n}\n// I don't want to pull in a whole math library\nconst normalize = ([x, y, z]) => {\n const len = x * x + y * y + z * z;\n return new Float32Array([x / len, y / len, z / len]);\n};\nconst subtract = (a, b) => {\n const r = new Float32Array(a.length);\n for (let i = 0; i < a.length; ++i) {\n r[i] = a[i] - b[i];\n }\n return r;\n};\nconst cross = (a, b) => {\n const r = new Float32Array(a.length);\n r[0] = a[1] * b[2] - a[2] * b[1];\n r[1] = a[2] * b[0] - a[0] * b[2];\n r[2] = a[0] * b[1] - a[1] * b[0];\n return r;\n};\n/**\n * Generate triangle normals from positions.\n * Assumes every 3 values is a position and every 3 positions come from the same triangle\n */\nfunction generateTriangleNormals(positions) {\n const normals = new Float32Array(positions.length);\n for (let ii = 0; ii < positions.length; ii += 9) {\n // pull out the 3 positions for this triangle\n const p0 = positions.subarray(ii, ii + 3);\n const p1 = positions.subarray(ii + 3, ii + 6);\n const p2 = positions.subarray(ii + 6, ii + 9);\n const n0 = normalize(subtract(p0, p1));\n const n1 = normalize(subtract(p0, p2));\n const n = cross(n0, n1);\n // copy them back in\n normals.set(n, ii);\n normals.set(n, ii + 3);\n normals.set(n, ii + 6);\n }\n return normals;\n}\n\nvar primitives = {\n __proto__: null,\n TypedArrayWrapper: TypedArrayWrapper,\n create3DFVertices: create3DFVertices,\n createCubeVertices: createCubeVertices,\n createCylinderVertices: createCylinderVertices,\n createDiscVertices: createDiscVertices,\n createPlaneVertices: createPlaneVertices,\n createSphereVertices: createSphereVertices,\n createTorusVertices: createTorusVertices,\n createTruncatedConeVertices: createTruncatedConeVertices,\n createXYQuadVertices: createXYQuadVertices,\n deindex: deindex,\n generateTriangleNormals: generateTriangleNormals\n};\n\nexport { TypedArrayViewGenerator, copySourceToTexture, copySourcesToTexture, createBufferLayoutsFromArrays, createBuffersAndAttributesFromArrays, createTextureFromImage, createTextureFromImages, createTextureFromSource, createTextureFromSources, drawArrays, generateMipmap, getNumComponents, getSizeAndAlignmentOfUnsizedArrayElement, getSizeForMipFromTexture, getSizeFromSource, guessTextureBindingViewDimensionForTexture, interleaveVertexData, isTypedArray, loadImageBitmap, makeBindGroupLayoutDescriptors, makeShaderDataDefinitions, makeStructuredView, makeTypedArrayFromArrayUnion, makeTypedArrayViews, normalizeGPUExtent3D, numMipLevels, primitives, setIntrinsicsToView, setStructuredValues, setStructuredView, setTypedValues, setVertexAndIndexBuffers, subarray };\n//# sourceMappingURL=webgpu-utils.module.js.map\n",
@@ -27,10 +27,10 @@
27
27
  "import { type Mat3, mat3, vec2 } from \"wgpu-matrix\";\nimport type { Point } from \"../coreTypes/Point\";\nimport type { Size } from \"../coreTypes/Size\";\nimport type { Transform } from \"../coreTypes/Transform\";\nimport type { Vec2 } from \"../coreTypes/Vec2\";\nimport { deg2rad, rad2deg } from \"../math/angle\";\nimport { createModelMatrix } from \"../math/matrix\";\nimport type { RenderComponent } from \"./RenderComponent\";\n\n/**\n * A node in the scene graph.\n *\n * This is a base class and is fairly low level. You will probably want to interact with\n * the wrapper classes {@link Toodle['Node']} or {@link Toodle['Quad']} instead.\n */\nexport class SceneNode {\n static nextId = 1;\n\n id: number;\n label?: string;\n\n #isActive = true;\n #layer: null | number = null;\n #parent: SceneNode | null = null;\n #key: string | null = null;\n #kids: SceneNode[] = [];\n #transform: Transform;\n #matrix: Mat3 = mat3.identity();\n #renderComponent: RenderComponent | null = null;\n #size: Size | null = null;\n #positionProxy: Point;\n #scaleProxy: Vec2;\n\n #cache: RenderLayoutCache | null = null;\n\n constructor(opts?: NodeOptions) {\n this.id = opts?.id ?? SceneNode.nextId++;\n\n if (opts?.rotation && opts?.rotationRadians) {\n throw new Error(\n `Cannot set both rotation and rotationRadians for node ${opts?.label ?? this.id}`,\n );\n }\n\n this.#transform = {\n position: opts?.position ?? { x: 0, y: 0 },\n scale: { x: 1, y: 1 },\n size: opts?.size ?? { width: 1, height: 1 },\n rotation: opts?.rotationRadians ?? 0,\n };\n if (opts?.scale) this.scale = opts.scale;\n if (opts?.rotation) this.rotation = opts.rotation;\n\n this.#matrix = mat3.identity();\n this.#renderComponent = opts?.render ?? null;\n this.#layer = opts?.layer ?? null;\n this.#isActive = opts?.isActive ?? true;\n this.label = opts?.label ?? undefined;\n this.#size = opts?.size ?? null;\n this.#key = opts?.key ?? null;\n\n for (const kid of opts?.kids ?? []) {\n this.add(kid);\n }\n\n const self = this;\n this.#positionProxy = {\n get x() {\n return self.#transform.position.x;\n },\n set x(value: number) {\n self.#transform.position.x = value;\n self.setDirty();\n },\n get y() {\n return self.#transform.position.y;\n },\n set y(value: number) {\n self.#transform.position.y = value;\n self.setDirty();\n },\n };\n\n this.#scaleProxy = {\n get x() {\n return self.#transform.scale.x;\n },\n set x(value: number) {\n self.#transform.scale.x = value;\n self.setDirty();\n },\n get y() {\n return self.#transform.scale.y;\n },\n set y(value: number) {\n self.#transform.scale.y = value;\n self.setDirty();\n },\n };\n }\n\n /**\n * Add a child node and return the child node with this node set as its parent.\n */\n add<T extends SceneNode>(kid: T, index?: number) {\n kid.#parent = this;\n if (index === undefined) {\n this.#kids.push(kid);\n } else {\n this.#kids.splice(index, 0, kid);\n }\n kid.setDirty();\n return kid;\n }\n\n /**\n * Returns an array of the node's immediate kids.\n *\n * Note that these will be returned with a `SceneNode` type, but can be narrowed if you know the type of them,\n * for eg:\n *\n * ```ts\n * for (const kid of node.kids) {\n * if (kid instanceof Scene.QuadNode) {\n * console.log(kid.color)\n * }\n *\n * if (kid instanceof Text.TextNode) {\n * console.log(kid.text)\n * }\n * }\n * ```\n */\n get kids() {\n return this.#kids;\n }\n\n /**\n * The children of the node. Alias for {@link SceneNode.kids}.\n */\n get children() {\n return this.#kids;\n }\n\n /**\n * Returns a reference to the node's transform.\n *\n * Do not edit this transform directly as it won't invalidate cache's correctly.\n * Instead, use convenience properties {@link SceneNode.position}, {@link SceneNode.scale}, and {@link SceneNode.rotation}.\n */\n get transform(): Transform {\n return this.#transform;\n }\n\n /**\n * Returns the key of the node as set when the node was created.\n *\n * This key can be used to reference the node from an external lookup system.\n */\n get key() {\n return this.#key ?? \"\";\n }\n\n /**\n * Returns the parent node. See https://toodle.gg/f849595b3ed13fc956fc1459a5cb5f0228f9d259/examples/transforms.html\n */\n get parent() {\n return this.#parent;\n }\n\n set position(value: Point) {\n this.#transform.position = value;\n this.setDirty();\n }\n\n /**\n * Position of the node in local space. For world space, use {@link SceneNode.bounds}.\n */\n get position() {\n return this.#positionProxy;\n }\n\n set x(value: number) {\n this.#transform.position.x = value;\n this.setDirty();\n }\n\n /**\n * The local x coordinate of the node.\n */\n get x() {\n return this.#transform.position.x;\n }\n\n set y(value: number) {\n this.#transform.position.y = value;\n this.setDirty();\n }\n\n /**\n * The local y coordinate of the node.\n */\n get y() {\n return this.#transform.position.y;\n }\n\n set rotation(value: number) {\n this.#transform.rotation = deg2rad(value);\n this.setDirty();\n }\n\n /**\n * The rotation of the node in degrees.\n * For radians, see {@link SceneNode.rotationRadians}.\n */\n get rotation() {\n return rad2deg(this.#transform.rotation);\n }\n\n /**\n * The rotation of the node in radians.\n * For degrees, see {@link SceneNode.rotation}.\n */\n get rotationRadians() {\n return this.#transform.rotation;\n }\n\n set rotationRadians(value: number) {\n this.#transform.rotation = value;\n this.setDirty();\n }\n\n /**\n * The scale of the node. See https://toodle.gg/f849595b3ed13fc956fc1459a5cb5f0228f9d259/examples/quad-size-scale.html\n */\n get scale(): Vec2 {\n return this.#scaleProxy;\n }\n\n set scale(value: Vec2 | number) {\n if (typeof value === \"number\") {\n this.#transform.scale = { x: value, y: value };\n } else {\n this.#transform.scale = value;\n }\n this.setDirty();\n }\n\n /**\n * The size of the node. See https://toodle.gg/f849595b3ed13fc956fc1459a5cb5f0228f9d259/examples/quad-size-scale.html\n */\n set size(value: Size | null) {\n this.#size = value;\n this.setDirty();\n }\n\n get size() {\n return this.#size;\n }\n\n /**\n * The aspect ratio of the node.\n * If the node has no defined size, the aspect ratio will be 1.\n */\n get aspectRatio() {\n if (!this.#size) {\n console.warn(\n \"Attempted to get aspect ratio of a node with no ideal size\",\n );\n return 1;\n }\n return this.#size.width / this.#size.height;\n }\n\n /**\n * isActive is a boolean that determines if the node is active.\n * If a node is not active, it will not be drawn.\n * If any of a node's ancestors are not active, the node will not be active.\n */\n get isActive() {\n if (!this.#cache?.isActive) {\n this.#cache ??= {};\n\n let parent = this as SceneNode;\n let isActive = this.#isActive;\n while (isActive && parent.#parent) {\n parent = parent.#parent;\n isActive = isActive && parent.#isActive;\n }\n this.#cache.isActive = isActive;\n }\n return this.#cache.isActive;\n }\n\n set isActive(value: boolean) {\n this.#isActive = value;\n this.setDirty();\n }\n\n /**\n * Nodes are batched for drawing based on their layer. Each layer will submit a separate draw call.\n * Nodes with the same layer will be drawn in the order they are drawn with toodle.Draw\n * Nodes with a higher layer will be drawn on top of nodes with a lower layer.\n */\n get layer() {\n if (this.#layer != null) {\n return this.#layer;\n }\n\n if (!this.#cache?.layer) {\n this.#cache ??= {};\n\n let parent = this as SceneNode;\n while (parent.#parent) {\n parent = parent.#parent;\n if (parent.hasExplicitLayer) {\n this.#cache.layer = parent.#layer!;\n return this.#cache.layer;\n }\n }\n\n this.#cache.layer = 0;\n }\n\n return this.#cache.layer;\n }\n\n /**\n * Returns true if the node has an explicit layer set.\n *\n * If the node does not have an explicit layer but one of its ancestors does,\n * its layer will be inherited from its parent.\n */\n get hasExplicitLayer() {\n return this.#layer != null;\n }\n\n set layer(value: number) {\n this.#layer = value;\n this.setDirty();\n }\n\n get renderComponent() {\n return this.#renderComponent;\n }\n\n /**\n * This is the model matrix of the node. See https://webgpufundamentals.org/webgpu/lessons/webgpu-matrix-math.html for more information.\n *\n * Do not edit this matrix directly as it is derived from the node's transform and will be overwritten.\n */\n get matrix(): Float32Array {\n if (!this.#cache?.matrix) {\n this.#cache ??= {};\n\n if (this.#parent) {\n mat3.clone(this.#parent.matrix, this.#matrix);\n } else {\n mat3.identity(this.#matrix);\n }\n this.#cache.matrix = createModelMatrix(this.transform, this.#matrix);\n }\n return this.#cache.matrix;\n }\n\n /**\n * Get the bounds of the node in world space\n */\n get bounds(): Bounds {\n if (!this.#cache?.bounds) {\n this.#cache ??= {};\n\n const height = this.size?.height ?? 0;\n const width = this.size?.width ?? 0;\n\n // we don't need to add the node's position to the points\n // because the points are relative to the node's center\n // and the matrix already applies the node's position\n const corners = [\n vec2.transformMat3([-width / 2, height / 2], this.matrix),\n vec2.transformMat3([width / 2, height / 2], this.matrix),\n vec2.transformMat3([-width / 2, -height / 2], this.matrix),\n vec2.transformMat3([width / 2, -height / 2], this.matrix),\n ];\n const center = vec2.transformMat3([0, 0], this.matrix);\n\n const xValues = corners.map((c) => c[0]);\n const yValues = corners.map((c) => c[1]);\n\n this.#cache.bounds = {\n x: center[0],\n y: center[1],\n left: Math.min(xValues[0], xValues[1], xValues[2], xValues[3]),\n right: Math.max(xValues[0], xValues[1], xValues[2], xValues[3]),\n top: Math.max(yValues[0], yValues[1], yValues[2], yValues[3]),\n bottom: Math.min(yValues[0], yValues[1], yValues[2], yValues[3]),\n };\n }\n return this.#cache.bounds;\n }\n\n /**\n * Set the bounds of the node in world space.\n */\n setBounds(bounds: Partial<Bounds>) {\n if (bounds.left !== undefined) this.left = bounds.left;\n if (bounds.right !== undefined) this.right = bounds.right;\n if (bounds.top !== undefined) this.top = bounds.top;\n if (bounds.bottom !== undefined) this.bottom = bounds.bottom;\n if (bounds.x !== undefined) this.centerX = bounds.x;\n if (bounds.y !== undefined) this.centerY = bounds.y;\n\n return this;\n }\n\n /**\n * Set the left edge of the node in world space.\n */\n set left(value: number) {\n this.#adjustWorldPosition([value - this.bounds.left, 0]);\n }\n\n /**\n * Set the bottom edge of the node in world space.\n */\n set bottom(value: number) {\n this.#adjustWorldPosition([0, value - this.bounds.bottom]);\n }\n\n /**\n * Set the top edge of the node in world space.\n */\n set top(value: number) {\n this.#adjustWorldPosition([0, value - this.bounds.top]);\n }\n\n /**\n * Set the right edge of the node in world space.\n */\n set right(value: number) {\n this.#adjustWorldPosition([value - this.bounds.right, 0]);\n }\n\n /**\n * Set the center x of the node in world space.\n */\n set centerX(value: number) {\n this.#adjustWorldPosition([value - this.bounds.x, 0]);\n }\n\n /**\n * Set the center y of the node in world space.\n */\n set centerY(value: number) {\n this.#adjustWorldPosition([0, value - this.bounds.y]);\n }\n\n /**\n * Removes references to this node and all of its children.\n *\n * Call this to remove a node from a parent's tree and before garbage collection to prevent a node from being retained.\n *\n * @example\n *\n * const parent = toodle.Node();\n * const child = toodle.Quad();\n * const grandchild = toodle.Quad();\n *\n * parent.add(child);\n * child.add(grandchild);\n *\n * // Will delete `child` and `grandchild`\n * child.delete();\n */\n delete() {\n this.#parent?.remove(this);\n for (const child of this.#kids) {\n child.delete();\n }\n this.#kids = [];\n this.#isActive = false;\n this.#layer = null;\n this.#renderComponent = null;\n }\n\n /**\n * Remove any child node from this node. Warns if the child is not found.\n *\n * The node will still exist as an orphaned node and can still be passed to toodle.Draw or added to another parent.\n *\n * Alternatively, calling `node.delete()` on the child will remove it and set it to inactive.\n *\n * @example\n * const parent = toodle.Node();\n * const child = toodle.Quad();\n * const grandchild = toodle.Quad();\n *\n * parent.add(child);\n * child.add(grandchild);\n *\n * parent.remove(child);\n */\n remove(kid: SceneNode) {\n const childIndex = this.#kids.findIndex((child) => child.id === kid.id);\n if (childIndex <= -1) {\n throw new Error(\n `${kid.label ?? kid.id} is not a child of ${this.label ?? this.id}`,\n );\n }\n this.#kids.splice(childIndex, 1);\n kid.#parent = null;\n kid.setDirty();\n }\n\n #adjustWorldPosition(delta: [number, number]) {\n const inverseMatrix = mat3.inverse(this.#parent?.matrix ?? mat3.identity());\n\n // zero out the translation part of the matrix since we're transforming a delta\n // and not a point in space\n inverseMatrix[8] = inverseMatrix[9] = 0;\n\n const localDelta = vec2.transformMat3(delta, inverseMatrix);\n\n this.#transform.position.x += localDelta[0];\n this.#transform.position.y += localDelta[1];\n\n this.setDirty();\n }\n\n /**\n * This marks the node as dirty, invalidating its cache and causing its matrix to be recalculated.\n * This should not be necessary to call directly, but is available for advanced use cases.\n */\n setDirty() {\n this.#cache = null;\n this.#kids.forEach((kid) => kid.setDirty());\n }\n\n /**\n * Parse a node and its descendants from a JSON string.\n * Can be used for deserialization from a file or other source.\n *\n * @example\n *\n * const node = new Node();\n * const json = JSON.stringify(node);\n * const clonedNode = Node.parse(json);\n */\n static parse(json: string) {\n const obj = JSON.parse(json, reviver);\n return new SceneNode(obj);\n }\n\n /**\n * This method usually is not called directly. It will be called automatically by `JSON.stringify`,\n * see: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/JSON/stringify#description\n * and {@link SceneNode.parse}.\n *\n * @example\n *\n * const node = new Node();\n * const json = JSON.stringify(node); // calls toJSON()\n * console.log(json)\n */\n toJSON() {\n return {\n id: this.id,\n label: this.label,\n transform: this.#transform,\n layer: this.#layer,\n isActive: this.#isActive,\n kids: this.#kids,\n render: this.#renderComponent,\n };\n }\n}\n\nexport type NodeOptions = {\n /** The unique identifier for the node. */\n id?: number;\n /** The label for the node. */\n label?: string;\n /** The layer for the node. */\n layer?: number;\n /** The rotation for the node in degrees. Cannot be used with `rotationRadians`. */\n rotation?: number;\n /** The rotation for the node in radians. Cannot be used with `rotation`. */\n rotationRadians?: number;\n /** The position for the node. */\n position?: Point;\n /** The scale for the node. */\n scale?: Vec2 | number;\n /** The desired size for the node. */\n size?: Size;\n /** The active state for the node. */\n isActive?: boolean;\n /** The kids for the node. */\n kids?: SceneNode[];\n /** The render component for the node. */\n render?: RenderComponent;\n /** Flip the node horizontally. */\n flipX?: boolean;\n /** Flip the node vertically. */\n flipY?: boolean;\n /** A string key for the node - can be used to reference the node from an external lookup system */\n key?: string;\n};\n\nfunction reviver(key: string, value: any) {\n if (key === \"kids\") {\n return value.map((kid: any) => new SceneNode(kid));\n }\n\n if (Array.isArray(value) && value.every((v) => typeof v === \"number\")) {\n if (value.length === 2) {\n return value as [number, number];\n }\n if (value.length === 3) {\n return value as [number, number, number];\n }\n if (value.length === 4) {\n return value as [number, number, number, number];\n }\n }\n return value;\n}\n\ntype RenderLayoutCache = {\n layer?: number;\n isActive?: boolean;\n matrix?: Mat3;\n bounds?: Bounds;\n};\n\n/**\n * Bounds represent a bounding box of a rectangle in world space\n */\nexport type Bounds = {\n /**\n * for an axis-aligned rectangle, top is the top edge.\n * for a rotated rectangle, it is the topmost point\n */\n top: number;\n /**\n * for an axis-aligned rectangle, left is the left edge.\n * for a rotated rectangle, it is the leftmost point\n */\n left: number;\n /**\n * for an axis-aligned rectangle, right is the right edge.\n * for a rotated rectangle, it is the rightmost point\n */\n right: number;\n /**\n * for an axis-aligned rectangle, bottom is the bottom edge.\n * for a rotated rectangle, it is the bottommost point\n */\n bottom: number;\n /**\n * the center x of the node in world space\n */\n x: number;\n /**\n * the center y of the node in world space\n */\n y: number;\n};\n",
28
28
  "import type { ITextShader } from \"../backends/ITextShader\";\nimport type { Color } from \"../coreTypes/Color\";\nimport type { MsdfFont } from \"../text/MsdfFont\";\nimport { measureText } from \"../text/shaping\";\nimport type { TextFormatting } from \"../text/TextFormatting\";\nimport { type NodeOptions, SceneNode } from \"./SceneNode\";\n\nexport const DEFAULT_FONT_SIZE = 14;\n\nexport class TextNode extends SceneNode {\n #text: string;\n #formatting: TextFormatting;\n #font: MsdfFont;\n\n constructor(shader: ITextShader, text: string, opts: TextOptions = {}) {\n const { width, height } = measureText(shader.font, text, opts.wordWrap);\n\n if (text.length > shader.maxCharCount) {\n throw new Error(\n `Text: ${text} exceeds ${shader.maxCharCount} characters. Try using fewer characters or increase the limit in Toodle.attach.`,\n );\n }\n\n const em2px = shader.font.lineHeight / (opts.fontSize ?? DEFAULT_FONT_SIZE);\n\n if (!opts.shrinkToFit && !opts.size) {\n opts.size = { width: width / em2px, height: height / em2px };\n }\n\n super({\n ...opts,\n render: {\n shader,\n writeInstance: (_node, _array, _offset) => {\n throw new Error(\n \"not implemented - needs access to text uniform buffer, dimensions and a model matrix\",\n );\n },\n },\n });\n\n this.#font = shader.font;\n this.#text = text;\n this.#formatting = opts;\n }\n\n get text() {\n return this.#text;\n }\n\n get formatting() {\n return this.#formatting;\n }\n\n get font() {\n return this.#font;\n }\n\n set text(text: string) {\n if (!text) {\n throw new Error(\"text cannot be empty\");\n }\n this.#text = text;\n this.setDirty();\n }\n\n get tint() {\n return this.#formatting.color || { r: 1, g: 1, b: 1, a: 1 };\n }\n\n set tint(tint: Color) {\n this.#formatting.color = tint;\n this.setDirty();\n }\n\n set formatting(formatting: TextFormatting) {\n this.#formatting = formatting;\n this.setDirty();\n }\n}\n\nexport type TextOptions = Omit<NodeOptions, \"render\"> & TextFormatting;\n",
29
29
  "/**\n * GLSL ES 3.0 port of the WGSL text shader for MSDF font rendering.\n *\n * Key differences from WebGPU version:\n * - Uses texelFetch() to read from data textures instead of storage buffers\n * - Character metrics stored in RGBA32F texture (8 floats per char = 2 texels)\n * - Per-glyph positions stored in RGBA32F texture (vec4: xy = pos, z = charIndex)\n * - Each TextNode is rendered separately with uniforms (no firstInstance)\n */\n\nexport const vertexShader = /*glsl*/ `#version 300 es\nprecision highp float;\n\n// Engine uniforms\nuniform mat3 u_viewProjection;\n\n// Per-text-block uniforms\nuniform mat3 u_textTransform;\nuniform vec4 u_textColor;\nuniform float u_fontSize;\nuniform float u_blockWidth;\nuniform float u_blockHeight;\nuniform float u_lineHeight;\n\n// Character data texture (RGBA32F, 2 texels per character)\n// Texel 0: texOffset.xy, texExtent.xy\n// Texel 1: size.xy, offset.xy\nuniform sampler2D u_charData;\n\n// Text buffer texture (RGBA32F, 1 texel per glyph)\n// Each texel: xy = glyph position, z = char index\nuniform sampler2D u_textBuffer;\n\n// Outputs to fragment shader\nout vec2 v_texcoord;\n\n// Quad vertex positions for a character (matches WGSL)\nconst vec2 pos[4] = vec2[4](\n vec2(0.0, -1.0),\n vec2(1.0, -1.0),\n vec2(0.0, 0.0),\n vec2(1.0, 0.0)\n);\n\nvoid main() {\n // gl_VertexID gives us 0-3 for the quad vertices\n // gl_InstanceID gives us which glyph we're rendering\n int vertexIndex = gl_VertexID;\n int glyphIndex = gl_InstanceID;\n\n // Fetch glyph data from text buffer texture\n vec4 glyphData = texelFetch(u_textBuffer, ivec2(glyphIndex, 0), 0);\n vec2 glyphPos = glyphData.xy;\n int charIndex = int(glyphData.z);\n\n // Fetch character metrics (2 texels per char)\n // Texel 0: texOffset.x, texOffset.y, texExtent.x, texExtent.y\n // Texel 1: size.x, size.y, offset.x, offset.y\n vec4 charData0 = texelFetch(u_charData, ivec2(charIndex * 2, 0), 0);\n vec4 charData1 = texelFetch(u_charData, ivec2(charIndex * 2 + 1, 0), 0);\n\n vec2 texOffset = charData0.xy;\n vec2 texExtent = charData0.zw;\n vec2 charSize = charData1.xy;\n vec2 charOffset = charData1.zw;\n\n // Center text vertically; origin is mid-height\n vec2 offset = vec2(0.0, -u_blockHeight / 2.0);\n\n // Glyph position in ems (quad pos * size + per-char offset)\n vec2 emPos = pos[vertexIndex] * charSize + charOffset + glyphPos - offset;\n vec2 charPos = emPos * (u_fontSize / u_lineHeight);\n\n // Transform position through model and view-projection matrices\n vec3 worldPos = u_textTransform * vec3(charPos, 1.0);\n vec3 clipPos = u_viewProjection * worldPos;\n\n gl_Position = vec4(clipPos.xy, 0.0, 1.0);\n\n // Calculate texture coordinates\n v_texcoord = pos[vertexIndex] * vec2(1.0, -1.0);\n v_texcoord *= texExtent;\n v_texcoord += texOffset;\n}\n`;\n\nexport const fragmentShader = /*glsl*/ `#version 300 es\nprecision highp float;\n\n// Font texture (MSDF atlas)\nuniform sampler2D u_fontTexture;\n\n// Text color\nuniform vec4 u_textColor;\n\n// Input from vertex shader\nin vec2 v_texcoord;\n\n// Output color\nout vec4 fragColor;\n\n// Signed distance function sampling for MSDF font rendering\n// Median of three: max(min(r,g), min(max(r,g), b))\nfloat sampleMsdf(vec2 texcoord) {\n vec4 c = texture(u_fontTexture, texcoord);\n return max(min(c.r, c.g), min(max(c.r, c.g), c.b));\n}\n\nvoid main() {\n // pxRange (AKA distanceRange) comes from the msdfgen tool\n float pxRange = 4.0;\n vec2 texSize = vec2(textureSize(u_fontTexture, 0));\n\n // Anti-aliasing technique by Paul Houx\n // https://github.com/Chlumsky/msdfgen/issues/22#issuecomment-234958005\n float dx = texSize.x * length(vec2(dFdx(v_texcoord.x), dFdy(v_texcoord.x)));\n float dy = texSize.y * length(vec2(dFdx(v_texcoord.y), dFdy(v_texcoord.y)));\n\n float toPixels = pxRange * inversesqrt(dx * dx + dy * dy);\n float sigDist = sampleMsdf(v_texcoord) - 0.5;\n float pxDist = sigDist * toPixels;\n\n float edgeWidth = 0.5;\n float alpha = smoothstep(-edgeWidth, edgeWidth, pxDist);\n\n if (alpha < 0.001) {\n discard;\n }\n\n fragColor = vec4(u_textColor.rgb, u_textColor.a * alpha);\n}\n`;\n",
30
- "import type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { DEFAULT_FONT_SIZE, TextNode } from \"../../scene/TextNode\";\nimport type { MsdfFont } from \"../../text/MsdfFont\";\nimport {\n findLargestFontSize,\n measureText,\n shapeText,\n} from \"../../text/shaping\";\nimport { assert } from \"../../utils/assert\";\nimport type { ITextShader } from \"../ITextShader\";\nimport { fragmentShader, vertexShader } from \"./glsl/text.glsl\";\nimport type { WebGLBackend } from \"./WebGLBackend\";\nimport type { WebGLFontPipeline } from \"./WebGLFontPipeline\";\n\n/**\n * WebGL 2 text shader for MSDF font rendering.\n *\n * Unlike WebGPU which batches all text into storage buffers, WebGL renders\n * each TextNode separately since WebGL2 doesn't support firstInstance.\n */\nexport class WebGLTextShader implements ITextShader {\n readonly label = \"text\";\n readonly font: MsdfFont;\n readonly maxCharCount: number;\n\n #backend: WebGLBackend;\n #pipeline: WebGLFontPipeline;\n #program: WebGLProgram;\n #vao: WebGLVertexArrayObject;\n #cpuTextBuffer: Float32Array;\n #cachedUniform: EngineUniform | null = null;\n\n // Uniform locations\n #uViewProjection: WebGLUniformLocation | null = null;\n #uTextTransform: WebGLUniformLocation | null = null;\n #uTextColor: WebGLUniformLocation | null = null;\n #uFontSize: WebGLUniformLocation | null = null;\n #uBlockWidth: WebGLUniformLocation | null = null;\n #uBlockHeight: WebGLUniformLocation | null = null;\n #uLineHeight: WebGLUniformLocation | null = null;\n #uCharData: WebGLUniformLocation | null = null;\n #uTextBuffer: WebGLUniformLocation | null = null;\n #uFontTexture: WebGLUniformLocation | null = null;\n\n constructor(backend: WebGLBackend, pipeline: WebGLFontPipeline) {\n this.#backend = backend;\n this.#pipeline = pipeline;\n this.font = pipeline.font;\n this.maxCharCount = pipeline.maxCharCount;\n\n const gl = backend.gl;\n\n // Compile shaders\n const vs = this.#compileShader(gl, gl.VERTEX_SHADER, vertexShader);\n const fs = this.#compileShader(gl, gl.FRAGMENT_SHADER, fragmentShader);\n\n // Create program\n const program = gl.createProgram();\n assert(program, \"Failed to create WebGL program\");\n gl.attachShader(program, vs);\n gl.attachShader(program, fs);\n gl.linkProgram(program);\n\n if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {\n const info = gl.getProgramInfoLog(program);\n throw new Error(`Failed to link text shader program: ${info}`);\n }\n\n this.#program = program;\n\n // Get uniform locations\n this.#uViewProjection = gl.getUniformLocation(program, \"u_viewProjection\");\n this.#uTextTransform = gl.getUniformLocation(program, \"u_textTransform\");\n this.#uTextColor = gl.getUniformLocation(program, \"u_textColor\");\n this.#uFontSize = gl.getUniformLocation(program, \"u_fontSize\");\n this.#uBlockWidth = gl.getUniformLocation(program, \"u_blockWidth\");\n this.#uBlockHeight = gl.getUniformLocation(program, \"u_blockHeight\");\n this.#uLineHeight = gl.getUniformLocation(program, \"u_lineHeight\");\n this.#uCharData = gl.getUniformLocation(program, \"u_charData\");\n this.#uTextBuffer = gl.getUniformLocation(program, \"u_textBuffer\");\n this.#uFontTexture = gl.getUniformLocation(program, \"u_fontTexture\");\n\n // Create VAO (required for WebGL2 draw calls, even without vertex attributes)\n const vao = gl.createVertexArray();\n assert(vao, \"Failed to create WebGL VAO\");\n this.#vao = vao;\n\n // Allocate CPU buffer for text shaping\n this.#cpuTextBuffer = new Float32Array(this.maxCharCount * 4);\n\n // Cleanup shaders\n gl.deleteShader(vs);\n gl.deleteShader(fs);\n }\n\n startFrame(uniform: EngineUniform): void {\n this.#cachedUniform = uniform;\n }\n\n processBatch(nodes: SceneNode[]): number {\n if (nodes.length === 0) return 0;\n\n const gl = this.#backend.gl;\n const uniform = this.#cachedUniform;\n if (!uniform) {\n throw new Error(\"Tried to process batch but engine uniform is not set\");\n }\n\n gl.useProgram(this.#program);\n gl.bindVertexArray(this.#vao);\n\n // Set view projection matrix (extract 9 floats from padded mat3)\n if (this.#uViewProjection) {\n const m = uniform.viewProjectionMatrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uViewProjection, false, mat3x3);\n }\n\n // Set line height uniform\n if (this.#uLineHeight) {\n gl.uniform1f(this.#uLineHeight, this.#pipeline.lineHeight);\n }\n\n // Bind textures\n // Texture unit 0: font atlas\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.fontTexture);\n if (this.#uFontTexture) {\n gl.uniform1i(this.#uFontTexture, 0);\n }\n\n // Texture unit 1: character data\n gl.activeTexture(gl.TEXTURE1);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.charDataTexture);\n if (this.#uCharData) {\n gl.uniform1i(this.#uCharData, 1);\n }\n\n // Texture unit 2: text buffer\n gl.activeTexture(gl.TEXTURE2);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.textBufferTexture);\n if (this.#uTextBuffer) {\n gl.uniform1i(this.#uTextBuffer, 2);\n }\n\n // Render each TextNode separately\n for (const node of nodes) {\n if (!(node instanceof TextNode)) {\n console.error(node);\n throw new Error(\n `Tried to use WebGLTextShader on something that isn't a TextNode: ${node}`,\n );\n }\n\n const text = node.text;\n const formatting = node.formatting;\n const measurements = measureText(this.font, text, formatting.wordWrap);\n\n // Calculate font size\n const size = node.size ?? measurements;\n const fontSize = formatting.shrinkToFit\n ? findLargestFontSize(this.font, text, size, formatting)\n : formatting.fontSize;\n const actualFontSize = fontSize || DEFAULT_FONT_SIZE;\n\n // Shape text into buffer\n shapeText(\n this.font,\n text,\n size,\n actualFontSize,\n formatting,\n this.#cpuTextBuffer,\n 0,\n );\n\n // Upload glyph data to text buffer texture\n this.#pipeline.updateTextBuffer(\n this.#cpuTextBuffer,\n measurements.printedCharCount,\n );\n\n // Set per-text uniforms\n if (this.#uTextTransform) {\n const m = node.matrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uTextTransform, false, mat3x3);\n }\n\n if (this.#uTextColor) {\n const tint = node.tint;\n gl.uniform4f(this.#uTextColor, tint.r, tint.g, tint.b, tint.a);\n }\n\n if (this.#uFontSize) {\n gl.uniform1f(this.#uFontSize, actualFontSize);\n }\n\n if (this.#uBlockWidth) {\n gl.uniform1f(\n this.#uBlockWidth,\n formatting.align === \"center\" ? 0 : measurements.width,\n );\n }\n\n if (this.#uBlockHeight) {\n gl.uniform1f(this.#uBlockHeight, measurements.height);\n }\n\n // Draw instanced: 4 vertices per glyph, one instance per character\n gl.drawArraysInstanced(\n gl.TRIANGLE_STRIP,\n 0,\n 4,\n measurements.printedCharCount,\n );\n }\n\n gl.bindVertexArray(null);\n return nodes.length;\n }\n\n endFrame(): void {\n // No cleanup needed\n }\n\n #compileShader(\n gl: WebGL2RenderingContext,\n type: number,\n source: string,\n ): WebGLShader {\n const shader = gl.createShader(type);\n assert(shader, \"Failed to create WebGL shader\");\n\n gl.shaderSource(shader, source);\n gl.compileShader(shader);\n\n if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n const info = gl.getShaderInfoLog(shader);\n const typeStr = type === gl.VERTEX_SHADER ? \"vertex\" : \"fragment\";\n gl.deleteShader(shader);\n throw new Error(`Failed to compile ${typeStr} shader: ${info}`);\n }\n\n return shader;\n }\n\n destroy(): void {\n const gl = this.#backend.gl;\n gl.deleteProgram(this.#program);\n gl.deleteVertexArray(this.#vao);\n this.#pipeline.destroy();\n }\n}\n",
30
+ "import type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { DEFAULT_FONT_SIZE, TextNode } from \"../../scene/TextNode\";\nimport type { MsdfFont } from \"../../text/MsdfFont\";\nimport {\n findLargestFontSize,\n measureText,\n shapeText,\n} from \"../../text/shaping\";\nimport { assert } from \"../../utils/assert\";\nimport type { ITextShader } from \"../ITextShader\";\nimport { fragmentShader, vertexShader } from \"./glsl/text.glsl\";\nimport type { WebGLBackend } from \"./WebGLBackend\";\nimport type { WebGLFontPipeline } from \"./WebGLFontPipeline\";\n\n/**\n * WebGL 2 text shader for MSDF font rendering.\n *\n * Unlike WebGPU which batches all text into storage buffers, WebGL renders\n * each TextNode separately since WebGL2 doesn't support firstInstance.\n */\nexport class WebGLTextShader implements ITextShader {\n readonly label = \"text\";\n readonly code: string = fragmentShader;\n readonly font: MsdfFont;\n readonly maxCharCount: number;\n\n #backend: WebGLBackend;\n #pipeline: WebGLFontPipeline;\n #program: WebGLProgram;\n #vao: WebGLVertexArrayObject;\n #cpuTextBuffer: Float32Array;\n #cachedUniform: EngineUniform | null = null;\n\n // Uniform locations\n #uViewProjection: WebGLUniformLocation | null = null;\n #uTextTransform: WebGLUniformLocation | null = null;\n #uTextColor: WebGLUniformLocation | null = null;\n #uFontSize: WebGLUniformLocation | null = null;\n #uBlockWidth: WebGLUniformLocation | null = null;\n #uBlockHeight: WebGLUniformLocation | null = null;\n #uLineHeight: WebGLUniformLocation | null = null;\n #uCharData: WebGLUniformLocation | null = null;\n #uTextBuffer: WebGLUniformLocation | null = null;\n #uFontTexture: WebGLUniformLocation | null = null;\n\n constructor(backend: WebGLBackend, pipeline: WebGLFontPipeline) {\n this.#backend = backend;\n this.#pipeline = pipeline;\n this.font = pipeline.font;\n this.maxCharCount = pipeline.maxCharCount;\n\n const gl = backend.gl;\n\n // Compile shaders\n const vs = this.#compileShader(gl, gl.VERTEX_SHADER, vertexShader);\n const fs = this.#compileShader(gl, gl.FRAGMENT_SHADER, fragmentShader);\n\n // Create program\n const program = gl.createProgram();\n assert(program, \"Failed to create WebGL program\");\n gl.attachShader(program, vs);\n gl.attachShader(program, fs);\n gl.linkProgram(program);\n\n if (!gl.getProgramParameter(program, gl.LINK_STATUS)) {\n const info = gl.getProgramInfoLog(program);\n throw new Error(`Failed to link text shader program: ${info}`);\n }\n\n this.#program = program;\n\n // Get uniform locations\n this.#uViewProjection = gl.getUniformLocation(program, \"u_viewProjection\");\n this.#uTextTransform = gl.getUniformLocation(program, \"u_textTransform\");\n this.#uTextColor = gl.getUniformLocation(program, \"u_textColor\");\n this.#uFontSize = gl.getUniformLocation(program, \"u_fontSize\");\n this.#uBlockWidth = gl.getUniformLocation(program, \"u_blockWidth\");\n this.#uBlockHeight = gl.getUniformLocation(program, \"u_blockHeight\");\n this.#uLineHeight = gl.getUniformLocation(program, \"u_lineHeight\");\n this.#uCharData = gl.getUniformLocation(program, \"u_charData\");\n this.#uTextBuffer = gl.getUniformLocation(program, \"u_textBuffer\");\n this.#uFontTexture = gl.getUniformLocation(program, \"u_fontTexture\");\n\n // Create VAO (required for WebGL2 draw calls, even without vertex attributes)\n const vao = gl.createVertexArray();\n assert(vao, \"Failed to create WebGL VAO\");\n this.#vao = vao;\n\n // Allocate CPU buffer for text shaping\n this.#cpuTextBuffer = new Float32Array(this.maxCharCount * 4);\n\n // Cleanup shaders\n gl.deleteShader(vs);\n gl.deleteShader(fs);\n }\n\n startFrame(uniform: EngineUniform): void {\n this.#cachedUniform = uniform;\n }\n\n processBatch(nodes: SceneNode[]): number {\n if (nodes.length === 0) return 0;\n\n const gl = this.#backend.gl;\n const uniform = this.#cachedUniform;\n if (!uniform) {\n throw new Error(\"Tried to process batch but engine uniform is not set\");\n }\n\n gl.useProgram(this.#program);\n gl.bindVertexArray(this.#vao);\n\n // Set view projection matrix (extract 9 floats from padded mat3)\n if (this.#uViewProjection) {\n const m = uniform.viewProjectionMatrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uViewProjection, false, mat3x3);\n }\n\n // Set line height uniform\n if (this.#uLineHeight) {\n gl.uniform1f(this.#uLineHeight, this.#pipeline.lineHeight);\n }\n\n // Bind textures\n // Texture unit 0: font atlas\n gl.activeTexture(gl.TEXTURE0);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.fontTexture);\n if (this.#uFontTexture) {\n gl.uniform1i(this.#uFontTexture, 0);\n }\n\n // Texture unit 1: character data\n gl.activeTexture(gl.TEXTURE1);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.charDataTexture);\n if (this.#uCharData) {\n gl.uniform1i(this.#uCharData, 1);\n }\n\n // Texture unit 2: text buffer\n gl.activeTexture(gl.TEXTURE2);\n gl.bindTexture(gl.TEXTURE_2D, this.#pipeline.textBufferTexture);\n if (this.#uTextBuffer) {\n gl.uniform1i(this.#uTextBuffer, 2);\n }\n\n // Render each TextNode separately\n for (const node of nodes) {\n if (!(node instanceof TextNode)) {\n console.error(node);\n throw new Error(\n `Tried to use WebGLTextShader on something that isn't a TextNode: ${node}`,\n );\n }\n\n const text = node.text;\n const formatting = node.formatting;\n const measurements = measureText(this.font, text, formatting.wordWrap);\n\n // Calculate font size\n const size = node.size ?? measurements;\n const fontSize = formatting.shrinkToFit\n ? findLargestFontSize(this.font, text, size, formatting)\n : formatting.fontSize;\n const actualFontSize = fontSize || DEFAULT_FONT_SIZE;\n\n // Shape text into buffer\n shapeText(\n this.font,\n text,\n size,\n actualFontSize,\n formatting,\n this.#cpuTextBuffer,\n 0,\n );\n\n // Upload glyph data to text buffer texture\n this.#pipeline.updateTextBuffer(\n this.#cpuTextBuffer,\n measurements.printedCharCount,\n );\n\n // Set per-text uniforms\n if (this.#uTextTransform) {\n const m = node.matrix;\n const mat3x3 = new Float32Array([\n m[0],\n m[1],\n m[2], // column 0\n m[4],\n m[5],\n m[6], // column 1\n m[8],\n m[9],\n m[10], // column 2\n ]);\n gl.uniformMatrix3fv(this.#uTextTransform, false, mat3x3);\n }\n\n if (this.#uTextColor) {\n const tint = node.tint;\n gl.uniform4f(this.#uTextColor, tint.r, tint.g, tint.b, tint.a);\n }\n\n if (this.#uFontSize) {\n gl.uniform1f(this.#uFontSize, actualFontSize);\n }\n\n if (this.#uBlockWidth) {\n gl.uniform1f(\n this.#uBlockWidth,\n formatting.align === \"center\" ? 0 : measurements.width,\n );\n }\n\n if (this.#uBlockHeight) {\n gl.uniform1f(this.#uBlockHeight, measurements.height);\n }\n\n // Draw instanced: 4 vertices per glyph, one instance per character\n gl.drawArraysInstanced(\n gl.TRIANGLE_STRIP,\n 0,\n 4,\n measurements.printedCharCount,\n );\n }\n\n gl.bindVertexArray(null);\n return nodes.length;\n }\n\n endFrame(): void {\n // No cleanup needed\n }\n\n #compileShader(\n gl: WebGL2RenderingContext,\n type: number,\n source: string,\n ): WebGLShader {\n const shader = gl.createShader(type);\n assert(shader, \"Failed to create WebGL shader\");\n\n gl.shaderSource(shader, source);\n gl.compileShader(shader);\n\n if (!gl.getShaderParameter(shader, gl.COMPILE_STATUS)) {\n const info = gl.getShaderInfoLog(shader);\n const typeStr = type === gl.VERTEX_SHADER ? \"vertex\" : \"fragment\";\n gl.deleteShader(shader);\n throw new Error(`Failed to compile ${typeStr} shader: ${info}`);\n }\n\n return shader;\n }\n\n destroy(): void {\n const gl = this.#backend.gl;\n gl.deleteProgram(this.#program);\n gl.deleteVertexArray(this.#vao);\n this.#pipeline.destroy();\n }\n}\n",
31
31
  "export default /*wgsl*/ `\n// Adapted from: https://webgpu.github.io/webgpu-samples/?sample=textRenderingMsdf\n\n// Quad vertex positions for a character\nconst pos = array(\n vec2f(0, -1),\n vec2f(1, -1),\n vec2f(0, 0),\n vec2f(1, 0),\n);\n\n// Debug colors for visualization\nconst debugColors = array(\n vec4f(1, 0, 0, 1),\n vec4f(0, 1, 0, 1),\n vec4f(0, 0, 1, 1),\n vec4f(1, 1, 1, 1),\n);\n\n// Vertex input from GPU\nstruct VertexInput {\n @builtin(vertex_index) vertex: u32,\n @builtin(instance_index) instance: u32,\n};\n\n// Output from vertex shader to fragment shader\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texcoord: vec2f,\n @location(1) debugColor: vec4f,\n @location(2) @interpolate(flat) instanceIndex: u32,\n};\n\n// Metadata for a single character glyph\nstruct Char {\n texOffset: vec2f, // Offset to top-left in MSDF texture (pixels)\n texExtent: vec2f, // Size in texture (pixels)\n size: vec2f, // Glyph size in ems\n offset: vec2f, // Position offset in ems\n};\n\n// Metadata for a text block\nstruct TextBlockDescriptor {\n transform: mat3x3f, // Text transform matrix (model matrix)\n color: vec4f, // Text color\n fontSize: f32, // Font size\n blockWidth: f32, // Total width of text block\n blockHeight: f32, // Total height of text block\n bufferPosition: f32 // Index and length in textBuffer\n};\n\n// Font bindings\n@group(0) @binding(0) var fontTexture: texture_2d<f32>;\n@group(0) @binding(1) var fontSampler: sampler;\n@group(0) @binding(2) var<storage> chars: array<Char>;\n@group(0) @binding(3) var<uniform> fontData: vec4f; // Contains line height (x)\n\n// Text bindings\n@group(1) @binding(0) var<storage> texts: array<TextBlockDescriptor>;\n@group(1) @binding(1) var<storage> textBuffer: array<vec4f>; // Each vec4: xy = glyph pos, z = char index\n\n// Global uniforms\n@group(2) @binding(0) var<uniform> viewProjectionMatrix: mat3x3f;\n\n// Vertex shader\n@vertex\nfn vertexMain(input: VertexInput) -> VertexOutput {\n // Because the instance index is used for character indexing, we are\n // overloading the vertex index to store the instance of the text metadata.\n //\n // I.e...\n // Vertex 0-4 = Instance 0, Vertex 0-4\n // Vertex 4-8 = Instance 1, Vertex 0-4\n // Vertex 8-12 = Instance 2, Vertex 0-4\n let vertexIndex = input.vertex % 4;\n let textIndex = input.vertex / 4;\n\n let text = texts[textIndex];\n let textElement = textBuffer[u32(text.bufferPosition) + input.instance];\n let char = chars[u32(textElement.z)];\n\n let lineHeight = fontData.x;\n let textWidth = text.blockWidth;\n let textHeight = text.blockHeight;\n\n // Center text vertically; origin is mid-height\n let offset = vec2f(0, -textHeight / 2);\n\n // Glyph position in ems (quad pos * size + per-char offset)\n let emPos = pos[vertexIndex] * char.size + char.offset + textElement.xy - offset;\n let charPos = emPos * (text.fontSize / lineHeight);\n\n var output: VertexOutput;\n let transformedPosition = viewProjectionMatrix * text.transform * vec3f(charPos, 1);\n\n output.position = vec4f(transformedPosition, 1);\n output.texcoord = pos[vertexIndex] * vec2f(1, -1);\n output.texcoord *= char.texExtent;\n output.texcoord += char.texOffset;\n output.debugColor = debugColors[vertexIndex];\n output.instanceIndex = textIndex;\n return output;\n\n // To debug - hardcode quad in bottom right quarter of the screen:\n // output.position = vec4f(pos[input.vertex], 0, 1);\n}\n\n// Signed distance function sampling for MSDF font rendering\nfn sampleMsdf(texcoord: vec2f) -> f32 {\n let c = textureSample(fontTexture, fontSampler, texcoord);\n return max(min(c.r, c.g), min(max(c.r, c.g), c.b));\n}\n\n// Fragment shader\n// Anti-aliasing technique by Paul Houx\n// more details here:\n// https://github.com/Chlumsky/msdfgen/issues/22#issuecomment-234958005\n@fragment\nfn fragmentMain(input: VertexOutput) -> @location(0) vec4f {\n let text = texts[input.instanceIndex];\n\n // pxRange (AKA distanceRange) comes from the msdfgen tool.\n let pxRange = 4.0;\n let texSize = vec2f(textureDimensions(fontTexture, 0));\n\n let dx = texSize.x * length(vec2f(dpdxFine(input.texcoord.x), dpdyFine(input.texcoord.x)));\n let dy = texSize.y * length(vec2f(dpdxFine(input.texcoord.y), dpdyFine(input.texcoord.y)));\n\n let toPixels = pxRange * inverseSqrt(dx * dx + dy * dy);\n let sigDist = sampleMsdf(input.texcoord) - 0.5;\n let pxDist = sigDist * toPixels;\n\n let edgeWidth = 0.5;\n let alpha = smoothstep(-edgeWidth, edgeWidth, pxDist);\n\n if (alpha < 0.001) {\n discard;\n }\n\n let msdfColor = vec4f(text.color.rgb, text.color.a * alpha);\n return msdfColor;\n\n // Debug options:\n // return text.color;\n // return input.debugColor;\n // return vec4f(1, 0, 1, 1); // hardcoded magenta\n // return textureSample(fontTexture, fontSampler, input.texcoord);\n}\n`;\n",
32
32
  "import type { MsdfFont } from \"../../text/MsdfFont\";\nimport msdfShader from \"./wgsl/text.wgsl\";\n\n/**\n * A webgpu pipeline for rendering blocks of text with a given font.\n */\nexport class FontPipeline {\n constructor(\n public pipeline: GPURenderPipeline,\n public font: MsdfFont,\n public fontBindGroup: GPUBindGroup,\n public maxCharCount: number,\n ) {}\n\n static async create(\n device: GPUDevice,\n font: MsdfFont,\n colorFormat: GPUTextureFormat,\n maxCharCount: number,\n ): Promise<FontPipeline> {\n const pipeline = await pipelinePromise(device, colorFormat, font.name);\n const texture = device.createTexture({\n label: `MSDF font ${font.name}`,\n size: [font.imageBitmap.width, font.imageBitmap.height, 1],\n format: \"rgba8unorm\",\n usage:\n GPUTextureUsage.TEXTURE_BINDING |\n GPUTextureUsage.COPY_DST |\n GPUTextureUsage.RENDER_ATTACHMENT,\n });\n device.queue.copyExternalImageToTexture(\n { source: font.imageBitmap },\n { texture },\n [font.imageBitmap.width, font.imageBitmap.height],\n );\n\n const charsGpuBuffer = device.createBuffer({\n label: `MSDF font ${font.name} character layout buffer`,\n size: font.charCount * Float32Array.BYTES_PER_ELEMENT * 8,\n usage: GPUBufferUsage.STORAGE,\n mappedAtCreation: true,\n });\n\n const charsArray = new Float32Array(charsGpuBuffer.getMappedRange());\n // todo: don't double copy this\n charsArray.set(font.charBuffer, 0);\n charsGpuBuffer.unmap();\n\n const fontDataBuffer = device.createBuffer({\n label: `MSDF font ${font.name} metadata buffer`,\n size: Float32Array.BYTES_PER_ELEMENT * 4,\n usage: GPUBufferUsage.UNIFORM,\n mappedAtCreation: true,\n });\n const fontDataArray = new Float32Array(fontDataBuffer.getMappedRange());\n fontDataArray[0] = font.lineHeight;\n fontDataBuffer.unmap();\n\n // create a texture view\n const fontBindGroup = device.createBindGroup({\n layout: pipeline.getBindGroupLayout(0),\n entries: [\n // msdf texture\n {\n binding: 0,\n resource: texture.createView(),\n },\n // msdf texture sampler\n {\n binding: 1,\n resource: device.createSampler(sampler),\n },\n // buffer of character uv and offset data\n {\n binding: 2,\n resource: {\n buffer: charsGpuBuffer,\n },\n },\n // buffer of font metadata, e.g. line height\n {\n binding: 3,\n resource: {\n buffer: fontDataBuffer,\n },\n },\n ],\n });\n return new FontPipeline(pipeline, font, fontBindGroup, maxCharCount);\n }\n}\n\nexport function pipelinePromise(\n device: GPUDevice,\n colorFormat: GPUTextureFormat,\n label: string,\n) {\n const shader = device.createShaderModule({\n label: `${label} shader`,\n code: msdfShader,\n });\n\n return device.createRenderPipelineAsync({\n label: `${label} pipeline`,\n layout: device.createPipelineLayout({\n bindGroupLayouts: [\n device.createBindGroupLayout(fontBindGroupLayout),\n device.createBindGroupLayout(textUniformBindGroupLayout),\n device.createBindGroupLayout(engineUniformBindGroupLayout),\n ],\n }),\n vertex: {\n module: shader,\n entryPoint: \"vertexMain\",\n },\n fragment: {\n module: shader,\n entryPoint: \"fragmentMain\",\n targets: [\n {\n format: colorFormat,\n blend: {\n color: {\n srcFactor: \"src-alpha\",\n dstFactor: \"one-minus-src-alpha\",\n },\n alpha: {\n srcFactor: \"one\",\n dstFactor: \"one\",\n },\n },\n },\n ],\n },\n primitive: {\n topology: \"triangle-strip\",\n stripIndexFormat: \"uint32\",\n },\n });\n}\n\nif (typeof GPUShaderStage === \"undefined\") {\n // polyfill GPUShaderStage so that toodle can be imported in non-browser environments\n // eg for automated testing\n globalThis.GPUShaderStage = {\n VERTEX: 1,\n FRAGMENT: 2,\n COMPUTE: 4,\n };\n}\n\nconst fontBindGroupLayout: GPUBindGroupLayoutDescriptor = {\n label: \"MSDF font group layout\",\n entries: [\n {\n binding: 0,\n visibility: GPUShaderStage.FRAGMENT,\n texture: {},\n },\n {\n binding: 1,\n visibility: GPUShaderStage.FRAGMENT,\n sampler: {},\n },\n {\n binding: 2,\n visibility: GPUShaderStage.VERTEX,\n buffer: { type: \"read-only-storage\" },\n },\n {\n binding: 3,\n visibility: GPUShaderStage.VERTEX,\n buffer: {},\n },\n ],\n};\n\nconst engineUniformBindGroupLayout: GPUBindGroupLayoutDescriptor = {\n label: \"Uniform bind group\",\n entries: [\n {\n binding: 0,\n visibility: GPUShaderStage.VERTEX,\n buffer: {},\n },\n ],\n};\n\nconst sampler: GPUSamplerDescriptor = {\n label: \"MSDF text sampler\",\n minFilter: \"linear\",\n magFilter: \"linear\",\n mipmapFilter: \"linear\",\n maxAnisotropy: 16,\n};\n\nconst textUniformBindGroupLayout: GPUBindGroupLayoutDescriptor = {\n label: \"MSDF text block uniform\",\n entries: [\n {\n // text data - matrix, color, font size, characters\n binding: 0,\n visibility: GPUShaderStage.VERTEX | GPUShaderStage.FRAGMENT,\n buffer: { type: \"read-only-storage\" },\n },\n {\n binding: 1,\n visibility: GPUShaderStage.VERTEX | GPUShaderStage.FRAGMENT,\n buffer: { type: \"read-only-storage\" },\n },\n ],\n};\n",
33
- "import { WgslReflect } from \"wgsl_reflect\";\nimport type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { DEFAULT_FONT_SIZE, TextNode } from \"../../scene/TextNode\";\nimport type { MsdfFont } from \"../../text/MsdfFont\";\nimport {\n findLargestFontSize,\n measureText,\n shapeText,\n} from \"../../text/shaping\";\nimport type { ITextShader } from \"../ITextShader\";\nimport type { FontPipeline } from \"./FontPipeline\";\nimport type { WebGPUBackend } from \"./WebGPUBackend\";\nimport msdfShader from \"./wgsl/text.wgsl\";\n\nconst deets = new WgslReflect(msdfShader);\nconst struct = deets.structs.find((s) => s.name === \"TextBlockDescriptor\");\nif (!struct) {\n throw new Error(\"FormattedText struct not found\");\n}\nconst textDescriptorInstanceSize = struct.size;\n\nexport class WebGPUTextShader implements ITextShader {\n readonly label = \"text\";\n\n #backend: WebGPUBackend;\n #pipeline: GPURenderPipeline;\n #bindGroups: GPUBindGroup[] = [];\n #font: MsdfFont;\n #maxCharCount: number;\n #engineUniformsBuffer: GPUBuffer;\n #descriptorBuffer: GPUBuffer;\n #textBlockBuffer: GPUBuffer;\n #cpuDescriptorBuffer: Float32Array;\n #cpuTextBlockBuffer: Float32Array;\n #instanceIndex = 0;\n #textBlockOffset = 0;\n\n constructor(\n backend: WebGPUBackend,\n pipeline: FontPipeline,\n font: MsdfFont,\n _colorFormat: GPUTextureFormat,\n instanceCount: number,\n ) {\n this.#backend = backend;\n const device = backend.device;\n this.#font = font;\n this.#pipeline = pipeline.pipeline;\n this.#maxCharCount = pipeline.maxCharCount;\n\n this.#descriptorBuffer = device.createBuffer({\n label: \"msdf text descriptor buffer\",\n size: textDescriptorInstanceSize * instanceCount,\n usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,\n });\n\n this.#cpuDescriptorBuffer = new Float32Array(\n (instanceCount * textDescriptorInstanceSize) /\n Float32Array.BYTES_PER_ELEMENT,\n );\n\n this.#cpuTextBlockBuffer = new Float32Array(\n instanceCount * this.maxCharCount * 4,\n );\n\n this.#engineUniformsBuffer = device.createBuffer({\n label: \"msdf view projection matrix\",\n size: Float32Array.BYTES_PER_ELEMENT * 12,\n usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST,\n });\n\n this.#textBlockBuffer = device.createBuffer({\n label: \"msdf text buffer\",\n size:\n instanceCount * this.maxCharCount * 4 * Float32Array.BYTES_PER_ELEMENT,\n usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,\n });\n\n // create uniform bind groups\n this.#bindGroups.push(pipeline.fontBindGroup);\n\n this.#bindGroups.push(\n device.createBindGroup({\n label: \"msdf text bind group\",\n layout: pipeline.pipeline.getBindGroupLayout(1),\n entries: [\n {\n binding: 0,\n resource: { buffer: this.#descriptorBuffer },\n },\n {\n binding: 1,\n resource: { buffer: this.#textBlockBuffer },\n },\n ],\n }),\n );\n\n const engineUniformsBindGroup = device.createBindGroup({\n label: \"msdf text uniforms bind group\",\n layout: pipeline.pipeline.getBindGroupLayout(2),\n entries: [\n {\n binding: 0,\n resource: { buffer: this.#engineUniformsBuffer },\n },\n ],\n });\n this.#bindGroups.push(engineUniformsBindGroup);\n }\n\n startFrame(uniform: EngineUniform): void {\n const device = this.#backend.device;\n device.queue.writeBuffer(\n this.#engineUniformsBuffer,\n 0,\n uniform.viewProjectionMatrix as Float32Array,\n );\n this.#instanceIndex = 0;\n this.#textBlockOffset = 0;\n }\n\n processBatch(nodes: SceneNode[]): number {\n if (nodes.length === 0) return 0;\n\n const renderPass = this.#backend.renderPass;\n renderPass.setPipeline(this.#pipeline);\n for (let i = 0; i < this.#bindGroups.length; i++) {\n renderPass.setBindGroup(i, this.#bindGroups[i]);\n }\n\n for (const node of nodes) {\n if (!(node instanceof TextNode)) {\n console.error(node);\n throw new Error(\n `Tried to use WebGPUTextShader on something that isn't a TextNode: ${node}`,\n );\n }\n const text = node.text;\n const formatting = node.formatting;\n const measurements = measureText(this.#font, text, formatting.wordWrap);\n\n const textBlockSize = 4 * text.length;\n\n // Calculate the buffer offset to get the current TextBlockDescriptor\n const textDescriptorOffset =\n (this.#instanceIndex * textDescriptorInstanceSize) /\n Float32Array.BYTES_PER_ELEMENT;\n\n // Shape text and pack to the buffer...\n this.#cpuDescriptorBuffer.set(node.matrix, textDescriptorOffset);\n\n // Color\n this.#cpuDescriptorBuffer.set(\n [node.tint.r, node.tint.g, node.tint.b, node.tint.a],\n textDescriptorOffset + 12,\n );\n\n // Font Size\n const size = node.size ?? measurements;\n const fontSize = formatting.shrinkToFit\n ? findLargestFontSize(this.#font, text, size, formatting)\n : formatting.fontSize;\n const actualFontSize = fontSize || DEFAULT_FONT_SIZE;\n this.#cpuDescriptorBuffer[textDescriptorOffset + 16] = actualFontSize;\n\n // Alignment and dimensions\n this.#cpuDescriptorBuffer[textDescriptorOffset + 17] =\n formatting.align === \"center\" ? 0 : measurements.width;\n this.#cpuDescriptorBuffer[textDescriptorOffset + 18] =\n measurements.height;\n\n // Text block buffer offset\n // the shader at text.wgsl.ts is expecting an index into the text block buffer,\n // which is an array<vec4f> hence the division by 4\n this.#cpuDescriptorBuffer[textDescriptorOffset + 19] =\n this.#textBlockOffset / 4;\n\n shapeText(\n this.#font,\n text,\n size,\n actualFontSize,\n formatting,\n this.#cpuTextBlockBuffer,\n this.#textBlockOffset,\n );\n\n // Write instance data\n this.#backend.device.queue.writeBuffer(\n this.#descriptorBuffer,\n textDescriptorOffset * Float32Array.BYTES_PER_ELEMENT,\n this.#cpuDescriptorBuffer,\n textDescriptorOffset,\n textDescriptorInstanceSize / Float32Array.BYTES_PER_ELEMENT,\n );\n\n this.#backend.device.queue.writeBuffer(\n this.#textBlockBuffer,\n this.#textBlockOffset * Float32Array.BYTES_PER_ELEMENT,\n this.#cpuTextBlockBuffer,\n this.#textBlockOffset,\n textBlockSize,\n );\n\n this.#textBlockOffset += textBlockSize;\n\n // Draw text\n renderPass.draw(\n 4,\n measurements.printedCharCount,\n 4 * this.#instanceIndex,\n 0,\n );\n this.#instanceIndex++;\n }\n\n return nodes.length;\n }\n\n endFrame(): void {\n // No cleanup needed\n }\n\n get font() {\n return this.#font;\n }\n\n get maxCharCount() {\n return this.#maxCharCount;\n }\n}\n",
33
+ "import { WgslReflect } from \"wgsl_reflect\";\nimport type { EngineUniform } from \"../../coreTypes/EngineUniform\";\nimport type { SceneNode } from \"../../scene/SceneNode\";\nimport { DEFAULT_FONT_SIZE, TextNode } from \"../../scene/TextNode\";\nimport type { MsdfFont } from \"../../text/MsdfFont\";\nimport {\n findLargestFontSize,\n measureText,\n shapeText,\n} from \"../../text/shaping\";\nimport type { ITextShader } from \"../ITextShader\";\nimport type { FontPipeline } from \"./FontPipeline\";\nimport type { WebGPUBackend } from \"./WebGPUBackend\";\nimport msdfShader from \"./wgsl/text.wgsl\";\n\nconst deets = new WgslReflect(msdfShader);\nconst struct = deets.structs.find((s) => s.name === \"TextBlockDescriptor\");\nif (!struct) {\n throw new Error(\"FormattedText struct not found\");\n}\nconst textDescriptorInstanceSize = struct.size;\n\nexport class WebGPUTextShader implements ITextShader {\n readonly label = \"text\";\n readonly code: string = msdfShader;\n\n #backend: WebGPUBackend;\n #pipeline: GPURenderPipeline;\n #bindGroups: GPUBindGroup[] = [];\n #font: MsdfFont;\n #maxCharCount: number;\n #engineUniformsBuffer: GPUBuffer;\n #descriptorBuffer: GPUBuffer;\n #textBlockBuffer: GPUBuffer;\n #cpuDescriptorBuffer: Float32Array;\n #cpuTextBlockBuffer: Float32Array;\n #instanceIndex = 0;\n #textBlockOffset = 0;\n\n constructor(\n backend: WebGPUBackend,\n pipeline: FontPipeline,\n font: MsdfFont,\n _colorFormat: GPUTextureFormat,\n instanceCount: number,\n ) {\n this.#backend = backend;\n const device = backend.device;\n this.#font = font;\n this.#pipeline = pipeline.pipeline;\n this.#maxCharCount = pipeline.maxCharCount;\n\n this.#descriptorBuffer = device.createBuffer({\n label: \"msdf text descriptor buffer\",\n size: textDescriptorInstanceSize * instanceCount,\n usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,\n });\n\n this.#cpuDescriptorBuffer = new Float32Array(\n (instanceCount * textDescriptorInstanceSize) /\n Float32Array.BYTES_PER_ELEMENT,\n );\n\n this.#cpuTextBlockBuffer = new Float32Array(\n instanceCount * this.maxCharCount * 4,\n );\n\n this.#engineUniformsBuffer = device.createBuffer({\n label: \"msdf view projection matrix\",\n size: Float32Array.BYTES_PER_ELEMENT * 12,\n usage: GPUBufferUsage.UNIFORM | GPUBufferUsage.COPY_DST,\n });\n\n this.#textBlockBuffer = device.createBuffer({\n label: \"msdf text buffer\",\n size:\n instanceCount * this.maxCharCount * 4 * Float32Array.BYTES_PER_ELEMENT,\n usage: GPUBufferUsage.STORAGE | GPUBufferUsage.COPY_DST,\n });\n\n // create uniform bind groups\n this.#bindGroups.push(pipeline.fontBindGroup);\n\n this.#bindGroups.push(\n device.createBindGroup({\n label: \"msdf text bind group\",\n layout: pipeline.pipeline.getBindGroupLayout(1),\n entries: [\n {\n binding: 0,\n resource: { buffer: this.#descriptorBuffer },\n },\n {\n binding: 1,\n resource: { buffer: this.#textBlockBuffer },\n },\n ],\n }),\n );\n\n const engineUniformsBindGroup = device.createBindGroup({\n label: \"msdf text uniforms bind group\",\n layout: pipeline.pipeline.getBindGroupLayout(2),\n entries: [\n {\n binding: 0,\n resource: { buffer: this.#engineUniformsBuffer },\n },\n ],\n });\n this.#bindGroups.push(engineUniformsBindGroup);\n }\n\n startFrame(uniform: EngineUniform): void {\n const device = this.#backend.device;\n device.queue.writeBuffer(\n this.#engineUniformsBuffer,\n 0,\n uniform.viewProjectionMatrix as Float32Array,\n );\n this.#instanceIndex = 0;\n this.#textBlockOffset = 0;\n }\n\n processBatch(nodes: SceneNode[]): number {\n if (nodes.length === 0) return 0;\n\n const renderPass = this.#backend.renderPass;\n renderPass.setPipeline(this.#pipeline);\n for (let i = 0; i < this.#bindGroups.length; i++) {\n renderPass.setBindGroup(i, this.#bindGroups[i]);\n }\n\n for (const node of nodes) {\n if (!(node instanceof TextNode)) {\n console.error(node);\n throw new Error(\n `Tried to use WebGPUTextShader on something that isn't a TextNode: ${node}`,\n );\n }\n const text = node.text;\n const formatting = node.formatting;\n const measurements = measureText(this.#font, text, formatting.wordWrap);\n\n const textBlockSize = 4 * text.length;\n\n // Calculate the buffer offset to get the current TextBlockDescriptor\n const textDescriptorOffset =\n (this.#instanceIndex * textDescriptorInstanceSize) /\n Float32Array.BYTES_PER_ELEMENT;\n\n // Shape text and pack to the buffer...\n this.#cpuDescriptorBuffer.set(node.matrix, textDescriptorOffset);\n\n // Color\n this.#cpuDescriptorBuffer.set(\n [node.tint.r, node.tint.g, node.tint.b, node.tint.a],\n textDescriptorOffset + 12,\n );\n\n // Font Size\n const size = node.size ?? measurements;\n const fontSize = formatting.shrinkToFit\n ? findLargestFontSize(this.#font, text, size, formatting)\n : formatting.fontSize;\n const actualFontSize = fontSize || DEFAULT_FONT_SIZE;\n this.#cpuDescriptorBuffer[textDescriptorOffset + 16] = actualFontSize;\n\n // Alignment and dimensions\n this.#cpuDescriptorBuffer[textDescriptorOffset + 17] =\n formatting.align === \"center\" ? 0 : measurements.width;\n this.#cpuDescriptorBuffer[textDescriptorOffset + 18] =\n measurements.height;\n\n // Text block buffer offset\n // the shader at text.wgsl.ts is expecting an index into the text block buffer,\n // which is an array<vec4f> hence the division by 4\n this.#cpuDescriptorBuffer[textDescriptorOffset + 19] =\n this.#textBlockOffset / 4;\n\n shapeText(\n this.#font,\n text,\n size,\n actualFontSize,\n formatting,\n this.#cpuTextBlockBuffer,\n this.#textBlockOffset,\n );\n\n // Write instance data\n this.#backend.device.queue.writeBuffer(\n this.#descriptorBuffer,\n textDescriptorOffset * Float32Array.BYTES_PER_ELEMENT,\n this.#cpuDescriptorBuffer,\n textDescriptorOffset,\n textDescriptorInstanceSize / Float32Array.BYTES_PER_ELEMENT,\n );\n\n this.#backend.device.queue.writeBuffer(\n this.#textBlockBuffer,\n this.#textBlockOffset * Float32Array.BYTES_PER_ELEMENT,\n this.#cpuTextBlockBuffer,\n this.#textBlockOffset,\n textBlockSize,\n );\n\n this.#textBlockOffset += textBlockSize;\n\n // Draw text\n renderPass.draw(\n 4,\n measurements.printedCharCount,\n 4 * this.#instanceIndex,\n 0,\n );\n this.#instanceIndex++;\n }\n\n return nodes.length;\n }\n\n endFrame(): void {\n // No cleanup needed\n }\n\n get font() {\n return this.#font;\n }\n\n get maxCharCount() {\n return this.#maxCharCount;\n }\n}\n",
34
34
  "import type { IBackendShader } from \"../backends/IBackendShader\";\nimport type { SceneNode } from \"./SceneNode\";\n\ntype Layer = {\n z: number;\n pipelines: Pipeline[];\n};\n\nexport type Pipeline<TNode extends SceneNode = SceneNode> = {\n shader: IBackendShader;\n nodes: TNode[];\n};\n\nexport class Batcher {\n nodes: SceneNode[] = [];\n layers: Layer[] = [];\n pipelines: Pipeline[] = [];\n\n enqueue(node: SceneNode) {\n if (node.renderComponent && node.isActive) {\n this.nodes.push(node);\n const z = node.layer;\n const layer = this.#findOrCreateLayer(z);\n const pipeline = this.#findOrCreatePipeline(\n layer,\n node.renderComponent.shader,\n );\n pipeline.nodes.push(node);\n }\n\n for (const kid of node.kids) {\n this.enqueue(kid);\n }\n }\n\n flush() {\n this.nodes = [];\n this.layers = [];\n this.pipelines = [];\n }\n\n #findOrCreateLayer(z: number) {\n let layer = this.layers.find((l) => l.z === z);\n if (!layer) {\n layer = { z, pipelines: [] };\n this.layers.push(layer);\n this.layers.sort((a, b) => a.z - b.z);\n }\n return layer;\n }\n\n #findOrCreatePipeline(layer: Layer, shader: IBackendShader) {\n let pipeline = layer.pipelines.find((p) => p.shader === shader);\n if (!pipeline) {\n pipeline = { shader, nodes: [] };\n layer.pipelines.push(pipeline);\n this.pipelines.push(pipeline);\n }\n return pipeline;\n }\n}\n",
35
35
  "import { mat3 } from \"wgpu-matrix\";\nimport type { Vec2 } from \"../coreTypes/Vec2\";\nimport { deg2rad, rad2deg } from \"../math/angle\";\nimport { createViewMatrix } from \"../math/matrix\";\n\nexport class Camera {\n #position: Vec2 = { x: 0, y: 0 };\n #zoom = 1;\n #rotation = 0;\n #isDirty = true;\n #matrix = mat3.create();\n\n get zoom() {\n return this.#zoom;\n }\n\n set zoom(value: number) {\n this.#zoom = value;\n this.setDirty();\n }\n\n get rotation() {\n return rad2deg(this.#rotation);\n }\n\n set rotation(value: number) {\n this.#rotation = deg2rad(value);\n this.setDirty();\n }\n\n get rotationRadians() {\n return this.#rotation;\n }\n\n set rotationRadians(value: number) {\n this.#rotation = value;\n this.setDirty();\n }\n\n get x() {\n return this.#position.x;\n }\n\n get y() {\n return this.#position.y;\n }\n\n set x(value: number) {\n this.#position.x = value;\n this.setDirty();\n }\n\n set y(value: number) {\n this.#position.y = value;\n this.setDirty();\n }\n\n get matrix() {\n if (this.#isDirty) {\n this.#isDirty = false;\n this.#matrix = createViewMatrix(this, this.#matrix);\n }\n return this.#matrix;\n }\n\n setDirty() {\n this.#isDirty = true;\n }\n}\n",
36
36
  "import { type Mat3, mat3 } from \"wgpu-matrix\";\nimport type { IBackendShader } from \"../backends/IBackendShader\";\nimport type { Color } from \"../coreTypes/Color\";\nimport type { Size } from \"../coreTypes/Size\";\nimport type { Vec2 } from \"../coreTypes/Vec2\";\nimport type { Toodle } from \"../Toodle\";\nimport type { AssetManager, TextureId } from \"../textures/AssetManager\";\nimport type { AtlasCoords, TexelRegion } from \"../textures/types\";\nimport { assert } from \"../utils/assert\";\nimport type { Pool } from \"../utils/pool\";\nimport { type NodeOptions, SceneNode } from \"./SceneNode\";\n\nconst PRIMITIVE_TEXTURE = \"__primitive__\";\nconst RESERVED_PRIMITIVE_INDEX_START = 1000;\n// this must match the circle index in the default fragment shader of quad.wgsl.ts\nconst CIRCLE_INDEX = 1001;\n\n// a default region used for shapes\nconst DEFAULT_REGION: TexelRegion = {\n x: 0,\n y: 0,\n width: 0,\n height: 0,\n};\n\n/**\n * A node in the scene graph that renders a textured quad.\n *\n * This is a base class and is fairly low level. You will probably want to interact with\n * the wrapper class {@link Toodle.Quad} instead.\n */\nexport class QuadNode extends SceneNode {\n assetManager: AssetManager;\n\n #color: Color;\n #atlasCoords: AtlasCoords;\n #region: TexelRegion;\n #matrixPool: Pool<Mat3>;\n #flip: Vec2;\n /**\n * The offset of the cropped texture from the original texture\n * If uncropped, this will be 0,0\n */\n #cropOffset: Vec2;\n /**\n * The ratio of the cropped texture width and height to the original texture width and height\n * If uncropped, this will be 1,1\n */\n #cropRatio: Size;\n #atlasSize: Size;\n\n #textureId: TextureId;\n #writeInstance?: (array: Float32Array, offset: number) => void;\n\n constructor(options: QuadOptions, matrixPool: Pool<Mat3>) {\n assert(\n options.shader,\n \"QuadNode requires a shader to be explicitly provided\",\n );\n assert(options.size, \"QuadNode requires a size to be explicitly provided\");\n\n assert(\n options.atlasCoords,\n \"QuadNode requires atlas coords to be explicitly provided\",\n );\n\n options.render ??= {\n shader: options.shader,\n writeInstance: writeQuadInstance,\n };\n\n super(options);\n\n assert(options.assetManager, \"QuadNode requires an asset manager\");\n this.assetManager = options.assetManager;\n\n if (\n options.atlasCoords &&\n options.atlasCoords.atlasIndex >= RESERVED_PRIMITIVE_INDEX_START\n ) {\n this.#textureId = PRIMITIVE_TEXTURE;\n this.#region = DEFAULT_REGION;\n this.#atlasSize = DEFAULT_REGION;\n } else {\n assert(\n options.textureId,\n \"QuadNode requires texture id to be explicitly provided\",\n );\n this.#textureId = options.textureId;\n\n assert(\n options.region,\n \"QuadNode requires a region to be explicitly provided\",\n );\n this.#region = options.region;\n\n assert(\n options.atlasSize,\n \"QuadNode requires atlas size to be explicitly provided\",\n );\n this.#atlasSize = options.atlasSize;\n }\n\n this.#atlasCoords = options.atlasCoords;\n this.#color = options.color ?? { r: 1, g: 1, b: 1, a: 1 };\n this.#matrixPool = matrixPool;\n this.#flip = { x: options.flipX ? -1 : 1, y: options.flipY ? -1 : 1 };\n this.#cropOffset = options.cropOffset ?? { x: 0, y: 0 };\n this.#cropRatio = !this.#atlasCoords.uvScaleCropped\n ? { width: 1, height: 1 }\n : {\n width:\n this.#atlasCoords.uvScaleCropped.width /\n this.#atlasCoords.uvScale.width,\n height:\n this.#atlasCoords.uvScaleCropped.height /\n this.#atlasCoords.uvScale.height,\n };\n this.#writeInstance = options.writeInstance;\n }\n\n /**\n * The tint color of the quad.\n * When drawing shapes, this will be the fill color.\n * When drawing textures, this will be the color multiplier by default.\n * You can also use this value in fragment shaders by referencing `vertex.engine_tint`\n */\n get color() {\n return this.#color;\n }\n\n set color(value: Color) {\n this.#color = value;\n }\n\n /**\n * The size of the quad. See https://toodle.gg/f849595b3ed13fc956fc1459a5cb5f0228f9d259/examples/quad-size-scale.html\n */\n get size() {\n const size = super.size;\n if (!size) {\n throw new Error(\"QuadNode requires a size\");\n }\n return size;\n }\n\n set size(val: Size) {\n super.size = val;\n }\n\n /**\n * This is the final model matrix used to render the quad, which\n * may differ from the matrix passed down to the node's children.\n * Properties like `flipX` and `flipY` or `size` are applied here but not inherited by children.\n */\n get matrixWithSize() {\n const matrix = mat3.clone(this.matrix, this.#matrixPool.get());\n mat3.scale(\n matrix,\n [this.size.width * this.#flip.x, this.size.height * this.#flip.y],\n matrix,\n );\n\n return matrix;\n }\n\n /**\n * The atlas coordinates for the quad. These determine the region in the texture atlas\n * that is sampled for rendering in normalized uv space.\n */\n get atlasCoords() {\n return this.#atlasCoords;\n }\n\n /**\n * A subregion of the texture to render.\n * This is useful for rendering a single sprite from a spritesheet for instance.\n * It defaults to the full texture.\n */\n get region() {\n return this.#region;\n }\n\n get writeInstance() {\n return this.#writeInstance;\n }\n\n /**\n * Whether the image is mirrored horizontally.\n *\n * `true` means the image is mirrored (equivalent to a scale.x of -1),\n * `false` means it is not mirrored.\n */\n get flipX(): boolean {\n return this.#flip.x === -1;\n }\n\n /**\n * Sets whether the image is mirrored horizontally.\n *\n * `true` mirrors the image (equivalent to a scale.x of -1),\n * `false` restores normal orientation.\n */\n set flipX(value: boolean) {\n this.#flip.x = value ? -1 : 1;\n this.setDirty();\n }\n\n /**\n * Whether the image is mirrored vertically.\n *\n * `true` means the image is mirrored (equivalent to a scale.y of -1),\n * `false` means it is not mirrored.\n */\n get flipY(): boolean {\n return this.#flip.y === -1;\n }\n\n /**\n * Sets whether the image is mirrored vertically.\n *\n * `true` mirrors the image (equivalent to a scale.y of -1),\n * `false` restores normal orientation.\n */\n set flipY(value: boolean) {\n this.#flip.y = value ? -1 : 1;\n this.setDirty();\n }\n\n /**\n * The drawing offset of the texture.\n * This can be used to offset the texture from the origin of the quad.\n */\n get cropOffset(): Vec2 {\n return this.#cropOffset;\n }\n\n /**\n * The drawing offset of the texture.\n * This can be used to offset the texture from the origin of the quad.\n */\n set cropOffset(value: Vec2) {\n this.#cropOffset = value;\n }\n\n get textureId() {\n return this.#textureId;\n }\n\n /**\n * Whether this quad is rendering a primitive shape like a line or a circle/rect.\n */\n get isPrimitive() {\n return this.#textureId === PRIMITIVE_TEXTURE;\n }\n\n /**\n * Whether this quad is rendering a circle.\n */\n get isCircle() {\n return this.#atlasCoords.atlasIndex === CIRCLE_INDEX;\n }\n\n extra = {\n /**\n * Sets the atlas coords for the quad. This is for advanced use cases and by default these are\n * set automatically to reference the right texture atlas region.\n * @param value - The new atlas coords.\n */\n setAtlasCoords: (value: AtlasCoords) => {\n this.#atlasCoords = value;\n },\n\n /**\n * Returns the crop ratio for the quad. This is the relative difference in size\n * between the cropped and uncropped texture, and will be 1 if the quad has no transparent pixels\n * or if it is loaded without cropping..\n */\n cropRatio: () => {\n return this.#cropRatio;\n },\n\n /**\n * Returns the size of the texture atlas in texels, by default this is 4096x4096\n */\n atlasSize: () => {\n return this.#atlasSize;\n },\n };\n}\n\nexport type QuadOptions = NodeOptions & {\n textureId?: TextureId;\n /**\n * A subregion of the texture to render.\n * This is useful for rendering a single sprite from a spritesheet for instance.\n * It defaults to the full texture.\n */\n region?: TexelRegion;\n /**\n * Atlas coordinates are almost always set by toodle and the asset manager.\n * For advanced use cases, you can set these yourself to control what uvs are sampled\n * from the texture atlas.\n */\n atlasCoords?: AtlasCoords;\n\n assetManager?: AssetManager;\n\n shader?: IBackendShader;\n writeInstance?: (array: Float32Array, offset: number) => void;\n color?: Color;\n /**\n * flipX mirrors the image horizontally (equivalent to a scale.x multiplication\n * by -1) but allows for independent scaling\n */\n flipX?: boolean;\n /**\n * flipY mirrors the image vertically (equivalent to a scale.y multiplication\n * by -1) but allows for independent scaling\n */\n flipY?: boolean;\n /**\n * The offset of the cropped texture from the original texture\n * If uncropped, this will be 0,0\n */\n cropOffset?: Vec2;\n\n /**\n * The size of the texture atlas in texels. This is almost always set by toodle.\n */\n atlasSize?: Size;\n\n /**\n * The matrix pool to use for the quad.\n * This is used to avoid creating new matrices for each quad.\n */\n matrixPool?: Pool<Mat3>;\n};\n\nfunction writeQuadInstance(\n node: SceneNode,\n array: Float32Array,\n offset: number,\n) {\n if (!(node instanceof QuadNode)) {\n throw new Error(\"QuadNode.writeInstance can only be called on QuadNodes\");\n }\n\n array.set(node.matrixWithSize, offset);\n\n array.set(\n [node.color.r, node.color.g, node.color.b, node.color.a],\n offset + 12,\n );\n\n const region = node.region;\n if (node.textureId === PRIMITIVE_TEXTURE) {\n array.set(\n [\n node.atlasCoords.uvOffset.x,\n node.atlasCoords.uvOffset.y,\n node.atlasCoords.uvScale.width,\n node.atlasCoords.uvScale.height,\n ],\n offset + 16,\n );\n } else {\n const atlasSize = node.extra.atlasSize();\n array.set(\n [\n node.atlasCoords.uvOffset.x + region.x / atlasSize.width,\n node.atlasCoords.uvOffset.y + region.y / atlasSize.height,\n region.width / atlasSize.width,\n region.height / atlasSize.height,\n ],\n offset + 16,\n );\n }\n\n array.set(\n [\n // convert the offset in world space to the offset in the local space of the quad\n // this offset is applied to the unit quad _before_ the model matrix is applied\n // we divide by 2 because we want the center of the remaining region and not the full shift.\n // for example, if we crop the leftmost 90px of a 100px wide texture\n // we want the offset to be 45px and not 90px\n node.cropOffset.x / 2 / (node.atlasCoords.originalSize.width || 1),\n node.cropOffset.y / 2 / (node.atlasCoords.originalSize.height || 1),\n node.extra.cropRatio().width,\n node.extra.cropRatio().height,\n ],\n offset + 20,\n );\n\n new DataView(array.buffer).setUint32(\n array.byteOffset + (offset + 24) * Float32Array.BYTES_PER_ELEMENT,\n node.atlasCoords.atlasIndex,\n true,\n );\n\n node.writeInstance?.(array, offset + 28);\n\n return 1;\n}\n",
@@ -44,7 +44,7 @@
44
44
  "import { type Mat3, mat3 } from \"wgpu-matrix\";\nimport type { IBackendShader } from \"./backends/IBackendShader\";\nimport type { BlendMode } from \"./backends/IRenderBackend\";\nimport type { BackendType, IRenderBackend } from \"./backends/mod\";\nimport { detectBackend } from \"./backends/mod\";\nimport { WebGLBackend } from \"./backends/webgl2/mod\";\nimport { WebGPUBackend } from \"./backends/webgpu/mod\";\nimport type { PostProcess } from \"./backends/webgpu/postprocess/mod\";\nimport type { Color } from \"./coreTypes/Color\";\nimport type { EngineUniform } from \"./coreTypes/EngineUniform\";\nimport type { Point } from \"./coreTypes/Point\";\nimport type { Size } from \"./coreTypes/Size\";\nimport type { Limits, LimitsOptions } from \"./limits\";\nimport {\n convertScreenToWorld,\n convertWorldToScreen,\n createProjectionMatrix,\n} from \"./math/matrix\";\nimport { Batcher } from \"./scene/Batcher\";\nimport { Camera } from \"./scene/Camera\";\nimport { JumboQuadNode, type JumboQuadOptions } from \"./scene/JumboQuadNode\";\nimport { QuadNode, type QuadOptions } from \"./scene/QuadNode\";\nimport { type NodeOptions, SceneNode } from \"./scene/SceneNode\";\nimport { TextNode, type TextOptions } from \"./scene/TextNode\";\nimport type { Resolution } from \"./screen/resolution\";\nimport { AssetManager, type TextureId } from \"./textures/AssetManager\";\nimport { Pool } from \"./utils/mod\";\n\nexport class Toodle {\n /**\n * Asset manager. Use toodle.assets.loadTexture to load texture assets.\n */\n assets: AssetManager;\n\n /**\n * diagnostics can be used as a rough gauge for performance.\n * besides frames, these stats are reset at the beginning of each frame.\n */\n diagnostics = {\n /** number of instanced draw calls issued last frame. lower is better */\n drawCalls: 0,\n /** number of pipeline switches last frame. lower is better. to reduce pipeline switches, use fewer z-indexes or fewer custom shaders */\n pipelineSwitches: 0,\n /** number of frames rendered */\n frames: 0,\n /** number of instances enqueued last frame */\n instancesEnqueued: 0,\n };\n\n /** The render backend (WebGPU or WebGL2) */\n #backend: IRenderBackend;\n\n /**\n * Camera. This applies a 2d perspective projection matrix to any nodes drawn with toodle.draw\n */\n camera = new Camera();\n\n /**\n * clearColor is the color that will be used to clear the screen at the beginning of each frame\n * you can also think of this as the background color of the canvas\n */\n clearColor: Color = { r: 1, g: 1, b: 1, a: 1 };\n\n #resolution: Resolution;\n #resizeObserver: ResizeObserver;\n #engineUniform: EngineUniform;\n #projectionMatrix: Mat3 = mat3.identity();\n #batcher = new Batcher();\n #defaultFilter: GPUFilterMode;\n #matrixPool: Pool<Mat3>;\n #atlasSize: Size;\n\n /**\n * it's unlikely that you want to use the constructor directly.\n * see {@link Toodle.attach} for creating a Toodle instance that draws to a canvas.\n */\n constructor(\n backend: IRenderBackend,\n canvas: HTMLCanvasElement,\n resolution: Resolution,\n options: ToodleOptions,\n ) {\n this.#backend = backend;\n this.#matrixPool = new Pool<Mat3>(\n () => mat3.identity(),\n backend.limits.instanceCount,\n );\n this.#defaultFilter = options.filter ?? \"linear\";\n\n // Create AssetManager with the backend\n this.assets = new AssetManager(backend);\n\n this.#atlasSize = backend.atlasSize;\n this.#engineUniform = {\n resolution,\n camera: this.camera,\n viewProjectionMatrix: mat3.identity(),\n };\n this.#resolution = resolution;\n\n this.resize(this.#resolution);\n this.#resizeObserver = this.#createResizeObserver(canvas);\n }\n\n /**\n * Screen shader is an optional slot for post-processing effects.\n * Note that this will do the main render pass to an offscreen texture, which may impact performance.\n * Currently only supported in WebGPU mode.\n */\n get postprocess(): PostProcess | null {\n if (this.#backend.type !== \"webgpu\") return null;\n return (this.#backend as WebGPUBackend).getPostprocess();\n }\n\n set postprocess(value: PostProcess | null) {\n if (value !== null && this.#backend.type !== \"webgpu\") {\n throw new Error(\"Post-processing is only supported in WebGPU mode\");\n }\n if (this.#backend.type === \"webgpu\") {\n (this.#backend as WebGPUBackend).setPostprocess(value);\n }\n }\n\n /**\n * call resize when the canvas is resized.\n * this will update the projection matrix and the resolution.\n *\n * @param resolution - the resolution of the canvas in logical pixels.\n * this should be `canvas.clientWidth x canvas.clientHeight` and NOT `canvas.width * canvas.height`\n *\n * @example\n *\n * const canvas = document.querySelector(\"canvas\")!\n *\n * const observer = new ResizeObserver((entries) => {\n * if (entries.length === 0) return\n * toodle.resize({ width: canvas.clientWidth, height: canvas.clientHeight })\n * })\n *\n * observer.observe(canvas)\n */\n resize(resolution: Resolution) {\n createProjectionMatrix(resolution, this.#projectionMatrix);\n this.#resolution = resolution;\n this.#backend.resize(resolution.width, resolution.height);\n }\n\n #createResizeObserver(canvas: HTMLCanvasElement) {\n // see https://webgpufundamentals.org/webgpu/lessons/webgpu-resizing-the-canvas.html\n // for explanation of incorporating devicePixelRatio\n const resizeObserver = new ResizeObserver((entries) => {\n if (!entries || !entries.length) return;\n for (const entry of entries) {\n const width =\n entry.devicePixelContentBoxSize?.[0].inlineSize ||\n entry.contentBoxSize[0].inlineSize * devicePixelRatio;\n const height =\n entry.devicePixelContentBoxSize?.[0].blockSize ||\n entry.contentBoxSize[0].blockSize * devicePixelRatio;\n\n // uncomment these lines to debug issues with high dpi monitors\n // and OS zoom\n //\n // const rect = entry.target.getBoundingClientRect();\n // console.table({\n // width,\n // clientWidth: canvas.clientWidth,\n // contentBoxInlineSize: entry.contentBoxSize[0].inlineSize,\n // rectWidth: rect.width,\n // height,\n // clientHeight: canvas.clientHeight,\n // contentBoxBlockSize: entry.contentBoxSize[0].blockSize,\n // rectHeight: rect.height,\n // });\n\n if (canvas.width !== width || canvas.height !== height) {\n canvas.width = Math.max(1, width);\n canvas.height = Math.max(1, height);\n }\n this.resize({ width: canvas.clientWidth, height: canvas.clientHeight });\n }\n });\n try {\n resizeObserver.observe(canvas, { box: \"device-pixel-content-box\" });\n } catch {\n resizeObserver.observe(canvas);\n }\n return resizeObserver;\n }\n\n /**\n * The resolution of the canvas in css or logical pixels.\n *\n * @example\n *\n * // devicePixelRatio is 1, resolution is 200x200\n * <canvas width=\"200\" height=\"200\" style=\"width: 200px; height: 200px;\"></canvas>\n * // devicePixelRatio is 2, resolution is 100x100\n * <canvas width=\"200\" height=\"200\" style=\"width: 100px; height: 100px;\"></canvas>\n */\n get resolution() {\n return this.#resolution;\n }\n\n /**\n * Returns the currently configured Toodle engine limits\n *\n * See: https://toodle.gg/f849595b3ed13fc956fc1459a5cb5f0228f9d259/limits.html\n *\n * @example\n *\n * const instanceLimit: number = toodle.limits.instanceCount;\n */\n get limits(): Limits {\n return this.#backend.limits;\n }\n\n get batcher(): Batcher {\n return this.#batcher;\n }\n\n /**\n * The maximum number of pixels that can be loaded into texture atlases for this toodle instance.\n */\n get maxPixels() {\n return (\n this.limits.textureSize *\n this.limits.textureSize *\n this.limits.textureArrayLayers\n );\n }\n\n /**\n * The maximum amount of GPU memory that will be used by the Toodle instance.\n * This is a rough estimate and may not be exact. This will be allocated up front when calling Toodle.attach, and freed when calling toodle.destroy.\n */\n get maxGpuMemory() {\n return (\n this.limits.instanceCount *\n this.limits.instanceBufferSize *\n this.limits.shaderCount\n );\n }\n\n /**\n * call startFrame before drawing anything.\n * this will create a new encoder and render pass.\n *\n * @example\n *\n * toodle.startFrame();\n * // draw stuff\n * toodle.endFrame();\n */\n startFrame(options?: StartFrameOptions) {\n this.#backend.startFrame(this.clearColor, options?.loadOp ?? \"clear\");\n\n this.diagnostics.drawCalls =\n this.diagnostics.pipelineSwitches =\n this.diagnostics.instancesEnqueued =\n 0;\n }\n\n /**\n * call draw in between start frame and end frame to enqueue an instanced draw call.\n *\n * @example\n *\n * toodle.assets.loadTexture(\"myImage\", \"assets/image.png\");\n * const quad = toodle.Quad(\"myImage\");\n *\n * toodle.startFrame();\n * toodle.draw(quad);\n * toodle.endFrame();\n */\n draw(node: SceneNode) {\n if (node instanceof QuadNode) {\n node.assetManager.validateTextureReference(node);\n } else {\n this.assets.validateTextureReference(node);\n }\n this.#batcher.enqueue(node);\n }\n\n /**\n * call end frame to run through enqueued draw calls and submit them to the GPU.\n *\n * @example\n *\n * toodle.startFrame();\n * // draw stuff\n * toodle.endFrame();\n */\n endFrame() {\n try {\n mat3.mul(\n this.#projectionMatrix,\n this.camera.matrix,\n this.#engineUniform.viewProjectionMatrix,\n );\n this.#engineUniform.resolution = this.#resolution;\n\n // Update engine uniforms on the backend\n this.#backend.updateEngineUniform(this.#engineUniform);\n\n for (const pipeline of this.#batcher.pipelines) {\n pipeline.shader.startFrame(this.#engineUniform);\n }\n\n this.diagnostics.instancesEnqueued = this.#batcher.nodes.length;\n if (this.#batcher.nodes.length > this.limits.instanceCount) {\n const err = new Error(\n `ToodleInstanceCap: ${this.batcher.nodes.length} instances enqueued, max is ${this.limits.instanceCount}`,\n );\n err.name = \"ToodleInstanceCap\";\n throw err;\n }\n\n for (const layer of this.#batcher.layers) {\n for (const pipeline of layer.pipelines) {\n this.diagnostics.pipelineSwitches++;\n this.diagnostics.drawCalls += pipeline.shader.processBatch(\n pipeline.nodes,\n );\n }\n }\n\n for (const pipeline of this.#batcher.pipelines) {\n pipeline.shader.endFrame();\n }\n\n this.#backend.endFrame();\n } finally {\n this.#batcher.flush();\n this.#matrixPool.free();\n this.diagnostics.frames++;\n }\n }\n\n /**\n * Convert a point from one coordinate space to another.\n *\n * @param point - The point to convert.\n * @param options - The options for the conversion.\n * @returns The converted point.\n */\n convertSpace(\n point: Point,\n options: { from: \"screen\" | \"world\"; to: \"world\" | \"screen\" },\n ): Point {\n if (options.from === \"screen\" && options.to === \"world\") {\n return convertScreenToWorld(\n point,\n this.camera,\n this.#projectionMatrix,\n this.#resolution,\n );\n }\n\n if (options.from === \"world\" && options.to === \"screen\") {\n return convertWorldToScreen(\n point,\n this.camera,\n this.#projectionMatrix,\n this.#resolution,\n );\n }\n\n if (options.from === options.to) {\n return point;\n }\n\n throw new Error(\n `Unknown conversion from: ${options.from} to: ${options.to}`,\n );\n }\n\n /**\n * The number of frames rendered since this Toodle instance was created.\n */\n get frameCount() {\n return this.diagnostics.frames;\n }\n\n /**\n * Create a custom shader for quad instances. In some engines, this might be called a material.\n *\n * @param label Debug name of the shader\n * @param instanceCount - The maximum number of instances that will be processed by the shader. Note that a worst-case buffer of this many instances will be immediately allocated.\n * @param userCode - The WGSL code to be used for the shader (WebGPU only).\n * @param blendMode - The blend mode to be used for the shader.\n *\n * @example\n *\n *\n */\n QuadShader(\n label: string,\n instanceCount: number,\n userCode: string,\n shaderOpts?: QuadShaderOpts,\n ): IBackendShader {\n return this.#backend.createQuadShader({\n label,\n instanceCount,\n userCode,\n blendMode: shaderOpts?.blendMode,\n atlasId: shaderOpts?.atlasId,\n });\n }\n\n /**\n * Create a new quad node.\n *\n * @param assetId - The ID of the asset to use for the quad. This must have been loaded with toodle.assets.loadBundle.\n *\n * @param options - QuadOptions for Quad creation\n * @param options\n * @example\n *\n * await toodle.assets.loadTextures({\n * \"myImage\": new URL(\"assets/image.png\"),\n * });\n * const quad = toodle.Quad(\"myImage\");\n *\n * toodle.startFrame();\n * toodle.draw(quad);\n * toodle.endFrame();\n */\n Quad(assetId: TextureId, options: QuadOptions = {}) {\n const assetManager = options.assetManager ?? this.assets;\n options.size ??= assetManager.getSize(assetId);\n options.shader ??= this.#defaultQuadShader();\n options.atlasCoords ??= assetManager.extra.getAtlasCoords(assetId)[0];\n options.textureId ??= assetId;\n options.cropOffset ??= assetManager.extra.getTextureOffset(assetId);\n options.assetManager = assetManager;\n\n options.atlasSize = this.#atlasSize;\n options.region ??= {\n x: 0,\n y: 0,\n width: options.atlasCoords.uvScale.width * this.#atlasSize.width,\n height: options.atlasCoords.uvScale.height * this.#atlasSize.height,\n };\n\n options.assetManager = assetManager;\n const quad = new QuadNode(options, this.#matrixPool);\n return quad;\n }\n\n /**\n * Create a jumbo quad node. This contains multiple tiles for a single texture.\n *\n * @param assetId - The ID of the asset to use for the jumbo quad. This must have been loaded with toodle.assets.loadTextures.\n *\n * @param options - QuadOptions for Quad creation\n *\n */\n JumboQuad(assetId: TextureId, options: JumboQuadOptions) {\n options.shader ??= this.#defaultQuadShader();\n options.textureId ??= assetId;\n options.cropOffset ??= {\n x: 0,\n y: 0,\n };\n options.tiles ??= [];\n\n // this holds the size of the full texture based on all of its tiles\n const originalSize = {\n width: 0,\n height: 0,\n };\n\n for (const tile of options.tiles) {\n if (!tile.size) {\n tile.size = this.assets.getSize(tile.textureId);\n }\n\n if (!tile.atlasCoords) {\n tile.atlasCoords = this.assets.extra.getAtlasCoords(tile.textureId)[0];\n }\n\n if (tile.offset.x + tile.size!.width > originalSize.width) {\n originalSize.width = tile.offset.x + tile.size!.width;\n }\n\n if (tile.offset.y + tile.size!.height > originalSize.height) {\n originalSize.height = tile.offset.y + tile.size!.height;\n }\n }\n\n options.region ??= {\n x: 0,\n y: 0,\n width: originalSize.width,\n height: originalSize.height,\n };\n\n options.size ??= {\n width: originalSize.width,\n height: originalSize.height,\n };\n\n options.atlasSize = this.#atlasSize;\n\n options.assetManager = this.assets;\n\n return new JumboQuadNode(options, this.#matrixPool);\n }\n\n /**\n * Create a new container node.\n *\n * @example\n *\n * const node = toodle.Node();\n * const child = node.add(toodle.Node());\n * node.position = [100, 100];\n * console.log(child.matrix);\n */\n Node(nodeOpts?: NodeOptions) {\n return new SceneNode(nodeOpts);\n }\n\n Text(fontId: string, text: string, textOpts?: TextOptions) {\n const shader = this.assets.getFont(fontId);\n\n return new TextNode(shader, text, textOpts);\n }\n\n shapes = {\n Rect: (options: QuadOptions = {}) => {\n options.size ??= { width: 1, height: 1 };\n options.shader ??= this.#defaultQuadShader();\n options.atlasCoords ??= {\n atlasIndex: 1000,\n uvOffset: { x: 0, y: 0 },\n uvScale: { width: 0, height: 0 },\n cropOffset: { x: 0, y: 0 },\n originalSize: { width: 1, height: 1 },\n };\n options.assetManager = this.assets;\n\n const quad = new QuadNode(options, this.#matrixPool);\n\n if (options?.position) {\n quad.position = options.position;\n }\n\n if (options?.rotation) {\n quad.rotation = options.rotation;\n }\n\n if (options?.scale) {\n quad.scale = options.scale;\n }\n\n return quad;\n },\n\n Circle: (options: CircleOptions = { radius: 50 }) => {\n const radius = options.radius ?? 50;\n const diameter = radius * 2;\n\n const quadOptions: QuadOptions = {\n ...options,\n size: { width: diameter, height: diameter },\n shader: options.shader ?? this.#defaultQuadShader(),\n atlasCoords: options.atlasCoords ?? {\n atlasIndex: 1001,\n uvOffset: { x: 0, y: 0 },\n uvScale: { width: 0, height: 0 },\n cropOffset: { x: 0, y: 0 },\n originalSize: { width: 1, height: 1 },\n },\n assetManager: this.assets,\n };\n\n const quad = new QuadNode(quadOptions, this.#matrixPool);\n\n if (options?.position) {\n quad.position = options.position;\n }\n\n if (options?.rotation) {\n quad.rotation = options.rotation;\n }\n\n if (options?.scale) {\n quad.scale = options.scale;\n }\n\n return quad;\n },\n\n Line: (options: LineOptions) => {\n const center = {\n x: (options.start.x + options.end.x) / 2,\n y: (options.start.y + options.end.y) / 2,\n };\n const angle = Math.atan2(\n options.end.y - options.start.y,\n options.end.x - options.start.x,\n );\n const length = Math.sqrt(\n (options.end.x - options.start.x) ** 2 +\n (options.end.y - options.start.y) ** 2,\n );\n\n const line = new QuadNode(\n {\n color: options.color,\n atlasCoords: {\n atlasIndex: 1000,\n uvOffset: { x: 0, y: 0 },\n uvScale: { width: 0, height: 0 },\n cropOffset: { x: 0, y: 0 },\n originalSize: { width: 1, height: 1 },\n },\n shader: options.shader ?? this.#defaultQuadShader(),\n size: { width: 1, height: 1 },\n layer: options.layer,\n key: options.key,\n rotationRadians: angle,\n assetManager: this.assets,\n scale: {\n x: length,\n y: options.thickness ?? 1,\n },\n position: center,\n },\n this.#matrixPool,\n );\n\n return line;\n },\n };\n\n #quadShader: IBackendShader | null = null;\n\n #defaultQuadShader(): IBackendShader {\n if (this.#quadShader) {\n return this.#quadShader;\n }\n\n // For WebGPU, we can provide custom WGSL shader code\n // For WebGL, the backend will use its default shader\n const userCode =\n this.#backend.type === \"webgpu\"\n ? /*wgsl*/ `\n @fragment\n fn frag(vertex: VertexOutput) -> @location(0) vec4f {\n let color = default_fragment_shader(vertex, ${\n this.#defaultFilter === \"nearest\"\n ? \"nearestSampler\"\n : \"linearSampler\"\n });\n return color;\n }\n `\n : undefined;\n\n const shader = this.#backend.createQuadShader({\n label: \"default quad shader\",\n instanceCount: this.limits.instanceCount,\n userCode,\n });\n\n this.#quadShader = shader;\n return shader;\n }\n\n /**\n * Attach toodle to a canvas.\n *\n * @param canvas - The canvas to attach toodle to.\n * @param options - ToodleOptions for the creation of the toodle instance\n * @returns A promise that resolves to a Toodle instance.\n *\n * @example\n *\n * const canvas = document.createElement(\"canvas\");\n *\n * const toodle = await Toodle.attach(canvas);\n */\n static async attach(canvas: HTMLCanvasElement, options?: ToodleOptions) {\n canvas.width = canvas.clientWidth * devicePixelRatio;\n canvas.height = canvas.clientHeight * devicePixelRatio;\n\n const backendOption = options?.backend ?? \"auto\";\n let backendType: BackendType;\n\n if (backendOption === \"auto\") {\n backendType = await detectBackend();\n } else {\n backendType = backendOption;\n }\n\n let backend: IRenderBackend;\n if (backendType === \"webgpu\") {\n backend = await WebGPUBackend.create(canvas, {\n limits: options?.limits,\n });\n } else {\n backend = await WebGLBackend.create(canvas, {\n limits: options?.limits,\n });\n }\n\n return new Toodle(\n backend,\n canvas,\n {\n width: canvas.clientWidth,\n height: canvas.clientHeight,\n },\n options || {},\n );\n }\n\n /**\n * Destroy the toodle instance and release its gpu and cpu resources.\n *\n * Note that calling any methods on the instance after this result in undefined behavior.\n */\n destroy() {\n this.#resizeObserver.disconnect();\n this.#backend.destroy();\n this.assets.destroy();\n }\n\n /**\n * Get the render backend instance.\n * Cast to WebGPUBackend or WebGLBackend to access backend-specific properties.\n *\n * @example\n * if (toodle.backend instanceof WebGPUBackend) {\n * const device = toodle.backend.device;\n * }\n */\n get backend(): WebGPUBackend | WebGLBackend {\n return this.#backend as WebGPUBackend | WebGLBackend;\n }\n}\n\nexport type StartFrameOptions = {\n /**\n * The load operation to use for the render pass.\n *\n * **clear**: clear the current texture to the clear color. necessary if you're using toodle without another renderer.\n *\n * **load**: blend the render pass with the current canvas contents. useful if you're using toodle alongside another renderer like painter or pixi.js\n *\n * @default \"clear\"\n *\n */\n loadOp?: \"load\" | \"clear\";\n};\n\nexport type ToodleOptions = {\n /**\n * The filter mode to use for the default quad shader.\n * see: https://webgpufundamentals.org/webgpu/lessons/webgpu-textures.html#a-mag-filter\n *\n * **nearest**: nearest neighbor sampling. makes pixel art look sharp and vector art look jaggy.\n *\n * **linear**: linear sampling. makes vector art look smooth and pixel art look blurry.\n *\n * @default \"linear\"\n */\n filter?: \"nearest\" | \"linear\";\n limits?: LimitsOptions;\n /**\n * The rendering backend to use.\n *\n * **auto**: Automatically detect the best available backend (WebGPU > WebGL).\n *\n * **webgpu**: Use WebGPU backend. Throws if WebGPU is not available.\n *\n * **webgl2**: Use WebGL 2 backend (fallback for older browsers).\n *\n * @default \"auto\"\n */\n backend?: BackendType | \"auto\";\n};\n\nexport type CircleOptions = Omit<QuadOptions, \"size\"> & {\n /**\n * The radius of the circle in pixels.\n * The diameter will be radius * 2.\n * @default 50\n */\n radius?: number;\n};\n\nexport type LineOptions = {\n /**\n * The start position of the line.\n */\n start: Point;\n /**\n * The end position of the line.\n */\n end: Point;\n /**\n * The color of the line.\n */\n color: Color;\n /**\n * The thickness of the line.\n */\n thickness?: number;\n /**\n * The shader to use for the line.\n */\n shader?: IBackendShader;\n /**\n * The layer to draw the line on.\n */\n layer?: number;\n /**\n * A unique identifier for the line.\n */\n key?: string;\n};\n\nexport type QuadShaderOpts = {\n /**\n * Blend mode for alpha compositing.\n */\n blendMode?: BlendMode;\n /**\n * Which texture atlas to bind (default: \"default\").\n */\n atlasId?: string;\n};\n",
45
45
  "/**\n * Named colors from the web for easier prototyping than using hex codes or rgba values.\n *\n * https://www.w3schools.com/colors/colors_names.asp\n */\nexport const web = Object.freeze({\n aliceBlue: { r: 0.941176, g: 0.972549, b: 1, a: 1 },\n antiqueWhite: { r: 0.980392, g: 0.921569, b: 0.843137, a: 1 },\n aqua: { r: 0, g: 1, b: 1, a: 1 },\n aquamarine: { r: 0.498039, g: 1, b: 0.831373, a: 1 },\n azure: { r: 0.941176, g: 1, b: 1, a: 1 },\n beige: { r: 0.960784, g: 0.960784, b: 0.862745, a: 1 },\n bisque: { r: 1, g: 0.894118, b: 0.768627, a: 1 },\n black: { r: 0, g: 0, b: 0, a: 1 },\n blanchedAlmond: { r: 1, g: 0.921569, b: 0.803922, a: 1 },\n blue: { r: 0, g: 0, b: 1, a: 1 },\n blueViolet: { r: 0.541176, g: 0.168627, b: 0.886275, a: 1 },\n brown: { r: 0.647059, g: 0.164706, b: 0.164706, a: 1 },\n burlywood: { r: 0.870588, g: 0.721569, b: 0.529412, a: 1 },\n cadetBlue: { r: 0.372549, g: 0.619608, b: 0.627451, a: 1 },\n chartreuse: { r: 0.498039, g: 1, b: 0, a: 1 },\n chocolate: { r: 0.823529, g: 0.411765, b: 0.117647, a: 1 },\n coral: { r: 1, g: 0.498039, b: 0.313726, a: 1 },\n cornflowerBlue: { r: 0.392157, g: 0.584314, b: 0.929412, a: 1 },\n cornsilk: { r: 1, g: 0.972549, b: 0.862745, a: 1 },\n crimson: { r: 0.862745, g: 0.0784314, b: 0.235294, a: 1 },\n cyan: { r: 0, g: 1, b: 1, a: 1 },\n darkBlue: { r: 0, g: 0, b: 0.545098, a: 1 },\n darkCyan: { r: 0, g: 0.545098, b: 0.545098, a: 1 },\n darkGoldenrod: { r: 0.721569, g: 0.52549, b: 0.0431373, a: 1 },\n darkGray: { r: 0.662745, g: 0.662745, b: 0.662745, a: 1 },\n darkGreen: { r: 0, g: 0.392157, b: 0, a: 1 },\n darkKhaki: { r: 0.741176, g: 0.717647, b: 0.419608, a: 1 },\n darkMagenta: { r: 0.545098, g: 0, b: 0.545098, a: 1 },\n darkOliveGreen: { r: 0.333333, g: 0.419608, b: 0.184314, a: 1 },\n darkOrange: { r: 1, g: 0.54902, b: 0, a: 1 },\n darkOrchid: { r: 0.6, g: 0.196078, b: 0.8, a: 1 },\n darkRed: { r: 0.545098, g: 0, b: 0, a: 1 },\n darkSalmon: { r: 0.913725, g: 0.588235, b: 0.478431, a: 1 },\n darkSeaGreen: { r: 0.560784, g: 0.737255, b: 0.560784, a: 1 },\n darkSlateBlue: { r: 0.282353, g: 0.239216, b: 0.545098, a: 1 },\n darkSlateGray: { r: 0.184314, g: 0.309804, b: 0.309804, a: 1 },\n darkTurquoise: { r: 0, g: 0.807843, b: 0.819608, a: 1 },\n darkViolet: { r: 0.580392, g: 0, b: 0.827451, a: 1 },\n deepPink: { r: 1, g: 0.0784314, b: 0.576471, a: 1 },\n deepSkyBlue: { r: 0, g: 0.74902, b: 1, a: 1 },\n dimGray: { r: 0.411765, g: 0.411765, b: 0.411765, a: 1 },\n dodgerBlue: { r: 0.117647, g: 0.564706, b: 1, a: 1 },\n firebrick: { r: 0.698039, g: 0.133333, b: 0.133333, a: 1 },\n floralWhite: { r: 1, g: 0.980392, b: 0.941176, a: 1 },\n forestGreen: { r: 0.133333, g: 0.545098, b: 0.133333, a: 1 },\n fuchsia: { r: 1, g: 0, b: 1, a: 1 },\n gainsboro: { r: 0.862745, g: 0.862745, b: 0.862745, a: 1 },\n ghostWhite: { r: 0.972549, g: 0.972549, b: 1, a: 1 },\n gold: { r: 1, g: 0.843137, b: 0, a: 1 },\n goldenrod: { r: 0.854902, g: 0.647059, b: 0.12549, a: 1 },\n gray: { r: 0.745098, g: 0.745098, b: 0.745098, a: 1 },\n green: { r: 0, g: 1, b: 0, a: 1 },\n greenYellow: { r: 0.678431, g: 1, b: 0.184314, a: 1 },\n honeydew: { r: 0.941176, g: 1, b: 0.941176, a: 1 },\n hotPink: { r: 1, g: 0.411765, b: 0.705882, a: 1 },\n indigo: { r: 0.294118, g: 0, b: 0.509804, a: 1 },\n ivory: { r: 1, g: 1, b: 0.941176, a: 1 },\n khaki: { r: 0.941176, g: 0.901961, b: 0.54902, a: 1 },\n lavender: { r: 0.901961, g: 0.901961, b: 0.980392, a: 1 },\n lavenderBlush: { r: 1, g: 0.941176, b: 0.960784, a: 1 },\n lawnGreen: { r: 0.486275, g: 0.988235, b: 0, a: 1 },\n lemonChiffon: { r: 1, g: 0.980392, b: 0.803922, a: 1 },\n lightBlue: { r: 0.678431, g: 0.847059, b: 0.901961, a: 1 },\n lightCoral: { r: 0.941176, g: 0.501961, b: 0.501961, a: 1 },\n lightCyan: { r: 0.878431, g: 1, b: 1, a: 1 },\n lightGoldenrod: { r: 0.980392, g: 0.980392, b: 0.823529, a: 1 },\n lightGray: { r: 0.827451, g: 0.827451, b: 0.827451, a: 1 },\n lightGreen: { r: 0.564706, g: 0.933333, b: 0.564706, a: 1 },\n lightPink: { r: 1, g: 0.713726, b: 0.756863, a: 1 },\n lightSalmon: { r: 1, g: 0.627451, b: 0.478431, a: 1 },\n lightSeaGreen: { r: 0.12549, g: 0.698039, b: 0.666667, a: 1 },\n lightSkyBlue: { r: 0.529412, g: 0.807843, b: 0.980392, a: 1 },\n lightSlateGray: { r: 0.466667, g: 0.533333, b: 0.6, a: 1 },\n lightSteelBlue: { r: 0.690196, g: 0.768627, b: 0.870588, a: 1 },\n lightYellow: { r: 1, g: 1, b: 0.878431, a: 1 },\n lime: { r: 0, g: 1, b: 0, a: 1 },\n limeGreen: { r: 0.196078, g: 0.803922, b: 0.196078, a: 1 },\n linen: { r: 0.980392, g: 0.941176, b: 0.901961, a: 1 },\n magenta: { r: 1, g: 0, b: 1, a: 1 },\n maroon: { r: 0.690196, g: 0.188235, b: 0.376471, a: 1 },\n mediumAquamarine: { r: 0.4, g: 0.803922, b: 0.666667, a: 1 },\n mediumBlue: { r: 0, g: 0, b: 0.803922, a: 1 },\n mediumOrchid: { r: 0.729412, g: 0.333333, b: 0.827451, a: 1 },\n mediumPurple: { r: 0.576471, g: 0.439216, b: 0.858824, a: 1 },\n mediumSeaGreen: { r: 0.235294, g: 0.701961, b: 0.443137, a: 1 },\n mediumSlateBlue: { r: 0.482353, g: 0.407843, b: 0.933333, a: 1 },\n mediumSpringGreen: { r: 0, g: 0.980392, b: 0.603922, a: 1 },\n mediumTurquoise: { r: 0.282353, g: 0.819608, b: 0.8, a: 1 },\n mediumVioletRed: { r: 0.780392, g: 0.0823529, b: 0.521569, a: 1 },\n midnightBlue: { r: 0.0980392, g: 0.0980392, b: 0.439216, a: 1 },\n mintCream: { r: 0.960784, g: 1, b: 0.980392, a: 1 },\n mistyRose: { r: 1, g: 0.894118, b: 0.882353, a: 1 },\n moccasin: { r: 1, g: 0.894118, b: 0.709804, a: 1 },\n navyBlue: { r: 0, g: 0, b: 0.501961, a: 1 },\n oldLace: { r: 0.992157, g: 0.960784, b: 0.901961, a: 1 },\n olive: { r: 0.501961, g: 0.501961, b: 0, a: 1 },\n oliveDrab: { r: 0.419608, g: 0.556863, b: 0.137255, a: 1 },\n orange: { r: 1, g: 0.647059, b: 0, a: 1 },\n orangeRed: { r: 1, g: 0.270588, b: 0, a: 1 },\n orchid: { r: 0.854902, g: 0.439216, b: 0.839216, a: 1 },\n paleGoldenrod: { r: 0.933333, g: 0.909804, b: 0.666667, a: 1 },\n paleGreen: { r: 0.596078, g: 0.984314, b: 0.596078, a: 1 },\n paleTurquoise: { r: 0.686275, g: 0.933333, b: 0.933333, a: 1 },\n paleVioletRed: { r: 0.858824, g: 0.439216, b: 0.576471, a: 1 },\n papayaWhip: { r: 1, g: 0.937255, b: 0.835294, a: 1 },\n peachPuff: { r: 1, g: 0.854902, b: 0.72549, a: 1 },\n peru: { r: 0.803922, g: 0.521569, b: 0.247059, a: 1 },\n pink: { r: 1, g: 0.752941, b: 0.796078, a: 1 },\n plum: { r: 0.866667, g: 0.627451, b: 0.866667, a: 1 },\n powderBlue: { r: 0.690196, g: 0.878431, b: 0.901961, a: 1 },\n purple: { r: 0.627451, g: 0.12549, b: 0.941176, a: 1 },\n rebeccaPurple: { r: 0.4, g: 0.2, b: 0.6, a: 1 },\n red: { r: 1, g: 0, b: 0, a: 1 },\n rosyBrown: { r: 0.737255, g: 0.560784, b: 0.560784, a: 1 },\n royalBlue: { r: 0.254902, g: 0.411765, b: 0.882353, a: 1 },\n saddleBrown: { r: 0.545098, g: 0.270588, b: 0.0745098, a: 1 },\n salmon: { r: 0.980392, g: 0.501961, b: 0.447059, a: 1 },\n sandyBrown: { r: 0.956863, g: 0.643137, b: 0.376471, a: 1 },\n seaGreen: { r: 0.180392, g: 0.545098, b: 0.341176, a: 1 },\n seashell: { r: 1, g: 0.960784, b: 0.933333, a: 1 },\n sienna: { r: 0.627451, g: 0.321569, b: 0.176471, a: 1 },\n silver: { r: 0.752941, g: 0.752941, b: 0.752941, a: 1 },\n skyBlue: { r: 0.529412, g: 0.807843, b: 0.921569, a: 1 },\n slateBlue: { r: 0.415686, g: 0.352941, b: 0.803922, a: 1 },\n slateGray: { r: 0.439216, g: 0.501961, b: 0.564706, a: 1 },\n snow: { r: 1, g: 0.980392, b: 0.980392, a: 1 },\n springGreen: { r: 0, g: 1, b: 0.498039, a: 1 },\n steelBlue: { r: 0.27451, g: 0.509804, b: 0.705882, a: 1 },\n tan: { r: 0.823529, g: 0.705882, b: 0.54902, a: 1 },\n teal: { r: 0, g: 0.501961, b: 0.501961, a: 1 },\n thistle: { r: 0.847059, g: 0.74902, b: 0.847059, a: 1 },\n tomato: { r: 1, g: 0.388235, b: 0.278431, a: 1 },\n transparent: { r: 1, g: 1, b: 1, a: 0 },\n turquoise: { r: 0.25098, g: 0.878431, b: 0.815686, a: 1 },\n violet: { r: 0.933333, g: 0.509804, b: 0.933333, a: 1 },\n webGray: { r: 0.501961, g: 0.501961, b: 0.501961, a: 1 },\n webGreen: { r: 0, g: 0.501961, b: 0, a: 1 },\n webMaroon: { r: 0.501961, g: 0, b: 0, a: 1 },\n webPurple: { r: 0.501961, g: 0, b: 0.501961, a: 1 },\n wheat: { r: 0.960784, g: 0.870588, b: 0.701961, a: 1 },\n white: { r: 1, g: 1, b: 1, a: 1 },\n whiteSmoke: { r: 0.960784, g: 0.960784, b: 0.960784, a: 1 },\n yellow: { r: 1, g: 1, b: 0, a: 1 },\n yellowGreen: { r: 0.603922, g: 0.803922, b: 0.196078, a: 1 },\n});\n"
46
46
  ],
47
- "mappings": "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AAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI;AAAA;AAAE,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,UAAQ,IAAE,KAAK,OAAK,IAAE,KAAK,SAAO;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAU;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,aAAW,IAAE,KAAK,SAAO,IAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,MAAY,OAAO,GAAE;AAAA,IAAC,OAAQ;AAAA;AAAK;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,SAAO,IAAE,KAAK,SAAO;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAU;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM,GAAE,KAAK,UAAQ;AAAA;AAAM;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAa,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAA,EAAM,mBAAmB,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAM;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAa,MAAM,CAAC,IAAE;AAAA,IAAC,IAAG,GAAE,IAAI,GAAE,KAAK;AAAA,MAAK,WAAU,MAAK,KAAK;AAAA,QAAK,GAAE,OAAO,EAAC;AAAA;AAAA,EAAG,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,OAAI,GAAE,KAAG,KAAK,OAAM,GAAE,eAAe,MAAK,GAAE,OAAO;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,oBAAkB,MAAK,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAW,oBAAoB,CAAC,IAAE;AAAA,IAAC,KAAK,oBAAkB;AAAA;AAAA,MAAO,SAAS,GAAE;AAAA,IAAC,OAAO,EAAE,IAAI,KAAK,IAAI;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,eAAe,MAAK,GAAE,OAAO;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAK,GAAE,OAAO,EAAC;AAAA,IAAE,GAAE,IAAI;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAU,MAAM,CAAC,IAAE;AAAA,IAAC,GAAE,IAAI,GAAE,KAAK,WAAS,KAAK,QAAQ,OAAO,EAAC;AAAA;AAAA,EAAG,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,eAAe,MAAK,GAAE,OAAO;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,cAAY;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAY,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,KAAK,aAAY;AAAA,MAAC,MAAM,KAAE,GAAE,eAAe,KAAK,aAAY,GAAE,OAAO;AAAA,MAAE,OAAc,OAAP,QAAU,KAAK,UAAQ,GAAE,WAAW,IAAE,KAAK,SAAQ,GAAE,OAAO,IAAE;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,YAAY,OAAO,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,QAAM,IAAE,KAAK,OAAK;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAc,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAmB,OAAZ,cAAgB,GAAE,KAAG,KAAK,OAAM,KAAK;AAAA;AAAA,MAAU,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,iBAAiB;AAAA;AAAA,MAAO,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,iBAAiB,MAAI,KAAK,iBAAiB;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK,iBAAiB,KAAG,KAAK,MAAM,SAAO,QAAQ,MAAM,sBAAsB,GAAE;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK,iBAAiB,MAAI,KAAK,iBAAiB,KAAG,KAAK,MAAM,QAAM,QAAQ,MAAM,kCAAkC,GAAE,IAAI,aAAa,CAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAc,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,MAAM,OAAO,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,QAAM;AAAA;AAAA,EAAG,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,MAAM,OAAO,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,WAAS,IAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAU,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,eAAe,MAAK,GAAE,OAAO;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,MAAM,OAAO,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,WAAS,IAAE,KAAK,OAAK,IAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAW,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,SAAO,GAAE,OAAK,KAAU,GAAE,SAAV,SAAwB,GAAE,SAAV,QAAe,GAAG,MAAY,GAAE,SAAV,SAAwB,GAAE,SAAV,QAAe,GAAG,MAAI,GAAG;AAAA;AAAA,EAAI,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,eAAe,MAAK,GAAE,OAAO;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,KAAK,OAAO,EAAC,GAAE,KAAK,MAAM,OAAO,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAU;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,YAAU;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAO,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,EAAC;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAU,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAW;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,YAAU,IAAE,KAAK,OAAK;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAS,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,UAAU,OAAO,EAAC,GAAE,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAG;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAS;AAAA;AAAC,MAAM,WAAW,EAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,QAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAO;AAAA;AAAY;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,KAAK,SAAO,MAAK,KAAK,WAAS,IAAE,KAAK,SAAO,IAAE,KAAK,KAAG,GAAG;AAAA;AAAA,EAAO,KAAK,GAAE;AAAA,IAAC,MAAM,8BAA8B,KAAK,YAAY;AAAA;AAAA,EAAO,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,QAAQ,MAAM,qCAAqC,KAAK,YAAY,MAAM;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qCAAqC,KAAK,YAAY,MAAM,GAAE;AAAA;AAAA,EAAK,QAAQ,GAAE;AAAA,IAAC,OAAO,IAAI,KAAK,SAAS,YAAY;AAAA;AAAK;AAAC,GAAG,MAAI;AAAA;AAAE,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM,IAAI,EAAE,QAAO,IAAI,GAAE,IAAI;AAAA;AAAA,EAAG,QAAQ,GAAE;AAAA,IAAC,OAAO;AAAA;AAAO;AAAC,GAAG,OAAK,IAAI;AAAA;AAAG,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,IAAI,EAAE,WAAU,GAAE,UAAS,IAAI,GAAE,IAAI,GAAE,KAAK,YAAU;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,UAAU,aAAa,IAAE,IAAE,IAAE,EAAC;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,OAAO,KAAE,KAAK,UAAU,WAAW,IAAE,IAAE,EAAC,IAAE;AAAA;AAAA,EAAK,QAAQ,GAAE;AAAA,IAAC,OAAO,IAAI,KAAK,UAAU,SAAS;AAAA;AAAI;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,KAAE,MAAK;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,cAAa,cAAY,cAAa,eAAa,cAAa,eAAa,KAAK,OAAK,KAAU,KAAK,SAAS,SAAtB,QAA2B,KAAE,KAAK,MAAM,EAAC,KAAG,IAAE,KAAK,OAAK,IAAI,aAAa,CAAC,EAAC,CAAC,IAAE,KAAK,OAAK,MAAG,IAAE,IAAI,YAAY,CAAC,EAAC,CAAC,IAAE,IAAI,WAAW,CAAC,EAAC,CAAC,IAAU,KAAK,SAAS,SAAtB,SAAqC,KAAK,SAAS,SAAvB,SAA4B,KAAK,OAAK,IAAI,WAAW,CAAC,EAAC,CAAC,IAAU,KAAK,SAAS,SAAtB,QAA2B,KAAK,OAAK,IAAI,YAAY,CAAC,EAAC,CAAC,IAAU,KAAK,SAAS,SAAtB,SAAoC,KAAK,SAAS,SAAtB,QAA2B,KAAK,OAAK,IAAI,aAAa,CAAC,EAAC,CAAC,IAAE,QAAQ,MAAM,6BAA4B,EAAC;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,IAAG,KAAK,gBAAgB;AAAA,MAAa,OAAO,IAAI,GAAG,IAAI,aAAa,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,IAAG,KAAK,gBAAgB;AAAA,MAAW,OAAO,IAAI,GAAG,IAAI,WAAW,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,IAAG,KAAK,gBAAgB;AAAA,MAAY,OAAO,IAAI,GAAG,IAAI,YAAY,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,MAAM;AAAA;AAAA,MAAoC,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAO,KAAK,CAAC,IAAE;AAAA,IAAC,KAAK,KAAK,KAAG;AAAA;AAAA,EAAG,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,IAAG;AAAA,MAAE,OAAO,KAAK,QAAQ,MAAM,sDAAqD,EAAC;AAAA,IAAE,IAAG,EAAE,cAAa;AAAA,MAAI,OAAO,KAAK,QAAQ,MAAM,+BAA8B,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAW,KAAK,SAAS,SAAtB,SAAoC,KAAK,SAAS,SAAtB,QAA2B,KAAE,KAAK,MAAM,EAAC,IAAW,KAAK,SAAS,SAAvB,WAA8B,KAAE,KAAE,IAAE,IAAG,KAAK,KAAK,KAAG;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,OAAO,MAAG,QAAQ,MAAM,oDAAmD,EAAC,GAAE,QAAM;AAAA;AAAA,EAAK,QAAQ,GAAE;AAAA,IAAC,OAAO,GAAG,KAAK;AAAA;AAAQ;AAAC,SAAS,EAAE,CAAC,IAAE,IAAE,IAAE;AAAA,EAAC,MAAM,KAAE,GAAE;AAAA,EAAO,OAAW,OAAJ,IAAc,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,SAAoB,OAAT,SAAW,IAAI,GAAG,IAAI,WAAW,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,YAAY,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,KAAG,QAAQ,MAAM,8BAA8B,IAAG,GAAE,QAAU,OAAJ,IAAc,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,SAAoB,OAAT,SAAW,IAAI,GAAG,IAAI,WAAW,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,YAAY,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,KAAG,QAAQ,MAAM,8BAA8B,IAAG,GAAE,QAAU,OAAJ,IAAc,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,SAAoB,OAAT,SAAW,IAAI,GAAG,IAAI,WAAW,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,YAAY,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,EAAC,GAAE,GAAE,YAAY,OAAO,CAAC,KAAG,QAAQ,MAAM,8BAA8B,IAAG,GAAE,SAAO,QAAQ,MAAM,mCAAmC,GAAE,QAAQ,GAAE;AAAA;AAAA;AAAM,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,KAAE,MAAK;AAAA,IAAC,IAAG,MAAM,IAAE,EAAC,GAAE,cAAa,gBAAc,cAAa,eAAa,cAAa;AAAA,MAAW,KAAK,OAAK;AAAA,IAAO;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS;AAAA,MAAe,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,OAAK,IAAI,aAAa,EAAC,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,OAAK,IAAI,WAAW,EAAC,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,OAAK,IAAI,YAAY,EAAC,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,OAAK,IAAI,aAAa,EAAC,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,OAAK,IAAI,WAAW,EAAC,IAAW,OAAT,UAAqB,OAAT,UAAqB,OAAT,SAAW,KAAK,OAAK,IAAI,aAAa,EAAC,IAAE,QAAQ,MAAM,4BAA4B,IAAG;AAAA;AAAA;AAAA,EAAI,KAAK,GAAE;AAAA,IAAC,IAAG,KAAK,gBAAgB;AAAA,MAAa,OAAO,IAAI,GAAG,IAAI,aAAa,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,IAAG,KAAK,gBAAgB;AAAA,MAAW,OAAO,IAAI,GAAG,IAAI,WAAW,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,IAAG,KAAK,gBAAgB;AAAA,MAAY,OAAO,IAAI,GAAG,IAAI,YAAY,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA,IAAE,MAAM;AAAA;AAAA,EAAgC,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,cAAa,KAAG,QAAQ,MAAM,0BAA0B,IAAE,cAAa,KAAG,KAAK,OAAK,GAAE,OAAK,QAAQ,MAAM,+BAA8B,EAAC;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAK,IAAI,KAAE,GAAE,YAAY,KAAK;AAAA,IAAE,IAAG,KAAK,oBAAoB;AAAA,MAAE,KAAE,KAAK,SAAS,UAAQ;AAAA,IAAO;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS;AAAA,MAAe,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAE,GAAE,YAAY,KAAK,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAE,GAAE,YAAY,KAAK,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAE,GAAE,YAAY,MAAM,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAE,GAAE,YAAY,KAAK,IAAY,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAE,GAAE,YAAY,KAAK,IAAE,QAAQ,MAAM,4BAA4B,IAAG;AAAA;AAAA,IAAG,IAAI,KAAE;AAAA,IAAK,MAAY,OAAP,QAAiB,OAAP,QAAU;AAAA,MAAC,IAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,GAAE;AAAA,QAAM,IAAI,KAAE;AAAA,QAAG,IAAG,cAAa,IAAG;AAAA,UAAC,IAAG,EAAE,GAAE,iBAAiB;AAAA,YAAI,OAAO,QAAQ,MAAM,mCAAmC,GAAE,OAAO,GAAE;AAAA,UAAK,KAAE,GAAE,MAAM;AAAA,QAAM,EAAM;AAAA,UAAC,MAAM,KAAE,GAAE,eAAe,IAAE,EAAC;AAAA,UAAE,IAAG,EAAE,cAAa;AAAA,YAAI,OAAO,QAAQ,MAAM,kCAAiC,EAAC,GAAE;AAAA,UAAK,KAAE,GAAE;AAAA;AAAA,QAAO,IAAG,KAAE,KAAG,MAAG,GAAE,KAAK;AAAA,UAAO,OAAO,QAAQ,MAAM,kCAAiC,EAAC,GAAE;AAAA,QAAK,IAAG,GAAE,gBAAgB,cAAa;AAAA,UAAC,MAAM,KAAE,IAAI,aAAa,GAAE,KAAK,QAAO,GAAE,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,EAAC;AAAA,QAAC;AAAA,QAAC,IAAG,GAAE,gBAAgB,YAAW;AAAA,UAAC,MAAM,KAAE,IAAI,WAAW,GAAE,KAAK,QAAO,GAAE,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,EAAC;AAAA,QAAC;AAAA,QAAC,IAAG,GAAE,gBAAgB,aAAY;AAAA,UAAC,MAAM,KAAE,IAAI,YAAY,GAAE,KAAK,QAAO,GAAE,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,EAAC;AAAA,QAAC;AAAA,QAAC,MAAM;AAAA,MAA+B;AAAA,MAAC,IAAG,EAAE,cAAa;AAAA,QAAI,OAAO,QAAQ,MAAM,+BAA8B,EAAC,GAAE;AAAA,MAAK;AAAA,QAAC,MAAM,KAAE,GAAE,MAAM,YAAY;AAAA,QAAE,IAAO,GAAE,WAAN,GAAa;AAAA,UAAC,IAAI,KAAE;AAAA,UAAE,IAAS,OAAN,OAAe,OAAN;AAAA,YAAQ,KAAE;AAAA,UAAO,SAAS,OAAN,OAAe,OAAN;AAAA,YAAQ,KAAE;AAAA,UAAO,SAAS,OAAN,OAAe,OAAN;AAAA,YAAQ,KAAE;AAAA,UAAO;AAAA,YAAC,IAAS,OAAN,OAAe,OAAN;AAAA,cAAQ,OAAO,QAAQ,MAAM,8BAA8B,IAAG,GAAE;AAAA,YAAK,KAAE;AAAA;AAAA,UAAG,IAAG,KAAK,gBAAgB,cAAa;AAAA,YAAC,IAAI,KAAE,IAAI,aAAa,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,YAAE,OAAO,IAAI,GAAG,IAAE,IAAE,IAAI;AAAA,UAAC;AAAA,UAAC,IAAG,KAAK,gBAAgB,YAAW;AAAA,YAAC,IAAI,KAAE,IAAI,WAAW,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,YAAE,OAAO,IAAI,GAAG,IAAE,IAAE,IAAI;AAAA,UAAC;AAAA,UAAC,IAAG,KAAK,gBAAgB,aAAY;AAAA,YAAC,IAAI,KAAE,IAAI,YAAY,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,IAAE,CAAC;AAAA,YAAE,OAAO,IAAI,GAAG,IAAE,IAAE,IAAI;AAAA,UAAC;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,CAAC;AAAA,QAAE,WAAU,MAAK;AAAA,UAAQ,OAAN,OAAe,OAAN,MAAQ,GAAE,KAAK,KAAK,KAAK,EAAE,IAAQ,OAAN,OAAe,OAAN,MAAQ,GAAE,KAAK,KAAK,KAAK,EAAE,IAAQ,OAAN,OAAe,OAAN,MAAQ,GAAE,KAAK,KAAK,KAAK,EAAE,IAAQ,OAAN,OAAe,OAAN,MAAQ,GAAE,KAAK,KAAK,KAAK,EAAE,IAAE,QAAQ,MAAM,gCAAgC,IAAG;AAAA,QAAE,KAAE,GAAG,IAAE,IAAE,GAAE,IAAI;AAAA,MAAE;AAAA,MAAC,KAAE,GAAE;AAAA,IAAQ;AAAA,IAAC,OAAO;AAAA;AAAA,EAAE,QAAQ,GAAE;AAAA,IAAC,IAAI,KAAE,GAAG,KAAK,KAAK;AAAA,IAAK,SAAQ,KAAE,EAAE,KAAE,KAAK,KAAK,QAAO,EAAE;AAAA,MAAE,MAAG,KAAK,KAAK,KAAK;AAAA,IAAK,OAAO;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,KAAE,MAAK;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,cAAa,eAAa,KAAK,OAAK,KAAE,KAAK,OAAK,IAAI,aAAa,EAAC;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,OAAO,IAAI,GAAG,IAAI,aAAa,KAAK,IAAI,GAAE,KAAK,UAAS,IAAI;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,cAAa,KAAG,QAAQ,MAAM,0BAA0B,IAAE,cAAa,KAAG,KAAK,OAAK,GAAE,OAAK,QAAQ,MAAM,+BAA8B,EAAC;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS;AAAA,IAAK,IAAG,GAAE,YAAY,KAAK,GAAE,KAAK,oBAAoB;AAAA,MAAE,KAAK,SAAS;AAAA,IAAY,SAAG,GAAE,SAAS,GAAG;AAAA,MAAE,GAAE,YAAY,KAAK;AAAA,IAAO,SAAG,GAAE,SAAS,GAAG;AAAA,MAAE,GAAE,YAAY,KAAK;AAAA,IAAO,SAAG,GAAE,SAAS,GAAG;AAAA,MAAE,GAAE,YAAY,KAAK;AAAA,IAAO;AAAA,MAAC,IAAG,CAAC,GAAE,SAAS,GAAG;AAAA,QAAE,OAAO,QAAQ,MAAM,8BAA8B,IAAG,GAAE;AAAA,MAAK,GAAE,YAAY,KAAK;AAAA;AAAA,IAAG,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAM,IAAI,KAAE;AAAA,MAAG,IAAG,cAAa,IAAG;AAAA,QAAC,IAAG,EAAE,GAAE,iBAAiB;AAAA,UAAI,OAAO,QAAQ,MAAM,qCAAqC,GAAE,OAAO,GAAE;AAAA,QAAK,KAAE,GAAE,MAAM;AAAA,MAAM,EAAM;AAAA,QAAC,MAAM,KAAE,GAAE,eAAe,IAAE,EAAC;AAAA,QAAE,IAAG,EAAE,cAAa;AAAA,UAAI,OAAO,QAAQ,MAAM,oCAAmC,EAAC,GAAE;AAAA,QAAK,KAAE,GAAE;AAAA;AAAA,MAAO,IAAG,KAAE,KAAG,MAAG,KAAK,KAAK;AAAA,QAAO,OAAO,QAAQ,MAAM,oCAAmC,EAAC,GAAE;AAAA,MAAK,MAAM,KAAE,GAAE,SAAS,GAAG,IAAE,MAAI;AAAA,MAAI,IAAI;AAAA,MAAE,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,KAAE,IAAI,GAAG,IAAI,aAAa,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,KAAE,GAAE,CAAC,GAAE,GAAE,YAAY,OAAO,IAAG,CAAC;AAAA,MAAO,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,KAAE,IAAI,GAAG,IAAI,aAAa,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,KAAE,GAAE,CAAC,GAAE,GAAE,YAAY,OAAO,IAAG,CAAC;AAAA,MAAO;AAAA,QAAC,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,UAAc,OAAO,QAAQ,MAAM,8BAA8B,IAAG,GAAE;AAAA,QAAK,KAAE,IAAI,GAAG,IAAI,aAAa,KAAK,KAAK,QAAO,KAAK,KAAK,aAAW,IAAE,KAAE,GAAE,CAAC,GAAE,GAAE,YAAY,OAAO,IAAG,CAAC;AAAA;AAAA,MAAG,OAAO,GAAE,UAAQ,GAAE,WAAW,IAAE,GAAE,SAAQ,EAAC,IAAE;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,iCAAgC,EAAC,GAAE;AAAA;AAAA,EAAK,QAAQ,GAAE;AAAA,IAAC,IAAI,KAAE,GAAG,KAAK,KAAK;AAAA,IAAK,SAAQ,KAAE,EAAE,KAAE,KAAK,KAAK,QAAO,EAAE;AAAA,MAAE,MAAG,KAAK,KAAK,KAAK;AAAA,IAAK,OAAO;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,KAAE,GAAE,KAAE,MAAK;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,KAAK,SAAO,cAAa,cAAY,KAAE,GAAE,QAAO,KAAK,SAAO;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,MAAM,KAAE,IAAI,WAAW,IAAI,WAAW,KAAK,QAAO,KAAK,QAAO,KAAK,SAAS,IAAI,CAAC;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAO,KAAK,UAAS,GAAE,IAAI;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,IAAU,OAAP;AAAA,MAAS,OAAO,KAAK,QAAQ,IAAI,0BAA0B;AAAA,IAAE,IAAI,KAAE,KAAK,QAAO,KAAE,KAAK;AAAA,IAAS,MAAK,MAAG;AAAA,MAAC,IAAG,cAAa;AAAA,QAAG,IAAG,cAAa,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAM,IAAG,cAAa,IAAG;AAAA,YAAC,IAAG,EAAE,GAAE,iBAAiB;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,oCAAoC,GAAE,OAAO;AAAA,YAAE,MAAG,GAAE,MAAM,QAAM,GAAE;AAAA,UAAO,EAAM;AAAA,YAAC,MAAM,KAAE,GAAE,eAAe,IAAE,EAAC;AAAA,YAAE,IAAG,EAAE,cAAa;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,oCAAmC,EAAC;AAAA,YAAE,MAAG,GAAE,QAAM,GAAE;AAAA;AAAA,UAAQ,KAAE,GAAE;AAAA,QAAO,EAAM;AAAA,kBAAQ,MAAM,sBAAsB,GAAE,YAAY,mBAAmB;AAAA,MAAO;AAAA,QAAC,IAAG,EAAE,cAAa;AAAA,UAAI,OAAO,KAAK,QAAQ,MAAM,sCAAqC,EAAC;AAAA,QAAE;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAM,IAAG,cAAa,GAAE;AAAA,YAAC,IAAI,KAAE;AAAA,YAAM,WAAU,MAAK,GAAE;AAAA,cAAQ,IAAG,GAAE,SAAO,IAAE;AAAA,gBAAC,MAAG,GAAE,QAAO,KAAE,GAAE,MAAK,KAAE;AAAA,gBAAK;AAAA,cAAK;AAAA,YAAC,IAAG,CAAC;AAAA,cAAE,OAAO,KAAK,QAAQ,MAAM,wBAAwB,cAAa;AAAA,UAAC,EAAM,SAAG,cAAa,GAAE;AAAA,YAAC,MAAM,KAAE,GAAE,YAAY;AAAA,YAAE,IAAI,KAAE;AAAA,YAAE,IAAS,OAAN,OAAe,OAAN;AAAA,cAAQ,KAAE;AAAA,YAAO,SAAS,OAAN,OAAe,OAAN;AAAA,cAAQ,KAAE;AAAA,YAAO,SAAS,OAAN,OAAe,OAAN;AAAA,cAAQ,KAAE;AAAA,YAAO;AAAA,cAAC,IAAS,OAAN,OAAe,OAAN;AAAA,gBAAQ,OAAO,KAAK,QAAQ,MAAM,gCAAgC,IAAG;AAAA,cAAE,KAAE;AAAA;AAAA,YAAG,IAAG,EAAE,cAAa;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,+BAA8B,EAAC;AAAA,YAAE,MAAM,KAAE,GAAE;AAAA,YAAM,OAAiB,OAAV,UAAY,MAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAa,OAAV,UAAY,MAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,MAAG,MAAG,KAAK,QAAQ,MAAM,sBAAsB,oBAAmB;AAAA,UAAC;AAAA,QAAC;AAAA;AAAA,MAAE,KAAE,GAAE;AAAA,IAAQ;AAAA,IAAC,KAAK,QAAQ,IAAE,IAAE,IAAE,IAAE,EAAC;AAAA;AAAA,EAAG,OAAO,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,YAAY;AAAA,IAAE,IAAW,OAAR,SAAmB,OAAR;AAAA,MAAU,IAAW,OAAR,SAA2B,OAAhB,iBAA2B,OAAR;AAAA,QAAU,IAAW,OAAR,SAA2B,OAAhB;AAAA,UAAkB,IAAY,OAAT;AAAA,YAAW,IAAa,OAAV,WAAuB,OAAV;AAAA,cAAY,IAAa,OAAV,WAAuB,OAAV;AAAA,gBAAY,IAAa,OAAV,WAAuB,OAAV;AAAA,kBAAY,IAAa,OAAV;AAAA,oBAAY,IAAa,OAAV;AAAA,sBAAY,IAAa,OAAV;AAAA,wBAAY,IAAa,OAAV;AAAA,0BAAY,IAAa,OAAV;AAAA,4BAAY,IAAa,OAAV;AAAA,8BAAY,IAAa,OAAV;AAAA,gCAAY,IAAa,OAAV;AAAA,kCAAY,IAAa,OAAV;AAAA,oCAAY,IAAe,OAAZ,aAA2B,OAAZ;AAAA,sCAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,wCAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,0CAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,4CAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,8CAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,gDAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,kDAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,oDAAc,IAAe,OAAZ,aAA2B,OAAZ;AAAA,sDAAc,IAAG,cAAa,IAAG;AAAA,wDAAC,IAAG,OAAI,GAAE,UAAS;AAAA,0DAAC,OAAO,KAAK,IAAI,WAAW,KAAK,QAAO,IAAE,GAAE,OAAO,UAAU,EAAE,IAAI,IAAI,WAAW,GAAE,MAAM,CAAC;AAAA,wDAAC;AAAA,wDAAC,QAAQ,MAAM,+BAA8B,IAAE,GAAE,SAAS,YAAY,CAAC;AAAA,sDAAE,EAAM;AAAA,gEAAQ,MAAM,yBAAyB,IAAG;AAAA,oDAAO;AAAA,sDAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,EAAE;AAAA,sDAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,QAAM,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE;AAAA;AAAA,kDAAW;AAAA,oDAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,EAAE;AAAA,oDAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,QAAM,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE;AAAA;AAAA,gDAAW;AAAA,kDAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,kDAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,8CAAU;AAAA,gDAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,EAAE;AAAA,gDAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,MAAI,GAAE,KAAK,KAAI,GAAE,MAAI,GAAE,KAAK,QAAM,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,MAAI,GAAE,KAAI,GAAE,MAAI,GAAE;AAAA;AAAA,4CAAW;AAAA,8CAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,8CAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,0CAAU;AAAA,4CAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,4CAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,wCAAU;AAAA,0CAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,0CAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,sCAAU;AAAA,wCAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,wCAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,oCAAU;AAAA,sCAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,sCAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,kCAAU;AAAA,oCAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,oCAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,gCAAU;AAAA,kCAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,kCAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,8BAAU;AAAA,gCAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,gCAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,4BAAU;AAAA,8BAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,8BAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,0BAAU;AAAA,4BAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,4BAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,wBAAU;AAAA,0BAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,0BAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,sBAAU;AAAA,wBAAC,MAAM,KAAE,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC;AAAA,wBAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,oBAAU;AAAA,sBAAC,MAAM,KAAE,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC;AAAA,sBAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,kBAAU;AAAA,oBAAC,MAAM,KAAE,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC;AAAA,oBAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,gBAAU;AAAA,kBAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,kBAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,cAAU;AAAA,gBAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,gBAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,YAAU;AAAA,cAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,cAAE,cAAa,MAAI,GAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAG,GAAE,KAAK,OAAK,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE;AAAA;AAAA,UAAU;AAAA,0BAAa,OAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE;AAAA,QAAY;AAAA,wBAAa,OAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE;AAAA,MAAY;AAAA,sBAAa,OAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE;AAAA,IAAY;AAAA,oBAAa,OAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE;AAAA;AAAA,EAAQ,UAAU,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,IAAI,IAAE,IAAE;AAAA,IAAE,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAK,IAAI,KAAE,KAAK,QAAO,KAAE,KAAK;AAAA,IAAS,MAAK,MAAG;AAAA,MAAC,IAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,GAAE,OAAM,KAAE,cAAa,KAAG,GAAE,eAAe,IAAE,EAAC,IAAE;AAAA,QAAE,IAAI,KAAE;AAAA,QAAE,IAAG,cAAa,KAAG,KAAE,GAAE,QAAgB,OAAO,MAAjB,WAAmB,KAAE,KAAE,QAAQ,MAAM,oCAAmC,EAAC,GAAE,cAAa;AAAA,UAAE,MAAG,KAAE,GAAE,QAAO,KAAE,GAAE;AAAA,QAAY;AAAA,UAAC,MAAM,KAAE,GAAE,YAAY;AAAA,UAAa,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAAe,MAAG,KAAG,IAAE,KAAE,GAAE,YAAY,OAAO,KAAG,QAAQ,MAAM,sBAAsB,GAAE,YAAY,mBAAmB;AAAA;AAAA,MAAG,EAAM;AAAA,QAAC,IAAG,EAAE,cAAa;AAAA,UAAI,OAAO,QAAQ,MAAM,sCAAqC,EAAC,GAAE;AAAA,QAAK;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAM,IAAG,cAAa,GAAE;AAAA,YAAC,IAAI,KAAE;AAAA,YAAM,WAAU,MAAK,GAAE;AAAA,cAAQ,IAAG,GAAE,SAAO,IAAE;AAAA,gBAAC,MAAG,GAAE,QAAO,KAAE,GAAE,MAAK,KAAE;AAAA,gBAAK;AAAA,cAAK;AAAA,YAAC,IAAG,CAAC;AAAA,cAAE,OAAO,QAAQ,MAAM,wBAAwB,cAAa,GAAE;AAAA,UAAI,EAAM,SAAG,cAAa,GAAE;AAAA,YAAC,MAAM,KAAE,GAAE,YAAY;AAAA,YAAE,IAAa,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAsB,OAAT,UAAqB,OAAT,UAAqB,OAAT,QAAW;AAAA,cAAC,IAAG,GAAE,SAAO,KAAG,GAAE,SAAO,GAAE;AAAA,gBAAC,IAAI,KAAE;AAAA,gBAAI,MAAM,KAAE,CAAC;AAAA,gBAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE,IAAE;AAAA,kBAAC,MAAM,KAAE,GAAE,IAAG,YAAY;AAAA,kBAAE,IAAI,KAAE;AAAA,kBAAE,IAAS,OAAN,OAAe,OAAN;AAAA,oBAAQ,KAAE;AAAA,kBAAO,SAAS,OAAN,OAAe,OAAN;AAAA,oBAAQ,KAAE;AAAA,kBAAO,SAAS,OAAN,OAAe,OAAN;AAAA,oBAAQ,KAAE;AAAA,kBAAO;AAAA,oBAAC,IAAS,OAAN,OAAe,OAAN;AAAA,sBAAQ,OAAO,QAAQ,MAAM,kBAAkB,IAAG,GAAE;AAAA,oBAAK,KAAE;AAAA;AAAA,kBAAG,IAAO,GAAE,WAAN,GAAa;AAAA,oBAAC,IAAG,GAAE,SAAS,GAAG;AAAA,sBAAE,OAAO,KAAK,OAAO,aAAW,KAAE,IAAE,KAAE,KAAG,QAAQ,IAAI,0BAA0B,GAAE,QAAM,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,KAAE,IAAE,IAAE,CAAC,GAAE,GAAE,YAAY,KAAK,GAAE,IAAI;AAAA,oBAAE,IAAG,GAAE,SAAS,GAAG;AAAA,sBAAE,OAAO,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,KAAE,IAAE,IAAE,CAAC,GAAE,GAAE,YAAY,KAAK,GAAE,IAAI;AAAA,oBAAE,IAAG,GAAE,SAAS,GAAG;AAAA,sBAAE,OAAO,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,KAAE,IAAE,IAAE,CAAC,GAAE,GAAE,YAAY,KAAK,GAAE,IAAI;AAAA,oBAAE,IAAG,GAAE,SAAS,GAAG;AAAA,sBAAE,OAAO,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,KAAE,IAAE,IAAE,CAAC,GAAE,GAAE,YAAY,MAAM,GAAE,IAAI;AAAA,oBAAE,IAAG,GAAE,SAAS,GAAG;AAAA,sBAAE,OAAO,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,KAAE,IAAE,IAAE,CAAC,GAAE,GAAE,YAAY,KAAK,GAAE,IAAI;AAAA,kBAAC;AAAA,kBAAC,IAAa,OAAV;AAAA,oBAAY,GAAE,KAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,kBAAO,SAAa,OAAV,SAAY;AAAA,oBAAC,IAAG,KAAE,MAAI,KAAK,OAAO;AAAA,sBAAW,OAAO,QAAQ,IAAI,0BAA0B,GAAE;AAAA,oBAAK,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC;AAAA,oBAAE,GAAE,KAAK,GAAE,GAAE;AAAA,kBAAE,EAAM,SAAa,OAAV;AAAA,oBAAY,GAAE,KAAK,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,kBAAO,SAAa,OAAV;AAAA,oBAAY,KAAE,KAAI,GAAE,KAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,kBAAO,SAAa,OAAV;AAAA,oBAAY,KAAE,KAAI,GAAE,KAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,kBAAO,SAAa,OAAV;AAAA,oBAAY,KAAE,KAAI,GAAE,KAAK,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,kBAAO,SAAa,OAAV,SAAY;AAAA,oBAAC,KAAE;AAAA,oBAAI,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC;AAAA,oBAAE,GAAE,KAAK,GAAE,GAAE;AAAA,kBAAE,EAAM;AAAA,oBAAU,OAAV,WAAa,KAAE,KAAI,GAAE,KAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE,KAAa,OAAV,YAAc,KAAE,KAAI,GAAE,KAAK,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,GAAE;AAAA,gBAAG;AAAA,gBAAC,OAAW,GAAE,WAAN,IAAa,KAAE,GAAE,YAAY,OAAO,IAAG,IAAM,GAAE,WAAN,IAAa,KAAE,GAAE,YAAY,OAAO,IAAG,IAAM,GAAE,WAAN,IAAa,KAAE,GAAE,YAAY,OAAO,IAAG,IAAE,QAAQ,MAAM,uCAAuC,GAAE,QAAQ,GAAE,IAAI,GAAG,IAAE,IAAE,IAAI;AAAA,cAAC;AAAA,cAAC,OAAO,QAAQ,MAAM,gCAAgC,IAAG,GAAE;AAAA,YAAI;AAAA,YAAC,OAAO,QAAQ,MAAM,sBAAsB,oBAAmB,GAAE;AAAA,UAAI;AAAA,QAAC;AAAA;AAAA,MAAE,KAAE,GAAE;AAAA,IAAQ;AAAA,IAAC,MAAM,KAAE,GAAE,YAAY;AAAA,IAAE,OAAe,OAAR,QAAU,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAU,OAAR,QAAU,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,aAAa,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAY,OAAV,UAAY,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,GAAE,IAAE,IAAI,IAAE,cAAa,KAAc,GAAE,SAAb,aAAmC,KAAE,GAAE,YAAZ,QAAiC,OAAZ,YAAc,YAAU,GAAE,UAAxD,QAA8D,IAAI,GAAG,IAAI,YAAY,KAAK,QAAO,IAAE,CAAC,EAAE,IAAG,GAAE,QAAO,IAAI,MAAmB,KAAE,GAAE,YAAZ,QAAiC,OAAZ,YAAc,YAAU,GAAE,UAAxD,QAA8D,IAAI,GAAG,IAAI,WAAW,KAAK,QAAO,IAAE,CAAC,EAAE,IAAG,GAAE,QAAO,IAAI,KAAG,QAAQ,MAAM,wCAA+C,KAAE,GAAE,YAAZ,QAAiC,OAAZ,YAAc,YAAU,GAAE,MAAM,GAAE,QAAM,IAAI,GAAG,KAAK,QAAO,IAAE,IAAE,IAAI;AAAA;AAAA,EAAE,QAAQ,GAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAG,IAAG,KAAK,oBAAoB;AAAA,MAAE,IAAW,KAAK,SAAS,OAAO,SAA7B,OAAkC;AAAA,QAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE;AAAA,QAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,UAAE,MAAG,KAAK,GAAE;AAAA,MAAK,EAAM,SAAW,KAAK,SAAS,OAAO,SAA7B,OAAkC;AAAA,QAAC,MAAM,KAAE,IAAI,WAAW,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE;AAAA,QAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,UAAE,MAAG,KAAK,GAAE;AAAA,MAAK,EAAM,SAAW,KAAK,SAAS,OAAO,SAA7B,OAAkC;AAAA,QAAC,MAAM,KAAE,IAAI,YAAY,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE;AAAA,QAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,UAAE,MAAG,KAAK,GAAE;AAAA,MAAK,EAAM,SAAa,KAAK,SAAS,OAAO,SAA/B,SAAoC;AAAA,QAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE,OAAO,GAAE;AAAA,QAAM,SAAQ,KAAE,EAAE,KAAE,GAAE,SAAO,GAAE,EAAE;AAAA,UAAE,MAAG,MAAM,GAAE,IAAE,QAAO,GAAE,IAAE,KAAE;AAAA,MAAM,EAAM,SAAa,KAAK,SAAS,OAAO,SAA/B,SAAoC;AAAA,QAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE,OAAO,GAAE,OAAO,GAAE;AAAA,QAAM,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,MAAG;AAAA,UAAE,MAAG,MAAM,GAAE,QAAO,GAAE,KAAE,OAAO,GAAE,KAAE;AAAA,MAAM,EAAM,SAAa,KAAK,SAAS,OAAO,SAA/B,SAAoC;AAAA,QAAC,MAAM,KAAE,IAAI,aAAa,KAAK,QAAO,KAAK,MAAM;AAAA,QAAE,KAAE,IAAI,GAAE,OAAO,GAAE,OAAO,GAAE,OAAO,GAAE;AAAA,QAAM,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,MAAG;AAAA,UAAE,MAAG,MAAM,GAAE,QAAO,GAAE,KAAE,OAAO,GAAE,KAAE,OAAO,GAAE,KAAE;AAAA,MAAM,EAAM;AAAA,aAAE;AAAA,IAAa;AAAA,WAAK,oBAAoB,IAAE,MAAG,UAAQ,KAAE;AAAA,IAAQ,OAAO;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,IAAE,IAAI,GAAE,KAAK,OAAK,IAAE,KAAK,aAAW,IAAE,KAAK,OAAK;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,OAAO,IAAI,GAAG,KAAK,MAAK,KAAK,UAAS,KAAK,YAAW,KAAK,IAAI;AAAA;AAAA,MAAM,KAAK,GAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,MAAM,KAAE,KAAK,WAAW;AAAA,IAAK,OAAO,cAAa,SAAO,GAAE,SAAO,KAAU,KAAE,GAAE,QAAZ,QAA6B,OAAZ,YAAc,KAAE,IAAE,cAAa,WAAgB,KAAE,GAAE,WAAZ,QAAgC,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAM,MAAM,GAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,MAAM,KAAE,KAAK,WAAW;AAAA,IAAK,OAAO,cAAa,SAAO,GAAE,SAAO,KAAU,KAAE,GAAE,QAAZ,QAA6B,OAAZ,YAAc,KAAE,IAAE,cAAa,WAAgB,KAAE,GAAE,YAAZ,QAAiC,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAM,kBAAkB,GAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,MAAM,KAAE,KAAK,WAAW;AAAA,IAAK,OAAO,cAAa,SAAO,GAAE,SAAO,KAAU,KAAE,GAAE,QAAZ,QAA6B,OAAZ,YAAc,KAAE,IAAE,cAAa,WAAgB,KAAE,GAAE,wBAAZ,QAA6C,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAM,MAAM,GAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,eAAoB,KAAE,KAAK,WAAW,YAA1B,QAA+C,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAiB,WAAW,GAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,eAAoB,KAAE,KAAK,WAAW,iBAA1B,QAAoD,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAM,aAAa,GAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,eAAoB,KAAE,KAAK,WAAW,mBAA1B,QAAsD,OAAZ,YAAc,KAAE;AAAA;AAAA,MAAM,SAAS,GAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,eAAoB,KAAE,KAAK,WAAW,eAA1B,QAAkD,OAAZ,YAAc,KAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE;AAAA,IAAC,IAAG,MAAG,KAAK;AAAA,MAAc,OAAO,CAAC,GAAE,GAAE,CAAC;AAAA,IAAE,MAAM,KAAE,CAAC,KAAK,OAAM,KAAK,QAAO,KAAK,kBAAkB;AAAA,IAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,MAAE,GAAE,MAAG,KAAK,IAAI,GAAE,GAAE,OAAI,EAAC;AAAA,IAAE,OAAO;AAAA;AAAA,MAAM,aAAa,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,QAAO,KAAE,EAAE;AAAA,IAAG,OAAO,KAAE,GAAE,iBAAe,IAAE,GAAE,gBAAc;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK,QAAM,KAAK;AAAA;AAAA,MAAkB,cAAc,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,QAAO,KAAE,EAAE;AAAA,IAAG,OAAO,CAAC,CAAC,MAAG,GAAE;AAAA;AAAA,EAAe,UAAU,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,QAAO,KAAE,EAAE,KAAG,KAAE,KAAK;AAAA,IAAM,IAAG,CAAC,MAAG,MAAG,KAAG,CAAC;AAAA,MAAE,OAAQ;AAAA,IAAG,MAAM,KAAE,KAAK,QAAO,KAAE,KAAK,oBAAmB,KAAE,KAAK;AAAA,IAAU,OAAO,KAAE,GAAE,cAAmB,OAAP,OAAS,IAAE,KAAE,GAAE,eAAa,GAAE,gBAAc;AAAA;AAAA,EAAE,QAAQ,CAAC,IAAE,IAAE,KAAE,GAAE,KAAE,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAc,KAAE,KAAK,aAAY,KAAE,KAAK,QAAO,KAAE,KAAK,KAAK;AAAA,IAAG,OAAO,EAAE,IAAI,WAAW,EAAC,GAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,KAAK,MAAM;AAAA;AAAA,EAAE,QAAQ,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAc,KAAE,KAAK,aAAY,KAAE,KAAK,QAAO,KAAE,KAAK,KAAK;AAAA,KAAI,QAAQ,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,MAAC,MAAM,KAAE,MAAG,OAAI,OAAI,OAAI,MAAG,KAAE,KAAE,KAAE;AAAA,MAAE,QAAO;AAAA,aAAQ;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAS,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,UAAS,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,aAAuB;AAAA,aAAkB;AAAA,aAAuB;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAY,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,UAAY,OAAO,KAAK,EAAE,IAAE,IAAE,SAAQ,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAY,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAc,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAU,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,aAAoB;AAAA,aAAmB;AAAA,aAA4B;AAAA,aAAoB;AAAA,aAA6B;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAW,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAY,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAa,OAAO,KAAK,EAAE,IAAE,IAAE,UAAS,GAAE,EAAC;AAAA,aAAO;AAAA,UAAc,OAAO,KAAK,EAAE,IAAE,IAAE,WAAU,GAAE,EAAC;AAAA,aAAO;AAAA,UAAgB,QAAQ,MAAM,+CAA+C;AAAA;AAAA,OAAK,IAAI,WAAW,EAAC,GAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,KAAK,QAAO,EAAC;AAAA;AAAG;AAAA,CAAE,QAAG;AAAA,EAAC,GAAE,GAAE,QAAM,KAAG,SAAQ,GAAE,GAAE,UAAQ,KAAG,WAAU,GAAE,GAAE,WAAS,KAAG;AAAA,GAAc,MAAI,IAAE,CAAC,EAAE;AAAA;AAAE,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAA,EAAG,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAK;AAAA;AAAC,MAAM,GAAE;AAAC;AAAC,IAAE,IAAG,GAAG,OAAK,IAAI,GAAG,IAAG,EAAE,UAAS,EAAE,GAAE,GAAG,MAAI,IAAI,GAAG,OAAM,EAAE,OAAM,EAAE,GAAE,GAAG,WAAS,EAAC,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,UAAS,MAAM,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,UAAS,IAAI,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,UAAS,MAAM,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,UAAS,QAAQ,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,UAAS,IAAI,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,UAAS,UAAU,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,UAAS,YAAY,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,UAAS,SAAS,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,UAAS,IAAI,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,UAAS,QAAQ,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,UAAS,OAAO,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,UAAS,KAAK,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,UAAS,MAAM,EAAC,GAAE,GAAG,WAAS,EAAC,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,kBAAiB,IAAI,GAAG,oBAAmB,EAAE,SAAQ,kBAAkB,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,SAAQ,cAAc,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,yBAAwB,IAAI,GAAG,2BAA0B,EAAE,SAAQ,yBAAyB,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,0BAAyB,IAAI,GAAG,4BAA2B,EAAE,SAAQ,0BAA0B,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,kBAAiB,IAAI,GAAG,oBAAmB,EAAE,SAAQ,kBAAkB,GAAE,wBAAuB,IAAI,GAAG,0BAAyB,EAAE,SAAQ,wBAAwB,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,SAAQ,oBAAoB,GAAE,0BAAyB,IAAI,GAAG,4BAA2B,EAAE,SAAQ,0BAA0B,GAAE,+BAA8B,IAAI,GAAG,iCAAgC,EAAE,SAAQ,+BAA+B,GAAE,kBAAiB,IAAI,GAAG,oBAAmB,EAAE,SAAQ,kBAAkB,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,SAAQ,aAAa,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,SAAQ,IAAI,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,SAAQ,IAAI,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,SAAQ,MAAM,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,SAAQ,KAAK,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,SAAQ,WAAW,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,SAAQ,OAAO,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,SAAQ,QAAQ,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,SAAQ,SAAS,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,SAAQ,WAAW,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,iBAAgB,IAAI,GAAG,mBAAkB,EAAE,SAAQ,iBAAiB,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,SAAQ,WAAW,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,SAAQ,WAAW,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,iBAAgB,IAAI,GAAG,mBAAkB,EAAE,SAAQ,iBAAiB,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,SAAQ,cAAc,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,SAAQ,cAAc,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,SAAQ,UAAU,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,SAAQ,WAAW,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,SAAQ,aAAa,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,SAAQ,YAAY,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,SAAQ,aAAa,GAAE,eAAc,IAAI,GAAG,iBAAgB,EAAE,SAAQ,eAAe,EAAC,GAAE,GAAG,SAAO,EAAC,uBAAsB,IAAI,GAAG,yBAAwB,EAAE,OAAM,kHAAkH,GAAE,mBAAkB,IAAI,GAAG,qBAAoB,EAAE,OAAM,iIAAiI,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,sCAAsC,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,OAAM,iCAAiC,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,OAAM,0DAA0D,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,wBAAwB,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,OAAM,GAAG,GAAE,SAAQ,IAAI,GAAG,WAAU,EAAE,OAAM,IAAI,GAAE,OAAM,IAAI,GAAG,UAAS,EAAE,OAAM,IAAI,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,OAAM,GAAG,GAAE,eAAc,IAAI,GAAG,iBAAgB,EAAE,OAAM,GAAG,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,OAAM,GAAG,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,OAAM,GAAG,GAAE,eAAc,IAAI,GAAG,iBAAgB,EAAE,OAAM,GAAG,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,OAAM,GAAG,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,GAAG,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,IAAI,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,IAAI,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,OAAM,GAAG,GAAE,oBAAmB,IAAI,GAAG,sBAAqB,EAAE,OAAM,IAAI,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,IAAI,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,GAAG,GAAE,iBAAgB,IAAI,GAAG,mBAAkB,EAAE,OAAM,IAAI,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,OAAM,IAAI,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,GAAG,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,IAAI,GAAE,QAAO,IAAI,GAAG,UAAS,EAAE,OAAM,GAAG,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,OAAM,GAAG,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,IAAI,GAAE,IAAG,IAAI,GAAG,MAAK,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,IAAI,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,OAAM,GAAG,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,GAAG,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,GAAG,GAAE,MAAK,IAAI,GAAG,QAAO,EAAE,OAAM,GAAG,GAAE,OAAM,IAAI,GAAG,SAAQ,EAAE,OAAM,GAAG,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,OAAM,GAAG,GAAE,KAAI,IAAI,GAAG,OAAM,EAAE,OAAM,GAAG,GAAE,YAAW,IAAI,GAAG,cAAa,EAAE,OAAM,IAAI,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,IAAI,GAAE,aAAY,IAAI,GAAG,eAAc,EAAE,OAAM,IAAI,GAAE,gBAAe,IAAI,GAAG,kBAAiB,EAAE,OAAM,IAAI,GAAE,cAAa,IAAI,GAAG,gBAAe,EAAE,OAAM,IAAI,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,IAAI,GAAE,UAAS,IAAI,GAAG,YAAW,EAAE,OAAM,IAAI,GAAE,WAAU,IAAI,GAAG,aAAY,EAAE,OAAM,IAAI,GAAE,mBAAkB,IAAI,GAAG,qBAAoB,EAAE,OAAM,KAAK,GAAE,kBAAiB,IAAI,GAAG,oBAAmB,EAAE,OAAM,KAAK,EAAC,GAAE,GAAG,eAAa,EAAC,KAAI,EAAE,OAAO,MAAK,KAAI,EAAE,OAAO,YAAW,KAAI,EAAE,OAAO,aAAY,KAAI,EAAE,OAAO,OAAM,KAAI,EAAE,OAAO,OAAM,KAAI,EAAE,OAAO,YAAW,KAAI,EAAE,OAAO,aAAY,KAAI,EAAE,OAAO,UAAS,GAAE,GAAG,gBAAc,EAAC,KAAI,EAAE,OAAO,KAAI,MAAK,EAAE,OAAO,SAAQ,MAAK,EAAE,OAAO,OAAM,KAAI,EAAE,OAAO,eAAc,KAAI,EAAE,OAAO,MAAK,KAAI,EAAE,OAAO,cAAa,KAAI,EAAE,OAAO,eAAc,KAAI,EAAE,OAAO,OAAM,MAAK,EAAE,OAAO,aAAY,MAAK,EAAE,OAAO,WAAU,KAAI,EAAE,OAAO,cAAa,MAAK,EAAE,OAAO,oBAAmB,MAAK,EAAE,OAAO,aAAY,KAAI,EAAE,OAAO,WAAU,MAAK,EAAE,OAAO,iBAAgB,MAAK,EAAE,OAAO,YAAW,KAAI,EAAE,OAAO,QAAO,KAAI,EAAE,OAAO,OAAM,MAAK,EAAE,OAAO,aAAY,KAAI,EAAE,OAAO,QAAO,KAAI,EAAE,OAAO,MAAK,MAAK,EAAE,OAAO,WAAU,KAAI,EAAE,OAAO,IAAG,MAAK,EAAE,OAAO,OAAM,KAAI,EAAE,OAAO,MAAK,KAAI,EAAE,OAAO,OAAM,GAAE,EAAE,OAAO,YAAW,KAAI,EAAE,OAAO,KAAI,MAAK,EAAE,OAAO,YAAW,MAAK,EAAE,OAAO,aAAY,MAAK,EAAE,OAAO,aAAY,MAAK,EAAE,OAAO,gBAAe,MAAK,EAAE,OAAO,cAAa,MAAK,EAAE,OAAO,WAAU,MAAK,EAAE,OAAO,UAAS,MAAK,EAAE,OAAO,WAAU,OAAM,EAAE,OAAO,mBAAkB,OAAM,EAAE,OAAO,iBAAgB,GAAE,GAAG,cAAY,EAAC,uBAAsB,EAAE,OAAO,uBAAsB,mBAAkB,EAAE,OAAO,mBAAkB,aAAY,EAAE,OAAO,aAAY,cAAa,EAAE,OAAO,cAAa,OAAM,EAAE,OAAO,MAAK,GAAE,GAAG,gBAAc,CAAC,EAAE,SAAS,UAAS,EAAE,SAAS,SAAQ,EAAE,SAAS,WAAU,EAAE,SAAS,SAAQ,EAAE,SAAS,OAAO,GAAE,GAAG,cAAY,CAAC,EAAE,SAAS,MAAK,EAAE,SAAS,OAAM,EAAE,SAAS,UAAU,GAAE,GAAG,eAAa,CAAC,EAAE,SAAS,SAAQ,EAAE,SAAS,kBAAkB,GAAE,GAAG,uBAAqB,CAAC,EAAE,SAAS,YAAW,EAAE,SAAS,YAAW,EAAE,SAAS,kBAAiB,EAAE,SAAS,YAAW,EAAE,SAAS,cAAa,EAAE,SAAS,kBAAkB,GAAE,GAAG,4BAA0B,CAAC,EAAE,SAAS,uBAAuB,GAAE,GAAG,uBAAqB,CAAC,EAAE,SAAS,oBAAmB,EAAE,SAAS,oBAAmB,EAAE,SAAS,0BAAyB,EAAE,SAAS,kBAAkB,GAAE,GAAG,qBAAmB,CAAC,EAAE,SAAS,kBAAiB,EAAE,SAAS,wBAAuB,EAAE,SAAS,oBAAmB,EAAE,SAAS,0BAAyB,EAAE,SAAS,6BAA6B,GAAE,GAAG,wBAAsB,CAAC,EAAE,SAAS,gBAAgB,GAAE,GAAG,mBAAiB,CAAC,GAAG,EAAE,sBAAqB,GAAG,EAAE,2BAA0B,GAAG,EAAE,sBAAqB,GAAG,EAAE,oBAAmB,GAAG,EAAE,qBAAqB,GAAE,GAAG,eAAa,CAAC,EAAE,SAAS,SAAQ,EAAE,SAAS,SAAQ,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,SAAQ,EAAE,SAAS,SAAQ,EAAE,SAAS,UAAS,EAAE,SAAS,UAAS,EAAE,SAAS,UAAS,EAAE,SAAS,SAAQ,EAAE,SAAS,SAAQ,EAAE,SAAS,SAAQ,EAAE,SAAS,SAAQ,EAAE,SAAS,UAAS,EAAE,SAAS,UAAS,EAAE,SAAS,UAAS,EAAE,SAAS,WAAU,EAAE,SAAS,YAAW,EAAE,SAAS,iBAAgB,EAAE,SAAS,YAAW,EAAE,SAAS,WAAU,EAAE,SAAS,WAAU,EAAE,SAAS,YAAW,EAAE,SAAS,iBAAgB,EAAE,SAAS,cAAa,EAAE,SAAS,cAAa,EAAE,SAAS,UAAS,EAAE,SAAS,UAAS,EAAE,SAAS,WAAU,EAAE,SAAS,YAAW,EAAE,SAAS,YAAW,EAAE,SAAS,aAAY,EAAE,SAAS,YAAW,EAAE,SAAS,YAAW,EAAE,SAAS,WAAW,GAAE,GAAG,gBAAc,CAAC,EAAE,OAAO,aAAY,EAAE,OAAO,cAAa,EAAE,OAAO,uBAAsB,EAAE,OAAO,mBAAkB,EAAE,SAAS,MAAK,EAAE,SAAS,KAAK,GAAE,GAAG,mBAAiB,CAAC,EAAE,OAAO,OAAM,EAAE,OAAO,aAAY,EAAE,OAAO,cAAa,EAAE,OAAO,uBAAsB,EAAE,OAAO,mBAAkB,EAAE,OAAO,IAAI,GAAE,GAAG,2BAAyB,CAAC,EAAE,OAAO,aAAY,EAAE,OAAO,cAAa,EAAE,OAAO,KAAK,GAAE,GAAG,iBAAe,CAAC,EAAE,SAAS,MAAK,EAAE,SAAS,MAAK,EAAE,SAAS,MAAK,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,QAAO,EAAE,SAAS,SAAQ,GAAG,EAAE,gBAAgB,GAAE,GAAG,iBAAe,CAAC,EAAE,OAAO,OAAM,EAAE,SAAS,OAAM,EAAE,SAAS,UAAU,GAAE,GAAG,uBAAqB,CAAC,EAAE,OAAO,OAAM,EAAE,OAAO,YAAW,EAAE,OAAO,aAAY,EAAE,OAAO,aAAY,EAAE,OAAO,gBAAe,EAAE,OAAO,cAAa,EAAE,OAAO,WAAU,EAAE,OAAO,UAAS,EAAE,OAAO,WAAU,EAAE,OAAO,mBAAkB,EAAE,OAAO,gBAAgB,GAAE,GAAG,sBAAoB,CAAC,EAAE,OAAO,WAAU,EAAE,OAAO,WAAW;AAAA;AAAE,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,SAAO,IAAE,KAAK,OAAK,IAAE,KAAK,QAAM,IAAE,KAAK,MAAI;AAAA;AAAA,EAAG,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAA,EAAO,cAAc,GAAE;AAAA,IAAC,OAAY,GAAG,eAAe,QAAQ,KAAK,IAAI,KAAvC;AAAA;AAAA,EAAyC,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK,QAAM,GAAG,SAAS;AAAA;AAAA,EAAM,qBAAqB,GAAE;AAAA,IAAC,OAAO,KAAK,YAAY,KAAG,KAAK,eAAe;AAAA;AAAE;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,KAAK,UAAQ,CAAC,GAAE,KAAK,SAAO,GAAE,KAAK,WAAS,GAAE,KAAK,QAAM,GAAE,KAAK,UAAc,MAAN,OAAQ,KAAE;AAAA;AAAA,EAAI,UAAU,GAAE;AAAA,IAAC,MAAK,CAAC,KAAK,SAAS;AAAA,MAAG,IAAG,KAAK,SAAO,KAAK,UAAS,CAAC,KAAK,UAAU;AAAA,QAAE,MAAM,0BAA0B,KAAK;AAAA,IAAQ,OAAO,KAAK,QAAQ,KAAK,IAAI,GAAG,GAAG,KAAI,IAAG,KAAK,OAAM,KAAK,UAAS,KAAK,QAAQ,CAAC,GAAE,KAAK;AAAA;AAAA,EAAQ,SAAS,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,SAAS;AAAA,IAAE,IAAS,MAAN;AAAA;AAAA,MAAQ,OAAO,KAAK,SAAQ;AAAA,IAAK,IAAG,KAAK,cAAc,EAAC;AAAA,MAAE,OAAQ;AAAA,IAAK,IAAQ,MAAL,KAAO;AAAA,MAAC,IAAQ,KAAK,WAAW,KAArB,KAAuB;AAAA,QAAC,MAAW,MAAN;AAAA,KAAS;AAAA,UAAC,IAAG,KAAK,SAAS;AAAA,YAAE,OAAQ;AAAA,UAAK,KAAE,KAAK,SAAS;AAAA,QAAE;AAAA,QAAC,OAAO,KAAK,SAAQ;AAAA,MAAI;AAAA,MAAC,IAAQ,KAAK,WAAW,KAArB,KAAuB;AAAA,QAAC,KAAK,SAAS;AAAA,QAAE,IAAI,KAAE;AAAA,QAAE,MAAK,KAAE,KAAG;AAAA,UAAC,IAAG,KAAK,SAAS;AAAA,YAAE,OAAQ;AAAA,UAAK,IAAG,KAAE,KAAK,SAAS,GAAQ,MAAN;AAAA;AAAA,YAAQ,KAAK;AAAA,UAAa,SAAQ,MAAL,KAAO;AAAA,YAAC,IAAQ,KAAK,WAAW,KAArB,QAAyB,KAAK,SAAS,GAAE,MAAO,MAAH;AAAA,cAAM,OAAQ;AAAA,UAAI,EAAM;AAAA,YAAK,MAAL,OAAa,KAAK,WAAW,KAArB,QAAyB,KAAK,SAAS,GAAE;AAAA,QAAK;AAAA,QAAC,OAAQ;AAAA,MAAI;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,GAAG,aAAa;AAAA,IAAG,IAAG;AAAA,MAAE,OAAO,KAAK,UAAU,EAAC,GAAE;AAAA,IAAK,IAAI,KAAE,GAAG;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS,EAAC,GAAE,KAAQ,OAAN;AAAA,IAAQ,IAAG,KAAK,gBAAgB,EAAC,GAAE;AAAA,MAAC,IAAI,KAAE,KAAK,WAAW;AAAA,MAAE,MAAK,KAAK,gBAAgB,EAAC;AAAA,QAAG,MAAG,KAAK,SAAS,GAAE,KAAE,KAAK,WAAW;AAAA,IAAE;AAAA,IAAC,IAAG,IAAE;AAAA,MAAC,MAAM,KAAE,GAAG,SAAS;AAAA,MAAG,IAAG;AAAA,QAAE,OAAO,KAAK,UAAU,EAAC,GAAE;AAAA,IAAI;AAAA,IAAC,IAAG,MAAG;AAAA,MAAE,OAAO,KAAK,UAAU,GAAG,OAAO,KAAK,GAAE;AAAA,IAAK,UAAO;AAAA,MAAC,IAAI,KAAE,KAAK,UAAU,EAAC;AAAA,MAAE,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,IAAQ,MAAL,OAAQ,KAAK,QAAQ,SAAO,GAAE;AAAA,QAAC,IAAQ,MAAL;AAAA,UAAO,OAAO,KAAK,YAAW,MAAG,IAAE,KAAK,UAAU,GAAG,OAAO,WAAW,GAAE;AAAA,QAAK,IAAQ,MAAL;AAAA,UAAO,OAAO,KAAK,YAAW,MAAG,IAAE,KAAK,UAAU,GAAG,OAAO,WAAW,GAAE;AAAA,QAAK,MAAM,KAAE,KAAK,QAAQ,SAAO;AAAA,QAAE,KAAQ,GAAG,iBAAiB,QAAQ,KAAK,QAAQ,IAAG,IAAI,KAApD,MAAuD,KAAK,QAAQ,IAAG,QAAM,GAAG,OAAO,gBAAmB,MAAL;AAAA,UAAO,OAAO,KAAK,UAAU,EAAC,GAAE;AAAA,MAAI;AAAA,MAAC,IAAQ,MAAL,QAAc,MAAL,OAAa,MAAL,MAAQ;AAAA,QAAC,IAAI,KAAE,OAAM,KAAE,KAAK,QAAQ,SAAO;AAAA,QAAE,SAAQ,KAAE,EAAE,KAAE,KAAG,MAAG,KAAQ,GAAG,qBAAqB,QAAQ,KAAK,QAAQ,IAAG,IAAI,MAAzD,IAA2D,EAAE,IAAE,EAAE;AAAA,UAAE,IAAG,KAAK,QAAQ,IAAG,SAAO,GAAG,OAAO,WAAU;AAAA,YAAC,KAAE,KAAG,KAAK,QAAQ,KAAE,GAAG,sBAAsB,MAAI,KAAE;AAAA,YAAM;AAAA,UAAK;AAAA,QAAC,IAAG;AAAA,UAAE,OAAO,KAAK,UAAU,EAAC,GAAE;AAAA,MAAI;AAAA,MAAC,IAAG,OAAI,GAAG,MAAK;AAAA,QAAC,IAAI,KAAE,IAAE,KAAE;AAAA,QAAE,MAAM,KAAE;AAAA,QAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,UAAE,IAAG,MAAG,KAAK,WAAW,EAAC,GAAE,KAAE,KAAK,UAAU,EAAC,GAAE,OAAI,GAAG,MAAK;AAAA,YAAC,KAAE;AAAA,YAAE;AAAA,UAAK;AAAA,QAAC,IAAG,OAAI,GAAG;AAAA,UAAK,OAAO,OAAI,GAAG,SAAO,KAAK,YAAW,KAAK,UAAU,EAAC,GAAE;AAAA,QAAM,KAAE,IAAE,KAAK,YAAU,KAAE;AAAA,MAAE;AAAA,MAAC,IAAG,KAAE,IAAE,KAAK,SAAS;AAAA,QAAE;AAAA,MAAM,MAAG,KAAK,SAAS;AAAA,IAAE;AAAA,IAAC,OAAO,OAAI,GAAG,SAAO,KAAK,UAAU,EAAC,GAAE;AAAA;AAAA,EAAM,SAAS,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,GAAG,aAAY;AAAA,MAAC,MAAM,KAAE,GAAG,YAAY;AAAA,MAAG,IAAG,KAAK,OAAO,IAAE,GAAE,IAAI;AAAA,QAAE,OAAO;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,GAAG,cAAc;AAAA,IAAG,OAAO,MAAG,GAAG;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK,EAAC;AAAA,IAAE,OAAO,MAAM,GAAE,SAAL,KAAY,GAAE,MAAI;AAAA;AAAA,EAAE,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,YAAU,KAAK,QAAQ;AAAA;AAAA,EAAO,QAAQ,CAAC,IAAE;AAAA,IAAC,OAAO,CAAC,KAAK,WAAW,EAAC,KAAG,CAAC,KAAK,cAAc,EAAC,KAAS,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAe,OAAN,OAAgB,OAAP,OAAgB,OAAN,OAAe,OAAN,OAAgB,OAAP,QAAiB,OAAP;AAAA,KAAiB,OAAP,QAAiB,OAAP,QAAiB,OAAP;AAAA;AAAA,EAAS,UAAU,CAAC,IAAE;AAAA,IAAC,OAAO,MAAG,OAAK,MAAG;AAAA;AAAA,EAAI,eAAe,CAAC,IAAE;AAAA,IAAC,OAAO,KAAK,SAAS,EAAC,KAAG,KAAK,WAAW,EAAC,KAAS,OAAN;AAAA;AAAA,EAAQ,aAAa,CAAC,IAAE;AAAA,IAAC,OAAY,MAAL,OAAc,MAAN,QAAe,MAAN;AAAA;AAAA,EAAQ,QAAQ,CAAC,KAAE,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,QAAQ,KAAK;AAAA,IAAU,OAAO,KAAE,MAAG,GAAE,MAAI,KAAK,YAAU,IAAE;AAAA;AAAA,EAAE,UAAU,CAAC,KAAE,GAAE;AAAA,IAAC,OAAO,KAAE,MAAG,GAAE,KAAK,WAAS,MAAG,KAAK,QAAQ,SAAO,SAAK,KAAK,QAAQ,KAAK,WAAS;AAAA;AAAA,EAAG,SAAS,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,QAAQ,UAAU,KAAK,QAAO,KAAK,QAAQ;AAAA,IAAE,KAAK,QAAQ,KAAK,IAAI,GAAG,IAAE,IAAE,KAAK,OAAM,KAAK,QAAO,KAAK,QAAQ,CAAC;AAAA;AAAG;AAAC,SAAS,EAAE,CAAC,IAAE;AAAA,EAAC,OAAO,MAAM,QAAQ,EAAC,MAAU,MAAN,OAAQ,YAAU,GAAE,mBAAkB;AAAA;AAAY,IAAM,KAAG,IAAI,aAAa,CAAC;AAA3B,IAA6B,KAAG,IAAI,YAAY,GAAG,MAAM;AAAzD,IAA2D,KAAG,IAAI,YAAY,GAAG,MAAM;AAAvF,IAAyF,KAAG,IAAI,WAAW,CAAC;AAA5G,IAA8G,KAAG,IAAI,aAAa,GAAG,MAAM;AAA3I,IAA6I,KAAG,IAAI,YAAY,GAAG,MAAM;AAAzK,IAA2K,KAAG,IAAI,YAAY,CAAC;AAA/L,IAAiM,KAAG,IAAI,aAAa,GAAG,MAAM;AAA9N,IAAgO,KAAG,IAAI,WAAW,GAAG,MAAM;AAAE,SAAS,EAAE,CAAC,IAAE,IAAE,IAAE;AAAA,EAAC,IAAG,OAAI;AAAA,IAAE,OAAO;AAAA,EAAE,IAAW,OAAR,OAAU;AAAA,IAAC,IAAW,OAAR,SAAmB,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,IAAG,IAAW,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,EAAE,EAAM,SAAW,OAAR,SAAmB,OAAR,OAAU;AAAA,IAAC,IAAW,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,IAAG,IAAW,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,EAAE,EAAM,SAAW,OAAR,OAAU;AAAA,IAAC,IAAW,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,IAAG,IAAW,OAAR,SAAmB,OAAR;AAAA,MAAU,OAAO,GAAG,KAAG,IAAE,GAAG;AAAA,EAAE;AAAA,EAAC,OAAO,QAAQ,MAAM,yBAAyB,SAAQ,IAAG,GAAE;AAAA;AAAA;AAAE,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,KAAK,YAAU,MAAK,KAAK,QAAM,OAAM,KAAK,OAAK,MAAK,KAAK,OAAK;AAAA;AAAG;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,KAAK,QAAM,IAAE,KAAK,OAAK;AAAA;AAAG;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,KAAK,WAAS,CAAC,GAAE,KAAK,UAAQ,CAAC,GAAE,KAAK,WAAS,CAAC,GAAE,KAAK,WAAS,CAAC,GAAE,KAAK,UAAQ,CAAC,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,UAAQ,CAAC,GAAE,KAAK,QAAM,IAAI,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,SAAO,IAAI,KAAI,KAAK,aAAW,IAAI;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE;AAAA,IAAC,OAA6B,GAAE,QAAxB,wBAAoD,GAAE,QAAxB,wBAA0D,GAAE,QAA9B,8BAA0D,GAAE,QAAxB;AAAA;AAAA,EAA6B,SAAS,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK;AAAA,MAAE,cAAa,KAAG,KAAK,WAAW,IAAI,GAAE,MAAK,IAAI,GAAG,EAAC,CAAC;AAAA,IAAE,WAAU,MAAK;AAAA,MAAE,IAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,KAAK,YAAY,IAAE,IAAI;AAAA,QAAE,cAAa,KAAG,KAAK,QAAQ,KAAK,EAAC;AAAA,MAAE;AAAA,IAAC,WAAU,MAAK;AAAA,MAAE,IAAG,cAAa;AAAA,QAAG,KAAK,QAAQ,KAAK,KAAK,cAAc,EAAC,CAAC;AAAA,MAAO,SAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,MAAK,CAAC,GAAE,KAAQ,GAAE,QAAR,OAAa,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,IAAE;AAAA,QAAK,KAAK,UAAU,KAAK,IAAI,EAAE,GAAE,MAAK,IAAE,GAAE,YAAW,EAAC,CAAC;AAAA,MAAE,EAAM,SAAG,KAAK,cAAc,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,SAAQ,CAAC,GAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,WAAU,CAAC,GAAE,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,IAAE,GAAE,YAAW,EAAE,SAAQ,GAAE,MAAM;AAAA,QAAE,GAAE,WAAS,GAAE,SAAO,SAAQ,KAAK,SAAS,KAAK,EAAC;AAAA,MAAE,EAAM,SAAG,KAAK,cAAc,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,SAAQ,CAAC,GAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,WAAU,CAAC,GAAE,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,KAAE,KAAK,kBAAkB,EAAC,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,IAAE,GAAE,YAAW,KAAE,EAAE,iBAAe,EAAE,SAAQ,GAAE,MAAM;AAAA,QAAE,GAAE,WAAS,GAAE,SAAO,SAAQ,KAAK,QAAQ,KAAK,EAAC;AAAA,MAAE,EAAM,SAAG,KAAK,cAAc,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,SAAQ,CAAC,GAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,WAAU,CAAC,GAAE,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,KAAE,KAAK,kBAAkB,EAAC,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,IAAE,GAAE,YAAW,KAAE,EAAE,iBAAe,EAAE,SAAQ,GAAE,MAAM;AAAA,QAAE,GAAE,WAAS,GAAE,SAAO,SAAQ,KAAE,KAAK,QAAQ,KAAK,EAAC,IAAE,KAAK,SAAS,KAAK,EAAC;AAAA,MAAE,EAAM,SAAG,KAAK,cAAc,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,SAAQ,CAAC,GAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,WAAU,CAAC,GAAE,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,IAAE,GAAE,YAAW,EAAE,SAAQ,GAAE,MAAM;AAAA,QAAE,KAAK,SAAS,KAAK,EAAC;AAAA,MAAE;AAAA;AAAA,IAAM,WAAU,MAAK;AAAA,MAAE,IAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,cAAc,IAAE,QAAQ,GAAE,KAAE,KAAK,cAAc,IAAE,UAAU,GAAE,KAAE,KAAK,cAAc,IAAE,SAAS,GAAE,KAAE,MAAG,MAAG,IAAE,KAAE,IAAI,EAAE,GAAE,MAAW,MAAN,OAAQ,YAAU,GAAE,MAAK,GAAE,UAAU;AAAA,QAAE,GAAE,aAAW,GAAE,YAAW,GAAE,YAAU,GAAE,WAAU,GAAE,UAAQ,GAAE,SAAQ,KAAK,UAAU,KAAK,EAAC,GAAE,KAAK,WAAW,IAAI,GAAE,IAAI,EAAE,OAAK,IAAE,OAAI,KAAK,WAAW,IAAI,GAAE,IAAI,EAAE,QAAM,MAAK,GAAE,QAAM,MAAK,GAAE,YAAU,KAAK,eAAe,IAAE,CAAC,CAAC,EAAC,GAAE,GAAE,SAAO,KAAK,WAAW,GAAE,IAAI,GAAE,GAAE,UAAQ,KAAK,YAAY,GAAE,UAAU,GAAE,KAAK,MAAM,GAAE,MAAM,KAAK,EAAC,IAAG,GAAE,YAAU,GAAE,KAAK,IAAK,QAAG,IAAI,EAAE,GAAE,MAAK,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,GAAE,UAAU,CAAE,GAAE,GAAE,aAAW,GAAE,aAAW,KAAK,YAAY,GAAE,YAAW,GAAE,UAAU,IAAE;AAAA,MAAK;AAAA,IAAC,WAAU,MAAK,KAAK,WAAW,OAAO;AAAA,MAAE,GAAE,SAAO,GAAE,KAAK,QAAM,GAAE,OAAM,KAAK,UAAU,GAAE,MAAK,GAAE,KAAK,KAAK;AAAA,IAAG,WAAU,MAAK,KAAK,WAAW,OAAO;AAAA,MAAE,GAAE,KAAK,OAAQ,QAAG;AAAA,QAAC,IAAI,IAAE,IAAE;AAAA,QAAE,IAAG,cAAa,IAAG;AAAA,UAAC,IAAG,GAAE;AAAA,YAAM,IAAG,GAAG,GAAE,KAAK;AAAA,cAAE,WAAU,MAAK,GAAE;AAAA,gBAAM,WAAU,MAAK,KAAK;AAAA,kBAAU,OAAI,GAAE,UAAe,KAAE,GAAE,UAAZ,QAA+B,OAAZ,aAAe,GAAE,UAAU,KAAK,EAAC;AAAA,YAAQ;AAAA,yBAAU,MAAK,KAAK;AAAA,gBAAU,GAAE,UAAQ,GAAE,UAAe,KAAE,GAAE,UAAZ,QAA+B,OAAZ,aAAe,GAAE,UAAU,KAAK,EAAC;AAAA,QAAG,EAAM,SAAG,cAAa;AAAA,UAAG,WAAU,MAAK,KAAK;AAAA,YAAU,GAAE,SAAO,GAAE,UAAe,KAAE,GAAE,UAAZ,QAA+B,OAAZ,aAAe,GAAE,UAAU,KAAK,EAAC;AAAA,OAAK;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAS,KAAK,kBAAkB,GAAE,IAAI;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAQ,KAAK,kBAAkB,GAAE,IAAI;AAAA;AAAA,EAAG,aAAa,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,OAAO;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAU,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,OAAO;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE;AAAA,IAAC,IAAG;AAAA,MAAE,IAAG,GAAE,UAAS;AAAA,QAAC,IAAG,GAAE,QAAM,MAAK,GAAE;AAAA,UAAQ,WAAU,MAAK,GAAE;AAAA,YAAQ,KAAK,kBAAkB,GAAE,IAAI;AAAA,MAAE,EAAM,SAAG,GAAE;AAAA,QAAQ,KAAK,kBAAkB,GAAE,MAAM;AAAA,MAAO,SAAG,GAAE;AAAA,QAAW,GAAE,UAAQ,KAAK,kBAAkB,GAAE,MAAM;AAAA,MAAO;AAAA,QAAC,MAAM,KAAE,KAAK,UAAU,GAAE,IAAI;AAAA,QAAE,MAAG,KAAK,kBAAkB,EAAC;AAAA;AAAA;AAAA,EAAI,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,WAAU,MAAK,GAAE,OAAM;AAAA,MAAC,MAAM,MAAU,KAAE,KAAK,WAAW,IAAI,GAAE,IAAI,OAApC,QAAoD,OAAZ,YAAc,YAAU,GAAE;AAAA,MAAK,MAAG,GAAE,IAAI,EAAC;AAAA,IAAE;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,IAAG,IAAE;AAAA,MAAC,WAAU,MAAK,KAAK,MAAM;AAAA,QAAQ,IAAG,GAAE,SAAO;AAAA,UAAE,WAAU,MAAK,GAAE;AAAA,YAAU,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,cAAE,OAAO;AAAA;AAAA,MAAE,WAAU,MAAK,KAAK,MAAM;AAAA,QAAO,IAAG,GAAE,SAAO;AAAA,UAAE,WAAU,MAAK,GAAE;AAAA,YAAU,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,cAAE,OAAO;AAAA;AAAA,MAAE,WAAU,MAAK,KAAK,MAAM;AAAA,QAAS,IAAG,GAAE,SAAO;AAAA,UAAE,WAAU,MAAK,GAAE;AAAA,YAAU,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,cAAE,OAAO;AAAA;AAAA,IAAC;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,SAAO,MAAG,GAAE,WAAS;AAAA,QAAE,OAAO;AAAA,IAAE,OAAO;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAS,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,OAAO;AAAA;AAAA,EAAK,mBAAmB,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,IAAE,IAAI;AAAA,IAAE,KAAK,kBAAkB,EAAC;AAAA;AAAA,EAAG,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,CAAC,GAAE,KAAE,MAAK,KAAE,CAAC;AAAA,IAAE,OAAO,GAAE,OAAQ,QAAG;AAAA,MAAC,IAAG,cAAa;AAAA,QAAE,GAAE,KAAK,CAAC,CAAC;AAAA,MAAO,SAAG,cAAa;AAAA,QAAE,GAAE,IAAI;AAAA,MAAO,SAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE;AAAA,QAAE,MAAU,GAAE,SAAT,QAAe,KAAK,oBAAoB,GAAE,IAAI,GAAE,GAAE,SAAO,MAAI,GAAE,GAAE,SAAO,GAAG,GAAE,QAAM;AAAA,MAAG,EAAM,SAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE;AAAA,QAAE,MAAU,GAAE,SAAT,QAAe,KAAK,oBAAoB,GAAE,IAAI;AAAA,MAAE,EAAM,SAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE;AAAA,QAAE,MAAU,GAAE,SAAT,QAAe,KAAK,oBAAoB,GAAE,IAAI,GAAE,GAAE,SAAO,MAAI,GAAE,GAAE,SAAO,GAAG,GAAE,QAAM;AAAA,MAAG,EAAM,SAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE;AAAA,QAAE,IAAG,GAAE,SAAO,GAAE;AAAA,UAAC,IAAG,GAAE,GAAE,SAAO,GAAG,GAAE;AAAA,YAAM;AAAA,QAAM;AAAA,QAAC,MAAM,KAAE,GAAE,cAAc,GAAE,IAAI;AAAA,QAAE,MAAG,GAAE,KAAK,EAAC;AAAA,MAAE,EAAM,SAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,GAAE,WAAW,IAAI,GAAE,IAAI;AAAA,QAAE,OAAI,OAAI,GAAE,QAAM,OAAM,GAAE,MAAM,IAAI,GAAE,IAAI,GAAS,GAAE,cAAT,SAAqB,GAAE,YAAU,GAAE,eAAe,GAAE,MAAK,EAAC,IAAG,GAAE,KAAK,GAAG,GAAE,SAAS;AAAA,MAAG,EAAM,SAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,GAAE,WAAW,IAAI,GAAE,IAAI;AAAA,QAAE,OAAI,OAAI,GAAE,QAAM,OAAM,GAAE,MAAM,IAAI,GAAE,IAAI,GAAS,GAAE,cAAT,SAAqB,GAAE,YAAU,GAAE,eAAe,GAAE,MAAK,EAAC,IAAG,GAAE,KAAK,GAAG,GAAE,SAAS;AAAA,MAAG;AAAA,KAAG,GAAE,CAAC,GAAG,IAAI,IAAI,GAAE,IAAK,QAAG,CAAC,GAAE,MAAK,EAAC,CAAE,CAAC,EAAE,OAAO,CAAC;AAAA;AAAA,EAAE,aAAa,GAAE;AAAA,IAAC,MAAM,KAAE,CAAC;AAAA,IAAE,SAAS,EAAC,CAAC,IAAE,IAAE;AAAA,MAAC,MAAG,GAAE,WAAS,GAAE,SAAO,KAAE,IAAe,GAAE,QAAd,cAAmB,GAAE,MAAG,CAAC,IAAG,MAAG,GAAE,IAAG,WAAS,GAAE,IAAG,SAAO,KAAE;AAAA;AAAA,IAAI,WAAU,MAAK,KAAK,UAAS;AAAA,MAAC,GAAE,GAAE,OAAM,GAAE,OAAO;AAAA,MAAE,GAAE,GAAE,OAAO,GAAE,WAAS;AAAA,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK,SAAQ;AAAA,MAAC,GAAE,GAAE,OAAM,GAAE,OAAO;AAAA,MAAE,GAAE,GAAE,OAAO,GAAE,WAAS;AAAA,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK,UAAS;AAAA,MAAC,GAAE,GAAE,OAAM,GAAE,OAAO;AAAA,MAAE,GAAE,GAAE,OAAO,GAAE,WAAS;AAAA,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK,UAAS;AAAA,MAAC,GAAE,GAAE,OAAM,GAAE,OAAO;AAAA,MAAE,GAAE,GAAE,OAAO,GAAE,WAAS;AAAA,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,KAAE,WAAU;AAAA,IAAC,IAAe,OAAZ,cAAgB,KAAE,CAAC,IAAG,cAAa;AAAA,MAAG,KAAK,kBAAkB,IAAE,EAAC;AAAA,IAAO;AAAA,MAAC,MAAM,KAAE,KAAK,eAAe,EAAC;AAAA,MAAS,OAAP,QAAU,GAAE,KAAK,EAAC;AAAA;AAAA,IAAG,OAAO;AAAA;AAAA,EAAE,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,WAAU,MAAK,GAAE;AAAA,MAAQ,IAAG,GAAE,gBAAgB;AAAA,QAAG,KAAK,kBAAkB,GAAE,MAAK,EAAC;AAAA,MAAO;AAAA,QAAC,MAAM,KAAE,KAAK,cAAc,IAAE,UAAU,KAAG,KAAK,cAAc,IAAE,SAAS;AAAA,QAAE,IAAU,OAAP,MAAS;AAAA,UAAC,MAAM,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,KAAK,UAAU,GAAE,KAAE,KAAK,UAAU,GAAE,KAAK,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,GAAE,MAAK,EAAC;AAAA,UAAE,GAAE,KAAK,EAAC;AAAA,QAAE;AAAA;AAAA;AAAA,EAAG,cAAc,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,cAAc,IAAE,UAAU,KAAG,KAAK,cAAc,IAAE,SAAS;AAAA,IAAE,IAAU,OAAP,MAAS;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY,IAAE,GAAE,UAAU,GAAE,KAAE,KAAK,UAAU,GAAE,KAAK;AAAA,MAAE,OAAO,IAAI,EAAE,IAAG,IAAE,GAAE,MAAK,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,KAAE,WAAU;AAAA,IAAc,OAAZ,cAAgB,KAAE,CAAC;AAAA,IAAG,WAAU,MAAK;AAAA,MAAE,IAAG,GAAE,gBAAgB;AAAA,QAAG,KAAK,iBAAiB,GAAE,MAAK,EAAC;AAAA,MAAO;AAAA,QAAC,MAAM,KAAE,KAAK,cAAc,EAAC;AAAA,QAAS,OAAP,QAAU,GAAE,KAAK,EAAC;AAAA;AAAA,IAAG,OAAO;AAAA;AAAA,EAAE,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,WAAU,MAAK,GAAE;AAAA,MAAQ,IAAG,GAAE,gBAAgB;AAAA,QAAG,KAAK,iBAAiB,GAAE,MAAK,EAAC;AAAA,MAAO;AAAA,QAAC,MAAM,KAAE,KAAK,cAAc,EAAC;AAAA,QAAS,OAAP,QAAU,GAAE,KAAK,EAAC;AAAA;AAAA;AAAA,EAAI,aAAa,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,cAAc,IAAE,UAAU,KAAG,KAAK,cAAc,IAAE,SAAS;AAAA,IAAE,IAAU,OAAP,MAAS;AAAA,MAAC,MAAM,KAAE,KAAK,cAAc,IAAE,eAAe,GAAE,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,GAAE,KAAE,KAAK,UAAU,GAAE,KAAK,GAAE,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,GAAE,MAAK,EAAC;AAAA,MAAE,OAAc,OAAP,SAAW,GAAE,gBAAc,KAAK,aAAa,GAAE,KAAK,IAAG;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,UAAQ,KAAE,GAAE,KAAI;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE;AAAA,IAAC,cAAa,UAAQ,KAAE,GAAE;AAAA,IAAI,MAAM,KAAE,SAAS,EAAC;AAAA,IAAE,OAAO,MAAM,EAAC,IAAE,KAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO,GAAE;AAAA,IAAK,OAAO;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE;AAAA,IAAC,OAAO,IAAI,EAAE,GAAE,MAAK,KAAK,YAAY,GAAE,MAAK,IAAI,CAAC;AAAA;AAAA,EAAE,iBAAiB,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAQ,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO,GAAE;AAAA,IAAK,OAAO;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,KAAE,MAAK;AAAA,IAAC,IAAG,KAAK,OAAO,IAAI,EAAC;AAAA,MAAE,OAAO,KAAK,OAAO,IAAI,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,OAAK,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU,IAAE,MAAK,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,EAAC;AAAA,MAAE,OAAO,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,IAAE,KAAE,GAAE,SAAO,KAAK,YAAY,GAAE,QAAO,GAAE,UAAU,IAAE,MAAK,KAAE,IAAI,EAAE,GAAE,MAAK,EAAC;AAAA,MAAE,OAAO,GAAE,SAAO,IAAE,GAAE,QAAM,GAAE,OAAM,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,IAAE,KAAE,IAAI,EAAE,GAAE,MAAK,EAAC;AAAA,MAAE,GAAE,YAAU,GAAE,WAAU,GAAE,UAAQ,GAAE;AAAA,MAAQ,WAAU,MAAK,GAAE,SAAQ;AAAA,QAAC,MAAM,KAAE,KAAK,YAAY,GAAE,MAAK,GAAE,UAAU;AAAA,QAAE,GAAE,QAAQ,KAAK,IAAI,EAAE,GAAE,MAAK,IAAE,GAAE,UAAU,CAAC;AAAA,MAAE;AAAA,MAAC,OAAO,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,IAAE,KAAE,GAAE,kBAAkB,IAAG,KAAE,GAAE,SAAO,KAAE,KAAK,YAAY,GAAE,QAAO,IAAI,IAAE,IAAI,EAAE,GAAE,QAAO,IAAI,IAAE,MAAK,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,GAAE,MAAM;AAAA,MAAE,OAAO,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,IAAE,KAAE,GAAE,SAAO,KAAK,YAAY,GAAE,QAAO,IAAI,IAAE,MAAK,KAAE,IAAI,EAAE,GAAE,MAAK,IAAE,IAAE,GAAE,MAAM;AAAA,MAAE,OAAO,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,IAAI,EAAE,GAAE,MAAK,EAAC;AAAA,IAAE,OAAO,KAAK,OAAO,IAAI,IAAE,EAAC,GAAE,KAAK,gBAAgB,EAAC,GAAE;AAAA;AAAA,EAAE,eAAe,CAAC,IAAE;AAAA,IAAC,IAAI,IAAE,IAAE;AAAA,IAAE,MAAM,KAAE,KAAK,aAAa,EAAC;AAAA,IAAE,IAAG,GAAE,QAAa,KAAQ,MAAN,OAAQ,YAAU,GAAE,UAA9B,QAAiD,OAAZ,YAAc,KAAE,GAAE,cAAa,KAAG,GAAE,QAAO;AAAA,MAAC,MAAM,KAAE,KAAK,aAAa,GAAE,MAAM;AAAA,MAAE,GAAE,SAAO,KAAK,KAAY,KAAQ,MAAN,OAAQ,YAAU,GAAE,UAA9B,QAAiD,OAAZ,YAAc,KAAE,IAAU,KAAQ,MAAN,OAAQ,YAAU,GAAE,WAA9B,QAAkD,OAAZ,YAAc,KAAE,CAAC,GAAE,KAAK,gBAAgB,GAAE,MAAM;AAAA,IAAE;AAAA,IAAC,cAAa,KAAG,KAAK,gBAAgB,GAAE,MAAM,GAAE,cAAa,KAAG,KAAK,kBAAkB,EAAC;AAAA;AAAA,EAAG,iBAAiB,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,IAAI,KAAE,GAAE,KAAE,GAAE,KAAE,GAAE,KAAE;AAAA,IAAE,SAAQ,KAAE,GAAE,KAAE,GAAE,QAAQ,OAAO,KAAE,IAAE,EAAE,IAAE;AAAA,MAAC,MAAM,KAAE,GAAE,QAAQ,KAAG,KAAE,KAAK,aAAa,EAAC;AAAA,MAAE,IAAG,CAAC;AAAA,QAAE;AAAA,OAAiB,KAAE,KAAK,UAAU,GAAE,KAAK,IAAI,OAApC,QAAoD,OAAZ,aAAe,GAAE;AAAA,MAAK,QAAU,OAAJ,IAAc,MAAJ,OAAE;AAAA,MAAO,KAAE,KAAK,SAAS,IAAE,KAAE,EAAC,GAAE,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,IAAI,IAAE,EAAC,GAAE,GAAE,SAAO,IAAE,GAAE,OAAK,IAAE,KAAK,gBAAgB,GAAE,IAAI;AAAA,IAAE;AAAA,IAAC,GAAE,OAAK,KAAK,SAAS,IAAE,KAAE,EAAC,GAAE,GAAE,QAAM;AAAA;AAAA,EAAG,YAAY,CAAC,IAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,IAAS,MAAN;AAAA,MAAQ,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,iBAAiB,GAAE,YAAW,QAAO,CAAC,GAAE,KAAE,KAAK,iBAAiB,GAAE,YAAW,SAAQ,CAAC;AAAA,IAAE,IAAG,cAAa,MAAI,KAAE,GAAE,OAAM,cAAa,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,UAAU,GAAE,IAAI;AAAA,MAAS,OAAP,SAAW,KAAE;AAAA,IAAG;AAAA,IAAC;AAAA,MAAC,MAAM,KAAE,GAAG,UAAU,GAAE;AAAA,MAAM,IAAe,OAAZ,WAAc;AAAA,QAAC,MAAM,OAAmB,KAAE,GAAE,YAAZ,QAAiC,OAAZ,YAAc,YAAU,GAAE,UAAxD,QAA8D,IAAE;AAAA,QAAE,OAAO,IAAI,GAAG,KAAK,IAAI,IAAE,GAAE,QAAM,EAAC,GAAE,KAAK,IAAI,IAAE,GAAE,OAAK,EAAC,CAAC;AAAA,MAAC;AAAA,IAAC;AAAA,IAAC;AAAA,MAAC,MAAM,KAAE,GAAG,UAAU,GAAE,KAAK,UAAU,GAAE,GAAE,KAAK,SAAO,CAAC;AAAA,MAAG,IAAG,IAAE;AAAA,QAAC,MAAM,KAAQ,GAAE,KAAK,GAAE,KAAK,SAAO,OAA3B,MAA8B,IAAE;AAAA,QAAE,OAAO,IAAI,GAAG,KAAK,IAAI,IAAE,GAAE,QAAM,EAAC,GAAE,KAAK,IAAI,IAAE,GAAE,OAAK,EAAC,CAAC;AAAA,MAAC;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,GAAE;AAAA,MAAC,IAAI,KAAE,IAAE,KAAE,GAAE,KAAE;AAAA,MAAE,MAAM,KAAE,KAAK,aAAa,GAAE,MAAM;AAAA,MAAS,OAAP,SAAW,KAAE,GAAE,MAAK,KAAE,GAAE;AAAA,MAAO,OAAO,KAAE,GAAE,QAAM,KAAK,kBAAyB,KAAQ,MAAN,OAAQ,YAAU,GAAE,gBAA9B,QAAuD,OAAZ,YAAc,KAAE,MAAK,UAAS,KAAK,SAAS,IAAE,EAAC,CAAC,GAAE,OAAI,KAAE,KAAG,IAAI,GAAG,KAAK,IAAI,IAAE,EAAC,GAAE,KAAK,IAAI,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,GAAE;AAAA,MAAC,IAAI,KAAE,GAAE,KAAE,GAAE,KAAE,GAAE,KAAE,GAAE,KAAE;AAAA,MAAE,WAAU,MAAK,GAAE,SAAQ;AAAA,QAAC,MAAM,KAAE,KAAK,aAAa,GAAE,IAAI;AAAA,QAAS,OAAP,SAAW,KAAE,KAAK,IAAI,GAAE,OAAM,EAAC,GAAE,KAAE,KAAK,SAAS,GAAE,OAAM,KAAE,EAAC,GAAE,KAAE,GAAE,MAAK,KAAE;AAAA,MAAG;AAAA,MAAC,OAAO,KAAE,KAAK,SAAS,IAAE,KAAE,EAAC,GAAE,IAAI,GAAG,KAAK,IAAI,IAAE,EAAC,GAAE,KAAK,IAAI,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,KAAc,GAAE,WAAb;AAAA;AAAA,EAAqB,aAAa,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,KAAc,GAAE,WAAb;AAAA;AAAA,EAAqB,aAAa,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,KAAU,GAAE,SAAT,QAAmB,GAAG,cAAc,QAAQ,GAAE,KAAK,IAAI,KAAxC;AAAA;AAAA,EAA0C,aAAa,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,KAAU,GAAE,SAAT,QAAmB,GAAG,cAAc,QAAQ,GAAE,KAAK,IAAI,KAAxC;AAAA;AAAA,EAA0C,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE;AAAA,IAAE,IAAG,CAAC,MAAG,CAAC,GAAE;AAAA,MAAW,OAAO;AAAA,IAAK,MAAM,KAAE,GAAE;AAAA,IAAW,SAAQ,MAAK;AAAA,MAAE,IAAG,GAAE,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,OAAO;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAE,SAAQ,MAAK;AAAA,MAAE,IAAG,GAAE,QAAM,IAAE;AAAA,QAAC,IAAI,KAAS,OAAP,QAAiB,GAAE,UAAT,OAAe,GAAE,QAAM;AAAA,QAAE,OAAO,cAAa,UAAQ,KAAE,GAAE,KAAc,OAAO,MAAjB,WAAmB,KAAY,OAAO,MAAjB,WAAmB,SAAS,EAAC,IAAE;AAAA,MAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAE,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,KAAK,KAAK,KAAE,EAAC,IAAE;AAAA;AAAE;AAAC,GAAG,YAAU,EAAC,KAAI,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,KAAI,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,KAAI,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,KAAI,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,QAAO,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,MAAK,EAAC,OAAM,GAAE,MAAK,EAAC,GAAE,MAAK,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,MAAK,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,GAAE,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,GAAE,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,GAAE,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,GAAE,QAAO,EAAC,OAAM,IAAG,MAAK,GAAE,EAAC,GAAE,GAAG,gBAAc,GAAG,iBAAiB,IAAK,QAAG,GAAE,IAAK,GAAE,GAAG,gBAAc,GAAG,aAAa,IAAK,QAAG,GAAE,IAAK;AAAE,IAAI,KAAG;AAAA;AAAE,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,KAAG,MAAK,KAAK,OAAK,IAAE,KAAK,QAAM,IAAE,KAAK,OAAK;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,OAAO,IAAI,GAAG,KAAK,MAAK,KAAK,OAAM,KAAK,IAAI;AAAA;AAAE;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,KAAK,KAAG,MAAK,KAAK,OAAK,GAAE,MAAK,KAAK,OAAK;AAAA;AAAA,EAAG,KAAK,GAAE;AAAA,IAAC,OAAO,IAAI,GAAG,KAAK,IAAI;AAAA;AAAE;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,KAAK,SAAO,MAAK,KAAK,YAAU,IAAI,KAAI,KAAK,YAAU,IAAI,KAAI,KAAK,sBAAoB,IAAG,KAAK,KAAG,MAAK,OAAI,KAAK,SAAO,IAAE,KAAK,sBAAoB,GAAE;AAAA;AAAA,EAAsB,WAAW,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,UAAU,IAAI,EAAC,KAAU,KAAE,KAAK,UAAU,IAAI,EAAC,OAA9B,QAA8C,OAAZ,YAAc,KAAE,OAAK,KAAK,SAAO,KAAK,OAAO,YAAY,EAAC,IAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,OAAO,KAAK,UAAU,IAAI,EAAC,KAAU,KAAE,KAAK,UAAU,IAAI,EAAC,OAA9B,QAA8C,OAAZ,YAAc,KAAE,OAAK,KAAK,SAAO,KAAK,OAAO,YAAY,EAAC,IAAE;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,UAAU,IAAI,IAAE,IAAI,GAAG,IAAE,IAAQ,MAAN,OAAQ,KAAE,IAAI,CAAC;AAAA;AAAA,EAAG,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,EAAC;AAAA,IAAS,OAAP,OAAS,GAAE,QAAM,KAAE,KAAK,eAAe,IAAE,IAAE,EAAC;AAAA;AAAA,EAAG,gBAAgB,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,MAAM,KAAE,KAAK,YAAY,EAAC;AAAA,IAAE,QAAe,KAAQ,MAAN,OAAQ,YAAU,GAAE,WAA9B,QAAkD,OAAZ,YAAc,KAAE;AAAA;AAAA,EAAK,KAAK,GAAE;AAAA,IAAC,OAAO,IAAI,GAAG,IAAI;AAAA;AAAE;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAG;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,KAAK,OAAK;AAAA;AAAA,EAAG,WAAW,CAAC,IAAE;AAAA,IAAC,OAAO,KAAK,KAAK,YAAY,EAAC;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,cAAa;AAAA,MAAG,OAAO,GAAE,KAAK,QAAS,QAAG;AAAA,QAAC,OAAI,KAAE;AAAA,OAAS,GAAE,IAAI,GAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,IAAE,MAAM,IAAI,MAAM,yCAAyC,GAAE,MAAM;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,KAAK,KAAM,QAAG,EAAE;AAAA,MAAE,OAAO,IAAI,GAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,IAAC;AAAA,IAAC,MAAM,IAAI,MAAM,yCAAyC,GAAE,MAAM;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,EAAE,cAAa;AAAA,MAAI,MAAM,IAAI,MAAM,2CAA2C,GAAE,MAAM;AAAA,IAAE,OAAO,GAAE,QAAM,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,IAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC;AAAA,IAAE,IAAG,cAAa,MAAQ,GAAE,SAAS,SAAf,GAAoB;AAAA,MAAC,MAAM,KAAE,GAAE,UAAS,KAAE,GAAE,OAAO,aAAW,GAAE;AAAA,MAAO,OAAO,IAAI,GAAG,IAAE,KAAK,YAAY,KAAK,CAAC;AAAA,IAAC;AAAA,IAAC,OAAO,IAAI,GAAG,GAAE,SAAS,MAAK,KAAK,YAAY,KAAK,CAAC;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,MAAM,IAAE,GAAE,KAAK,GAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,OAAO,KAAK,IAAI,KAAK,IAAI,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,OAAO,IAAE,GAAE,KAAK,KAAG,GAAE,KAAK,GAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,OAAO,GAAE,OAAM,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAE,MAAS,OAAJ;AAAA,MAAO,IAAE,MAAG,MAAI,OAAI;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,cAAc,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,cAAc,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,mBAAmB,CAAC,IAAE;AAAA,IAAC,IAAO,OAAJ;AAAA,MAAM,OAAO;AAAA,IAAG,IAAI,KAAE;AAAA,IAAE,MAAK,EAAE,IAAE;AAAA,MAAI,OAAI,GAAE;AAAA,IAAI,OAAO;AAAA;AAAA,EAAE,kBAAkB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,oBAAoB,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,oBAAoB,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,MAAC,IAAO,GAAE,KAAK,WAAX,KAAuB,GAAE,KAAK,WAAX;AAAA,QAAkB,OAAO,QAAQ,MAAM,oCAAoC,GAAE,MAAM,GAAE;AAAA,MAAK,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,IAAG,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,0CAA0C,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,MAAI,KAAK;AAAA,IAAG,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAE,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,IAAE,KAAK,YAAY,KAAK,CAAC;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,SAAS,YAAY,GAAE,KAAE,GAAE,SAAS,GAAG,IAAE,KAAK,YAAY,KAAK,IAAE,KAAK,YAAY,KAAK;AAAA,MAAE,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,OAAO,IAAI,GAAG,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,IAAG,EAAC;AAAA,MAAE,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,OAAO,IAAI,GAAG,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,MAAI,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,MAAI,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,KAAI,EAAC;AAAA,MAAE,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,QAAQ,MAAM,yBAAyB,IAAG;AAAA,MAAO,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,QAAc,QAAQ,MAAM,yBAAyB,IAAG;AAAA,MAAO;AAAA,QAAC,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,UAAc,OAAO,IAAI,GAAG,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,MAAI,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,MAAI,GAAE,MAAI,GAAE,KAAG,GAAE,KAAG,GAAE,KAAG,GAAE,KAAI,EAAC;AAAA,QAAa,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA0B,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,YAAc,QAAQ,MAAM,yBAAyB,IAAG,IAAa,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAAe,QAAQ,MAAM,yBAAyB,IAAG;AAAA;AAAA,IAAG;AAAA,IAAC,OAAO,QAAQ,MAAM,+CAA+C,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,MAAC,IAAI,KAAE;AAAA,MAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,QAAO,EAAE;AAAA,QAAE,OAAI,GAAE,KAAK,MAAG,GAAE,KAAK,QAAK,GAAE,KAAK,MAAG,GAAE,KAAK;AAAA,MAAI,OAAO,IAAI,GAAG,KAAK,KAAK,EAAC,GAAE,KAAK,YAAY,KAAK,CAAC;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,QAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,MAAE,MAAG,GAAE,MAAG,GAAE;AAAA,IAAG,OAAO;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,KAAG,IAAI,GAAG,KAAK,KAAK,GAAE,MAAK,GAAE,IAAI,GAAE,KAAK,YAAY,KAAK,CAAC,KAAG,QAAQ,MAAM,wCAAwC,GAAE,MAAM,GAAE;AAAA;AAAA,EAAM,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,GAAE,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAW,GAAE,SAAS,SAAnB,SAAiC,GAAE,SAAS,SAAnB;AAAA,MAAwB,OAAO,QAAQ,MAAM,sDAAsD,GAAE,MAAM,GAAE;AAAA,IAAK,IAAW,GAAE,SAAS,SAAnB,SAAiC,GAAE,SAAS,SAAnB;AAAA,MAAwB,OAAO,QAAQ,MAAM,qDAAqD,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,GAAE,OAAM,KAAE,GAAE;AAAA,IAAM,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,MAAG,MAAG,KAAG,MAAG,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,IAAW,GAAE,SAAS,SAAnB,SAAiC,GAAE,SAAS,SAAnB;AAAA,MAAwB,OAAO,QAAQ,MAAM,+CAA+C,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,GAAE;AAAA,IAAM,OAAO,IAAI,GAAG,MAAG,MAAG,KAAG,MAAG,GAAE,KAAK,YAAY,KAAK,CAAC;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,KAAK,GAAE,MAAK,GAAE,IAAI;AAAA,MAAE,OAAO,IAAI,GAAG,KAAE,IAAE,MAAM,KAAK,GAAE,IAAI,IAAE,GAAE,KAAK,IAAK,QAAG,CAAC,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,gDAAgD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE;AAAA,IAAC,OAAW,OAAJ,IAAM,KAAG,KAAG,KAAK,MAAM,EAAC;AAAA;AAAA,EAAE,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,iBAAiB,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,iBAAiB,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,iBAAiB,CAAC,IAAE;AAAA,IAAC,OAAW,OAAJ,IAAM,KAAG,KAAK,KAAK,KAAE,CAAC,EAAC;AAAA;AAAA,EAAE,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,kBAAkB,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,kBAAkB,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,GAAE,KAAK,WAAS,GAAE,KAAK,UAAQ,GAAE,KAAK,WAAS,GAAE,KAAK,UAAQ,QAAQ,MAAM,kDAAkD,GAAE,MAAM,GAAE,QAAM,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,KAAK,MAAG,GAAE,KAAK,GAAG,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,GAAE,QAAM,GAAE,OAAM,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAE,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAW,GAAE,SAAS,SAAnB,SAAiC,GAAE,SAAS,SAAnB;AAAA,MAAwB,OAAO,QAAQ,MAAM,qDAAqD,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,GAAE,OAAM,MAAG,KAAG,GAAE,SAAO,KAAG,IAAE,KAAE,CAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAE,KAAE,GAAE,KAAK,OAAI,KAAE,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,GAAE,OAAM,KAAE,GAAE;AAAA,IAAM,OAAO,IAAI,GAAG,KAAE,KAAE,MAAG,KAAE,IAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,IAAE,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,IAAE,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,IAAI,KAAE;AAAA,MAAE,OAAO,GAAE,KAAK,QAAS,QAAG;AAAA,QAAC,MAAG,KAAE;AAAA,OAAI,GAAE,IAAI,GAAG,KAAK,KAAK,EAAC,GAAE,KAAK,YAAY,KAAK,CAAC;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,IAAI,IAAE,GAAE,KAAK,GAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,IAAI,IAAE,GAAE,KAAK,GAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,GAAE,KAAK,OAAI,IAAE,GAAE,KAAK,OAAI,GAAE,KAAK,MAAG,GAAE,KAAK,GAAG,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,SAAO,IAAE,GAAE,SAAO,GAAE,QAAM,GAAE,OAAM,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,KAAK,GAAG,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,GAAE,OAAM,GAAE,QAAQ;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,OAAO,IAAE,EAAC,EAAE;AAAA,MAAM,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAE,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,+CAA+C,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,IAAI,IAAE,GAAE,KAAK,GAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,EAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA;AAAA,EAAE,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAE,KAAK,KAAG,GAAI,GAAE,GAAE,QAAQ;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,KAAK,KAAG,KAAI,KAAK,YAAY,KAAK,CAAC;AAAA;AAAA,EAAE,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,KAAK,GAAE,MAAK,GAAE,IAAI;AAAA,MAAE,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAE,IAAE,KAAE,GAAE,KAAK,GAAG,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,4CAA4C,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,KAAK,GAAE,MAAK,GAAE,IAAI;AAAA,MAAE,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI;AAAA,QAAC,MAAM,KAAE,IAAE,GAAE,QAAM,GAAE,SAAO,IAAE,KAAE;AAAA,QAAG,IAAG,KAAE;AAAA,UAAE,OAAO;AAAA,QAAE,MAAM,KAAE,KAAK,KAAK,EAAC;AAAA,QAAE,OAAO,GAAE,QAAM,MAAG,GAAE,QAAM,KAAE,MAAG,GAAE,KAAK;AAAA,OAAI,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,kEAAkE,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,2BAA2B,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,KAAK,IAAI,IAAE,CAAC,GAAE,CAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,KAAK,IAAI,GAAE,OAAM,CAAC,GAAE,CAAC,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,IAAI,KAAK,KAAK,KAAE,OAAI,KAAE,KAAG,CAAC,GAAE,CAAC;AAAA,IAAE,OAAO,KAAE,MAAG,IAAE,IAAE;AAAA;AAAA,EAAG,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAK,YAAY,GAAE,KAAK,KAAG,GAAE,KAAK,KAAG,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,YAAY,GAAE,OAAM,GAAE,OAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa,MAAI,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,KAAK,MAAG,IAAE,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,GAAE,QAAM,GAAE,QAAM,IAAE,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,IAAI,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,IAAI,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,KAAK,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,KAAK,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,iBAAiB,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,YAAY;AAAA,IAAE,OAAmB,OAAZ,aAA2B,OAAZ,YAAc,KAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,aAA2B,OAAZ,YAAc,KAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,IAAc,OAAZ,YAAc,KAAK,YAAY,SAAS,KAAe,OAAZ,aAA2B,OAAZ,aAAe,QAAQ,MAAM,uBAAuB,IAAG,GAAE;AAAA;AAAA,EAAG,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,EAAE,cAAa;AAAA,MAAI,OAAO,QAAQ,MAAM,+CAA+C,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,KAAK,kBAAkB,GAAE,QAAQ;AAAA,IAAE,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,GAAG,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,GAAG,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,GAAG,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAc,GAAE,SAAS,SAAtB,YAAwC,GAAE,SAAS,SAAvB,aAAyC,GAAE,SAAS,SAAvB,WAA4B;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,OAAO,IAAI,GAAG,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,KAAI,GAAE,IAAG,GAAE,IAAG,GAAE,KAAI,GAAE,GAAG,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,uBAAuB,GAAE,SAAS,MAAM,GAAE;AAAA;AAAA,EAAK,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,IAAI,GAAG,GAAE,KAAK,IAAK,QAAG,KAAK,MAAM,EAAC,CAAE,GAAE,GAAE,QAAQ;AAAA,IAAE,MAAM,KAAE;AAAA,IAAE,OAAO,IAAI,GAAG,KAAK,MAAM,GAAE,KAAK,GAAE,GAAE,QAAQ;AAAA;AAAA,EAAE,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oBAAoB,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,0BAA0B,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,gBAAgB,GAAE;AAAA;AAAA,EAAK,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,YAAY,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,kBAAkB,GAAE;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,gBAAgB,GAAE;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,cAAc,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oBAAoB,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,kBAAkB,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK,IAAG,KAAE,GAAE,KAAK,SAAO,IAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,EAAE,QAAM;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,IAAG,cAAa,IAAG;AAAA,QAAC,IAAG,KAAE,KAAG,MAAG,GAAE;AAAA,UAAc,OAAO,QAAQ,MAAM,iDAAiD,GAAE,MAAM,GAAE;AAAA,QAAK,MAAM,KAAE,GAAE,gBAAgB,EAAC,GAAE,KAAE,GAAE;AAAA,QAAU,OAAc,OAAP,OAAS,IAAI,GAAG,GAAE,IAAG,KAAK,YAAY,KAAK,CAAC,IAAS,OAAP,OAAS,IAAI,GAAG,IAAE,KAAK,YAAY,OAAO,CAAC,IAAS,OAAP,OAAS,IAAI,GAAG,GAAE,MAAM,GAAE,CAAC,GAAE,KAAK,YAAY,OAAO,CAAC,KAAG,QAAQ,MAAM,6BAA6B,sBAAqB,GAAE,MAAM,GAAE;AAAA,MAAK;AAAA,MAAC,OAAO,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAI;AAAA,IAAC,OAAO,QAAQ,MAAM,wDAAwD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK,IAAG,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAE,GAAE,KAAK,SAAO,IAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,EAAE,QAAM;AAAA,IAAE,IAAG,EAAE,cAAa,OAAS,GAAE,KAAK,WAAX;AAAA,MAAkB,OAAO,QAAQ,MAAM,6CAA6C,GAAE,MAAM,GAAE;AAAA,IAAK,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,IAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,KAAK,MAAM,GAAE,KAAK,EAAE,GAAE,KAAE,KAAK,MAAM,GAAE,KAAK,EAAE;AAAA,QAAE,IAAG,KAAE,KAAG,MAAG,GAAE,SAAO,KAAE,KAAG,MAAG,GAAE;AAAA,UAAO,OAAO,QAAQ,MAAM,WAAW,0BAAyB,GAAE,MAAM,GAAE;AAAA,QAAK,MAAM,KAAE,GAAE,SAAS,IAAE,IAAE,GAAE,EAAC;AAAA,QAAE,OAAc,OAAP,QAAU,QAAQ,MAAM,gDAAgD,GAAE,MAAM,GAAE,QAAM,IAAI,GAAG,IAAE,KAAK,YAAY,OAAO,CAAC;AAAA,MAAC;AAAA,MAAC,OAAO,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAI;AAAA,IAAC,OAAO,QAAQ,MAAM,kDAAkD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK;AAAA,IAAG,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,OAAO,cAAa,KAAG,IAAI,GAAG,GAAE,oBAAmB,KAAK,YAAY,KAAK,CAAC,KAAG,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAK;AAAA,IAAC,OAAO,QAAQ,MAAM,uDAAuD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK;AAAA,IAAG,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,OAAO,cAAa,KAAG,IAAI,GAAG,GAAE,eAAc,KAAK,YAAY,KAAK,CAAC,KAAG,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAK;AAAA,IAAC,OAAO,QAAQ,MAAM,uDAAuD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK;AAAA,IAAG,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,OAAO,cAAa,KAAG,IAAI,GAAG,GAAE,aAAY,KAAK,YAAY,KAAK,CAAC,KAAG,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAK;AAAA,IAAC,OAAO,QAAQ,MAAM,wDAAwD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,yBAAyB,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,yBAAyB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,iCAAiC,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,yBAAyB,GAAE;AAAA;AAAA,EAAK,kBAAkB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,0BAA0B,GAAE;AAAA;AAAA,EAAK,4BAA4B,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oCAAoC,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,KAAK,IAAG,KAAE,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,GAAE,KAAM,GAAE,KAAK,WAAX,IAAkB,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,EAAE,QAAM,GAAE,KAAM,GAAE,KAAK,WAAX,IAAkB,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,EAAE,OAAK,KAAK,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC,EAAE;AAAA,IAAK,IAAO,GAAE,WAAN;AAAA,MAAa,OAAO,QAAQ,MAAM,iDAAiD,GAAE,MAAM,GAAE;AAAA,IAAK,IAAG,EAAE,cAAa,OAAS,GAAE,KAAK,WAAX;AAAA,MAAkB,OAAO,QAAQ,MAAM,8CAA8C,GAAE,MAAM,GAAE;AAAA,IAAK,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE,iBAAiB,EAAC;AAAA,MAAE,IAAG,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,GAAE,gBAAgB,CAAC,GAAE,KAAE,KAAK,MAAM,GAAE,KAAK,EAAE,GAAE,KAAE,KAAK,MAAM,GAAE,KAAK,EAAE;AAAA,QAAE,OAAO,KAAE,KAAG,MAAG,GAAE,MAAI,KAAE,KAAG,MAAG,GAAE,MAAI,QAAQ,MAAM,WAAW,0BAAyB,GAAE,MAAM,GAAE,SAAO,GAAE,SAAS,IAAE,IAAE,GAAE,IAAE,MAAM,KAAK,EAAC,CAAC,GAAE;AAAA,MAAK;AAAA,MAAC,OAAO,QAAQ,MAAM,WAAW,sBAAqB,GAAE,MAAM,GAAE;AAAA,IAAI;AAAA,IAAC,OAAO,QAAQ,MAAM,mDAAmD,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC;AAAA,IAAE,OAAO,GAAE,YAAY,EAAC,EAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAK,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,SAAO,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,SAAO,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,KAAK,IAAI,GAAE,OAAM,GAAE,KAAK,IAAG,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,KAAK,IAAI,GAAE,OAAM,GAAE,KAAK,IAAG,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,GAAE,QAAM,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,GAAE,QAAM,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,GAAE,QAAM,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,cAAa,OAAK,KAAE,GAAE;AAAA,IAAO,MAAM,KAAE,KAAK,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAI,KAAE,GAAE,KAAK;AAAA,IAAG,MAAM,KAAE,KAAK,KAAK,eAAe,IAAE,EAAC,GAAE,KAAE,GAAE,MAAM,WAAW,KAAK,MAAK,GAAE,SAAQ,EAAC,GAAE,KAAE,IAAI,GAAG,GAAE,OAAM,GAAE,QAAQ;AAAA,IAAE,OAAO,cAAa,MAAI,cAAa,OAAK,GAAE,QAAM,GAAE,QAAO,GAAE,iBAAiB,MAAI,GAAE,MAAM,aAAa,KAAK,MAAK,IAAE,GAAE,SAAQ,EAAC,GAAE;AAAA;AAAA,EAAE,yBAAyB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,iCAAiC,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oBAAoB,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oBAAoB,GAAE;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,gBAAgB,GAAE;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,gBAAgB,GAAE;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,oBAAoB,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,sBAAsB,GAAE;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,sBAAsB,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,kBAAkB,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,kBAAkB,GAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,uBAAuB,GAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,uBAAuB,GAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,uBAAuB,GAAE;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,sBAAsB,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,yBAAyB,GAAE;AAAA;AAAA,EAAK,sBAAsB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,8BAA8B,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,4BAA4B,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,kBAAkB,GAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,uBAAuB,GAAE;AAAA;AAAA,EAAK,mBAAmB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,2BAA2B,GAAE;AAAA;AAAA,EAAK,iBAAiB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,yBAAyB,GAAE;AAAA;AAAA,EAAK,kBAAkB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,0BAA0B,GAAE;AAAA;AAAA,EAAK,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,mBAAmB,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE;AAAA;AAAA,EAAK,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,wBAAwB,GAAE;AAAA;AAAA,EAAK,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,iBAAiB,GAAE;AAAA;AAAA,EAAK,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,QAAQ,MAAM,iBAAiB,GAAE;AAAA;AAAK;AAAC,IAAM,KAAG,EAAC,MAAK,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,MAAK,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,MAAK,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,GAAE,OAAM,EAAC;AAAtJ,IAAwJ,KAAG,EAAC,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,GAAE,QAAO,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,SAAQ,CAAC,GAAE,GAAE,CAAC,GAAE,QAAO,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,GAAE,QAAO,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,GAAE,SAAQ,CAAC,GAAE,GAAE,EAAE,EAAC;AAAA;AAAE,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,MAAM,GAAE,KAAK,MAAU,MAAN,OAAQ,KAAE,CAAC,GAAE,KAAK,aAAW,IAAI,IAAG,KAAK,WAAW,UAAU,KAAK,GAAG,GAAE,KAAK,WAAgB,KAAQ,MAAN,OAAQ,YAAU,GAAE,MAAM,OAApC,QAAoD,OAAZ,YAAc,KAAE,IAAI,IAAG,KAAK,WAAS,IAAI,GAAG,IAAI,GAAE,KAAK,WAAS,EAAC,MAAK,KAAK,YAAY,GAAG,IAAI,GAAE,KAAI,KAAK,YAAY,GAAG,GAAG,GAAE,KAAI,KAAK,YAAY,GAAG,GAAG,GAAE,KAAI,KAAK,YAAY,GAAG,GAAG,GAAE,KAAI,KAAK,YAAY,GAAG,GAAG,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,OAAM,KAAK,YAAY,GAAG,KAAK,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,GAAE,SAAQ,KAAK,YAAY,GAAG,OAAO,EAAC;AAAA;AAAA,EAAG,gBAAgB,CAAC,IAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,MAAM,MAAU,MAAU,KAAE,KAAK,QAAQ,YAAY,EAAC,OAApC,QAAoD,OAAZ,YAAc,YAAU,GAAE,WAA5E,QAAgG,OAAZ,YAAc,KAAE;AAAA,IAAK,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAK,IAAG,cAAa;AAAA,MAAG,OAAO,GAAE;AAAA,IAAM,IAAG,cAAa;AAAA,MAAG,OAAO,MAAM,KAAK,GAAE,IAAI;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,OAAO,MAAM,KAAK,GAAE,IAAI;AAAA,IAAE,IAAG,cAAa,MAAI,GAAE,oBAAoB,GAAE;AAAA,MAAC,IAAW,GAAE,SAAS,OAAO,SAA1B;AAAA,QAA+B,OAAO,MAAM,KAAK,IAAI,YAAY,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,KAAK,CAAC;AAAA,MAAE,IAAW,GAAE,SAAS,OAAO,SAA1B;AAAA,QAA+B,OAAO,MAAM,KAAK,IAAI,WAAW,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,KAAK,CAAC;AAAA,MAAE,IAAW,GAAE,SAAS,OAAO,SAA1B;AAAA,QAA+B,OAAO,MAAM,KAAK,IAAI,aAAa,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,KAAK,CAAC;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,oCAAoC,GAAE,SAAS,MAAM,GAAE;AAAA;AAAA,EAAK,OAAO,CAAC,IAAE;AAAA,KAAE,KAAQ,MAAN,OAAQ,KAAE,CAAC,GAAG,aAAW,KAAK,cAAc,GAAE,WAAU,KAAK,OAAO,GAAE,KAAK,gBAAgB,KAAK,KAAI,KAAK,OAAO;AAAA;AAAA,EAAG,kBAAkB,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,QAAQ,MAAM;AAAA,KAAG,KAAQ,MAAN,OAAQ,KAAE,CAAC,GAAG,aAAW,KAAK,cAAc,GAAE,WAAU,EAAC,GAAE,KAAK,gBAAgB,KAAK,KAAI,EAAC;AAAA,IAAE,MAAM,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,IAAG,CAAC;AAAA,MAAE,OAAO,KAAK,QAAQ,MAAM,YAAY,cAAa;AAAA,IAAE,IAAa,OAAO,MAAjB;AAAA,MAAmB,KAAE,CAAC,IAAE,GAAE,CAAC;AAAA,IAAO;AAAA,MAAC,IAAO,GAAE,WAAN;AAAA,QAAa,OAAO,KAAK,QAAQ,MAAM,wBAAwB;AAAA,MAAM,GAAE,WAAN,IAAa,KAAE,CAAC,GAAE,IAAG,GAAE,CAAC,IAAM,GAAE,WAAN,IAAa,KAAE,CAAC,GAAE,IAAG,GAAE,IAAG,CAAC,IAAE,GAAE,SAAO,MAAI,KAAE,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA;AAAA,IAAI,MAAM,KAAE,GAAE,IAAG,KAAE,GAAE,IAAG,KAAE,GAAE,IAAG,KAAE,KAAK,YAAY,OAAO;AAAA,IAAE,GAAE,YAAY,mBAAkB,IAAI,GAAG,IAAE,EAAC,CAAC;AAAA,IAAE,WAAU,MAAK;AAAA,MAAE,WAAU,MAAK,GAAE,KAAG;AAAA,QAAC,MAAM,KAAE,GAAE,IAAG;AAAA,QAAG,GAAE,UAAU,QAAS,QAAG;AAAA,UAAC,IAAI;AAAA,UAAE,MAAM,KAAE,GAAE;AAAA,UAAK,IAAS,MAAN,OAAQ,YAAU,GAAE,YAAW;AAAA,YAAC,IAAI,KAAE,MAAK,KAAE;AAAA,YAAK,WAAU,MAAK,GAAE;AAAA,cAAuB,GAAE,SAAd,YAAmB,KAAE,GAAE,QAAgB,GAAE,SAAZ,YAAmB,KAAE,GAAE;AAAA,YAAO,IAAG,MAAG,MAAG,MAAG;AAAA,cAAE,IAAe,GAAE,YAAd,aAAmC,GAAE,eAAd,WAAyB;AAAA,gBAAC,MAAM,KAAE,IAAI,GAAG,GAAE,SAAQ,KAAK,YAAY,GAAE,IAAI,GAAE,GAAE,aAAmB,KAAE,GAAE,QAAQ,UAApB,QAAuC,OAAZ,YAAc,KAAE,IAAI;AAAA,gBAAE,GAAE,QAAM;AAAA,cAAE,EAAM;AAAA,gBAAY,GAAE,YAAd,YAAsB,GAAE,QAAM,IAAI,GAAG,GAAE,SAAQ,KAAK,YAAY,GAAE,IAAI,CAAC,IAAE,GAAE,QAAM,IAAI,GAAG,IAAE,KAAK,YAAY,GAAE,IAAI,CAAC;AAAA,UAAE;AAAA,SAAG;AAAA,MAAE;AAAA,IAAC,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,MAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,QAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,UAAE,GAAE,YAAY,iBAAgB,IAAI,GAAG,CAAC,IAAE,IAAE,EAAC,GAAE,KAAK,YAAY,OAAO,CAAC,CAAC,GAAE,KAAK,mBAAmB,IAAE,CAAC,IAAE,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAG,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,cAAa;AAAA,MAAE,OAAO,KAAK,eAAe,GAAE,OAAM,EAAC;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,IAAG,GAAE,WAAU;AAAA,QAAC,MAAM,KAAE,KAAK,eAAe,GAAE,WAAU,EAAC;AAAA,QAAE,IAAG,EAAE,cAAa;AAAA,UAAI,MAAM,IAAI,MAAM,4BAA4B;AAAA,QAAE,IAAG,CAAC,GAAE;AAAA,UAAM,OAAO;AAAA,MAAI;AAAA,MAAC,OAAO,GAAG;AAAA,IAAS;AAAA,IAAC,IAAG,cAAa;AAAA,MAAG,OAAO,GAAG;AAAA,IAAa,IAAG,cAAa;AAAA,MAAE,KAAK,KAAK,IAAE,EAAC;AAAA,IAAO,SAAG,cAAa;AAAA,MAAE,KAAK,KAAK,IAAE,EAAC;AAAA,IAAO,SAAG,cAAa;AAAA,MAAE,KAAK,OAAO,IAAE,EAAC;AAAA,IAAO,SAAG,cAAa;AAAA,MAAE,KAAK,UAAU,IAAE,EAAC;AAAA,IAAO;AAAA,MAAC,IAAG,cAAa;AAAA,QAAE,OAAO,KAAK,IAAI,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa;AAAA,QAAE,OAAO,KAAK,QAAQ,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa;AAAA,QAAE,OAAO,KAAK,KAAK,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa;AAAA,QAAE,OAAO,KAAK,OAAO,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa;AAAA,QAAE,OAAO,KAAK,MAAM,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa,GAAE;AAAA,QAAC,MAAM,KAAE,GAAE,MAAM;AAAA,QAAE,OAAO,GAAE,sBAAoB,GAAE,qBAAoB,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,MAAC;AAAA,MAAC,IAAG,cAAa;AAAA,QAAE,KAAK,QAAQ,IAAE,EAAC;AAAA,MAAO,SAAG,cAAa;AAAA,QAAE,KAAK,WAAW,IAAE,EAAC;AAAA,MAAO;AAAA,QAAC,IAAG,cAAa;AAAA,UAAG,OAAO;AAAA,QAAK,IAAG,cAAa,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAY,GAAE,YAAY,EAAC,MAAtB,QAAyB,GAAE,YAAY,IAAE,IAAI,GAAG,GAAE,KAAK,YAAY,KAAK,CAAC,CAAC;AAAA,QAAE,EAAM,SAAG,cAAa;AAAA,UAAE,KAAK,MAAM,IAAE,EAAC;AAAA,QAAO;AAAA,UAAC,IAAG,cAAa;AAAA,YAAE,OAAO;AAAA,UAAK,IAAG,cAAa;AAAA,YAAG,OAAO;AAAA,UAAK,QAAQ,MAAM,2BAA0B,IAAE,QAAQ,GAAE,MAAM;AAAA;AAAA;AAAA;AAAA,IAAK,OAAO;AAAA;AAAA,EAAK,cAAc,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,cAAa,KAAG,KAAK,cAAc,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,aAAa,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,cAAc,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,UAAU,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,YAAY,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,WAAW,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,aAAa,IAAE,EAAC,IAAE,cAAa,KAAG,KAAK,aAAa,IAAE,EAAC,KAAG,QAAQ,MAAM,2BAA0B,IAAE,QAAQ,GAAE,MAAM,GAAE;AAAA;AAAA,EAAM,WAAW,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW,YAAY,EAAC;AAAA,MAAE,IAAU,OAAP;AAAA,QAAS,OAAO;AAAA,IAAC;AAAA,IAAC,IAAI,MAAU,KAAE,KAAK,SAAS,SAAxB,QAAyC,OAAZ,YAAc,KAAE;AAAA,IAAK,OAAc,OAAP,SAAW,KAAE,KAAK,WAAW,kBAAkB,EAAC,IAAG;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,WAAU,MAAK,IAAE;AAAA,MAAC,MAAM,KAAE,GAAE,KAAG,KAAE,KAAK,WAAW,gBAAgB,EAAC;AAAA,MAAS,OAAP,QAAiB,GAAE,SAAT,SAAgB,GAAE,OAAK,KAAK,YAAY,KAAK,IAAW,GAAE,KAAK,SAAf,SAA6B,GAAE,KAAK,SAAf,SAA6B,GAAE,KAAK,SAAf,SAA6B,GAAE,KAAK,SAAf,QAAoB,GAAE,YAAY,IAAE,IAAI,GAAG,IAAE,GAAE,IAAI,CAAC,IAAW,GAAE,KAAK,SAAhB,SAAqB,GAAE,YAAY,IAAE,IAAI,GAAG,KAAE,IAAE,GAAE,GAAE,IAAI,CAAC,IAAW,GAAE,KAAK,SAAhB,UAA+B,GAAE,KAAK,SAAhB,UAA+B,GAAE,KAAK,SAAhB,UAAgC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,WAAiC,GAAE,KAAK,SAAjB,UAAsB,GAAE,YAAY,IAAE,IAAI,GAAG,IAAE,GAAE,IAAI,CAAC,IAAE,QAAQ,MAAM,6BAA6B,IAAG,KAAG,QAAQ,MAAM,YAAY,kCAAiC;AAAA,IAAE;AAAA;AAAA,EAAE,kBAAkB,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,CAAC,GAAE,GAAE,CAAC;AAAA,IAAE,WAAU,MAAK,GAAE,KAAK;AAAA,MAAW,IAAsB,GAAE,SAArB,kBAA0B;AAAA,QAAC,IAAG,GAAE,MAAM,SAAO,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,iBAAiB,GAAE,MAAM,EAAE;AAAA,UAAE,GAAE,KAAG,cAAa,KAAG,GAAE,QAAM,SAAS,GAAE,MAAM,EAAE;AAAA,QAAE;AAAA,QAAC,IAAG,GAAE,MAAM,SAAO,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,iBAAiB,GAAE,MAAM,EAAE;AAAA,UAAE,GAAE,KAAG,cAAa,KAAG,GAAE,QAAM,SAAS,GAAE,MAAM,EAAE;AAAA,QAAE;AAAA,QAAC,IAAG,GAAE,MAAM,SAAO,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,iBAAiB,GAAE,MAAM,EAAE;AAAA,UAAE,GAAE,KAAG,cAAa,KAAG,GAAE,QAAM,SAAS,GAAE,MAAM,EAAE;AAAA,QAAE;AAAA,MAAC;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,OAAO,GAAE,KAAE,KAAK,YAAY,KAAK;AAAA,IAAE,GAAE,YAAY,mBAAkB,IAAI,GAAG,IAAE,EAAC,CAAC;AAAA,IAAE,MAAM,KAAE,GAAE,IAAG,KAAE,GAAE,IAAG,KAAE,GAAE;AAAA,IAAG,SAAQ,KAAE,GAAE,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,MAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,QAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE,IAAE,EAAE,IAAE;AAAA,UAAC,MAAM,KAAE,CAAC,IAAE,IAAE,EAAC,GAAE,KAAE,CAAC,KAAE,GAAE,KAAG,GAAE,IAAG,KAAE,GAAE,KAAG,GAAE,IAAG,KAAE,GAAE,KAAG,GAAE,EAAE;AAAA,UAAE,GAAE,YAAY,wBAAuB,IAAI,GAAG,IAAE,EAAC,CAAC,GAAE,GAAE,YAAY,yBAAwB,IAAI,GAAG,IAAE,EAAC,CAAC,GAAE,GAAE,YAAY,2BAA0B,IAAI,GAAG,IAAE,EAAC,CAAC,GAAE,KAAK,cAAc,IAAE,EAAC;AAAA,QAAE;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,WAAU,MAAK,GAAE,KAAK;AAAA,MAAK,WAAU,MAAK,GAAE;AAAA,QAAW,IAAe,GAAE,SAAd,WAAmB;AAAA,UAAC,MAAM,KAAE,IAAI,GAAE,SAAQ,KAAE,GAAE,YAAY,EAAC;AAAA,UAAc,OAAZ,aAAe,GAAE,UAAU,IAAI,GAAE,MAAK,EAAC;AAAA,QAAE;AAAA,IAAC,KAAK,gBAAgB,GAAE,KAAK,MAAK,EAAC;AAAA;AAAA,EAAG,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,MAAK,cAAa;AAAA,MAAI,KAAE,GAAE;AAAA,IAAM,OAAO,cAAa,KAAG,GAAE,QAAM,QAAQ,MAAM,yBAAwB,IAAE,QAAO,GAAE,IAAI,GAAE;AAAA;AAAA,EAAM,eAAe,CAAC,IAAE,IAAE;AAAA,IAAC,WAAU,MAAK,IAAE;AAAA,MAAC,IAAG,cAAa,OAAM;AAAA,QAAC,MAAM,KAAE,GAAE,MAAM,GAAE,KAAE,KAAK,gBAAgB,IAAE,EAAC;AAAA,QAAE,IAAG;AAAA,UAAE,OAAO;AAAA,QAAE;AAAA,MAAQ;AAAA,MAAC,MAAM,KAAE,KAAK,cAAc,IAAE,EAAC;AAAA,MAAE,IAAG;AAAA,QAAE,OAAO;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,MAAM;AAAA,IAAE,GAAE,sBAAoB,GAAE;AAAA,IAAK,MAAM,KAAE,GAAE,YAAY,GAAE,IAAI;AAAA,IAAE,IAAG,IAAE;AAAA,MAAC,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,KAAK,QAAO,EAAE,IAAE;AAAA,QAAC,MAAM,KAAE,GAAE,KAAK,KAAK,KAAG,KAAE,KAAK,eAAe,GAAE,KAAK,KAAG,EAAC;AAAA,QAAE,GAAE,YAAY,GAAE,MAAK,IAAE,EAAC;AAAA,MAAE;AAAA,MAAC,KAAK,gBAAgB,GAAE,KAAK,MAAK,EAAC;AAAA,IAAE,EAAM,SAAG,GAAE;AAAA,MAAU,KAAK,qBAAqB,IAAE,EAAC;AAAA,IAAO;AAAA,MAAC,KAAK,YAAY,GAAE,IAAI,KAAG,KAAK,YAAY,IAAE,EAAC;AAAA;AAAA;AAAA,EAAI,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,gBAAgB,GAAE,UAAS,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,IAAE,KAAS,GAAE,aAAT,OAAkB,GAAE,iBAAiB,KAAG,GAAE,MAAM,UAAQ,QAAQ,MAAM,YAAY,4BAA2B,GAAE,MAAM,IAAS,GAAE,aAAT,OAAkB,GAAE,iBAAiB,KAAG,GAAE,MAAM,UAAQ,QAAQ,MAAM,YAAY,4BAA2B,GAAE,MAAM,IAAE,QAAQ,MAAM,8BAA8B,GAAE,kBAAkB,GAAE,MAAM,IAAE,QAAQ,MAAM,YAAY,sBAAqB,GAAE,MAAM;AAAA;AAAA,EAAG,gBAAgB,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,gBAAgB,IAAE,EAAC,GAAE,KAAE,GAAE,YAAY,EAAC;AAAA,MAAE,OAAc,OAAP,QAAU,QAAQ,MAAM,YAAY,sBAAqB,GAAE,MAAM,GAAE,QAAM,GAAE,MAAM,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,IAAS,GAAE,aAAR,KAAiB;AAAA,QAAC,MAAM,KAAE,KAAK,iBAAiB,GAAE,OAAM,EAAC;AAAA,QAAE,OAAO,cAAa,KAAG,GAAE,UAAU,WAAW,MAAK,GAAE,SAAQ,EAAC,KAAG,QAAQ,MAAM,YAAY,GAAE,gCAAgC,GAAE,MAAM,GAAE;AAAA,MAAK;AAAA,MAAC,IAAS,GAAE,aAAR,KAAiB;AAAA,QAAC,MAAM,KAAE,KAAK,iBAAiB,GAAE,OAAM,EAAC;AAAA,QAAE,OAAO,IAAI,GAAG,EAAC;AAAA,MAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE,MAAK,KAAE,SAAQ,KAAE;AAAA,IAAK,IAAG,GAAE,oBAAoB,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,iBAAiB,GAAE,UAAS,EAAC,GAAE,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAE,KAAE,GAAE;AAAA,MAAS,IAAS,OAAN,KAAQ;AAAA,QAAC,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa,IAAG;AAAA,UAAC,IAAG,cAAa,MAAI,cAAa,MAAI,cAAa,MAAI,GAAE,KAAK,WAAS,GAAE,KAAK;AAAA,YAAO,OAAO,KAAK,GAAE,KAAK,IAAI,GAAE,IAAI;AAAA,UAAE,QAAQ,MAAM,4BAA4B,GAAE,MAAM;AAAA,QAAE,EAAM,SAAG,cAAa,MAAI,cAAa,MAAI,GAAE,OAAO,aAAW,GAAE,UAAQ,GAAE,OAAO,aAAW,GAAE;AAAA,UAAO,OAAO,MAAK,GAAE,OAAO,aAAW,KAAG,IAAE,IAAI,YAAY,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,OAAK,CAAC,EAAE,IAAI,IAAI,YAAY,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,OAAK,CAAC,CAAC,IAAE,IAAI,WAAW,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,IAAI,EAAE,IAAI,IAAI,WAAW,GAAE,QAAO,GAAE,QAAO,GAAE,SAAS,IAAI,CAAC;AAAA,QAAG,OAAO,QAAQ,MAAM,4BAA4B,GAAE,MAAM,GAAE;AAAA,MAAI;AAAA,MAAC,IAAU,OAAP;AAAA,QAAS,OAAO,cAAa,MAAI,cAAa,MAAI,cAAa,KAAG,cAAa,MAAI,cAAa,MAAI,cAAa,KAAG,KAAK,GAAE,KAAK,IAAI,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,GAAE,KAAK,MAAG,EAAE,CAAC,IAAE,KAAK,QAAQ,MAAM,6BAA6B,GAAE,MAAM,IAAE,KAAK,QAAQ,MAAM,4BAA4B,GAAE,MAAM;AAAA,MAAE,IAAU,OAAP;AAAA,QAAS,QAAQ,cAAa,MAAI,cAAa,MAAI,cAAa,QAAM,cAAa,MAAI,cAAa,MAAI,cAAa,MAAI,KAAK,GAAE,KAAK,IAAI,GAAE,KAAK,IAAK,CAAC,IAAE,OAAI,GAAE,KAAK,MAAG,EAAE,CAAC,IAAE,KAAK,QAAQ,MAAM,4BAA4B,GAAE,MAAM;AAAA,IAAC;AAAA,IAAC,IAAG,GAAE,oBAAoB,IAAG;AAAA,MAAC,IAAS,GAAE,SAAS,aAAjB,KAA0B;AAAA,QAAC,KAAE,KAAK,gBAAgB,GAAE,SAAS,OAAM,EAAC;AAAA,QAAE,MAAM,KAAE,GAAE,YAAY,EAAC;AAAA,QAAE,IAAG,EAAE,MAAG,GAAE,iBAAiB;AAAA,UAAI,OAAO,KAAK,QAAQ,MAAM,YAAY,6BAA4B,GAAE,MAAM;AAAA,QAAE,KAAE,GAAE,MAAM;AAAA,QAAU,IAAI,KAAE,GAAE,SAAS;AAAA,QAAQ,IAAG,CAAC,IAAE;AAAA,UAAC,IAAI,KAAE,GAAE,SAAS;AAAA,UAAM,MAAK,cAAa,MAAI;AAAA,YAAC,IAAG,GAAE,SAAQ;AAAA,cAAC,KAAE,GAAE;AAAA,cAAQ;AAAA,YAAK;AAAA,YAAC,KAAE,GAAE;AAAA,UAAM;AAAA,QAAC;AAAA,QAAC,OAAI,KAAE,GAAE,WAAW,MAAK,IAAE,EAAC;AAAA,MAAG;AAAA,IAAC,EAAM;AAAA,MAAC,KAAE,GAAE,SAAS,SAAQ,KAAE,KAAK,gBAAgB,GAAE,UAAS,EAAC;AAAA,MAAE,MAAM,KAAE,GAAE,YAAY,EAAC;AAAA,MAAE,IAAU,OAAP;AAAA,QAAS,OAAO,KAAK,QAAQ,MAAM,YAAY,sBAAqB,GAAE,MAAM;AAAA,MAAE,KAAE,GAAE;AAAA;AAAA,IAAO,IAAG,cAAa,OAAK,KAAE,GAAE,YAAkB,OAAP;AAAA,MAAS,OAAO,KAAK,QAAQ,MAAM,YAAY,sBAAqB,GAAE,MAAM;AAAA,IAAE,MAAM,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAE,KAAE,GAAE;AAAA,IAAS,IAAS,OAAN;AAAA,MAAQ,IAAG,cAAa;AAAA,QAAG,GAAE,aAAa,MAAK,IAAE,IAAE,EAAC;AAAA,MAAO,SAAG,IAAE;AAAA,QAAC,IAAG,EAAE,cAAa,MAAI,cAAa;AAAA,UAAI,OAAO,KAAK,QAAQ,MAAM,YAAY,sCAAqC,GAAE,MAAM;AAAA,QAAE,IAAG,cAAa,IAAG;AAAA,UAAC,MAAM,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,EAAE;AAAA,UAAM,IAAG,cAAa,IAAG;AAAA,YAAC,IAAG,EAAE,cAAa;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,YAAE,GAAE,KAAK,MAAG,GAAE;AAAA,UAAM,EAAM;AAAA,YAAC,IAAG,EAAE,cAAa;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,YAAE;AAAA,cAAC,MAAM,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,EAAE;AAAA,cAAM,IAAG,KAAE;AAAA,gBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,cAAE,IAAG,EAAE,cAAa;AAAA,gBAAI,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,cAAE;AAAA,gBAAC,MAAM,KAAE,GAAE,SAAS,YAAY;AAAA,gBAAE,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM,SAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,WAAc;AAAA,kBAAC,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA,gBAAG,EAAM;AAAA,kBAAC,IAAc,OAAX,YAA0B,OAAZ,aAA2B,OAAZ;AAAA,oBAAc,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,IAAG,EAAE,KAAE,KAAO,GAAE,KAAK,WAAX;AAAA,oBAAmB,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,kBAAE,GAAE,KAAK,IAAE,MAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK,IAAG,GAAE,KAAK,IAAE,KAAE,KAAG,GAAE,KAAK;AAAA;AAAA,cAAI;AAAA,YAAC;AAAA;AAAA,QAAE,EAAM,SAAG,cAAa,IAAG;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAM,IAAG,EAAE,cAAa;AAAA,YAAI,OAAO,KAAK,QAAQ,MAAM,yBAAyB,gBAAe,4BAA2B,GAAE,MAAM;AAAA,UAAE,IAAG,cAAa,IAAG;AAAA,YAAC,IAAG,GAAE,SAAO;AAAA,cAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,YAAE,IAAS,OAAN;AAAA,cAAQ,GAAE,KAAK,KAAG,GAAE;AAAA,YAAW,SAAS,OAAN,KAAQ;AAAA,cAAC,IAAG,GAAE,KAAK,SAAO;AAAA,gBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,cAAE,GAAE,KAAK,KAAG,GAAE;AAAA,YAAM,EAAM,SAAS,OAAN,KAAQ;AAAA,cAAC,IAAG,GAAE,KAAK,SAAO;AAAA,gBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,cAAE,GAAE,KAAK,KAAG,GAAE;AAAA,YAAM,EAAM,SAAS,OAAN,KAAQ;AAAA,cAAC,IAAG,GAAE,KAAK,SAAO;AAAA,gBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,cAAE,GAAE,KAAK,KAAG,GAAE;AAAA,YAAM;AAAA,UAAC,EAAM;AAAA,YAAC,IAAG,EAAE,cAAa;AAAA,cAAI,OAAO,KAAK,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,YAAE,IAAG,GAAE,WAAS,GAAE,KAAK;AAAA,cAAO,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,YAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE,IAAE;AAAA,cAAC,MAAM,KAAE,GAAE;AAAA,cAAG,IAAS,OAAN,OAAe,OAAN;AAAA,gBAAQ,GAAE,KAAK,KAAG,GAAE,KAAK;AAAA,cAAQ,SAAS,OAAN,OAAe,OAAN,KAAQ;AAAA,gBAAC,IAAG,GAAE,KAAK,SAAO;AAAA,kBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,gBAAE,GAAE,KAAK,KAAG,GAAE,KAAK;AAAA,cAAG,EAAM,SAAS,OAAN,OAAe,OAAN,KAAQ;AAAA,gBAAC,IAAG,GAAE,KAAK,SAAO;AAAA,kBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,gBAAE,GAAE,KAAK,KAAG,GAAE,KAAK;AAAA,cAAG,EAAM;AAAA,gBAAC,IAAS,OAAN,OAAe,OAAN;AAAA,kBAAQ,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,gBAAE,IAAG,GAAE,KAAK,SAAO;AAAA,kBAAE,OAAO,KAAK,QAAQ,MAAM,yBAAyB,mBAAkB,YAAW,GAAE,MAAM;AAAA,gBAAE,GAAE,KAAK,KAAG,GAAE,KAAK;AAAA;AAAA,YAAI;AAAA;AAAA,QAAE;AAAA,MAAC,EAAM;AAAA,sBAAa,MAAI,cAAa,KAAG,GAAE,QAAM,GAAE,QAAM,cAAa,MAAI,cAAa,MAAI,cAAa,MAAI,cAAa,KAAG,GAAE,KAAK,IAAI,GAAE,IAAI,IAAE,QAAQ,MAAM,yBAAyB,YAAW,GAAE,MAAM;AAAA,IAAO;AAAA,MAAC,MAAM,KAAE,GAAE,WAAW,MAAK,IAAE,EAAC;AAAA,MAAE,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE;AAAA,QAAM,IAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI;AAAA,QAAO,SAAW,OAAR;AAAA,UAAU,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,QAAK;AAAA,QAAO,SAAW,OAAR;AAAA,UAAU,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,QAAK;AAAA,QAAO;AAAA,kBAAQ,MAAM,oBAAoB,YAAW,GAAE,MAAM;AAAA,MAAE,EAAM,SAAG,cAAa,MAAI,cAAa,IAAG;AAAA,QAAC,MAAM,KAAE,GAAE,MAAK,KAAE,GAAE;AAAA,QAAK,IAAG,GAAE,WAAS,GAAE;AAAA,UAAO,OAAO,KAAK,QAAQ,MAAM,gCAAgC,GAAE,MAAM;AAAA,QAAE,IAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAU,OAAP;AAAA,UAAS,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,OAAI,GAAE;AAAA,QAAQ,SAAW,OAAR;AAAA,UAAU,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,QAAK,GAAE;AAAA,QAAQ,SAAW,OAAR;AAAA,UAAU,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE;AAAA,YAAE,GAAE,QAAK,GAAE;AAAA,QAAQ;AAAA,kBAAQ,MAAM,oBAAoB,YAAW,GAAE,MAAM;AAAA,MAAE,EAAM;AAAA,QAAC,IAAG,EAAE,cAAa,MAAI,cAAa;AAAA,UAAI,OAAO,KAAK,QAAQ,MAAM,oBAAoB,GAAE,2BAA2B,GAAE,MAAM;AAAA,QAAS,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAa,OAAP,OAAS,GAAE,SAAO,GAAE,QAAc,OAAR,QAAU,GAAE,UAAQ,GAAE,QAAc,OAAR,QAAU,GAAE,UAAQ,GAAE,QAAM,QAAQ,MAAM,oBAAoB,YAAW,GAAE,MAAM;AAAA;AAAA,MAAG,cAAa,MAAI,GAAE,aAAa,MAAK,IAAE,IAAE,EAAC;AAAA;AAAA;AAAA,EAAI,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,IAAI,GAAG,EAAC;AAAA,IAAE,GAAE,UAAU,IAAI,GAAE,MAAK,EAAC;AAAA;AAAA,EAAG,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAY,GAAE,UAAT,SAAiB,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,IAAG,GAAE,eAAe,GAAE,MAAK,IAAE,EAAC;AAAA;AAAA,EAAG,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAK,IAAU,GAAE,UAAT,MAAe;AAAA,MAAC,IAAG,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAS,OAAP;AAAA,QAAS,OAAO,KAAK,QAAQ,MAAM,8BAA8B,GAAE,cAAc,GAAE,MAAM;AAAA,MAAE,GAAE,iBAAiB,OAAK,KAAE,GAAE,MAAM;AAAA,IAAG,EAAM;AAAA,MAAC,MAAM,KAAE,GAAE,KAAK;AAAA,MAAK,IAAW,OAAR,SAAmB,OAAR,SAAmB,OAAR,SAAoB,OAAT,UAAoB,OAAR,SAAoB,OAAT,UAAqB,OAAT,UAAqB,OAAT,UAAsB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAwB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAAyB,OAAV,SAAY;AAAA,QAAC,MAAM,KAAE,IAAI,GAAG,GAAE,MAAK,CAAC,CAAC;AAAA,QAAE,KAAE,KAAK,YAAY,IAAE,EAAC;AAAA,MAAE;AAAA;AAAA,IAAE,GAAE,eAAe,GAAE,MAAK,IAAE,EAAC;AAAA;AAAA,EAAG,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAK,IAAU,GAAE,UAAT,MAAe;AAAA,MAAC,IAAG,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAS,OAAP;AAAA,QAAS,OAAO,KAAK,QAAQ,MAAM,8BAA8B,GAAE,cAAc,GAAE,MAAM;AAAA,MAAE,GAAE,iBAAiB,OAAK,KAAE,GAAE,MAAM;AAAA,IAAG,EAAM;AAAA,MAAC,IAAU,GAAE,SAAT;AAAA,QAAc,OAAO,KAAK,QAAQ,MAAM,YAAY,GAAE,0BAA0B,GAAE,MAAM;AAAA,MAAE,MAAM,KAAE,GAAE,KAAK;AAAA,MAAK,IAAW,OAAR,SAAmB,OAAR,SAAmB,OAAR,SAAoB,OAAT,UAAoB,OAAR,SAAoB,OAAT,UAAqB,OAAT,UAAqB,OAAT,UAAsB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAwB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAAe,GAAE,gBAAgB,MAAI,GAAE,gBAAgB,MAAI,GAAE,gBAAgB,IAAG;AAAA,QAAC,MAAM,KAAE,IAAI,GAAG,GAAE,MAAK,CAAC,CAAC;AAAA,QAAE,KAAE,KAAK,YAAY,IAAE,EAAC;AAAA,MAAE;AAAA;AAAA,IAAE,GAAE,eAAe,GAAE,MAAK,IAAE,EAAC;AAAA;AAAA,EAAG,OAAO,CAAC,IAAE,IAAE;AAAA,IAAC,KAAE,GAAE,MAAM;AAAA,IAAE,MAAM,KAAE,KAAK,eAAe,GAAE,WAAU,EAAC;AAAA,IAAE,IAAG,EAAE,cAAa;AAAA,MAAI,OAAO,QAAQ,MAAM,8BAA8B,GAAE,MAAM,GAAE;AAAA,IAAK,IAAI,KAAE;AAAA,IAAK,WAAU,MAAK,GAAE;AAAA,MAAM,IAAG,cAAa;AAAA,QAAG,WAAU,MAAK,GAAE,WAAU;AAAA,UAAC,IAAG,cAAa,IAAG;AAAA,YAAC,KAAE;AAAA,YAAE;AAAA,UAAQ;AAAA,UAAC,MAAM,KAAE,KAAK,eAAe,IAAE,EAAC;AAAA,UAAE,IAAG,EAAE,cAAa;AAAA,YAAI,OAAO,QAAQ,MAAM,+BAA+B,GAAE,MAAM,GAAE;AAAA,UAAK,IAAG,GAAE,UAAQ,GAAE;AAAA,YAAM,OAAO,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,QAAC;AAAA,MAAM;AAAA,sBAAa,OAAK,KAAE;AAAA,IAAG,OAAO,KAAE,KAAK,gBAAgB,GAAE,MAAK,EAAC,IAAE;AAAA;AAAA,EAAK,GAAG,CAAC,IAAE,IAAE;AAAA,IAAC,KAAE,GAAE,MAAM;AAAA,IAAE,MAAM,KAAE,KAAK,eAAe,GAAE,WAAU,EAAC;AAAA,IAAE,IAAG,EAAE,cAAa;AAAA,MAAI,OAAO,QAAQ,MAAM,8BAA8B,GAAE,MAAM,GAAE;AAAA,IAAK,IAAG,GAAE;AAAA,MAAM,OAAO,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,IAAE,WAAU,MAAK,GAAE,QAAO;AAAA,MAAC,MAAM,KAAE,KAAK,eAAe,GAAE,WAAU,EAAC;AAAA,MAAE,IAAG,EAAE,cAAa;AAAA,QAAI,OAAO,QAAQ,MAAM,8BAA8B,GAAE,MAAM,GAAE;AAAA,MAAK,IAAG,GAAE;AAAA,QAAM,OAAO,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO,GAAE,OAAK,KAAK,gBAAgB,GAAE,MAAK,EAAC,IAAE;AAAA;AAAA,EAAK,eAAe,CAAC,IAAE;AAAA,IAAC,OAAO,cAAa,KAAG,GAAE,SAAO,QAAQ,MAAM,0BAAyB,EAAC,GAAE;AAAA;AAAA,EAAG,IAAI,CAAC,IAAE,IAAE;AAAA,IAAC,KAAI,KAAE,GAAE,MAAM,GAAE,KAAK,cAAc,GAAE,MAAK,EAAC,EAAE,KAAK,gBAAgB,KAAK,eAAe,GAAE,WAAU,EAAC,CAAC,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,MAAE,IAAG,OAAI,GAAG;AAAA,QAAU;AAAA,MAAM,IAAU,OAAP,QAAU,OAAI,GAAG;AAAA,QAAa,OAAO;AAAA,MAAE,KAAK,cAAc,GAAE,WAAU,EAAC;AAAA,IAAE;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,KAAK,CAAC,IAAE,IAAE;AAAA,IAAC,KAAI,KAAE,GAAE,MAAM,MAAI;AAAA,MAAC,MAAM,KAAE,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,MAAE,IAAG,OAAI,GAAG;AAAA,QAAU;AAAA,MAAM,IAAG,OAAI,GAAG,cAAa;AAAA,QAAC,IAAG,GAAE,YAAW;AAAA,UAAC,IAAG,KAAK,gBAAgB,GAAE,WAAW,MAAK,EAAC,MAAI,GAAG;AAAA,YAAU;AAAA,QAAK;AAAA,MAAC,EAAM,SAAU,OAAP;AAAA,QAAS,OAAO;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,KAAI,KAAE,GAAE,MAAM,EAAE,KAAK,gBAAgB,KAAK,eAAe,GAAE,WAAU,EAAC,CAAC,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,gBAAgB,GAAE,MAAK,EAAC;AAAA,MAAE,IAAG,OAAI,GAAG;AAAA,QAAU;AAAA,MAAM,IAAG,OAAI,GAAG,gBAAqB,OAAP;AAAA,QAAS,OAAO;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAE,KAAE,GAAE;AAAA,IAAK,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAG,GAAE,OAAM,GAAE,SAAS,MAAK,GAAE,IAAI;AAAA,MAAE,OAAO,IAAI,GAAG,IAAE,KAAK,YAAY,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,GAAE,SAAS,YAAY;AAAA,MAAE,IAAI,KAAE;AAAA,MAAG,IAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAY;AAAA,QAAC,IAAG,CAAC,GAAE,SAAS,GAAG;AAAA,UAAE,OAAO,QAAQ,MAAM,uBAAuB,YAAW,GAAE,MAAM,GAAE;AAAA,QAAK,KAAE;AAAA;AAAA,MAAO,MAAM,KAAE,GAAE,YAAY;AAAA,MAAE,IAAI,KAAE;AAAA,MAAG,IAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAW,SAAG,GAAE,SAAS,GAAG;AAAA,QAAE,KAAE;AAAA,MAAY;AAAA,QAAC,IAAG,CAAC,GAAE,SAAS,GAAG;AAAA,UAAE,OAAO,QAAQ,MAAM,uBAAuB,YAAW,GAAE,MAAM,GAAE;AAAA,QAAK,KAAE;AAAA;AAAA,MAAO,MAAM,KAAE,QAAQ,CAAC,IAAE,IAAE,IAAE;AAAA,QAAC,IAAG,OAAI;AAAA,UAAE,OAAO;AAAA,QAAE,MAAM,KAAE,IAAI,MAAM,GAAE,MAAM;AAAA,QAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO;AAAA,UAAI,GAAE,MAAG,GAAG,GAAE,KAAG,IAAE,EAAC;AAAA,QAAE,OAAO;AAAA,QAAG,MAAM,KAAK,GAAE,IAAI,GAAE,IAAE,EAAC;AAAA,MAAE,OAAO,IAAI,GAAG,IAAE,KAAK,YAAY,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,OAAO,QAAQ,MAAM,qBAAqB,GAAE,SAAS,cAAc,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,iBAAiB,GAAE,IAAI,EAAE,MAAM,EAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,IAAG,cAAa,IAAG;AAAA,MAAC,IAAU,GAAE,SAAT;AAAA,QAAc,OAAO,GAAG;AAAA,MAAK,QAAO,GAAE,KAAK,YAAY;AAAA,aAAQ;AAAA,aAAY;AAAA,aAAW;AAAA,aAAW;AAAA,aAAW;AAAA,UAAM,OAAO,KAAK,sBAAsB,IAAE,EAAC;AAAA,aAAO;AAAA,aAAY;AAAA,aAAY;AAAA,aAAY;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,aAAa;AAAA,UAAQ,OAAO,KAAK,oBAAoB,IAAE,EAAC;AAAA,aAAO;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,aAAe;AAAA,aAAc;AAAA,aAAe;AAAA,UAAU,OAAO,KAAK,uBAAuB,IAAE,EAAC;AAAA;AAAA,IAAE;AAAA,IAAC,MAAM,KAAE,cAAa,KAAG,GAAE,KAAK,OAAK,GAAE,MAAK,KAAE,cAAa,KAAG,KAAK,YAAY,GAAE,IAAI,IAAE,KAAK,YAAY,GAAE,IAAI;AAAA,IAAE,IAAU,OAAP;AAAA,MAAS,OAAO,QAAQ,MAAM,gBAAgB,YAAW,GAAE,MAAM,GAAE;AAAA,IAAK,IAAO,GAAE,SAAN;AAAA,MAAW,OAAO;AAAA,IAAK,MAAM,KAAE,IAAI,GAAG,IAAI,YAAY,GAAE,IAAI,GAAE,IAAE,CAAC;AAAA,IAAE,IAAG,cAAa,GAAE;AAAA,MAAC,IAAG,GAAE;AAAA,QAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,QAAO,EAAE,IAAE;AAAA,UAAC,MAAM,KAAE,GAAE,QAAQ,KAAG,KAAE,GAAE,KAAK,KAAG,KAAE,KAAK,eAAe,IAAE,EAAC;AAAA,UAAE,GAAE,QAAQ,MAAK,IAAE,GAAE,MAAK,GAAE,QAAO,EAAC;AAAA,QAAE;AAAA,IAAC,EAAM,SAAG,cAAa,GAAE;AAAA,MAAC,IAAI,KAAE;AAAA,MAAE,IAAG,GAAE;AAAA,QAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,QAAO,EAAE,IAAE;AAAA,UAAC,MAAM,KAAE,GAAE,KAAK,KAAG,KAAE,KAAK,eAAe,IAAE,EAAC;AAAA,UAAS,GAAE,WAAT,WAAmC,KAAE,GAAE,cAAZ,QAAmC,OAAZ,YAAc,YAAU,GAAE,UAA1D,QAAgE,GAAE,SAAO,KAAK,YAAY,KAAK,IAAE,GAAE,SAAO,GAAE,WAAU,GAAE,QAAQ,MAAK,IAAE,GAAE,QAAO,IAAE,EAAC,GAAE,MAAG,GAAE;AAAA,QAAO;AAAA,IAAC,EAAM;AAAA,cAAQ,MAAM,iBAAiB,aAAY,GAAE,MAAM;AAAA,IAAE,OAAO,cAAa,KAAG,GAAE,WAAW,MAAK,GAAE,SAAQ,EAAC,IAAE;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,GAAE,IAAI,GAAE,KAAE,GAAE;AAAA,IAAK,IAAW,OAAR,SAAmB,OAAR,SAAmB,OAAR,SAAmB,OAAR,SAAmB,OAAR,SAAoB,OAAT,QAAW;AAAA,MAAC,OAAO,IAAI,GAAG,GAAE,aAAY,EAAC;AAAA,IAAC;AAAA,IAAC,OAAgB,OAAT,UAAqB,OAAT,UAAqB,OAAT,UAAsB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,WAAuB,OAAV,UAAY,KAAK,oBAAoB,IAAE,EAAC,IAAa,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAA0B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,aAA2B,OAAZ,YAAc,KAAK,uBAAuB,IAAE,EAAC,IAAE,GAAE;AAAA;AAAA,EAAM,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,GAAE,iBAAiB,GAAE,IAAI;AAAA,IAAE,OAAc,OAAP,OAAS,KAAE,GAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA;AAAA,EAAE,kBAAkB,CAAC,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE;AAAA,IAAG,IAAW,GAAE,SAAV;AAAA,MAAe,OAAO;AAAA,IAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE,IAAE;AAAA,MAAC,MAAM,KAAE,GAAG,UAAU,IAAI,GAAE,IAAI;AAAA,MAAE,GAAG,UAAU,IAAI,GAAE,IAAG,IAAI,IAAE,OAAI,KAAE,GAAE;AAAA,IAAI;AAAA,IAAC,OAAe,GAAE,SAAV,QAAe,KAAK,YAAY,KAAK,IAAE;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC;AAAA,IAAE,IAAS,GAAE,aAAR;AAAA,MAAiB,OAAO,IAAI,GAAG,EAAC;AAAA,IAAE,IAAS,GAAE,aAAR;AAAA,MAAiB,OAAO,cAAa,KAAG,GAAE,UAAU,WAAW,MAAK,GAAE,SAAQ,EAAC,KAAG,QAAQ,MAAM,6BAA6B,GAAE,MAAM,GAAE;AAAA,IAAM,MAAM,KAAE,cAAa,KAAG,GAAE,QAAM,cAAa,KAAG,MAAM,KAAK,GAAE,IAAI,IAAE;AAAA,IAAK,QAAO,GAAE;AAAA,WAAe,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,CAAC,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,CAAC,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,CAAC,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,CAAC,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,GAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,CAAC,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,CAAC,IAAE,EAAC;AAAA,MAAC;AAAA;AAAA,IAAE,OAAO,QAAQ,MAAM,0BAA0B,GAAE,kBAAkB,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAe,GAAE,MAAK,EAAC,GAAE,KAAE,KAAK,eAAe,GAAE,OAAM,EAAC,GAAE,KAAE,cAAa,KAAG,GAAE,QAAM,cAAa,MAAI,cAAa,KAAG,MAAM,KAAK,GAAE,IAAI,IAAE,MAAK,KAAE,cAAa,KAAG,GAAE,QAAM,cAAa,MAAI,cAAa,KAAG,MAAM,KAAK,GAAE,IAAI,IAAE;AAAA,IAAK,QAAO,GAAE;AAAA,WAAe,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,YAAC,MAAM,KAAE,QAAQ,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,cAAC,IAAe,GAAG,GAAE,UAAjB,aAAoC,GAAG,GAAE,UAAjB;AAAA,gBAAuB,OAAO;AAAA,cAAK,MAAM,KAAE,GAAG,GAAE,MAAM,IAAG,KAAE,GAAG,GAAE,MAAM,IAAG,KAAE,GAAG,GAAE,MAAM;AAAA,cAAG,IAAG,OAAI,GAAG,GAAE,MAAM;AAAA,gBAAG,OAAO;AAAA,cAAK,MAAM,KAAE,IAAI,MAAM,KAAE,EAAC;AAAA,cAAE,SAAQ,KAAE,EAAE,KAAE,IAAE;AAAA,gBAAI,SAAQ,KAAE,EAAE,KAAE,IAAE,MAAI;AAAA,kBAAC,IAAI,KAAE;AAAA,kBAAE,SAAQ,KAAE,EAAE,KAAE,IAAE;AAAA,oBAAI,MAAG,GAAE,KAAE,KAAE,MAAG,GAAE,KAAE,KAAE;AAAA,kBAAG,GAAE,KAAE,KAAE,MAAG;AAAA,gBAAE;AAAA,cAAC,OAAO;AAAA,cAAG,IAAE,GAAE,UAAS,IAAE,GAAE,QAAQ;AAAA,YAAE,IAAU,OAAP;AAAA,cAAS,OAAO,QAAQ,MAAM,sCAAsC,GAAE,OAAO,GAAE;AAAA,YAAK,MAAM,KAAE,GAAG,GAAE,SAAS,MAAM,IAAG,KAAE,GAAG,GAAE,SAAS,MAAM,IAAG,KAAE,KAAK,YAAY,MAAM,MAAK,KAAI;AAAA,YAAE,OAAO,IAAI,GAAG,IAAE,EAAC;AAAA,UAAC;AAAA,UAAC,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,YAAC,MAAM,KAAE,QAAQ,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,cAAC,IAAe,GAAG,GAAE,UAAjB,aAAoC,GAAG,GAAE,UAAjB;AAAA,gBAAuB,OAAO;AAAA,cAAK,MAAM,KAAE,GAAG,GAAE,MAAM,IAAG,KAAE,GAAG,GAAE,MAAM;AAAA,cAAG,IAAG,OAAI,GAAE;AAAA,gBAAO,OAAO;AAAA,cAAK,MAAM,KAAE,IAAI,MAAM,EAAC;AAAA,cAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,MAAI;AAAA,gBAAC,IAAI,KAAE;AAAA,gBAAE,SAAQ,KAAE,EAAE,KAAE,IAAE;AAAA,kBAAI,MAAG,GAAE,KAAE,KAAE,MAAG,GAAE;AAAA,gBAAG,GAAE,MAAG;AAAA,cAAE;AAAA,cAAC,OAAO;AAAA,cAAG,IAAE,GAAE,UAAS,IAAE,GAAE,QAAQ;AAAA,YAAE,OAAc,OAAP,QAAU,QAAQ,MAAM,6CAA6C,GAAE,OAAO,GAAE,QAAM,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,UAAC;AAAA,UAAC,IAAG,cAAa,MAAI,cAAa,IAAG;AAAA,YAAC,MAAM,KAAE,QAAQ,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,cAAC,IAAe,GAAG,GAAE,UAAjB,aAAoC,GAAG,GAAE,UAAjB;AAAA,gBAAuB,OAAO;AAAA,cAAK,MAAM,KAAE,GAAG,GAAE,MAAM,IAAG,KAAE,GAAG,GAAE,MAAM;AAAA,cAAG,IAAG,OAAI,GAAE;AAAA,gBAAO,OAAO;AAAA,cAAK,MAAM,KAAE,CAAC;AAAA,cAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,MAAI;AAAA,gBAAC,IAAI,KAAE;AAAA,gBAAE,SAAQ,KAAE,EAAE,KAAE,IAAE;AAAA,kBAAI,MAAG,GAAE,MAAG,GAAE,KAAE,KAAE;AAAA,gBAAG,GAAE,MAAG;AAAA,cAAE;AAAA,cAAC,OAAO;AAAA,cAAG,IAAE,GAAE,UAAS,IAAE,GAAE,QAAQ;AAAA,YAAE,OAAc,OAAP,QAAU,QAAQ,MAAM,6CAA6C,GAAE,OAAO,GAAE,QAAM,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,UAAC;AAAA,UAAC;AAAA,YAAC,IAAG,GAAE,WAAS,GAAE;AAAA,cAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,YAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,YAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,UAAC;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,cAAa,KAAG,IAAI,GAAG,IAAE,GAAE,QAAQ,IAAE,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,cAAa,KAAG,IAAI,GAAG,IAAE,GAAE,QAAQ,IAAE,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,KAAI;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,KAAE,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,MAAK;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,MAAG,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM,MAAK;AAAA,QAAC,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,GAAG;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,EAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,MAAM,KAAE,IAAE,KAAE,IAAE,KAAE,KAAK,mBAAmB,CAAC,GAAE,UAAS,GAAE,QAAQ,CAAC;AAAA,QAAE,OAAO,IAAI,GAAG,MAAG,IAAE,EAAC;AAAA,MAAC;AAAA,WAAM;AAAA,QAAI,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,KAAE,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAI,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,KAAE,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,KAAE,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,OAAI,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,OAAI,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,OAAI,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,OAAI,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,OAAI,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,OAAI,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,MAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,MAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,MAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA,WAAO;AAAA,QAAK,IAAG,GAAG,EAAC,KAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE;AAAA,UAAE,IAAG,GAAE,WAAS,GAAE;AAAA,YAAO,OAAO,QAAQ,MAAM,gCAAgC,GAAE,OAAO,GAAE;AAAA,UAAK,MAAM,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,GAAE,MAAG,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,IAAG,GAAG,EAAC,GAAE;AAAA,UAAC,MAAM,KAAE,IAAE,KAAE,GAAE,IAAK,CAAC,IAAE,OAAI,MAAG,KAAE,IAAE,CAAE;AAAA,UAAE,OAAO,IAAI,GAAG,IAAE,GAAE,QAAQ;AAAA,QAAC;AAAA,QAAC,OAAO,IAAI,GAAG,MAAG,KAAE,IAAE,GAAE,KAAK,YAAY,MAAM,CAAC;AAAA;AAAA,IAAE,OAAO,QAAQ,MAAM,oBAAoB,GAAE,kBAAkB,GAAE,MAAM,GAAE;AAAA;AAAA,EAAK,SAAS,CAAC,IAAE,IAAE;AAAA,IAAC,IAAU,GAAE,sBAAT;AAAA,MAA2B,OAAO,GAAE;AAAA,IAAkB,MAAM,KAAE,GAAE,MAAM;AAAA,IAAE,GAAE,sBAAoB,GAAE;AAAA,IAAK,MAAM,KAAE,GAAE,YAAY,GAAE,IAAI;AAAA,IAAE,IAAG,CAAC,IAAE;AAAA,MAAC,IAAG,GAAE;AAAA,QAAU,OAAO,KAAK,qBAAqB,IAAE,EAAC;AAAA,MAAE,OAAO,KAAK,YAAY,GAAE,IAAI,IAAE,KAAK,YAAY,IAAE,EAAC,KAAG,QAAQ,MAAM,qBAAqB,GAAE,eAAe,GAAE,MAAM,GAAE;AAAA,IAAK;AAAA,IAAC,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,KAAK,QAAO,EAAE,IAAE;AAAA,MAAC,MAAM,KAAE,GAAE,KAAK,KAAK,KAAG,KAAE,KAAK,eAAe,GAAE,KAAK,KAAG,EAAC;AAAA,MAAE,GAAE,eAAe,GAAE,MAAK,IAAE,EAAC;AAAA,IAAE;AAAA,IAAC,OAAO,KAAK,gBAAgB,GAAE,KAAK,MAAK,EAAC;AAAA;AAAA,EAAE,oBAAoB,CAAC,IAAE,IAAE;AAAA,IAAC,QAAO,GAAE;AAAA,WAAW;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAS,OAAO,KAAK,SAAS,OAAO,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAqB,OAAO,KAAK,SAAS,mBAAmB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAU,OAAO,KAAK,SAAS,QAAQ,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAkB,OAAO,KAAK,SAAS,gBAAgB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAmB,OAAO,KAAK,SAAS,iBAAiB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAS,OAAO,KAAK,SAAS,OAAO,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAU,OAAO,KAAK,SAAS,QAAQ,IAAE,EAAC;AAAA,WAAO;AAAA,QAAU,OAAO,KAAK,SAAS,QAAQ,IAAE,EAAC;AAAA,WAAO;AAAA,QAAU,OAAO,KAAK,SAAS,QAAQ,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAM,OAAO,KAAK,SAAS,IAAI,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAQ,OAAO,KAAK,SAAS,MAAM,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAO,OAAO,KAAK,SAAS,KAAK,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAS,OAAO,KAAK,SAAS,OAAO,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAmB,OAAO,KAAK,SAAS,iBAAiB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAmB,OAAO,KAAK,SAAS,iBAAiB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAA4B,OAAO,KAAK,SAAS,0BAA0B,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAqB,OAAO,KAAK,SAAS,mBAAmB,IAAE,EAAC;AAAA,WAAO;AAAA,QAA+B,OAAO,KAAK,SAAS,6BAA6B,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAA4B,OAAO,KAAK,SAAS,0BAA0B,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAW,OAAO,KAAK,SAAS,SAAS,IAAE,EAAC;AAAA,WAAO;AAAA,QAAe,OAAO,KAAK,SAAS,aAAa,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAkB,OAAO,KAAK,SAAS,gBAAgB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAkB,OAAO,KAAK,SAAS,gBAAgB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAkB,OAAO,KAAK,SAAS,gBAAgB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAAmB,OAAO,KAAK,SAAS,iBAAiB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAiB,OAAO,KAAK,SAAS,eAAe,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAyB,OAAO,KAAK,SAAS,uBAAuB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAuB,OAAO,KAAK,SAAS,qBAAqB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAa,OAAO,KAAK,SAAS,WAAW,IAAE,EAAC;AAAA,WAAO;AAAA,QAAkB,OAAO,KAAK,SAAS,gBAAgB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAsB,OAAO,KAAK,SAAS,oBAAoB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAoB,OAAO,KAAK,SAAS,kBAAkB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAqB,OAAO,KAAK,SAAS,mBAAmB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAc,OAAO,KAAK,SAAS,YAAY,IAAE,EAAC;AAAA,WAAO;AAAA,QAAgB,OAAO,KAAK,SAAS,cAAc,IAAE,EAAC;AAAA,WAAO;AAAA,QAAmB,OAAO,KAAK,SAAS,iBAAiB,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA,WAAO;AAAA,QAAY,OAAO,KAAK,SAAS,UAAU,IAAE,EAAC;AAAA;AAAA,IAAE,MAAM,KAAE,GAAE,YAAY,GAAE,IAAI;AAAA,IAAE,IAAG,IAAE;AAAA,MAAC,MAAM,KAAE,GAAE,MAAM;AAAA,MAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,KAAK,KAAK,QAAO,EAAE,IAAE;AAAA,QAAC,MAAM,KAAE,GAAE,KAAK,KAAK,KAAG,KAAE,KAAK,eAAe,GAAE,KAAK,KAAG,EAAC;AAAA,QAAE,GAAE,YAAY,GAAE,MAAK,IAAE,EAAC;AAAA,MAAE;AAAA,MAAC,OAAO,KAAK,gBAAgB,GAAE,KAAK,MAAK,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,qBAAqB,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,CAAC,GAAE,QAAU,GAAE,KAAK,WAAX;AAAA,MAAkB,OAAO,IAAI,GAAG,GAAE,KAAK,YAAY,GAAE,IAAI,CAAC;AAAA,IAAE,MAAM,KAAE,KAAK,eAAe,GAAE,KAAK,IAAG,EAAC;AAAA,IAAE,OAAO,GAAE,WAAS,KAAK,YAAY,GAAE,IAAI,GAAE,GAAE,WAAW,MAAK,GAAE,SAAQ,EAAC,EAAE,MAAM;AAAA;AAAA,EAAE,mBAAmB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,GAAE,IAAI,GAAE,KAAE,GAAE,KAAK,YAAY,GAAE,KAAE,GAAG;AAAA,IAAG,IAAe,OAAZ;AAAA,MAAc,OAAO,QAAQ,MAAM,2BAA2B,YAAW,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,CAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,IAAG,GAAE,UAAS;AAAA,QAAC,MAAM,KAAE,GAAE;AAAA,QAAY,WAAU,MAAK;AAAA,UAAE,GAAE,KAAK,EAAC;AAAA,MAAE,EAAM;AAAA,WAAE,KAAK,GAAE,WAAW;AAAA,IAAO,SAAG,GAAE;AAAA,MAAK,WAAU,MAAK,GAAE,MAAK;AAAA,QAAC,MAAM,KAAE,KAAK,eAAe,IAAE,EAAC;AAAA,QAAE,IAAG,cAAa,IAAG;AAAA,UAAC,MAAM,KAAE,GAAE;AAAA,UAAK,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE,IAAE;AAAA,YAAC,IAAI,KAAE,GAAE;AAAA,YAAG,GAAE,KAAK,EAAC;AAAA,UAAE;AAAA,QAAC,EAAM,SAAG,cAAa,IAAG;AAAA,UAAC,IAAI,KAAE,GAAE;AAAA,UAAM,GAAE,KAAK,EAAC;AAAA,QAAE;AAAA,MAAC;AAAA,IAAC,IAAG,GAAE,gBAAgB,MAAW,GAAE,KAAK,WAAd,SAAuB,GAAE,KAAK,SAAO,GAAG,MAAS,GAAE,WAAN,GAAa;AAAA,MAAC,MAAM,KAAE,IAAI,MAAM,EAAC,EAAE,KAAK,CAAC;AAAA,MAAE,OAAO,IAAI,GAAG,IAAE,EAAC,EAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA,IAAC;AAAA,IAAC,IAAO,GAAE,WAAN;AAAA,MAAa,MAAK,GAAE,SAAO;AAAA,QAAG,GAAE,KAAK,GAAE,EAAE;AAAA,IAAE,IAAG,GAAE,SAAO;AAAA,MAAE,OAAO,QAAQ,MAAM,iCAAiC,GAAE,MAAM,GAAE;AAAA,IAAK,OAAO,IAAI,GAAG,GAAE,SAAO,KAAE,GAAE,MAAM,GAAE,EAAC,IAAE,IAAE,EAAC,EAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA;AAAA,EAAE,sBAAsB,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,YAAY,GAAE,IAAI,GAAE,KAAE,GAAE,KAAK,YAAY,GAAE,KAAE,GAAG;AAAA,IAAG,IAAe,OAAZ;AAAA,MAAc,OAAO,QAAQ,MAAM,8BAA8B,YAAW,GAAE,MAAM,GAAE;AAAA,IAAK,MAAM,KAAE,CAAC;AAAA,IAAE,IAAG,cAAa;AAAA,MAAG,IAAG,GAAE,UAAS;AAAA,QAAC,MAAM,KAAE,GAAE;AAAA,QAAY,WAAU,MAAK;AAAA,UAAE,GAAE,KAAK,EAAC;AAAA,MAAE,EAAM;AAAA,WAAE,KAAK,GAAE,WAAW;AAAA,IAAO,SAAG,GAAE;AAAA,MAAK,WAAU,MAAK,GAAE,MAAK;AAAA,QAAC,MAAM,KAAE,KAAK,eAAe,IAAE,EAAC;AAAA,QAAE,cAAa,KAAG,GAAE,KAAK,GAAG,GAAE,IAAI,IAAE,cAAa,KAAG,GAAE,KAAK,GAAE,KAAK,IAAE,cAAa,MAAI,GAAE,KAAK,GAAG,GAAE,IAAI;AAAA,MAAE;AAAA,IAAC,IAAG,cAAa,KAAU,GAAE,WAAT,SAAkB,GAAE,SAAO,KAAK,YAAY,KAAK,IAAO,GAAE,WAAN,GAAa;AAAA,MAAC,MAAM,KAAE,IAAI,MAAM,GAAE,EAAE,EAAE,KAAK,CAAC;AAAA,MAAE,OAAO,IAAI,GAAG,IAAE,EAAC,EAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO,GAAE,WAAS,GAAE,MAAI,QAAQ,MAAM,oCAAoC,GAAE,MAAM,GAAE,QAAM,IAAI,GAAG,IAAE,EAAC,EAAE,WAAW,MAAK,GAAE,SAAQ,EAAC;AAAA;AAAE;AAAC,GAAG,YAAU,IAAI,GAAG,IAAI,EAAE,SAAQ,IAAI,GAAE,IAAI,GAAE,GAAG,eAAa,IAAI,GAAG,IAAI,EAAE,YAAW,IAAI,GAAE,IAAI,GAAE,GAAG,YAAU,IAAI,IAAI,CAAC,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,CAAC,CAAC;AAAA;AAAE,MAAM,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,KAAK,YAAU,IAAI,KAAI,KAAK,UAAQ,IAAI,KAAI,KAAK,UAAQ,IAAI;AAAA;AAAK;AAAA;AAAC,MAAM,GAAE;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,KAAK,UAAQ,CAAC,GAAE,KAAK,WAAS,GAAE,KAAK,eAAa,GAAE,KAAK,uBAAqB,CAAC,GAAE,KAAK,eAAa,CAAC,GAAE,KAAK,WAAS,IAAI,IAAG,KAAK,QAAM,IAAI,IAAG,KAAK,oBAAkB;AAAA;AAAA,EAAG,KAAK,CAAC,IAAE;AAAA,IAAC,KAAK,YAAY,EAAC,GAAE,KAAK,qBAAqB,SAAO;AAAA,IAAE,MAAM,KAAE,CAAC;AAAA,IAAE,MAAK,CAAC,KAAK,SAAS,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,0BAA0B;AAAA,MAAE,IAAG,CAAC;AAAA,QAAE;AAAA,MAAM,GAAE,KAAK,EAAC;AAAA,IAAE;AAAA,IAAC,IAAG,KAAK,qBAAqB,SAAO,GAAE;AAAA,MAAC,WAAU,MAAK,KAAK,sBAAqB;AAAA,QAAC,QAAU,WAAJ,IAAkB,WAAJ,OAAE;AAAA,QAAY,IAAG,cAAa,IAAG;AAAA,UAAC,MAAM,KAAE,GAAE,MAAK,KAAE,KAAK,SAAS,UAAU,IAAI,EAAC;AAAA,UAAE,IAAG;AAAA,YAAE,IAAG;AAAA,cAAC,MAAM,KAAE,GAAE,cAAc,KAAK,KAAK;AAAA,cAAE,GAAE,QAAM;AAAA,cAAG,OAAM,IAAE;AAAA,QAAE;AAAA,MAAC;AAAA,MAAC,KAAK,qBAAqB,SAAO;AAAA,IAAE;AAAA,IAAC,IAAG,KAAK,oBAAkB;AAAA,MAAE,WAAU,MAAK;AAAA,QAAE,GAAE,OAAQ,QAAG;AAAA,UAAC,cAAa,MAAI,cAAa,KAAG,GAAE,OAAK,KAAK,aAAa,GAAE,IAAI,IAAE,cAAa,KAAG,GAAE,SAAO,KAAK,aAAa,GAAE,MAAM,IAAE,cAAa,KAAG,cAAa,KAAG,cAAa,IAAE,GAAE,OAAK,KAAK,aAAa,GAAE,IAAI,IAAE,cAAa,IAAE,GAAE,aAAW,KAAK,aAAa,GAAE,UAAU,IAAE,cAAa,OAAK,GAAE,OAAK,KAAK,aAAa,GAAE,IAAI;AAAA,SAAK;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,YAAY,CAAC,IAAE;AAAA,IAAC,IAAG,cAAa,IAAG;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS,GAAE,IAAI;AAAA,MAAE,IAAG;AAAA,QAAE,OAAO;AAAA,IAAC,EAAM;AAAA,oBAAa,KAAG,GAAE,OAAK,KAAK,aAAa,GAAE,IAAI,IAAE,cAAa,OAAK,GAAE,SAAO,KAAK,aAAa,GAAE,MAAM;AAAA,IAAG,OAAO;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE;AAAA,IAAC,IAAG;AAAA,MAAE,IAAa,OAAO,MAAjB,UAAmB;AAAA,QAAC,MAAM,KAAE,IAAI,GAAG,EAAC;AAAA,QAAE,KAAK,UAAQ,GAAE,WAAW;AAAA,MAAE,EAAM;AAAA,aAAK,UAAQ;AAAA,IAAO;AAAA,WAAK,UAAQ,CAAC;AAAA,IAAE,KAAK,WAAS;AAAA;AAAA,EAAG,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,GAAE,OAAW,MAAN,OAAQ,KAAE,KAAK,cAAa;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,EAAC,OAAM,IAAE,SAAQ,IAAE,UAAS,MAAI,GAAG,KAAG;AAAA;AAAA,EAAE,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,YAAU,KAAK,QAAQ,UAAQ,KAAK,MAAM,EAAE,QAAM,GAAG;AAAA;AAAA,EAAI,MAAM,CAAC,IAAE;AAAA,IAAC,IAAG,cAAa;AAAA,MAAG,OAAO,CAAC,CAAC,KAAK,OAAO,EAAC,MAAI,KAAK,SAAS,GAAE;AAAA,IAAM,SAAQ,KAAE,GAAE,KAAE,GAAE,OAAO,KAAE,IAAE,EAAE,IAAE;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAG,IAAG,KAAK,OAAO,EAAC;AAAA,QAAE,OAAO,KAAK,SAAS,GAAE;AAAA,IAAI;AAAA,IAAC,OAAQ;AAAA;AAAA,EAAM,QAAQ,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,KAAK,OAAO,EAAC;AAAA,MAAE,OAAO,KAAK,SAAS;AAAA,IAAE,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,GAAG,YAAW,KAAK,cAAc;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,IAAG,KAAK,SAAS;AAAA,MAAE,OAAQ;AAAA,IAAM,MAAM,KAAE,KAAK,MAAM;AAAA,IAAE,IAAG,cAAa,OAAM;AAAA,MAAC,MAAM,KAAE,GAAE;AAAA,MAAK,IAAI,KAAE;AAAA,MAAM,WAAU,MAAK,IAAE;AAAA,QAAC,IAAG,OAAI;AAAA,UAAE,OAAQ;AAAA,QAAK,OAAI,GAAG,OAAO,SAAO,KAAE;AAAA,MAAM;AAAA,MAAC,IAAG,IAAE;AAAA,QAAC,MAAM,KAAE,GAAG,OAAO,KAAK,KAAK,KAAK,GAAE,MAAM;AAAA,QAAE,IAAG,MAAM,GAAE,SAAL,KAAY,GAAE,MAAI,GAAE;AAAA,UAAO,OAAQ;AAAA,MAAI;AAAA,MAAC,OAAQ;AAAA,IAAK;AAAA,IAAC,IAAG,GAAE,SAAO;AAAA,MAAE,OAAQ;AAAA,IAAK,IAAG,OAAI,GAAG,OAAO,MAAK;AAAA,MAAC,MAAM,KAAE,GAAG,OAAO,KAAK,KAAK,KAAK,GAAE,MAAM;AAAA,MAAE,OAAO,MAAM,GAAE,SAAL,KAAY,GAAE,MAAI,GAAE;AAAA,IAAM;AAAA,IAAC,OAAQ;AAAA;AAAA,EAAM,QAAQ,GAAE;AAAA,IAAC,IAAI,IAAE;AAAA,IAAE,OAAO,KAAK,gBAAqB,MAAU,KAAE,KAAK,MAAM,OAArB,QAAqC,OAAZ,YAAc,YAAU,GAAE,UAA7D,QAAgF,OAAZ,YAAc,KAAE,IAAG,KAAK,SAAS,KAAG,KAAK,YAAW,KAAK,UAAU;AAAA;AAAA,EAAE,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,QAAQ,KAAK;AAAA;AAAA,EAAU,SAAS,GAAE;AAAA,IAAC,OAAO,KAAK,QAAQ,KAAK,WAAS;AAAA;AAAA,EAAG,yBAAyB,GAAE;AAAA,IAAC,MAAK,KAAK,OAAO,GAAG,OAAO,SAAS,KAAG,CAAC,KAAK,SAAS;AAAA;AAAA,IAAI,IAAG,KAAK,OAAO,GAAG,SAAS,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,WAAU,cAAgB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,UAAU,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,WAAU,cAAgB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,QAAQ,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,oBAAoB;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,WAAU,cAAgB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,MAAM,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,kBAAkB;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,WAAU,cAAgB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,KAAK,WAAW;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,sBAAsB;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,QAAQ,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,wBAAwB;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,iBAAiB;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,mBAAmB;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,MAAM,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,aAAa;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,EAAE,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,eAAe;AAAA,MAAE,OAAa,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,MAAM,WAAW,UAAU,CAAC,EAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,cAAc,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,EAAE;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,yBAAyB,EAAE,SAAS;AAAA,IAAE,KAAK,SAAS,GAAG,OAAO,YAAW,sCAAwC;AAAA,IAAE,MAAM,KAAE,CAAC;AAAA,IAAE,IAAG,CAAC,KAAK,OAAO,GAAG,OAAO,WAAW;AAAA,MAAE,GAAE;AAAA,QAAC,IAAG,KAAK,OAAO,GAAG,OAAO,WAAW;AAAA,UAAE;AAAA,QAAM,MAAM,KAAE,KAAK,WAAW,GAAE,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,yBAAyB,EAAE,SAAS;AAAA,QAAE,KAAK,SAAS,GAAG,OAAO,OAAM,iCAAmC;AAAA,QAAE,MAAM,KAAE,KAAK,WAAW,GAAE,KAAE,KAAK,WAAW;AAAA,QAAQ,MAAN,SAAU,GAAE,aAAW,IAAE,GAAE,KAAK,KAAK,YAAY,IAAI,GAAG,IAAE,IAAE,EAAC,CAAC,CAAC;AAAA,MAAG,SAAO,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,IAAG,KAAK,SAAS,GAAG,OAAO,aAAY,wCAA0C;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,IAAG;AAAA,IAAC,MAAM,KAAE,KAAK,oBAAoB,GAAE,KAAE,KAAK;AAAA,IAAa,OAAO,KAAK,YAAY,IAAI,EAAE,IAAE,IAAE,IAAE,IAAE,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,mBAAmB,GAAE;AAAA,IAAC,MAAM,KAAE,CAAC;AAAA,IAAE,KAAI,KAAK,SAAS,GAAG,OAAO,YAAW,yBAA2B,EAAE,CAAC,KAAK,OAAO,GAAG,OAAO,WAAW,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAS,OAAP,QAAU,GAAE,KAAK,EAAC;AAAA,IAAE;AAAA,IAAC,OAAO,KAAK,SAAS,GAAG,OAAO,aAAY,yBAA2B,GAAE;AAAA;AAAA,EAAE,UAAU,GAAE;AAAA,IAAC,MAAK,KAAK,OAAO,GAAG,OAAO,SAAS,KAAG,CAAC,KAAK,SAAS;AAAA;AAAA,IAAI,IAAG,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,OAAO,GAAG,SAAS,EAAE;AAAA,MAAE,OAAO,KAAK,cAAc;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,MAAM;AAAA,MAAE,OAAO,KAAK,kBAAkB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,IAAI;AAAA,MAAE,OAAO,KAAK,gBAAgB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG;AAAA,MAAE,OAAO,KAAK,eAAe;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,KAAK;AAAA,MAAE,OAAO,KAAK,iBAAiB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,UAAU;AAAA,MAAE,OAAO,KAAK,sBAAsB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,aAAa;AAAA,MAAE,OAAO,KAAK,yBAAyB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,OAAO,UAAU;AAAA,MAAE,OAAO,KAAK,oBAAoB;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,SAAS,MAAM;AAAA,MAAE,KAAE,KAAK,kBAAkB;AAAA,IAAO,SAAG,KAAK,OAAO,CAAC,GAAG,SAAS,KAAI,GAAG,SAAS,KAAI,GAAG,SAAS,KAAK,CAAC;AAAA,MAAE,KAAE,KAAK,oBAAoB;AAAA,IAAO,SAAG,KAAK,OAAO,GAAG,SAAS,OAAO;AAAA,MAAE,KAAE,KAAK,YAAY,IAAI,EAAE;AAAA,IAAO,SAAG,KAAK,OAAO,GAAG,SAAS,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE;AAAA,MAAE,IAAG,KAAK,aAAa,SAAO,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,aAAa,KAAK,aAAa,SAAO;AAAA,QAAG,GAAE,SAAO,GAAE;AAAA,MAAG;AAAA,MAAC,KAAE,IAAE,KAAK,OAAO,GAAG,SAAS,EAAE,MAAI,KAAK,SAAS,GAAE,GAAE,YAAU,KAAK,2BAA2B;AAAA,IAAG,EAAM,SAAG,KAAK,OAAO,GAAG,SAAS,QAAQ,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE;AAAA,MAAE,IAAG,EAAE,KAAK,aAAa,SAAO;AAAA,QAAG,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,mDAAmD,GAAE,MAAM;AAAA,MAAE;AAAA,QAAC,MAAM,KAAE,KAAK,aAAa,KAAK,aAAa,SAAO;AAAA,QAAG,GAAE,SAAO,GAAE;AAAA,MAAG;AAAA,MAAC,KAAE;AAAA,IAAE,EAAM;AAAA,WAAE,KAAK,+BAA+B,KAAG,KAAK,qBAAqB,KAAG,KAAK,sBAAsB;AAAA,IAAE,OAAa,MAAN,QAAS,KAAK,SAAS,GAAG,OAAO,WAAU,+BAAiC,GAAE;AAAA;AAAA,EAAE,wBAAwB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,aAAa;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,2BAA2B;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,gBAAgB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,KAAK;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE,MAAK,IAAI,CAAC;AAAA,IAAE,OAAO,KAAK,aAAa,KAAK,EAAC,GAAE,GAAE,YAAU,KAAK,2BAA2B,GAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,GAAE,OAAK,KAAK,oBAAoB,GAAE,KAAK,aAAa,IAAI,GAAE;AAAA;AAAA,EAAE,qBAAqB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,aAAa,SAAO,IAAE,KAAK,aAAa,KAAK,aAAa,SAAO,GAAG,KAAG;AAAA,IAAG,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,UAAU;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,oBAAoB;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,cAAc,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,GAAG;AAAA,MAAE,OAAO;AAAA,IAAK,KAAK,SAAS,GAAG,OAAO,YAAW,eAAiB;AAAA,IAAE,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE,MAAK,MAAK,MAAK,IAAI,CAAC;AAAA,IAAE,OAAO,KAAK,aAAa,KAAK,EAAC,GAAE,GAAE,OAAK,KAAK,OAAO,GAAG,OAAO,SAAS,IAAE,OAAK,KAAK,UAAU,GAAE,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,GAAE,YAAU,KAAK,OAAO,GAAG,OAAO,SAAS,IAAE,OAAK,KAAK,6BAA6B,GAAE,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB,GAAE,GAAE,YAAU,KAAK,OAAO,GAAG,OAAO,WAAW,IAAE,OAAK,KAAK,eAAe,GAAE,KAAK,SAAS,GAAG,OAAO,aAAY,eAAiB,GAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,GAAE,OAAK,KAAK,oBAAoB,GAAE,KAAK,aAAa,IAAI,GAAE;AAAA;AAAA,EAAE,SAAS,GAAE;AAAA,IAAC,OAAO,KAAK,oBAAoB,KAAG,KAAK,qBAAqB,KAAG,KAAK,sBAAsB;AAAA;AAAA,EAAE,cAAc,GAAE;AAAA,IAAC,OAAO,KAAK,qBAAqB,KAAG,KAAK,+BAA+B,KAAG,KAAK,sBAAsB;AAAA;AAAA,EAAE,mBAAmB,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,eAAe;AAAA,MAAE,IAAU,OAAP;AAAA,QAAS,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,gCAAgC;AAAA,MAAE,IAAI,KAAE;AAAA,MAAK,OAAO,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,KAAE,KAAK,6BAA6B,IAAG,KAAK,YAAY,IAAI,EAAE,GAAE,MAAK,GAAE,MAAK,GAAE,SAAQ,GAAE,QAAO,EAAC,GAAE,GAAE,IAAI;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,wBAAwB,EAAE,SAAS;AAAA,MAAE,IAAI,KAAE;AAAA,MAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,WAAW;AAAA,QAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,MAAG;AAAA,MAAC,KAAK,SAAS,GAAG,OAAO,OAAM,uBAAyB;AAAA,MAAE,MAAM,KAAE,KAAK,6BAA6B;AAAA,MAAE,OAAO,KAAK,YAAY,IAAI,EAAE,IAAE,IAAE,MAAK,MAAK,EAAC,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,0BAA0B,EAAE,SAAS;AAAA,MAAE,IAAI,KAAE;AAAA,MAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,WAAW;AAAA,QAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,MAAG;AAAA,MAAC,KAAK,SAAS,GAAG,OAAO,OAAM,yBAA2B;AAAA,MAAE,MAAM,KAAE,KAAK,6BAA6B;AAAA,MAAE,OAAc,OAAP,QAAU,cAAa,OAAK,KAAE,GAAE,OAAM,KAAK,YAAY,IAAI,EAAE,IAAE,IAAE,MAAK,MAAK,EAAC,GAAE,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,8BAA8B,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,UAAS,KAAE,KAAK,kBAAkB;AAAA,IAAE,IAAS,MAAN;AAAA,MAAQ,OAAO;AAAA,IAAK,IAAG,CAAC,KAAK,OAAO,GAAG,mBAAmB;AAAA,MAAE,OAAO,KAAK,WAAS,IAAE;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS,GAAG,qBAAoB,6BAA6B;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,GAAE,SAAO,GAAG,OAAO,YAAU,EAAE,YAAU,EAAE,WAAU,EAAC,CAAC;AAAA;AAAA,EAAE,qBAAqB,GAAE;AAAA,IAAC,IAAI,KAAE;AAAA,IAAK,MAAM,KAAE,KAAK;AAAA,IAAa,IAAG,KAAK,OAAO,GAAG,OAAO,WAAW;AAAA,MAAE,OAAO;AAAA,IAAK,IAAI,KAAE,KAAK,OAAO,GAAG,OAAO,UAAU;AAAA,IAAE,IAAG,OAAI,KAAE,KAAK,kBAAkB,IAAG,CAAC,MAAS,MAAN;AAAA,MAAQ,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS,GAAG,sBAAqB,+BAA+B,GAAE,KAAE,KAAK,6BAA6B;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,EAAE,MAAM,GAAE,MAAM,GAAE,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,oBAAoB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,UAAS,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,yBAAyB,GAAE,KAAE,KAAK,0BAA0B;AAAA,IAAE,OAAc,OAAP,QAAU,KAAK,WAAS,IAAE,QAAM,KAAK,YAAY,IAAI,EAAE,GAAE,QAAO,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,eAAe,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,IAAI;AAAA,MAAE,OAAO;AAAA,IAAK,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,SAAS,GAAG,OAAO,YAAW,wBAA0B;AAAA,IAAE,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE,CAAC,GAAE,IAAI,CAAC;AAAA,IAAE,KAAK,aAAa,KAAK,EAAC;AAAA,IAAE,IAAI,KAAE,KAAK,WAAW;AAAA,IAAE,MAAY,OAAP,QAAU;AAAA,MAAC,IAAG,MAAM,QAAQ,EAAC;AAAA,QAAE,SAAQ,MAAK;AAAA,UAAE,GAAE,KAAK,KAAK,EAAC;AAAA,MAAO;AAAA,WAAE,KAAK,KAAK,EAAC;AAAA,MAAE,IAAG,cAAa,GAAE;AAAA,QAAC,GAAE,aAAW;AAAA,QAAE;AAAA,MAAK;AAAA,MAAC,KAAE,KAAK,WAAW;AAAA,IAAE;AAAA,IAAC,OAAO,KAAK,aAAa,IAAI,GAAE,KAAK,SAAS,GAAG,OAAO,aAAY,wBAA0B,GAAE;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,MAAM;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE,MAAK,CAAC,CAAC,CAAC;AAAA,IAAE,IAAG,KAAK,aAAa,KAAK,EAAC,GAAE,GAAE,YAAU,KAAK,2BAA2B,GAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,SAAS,GAAG,OAAO,YAAW,0BAA4B,GAAE,GAAE,QAAM,KAAK,aAAa,GAAQ,GAAE,SAAR,QAAkB,GAAE,MAAM,UAAX;AAAA,MAAkB,MAAM,KAAK,OAAO,KAAK,UAAU,GAAE,+BAAmC;AAAA,IAAE,OAAO,KAAK,SAAS,GAAG,OAAO,aAAY,0BAA4B,GAAE,KAAK,aAAa,IAAI,GAAE;AAAA;AAAA,EAAE,YAAY,GAAE;AAAA,IAAC,MAAM,KAAE,CAAC;AAAA,IAAE,IAAI,KAAE;AAAA,IAAM,MAAK,KAAK,OAAO,CAAC,GAAG,SAAS,SAAQ,GAAG,SAAS,IAAI,CAAC,KAAG;AAAA,MAAC,IAAG,KAAK,OAAO,GAAG,SAAS,IAAI,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,gBAAgB;AAAA,QAAE,WAAU,MAAK;AAAA,UAAE,IAAG,cAAa,IAAG;AAAA,YAAC,IAAG;AAAA,cAAE,MAAM,KAAK,OAAO,KAAK,UAAU,GAAE,6CAA6C;AAAA,YAAE,KAAE;AAAA,YAAK;AAAA,UAAK;AAAA,QAAC,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,SAAS,GAAG,OAAO,YAAW,8BAAgC;AAAA,QAAE,MAAM,KAAE,KAAK,WAAW;AAAA,QAAE,KAAK,SAAS,GAAG,OAAO,aAAY,8BAAgC,GAAE,GAAE,KAAK,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC,CAAC;AAAA,MAAE;AAAA,MAAC,IAAG,KAAK,OAAO,GAAG,SAAS,OAAO,GAAE;AAAA,QAAC,IAAG;AAAA,UAAE,MAAM,KAAK,OAAO,KAAK,UAAU,GAAE,6CAA6C;AAAA,QAAE,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,SAAS,GAAG,OAAO,YAAW,iCAAmC;AAAA,QAAE,MAAM,KAAE,KAAK,WAAW;AAAA,QAAE,KAAK,SAAS,GAAG,OAAO,aAAY,iCAAmC,GAAE,GAAE,KAAK,KAAK,YAAY,IAAI,GAAG,EAAC,CAAC,CAAC;AAAA,MAAE;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAE,eAAe,GAAE;AAAA,IAAC,MAAM,KAAE,CAAC;AAAA,IAAE,KAAI,KAAK,OAAO,GAAG,SAAS,OAAO,IAAE,GAAE,KAAK,KAAK,YAAY,IAAI,EAAE,CAAC,IAAE,GAAE,KAAK,KAAK,kBAAkB,CAAC,EAAE,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,MAAG,KAAK,OAAO,GAAG,SAAS,OAAO,IAAE,GAAE,KAAK,KAAK,YAAY,IAAI,EAAE,CAAC,IAAE,GAAE,KAAK,KAAK,kBAAkB,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,UAAU,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,WAAW;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,WAAU,cAAgB,GAAE,CAAC;AAAA,IAAE,IAAI,KAAE,KAAK,WAAW;AAAA,IAAE,IAAS,MAAN;AAAA,MAAQ,OAAO,CAAC;AAAA,IAAE,cAAa,UAAQ,KAAE,CAAC,EAAC;AAAA,IAAG,MAAM,KAAE,KAAK,WAAW;AAAA,IAAE,OAAU,GAAE,UAAL,IAAY,KAAE,CAAC,GAAG,IAAE,GAAE,EAAE;AAAA;AAAA,EAAE,aAAa,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,EAAE;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,2BAA2B;AAAA,IAAE,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW;AAAA,IAAE,MAAM,KAAE,KAAK,oBAAoB;AAAA,IAAE,IAAI,KAAE,CAAC;AAAA,IAAE,KAAK,cAAc,MAAI,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAE,KAAK,kBAAkB,EAAC;AAAA,IAAG,IAAI,KAAE;AAAA,IAAK,OAAO,KAAK,OAAO,GAAG,SAAS,IAAI,MAAI,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAE,KAAK,oBAAoB,IAAG,KAAK,YAAY,IAAI,EAAE,IAAE,IAAE,IAAE,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,aAAa,GAAE;AAAA,IAAC,OAAO,KAAK,QAAQ,KAAK,UAAU,SAAO,GAAG,SAAS,QAAM,KAAK,QAAQ,KAAK,WAAS,GAAG,SAAO,GAAG,SAAS,OAAK,KAAK,SAAS,GAAE,KAAK,SAAS,GAAE;AAAA;AAAA,EAAM,iBAAiB,CAAC,KAAE,CAAC,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,2BAA2B,GAAE,KAAE,KAAK,oBAAoB;AAAA,IAAE,OAAO,GAAE,KAAK,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC,CAAC,GAAE,KAAK,cAAc,MAAI,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG,KAAK,WAAW,GAAE,KAAK,kBAAkB,EAAC,IAAG;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,MAAM;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,6BAA6B;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,EAAC,CAAC;AAAA;AAAA,EAAE,4BAA4B,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,wBAAwB;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,wBAAwB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,uBAAuB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,yBAAyB;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,OAAO;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,yBAAyB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,wBAAwB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,yBAAyB;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,EAAE;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,yBAAyB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,wBAAwB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,gBAAgB;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,GAAG;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,gBAAgB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,eAAe,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,qBAAqB;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,GAAG;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,qBAAqB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,oBAAoB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,uBAAuB;AAAA,IAAE,OAAO,KAAK,OAAO,CAAC,GAAG,OAAO,aAAY,GAAG,OAAO,SAAS,CAAC,IAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,uBAAuB,CAAC,CAAC,IAAE;AAAA;AAAA,EAAE,sBAAsB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,kBAAkB;AAAA,IAAE,MAAK,KAAK,OAAO,CAAC,GAAG,OAAO,WAAU,GAAG,OAAO,cAAa,GAAG,OAAO,iBAAgB,GAAG,OAAO,kBAAkB,CAAC;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,kBAAkB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,qBAAqB;AAAA,IAAE,MAAK,KAAK,OAAO,CAAC,GAAG,OAAO,YAAW,GAAG,OAAO,WAAW,CAAC;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,qBAAqB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,oBAAoB,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,2BAA2B;AAAA,IAAE,MAAK,KAAK,OAAO,CAAC,GAAG,OAAO,MAAK,GAAG,OAAO,KAAK,CAAC;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,2BAA2B,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,0BAA0B,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK,kBAAkB;AAAA,IAAE,MAAK,KAAK,OAAO,CAAC,GAAG,OAAO,MAAK,GAAG,OAAO,eAAc,GAAG,OAAO,MAAM,CAAC;AAAA,MAAG,KAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,IAAE,KAAK,kBAAkB,CAAC,CAAC;AAAA,IAAE,OAAO;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,OAAO,KAAK,OAAO,CAAC,GAAG,OAAO,OAAM,GAAG,OAAO,MAAK,GAAG,OAAO,OAAM,GAAG,OAAO,MAAK,GAAG,OAAO,GAAG,CAAC,IAAE,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,KAAK,kBAAkB,CAAC,CAAC,IAAE,KAAK,qBAAqB;AAAA;AAAA,EAAE,oBAAoB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,oBAAoB,GAAE,KAAE,KAAK,oBAAoB;AAAA,IAAE,OAAO,OAAI,GAAE,UAAQ,KAAG;AAAA;AAAA,EAAE,mBAAmB,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,YAAY,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,6BAA6B;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,eAAc,eAAiB;AAAA,MAAE,MAAM,KAAE,KAAK,YAAY,IAAI,GAAG,EAAC,CAAC,GAAE,KAAE,KAAK,oBAAoB;AAAA,MAAE,OAAO,OAAI,GAAE,UAAQ,KAAG;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,MAAM,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,uBAAuB,GAAE,KAAE,KAAK,oBAAoB,GAAE,KAAE,KAAK,YAAY,IAAI,GAAG,GAAE,MAAM,CAAC;AAAA,MAAE,OAAO,OAAI,GAAE,UAAQ,KAAG;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,UAAU,CAAC,IAAE;AAAA,IAAC,IAAG,KAAK,SAAS,QAAQ,IAAI,EAAC,GAAE;AAAA,MAAC,OAAO,KAAK,SAAS,QAAQ,IAAI,EAAC,EAAE;AAAA,IAAI;AAAA,IAAC,IAAG,KAAK,SAAS,QAAQ,IAAI,EAAC,GAAE;AAAA,MAAC,OAAO,KAAK,SAAS,QAAQ,IAAI,EAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,QAAQ,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE,KAAK,WAAW,EAAC;AAAA,IAAE,IAAU,OAAP;AAAA,MAAS,OAAO;AAAA,IAAE,QAAO;AAAA,WAAQ;AAAA,QAAO,OAAO,GAAG;AAAA,WAAU;AAAA,QAAO,OAAO,GAAG;AAAA,WAAU;AAAA,QAAM,OAAO,GAAG;AAAA,WAAS;AAAA,QAAM,OAAO,GAAG;AAAA,WAAS;AAAA,QAAM,OAAO,GAAG;AAAA,WAAS;AAAA,QAAM,OAAO,GAAG;AAAA,WAAS;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAQ,OAAO,GAAG;AAAA,WAAW;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA,WAAa;AAAA,QAAU,OAAO,GAAG;AAAA;AAAA,IAAQ,OAAO;AAAA;AAAA,EAAK,kBAAkB,CAAC,IAAE,IAAE;AAAA,IAAC,IAAW,GAAE,SAAV,OAAe;AAAA,MAAC,IAAG,KAAE,eAAa,KAAE;AAAA,QAAW,MAAM,KAAK,OAAO,KAAK,UAAU,GAAE,+BAA+B,aAAY,KAAK,eAAe;AAAA,IAAC,EAAM,SAAW,GAAE,SAAV,UAAiB,KAAE,KAAG,KAAE;AAAA,MAAY,MAAM,KAAK,OAAO,KAAK,UAAU,GAAE,+BAA+B,aAAY,KAAK,eAAe;AAAA;AAAA,EAAE,mBAAmB,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,UAAU,EAAE,SAAS;AAAA,MAAE,IAAG,KAAK,OAAO,GAAG,OAAO,UAAU,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,0BAA0B,GAAE,KAAE,KAAK,SAAS,EAAC;AAAA,QAAE,OAAc,OAAP,OAAS,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC,IAAE,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC;AAAA,MAAC;AAAA,MAAC,IAAG,KAAK,SAAS,UAAU,IAAI,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,SAAS,UAAU,IAAI,EAAC;AAAA,QAAE,OAAO,KAAK,YAAY,IAAI,GAAG,IAAE,GAAE,KAAK,CAAC;AAAA,MAAC;AAAA,MAAC,OAAO,KAAK,YAAY,IAAI,GAAG,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,WAAW,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,UAAU,EAAE,SAAS;AAAA,MAAE,IAAI,KAAE,GAAE,SAAS,GAAG,KAAG,GAAE,SAAS,GAAG,IAAE,GAAG,MAAI,GAAE,SAAS,GAAG,KAAG,GAAE,SAAS,GAAG,IAAE,GAAG,MAAI,GAAG;AAAA,MAAI,MAAM,KAAE,SAAS,EAAC;AAAA,MAAE,OAAO,KAAK,mBAAmB,IAAE,EAAC,GAAE,KAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAE,KAAK,MAAM,YAAY,EAAC,CAAC,GAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,YAAY,GAAE;AAAA,MAAC,MAAM,KAAE,SAAS,KAAK,UAAU,EAAE,SAAS,CAAC;AAAA,MAAE,OAAO,KAAK,mBAAmB,IAAE,GAAG,GAAG,GAAE,KAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAE,KAAK,MAAM,YAAY,GAAG,GAAG,CAAC,GAAE,GAAG,GAAG,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,CAAC,GAAG,OAAO,uBAAsB,GAAG,OAAO,iBAAiB,CAAC,GAAE;AAAA,MAAC,IAAI,KAAE,KAAK,UAAU,EAAE,SAAS,GAAE,KAAE,GAAE,SAAS,GAAG;AAAA,MAAE,OAAI,KAAE,GAAE,UAAU,GAAE,GAAE,SAAO,CAAC;AAAA,MAAG,MAAM,KAAE,WAAW,EAAC;AAAA,MAAE,KAAK,mBAAmB,IAAE,KAAE,GAAG,MAAI,GAAG,GAAG;AAAA,MAAE,MAAM,KAAE,KAAE,GAAG,MAAI,GAAG;AAAA,MAAI,OAAO,KAAK,YAAY,IAAI,GAAG,IAAI,GAAG,IAAE,KAAK,MAAM,YAAY,EAAC,CAAC,GAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,CAAC,GAAG,SAAS,MAAK,GAAG,SAAS,KAAK,CAAC,GAAE;AAAA,MAAC,IAAI,KAAE,KAAK,UAAU,EAAE,SAAS,MAAI,GAAG,SAAS,KAAK;AAAA,MAAK,OAAO,KAAK,YAAY,IAAI,GAAG,IAAI,GAAG,KAAE,IAAE,GAAE,KAAK,MAAM,YAAY,GAAG,IAAI,CAAC,GAAE,GAAG,IAAI,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,OAAO,UAAU;AAAA,MAAE,OAAO,KAAK,kBAAkB;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,OAAO,GAAE;AAAA,MAAC,KAAK,SAAS,GAAG,OAAO,WAAU,eAAiB;AAAA,MAAE,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,cAAa,eAAiB;AAAA,MAAE,MAAM,KAAE,KAAK,kBAAkB;AAAA,MAAE,OAAO,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,KAAK,WAAW,GAAE,KAAE,KAAK,0BAA0B;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,GAAG,IAAE,EAAC,CAAC;AAAA;AAAA,EAAE,yBAAyB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,OAAO,UAAU;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,CAAC;AAAA,IAAE,GAAE;AAAA,MAAC,IAAG,KAAK,OAAO,GAAG,OAAO,WAAW;AAAA,QAAE;AAAA,MAAM,MAAM,KAAE,KAAK,6BAA6B;AAAA,MAAE,GAAE,KAAK,EAAC;AAAA,IAAE,SAAO,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,IAAG,OAAO,KAAK,SAAS,GAAG,OAAO,aAAY,+BAAiC,GAAE;AAAA;AAAA,EAAE,0BAA0B,GAAE;AAAA,IAAC,KAAK,OAAO,GAAG,OAAO,UAAU;AAAA,IAAE,MAAM,KAAE,KAAK,6BAA6B;AAAA,IAAE,OAAO,KAAK,OAAO,GAAG,OAAO,WAAW,GAAE;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,KAAK,SAAS,GAAG,OAAO,YAAW,eAAiB;AAAA,IAAE,MAAM,KAAE,KAAK,6BAA6B;AAAA,IAAE,OAAO,KAAK,SAAS,GAAG,OAAO,aAAY,eAAiB,GAAE;AAAA;AAAA,EAAE,YAAY,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,MAAM;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,2BAA2B,EAAE,SAAS;AAAA,IAAE,KAAK,SAAS,GAAG,OAAO,YAAW,+BAAiC;AAAA,IAAE,MAAM,KAAE,CAAC;AAAA,IAAE,MAAK,CAAC,KAAK,OAAO,GAAG,OAAO,WAAW,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW,GAAE,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,yBAAyB,EAAE,SAAS;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,OAAM,sCAAwC;AAAA,MAAE,MAAM,KAAE,KAAK,WAAW,GAAE,KAAE,KAAK,WAAW;AAAA,MAAQ,MAAN,SAAU,GAAE,aAAW,KAAG,KAAK,OAAO,GAAG,OAAO,WAAW,IAAE,KAAK,OAAO,GAAG,OAAO,KAAK,IAAE,KAAK,SAAS,GAAG,OAAO,OAAM,iCAAmC,GAAE,GAAE,KAAK,KAAK,YAAY,IAAI,GAAG,IAAE,IAAE,EAAC,CAAC,CAAC;AAAA,IAAE;AAAA,IAAC,KAAK,SAAS,GAAG,OAAO,aAAY,iCAAmC;AAAA,IAAE,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,YAAY,IAAI,GAAG,IAAE,IAAE,IAAE,EAAC,GAAE,EAAC;AAAA,IAAE,OAAO,KAAK,SAAS,QAAQ,IAAI,IAAE,EAAC,GAAE;AAAA;AAAA,EAAE,qBAAqB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAe;AAAA,IAAE,IAAG,CAAC;AAAA,MAAE,OAAO;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,kBAAkB;AAAA,MAAE,GAAE,QAAM;AAAA,IAAE;AAAA,IAAC,IAAU,GAAE,SAAT,QAAe,GAAE,iBAAiB,IAAG;AAAA,MAAC,IAAW,GAAE,MAAM,KAAK,SAArB,OAA0B;AAAA,QAAC,IAAG,GAAE,KAAK,YAAY,MAAI,GAAE,MAAM,KAAK,YAAY;AAAA,UAAE,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,qBAAqB,GAAE,MAAM,KAAK,WAAW,GAAE,KAAK,cAAc,KAAK,cAAc;AAAA,MAAC;AAAA,MAAC,GAAE,MAAM,YAAU,KAAK,mBAAmB,GAAE,MAAM,aAAY,GAAE,IAAI,GAAE,GAAE,MAAM,OAAK,GAAE;AAAA,IAAK,EAAM;AAAA,MAAO,GAAE,SAAT,QAAe,GAAE,iBAAiB,OAAK,GAAE,OAAa,GAAE,MAAM,KAAK,SAArB,QAA0B,GAAG,MAAI,GAAE,MAAM,MAAK,GAAE,MAAM,YAAU,KAAK,mBAAmB,GAAE,MAAM,aAAY,GAAE,IAAI;AAAA,IAAG,OAAO;AAAA;AAAA,EAAE,uBAAuB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,eAAe;AAAA,IAAE,OAAO,MAAG,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,GAAE,QAAM,KAAK,kBAAkB,IAAG;AAAA;AAAA,EAAE,kBAAkB,GAAE;AAAA,IAAC,IAAI;AAAA,IAAE,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,KAAK;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,wBAAwB,GAAE,KAAE,KAAK;AAAA,IAAa,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,IAAG;AAAA,IAAC,IAAI,KAAE;AAAA,IAAK,KAAK,SAAS,GAAG,OAAO,OAAM,0CAA0C;AAAA,IAAE,MAAM,KAAE,KAAK,6BAA6B;AAAA,IAAE,IAAG;AAAA,MAAC,IAAI,KAAE,CAAC,GAAG,GAAG,GAAE,KAAE,GAAE,cAAc,KAAK,OAAM,EAAC;AAAA,MAAE,cAAa,MAAI,KAAK,mBAAmB,GAAE,OAAM,GAAE,EAAE,GAAE,GAAE,cAAa,MAAW,GAAE,GAAG,WAAZ,QAAoB,GAAE,oBAAoB,KAAU,GAAE,SAAS,WAAlB,SAAmC,GAAE,SAAS,OAAO,SAA1B,QAA+B,GAAE,GAAG,SAAO,GAAG,MAAY,GAAE,SAAS,OAAO,SAA1B,QAA+B,GAAE,GAAG,SAAO,GAAG,MAAY,GAAE,SAAS,OAAO,SAA1B,QAA+B,GAAE,GAAG,SAAO,GAAG,MAAY,GAAE,SAAS,OAAO,SAA1B,QAA+B,GAAE,GAAG,SAAO,GAAG,MAAa,GAAE,SAAS,OAAO,SAA3B,SAAgC,GAAE,GAAG,SAAO,GAAG,OAAK,QAAQ,MAAM,yCAAyC,GAAE,SAAS,OAAO,MAAM,IAAG,KAAE,KAAK,YAAY,IAAI,GAAG,IAAE,GAAE,EAAE,CAAC,GAAE,KAAK,MAAM,QAAQ,YAAY,GAAE,SAAS,GAAE,EAAC;AAAA,MAAG,OAAM,IAAE;AAAA,MAAC,KAAE;AAAA;AAAA,IAAG,IAAU,OAAP,QAAU,cAAa,IAAG;AAAA,MAAC,IAAW,GAAE,KAAK,SAAf,OAAoB;AAAA,QAAC,IAAG,GAAE,YAAY,MAAI,GAAE,KAAK,YAAY;AAAA,UAAE,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,qBAAqB,GAAE,KAAK,WAAW,GAAE,cAAc,KAAK,cAAc;AAAA,MAAC;AAAA,MAAC,GAAE,OAAK,IAAE,GAAE,YAAU,KAAK,mBAAmB,GAAE,aAAY,GAAE,IAAI;AAAA,IAAE,EAAM;AAAA,MAAO,OAAP,QAAU,cAAa,OAAK,MAAU,KAAQ,MAAN,OAAQ,YAAU,GAAE,UAA9B,QAAiD,OAAZ,YAAc,KAAE,GAAG,KAAI,OAAI,GAAG,QAAM,KAAE,GAAG;AAAA,IAAM,MAAM,KAAE,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,GAAE,IAAE,IAAG,IAAG,EAAC,GAAE,EAAC;AAAA,IAAE,OAAO,KAAK,SAAS,UAAU,IAAI,GAAE,MAAK,EAAC,GAAE;AAAA;AAAA,EAAE,gBAAgB,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,GAAG;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,cAAa,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,wBAAwB;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,IAAG;AAAA,IAAC,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,KAAE,KAAK,kBAAkB,IAAU,OAAP,QAAU,cAAa,IAAG;AAAA,MAAC,IAAW,GAAE,KAAK,SAAf,OAAoB;AAAA,QAAC,IAAG,GAAE,YAAY,MAAI,GAAE,KAAK,YAAY;AAAA,UAAE,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,qBAAqB,GAAE,KAAK,WAAW,GAAE,cAAc,KAAK,cAAc;AAAA,MAAC;AAAA,MAAC,GAAE,OAAK;AAAA,IAAE,EAAM;AAAA,MAAO,OAAP,QAAU,cAAa,OAAK,KAAU,GAAE,KAAK,SAAf,QAAoB,GAAG,MAAI,GAAE;AAAA,IAAM,OAAO,cAAa,MAAI,GAAE,YAAU,KAAK,mBAAmB,GAAE,aAAY,EAAC,GAAE,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,GAAE,IAAE,IAAG,IAAG,EAAC,GAAE,EAAC;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,OAAO,KAAK,6BAA6B;AAAA;AAAA,EAAE,cAAc,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,GAAG;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK;AAAA,IAAa,IAAI,KAAE,IAAG,KAAE;AAAA,IAAG,KAAK,OAAO,GAAG,OAAO,SAAS,MAAI,KAAE,KAAK,SAAS,GAAG,eAAc,yBAAyB,EAAE,SAAS,GAAE,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,KAAE,KAAK,SAAS,GAAG,aAAY,uBAAuB,EAAE,SAAS,IAAG,KAAK,SAAS,GAAG,OAAO,cAAa,eAAiB;AAAA,IAAG,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,wBAAwB;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,IAAG;AAAA,IAAC,OAAO,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,GAAE,IAAE,IAAE,IAAE,IAAI,GAAE,EAAC;AAAA;AAAA,EAAE,cAAc,GAAE;AAAA,IAAC,IAAG,CAAC,KAAK,OAAO,GAAG,SAAS,QAAQ;AAAA,MAAE,OAAO;AAAA,IAAK,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,MAAK,wBAAwB;AAAA,IAAE,IAAI,KAAE;AAAA,IAAK,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,KAAE,KAAK,WAAW,GAAQ,MAAN,SAAU,GAAE,aAAW;AAAA,IAAG;AAAA,IAAC,OAAO,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,GAAE,IAAE,IAAI,CAAC;AAAA;AAAA,EAAE,WAAW,GAAE;AAAA,IAAC,KAAK,SAAS,GAAG,OAAO,YAAW,cAAgB;AAAA,IAAE,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,iCAAiC;AAAA,IAAE,KAAK,SAAS,GAAG,OAAO,OAAM,cAAgB;AAAA,IAAE,IAAI,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,gCAAgC,EAAE,SAAS;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,OAAO,MAAM,GAAE;AAAA,MAAC,MAAG,IAAI,KAAK,SAAS,GAAG,OAAO,OAAM,8BAA8B,EAAE,SAAS;AAAA,IAAI;AAAA,IAAC,OAAO,KAAK,SAAS,GAAG,OAAO,aAAY,cAAgB,GAAE,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,GAAE,EAAC,CAAC;AAAA;AAAA,EAAE,iBAAiB,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,oBAAoB;AAAA,IAAE,OAAO,KAAK,YAAY,IAAI,EAAE,GAAE,SAAS,CAAC,CAAC;AAAA;AAAA,EAAE,mBAAmB,GAAE;AAAA,IAAC,MAAM,KAAE,CAAC,KAAK,SAAS,GAAG,OAAO,OAAM,oBAAoB,EAAE,SAAS,CAAC;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,KAAK,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,oBAAoB;AAAA,MAAE,GAAE,KAAK,GAAE,SAAS,CAAC;AAAA,IAAE;AAAA,IAAC,OAAO,KAAK,YAAY,IAAI,EAAE,EAAC,CAAC;AAAA;AAAA,EAAE,WAAW,GAAE;AAAA,IAAC,MAAM,KAAE,KAAK,SAAS,GAAG,OAAO,OAAM,oBAAoB;AAAA,IAAE,KAAK,SAAS,GAAG,OAAO,OAAM,8BAAgC;AAAA,IAAE,IAAI,KAAE,KAAK,WAAW;AAAA,IAAE,IAAU,OAAP;AAAA,MAAS,MAAM,KAAK,OAAO,KAAK,MAAM,GAAE,0BAA0B;AAAA,IAAE,KAAK,SAAS,QAAQ,IAAI,GAAE,IAAI,MAAI,KAAE,KAAK,SAAS,QAAQ,IAAI,GAAE,IAAI,EAAE;AAAA,IAAM,MAAM,KAAE,KAAK,YAAY,IAAI,GAAG,GAAE,SAAS,GAAE,EAAC,CAAC;AAAA,IAAE,OAAO,KAAK,SAAS,QAAQ,IAAI,GAAE,MAAK,EAAC,GAAE;AAAA;AAAA,EAAE,UAAU,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,CAAC,GAAG,OAAO,OAAM,GAAG,GAAG,cAAa,GAAG,SAAS,MAAK,GAAG,SAAS,KAAI,GAAG,SAAS,KAAI,GAAG,SAAS,GAAG,CAAC,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS,EAAE,SAAS;AAAA,MAAE,IAAG,KAAK,SAAS,QAAQ,IAAI,EAAC;AAAA,QAAE,OAAO,KAAK,SAAS,QAAQ,IAAI,EAAC;AAAA,MAAE,IAAG,KAAK,SAAS,QAAQ,IAAI,EAAC;AAAA,QAAE,OAAO,KAAK,SAAS,QAAQ,IAAI,EAAC,EAAE;AAAA,MAAK,IAAG,CAAC,KAAK,SAAS,EAAC,GAAE;AAAA,QAAC,MAAM,KAAE,KAAK,YAAY,IAAI,GAAG,EAAC,CAAC;AAAA,QAAE,OAAO,KAAK,qBAAoB;AAAA,MAAC;AAAA,MAAC,OAAO,KAAK,YAAY,IAAI,GAAG,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAI,KAAE,KAAK,uBAAuB;AAAA,IAAE,IAAG;AAAA,MAAE,OAAO;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,cAAc,GAAE;AAAA,MAAC,IAAI,KAAE,KAAK,SAAS,EAAE,SAAS,GAAE,KAAE,MAAK,KAAE;AAAA,MAAK,KAAK,OAAO,GAAG,OAAO,SAAS,MAAI,KAAE,KAAK,WAAW,GAAE,KAAE,MAAK,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,KAAE,KAAK,SAAS,GAAG,aAAY,kCAAkC,EAAE,SAAS,IAAG,KAAK,SAAS,GAAG,OAAO,cAAa,wBAA0B;AAAA,MAAG,OAAO,KAAK,YAAY,IAAI,GAAG,IAAE,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,SAAS,GAAG,GAAE;AAAA,MAAC,IAAI,KAAE,KAAK,UAAU,EAAE,SAAS;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,WAAU,2BAA6B;AAAA,MAAE,MAAM,KAAE,KAAK,SAAS,GAAG,eAAc,oCAAoC;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,OAAM,2BAA6B;AAAA,MAAE,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,IAAI,KAAE;AAAA,MAAK,KAAK,OAAO,GAAG,OAAO,KAAK,MAAI,KAAE,KAAK,SAAS,GAAG,aAAY,kCAAkC,EAAE,SAAS,IAAG,KAAK,SAAS,GAAG,OAAO,cAAa,2BAA6B;AAAA,MAAE,OAAO,KAAK,YAAY,IAAI,GAAG,IAAE,GAAE,SAAS,GAAE,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,MAAM,KAAE,KAAK,WAAW;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,SAAS,KAAK,GAAE;AAAA,MAAC,IAAI,KAAE,MAAK,KAAE;AAAA,MAAG,MAAM,KAAE,KAAK,UAAU;AAAA,MAAE,IAAI,KAAE;AAAA,MAAK,IAAG,KAAK,OAAO,GAAG,OAAO,SAAS,GAAE;AAAA,QAAC,KAAE,KAAK,WAAW,GAAE,KAAK,SAAS,QAAQ,IAAI,GAAE,IAAI,MAAI,KAAE,KAAK,SAAS,QAAQ,IAAI,GAAE,IAAI,EAAE;AAAA,QAAM,IAAI,KAAE;AAAA,QAAG,IAAG,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,UAAC,KAAE,KAAK,kBAAkB;AAAA,UAAE,IAAG;AAAA,YAAC,KAAE,GAAE,cAAc,KAAK,KAAK,EAAE,SAAS,GAAE,KAAE;AAAA,YAAM,OAAM,IAAE;AAAA,YAAC,KAAE;AAAA;AAAA,QAAK;AAAA,QAAC,KAAK,SAAS,GAAG,OAAO,cAAa,yBAA2B,GAAE,KAAE,KAAE,SAAS,EAAC,IAAE;AAAA,MAAE;AAAA,MAAC,MAAM,KAAE,KAAK,YAAY,IAAI,GAAG,GAAE,SAAS,GAAE,IAAE,IAAE,EAAC,CAAC;AAAA,MAAE,OAAO,MAAG,KAAK,qBAAqB,KAAK,EAAC,WAAU,IAAE,WAAU,GAAC,CAAC,GAAE;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,sBAAsB,GAAE;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,YAAY;AAAA,MAAE,OAAO,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,MAAK,IAAI,CAAC;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,kBAAkB;AAAA,MAAE,OAAO,KAAK,YAAY,IAAI,GAAG,KAAK,UAAU,EAAE,SAAS,GAAE,MAAK,IAAI,CAAC;AAAA,IAAE,IAAG,KAAK,OAAO,GAAG,oBAAoB,KAAG,KAAK,OAAO,GAAG,yBAAyB,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,UAAU;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,WAAU,gCAAkC;AAAA,MAAE,MAAM,KAAE,KAAK,WAAW;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,cAAa,gCAAkC,GAAE,KAAK,YAAY,IAAI,GAAG,GAAE,SAAS,GAAE,IAAE,IAAI,CAAC;AAAA,IAAC;AAAA,IAAC,IAAG,KAAK,OAAO,GAAG,oBAAoB,GAAE;AAAA,MAAC,MAAM,KAAE,KAAK,UAAU;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,WAAU,gCAAkC;AAAA,MAAE,MAAM,KAAE,KAAK,SAAS,GAAG,cAAa,uBAAuB,EAAE,SAAS;AAAA,MAAE,KAAK,SAAS,GAAG,OAAO,OAAM,kCAAoC;AAAA,MAAE,MAAM,KAAE,KAAK,SAAS,GAAG,aAAY,gDAAgD,EAAE,SAAS;AAAA,MAAE,OAAO,KAAK,SAAS,GAAG,OAAO,cAAa,gCAAkC,GAAE,KAAK,YAAY,IAAI,GAAG,GAAE,SAAS,GAAE,IAAE,EAAC,CAAC;AAAA,IAAC;AAAA,IAAC,OAAO;AAAA;AAAA,EAAK,UAAU,GAAE;AAAA,IAAC,IAAI,KAAE,CAAC;AAAA,IAAE,MAAK,KAAK,OAAO,GAAG,OAAO,IAAI,KAAG;AAAA,MAAC,MAAM,KAAE,KAAK,SAAS,GAAG,gBAAe,yBAAyB,GAAE,KAAE,KAAK,YAAY,IAAI,GAAG,GAAE,SAAS,GAAE,IAAI,CAAC;AAAA,MAAE,IAAG,KAAK,OAAO,GAAG,OAAO,UAAU,GAAE;AAAA,QAAC,IAAG,GAAE,QAAM,KAAK,SAAS,GAAG,kBAAiB,0BAA0B,EAAE,SAAS,GAAE,KAAK,OAAO,GAAG,OAAO,KAAK,GAAE;AAAA,UAAC,KAAK,SAAS;AAAA,UAAE,GAAE;AAAA,YAAC,MAAM,KAAE,KAAK,SAAS,GAAG,kBAAiB,0BAA0B,EAAE,SAAS;AAAA,YAAE,GAAE,iBAAiB,UAAQ,GAAE,QAAM,CAAC,GAAE,KAAK,IAAG,GAAE,MAAM,KAAK,EAAC;AAAA,UAAE,SAAO,KAAK,OAAO,GAAG,OAAO,KAAK;AAAA,QAAE;AAAA,QAAC,KAAK,SAAS,GAAG,OAAO,aAAY,cAAgB;AAAA,MAAE;AAAA,MAAC,GAAE,KAAK,EAAC;AAAA,IAAE;AAAA,IAAC,OAAU,GAAE,UAAL,IAAY,OAAK;AAAA;AAAE;AAAA;AAAC,MAAM,WAAW,GAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,MAAG,KAAK,OAAO,EAAC;AAAA;AAAA,EAAG,MAAM,CAAC,IAAE;AAAA,IAAC,MAAM,KAAG,IAAI,KAAI,MAAM,EAAC;AAAA,IAAE,KAAK,UAAU,EAAC;AAAA;AAAG;AAEp4kM,SAAS,qBAAqB,CAAC,MAAM,OAAO,YAAY;AAAA,EACpD,QAAQ,YAAY,mBAAmB;AAAA,EACvC,IAAI,gBAAgB;AAAA,IAChB,MAAM,KAAK,KAAK,YAAY;AAAA,IAC5B,OAAQ,MAAM,GAAG,UAAU,aAAc,KAAK;AAAA,EAClD;AAAA,EACA,OAAO,OAAO,OAAO,KAAK,WAAW,EAAE,OAAO,QAAM,GAAG,UAAU,UAAU,EAAE;AAAA;AAEjF,SAAS,iBAAiB,CAAC,MAAM,OAAO,YAAY;AAAA,EAChD,IAAI,CAAC,OAAO;AAAA,IACR,OAAO,CAAC;AAAA,EACZ;AAAA,EACA,MAAM,aAAa,sBAAsB,MAAM,OAAO,UAAU;AAAA,EAChE,OAAO,YAAY,aAAa,CAAC;AAAA;AAErC,IAAM,YAAY,CAAC,IAAG,OAAM,KAAK,KAAK,GAAE,UAAU,GAAE,OAAO;AAsB3D,SAAS,8BAA8B,CAAC,MAAM,MAAM;AAAA,EAChD,OAAO,MAAM,QAAQ,IAAI,IAAI,OAAO,CAAC,IAAI;AAAA,EACzC,MAAM,YAAY;AAAA,IACd,GAAG,kBAAkB,KAAK,IAAI,KAAK,QAAQ,eAAe,MAAM;AAAA,IAChE,GAAG,kBAAkB,KAAK,KAAK,SAAS,IAAI,KAAK,UAAU,eAAe,QAAQ;AAAA,IAClF,GAAG,kBAAkB,KAAK,IAAI,KAAK,SAAS,eAAe,OAAO;AAAA,EACtE;AAAA,EACA,MAAM,6CAA6C,CAAC;AAAA,EACpD,WAAW,YAAY,WAAW;AAAA,IAC9B,MAAM,2BAA2B,2CAA2C,SAAS,UAAU,IAAI;AAAA,IACnG,2CAA2C,SAAS,SAAS;AAAA,IAE7D,MAAM,QAAQ,yBAAyB,IAAI,SAAS,MAAM,OAAO;AAAA,IACjE,yBAAyB,IAAI,SAAS,MAAM,SAAS;AAAA,SAC9C,SAAS;AAAA,MACZ,YAAY,SAAS,MAAM,cAAc,OAAO,cAAc;AAAA,IAClE,CAAC;AAAA,EACL;AAAA,EACA,MAAM,cAAc,2CAA2C,IAAI,SAAM,EAAE,SAAS,CAAC,GAAG,GAAE,OAAO,CAAC,EAAE,KAAK,SAAS,EAAE,EAAE;AAAA,EACtH,SAAS,KAAI,EAAG,KAAI,YAAY,QAAQ,EAAE,IAAG;AAAA,IACzC,IAAI,CAAC,YAAY,KAAI;AAAA,MACjB,YAAY,MAAK,EAAE,SAAS,CAAC,EAAE;AAAA,IACnC;AAAA,EACJ;AAAA,EACA,OAAO;AAAA;AAEX,SAAS,iBAAiB,CAAC,SAAS,WAAW;AAAA,EAC3C,OAAO,OAAO,YAAY,UAAU,IAAI,QAAK;AAAA,IACzC,MAAM,iBAAiB,gBAAgB,SAAS,IAAG,CAAC;AAAA,IACpD,OAAO;AAAA,MACH,GAAE;AAAA,MACF;AAAA,QACI;AAAA,QACA,OAAO,GAAE;AAAA,QACT,SAAS,GAAE;AAAA,QACX,MAAM,eAAe;AAAA,MACzB;AAAA,IACJ;AAAA,GACH,CAAC;AAAA;AAEN,SAAS,oBAAoB,CAAC,SAAS,YAAY,QAAQ;AAAA,EAEvD,MAAM,SAAS,OAAO,YAAY,WAAW,QAAQ,IAAI,QAAK;AAAA,IAC1D,OAAO;AAAA,MACH,GAAE;AAAA,MACF;AAAA,QACI,QAAQ,GAAE;AAAA,QACV,MAAM,QAAQ,SAAS,GAAE,MAAM,CAAC;AAAA,MACpC;AAAA,IACJ;AAAA,GACH,CAAC;AAAA,EACF,OAAO;AAAA,IACH;AAAA,IACA,MAAM,WAAW;AAAA,IACjB;AAAA,EACJ;AAAA;AAEJ,SAAS,oBAAoB,CAAC,MAAM;AAAA,EAChC,IAAI,KAAK,KAAK,SAAS,OAAO,GAAG;AAAA,IAC7B,OAAO;AAAA,EACX;AAAA,EAEA,QAAQ,KAAK,QAAQ;AAAA,SACZ;AAAA,MAAO,OAAO;AAAA,SACd;AAAA,MAAO,OAAO;AAAA,SACd;AAAA,MAAO,OAAO;AAAA;AAAA,MAEf,MAAM,IAAI,MAAM,6BAA6B;AAAA;AAAA;AAGzD,SAAS,gBAAgB,CAAC,MAAM;AAAA,EAC5B,IAAI,KAAK,KAAK,SAAS,UAAU,GAAG;AAAA,IAChC,OAAO;AAAA,EACX;AAAA,EACA,IAAI,KAAK,KAAK,SAAS,YAAY,GAAG;AAAA,IAClC,OAAO;AAAA,EACX;AAAA,EACA,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG;AAAA,IAC1B,OAAO;AAAA,EACX;AAAA,EACA,IAAI,KAAK,KAAK,SAAS,IAAI,GAAG;AAAA,IAC1B,OAAO;AAAA,EACX;AAAA,EACA,IAAI,KAAK,KAAK,SAAS,MAAM,GAAG;AAAA,IAC5B,OAAO;AAAA,EACX;AAAA,EACA,OAAO;AAAA;AAEX,SAAS,uBAAuB,CAAC,MAAM;AAAA,EACnC,QAAQ,KAAK;AAAA,SACJ;AAAA,MAAQ,OAAO;AAAA,SACf;AAAA,MAAS,OAAO;AAAA,SAChB;AAAA,MAAc,OAAO;AAAA;AAAA,MAEtB,MAAM,IAAI,MAAM,gCAAgC;AAAA;AAAA;AAG5D,SAAS,cAAc,CAAC,MAAM;AAAA,EAE1B,OAAO,KAAK,KAAK,SAAS,aAAa,IACjC,eACA;AAAA;AAEV,SAAS,uBAAuB,CAAC,UAAU,YAAY;AAAA,EACnD,QAAQ,SAAS,QAAQ,SAAS;AAAA,EAClC,QAAQ,SAAS;AAAA,SACR,EAAE;AAAA,MACH,OAAO;AAAA,QACH;AAAA,QACA;AAAA,QACA,QAAQ;AAAA,aACA,SAAS,QAAQ,EAAE,gBAAgB,SAAS,KAAK;AAAA,QACzD;AAAA,MACJ;AAAA,SACC,EAAE;AAAA,MACH,OAAO;AAAA,QACH;AAAA,QACA;AAAA,QACA,QAAQ;AAAA,UACJ,MAAO,WAAW,MAAM,WAAW,SAAU,sBAAsB;AAAA,aAC/D,SAAS,QAAQ,EAAE,gBAAgB,SAAS,KAAK;AAAA,QACzD;AAAA,MACJ;AAAA,SACC,EAAE,SAAS;AAAA,MACZ,IAAI,KAAK,SAAS,oBAAoB;AAAA,QAClC,OAAO;AAAA,UACH;AAAA,UACA;AAAA,UACA,iBAAiB,CAAC;AAAA,QACtB;AAAA,MACJ;AAAA,MACA,MAAM,eAAe,KAAK,KAAK,SAAS,cAAc;AAAA,MACtD,OAAO;AAAA,QACH;AAAA,QACA;AAAA,QACA,SAAS;AAAA,UACL,YAAY,qBAAqB,IAAI;AAAA,UACrC,eAAe,iBAAiB,IAAI;AAAA,UACpC;AAAA,QACJ;AAAA,MACJ;AAAA,IACJ;AAAA,SACK,EAAE;AAAA,MACH,OAAO;AAAA,QACH;AAAA,QACA;AAAA,QACA,SAAS;AAAA,UACL,MAAM,eAAe,IAAI;AAAA,QAC7B;AAAA,MACJ;AAAA,SACC,EAAE;AAAA,MACH,OAAO;AAAA,QACH;AAAA,QACA;AAAA,QACA,gBAAgB;AAAA,UACZ,QAAQ,wBAAwB,IAAI;AAAA,UACpC,QAAQ,KAAK,OAAO;AAAA,UACpB,eAAe,iBAAiB,IAAI;AAAA,QACxC;AAAA,MACJ;AAAA;AAAA,MAEA,MAAM,IAAI,MAAM,uBAAuB;AAAA;AAAA;AAGnD,SAAS,cAAc,CAAC,WAAW,OAAO;AAAA,EACtC,MAAM,cAAc,CAAC;AAAA,EACrB,WAAW,QAAQ,WAAW;AAAA,IAC1B,YAAY,KAAK,QAAQ;AAAA,MACrB;AAAA,MACA,WAAW,KAAK,UAAU,IAAI,cAAY;AAAA,QACtC,QAAQ,MAAM,UAAU;AAAA,QACxB,OAAO;AAAA,UACH;AAAA,UACA;AAAA,UACA,OAAO,wBAAwB,UAAU,KAAK;AAAA,QAClD;AAAA,OACH;AAAA,IACL;AAAA,EACJ;AAAA,EACA,OAAO;AAAA;AAmCX,SAAS,yBAAyB,CAAC,MAAM;AAAA,EACrC,MAAM,UAAU,IAAI,GAAG,IAAI;AAAA,EAC3B,MAAM,UAAU,OAAO,YAAY,QAAQ,QAAQ,IAAI,gBAAc;AAAA,IACjE,OAAO,CAAC,WAAW,MAAM,qBAAqB,SAAS,YAAY,CAAC,CAAC;AAAA,GACxE,CAAC;AAAA,EACF,MAAM,WAAW,kBAAkB,SAAS,QAAQ,QAAQ;AAAA,EAC5D,MAAM,WAAW,kBAAkB,SAAS,QAAQ,QAAQ,OAAO,QAAK,GAAE,iBAAiB,EAAE,OAAO,CAAC;AAAA,EACrG,MAAM,kBAAkB,kBAAkB,SAAS,QAAQ,QAAQ,OAAO,QAAK,GAAE,iBAAiB,EAAE,cAAc,CAAC;AAAA,EACnH,MAAM,WAAW,kBAAkB,SAAS,QAAQ,SAAS,OAAO,QAAK,GAAE,KAAK,SAAS,kBAAkB,CAAC;AAAA,EAC5G,MAAM,mBAAmB,kBAAkB,SAAS,QAAQ,SAAS,OAAO,QAAK,GAAE,KAAK,SAAS,kBAAkB,CAAC;AAAA,EACpH,MAAM,WAAW,kBAAkB,SAAS,QAAQ,QAAQ;AAAA,EAC5D,MAAM,cAAc;AAAA,OACb,eAAe,QAAQ,MAAM,QAAQ,eAAe,MAAM;AAAA,OAC1D,eAAe,QAAQ,MAAM,UAAU,eAAe,QAAQ;AAAA,OAC9D,eAAe,QAAQ,MAAM,SAAS,eAAe,OAAO;AAAA,EACnE;AAAA,EACA,OAAO;AAAA,IACH;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,IACA;AAAA,EACJ;AAAA;AAEJ,SAAS,OAAM,CAAC,MAAM,MAAM,IAAI;AAAA,EAC5B,IAAI,CAAC,MAAM;AAAA,IACP,MAAM,IAAI,MAAM,GAAG;AAAA,EACvB;AAAA;AAkDJ,SAAS,eAAe,CAAC,SAAS,IAAG,QAAQ;AAAA,EACzC,QAAQ,GAAE;AAAA,SACD,EAAE;AAAA,SACF,EAAE;AAAA,SACF,EAAE;AAAA,MACH,OAAO,QAAQ,SAAS,GAAE,MAAM,MAAM;AAAA;AAAA,MAEtC,OAAO;AAAA,QACH,MAAM;AAAA,QACN,MAAM,GAAE,KAAK;AAAA,MACjB;AAAA;AAAA;AAGZ,SAAS,OAAO,CAAC,SAAS,UAAU,QAAQ;AAAA,EACxC,IAAI,SAAS,SAAS;AAAA,IAClB,QAAO,CAAC,SAAS,UAAU,yBAAyB;AAAA,IACpD,QAAO,CAAC,SAAS,UAAU,2BAA2B;AAAA,IACtD,MAAM,YAAY;AAAA,IAElB,OAAO;AAAA,MACH,MAAM,UAAU;AAAA,MAChB,aAAa,QAAQ,SAAS,UAAU,QAAQ,MAAM;AAAA,MACtD,aAAa,UAAU;AAAA,IAC3B;AAAA,EACJ,EACK,SAAI,SAAS,UAAU;AAAA,IACxB,QAAO,CAAC,SAAS,YAAY,4BAA4B;AAAA,IACzD,MAAM,aAAa;AAAA,IACnB,OAAO,qBAAqB,SAAS,YAAY,MAAM;AAAA,EAC3D,EACK;AAAA,IAED,MAAM,iBAAiB;AAAA,IACvB,MAAM,OAAO,SAAS,aAChB,GAAG,eAAe,QAAQ,eAAe,OAAO,UAChD,SAAS;AAAA,IAEf,OAAO;AAAA,MACH,MAAM,SAAS;AAAA,MACf;AAAA,IACJ;AAAA;AAAA;AA2CR,IAAM,WAAW,IAAI;AAoKrB,IAAM,4BAA4B,IAAI,IAAI;AAAA,EACtC,CAAC,WAAW,EAAE,SAAS,CAAC,SAAS,QAAQ,GAAG,gBAAgB,EAAE,CAAC;AAAA,EAC/D,CAAC,YAAY,EAAE,SAAS,CAAC,SAAS,QAAQ,GAAG,gBAAgB,EAAE,CAAC;AAAA,EAChE,CAAC,YAAY,EAAE,SAAS,CAAC,UAAU,SAAS,GAAG,gBAAgB,EAAE,CAAC;AAAA,EAClE,CAAC,aAAa,EAAE,SAAS,CAAC,UAAU,SAAS,GAAG,gBAAgB,EAAE,CAAC;AAAA,EACnE,CAAC,YAAY,EAAE,SAAS,CAAC,UAAU,SAAS,GAAG,gBAAgB,EAAE,CAAC;AAAA,EAClE,CAAC,aAAa,EAAE,SAAS,CAAC,UAAU,SAAS,GAAG,gBAAgB,EAAE,CAAC;AAAA,EACnE,CAAC,cAAc,EAAE,SAAS,CAAC,WAAW,SAAS,GAAG,gBAAgB,EAAE,CAAC;AAEzE,CAAC;AACD,IAAM,4BAA4B,IAAI,IAAI,CAAC,GAAG,0BAA0B,QAAQ,CAAC,EAAE,IAAI,EAAE,QAAQ,UAAU,IAAI,WAAW,CAAC,CAAC,IAAI,IAAI,GAAG,CAAC,IAAI,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC;;;ACtyC1J,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,aAAW,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAO,QAAQ,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAO,UAAU,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAO,SAAS,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAK;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW,IAAE,KAAK,SAAO,GAAE,KAAK,OAAK;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAY,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAa,UAAU,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAe,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,QAAM;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,UAAQ;AAAA;AAAA,MAAS,MAAM,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,aAAW,KAAK,KAAK,SAAO;AAAA;AAAA,MAAS,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,UAAQ,KAAK,KAAK,QAAM;AAAA;AAAA,MAAM,MAAM,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,UAAQ,KAAK,KAAK,SAAO,KAAK;AAAA;AAAK;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,KAAK,UAAQ,CAAC,GAAE,KAAK,QAAM,GAAE,KAAK,YAAU,IAAG,KAAK,UAAQ,IAAG,KAAK,QAAM;AAAA;AAAA,MAAO,QAAQ,GAAE;AAAA,IAAC,OAAM;AAAA;AAAG;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,KAAK,QAAM,GAAE,KAAK,SAAO;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,WAAW,GAAE;AAAA,IAAC,OAAM,SAAS,KAAK,OAAO,YAAY,MAAM,KAAK;AAAA;AAAS;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,KAAK,SAAO;AAAA;AAAA,MAAM,SAAS,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,WAAW,GAAE;AAAA,IAAC,OAAM,IAAI,KAAK,OAAO,YAAY;AAAA;AAAI;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,IAAE,EAAC,GAAE,KAAK,SAAO,IAAE,KAAK,SAAO;AAAA;AAAA,MAAM,UAAU,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,WAAW,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK;AAAA,IAAK,IAAU,KAAK,WAAZ,MAAmB;AAAA,MAAC,IAAY,OAAT,UAAqB,OAAT,UAAqB,OAAT,UAAuB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,UAAa;AAAA,QAAC,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAY,KAAK,OAAO,SAArB;AAAA,UAA0B,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,MAAC;AAAA,MAAC,MAAG,IAAI,KAAK,OAAO;AAAA,IAAO,EAAM,SAAY,OAAT,UAAqB,OAAT,UAAqB,OAAT;AAAA,MAAW,OAAO;AAAA,IAAE,OAAO;AAAA;AAAE;AAAC,IAAI;AAAA,CAAG,QAAG;AAAA,EAAC,GAAE,GAAE,UAAQ,KAAG,WAAU,GAAE,GAAE,UAAQ,KAAG,WAAU,GAAE,GAAE,UAAQ,KAAG,WAAU,GAAE,GAAE,UAAQ,KAAG,WAAU,GAAE,GAAE,iBAAe,KAAG;AAAA,GAAmB,OAAI,KAAE,CAAC,EAAE;AAAA;AAAE,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,QAAM,IAAE,KAAK,UAAQ,IAAE,KAAK,aAAW,IAAE,KAAK,eAAa,IAAE,KAAK,SAAO;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAY,QAAQ,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAa,UAAU,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAe,IAAI,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK;AAAA;AAAA,MAAS,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,QAAM;AAAA;AAAA,MAAM,OAAO,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,UAAQ;AAAA;AAAA,MAAS,MAAM,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,WAAS,KAAK,KAAK,aAAW,KAAK,KAAK,SAAO;AAAA;AAAA,MAAS,KAAK,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,UAAQ,KAAK,KAAK,QAAM;AAAA;AAAA,MAAM,MAAM,GAAE;AAAA,IAAC,OAAO,KAAK,KAAK,UAAQ,KAAK,KAAK,SAAO,KAAK;AAAA;AAAK;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAE;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,eAAa,IAAE,KAAK,WAAS,IAAE,KAAK,gBAAc;AAAA;AAAK;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,eAAa,IAAE,KAAK,WAAS;AAAA;AAAE;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW,IAAE,KAAK,KAAG;AAAA;AAAE;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW;AAAA;AAAE;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,KAAE,MAAK,IAAE;AAAA,IAAC,KAAK,QAAM,MAAK,KAAK,SAAO,CAAC,GAAE,KAAK,UAAQ,CAAC,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,aAAW,MAAK,KAAK,YAAU,CAAC,GAAE,KAAK,YAAU,CAAC,GAAE,KAAK,YAAU,IAAG,KAAK,UAAQ,IAAG,KAAK,QAAM,OAAG,KAAK,QAAM,IAAI,KAAI,KAAK,OAAK,IAAE,KAAK,QAAM,IAAE,KAAK,aAAW;AAAA;AAAE;AAAA;AAAC,MAAM,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,KAAK,SAAO,CAAC,GAAE,KAAK,WAAS,CAAC,GAAE,KAAK,UAAQ,CAAC;AAAA;AAAE;AAAC,IAAM,KAAE,IAAI,aAAa,CAAC;AAA1B,IAA4B,KAAE,IAAI,WAAW,GAAE,MAAM;AAArD,IAAuD,KAAE,IAAI,YAAY,CAAC;AAAE,SAAS,EAAC,CAAC,IAAE;AAAA,EAAC,GAAE,KAAG;AAAA,EAAE,MAAM,KAAE,GAAE,IAAG,KAAE,MAAG,KAAG;AAAA,EAAE,IAAI,KAAE,MAAG,KAAG,KAAI,KAAE,UAAQ;AAAA,EAAE,IAAS,OAAN;AAAA,IAAQ,OAAO,GAAE,KAAG,MAAG,KAAG,SAAW,OAAJ,IAAM,MAAI,IAAG,GAAE;AAAA,EAAG,IAAO,OAAJ,GAAM;AAAA,IAAC,IAAO,OAAJ;AAAA,MAAM,OAAO,GAAE,KAAG,MAAG,IAAG,GAAE;AAAA,IAAG,MAAG;AAAA,IAAQ,IAAI,KAAE;AAAA,IAAI,MAAK,EAAE,UAAQ;AAAA,MAAI,OAAI,GAAE;AAAA,IAAI,OAAO,KAAE,MAAI,IAAE,MAAG,SAAQ,KAAE,KAAG,MAAG,MAAG,MAAI,OAAI,MAAG,MAAI,KAAE,IAAG,GAAE,KAAG,MAAG,KAAG,MAAG,KAAG,MAAG,IAAG,GAAE,OAAK,GAAE,KAAG,MAAG,IAAG,GAAE;AAAA,EAAG;AAAA,EAAC,OAAO,KAAE,KAAE,MAAI,IAAG,MAAG,MAAI,GAAE,KAAG,MAAG,KAAG,OAAM,GAAE,MAAI,MAAG,IAAE,KAAE,OAAK,GAAE,KAAG,MAAG,IAAG,GAAE,OAAK,MAAG,UAAQ,OAAI,IAAE,IAAE,GAAE,KAAG,MAAG,KAAG,MAAG,IAAG,GAAE,OAAK,OAAI,IAAG,GAAE,KAAG,MAAG,KAAG,MAAG,KAAG,IAAE,GAAE;AAAA;AAAI,IAAM,KAAE,IAAI,YAAY,CAAC;AAAzB,IAA2B,KAAE,IAAI,aAAa,GAAE,QAAO,GAAE,CAAC;AAAE,SAAS,EAAC,CAAC,IAAE;AAAA,EAAC,MAAM,KAAE,OAAK,MAAG,IAAE,OAAK,MAAI,KAAG,OAAI;AAAA,EAAG,OAAO,GAAE,KAAG,IAAE,GAAE;AAAA;AAAG,SAAS,EAAC,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,EAAC,MAAM,KAAE,MAAG,OAAI,OAAI,OAAI,MAAG,KAAE,KAAE,KAAE;AAAA,EAAE,QAAO;AAAA,SAAO;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAS,OAAM,CAAC,GAAE,IAAE,IAAE,SAAQ,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAS,OAAM,CAAC,GAAE,IAAE,IAAE,SAAQ,CAAC,EAAE,EAAE;AAAA,SAAM,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,WAAU;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,SAAQ,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,WAAU;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,SAAQ,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK;AAAA,SAAsB,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,aAAY;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,SAAQ,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,aAAY;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,SAAQ,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK;AAAA,SAAsB,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAW,OAAM,CAAC,GAAE,IAAE,IAAE,WAAU,CAAC,EAAE,EAAE;AAAA,SAAM,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,aAAY;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,WAAU,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,eAAc;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,WAAU,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,MAAU,OAAM,CAAC,GAAE,IAAE,IAAE,UAAS,CAAC,EAAE,EAAE;AAAA,SAAM;AAAA,SAAmB;AAAA,SAAkB;AAAA,SAA2B;AAAA,SAAmB;AAAA,SAA4B;AAAA,MAAW,OAAM,CAAC,GAAE,IAAE,IAAE,WAAU,CAAC,EAAE,EAAE;AAAA,SAAM,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,YAAW;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,aAAY;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,WAAU,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,cAAa;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,UAAS,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,eAAc;AAAA,MAAC,MAAM,KAAE,GAAE,IAAE,IAAE,WAAU,CAAC;AAAA,MAAE,OAAM,CAAC,GAAE,IAAG,GAAE,IAAG,GAAE,IAAG,GAAE,EAAE;AAAA,IAAC;AAAA,SAAK,iBAAgB;AAAA,MAAC,MAAM,KAAE,IAAI,YAAY,GAAE,QAAO,IAAE,CAAC,EAAE,IAAG,MAAG,UAAQ,OAAI,IAAG,MAAG,aAAW,OAAI;AAAA,MAAG,OAAM,CAAC,GAAE,OAAK,EAAC,GAAE,GAAE,EAAC,GAAE,QAAQ,CAAC,IAAE;AAAA,QAAC,MAAM,KAAE,OAAK,MAAG,IAAE,OAAK,MAAI,KAAG,OAAI;AAAA,QAAG,OAAO,GAAE,KAAG,IAAE,GAAE;AAAA,QAAI,EAAC,GAAE,CAAC;AAAA,IAAC;AAAA;AAAA,EAAE,OAAO;AAAA;AAAK,SAAS,EAAC,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,EAAC,MAAM,KAAE,CAAC,GAAE,GAAE,GAAE,CAAC;AAAA,EAAE,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,IAAE,QAAO;AAAA,WAAO;AAAA,QAAS,GAAE,MAAG,GAAE,MAAG,KAAI;AAAA,QAAI;AAAA,WAAU;AAAA,QAAS,GAAE,MAAG,GAAE,MAAG,MAAI,IAAE,GAAE;AAAA,QAAI;AAAA,WAAU;AAAA,QAAQ,GAAE,MAAG,GAAE,KAAG;AAAA,QAAI;AAAA,WAAU;AAAA,QAAQ,GAAE,MAAG,GAAE,MAAG,KAAI;AAAA,QAAI;AAAA,WAAU;AAAA,QAAS,GAAE,MAAG,GAAE,MAAG,GAAE,KAAE,MAAI,GAAE,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAS,GAAE,OAAI,GAAE,MAAG,GAAE,KAAE,MAAI,KAAG,OAAM,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAU,GAAE,OAAI,KAAE,GAAE,MAAG,GAAE,KAAE,MAAI,GAAE,KAAO,WAAE,KAAO,WAAE,KAAO,WAAE,MAAG,QAAM,OAAI,IAAG,KAAE,OAAK,KAAM,MAAG,QAAM,OAAI,OAAjB,KAAsB,KAAE,KAAG,KAAG,KAAK,IAAI,GAAE,GAAG,KAAG,KAAE,KAAK,IAAI,GAAE,EAAE,KAAO,MAAJ,KAAM,KAAE,MAAI,IAAE,KAAG,KAAE,KAAG,MAAI,KAAE,KAAG,KAAG,KAAK,IAAI,GAAE,KAAE,EAAE,KAAG,IAAE,KAAE,KAAK,IAAI,GAAE,EAAE,KAAI,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,WAAa;AAAA,QAAS,GAAE,MAAG,GAAE,MAAG,GAAE,KAAE,MAAI,IAAE,GAAE,KAAE,MAAI,KAAG,GAAE,KAAE,MAAI,IAAG,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAU,GAAE,MAAG,IAAI,aAAa,GAAE,QAAO,IAAE,CAAC,EAAE,IAAG,MAAG;AAAA;AAAA,EAAE,IAAI,IAAE,IAAE,IAAE;AAAA,EAAE,OAAO;AAAA;AAAE,SAAS,EAAC,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,EAAC,SAAQ,KAAE,EAAE,KAAE,IAAE,EAAE;AAAA,IAAE,QAAO;AAAA,WAAO;AAAA,QAAS,GAAE,MAAG,MAAI,GAAE,KAAG;AAAA,QAAI;AAAA,WAAU;AAAA,QAAS,GAAE,MAAG,OAAI,GAAE,MAAG,KAAG,KAAI;AAAA,QAAI;AAAA,WAAU;AAAA,QAAQ,GAAE,MAAG,GAAE,KAAG;AAAA,QAAI;AAAA,WAAU;AAAA,QAAQ,GAAE,MAAG,GAAE,MAAG,KAAI;AAAA,QAAI;AAAA,WAAU;AAAA,QAAS,IAAI,YAAY,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE,KAAG,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAS,IAAI,WAAW,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE,KAAG,MAAG;AAAA,QAAE;AAAA,WAAU,WAAU;AAAA,QAAC,MAAM,KAAE,GAAE,GAAE,GAAE;AAAA,QAAE,IAAI,YAAY,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,IAAE,MAAG;AAAA,QAAE;AAAA,MAAK;AAAA,WAAK;AAAA,QAAS,IAAI,YAAY,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE,KAAG,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAS,IAAI,WAAW,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE,KAAG,MAAG;AAAA,QAAE;AAAA,WAAU;AAAA,QAAU,IAAI,aAAa,GAAE,QAAO,IAAE,CAAC,EAAE,KAAG,GAAE,KAAG,MAAG;AAAA;AAAA,EAAE,OAAO;AAAA;AAAE,IAAM,KAAE,EAAC,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,QAAO,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,QAAO,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,WAAU,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,WAAU,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,WAAU,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,aAAY,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,SAAQ,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,WAAU,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,YAAW,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,aAAY,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,aAAY,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,cAAa,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,eAAc,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,UAAS,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,OAAG,YAAW,MAAG,UAAS,EAAC,GAAE,cAAa,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,MAAG,YAAW,OAAG,UAAS,EAAC,GAAE,aAAY,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,MAAG,YAAW,OAAG,iBAAgB,gBAAe,UAAS,EAAC,GAAE,wBAAuB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,MAAG,YAAW,MAAG,iBAAgB,gBAAe,UAAS,EAAC,GAAE,cAAa,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,MAAG,YAAW,OAAG,UAAS,EAAC,GAAE,yBAAwB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,gBAAe,MAAG,UAAS,MAAG,YAAW,MAAG,mBAAkB,gBAAe,UAAS,EAAC,GAAE,cAAa,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,OAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,eAAc,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,eAAc,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,gBAAe,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,gBAAe,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,oBAAmB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,yBAAwB,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,wBAAuB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,gBAAe,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,gBAAe,EAAC,eAAc,GAAE,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,iBAAgB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,iBAAgB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,kBAAiB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,uBAAsB,EAAC,eAAc,IAAG,YAAW,GAAE,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,wBAAuB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,wBAAuB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,mBAAkB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,wBAAuB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,GAAE,cAAa,MAAG,UAAS,EAAC,GAAE,oBAAmB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,GAAE,yBAAwB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,GAAE,oBAAmB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,GAAE,yBAAwB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,GAAE,oBAAmB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,GAAE,yBAAwB,EAAC,eAAc,IAAG,YAAW,IAAG,aAAY,IAAG,cAAa,MAAG,UAAS,EAAC,EAAC;AAAA;AAAE,MAAM,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,KAAK,KAAG,GAAE,OAAM,KAAK,OAAK;AAAA;AAAA,MAAM,SAAS,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,MAAM,CAAC,IAAE;AAAA,IAAC,GAAE,IAAI;AAAA;AAAA,EAAE,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,IAAG,IAAE;AAAA,MAAC,GAAE,GAAE,QAAQ;AAAA,MAAE,WAAU,MAAK;AAAA,QAAE,cAAa,QAAM,KAAK,YAAY,IAAE,EAAC,IAAE,GAAE,OAAO,EAAC;AAAA,MAAE,GAAE,GAAE,QAAQ;AAAA,IAAC;AAAA;AAAA,EAAE,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,IAAI,MAAM,sBAAsB;AAAA;AAAA,EAAE,mBAAmB,CAAC,IAAE;AAAA,IAAC,OAAO,KAAK,cAAc,EAAC,EAAE,SAAS;AAAA;AAAE;AAAC,GAAE,MAAI;AAAA;AAAE,MAAM,WAAU,GAAC;AAAC;AAAC,GAAE,WAAS,IAAI;AAAA;AAAE,MAAM,WAAU,GAAC;AAAC;AAAC,GAAE,WAAS,IAAI;AAAE,IAAM,KAAE,IAAI,IAAI,CAAC,OAAM,OAAM,OAAM,UAAS,eAAc,OAAM,QAAO,SAAQ,QAAO,SAAQ,QAAO,SAAQ,SAAQ,QAAO,SAAQ,OAAM,QAAO,qBAAoB,gBAAe,sBAAqB,SAAQ,WAAU,eAAc,YAAW,OAAM,gBAAe,gBAAe,OAAM,QAAO,eAAc,eAAc,mBAAkB,oBAAmB,SAAQ,OAAM,SAAQ,SAAQ,cAAa,eAAc,SAAQ,UAAS,OAAM,QAAO,OAAM,OAAM,OAAM,QAAO,aAAY,OAAM,iBAAgB,WAAU,WAAU,WAAU,eAAc,SAAQ,YAAW,QAAO,OAAM,QAAO,cAAa,QAAO,QAAO,OAAM,QAAO,aAAY,SAAQ,QAAO,cAAa,YAAW,QAAO,cAAa,YAAW,UAAS,gBAAe,cAAa,qBAAoB,iBAAgB,wBAAuB,eAAc,oBAAmB,oBAAmB,qBAAoB,iBAAgB,qBAAoB,wBAAuB,6BAA4B,qBAAoB,sBAAqB,gCAA+B,gBAAe,cAAa,eAAc,aAAY,aAAY,aAAY,aAAY,aAAY,YAAW,aAAY,kBAAiB,6BAA4B,gBAAe,gBAAe,YAAW,YAAW,gBAAe,iBAAgB,iBAAgB,iBAAgB,iBAAgB,kBAAiB,kBAAiB,cAAa,cAAa,mBAAkB,mBAAkB,mBAAkB,kBAAiB,kBAAiB,oBAAmB,wBAAuB,eAAc,wBAAuB,wBAAuB,eAAc,eAAc,eAAc,kBAAiB,qBAAoB,0BAAyB,iBAAgB,eAAc,eAAc,eAAc,wBAAuB,wBAAuB,cAAa,mBAAkB,uBAAsB,qBAAoB,sBAAqB,eAAc,iBAAgB,oBAAmB,aAAY,WAAW,CAAC;AAAA;AAAE,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,QAAM,IAAI,KAAI,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,aAAW,IAAE,KAAK,OAAK,IAAE,KAAK,YAAU,IAAE,KAAK,UAAQ;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAW,MAAM,CAAC,IAAE;AAAA,IAAC,IAAG,KAAK;AAAA,MAAW,WAAU,MAAK,KAAK;AAAA,QAAW,GAAE,EAAC;AAAA,IAAE,GAAE,IAAI;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAK,GAAE,EAAC;AAAA,IAAE,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAe,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,WAAW,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,YAAU,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAQ,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,UAAU,OAAO,EAAC,GAAE,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,SAAO;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAa,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,YAAU,IAAE,KAAK,YAAU,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAM,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI,IAAE,IAAE;AAAA,KAAU,KAAE,KAAK,UAAf,QAA+B,OAAJ,aAAO,GAAE,OAAO,EAAC,IAAU,KAAE,KAAK,eAAf,QAAoC,OAAJ,aAAO,GAAE,OAAO,EAAC,IAAU,KAAE,KAAK,eAAf,QAAoC,OAAJ,aAAO,GAAE,OAAO,EAAC,GAAE,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW,MAAK,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,UAAQ,IAAE,KAAK,SAAO,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAM,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,GAAE,IAAI,IAAU,KAAE,KAAK,WAAf,QAAgC,OAAJ,aAAO,GAAE,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW,MAAK,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAW,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,KAAU,KAAE,KAAK,WAAf,QAAgC,OAAJ,aAAO,GAAE,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW,MAAK,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,UAAQ,IAAE,KAAK,SAAO,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAM,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,GAAE,IAAI,IAAU,KAAE,KAAK,WAAf,QAAgC,OAAJ,aAAO,GAAE,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW,MAAK,KAAK,OAAK,IAAE,KAAK,OAAK,IAAE,KAAK,UAAQ,IAAE,KAAK,SAAO,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAQ,aAAa,CAAC,IAAE,IAAE;AAAA,IAAC,OAAO,KAAK,MAAM,cAAc,IAAE,EAAC;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,IAAE,GAAE,IAAI,IAAU,KAAE,KAAK,WAAf,QAAgC,OAAJ,aAAO,GAAE,OAAO,EAAC;AAAA;AAAE;AAAC,IAAI;AAAJ,IAAM;AAAN,IAAQ;AAAR,IAAU;AAAA,CAAG,QAAG;AAAA,EAAC,GAAE,YAAU,MAAK,GAAE,YAAU;AAAA,GAAO,OAAI,KAAE,CAAC,EAAE,IAAG,QAAG;AAAA,EAAC,GAAE,QAAM,QAAQ,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE;AAAA,IAAE,IAAY,MAAT;AAAA,MAAW,MAAM,IAAI,MAAM,qCAAqC;AAAA,IAAE,OAAO,GAAE;AAAA;AAAA,GAAM,OAAI,KAAE,CAAC,EAAE;AAAA;AAAE,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,WAAS,IAAE,KAAK,WAAS;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAY,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,SAAS,OAAO,EAAC;AAAA;AAAE;AAAA,CAAE,QAAG;AAAA,EAAC,GAAE,SAAO,KAAI,GAAE,YAAU,MAAK,GAAE,gBAAc,MAAK,GAAE,iBAAe,MAAK,GAAE,eAAa,MAAK,GAAE,eAAa,MAAK,GAAE,YAAU,MAAK,GAAE,WAAS,MAAK,GAAE,YAAU,MAAK,GAAE,kBAAgB,OAAM,GAAE,mBAAiB;AAAA,GAAQ,OAAI,KAAE,CAAC,EAAE,IAAG,QAAG;AAAA,EAAC,GAAE,QAAM,QAAQ,CAAC,IAAE;AAAA,IAAC,MAAM,KAAE;AAAA,IAAE,IAAY,MAAT;AAAA,MAAW,MAAM,IAAI,MAAM,kCAAkC;AAAA,IAAE,OAAO;AAAA;AAAA,GAAK,OAAI,KAAE,CAAC,EAAE;AAAA;AAAE,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,WAAS,IAAE,KAAK,WAAS,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAS,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,SAAS,OAAO,EAAC,GAAE,KAAK,MAAM,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAO,SAAS,GAAE;AAAA,IAAC,OAAO,GAAE,IAAI,KAAK,IAAI;AAAA;AAAA,EAAE,MAAM,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAK,GAAE,OAAO,EAAC;AAAA,IAAE,GAAE,IAAI;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,aAAW;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAO;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,YAAU,IAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAS,MAAM,CAAC,IAAE;AAAA,IAAC,GAAE,IAAI;AAAA,IAAE,WAAU,MAAK,KAAK;AAAA,MAAM,GAAE,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,YAAU,IAAE,KAAK,OAAK,IAAE,KAAK,SAAO,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAK,MAAM,CAAC,IAAE;AAAA,IAAC,KAAK,UAAU,OAAO,EAAC,GAAE,KAAK,YAAY,KAAK,MAAK,EAAC,GAAE,KAAK,YAAY,KAAK,QAAO,EAAC,GAAE,KAAK,YAAY,KAAK,MAAK,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,QAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAS,MAAM,CAAC,IAAE;AAAA,IAAC,IAAI;AAAA,KAAU,KAAE,KAAK,WAAf,QAAgC,OAAJ,aAAO,GAAE,OAAO,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAS;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAW;AAAA;AAAC,MAAM,WAAU,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,WAAS,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAa;AAAA;AAAC,MAAM,YAAW,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,OAAK,IAAE,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAQ;AAAA;AAAC,MAAM,YAAW,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAU;AAAA;AAAC,MAAM,YAAW,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM,GAAE,KAAK,YAAU,MAAK,KAAK,SAAO;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAQ;AAAA;AAAC,MAAM,YAAW,GAAC;AAAA,EAAC,WAAW,GAAE;AAAA,IAAC,MAAM,GAAE,KAAK,SAAO;AAAA;AAAA,MAAO,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAW;AAAA;AAAC,MAAM,YAAW,GAAC;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,GAAE,KAAK,aAAW,MAAK,KAAK,OAAK;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAW,QAAQ,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAO,OAAO,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,SAAU,aAAa,CAAC,IAAE;AAAA,IAAC,IAAI,KAAE,GAAE;AAAA,IAAG,IAAW,GAAE,SAAV;AAAA,MAAe,OAAO;AAAA,IAAE,SAAQ,KAAE,EAAE,KAAE,GAAE,QAAO,EAAE,IAAE;AAAA,MAAC,MAAM,KAAE,IAAG,UAAU,IAAI,GAAE,IAAI;AAAA,MAAE,IAAG,UAAU,IAAI,GAAE,IAAG,IAAI,IAAE,OAAI,KAAE,GAAE;AAAA,IAAG;AAAA,IAAC,OAAc,GAAE,SAAV,QAAe,IAAG,MAAI;AAAA;AAAA,EAAE,WAAW,GAAE;AAAA,IAAC,OAAO,KAAK;AAAA;AAAK;AAAC,IAAG,MAAI,IAAI,IAAG,KAAK,GAAE,IAAG,MAAI,IAAI,IAAG,KAAK,GAAE,IAAG,MAAI,IAAI,IAAG,KAAK,GAAE,IAAG,MAAI,IAAI,IAAG,KAAK,GAAE,IAAG,MAAI,IAAI,IAAG,KAAK,GAAE,IAAG,OAAK,IAAI,IAAG,MAAM,GAAE,IAAG,OAAK,IAAI,IAAG,MAAM,GAAE,IAAG,YAAU,IAAI,IAAI,CAAC,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,GAAE,CAAC,OAAM,CAAC,CAAC,CAAC;AAAA;AAAE,MAAM,YAAW,IAAE;AAAA,EAAC,WAAW,CAAC,IAAE;AAAA,IAAC,MAAM,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,YAAW,IAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,UAAQ,IAAE,KAAK,YAAU,IAAE,KAAK,UAAQ;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,MAAa,QAAQ,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAG,cAAc,CAAC,IAAE;AAAA,IAAC,SAAQ,KAAE,EAAE,KAAE,KAAK,QAAQ,QAAO;AAAA,MAAI,IAAG,KAAK,QAAQ,IAAG,QAAM;AAAA,QAAE,OAAO;AAAA,IAAE,OAAM;AAAA;AAAA,EAAG,MAAM,CAAC,IAAE;AAAA,IAAC,WAAU,MAAK,KAAK;AAAA,MAAQ,GAAE,EAAC;AAAA;AAAE;AAAA;AAAC,MAAM,YAAW,IAAE;AAAA,EAAC,WAAW,CAAC,IAAE,IAAE,IAAE;AAAA,IAAC,MAAM,EAAC,GAAE,KAAK,SAAO,IAAE,KAAK,SAAO;AAAA;AAAA,MAAM,WAAW,GAAE;AAAA,IAAC,OAAM;AAAA;AAAA,EAAW,WAAW,GAAE;AAAA,IAAC,IAAI,KAAE,KAAK;AAAA,IAAK,IAAU,KAAK,WAAZ,MAAmB;AAAA,MAAC,IAAY,OAAT,UAAqB,OAAT,UAAqB,OAAT,UAAuB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,YAAyB,OAAX,UAAa;AAAA,QAAC,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,QAAE,IAAY,KAAK,OAAO,SAArB;AAAA,UAA0B,OAAO,MAAG,KAAI;AAAA,QAAE,IAAW,KAAK,OAAO,SAApB;AAAA,UAAyB,OAAO,MAAG,KAAI;AAAA,MAAC;AAAA,MAAC,MAAG,IAAI,KAAK,OAAO;AAAA,IAAO,EAAM,SAAY,OAAT,UAAqB,OAAT,UAAqB,OAAT;AAAA,MAAW,OAAO;AAAA,IAAE,OAAO;AAAA;AAAE;AAAC,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAA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",
48
- "debugId": "6E0EAD9B5EBDC37664756E2164756E21",
47
+ "mappings": "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I,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,KAAI,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,QAAM,IAAI,GAAG,QAAO,GAAG,MAAK,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAAE,GAAG,UAAQ,IAAI,GAAG,UAAS,GAAG,KAAI,IAAI,GAA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IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,KAAI,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,QAAM,IAAI,IAAG,QAAO,IAAG,MAAK,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,IAAI,IAAG,UAAS,IAAG,KAAI,IAAI,GAAE,IAAG,UAAQ,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",
48
+ "debugId": "8FA83A386B693B6064756E2164756E21",
49
49
  "names": []
50
50
  }