@mateuszjs/magic-render 0.0.1-next.2 → 0.0.1-next.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/index.mjs +1 -0
- package/lib/types/crate/glue_code.d.ts +2 -0
- package/lib/types/crate/glue_code.d.ts.map +1 -0
- package/lib/types/crate/pkg/index_bg.d.ts +44 -0
- package/lib/types/crate/pkg/index_bg.d.ts.map +1 -0
- package/lib/types/src/WebGPU/canvasSizeObserver.d.ts.map +1 -0
- package/lib/types/src/WebGPU/getDevice.d.ts.map +1 -0
- package/lib/types/src/WebGPU/getTexture/createCheckedImageData.d.ts.map +1 -0
- package/lib/types/src/WebGPU/getTexture/generateMimapsArray.d.ts.map +1 -0
- package/lib/types/src/WebGPU/getTexture/index.d.ts.map +1 -0
- package/lib/types/src/WebGPU/m3.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/blur/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/draw3dModel/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/draw3dModelLight/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/draw3dModelTexture/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/drawBezier/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/drawTexture/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/drawTriangle/getProgram.d.ts.map +1 -0
- package/lib/types/src/WebGPU/programs/initPrograms.d.ts.map +1 -0
- package/lib/types/src/__test__/index.test.d.ts.map +1 -0
- package/lib/types/src/components/Preview/index.d.ts.map +1 -0
- package/lib/types/src/consts.d.ts.map +1 -0
- package/lib/types/src/getCanvasMatrix.d.ts.map +1 -0
- package/lib/types/src/getCanvasRenderDescriptor.d.ts.map +1 -0
- package/lib/types/src/getDepthTexture.d.ts.map +1 -0
- package/lib/types/src/getRenderDescriptor.d.ts.map +1 -0
- package/{dist → lib/types/src}/index.d.ts +1 -2
- package/lib/types/src/index.d.ts.map +1 -0
- package/lib/types/src/models/Video/MiniatureVideo.d.ts.map +1 -0
- package/{dist → lib/types/src}/run.d.ts +1 -1
- package/lib/types/src/run.d.ts.map +1 -0
- package/lib/types/src/types.d.ts.map +1 -0
- package/lib/types/src/utils/atNormIndex.d.ts.map +1 -0
- package/lib/types/src/utils/captureCanvasStream.d.ts.map +1 -0
- package/lib/types/src/utils/captureCanvasStreamWasm.d.ts.map +1 -0
- package/lib/types/src/utils/clamp.d.ts.map +1 -0
- package/lib/types/src/utils/distancePointToLine.d.ts.map +1 -0
- package/lib/types/src/utils/fitCurve.d.ts.map +1 -0
- package/lib/types/src/utils/getAngle.d.ts.map +1 -0
- package/lib/types/src/utils/getAngleDiff.d.ts.map +1 -0
- package/lib/types/src/utils/getBezierPos.d.ts.map +1 -0
- package/lib/types/src/utils/getBezierTan.d.ts.map +1 -0
- package/lib/types/src/utils/getCurveLength.d.ts.map +1 -0
- package/lib/types/src/utils/getDistance.d.ts.map +1 -0
- package/lib/types/src/utils/mat4.d.ts.map +1 -0
- package/lib/types/src/utils/normalizeVec2.d.ts.map +1 -0
- package/lib/types/src/utils/resizeArray.d.ts.map +1 -0
- package/lib/types/src/utils/vec3.d.ts.map +1 -0
- package/package.json +8 -10
- package/dist/2e9c8dbbfc49aa9c830e.module.wasm +0 -0
- package/dist/701.53ef6be51135b1f869af.js +0 -1
- package/dist/WebGPU/canvasSizeObserver.d.ts.map +0 -1
- package/dist/WebGPU/getDevice.d.ts.map +0 -1
- package/dist/WebGPU/getTexture/createCheckedImageData.d.ts.map +0 -1
- package/dist/WebGPU/getTexture/generateMimapsArray.d.ts.map +0 -1
- package/dist/WebGPU/getTexture/index.d.ts.map +0 -1
- package/dist/WebGPU/m3.d.ts.map +0 -1
- package/dist/WebGPU/programs/blur/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/draw3dModel/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/draw3dModelLight/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/draw3dModelTexture/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/drawBezier/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/drawTexture/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/drawTriangle/getProgram.d.ts.map +0 -1
- package/dist/WebGPU/programs/initPrograms.d.ts.map +0 -1
- package/dist/__test__/index.test.d.ts.map +0 -1
- package/dist/components/Preview/index.d.ts.map +0 -1
- package/dist/consts.d.ts.map +0 -1
- package/dist/getCanvasMatrix.d.ts.map +0 -1
- package/dist/getCanvasRenderDescriptor.d.ts.map +0 -1
- package/dist/getDepthTexture.d.ts.map +0 -1
- package/dist/getRenderDescriptor.d.ts.map +0 -1
- package/dist/index.60c4a3a7fc17987014f5.js +0 -1
- package/dist/index.d.ts.map +0 -1
- package/dist/index.html +0 -13
- package/dist/models/Video/MiniatureVideo.d.ts.map +0 -1
- package/dist/run.d.ts.map +0 -1
- package/dist/test-runtime.63d51731843ade072b76.js +0 -1
- package/dist/test.js +0 -1
- package/dist/types.d.ts.map +0 -1
- package/dist/utils/atNormIndex.d.ts.map +0 -1
- package/dist/utils/captureCanvasStream.d.ts.map +0 -1
- package/dist/utils/captureCanvasStreamWasm.d.ts.map +0 -1
- package/dist/utils/clamp.d.ts.map +0 -1
- package/dist/utils/distancePointToLine.d.ts.map +0 -1
- package/dist/utils/fitCurve.d.ts.map +0 -1
- package/dist/utils/getAngle.d.ts.map +0 -1
- package/dist/utils/getAngleDiff.d.ts.map +0 -1
- package/dist/utils/getBezierPos.d.ts.map +0 -1
- package/dist/utils/getBezierTan.d.ts.map +0 -1
- package/dist/utils/getCurveLength.d.ts.map +0 -1
- package/dist/utils/getDistance.d.ts.map +0 -1
- package/dist/utils/mat4.d.ts.map +0 -1
- package/dist/utils/normalizeVec2.d.ts.map +0 -1
- package/dist/utils/resizeArray.d.ts.map +0 -1
- package/dist/utils/vec3.d.ts.map +0 -1
- /package/{dist → lib/types/src}/WebGPU/canvasSizeObserver.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/getDevice.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/getTexture/createCheckedImageData.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/getTexture/generateMimapsArray.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/getTexture/index.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/m3.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/blur/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/draw3dModel/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/draw3dModelLight/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/draw3dModelTexture/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/drawBezier/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/drawTexture/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/drawTriangle/getProgram.d.ts +0 -0
- /package/{dist → lib/types/src}/WebGPU/programs/initPrograms.d.ts +0 -0
- /package/{dist → lib/types/src}/__test__/index.test.d.ts +0 -0
- /package/{dist → lib/types/src}/components/Preview/index.d.ts +0 -0
- /package/{dist → lib/types/src}/consts.d.ts +0 -0
- /package/{dist → lib/types/src}/getCanvasMatrix.d.ts +0 -0
- /package/{dist → lib/types/src}/getCanvasRenderDescriptor.d.ts +0 -0
- /package/{dist → lib/types/src}/getDepthTexture.d.ts +0 -0
- /package/{dist → lib/types/src}/getRenderDescriptor.d.ts +0 -0
- /package/{dist → lib/types/src}/models/Video/MiniatureVideo.d.ts +0 -0
- /package/{dist → lib/types/src}/types.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/atNormIndex.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/captureCanvasStream.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/captureCanvasStreamWasm.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/clamp.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/distancePointToLine.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/fitCurve.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getAngle.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getAngleDiff.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getBezierPos.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getBezierTan.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getCurveLength.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/getDistance.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/mat4.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/normalizeVec2.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/resizeArray.d.ts +0 -0
- /package/{dist → lib/types/src}/utils/vec3.d.ts +0 -0
package/lib/index.mjs
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
var A={d:(I,g)=>{for(var Q in g)A.o(g,Q)&&!A.o(I,Q)&&Object.defineProperty(I,Q,{enumerable:!0,get:g[Q]})},o:(A,I)=>Object.prototype.hasOwnProperty.call(A,I),r:A=>{"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(A,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(A,"__esModule",{value:!0})}},I={};A.d(I,{A:()=>BA});var g={};function Q(A,I,g,Q){A.width=Math.max(1,Math.min(I,Q.limits.maxTextureDimension2D)),A.height=Math.max(1,Math.min(g,Q.limits.maxTextureDimension2D))}A.r(g),A.d(g,{State:()=>Z,__wbg_error_53abcd6a461f73d8:()=>$,__wbg_new_034f913e7636e987:()=>O,__wbg_new_e69b5f66fda8f13c:()=>X,__wbg_set_20cbc34131e76824:()=>V,__wbg_set_425e70f7c64ac962:()=>P,__wbg_set_wasm:()=>L,__wbg_stringify_eead5648c09faaf8:()=>W,__wbindgen_init_externref_table:()=>AA,__wbindgen_is_undefined:()=>T,__wbindgen_number_new:()=>v,__wbindgen_string_get:()=>z,__wbindgen_string_new:()=>j,__wbindgen_throw:()=>_});var B=function(A,I,g,Q){return new(g||(g=Promise))((function(B,C){function E(A){try{o(Q.next(A))}catch(A){C(A)}}function i(A){try{o(Q.throw(A))}catch(A){C(A)}}function o(A){var I;A.done?B(A.value):(I=A.value,I instanceof g?I:new g((function(A){A(I)}))).then(E,i)}o((Q=Q.apply(A,I||[])).next())}))};const C={fromMat4:(A,I=new Float32Array(12))=>(I[0]=A[0],I[1]=A[1],I[2]=A[2],I[4]=A[4],I[5]=A[5],I[6]=A[6],I[8]=A[8],I[9]=A[9],I[10]=A[10],I),projection:(A,I,g=new Float32Array(12))=>(g[0]=2/A,g[1]=0,g[2]=0,g[4]=0,g[5]=-2/I,g[6]=0,g[8]=-1,g[9]=1,g[10]=1,g),identity:(A=new Float32Array(12))=>(A[0]=1,A[1]=0,A[2]=0,A[4]=0,A[5]=1,A[6]=0,A[8]=0,A[9]=0,A[10]=1,A),multiply(A,I,g=new Float32Array(12)){g=g||new Float32Array(12);const Q=A[0],B=A[1],C=A[2],E=A[4],i=A[5],o=A[6],e=A[8],D=A[9],t=A[10],w=I[0],a=I[1],s=I[2],n=I[4],r=I[5],c=I[6],F=I[8],G=I[9],h=I[10];return g[0]=w*Q+a*E+s*e,g[1]=w*B+a*i+s*D,g[2]=w*C+a*o+s*t,g[4]=n*Q+r*E+c*e,g[5]=n*B+r*i+c*D,g[6]=n*C+r*o+c*t,g[8]=F*Q+G*E+h*e,g[9]=F*B+G*i+h*D,g[10]=F*C+G*o+h*t,g},translation:([A,I],g=new Float32Array(12))=>(g[0]=1,g[1]=0,g[2]=0,g[4]=0,g[5]=1,g[6]=0,g[8]=A,g[9]=I,g[10]=1,g),rotation(A,I=new Float32Array(12)){const g=Math.cos(A),Q=Math.sin(A);return I[0]=g,I[1]=Q,I[2]=0,I[4]=-Q,I[5]=g,I[6]=0,I[8]=0,I[9]=0,I[10]=1,I},scaling:([A,I],g=new Float32Array(12))=>(g[0]=A,g[1]=0,g[2]=0,g[4]=0,g[5]=I,g[6]=0,g[8]=0,g[9]=0,g[10]=1,g),translate:(A,I,g=new Float32Array(12))=>C.multiply(A,C.translation(I),g),rotate:(A,I,g=new Float32Array(12))=>C.multiply(A,C.rotation(I),g),scale:(A,I,g=new Float32Array(12))=>C.multiply(A,C.scaling(I),g)},E=C,i="struct Uniforms {\n color: vec4f,\n matrix: mat3x3f,\n};\n\nstruct Vertex {\n @location(0) position: vec2f,\n};\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n};\n\n@group(0) @binding(0) var<uniform> uni: Uniforms;\n\n@vertex fn vs(vert: Vertex) -> VSOutput {\n var vsOut: VSOutput;\n\n let clipSpace = (uni.matrix * vec3f(vert.position, 1)).xy;\n vsOut.position = vec4f(clipSpace, 0.0, 1.0);\n return vsOut;\n}\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n return uni.color;\n}\n",o="struct Uniforms {\n matrix: mat4x4f,\n zoom: f32,\n};\n\nstruct Vertex {\n @location(0) t: f32,\n @location(1) dir: f32,\n @location(2) segmentIndex: u32,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n\n@group(0) @binding(1) var<storage> points: array<vec2f>;\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) color: vec4f,\n};\n\n@vertex fn vs(vert: Vertex) -> VSOutput {\n var vsOut: VSOutput;\n \n let p1 = points[vert.segmentIndex * 4 + 0];\n let p2 = points[vert.segmentIndex * 4 + 1];\n let p3 = points[vert.segmentIndex * 4 + 2];\n let p4 = points[vert.segmentIndex * 4 + 3];\n\n let t2 = vert.t * vert.t;\n let one_minus_t = 1.0 - vert.t;\n let one_minus_t2 = one_minus_t * one_minus_t;\n let pos = p1 * one_minus_t2 * one_minus_t + p2 * 3.0 * vert.t * one_minus_t2 + p3 * 3.0 * t2 * one_minus_t + p4 * t2 * vert.t;\n\n let angle = one_minus_t2 * (p2 - p1) + 2.0 * vert.t * one_minus_t * (p3 - p2) + t2 * (p4 - p3);\n let angleNorm = normalize(angle) * 5 / u.zoom;\n let transPos = vec2(pos.x - angleNorm.y * vert.dir, pos.y + angleNorm.x * vert.dir);\n let clipSpace = (u.matrix * vec4f(transPos, 1, 1));\n vsOut.position = clipSpace;\n vsOut.color = vec4f(f32(vert.segmentIndex) % 3, (f32(vert.segmentIndex) + 1) % 3, (f32(vert.segmentIndex) + 2) % 3, 1);\n\n return vsOut;\n}\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n return vsOut.color;\n}\n",e="struct Uniforms {\n matrix: mat4x4f,\n};\n\nstruct Vertex {\n @location(0) position: vec4f,\n @location(1) texcoord: vec2f,\n};\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) texcoord: vec2f,\n};\n\n@group(0) @binding(0) var<uniform> uni: Uniforms;\n\n@vertex fn vs(vert: Vertex) -> VSOutput {\n var vsOut: VSOutput;\n vsOut.position = uni.matrix * vert.position;\n vsOut.texcoord = vert.texcoord;\n return vsOut;\n}\n\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n return textureSample(ourTexture, ourSampler, vsOut.texcoord);\n}\n",D="struct Uniforms {\n matrix: mat4x4f,\n};\n\nstruct Vertex {\n @location(0) position: vec4f,\n};\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) color: vec4f,\n};\n\n@group(0) @binding(0) var<uniform> uni: Uniforms;\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertexIndex : u32,\n // @builtin(instance_index) instanceIndex: u32\n ) -> VSOutput {\n var vsOut: VSOutput;\n vsOut.position = uni.matrix * vert.position;\n vsOut.color = vec4f(f32(vertexIndex) % 3, (f32(vertexIndex) + 1) % 3, (f32(vertexIndex) + 2) % 3, 1);\n return vsOut;\n}\n\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n return vsOut.color;\n}\n",t="struct Uniforms {\n normalMatrix: mat3x3f,\n worldViewProjection: mat4x4f,\n lightColor: vec4f,\n lightDirection: vec3f,\n};\n\nstruct Vertex {\n @location(0) position: vec4f,\n @location(1) normal: vec3f,\n};\n\nstruct VSOutput {\n @builtin(position) position: vec4f,\n @location(0) color: vec4f,\n @location(1) normal: vec3f,\n};\n\n@group(0) @binding(0) var<uniform> uni: Uniforms;\n\n@vertex fn vs(\n vert: Vertex,\n @builtin(vertex_index) vertexIndex : u32,\n // @builtin(instance_index) instanceIndex: u32\n ) -> VSOutput {\n var vsOut: VSOutput;\n vsOut.position = uni.worldViewProjection * vert.position;\n vsOut.normal = uni.normalMatrix * vert.normal;\n vsOut.color = vec4f(f32(vertexIndex) % 3, (f32(vertexIndex) + 1) % 3, (f32(vertexIndex) + 2) % 3, 1);\n\n return vsOut;\n}\n\n\n@fragment fn fs(vsOut: VSOutput) -> @location(0) vec4f {\n // Because vsOut.normal is an inter-stage variable \n // it's interpolated so it will not be a unit vector.\n // Normalizing it will make it a unit vector again\n let normal = normalize(vsOut.normal);\n \n // Compute the light by taking the dot product\n // of the normal to the light's reverse direction\n let light = dot(normal, -uni.lightDirection);\n \n // Lets multiply just the color portion (not the alpha)\n // by the light\n let color = vec3f(0.23) + uni.lightColor.rgb * light;\n // let color = vsOut.color.rgb * 0.5 + uni.lightColor.rgb * light;\n return vec4f(color, vsOut.color.a);\n}\n",w="struct Params {\n filterDim : i32,\n blockDim : u32,\n}\n\n@group(0) @binding(0) var samp : sampler;\n@group(0) @binding(1) var<uniform> params : Params;\n@group(1) @binding(1) var inputTex : texture_2d<f32>;\n@group(1) @binding(2) var outputTex : texture_storage_2d<rgba8unorm, write>;\n\nstruct Flip {\n value : u32,\n}\n@group(1) @binding(3) var<uniform> flip : Flip;\n\n// This shader blurs the input texture in one direction, depending on whether\n// |flip.value| is 0 or 1.\n// It does so by running (128 / 4) threads per workgroup to load 128\n// texels into 4 rows of shared memory. Each thread loads a\n// 4 x 4 block of texels to take advantage of the texture sampling\n// hardware.\n// Then, each thread computes the blur result by averaging the adjacent texel values\n// in shared memory.\n// Because we're operating on a subset of the texture, we cannot compute all of the\n// results since not all of the neighbors are available in shared memory.\n// Specifically, with 128 x 128 tiles, we can only compute and write out\n// square blocks of size 128 - (filterSize - 1). We compute the number of blocks\n// needed in Javascript and dispatch that amount.\n\n// 128/4 = 32 -> number of threads per working group\n// does it in 4x4 block of texels(takes advantage of texture sampling hardware)\n// with this beign said, we don't have all the neighbours, only this block\n// That's why we can only compute & write out blocks of size 128 - (filterSize - 1)\nvar<workgroup> tile : array<array<vec3<f32>, 128>, 4>;\n\n@compute @workgroup_size(32, 1, 1)\nfn main(\n @builtin(workgroup_id) WorkGroupID : vec3<u32>,\n @builtin(local_invocation_id) LocalInvocationID : vec3<u32>\n) {\n let filterOffset = (params.filterDim - 1) / 2;\n let dims = vec2<i32>(textureDimensions(inputTex, 0));\n let baseIndex = vec2<i32>(WorkGroupID.xy * vec2(params.blockDim, 4) + // it's just the index of the first texel in a group\n LocalInvocationID.xy * vec2(4, 1)) // <0, 128>\n - vec2(filterOffset, 0);\n // baseIndex = xy of first texel of group\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var loadIndex = baseIndex + vec2(c, r);\n if (flip.value != 0) {\n loadIndex = loadIndex.yx;\n }\n\n tile[r][4 * LocalInvocationID.x + u32(c)] = textureSampleLevel(\n inputTex,\n samp,\n (vec2<f32>(loadIndex) + vec2<f32>(0.25, 0.25)) / vec2<f32>(dims),\n 0.0\n ).rgb;\n }\n }\n\n workgroupBarrier();\n // helps coordinate access to read-write memory\n // so all threads(32) will wait to hit this barrer, and then start form here together\n\n for (var r = 0; r < 4; r++) {\n for (var c = 0; c < 4; c++) {\n var writeIndex = baseIndex + vec2(c, r);\n if (flip.value != 0) {\n writeIndex = writeIndex.yx;\n }\n\n let center = i32(4 * LocalInvocationID.x) + c;\n if (center >= filterOffset &&\n center < 128 - filterOffset &&\n all(writeIndex < dims)) {\n var acc = vec3(0.0, 0.0, 0.0);\n for (var f = 0; f < params.filterDim; f++) {\n var i = center + f - filterOffset;\n acc = acc + (1.0 / f32(params.filterDim)) * tile[r][i];\n }\n textureStore(outputTex, writeIndex, vec4(acc, 1.0));\n }\n }\n }\n}\n",a=128,s=[4,4],n="struct Vertex {\n @location(0) position: vec4f,\n @location(1) uv: vec2f,\n};\n\nstruct Uniforms {\n worldViewProjection: mat4x4f,\n};\n\nstruct VertexOutput {\n @builtin(position) position: vec4f,\n @location(0) texCoord: vec2f,\n};\n\n@group(0) @binding(0) var<uniform> u: Uniforms;\n@group(0) @binding(1) var ourSampler: sampler;\n@group(0) @binding(2) var ourTexture: texture_2d<f32>;\n\n@vertex fn vs(vert: Vertex) -> VertexOutput {\n var out: VertexOutput;\n // maybe we should pass offsets from the position instead of... position?\n out.position = u.worldViewProjection * vert.position;\n out.texCoord = vert.uv;\n \n return out;\n}\n\n@fragment fn fs(in: VertexOutput) -> @location(0) vec4f {\n let texel = textureSample(ourTexture, ourSampler, in.texCoord);\n return texel;\n}\n",r=6;let c,F,G,h,y,M,N,U;const R={cross(A,I,g=new Float32Array(3)){const Q=A[1]*I[2]-A[2]*I[1],B=A[2]*I[0]-A[0]*I[2],C=A[0]*I[1]-A[1]*I[0];return g[0]=Q,g[1]=B,g[2]=C,g},subtract:(A,I,g=new Float32Array(3))=>(g[0]=A[0]-I[0],g[1]=A[1]-I[1],g[2]=A[2]-I[2],g),normalize(A,I=new Float32Array(3)){const g=Math.sqrt(A[0]*A[0]+A[1]*A[1]+A[2]*A[2]);return g>1e-5?(I[0]=A[0]/g,I[1]=A[1]/g,I[2]=A[2]/g):(I[0]=0,I[1]=0,I[2]=0),I}},Y={projection:(A,I,g,Q)=>Y.ortho(0,A,I,0,g,-g,Q),perspective(A,I,g,Q,B=new Float32Array(16)){const C=Math.tan(.5*Math.PI-.5*A),E=1/(g-Q);return B[0]=C/I,B[1]=0,B[2]=0,B[3]=0,B[4]=0,B[5]=C,B[6]=0,B[7]=0,B[8]=0,B[9]=0,B[10]=Q*E,B[11]=-1,B[12]=0,B[13]=0,B[14]=g*Q*E,B[15]=0,B},ortho:(A,I,g,Q,B,C,E=new Float32Array(16))=>(E[0]=2/(I-A),E[1]=0,E[2]=0,E[3]=0,E[4]=0,E[5]=2/(Q-g),E[6]=0,E[7]=0,E[8]=0,E[9]=0,E[10]=1/(B-C),E[11]=0,E[12]=(I+A)/(A-I),E[13]=(Q+g)/(g-Q),E[14]=B/(B-C),E[15]=1,E),identity:(A=new Float32Array(16))=>(A[0]=1,A[1]=0,A[2]=0,A[3]=0,A[4]=0,A[5]=1,A[6]=0,A[7]=0,A[8]=0,A[9]=0,A[10]=1,A[11]=0,A[12]=0,A[13]=0,A[14]=0,A[15]=1,A),multiply(A,I,g=new Float32Array(16)){const Q=I[0],B=I[1],C=I[2],E=I[3],i=I[4],o=I[5],e=I[6],D=I[7],t=I[8],w=I[9],a=I[10],s=I[11],n=I[12],r=I[13],c=I[14],F=I[15],G=A[0],h=A[1],y=A[2],M=A[3],N=A[4],U=A[5],R=A[6],Y=A[7],k=A[8],S=A[9],J=A[10],u=A[11],L=A[12],f=A[13],l=A[14],d=A[15];return g[0]=Q*G+B*N+C*k+E*L,g[1]=Q*h+B*U+C*S+E*f,g[2]=Q*y+B*R+C*J+E*l,g[3]=Q*M+B*Y+C*u+E*d,g[4]=i*G+o*N+e*k+D*L,g[5]=i*h+o*U+e*S+D*f,g[6]=i*y+o*R+e*J+D*l,g[7]=i*M+o*Y+e*u+D*d,g[8]=t*G+w*N+a*k+s*L,g[9]=t*h+w*U+a*S+s*f,g[10]=t*y+w*R+a*J+s*l,g[11]=t*M+w*Y+a*u+s*d,g[12]=n*G+r*N+c*k+F*L,g[13]=n*h+r*U+c*S+F*f,g[14]=n*y+r*R+c*J+F*l,g[15]=n*M+r*Y+c*u+F*d,g},cameraAim(A,I,g,Q=new Float32Array(16)){const B=R.normalize(R.subtract(A,I)),C=R.normalize(R.cross(g,B)),E=R.normalize(R.cross(B,C));return Q[0]=C[0],Q[1]=C[1],Q[2]=C[2],Q[3]=0,Q[4]=E[0],Q[5]=E[1],Q[6]=E[2],Q[7]=0,Q[8]=B[0],Q[9]=B[1],Q[10]=B[2],Q[11]=0,Q[12]=A[0],Q[13]=A[1],Q[14]=A[2],Q[15]=1,Q},inverse(A,I=new Float32Array(16)){const g=A[0],Q=A[1],B=A[2],C=A[3],E=A[4],i=A[5],o=A[6],e=A[7],D=A[8],t=A[9],w=A[10],a=A[11],s=A[12],n=A[13],r=A[14],c=A[15],F=w*c,G=r*a,h=o*c,y=r*e,M=o*a,N=w*e,U=B*c,R=r*C,Y=B*a,k=w*C,S=B*e,J=o*C,u=D*n,L=s*t,f=E*n,l=s*i,d=E*t,H=D*i,K=g*n,q=s*Q,p=g*t,x=D*Q,m=g*i,b=E*Q,Z=F*i+y*t+M*n-(G*i+h*t+N*n),T=G*Q+U*t+k*n-(F*Q+R*t+Y*n),W=h*Q+R*i+S*n-(y*Q+U*i+J*n),j=N*Q+Y*i+J*t-(M*Q+k*i+S*t),X=1/(g*Z+E*T+D*W+s*j);return I[0]=X*Z,I[1]=X*T,I[2]=X*W,I[3]=X*j,I[4]=X*(G*E+h*D+N*s-(F*E+y*D+M*s)),I[5]=X*(F*g+R*D+Y*s-(G*g+U*D+k*s)),I[6]=X*(y*g+U*E+J*s-(h*g+R*E+S*s)),I[7]=X*(M*g+k*E+S*D-(N*g+Y*E+J*D)),I[8]=X*(u*e+l*a+d*c-(L*e+f*a+H*c)),I[9]=X*(L*C+K*a+x*c-(u*C+q*a+p*c)),I[10]=X*(f*C+q*e+m*c-(l*C+K*e+b*c)),I[11]=X*(H*C+p*e+b*a-(d*C+x*e+m*a)),I[12]=X*(f*w+H*r+L*o-(d*r+u*o+l*w)),I[13]=X*(p*r+u*B+q*w-(K*w+x*r+L*B)),I[14]=X*(K*o+b*r+l*B-(m*r+f*B+q*o)),I[15]=X*(m*w+d*B+x*o-(p*o+b*w+H*B)),I},transpose:(A,I=new Float32Array(16))=>(I[0]=A[0],I[1]=A[4],I[2]=A[8],I[3]=A[12],I[4]=A[1],I[5]=A[5],I[6]=A[9],I[7]=A[13],I[8]=A[2],I[9]=A[6],I[10]=A[10],I[11]=A[14],I[12]=A[3],I[13]=A[7],I[14]=A[11],I[15]=A[15],I),aim(A,I,g,Q=new Float32Array(16)){const B=R.normalize(R.subtract(I,A)),C=R.normalize(R.cross(g,B)),E=R.normalize(R.cross(B,C));return Q[0]=C[0],Q[1]=C[1],Q[2]=C[2],Q[3]=0,Q[4]=E[0],Q[5]=E[1],Q[6]=E[2],Q[7]=0,Q[8]=B[0],Q[9]=B[1],Q[10]=B[2],Q[11]=0,Q[12]=A[0],Q[13]=A[1],Q[14]=A[2],Q[15]=1,Q},lookAt:(A,I,g,Q)=>Y.inverse(Y.cameraAim(A,I,g,Q),Q),translation:([A,I,g],Q=new Float32Array(16))=>(Q[0]=1,Q[1]=0,Q[2]=0,Q[3]=0,Q[4]=0,Q[5]=1,Q[6]=0,Q[7]=0,Q[8]=0,Q[9]=0,Q[10]=1,Q[11]=0,Q[12]=A,Q[13]=I,Q[14]=g,Q[15]=1,Q),rotationX(A,I=new Float32Array(16)){const g=Math.cos(A),Q=Math.sin(A);return I[0]=1,I[1]=0,I[2]=0,I[3]=0,I[4]=0,I[5]=g,I[6]=Q,I[7]=0,I[8]=0,I[9]=-Q,I[10]=g,I[11]=0,I[12]=0,I[13]=0,I[14]=0,I[15]=1,I},rotationY(A,I=new Float32Array(16)){const g=Math.cos(A),Q=Math.sin(A);return I[0]=g,I[1]=0,I[2]=-Q,I[3]=0,I[4]=0,I[5]=1,I[6]=0,I[7]=0,I[8]=Q,I[9]=0,I[10]=g,I[11]=0,I[12]=0,I[13]=0,I[14]=0,I[15]=1,I},rotationZ(A,I=new Float32Array(16)){const g=Math.cos(A),Q=Math.sin(A);return I[0]=g,I[1]=Q,I[2]=0,I[3]=0,I[4]=-Q,I[5]=g,I[6]=0,I[7]=0,I[8]=0,I[9]=0,I[10]=1,I[11]=0,I[12]=0,I[13]=0,I[14]=0,I[15]=1,I},scaling:([A,I,g],Q=new Float32Array(16))=>(Q[0]=A,Q[1]=0,Q[2]=0,Q[3]=0,Q[4]=0,Q[5]=I,Q[6]=0,Q[7]=0,Q[8]=0,Q[9]=0,Q[10]=g,Q[11]=0,Q[12]=0,Q[13]=0,Q[14]=0,Q[15]=1,Q),translate:(A,I,g)=>Y.multiply(A,Y.translation(I),g),rotateX:(A,I,g)=>Y.multiply(A,Y.rotationX(I),g),rotateY:(A,I,g)=>Y.multiply(A,Y.rotationY(I),g),rotateZ:(A,I,g)=>Y.multiply(A,Y.rotationZ(I),g),scale:(A,I,g)=>Y.multiply(A,Y.scaling(I),g)},k=Y;new Float32Array;const S=(...A)=>{const I=Math.max(...A);return 1+Math.log2(I)|0};function J(A,I,g){return Math.min(g,Math.max(I,A))}let u;function L(A){u=A}let f=new("undefined"==typeof TextDecoder?(0,module.require)("util").TextDecoder:TextDecoder)("utf-8",{ignoreBOM:!0,fatal:!0});f.decode();let l=null;function d(){return null!==l&&0!==l.byteLength||(l=new Uint8Array(u.memory.buffer)),l}function H(A,I){return A>>>=0,f.decode(d().subarray(A,A+I))}let K=0,q=new("undefined"==typeof TextEncoder?(0,module.require)("util").TextEncoder:TextEncoder)("utf-8");const p="function"==typeof q.encodeInto?function(A,I){return q.encodeInto(A,I)}:function(A,I){const g=q.encode(A);return I.set(g),{read:A.length,written:g.length}};let x=null;function m(){return(null===x||!0===x.buffer.detached||void 0===x.buffer.detached&&x.buffer!==u.memory.buffer)&&(x=new DataView(u.memory.buffer)),x}const b="undefined"==typeof FinalizationRegistry?{register:()=>{},unregister:()=>{}}:new FinalizationRegistry((A=>u.__wbg_state_free(A>>>0,1)));class Z{static __wrap(A){A>>>=0;const I=Object.create(Z.prototype);return I.__wbg_ptr=A,b.register(I,I.__wbg_ptr,I),I}__destroy_into_raw(){const A=this.__wbg_ptr;return this.__wbg_ptr=0,b.unregister(this),A}free(){const A=this.__destroy_into_raw();u.__wbg_state_free(A,0)}static new(A,I){const g=u.state_new(A,I);return Z.__wrap(g)}add_texture(A,I){u.state_add_texture(this.__wbg_ptr,A,I)}get_shader_input(A){return u.state_get_shader_input(this.__wbg_ptr,A)}update_points(A,I){u.state_update_points(this.__wbg_ptr,A,I)}}function T(A){return void 0===A}function W(){return function(A,I){try{return A.apply(this,I)}catch(A){const I=function(A){const I=u.__externref_table_alloc();return u.__wbindgen_export_2.set(I,A),I}(A);u.__wbindgen_exn_store(I)}}((function(A){return JSON.stringify(A)}),arguments)}function j(A,I){return H(A,I)}function X(){return new Object}function v(A){return A}function V(A,I,g){A[I]=g}function O(){return new Array}function P(A,I,g){A[I>>>0]=g}function z(A,I){const g="string"==typeof I?I:void 0;var Q=null==g?0:function(A,I,g){if(void 0===g){const g=q.encode(A),Q=I(g.length,1)>>>0;return d().subarray(Q,Q+g.length).set(g),K=g.length,Q}let Q=A.length,B=I(Q,1)>>>0;const C=d();let E=0;for(;E<Q;E++){const I=A.charCodeAt(E);if(I>127)break;C[B+E]=I}if(E!==Q){0!==E&&(A=A.slice(E)),B=g(B,Q,Q=E+3*A.length,1)>>>0;const I=d().subarray(B+E,B+Q);E+=p(A,I).written,B=g(B,Q,E,1)>>>0}return K=E,B}(g,u.__wbindgen_malloc,u.__wbindgen_realloc),B=K;m().setInt32(A+4,B,!0),m().setInt32(A+0,Q,!0)}function _(A,I){throw new Error(H(A,I))}const $="function"==typeof console.error?console.error:()=>{throw new Error("console.error is not defined")};function AA(){const A=u.__wbindgen_export_2,I=A.grow(4);A.set(0,void 0),A.set(I+0,void 0),A.set(I+1,null),A.set(I+2,!0),A.set(I+3,!1)}const IA="data:application/wasm;base64,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ACAARQRAQcSmwABBMhCDAQALIAAgAiADIAEoAhARAwALLABBgKnBAC0AAEUEQEGAqcEAQQE6AAALQYipwQAgADYCAEGEqcEAQQE2AgALHwAgAEUEQEHEpsAAQTIQgwEACyAAIAIgASgCEBEAAAsaAQFvIAAlASABJQEgARBLIAIlASACEEsQBQscACABKAIcIAAoAgAgACgCBCABKAIgKAIMEQEACxYBAW8gACUBEAEhARAmIgAgASYBIAALFgEBbyAAIAEQAiECECYiACACJgEgAAsZACABKAIcQc/9wABBAyABKAIgKAIMEQEACxkAIAEoAhxB3YPAAEEKIAEoAiAoAgwRAQALGQAgASgCHEGahsAAQRIgASgCICgCDBEBAAsZACABKAIcQZaIwABBDCABKAIgKAIMEQEACxkAIAEoAhxBt4jAAEEFIAEoAiAoAgwRAQALGQAgASgCHEH6isAAQQ4gASgCICgCDBEBAAsWAgFvAX8gABAEIQEQJiICIAEmASACC50gAhN/AX0QJiISIAEmASACIRUjAEHwAGsiAyQAAkACQAJAAkACQAJAAkACQAJAAkAgACIMBEAgAEEIayITIBMoAgBBAWoiADYCACAARQ0DIAwoAgANASAMQX82AgAgEhCKAUEBRgRAQYypwQAtAAAaQQQQDCIORQ0EIA5B7uqx4wY2AABBBCEAQQQhFAwDCyASEGwhAAJAAkBBgKnBAC0AAEUEQEGAqcEAQQE6AABBhKnBAEEANgIAQYipwQBBADYCAAwBC0GIqcEAQQA2AgBBhKnBACgCAEGEqcEAQQA2AgBBAUYNAQsgA0EoaiAAEFUgAygCMCEAIAMoAiwhDiADKAIoIRQMAwtBrIPAAEExEIMBAAsQggEACxCEAQALIANBADYCPCADIAA2AjggAyAONgI0IANBgAE6AEAgA0EANgIwIANCgICAgBA3AigCQCADIA4gACAAIAAEfwNAIAQgDmotAAAiAkEJayIFQRdLQQEgBXRBk4CABHFFcg0CIAAgBEEBaiIERw0ACyADIAA2AjwgAEEBagVBAQsiAiAAIAJJGxAhQYypwQAtAAAaIAMoAgQhACADKAIAIQJBFBAMIgRFDQEgBCACNgIMIARBBTYCACAEIAA2AhAMBAsgAkHbAEcNASADQf8AOgBAIAMgBEEBajYCPCADQQE6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rIjAAEELECMgCRBqAkACQCAGBEAgAUEEaygCACIAQXhxIgUgBkECdCIJQQRBCCAAQQNxIgAbakkNASAAQQAgBSAJQSdqSxsNAiABEBQLIAggCCgCAEEBazYCACAKIAooAgBBAWsiADYCACAARQRAIAoQLgsgAkEwaiQAIAcMAgtBqaPBAEEuQdijwQAQWQALQeijwQBBLkGYpMEAEFkACyIAJQEgABBLCw0AIABFBEAgAhBbCwALEAAgASAAKAIAIAAoAgQQEAsOAEGki8AAQSsgABBZAAtqAQF/IwBBMGsiAyQAIAMgATYCBCADIAA2AgAgA0ECNgIMIANB/JzAADYCCCADQgI3AhQgAyADQQRqrUKAgICAwACENwMoIAMgA61CgICAgMAAhDcDICADIANBIGo2AhAgA0EIaiACEF4AC2oBAX8jAEEwayIDJAAgAyABNgIEIAMgADYCACADQQI2AgwgA0GwncAANgIIIANCAjcCFCADIANBBGqtQoCAgIDAAIQ3AyggAyADrUKAgICAwACENwMgIAMgA0EgajYCECADQQhqIAIQXgALDQAgACkDAEEBIAEQMwsLACAAKAIAIAEQNQsNAEGopMEAQRsQgwEACwkAIAAgARAJAAsOAEHDpMEAQc8AEIMBAAspAQF/IwBBEGsiACQAIABBADYCDCAAQQE2AgggAEEIakEbQQFBABBPAAsNACAAQbyIwAAgARAeCwwAIAAgASkCADcDAAvGCQEIfwJAAkAgAiIFIAAiByABa0sEQCABIAJqIQAgAiAHaiECIAVBEEkNAUEAIAJBA3EiBmshCQJAIAJBfHEiAyACTw0AIAZBAWsCQCAGRQRAIAAhBAwBCyAGIQggACEEA0AgAkEBayICIARBAWsiBC0AADoAACAIQQFrIggNAAsLQQNJDQAgBEEEayEEA0AgAkEBayAEQQNqLQAAOgAAIAJBAmsgBEECai0AADoAACACQQNrIARBAWotAAA6AAAgAkEEayICIAQtAAA6AAAgBEEEayEEIAIgA0sNAAsLIAMgBSAGayIEQXxxIgVrIQJBACAFayEGAkAgACAJaiIAQQNxRQRAIAIgA08NASABIARqQQRrIQEDQCADQQRrIgMgASgCADYCACABQQRrIQEgAiADSQ0ACwwBCyACIANPDQAgAEEDdCIFQRhxIQggAEF8cSIJQQRrIQFBACAFa0EYcSEKIAkoAgAhBQNAIANBBGsiAyAFIAp0IAEoAgAiBSAIdnI2AgAgAUEEayEBIAIgA0kNAAsLIARBA3EhBSAAIAZqIQAMAQsCQCAFQRBJBEAgByECDAELAkAgB0EAIAdrQQNxIgZqIgQgB00NACAHIQIgASEDIAYEQCAGIQADQCACIAMtAAA6AAAgA0EBaiEDIAJBAWohAiAAQQFrIgANAAsLIAZBAWtBB0kNAANAIAIgAy0AADoAACACQQFqIANBAWotAAA6AAAgAkECaiADQQJqLQAAOgAAIAJBA2ogA0EDai0AADoAACACQQRqIANBBGotAAA6AAAgAkEFaiADQQVqLQAAOgAAIAJBBmogA0EGai0AADoAACACQQdqIANBB2otAAA6AAAgA0EIaiEDIAJBCGoiAiAERw0ACwsgBCAFIAZrIgNBfHEiCGohAgJAIAEgBmoiAEEDcUUEQCACIARNDQEgACEBA0AgBCABKAIANgIAIAFBBGohASAEQQRqIgQgAkkNAAsMAQsgAiAETQ0AIABBA3QiBUEYcSEGIABBfHEiCUEEaiEBQQAgBWtBGHEhCiAJKAIAIQUDQCAEIAUgBnYgASgCACIFIAp0cjYCACABQQRqIQEgBEEEaiIEIAJJDQALCyADQQNxIQUgACAIaiEBCyACIAIgBWoiAE8NASAFQQdxIgMEQANAIAIgAS0AADoAACABQQFqIQEgAkEBaiECIANBAWsiAw0ACwsgBUEBa0EHSQ0BA0AgAiABLQAAOgAAIAJBAWogAUEBai0AADoAACACQQJqIAFBAmotAAA6AAAgAkEDaiABQQNqLQAAOgAAIAJBBGogAUEEai0AADoAACACQQVqIAFBBWotAAA6AAAgAkEGaiABQQZqLQAAOgAAIAJBB2ogAUEHai0AADoAACABQQhqIQEgAkEIaiICIABHDQALDAELIAIgBWsiBCACTw0AIAVBA3EiAQRAA0AgAkEBayICIABBAWsiAC0AADoAACABQQFrIgENAAsLIAVBAWtBA0kNACAAQQRrIQEDQCACQQFrIAFBA2otAAA6AAAgAkECayABQQJqLQAAOgAAIAJBA2sgAUEBai0AADoAACACQQRrIgIgAS0AADoAACABQQRrIQEgAiAESw0ACwsgBwsJACAAQQA2AgALCAAgACUBEAALCAAgACUBEAoLC6mkASAAQYCAwAALpQEvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZV9qc29uLTEuMC4xMzQvc3JjL2RlLnJzaW50ZXJuYWwgZXJyb3I6IGVudGVyZWQgdW5yZWFjaGFibGUgY29kZQAAAAAQAF4AAACaBAAAIgAAAAAAEABeAAAAkAQAACYAQbCBwAALBQEAAAAdAEHAgcAACwUBAAAAHgBB0IHAAAsFAQAAAB8AQeCBwAAL5QcBAAAAIAAAAHN0cnVjdCBWZXJ0ZXhQb2ludCB3aXRoIDQgZWxlbWVudHMAAOgAEAAiAAAAAAAAAAgAAAAEAAAAIQAAAHN0cnVjdCBQb2ludCB3aXRoIDIgZWxlbWVudHMkARAAHAAAAG1pc3NpbmcgZmllbGQgYABIARAADwAAAERAEAABAAAAaW52YWxpZCBsZW5ndGggAGgBEAAPAAAAF0AQAAsAAABkdXBsaWNhdGUgZmllbGQgYAAAAIgBEAARAAAAREAQAAEAAABjYWxsZWQgYFJlc3VsdDo6dW53cmFwX3Rocm93KClgIG9uIGFuIGBFcnJgIHZhbHVlYSBzZXF1ZW5jZS9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3NlcmRlLTEuMC4yMTYvc3JjL2RlL2ltcGxzLnJzAADnARAAXwAAAJgEAAAcAAAAc3JjL3RleHR1cmUucnMAAFgCEAAOAAAAGgAAABkAAABYAhAADgAAABsAAAAZAAAAWAIQAA4AAAAcAAAAGQAAAFgCEAAOAAAAHgAAABkAAABYAhAADgAAACIAAAAXAAAAWAIQAA4AAAAjAAAAFwAAAFgCEAAOAAAAJAAAABcAAABYAhAADgAAACUAAAAXAAAAWAIQAA4AAAAmAAAAFwAAAFgCEAAOAAAAJwAAABcAAABYAhAADgAAADAAAAAlAAAAdXZzdHJ1Y3QgVmVydGV4UG9pbnRhdHRlbXB0ZWQgdG8gdGFrZSBvd25lcnNoaXAgb2YgUnVzdCB2YWx1ZSB3aGlsZSBpdCB3YXMgYm9ycm93ZWRzcmMvbGliLnJzAAAAawMQAAoAAAA4AAAAFwAAAGFkZF90ZXh0dXJlIHJlY2VpdmVkIG5vdCBjb3BhdGlibGUgZGF0YSBmcm9tIEpTLiBGYWlsZWQgYXQgY29udmVyc2lvbiB0byBSdXN0IHR5cGVzLogDEABUAAAAawMQAAoAAAA1AAAADQAAAGsDEAAKAAAAWQAAABgAAABrAxAACgAAAFEAAAANAAAAeHlzdHJ1Y3QgUG9pbnR0ZXh0dXJlX2lkdmVydGV4X2RhdGFFcnJvciIAAAAMAAAABAAAACMAAAAkAAAAJQAAAGNhcGFjaXR5IG92ZXJmbG93AAAAVAQQABEAAABsaWJyYXJ5L2FsbG9jL3NyYy9yYXdfdmVjLnJzcAQQABwAAAAoAgAAEQAAAGxpYnJhcnkvYWxsb2Mvc3JjL3N0cmluZy5ycwCcBBAAGwAAAOoBAAAXAEHQicAAC6kdAQAAACYAAABhIGZvcm1hdHRpbmcgdHJhaXQgaW1wbGVtZW50YXRpb24gcmV0dXJuZWQgYW4gZXJyb3Igd2hlbiB0aGUgdW5kZXJseWluZyBzdHJlYW0gZGlkIG5vdGxpYnJhcnkvYWxsb2Mvc3JjL2ZtdC5ycwAALgUQABgAAACKAgAADgAAAJwEEAAbAAAAjQUAABsAAAAuLjAxMjM0NTY3ODlhYmNkZWZCb3Jyb3dNdXRFcnJvcmFscmVhZHkgYm9ycm93ZWQ6IAAAiAUQABIAAABjYWxsZWQgYE9wdGlvbjo6dW53cmFwKClgIG9uIGEgYE5vbmVgIHZhbHVlaW5kZXggb3V0IG9mIGJvdW5kczogdGhlIGxlbiBpcyAgYnV0IHRoZSBpbmRleCBpcyAAAADPBRAAIAAAAO8FEAASAAAAOiAAAAEAAAAAAAAAFAYQAAIAAAAweGxpYnJhcnkvY29yZS9zcmMvZm10L21vZC5yc2ZhbHNldHJ1ZQAAKgYQABsAAACgCgAAJgAAACoGEAAbAAAAqQoAABoAAABsaWJyYXJ5L2NvcmUvc3JjL3N0ci9tb2QucnNsaWJyYXJ5L2NvcmUvc3JjL3N0ci9wYXR0ZXJuLnJzAACLBhAAHwAAAHAFAAASAAAAiwYQAB8AAABwBQAAKAAAAIsGEAAfAAAAYwYAABUAAACLBhAAHwAAAJEGAAAVAAAAiwYQAB8AAACSBgAAFQAAAFsuLi5dYmVnaW4gPD0gZW5kICggPD0gKSB3aGVuIHNsaWNpbmcgYAABBxAADgAAAA8HEAAEAAAAEwcQABAAAABEQBAAAQAAAGJ5dGUgaW5kZXggIGlzIG5vdCBhIGNoYXIgYm91bmRhcnk7IGl0IGlzIGluc2lkZSAgKGJ5dGVzICkgb2YgYABEBxAACwAAAE8HEAAmAAAAdQcQAAgAAAB9BxAABgAAAERAEAABAAAAIGlzIG91dCBvZiBib3VuZHMgb2YgYAAARAcQAAsAAACsBxAAFgAAAERAEAABAAAAcAYQABsAAAD0AAAALAAAAGxpYnJhcnkvY29yZS9zcmMvdW5pY29kZS9wcmludGFibGUucnMAAADsBxAAJQAAABoAAAA2AAAA7AcQACUAAAAKAAAAKwAAAAAGAQEDAQQCBQcHAggICQIKBQsCDgQQARECEgUTHBQBFQIXAhkNHAUdCB8BJAFqBGsCrwOxArwCzwLRAtQM1QnWAtcC2gHgBeEC5wToAu4g8AT4AvoE+wEMJzs+Tk+Pnp6fe4uTlqKyuoaxBgcJNj0+VvPQ0QQUGDY3Vld/qq6vvTXgEoeJjp4EDQ4REikxNDpFRklKTk9kZYqMjY+2wcPExsvWXLa3GxwHCAoLFBc2OTqoqdjZCTeQkagHCjs+ZmmPkhFvX7/u71pi9Pz/U1Samy4vJyhVnaCho6SnqK26vMQGCwwVHTo/RVGmp8zNoAcZGiIlPj/n7O//xcYEICMlJigzODpISkxQU1VWWFpcXmBjZWZrc3h9f4qkqq+wwNCur25v3d6TXiJ7BQMELQNmAwEvLoCCHQMxDxwEJAkeBSsFRAQOKoCqBiQEJAQoCDQLTgM0DIE3CRYKCBg7RTkDYwgJMBYFIQMbBQFAOARLBS8ECgcJB0AgJwQMCTYDOgUaBwQMB1BJNzMNMwcuCAoGJgMdCAKA0FIQAzcsCCoWGiYcFBcJTgQkCUQNGQcKBkgIJwl1C0I+KgY7BQoGUQYBBRADBQtZCAIdYh5ICAqApl4iRQsKBg0TOgYKBhQcLAQXgLk8ZFMMSAkKRkUbSAhTDUkHCoC2Ig4KBkYKHQNHSTcDDggKBjkHCoE2GQc7Ax1VAQ8yDYObZnULgMSKTGMNhDAQFgqPmwWCR5q5OobGgjkHKgRcBiYKRgooBROBsDqAxltlSwQ5BxFABQsCDpf4CITWKQqi54EzDwEdBg4ECIGMiQRrBQ0DCQcQj2CA+gaBtExHCXQ8gPYKcwhwFUZ6FAwUDFcJGYCHgUcDhUIPFYRQHwYGgNUrBT4hAXAtAxoEAoFAHxE6BQGB0CqA1isEAYHggPcpTAQKBAKDEURMPYDCPAYBBFUFGzQCgQ4sBGQMVgqArjgdDSwECQcCDgaAmoPYBBEDDQN3BF8GDAQBDwwEOAgKBigILAQCPoFUDB0DCgU4BxwGCQeA+oQGAAEDBQUGBgIHBggHCREKHAsZDBoNEA4MDwQQAxISEwkWARcEGAEZAxoHGwEcAh8WIAMrAy0LLgEwBDECMgGnBKkCqgSrCPoC+wX9Av4D/wmteHmLjaIwV1iLjJAc3Q4PS0z7/C4vP1xdX+KEjY6RkqmxurvFxsnK3uTl/wAEERIpMTQ3Ojs9SUpdhI6SqbG0urvGys7P5OUABA0OERIpMTQ6O0VGSUpeZGWEkZudyc7PDREpOjtFSVdbXF5fZGWNkam0urvFyd/k5fANEUVJZGWAhLK8vr/V1/Dxg4WLpKa+v8XHz9rbSJi9zcbOz0lOT1dZXl+Jjo+xtre/wcbH1xEWF1tc9vf+/4Btcd7fDh9ubxwdX31+rq9Nu7wWFx4fRkdOT1haXF5+f7XF1NXc8PH1cnOPdHWWJi4vp6+3v8fP19+aAECXmDCPH87P0tTO/05PWlsHCA8QJy/u725vNz0/QkWQkVNndcjJ0NHY2ef+/wAgXyKC3wSCRAgbBAYRgawOgKsFHwiBHAMZCAEELwQ0BAcDAQcGBxEKUA8SB1UHAwQcCgkDCAMHAwIDAwMMBAUDCwYBDhUFTgcbB1cHAgYXDFAEQwMtAwEEEQYPDDoEHSVfIG0EaiWAyAWCsAMaBoL9A1kHFgkYCRQMFAxqBgoGGgZZBysFRgosBAwEAQMxCywEGgYLA4CsBgoGLzGA9Ag8Aw8DPgU4CCsFgv8RGAgvES0DIQ8hD4CMBIKaFgsViJQFLwU7BwIOGAmAviJ0DIDWGoEQBYDhCfKeAzcJgVwUgLgIgN0VOwMKBjgIRggMBnQLHgNaBFkJgIMYHAoWCUwEgIoGq6QMFwQxoQSB2iYHDAUFgKYQgfUHASAqBkwEgI0EgL4DGwMPDWxpYnJhcnkvY29yZS9zcmMvdW5pY29kZS91bmljb2RlX2RhdGEucnMAAADdDRAAKAAAAE0AAAAoAAAA3Q0QACgAAABZAAAAFgAAAHJhbmdlIHN0YXJ0IGluZGV4ICBvdXQgb2YgcmFuZ2UgZm9yIHNsaWNlIG9mIGxlbmd0aCAoDhAAEgAAADoOEAAiAAAAcmFuZ2UgZW5kIGluZGV4IGwOEAAQAAAAOg4QACIAAABzbGljZSBpbmRleCBzdGFydHMgYXQgIGJ1dCBlbmRzIGF0IACMDhAAFgAAAKIOEAANAAAAAAMAAIMEIACRBWAAXROgABIXIB8MIGAf7ywgKyowoCtvpmAsAqjgLB774C0A/iA2nv9gNv0B4TYBCiE3JA3hN6sOYTkvGOE5MBzhSvMe4U5ANKFSHmHhU/BqYVRPb+FUnbxhVQDPYVZl0aFWANohVwDgoViu4iFa7OThW9DoYVwgAO5c8AF/XQBwAAcALQEBAQIBAgEBSAswFRABZQcCBgICAQQjAR4bWws6CQkBGAQBCQEDAQUrAzsJKhgBIDcBAQEECAQBAwcKAh0BOgEBAQIECAEJAQoCGgECAjkBBAIEAgIDAwEeAgMBCwI5AQQFAQIEARQCFgYBAToBAQIBBAgBBwMKAh4BOwEBAQwBCQEoAQMBNwEBAwUDAQQHAgsCHQE6AQICAQEDAwEEBwILAhwCOQIBAQIECAEJAQoCHQFIAQQBAgMBAQgBUQECBwwIYgECCQsHSQIbAQEBAQE3DgEFAQIFCwEkCQFmBAEGAQICAhkCBAMQBA0BAgIGAQ8BAAMABBwDHQIeAkACAQcIAQILCQEtAwEBdQIiAXYDBAIJAQYD2wICAToBAQcBAQEBAggGCgIBMB8xBDAKBAMmCQwCIAQCBjgBAQIDAQEFOAgCApgDAQ0BBwQBBgEDAsZAAAHDIQADjQFgIAAGaQIABAEKIAJQAgABAwEEARkCBQGXAhoSDQEmCBkLAQEsAzABAgQCAgIBJAFDBgICAgIMAQgBLwEzAQEDAgIFAgEBKgIIAe4BAgEEAQABABAQEAACAAHiAZUFAAMBAgUEKAMEAaUCAARBBQACTwRGCzEEewE2DykBAgIKAzEEAgIHAT0DJAUBCD4BDAI0CQEBCAQCAV8DAgQGAQIBnQEDCBUCOQIBAQEBDAEJAQ4HAwVDAQIGAQECAQEDBAMBAQ4CVQgCAwEBFwFRAQIGAQECAQECAQLrAQIEBgIBAhsCVQgCAQECagEBAQIIZQEBAQIEAQUACQEC9QEKBAQBkAQCAgQBIAooBgIECAEJBgIDLg0BAgAHAQYBAVIWAgcBAgECegYDAQECAQcBAUgCAwEBAQACCwI0BQUDFwEAAQYPAAwDAwAFOwcAAT8EUQELAgACAC4CFwAFAwYICAIHHgSUAwA3BDIIAQ4BFgUBDwAHARECBwECAQVkAaAHAAE9BAAE/gIAB20HAGCA8ABIYXNoIHRhYmxlIGNhcGFjaXR5IG92ZXJmbG93ADcSEAAcAAAAL3J1c3QvZGVwcy9oYXNoYnJvd24tMC4xNS4yL3NyYy9yYXcvbW9kLnJzAABcEhAAKgAAACMAAAAoAAAAY2FsbGVkIGBPcHRpb246OnVud3JhcF90aHJvdygpYCBvbiBhIGBOb25lYCB2YWx1ZS9ob21lL3J1bm5lci8uY2FyZ28vcmVnaXN0cnkvc3JjL2luZGV4LmNyYXRlcy5pby0xOTQ5Y2Y4YzZiNWI1NTdmL3dhc20tYmluZGdlbi0wLjIuOTUvc3JjL2NvbnZlcnQvc2xpY2VzLnJzyRIQAGsAAAAcAQAADgAAAGNsb3N1cmUgaW52b2tlZCByZWN1cnNpdmVseSBvciBhZnRlciBiZWluZyBkcm9wcGVkAAABAEGHp8AAC9EqIJqZmZmZmZmZmZmZmZmZmRkVrkfhehSuR+F6FK5H4XoU3iQGgZVDi2zn+6nx0k1iEJbUCWgibHh6pSxDHOviNhqrQ26GG/D5YYTwaOOItfgUIjZYOEnzx7Q2je21oPfGEGojjcAOUqaHV0ivvJry1xqIT9dmpUG4n985jDDijnkVB6YSH1EBLeaylNYm6AsuEaQJUcuBaK7Wt7q919nffBvqOqeiNO3x3l+VZHnhf/0Vu8iF6PbwJ38ZEeotgZmXEfgN1kC+tAxlwoF2SWjCJRyTcd4zmJBw6gGbK6GGm4QWQ8F+KeCm8yGbFVbnnq8DEjc1MQ/N14VpK7yJ2Jey0hz5kFo/1983IYmW1EZG9Q4X+nNIzEXmX+egq0PS0V1yEl2GDXo8PWalNKzStk/Jgx2xnteUY5ceUV0jQpIMoZwXwUt53YLfftp9T5sOCrTjEmisW2LRmGQqluVeFxAgOR5T8OKBp+C27kRRshJAsy0YqSZPzlJNklhqp46omcJXE0GkfrC3e1Anqth92vXQ8h40UGXAX8mmUrsTy67EQMIYkKbqmUzU6w7JDzzyNprOE4AKEcOtU3mxQRlgUL72sB9nCHQCi9wtwWdHs6b+XloZUqApNW+wJDSGn8Lr/ktIFNsZ7pDyWR2Qnn9oiWXWORBfKbC0HcP7TJcyp6jVI/YZsrpZXbE1lj2sWx+6d+nEFChi4X0nXquXVklM+5KHnRANnWjJ2Mmr8vAOevi3pZUaPhe6OnqhvFtaci4tk4REFctF+y7IGsqvro6LikKdAxFFCZKxpvfcskrkeKqd+zgbBKFBweuSffVugy1VsS/HFQO0Z2eJdWTEWJxXdycmbBHS7KXY24htbfTGJfILPeAb2yPrRhYHvorDOB4oo/1MFkm2VdIRbP5unGBLU08x1xEOiu+2TxOXsWBnRYUYgoscpaG/+HIPrCcauWo3rQHWFh5OmWDCcla54WBVLCTORBKVFsLNAx5X9TXOuxNt4zodq6sBCwMYrCor2C92ik9iF1aJNG8C4Ly7VRPzxG4MtRKJqO2x0MzHku8euNRKeu4dB7pXjkAK09vyS5MQb/vxFwbI33EA1ah89W8P2lj8JxPWDGbpM7un+rtMsimOYKYeEdeEhyn8UpXJo45UCxqFGA6s0NK6yaiqB4PYdm+unRPjrBoeXtza3aXRwFeysGIfT4pIS0uwSH5RQZqsjsAbGdmh09XVWW3L2s3hVqUzFhR7gdx3EXtXPOLX56vqwhEQKs9gWYJe8sY2JqasqgS2GbulgEdoGPVrxVHrVlWdkRSWhAAG7XkqI9GnIt/dfXQQVgc0o+GP3dGBDNExlvxTGkVs9ugac+SnND2n9ET9DxWeVvhT4igdU12XUl1ql9kQYleNuQPbYesu8lCVEL/1GuhFpMfPSE68WFva3aZlkRUga4Ns2dNxY63i4RcfHkERzRGfrSiGHJ9IBAPzZGObGwvbGL5Ta7DlBp01jx3pFRaiFUfLD4nz6mtKkXLkIKsRN7xxeEzbuERGqhuEbQFFHF9jwcbWFccDBVVJA76anRYZ6c1rRd44Njd3B2n+rhcSwUEWRqJjwVZYWHIOl7HyHM5nq9GBHAHfeRP1cRKOKBel7FVBzhY0f2HckMEO2IYSbkdWNX0kIGUCx+do5IykHSU5ePcwHYDqAWy5IB3XtheE+iz587CZuzQjYU0XrPgSOfdHKFNOXF9UOGgV8qxaHi4s07l1C31/Q2BTRFuKSBhYI9zH99Uwmc8ZqTZ8O20TJtL5coyJtI6yjw7x+SsVH7hBLo+jBypyKKYL9Me83Rj6mr6lTzm7wYYe1lwGl+QT9vcwCRnCXpzXMPD61iTUH/hfWgcUaOVJeY0mL9+Ddhlg5uEFECBRbscKUr/lz14UGoWB0QyA2vEFbw6ZhNlLEPXUaIIUAMRP1uTj9KD1Ehord+0Bqplp2RG3HPez99sUvMWKAYgU7q10krDFXPmvECwJ3mim7XxJVOqAb5Qosxok1ORTuFfKOhBVmr92IFwVg3YdQ2B5O2Jzqq7/XoAWEZ69yNFm9SuduBCxMsszVxt/ZG1BUsS8fWAN9I6iXN8VzLaKZ9tp/crmPcPYTn1/Ed+Kd3LFDy+r1y8FjuQu/xuA1ZJbBHPyiKyMaj4dv2UWZkRCSdAo9dNWPVWYSv/qEaOgA0JNQYi5V5W78xAyqxzp5gJo1805YXl3/MJAW+8WVFICIHlxYect+clozRVZEoZQnZmOtWilfFt2dBVWWx3SpkrhPpEgUf0VxfbdRHwXDh+iGv9ATafKRDeSsdDJEkrLafdkzq4LEW5YUE+0Dx47PO7FUNiLPKfxeXM/kAwYycnxN9p5CcqF9MfCMkA9E9tC6b/2wqipb7oMnrdmyB7jm7rMK89TISaVcH4sUqAYgkmVcIlyqRq43SZl8HSzE511iBoPhHX3jC8+COeHhR8XXqB7cjaRXwommAbsnzcZ3+QZllv4QBnVhEYF8H8sFEzqR6uvxgDhEDcF0YyZIxBH3T9FTKRnzuck1bRHj9IZBrHMndbpUtgft93Dn3KoFDgnCktF7tt5GSx+aRnChhBZ2KkRouNfKY9GMA+PNnEaehO7p4Ecs7qla/PY2F4nFS+pleya4yhiUYmPreBL7BAXde/g9zgOnegOTK+arBMbeSpZGpMt2LBTctYl4lapFS5VR0gPvnmN3MHet4FFVBF8uwvafpaPFZScl4zPCLobly/WFP8Rpnd2sN/Wcm0uFnmM3kP/p1H5kfOyePW9vhGOrf3S/j8cwhzst1oiY2Qc2IpkQjIzsAEX8F8VtbW2Fkaig5uOwlkBrFnm3ZDEKxKjAzlfFwT2zqzCo/wa1BIdg5wtTKxpXnK9mxzKSENCF5zjitaJVBj1/eIWCAdpmxLGBau9D1SN7i9r8QzYdMUdBWsi/nJ2176MIsFwRirRFwS8TssoxRL/1k5njWu7DROg+X14dDtRyyR+2HsSX3weTWH++SnJDQm3Ma38QX9jGAqBy5Qh1NegxSckyjTMghN3znhUz7m/Z28MbUMhrTcf+XEt3aWUzB9ZcIrPTVf5GMf0vX1R3dZ/evOhPz6s+hML7i/J6C6+/8O4nDL9efcf1iTzoCC/MWY2+hbC/ceSGXgdXBoazCe4XvurActsdRRg5Hx7rglTkxjJvGei8F0QmaCUxbBC6x70dJQ/aucvGuHmdgQnAonlXCrdMogf8xTn6yudhc6gt7DusCigf8IQ2N/fYW9KAVm0Sk50M8zQGq1M5ucl1c3gKaI+kI/WcxXx1lGGUXdxTe60y9lyeCkR6Ffp1ui+6HuwVKyPhI11GyATId9TMrr8Wd2JDGqk9xWAQucYQyjIY65KbnDu6ZIRZmrYJzgNDQYXEUoaF0MeHOshrewspD1rEnRuexKcfhZWTle98Bz+iNtcWPxB4/4RI0olYrSUlkFfYY1gNgXLHOnUHegpqqtnf+c9TfjQCBeH3RcguyFWuTK5ZNf5c20SpZWMZitpI8LqwTrywux7HR3e1h6JuoLOuzRiWwJXlhcYGN9LB2I1pfz2tOIBrN4SWfNkediciDuU8Yc3NhMxHuH1g8dGSm383FoGxpFCJxgaKwMGn25XMBevntGnm1ITkN7RPMt9JRolGDEcppLqHkDlpzA8/h1It3la44SouxgAUYbAyTFL08XHroKdU8kTzbSjzULpEVIJphfRyIWoH6SQHD4CIdt0B7jfQDqeUxlQDUrLAbQV9wVgGWf75EIUpwoICZsp3vg3s3pS/IM1ENfdDKiRQjCOWbgqt5M57xkTSwogDgKNPuH57vhCYb8UDzwIgD6bPWXnx1j6mxqZEOQsDQBk+MhupQyOkPmQjhrqI6SZ6fnTi7ejcUBh2j4VuxxQ4bqUqTz5gvSZGhX/ECths5vEunXHjtEgw127MRuJGikWapXE0gsO52ixYsEVoXu6EYh30NtvPh+HJ4JnEZuSXRxAv4As5mOYPj/Q2BtJdeRJM8wzvVG2RmX/DEcW1F1Qbo/Wj8qnXgVRzHDSEVPJs+NLVxlE2f1uTq3ngxypOvaCCXlHA+GXJaWK7M8WuvvEaNRgbM+AeYTqbvA/Eir5Bw6HNHrlmvXTEEsaMx0ilDkLbJAuUeIqQ9oIFVwXtanH1bymi9qBVc/h0xCwEocP2SIucd+QnFXlAlOB5h1sDBRPi1pM2hbeHc+omusXiqOppaJ7o654frGlIOIiE6kFqaJqX9J9J5e1opo2nh5U0SCCiH/blx+s904Vkn4Yd6eAzgZmfHlMI8bY3XSYE/ELAeQKcC2PrWujJ5ZUWh9a1gBQolkkDL7vtR94EBUZFUWa2YEUHXD+8vey+dkQFHdqexSbQxfA/lvGKC57DRDyQ5LtxAXyzMosCg59K68ZwpwOvtA3WwpvvaFxyiKMFM7jPstz+UgIjJe0J9UbcBCwn2R47FsO2qwlVAxV+UwawH9QYPCvPnu9t6nWEGEKFTNmQIDzv8uVlyzu3nMa1RBScM1mUmas71hHsGS5kO4a21mkuA6FIyZHbPO2+qaLFUmutpPY0IIebCMpX5WFPBF1sIof9Bqe/aw4qP7uCJQb91nVsimvsZe9k4aYJQcQFix7d/W6JY6sl9yeEx5sphETxVgiKwl9er8t/rjJeT0cdmqtTu+g/WHMV8tgoZSXFsXuvQtZGv7nCRMJ503dEhI6sfxFW11jptyEDtiv++ocyI0wa69KHIWw0D4T82IiF9TXJrzybuPQJtrLdcLogRKGjKTG6heftNcpRomdp5wda3BQBe/fGCpG7gShF4awF4nz2Z0ls+BUa4udTXme8xJ0UvZib+vNh3hFL3wol1IeXahegr8iC9PGar/JhhJCGOS5S2jMGzwPn4j/OtIOaBNtKXlAeixgGJjamJGD5AwfJCGUM8hWs0YT4hMONh3XGLZNQymgeI843LTcpJFK3xOKr2uoZid/WmAhYaGCqssfor/vueuFMhVNtE20m7tvGU6ZjGGJ0Y6qPZCk9uJiWRQM4dYaoafY7srZtitPgkcQRZskXptyJ34R9orfsQMMGgRJHRhJ9YX+Dfg7GVtp1hTQoEoT1F2ey6T5LxR8h6sQTQERUlPJY986XOa5+QusGnFn2nQPoRwZL7Ae+/pvVhXBUkgq2YCwrSXASy8v8xERNFENqo405xUJzRKyfutPG8QNce4+XR+rbQoPKDKJ2RWdpI2LZRcZvFcIDCAo1HoRlDp8Ejzy9CxZDeDM2bn3G0OVltv89MPw4D2zcOHHXxYDERIWl102WhrL9SaBOeYRBOgc8CT8VpCQ3iILNY+jHNDs44wdMN/ZpkuCol0/6RbaI4M9sVl/4euizk6xMlQSXDk4L7XCy2h50X3kToRTHeMtYL9dNdZTlKdkUHIDdhcci+ZlsSp4qXbstqaOz8QS+kTXb7WqJg/xE4vXfbIHHmJq378qIlI/J0NvrGQoBhhOiH+ZiE7bZR+c8olQIDgTSg3MKHRKxW9lk+oPtDPAHjukCYf2oWpZhA8ic/bCmRiWtgds+OfurTbZtPWRNa4TVlcM4PM/fkkk9boigyJ9H0Ws1kz2/2TU6ZCV6GjoMBnRiXg9+P+DQ+5zRO1TICcUdKGTl8bMnM/xjwPxD00fEFICuSWkR2F/HLMF6H+uyxkPNce36dJNzBZc0ez/8aIU2ZDSXyEPCz0SsNojM1uCEMHnUJloS6thULMqBoUrahpnuUAUuqIiTkBcVWtqvCEVU5QA3ZToTgvNSUS87snnEFHtAMiH2hcSSKnTxkp2DBvavQCgbEhG22yH3GvVkaMVr2TNTL0GBUmKn+Pv3adPEbE64nrICgioQ/845i+mshv0Luj7OaI5U2n/kx7zhCgWXfLsL/u0x3WH/w+y9QO6ES7qR+aRIdkiP/9/tiLTXBzyVAaFQYF6tWX//5HoqLAW9UM4NwEBYsS3MjPbhu0mEu6f8/EBaDY6WYTrkaQVCx2LGfYnm7le++BpvHRQETwX1npehuL6fi/nh2NdQHSWElaR/dbQ95flcdk4Ys2GvR2r2sp4DZN5hMF6Leg90soXVhVvLXFCYdCayIqGMagIEyIiGK9OamhNkdqqPU9AdB7otHnyPohTpNquiGQ/AF0Yh11hKP9s3OmuWG1QzJl9E6SVaA1lrmCp5I1IGnpcLx+DRO09t76zuoNxoK5hsPIYNp2KMSwy9i42wea+51n1E/Bhd4ITHb3kiZvXlz/27h9aTiw1qX3Kg6Gv398y+IsZFaVW9yD+oZzn8rJMwvlvFKodEvmzMRtKuSiPcJuUWRDdlbbB7LVeQ/UN5YDF7SgaSt5eAVde5TXEpB1nBIvtFNWxGAGsfrfEaR1+UtAIvhAitlqbeZcloQ8vMLezp8kagV4VSWGst03ZWPP4wh9uFZtLRAeBI8bXreD1kzXmJBErrNM+mwU9WUk0VoYiPW4bvIncyxWe/eBtwxEFgsrxFWOh428RGP6zJGlBN5s7jhHRm9J/tVljhgd1NSXFxRYcDuMOM5EU6dHSkPdQN554FgscP4/adrp0dQ3GQCwY+hF4xjHlkCT37btIo2fgWcMcLQVbt0AdLIvJ07UfTa4CFyQEfF/NfVZv1A8r5nCLaBIGbcaYSMnwfu2yET1OEnQdn72e4AahwJhXwqf9pA6QF+bKS03SgABHeZvsylCl2RKiRHlIHc4A2I7FrUSBCCkegtAtbRfYMxM/0VedmtMgGM6mJCR5RvaoZaesShV2TRN9pDqgjj29dG+leneIVuIeZFCV5j4xZF2Mt/vFBhK1GLemquvLjbZKcCyW0WsOxBNXpKoSExYkERpH8OgSF6Af3+nuDtxEg9oUbPNTQt9MGYAhv9h8nQLiQyMpQ2h/PRQzgTJ6/X1oTjYcVM+5MjEQuM5QkJXJQEq9xrlLKVHoGcYLp6Z31DMIMdLHb4fauRRrCewexnYpoI0O07/SrpQQ39usZKNXQgBJF7j/HX6HGhnjI+q13wHNoBJgmbExORWutRyIkUzOcE115q0njvoQ4lWUprWt4xqvu3BJDH0qG+h3Q4XEV+l78mKNBz2XuxWH+TUEanmHyY61CgZk32IRccK8BhCPpXXkiHfWbGXRGyc1ymumpbf36dOSq/AdQRYfxKG8Hh7GX+4PD1aNsc0RZdMCYWRjo/8Ws7GJSE98HFHcm01QHOky3yiO1AbZyRYOfUlxc+Mgj7Ig2HYFFDsSfC4PgoUFm37qzVnxO1MrHcq+pQGeN6/L7tdH9C/cVRehmIQ0S/lYCb+sbMOMFqsSAEHn0cAACwEQAEH30cAACwEUAEGH0sAACwEZAEGW0sAACwJAHwBBptLAAAsCiBMAQbbSwAALAmoYAEHF0sAACwOAhB4AQdXSwAALA9ASEwBB5dLAAAsDhNcXAEH10sAACwNlzR0AQYTTwAALBCBfoBIAQZTTwAALBOh2SBcAQaTTwAALBKKUGh0AQbPTwAALBUDlnDASAEHD08AACwWQHsS8FgBB09PAAAsFNCb1axwAQeLTwAALBoDgN3nDEQBB8tPAAAsGoNiFVzQWAEGC1MAACwbITmdtwRsAQZLUwAALBj2RYORYEQBBodTAAAsHQIy1eB2vFQBBsdTAAAsHUO/i1uQaGwBBwdTAAAvZOJLVTQbP8BAAAAAAAAAAAID2SuHHAi0VAAAAAAAAAAAgtJ3ZeUN4GgAAAAAAAAAAlJACKCwqixAAAAAAAAAAALk0AzK39K0UAAAAAAAAAEDnAYT+5HHZGQAAAAAAAACIMIESHy/nJxAAAAAAAAAAqnwh1+b64DEUAAAAAAAAgNTb6YygOVk+GQAAAAAAAKDJUiSwCIjvjR8AAAAAAAAEvrMWbgW1tbgTAAAAAAAAha1gnMlGIuOmGAAAAAAAQObYeAN82Oqb0B4AAAAAAOiPhyuCTcdyYUITAAAAAADic2m24iB5z/kSGAAAAACA2tADZBtpV0O4Fx4AAAAAkIhigh6xoRYq084SAAAAALQq+yJmHUqc9IeCFwAAAABh9bmrv6Rcw/EpYx0AAACgXDlUy/fmGRo3+l0SAAAAyLNHKb61YKDgxHj1FgAAALqgmbMt43jIGPbWshwAAEB0BECQ/I1Lfc9Zxu8RAABQkQVQtHtxnlxD8LdrFgAApPUGZKHaDcYzVOylBhwAgIZZhN6kqMhboLSzJ4QRACDobyUWztK6csihoDHlFQAo4suum4GHaY86ygh+XhsAWW0/TQGx9KGZZH7FDhsRQK9Ij6BB3XEKwP3ddtJhFRDbGrMIklQODTB9lRRHuhrqyPBvRdv0KAg+bt1sbLQQJPvsyxYSMjOKzckUiIfhFO056H6clv6/7ED8GWrpGRo0JFHPIR7/95OoPVDiMVAQQW0lQ6rl/vW4Ek3kWj5kFJLI7tMUn34zZ1dgnfFNfRm2euoI2kZeAEFtuARuodwfsoySRUjsOqBIRPPC5OTpE94v91Zap0nIWhWw8x1e5BjW+7TsMBFcerEanHCldR0fZR3xk76KeeyukGFmh2lyE79k7Thu7Zen2vT5P+kDTxjvvSjHyeh9URFy+I/jxGIetXZ5HH6x7tJKR/s5Drv9EmLUl6PdXaqHHRl6yNEpvRd7yX0MVfWU6WSfmDpGdKwd7Z3OJ1UZ/RGfY5/kq8iLEmhFwnGqX3zWhjzH3da6LhfC1jIOlXcbjKgLOZWMafocOcbfKL0qkVdJp0Pd94EcEsi3F3NsdXWtG5GU1HWioxa6pd2Px9LSmGK1uUkTi0wclIfqubzDg59dERQO7NavEXkpZeirtGQHtRWZEafMGxbXc37i1uE9SSJb/9XQv6IbZgiPTSatxm31mL+F4rdFEYDK8uBvWDjJMn8vJ9sllxUgfS/Zi26Ge/9e+/BR7/waNK69ZxcFNK1fG502kxXeEMEZrUFdBoGYN2JEBPiaFRUyYBiS9EehfsV6VQW2AVsaHzxP2/jMJG+7bFXDEeF4ECcLIxI3AO5K6scqNFYZlxTwzavWRICp3eR5NcGr37wZtmArBivwiQovbMFYywsWEOQ4tsc1bCzNOsfxLr6OGxQdx6M5Q4d3gAk5rrptciIZ5LgMCBRpleBLx1kpCQ9rH47zB4WsYV1sjxzYuWXpohNy8EmmF7p0R7MjTii/o4sYj2zcj53oURmgrGHyroyuHtnD6XliMdMP5At9V+0XLRPPNGQYu/3HE91OXK3oXfgXA0J93in9uViUYrPYYnX2HUJJDis6PnS3nB1wx10JuhKS29G1yE1R5QMlTDm1i2gXd1JG4zqhpd5ELp+Hoq5CHYrzC87EhCcL63zDlCWtSRJt8I4B9mXxzSVc9PluGNwWiKzygXO/bUEvc3G4ih6THNWrNzGol+SI/edGsxbz2xHKloU9kr0d6/yhGGDc71IWffzmzPYs5SV8yh5406vnG85dEEAaPK+XjT4TK2TLcBFCdRTQIAub/TAO2DU9/swVkpIZBOnNAT29EU6DzD1AG5v7j6KxICFGFssQ0p8mCBGC+jML3mip19v9lMZHMEoVI/kAjhXDk81SPTq4WbycGrabwHjtWXzAU2YkE7j1oRCjwvDWaHCbsOh/7Rcmc8oUTPOsDINMwtzi3+id7w/9GQ8Y7OfRb/nJ7YuxwvUpPhATHudhxst3POnuXTNztE0UmOVg+re+lYujajUAkCFhGf4e+fhlLntuTMVCAPRpuR9fs5u7//wMxU+7KYA44tMTN6CCqj88ULYjKjSgxtrIGERII5VPS+SjrDRBSHgR+x4rDTa9Ea9u5uvAKC3r6lwTdZCDLNZaCuAm8XL4pSU0GJN0pLeL8QyYcK2Pdg8vQR7cyMZS9xYIX2bMGappvegSE3t4J7UcyvZ/P6AUxOyiF9eZVnHio3z0X0/IGfWnix0mINaGbebN+JsxHTD5SHcSMKiL6AhgAfcCfiR8NxsVFzySriILuMG0g50tWwVi2hxlG631BhP5UHKC/FhDfQgSP2IYs8hXN+UOozsvlJyKFs963t+6LYWe0osKO7lDLRzBDOvLlDwTo2OX5sRTSpwR8c/l/rkL2Is8PSC26FwDFu5Dn36oDs6ui0yo4yI0hBt1iiNPKclATdcvSc6VoDIREm3sonP7kCDNe9tBu0h/FVaIp4tQOrVowFpSEuoa3xo2tUhXckRxQbh4c0vScMsQg+Ia7Y6VzVHmVlDeBk3+FCSbYajy+kDmn2zklUjgPRr3AD2p15zo7+PDrl0trGYQNEGMkw3E4uvcdBq1OFeAFIFRb/gQddsmFBJh4gZtoBnxkkWbKilJmEyrfE0kRAQQrfcWQnVzW74f1ttgLVUFFJi1nJJSUPKtp8sSuXiqBhn/4kM3Z+RumZF+V+cWVUgf322KgsBO5f8ar5ZQLjWNE1cJLaNwot6/4Vq85HmCcBitS/jLDEvWL5px610Yo4weTC97/+fu5V0AJ7M67+UXEx/7Wf+hal91wPBfCWvf3RfneTB/SkW3kvDst8tFV9UdMEx+j06LslsW9FKfi1alEjzfXTMiLp/yG7Enhy6sThcLVzXAqvlG72Kd8Sg6VyIdZ1YhuApcjNVdApdZhHY1EgGsKWYNc+9K9cL8byXUwhYBF7S/0E+rnbLz+8suiXMcYI7Qd+IRi6JPeH0/vTXIEfmxxBVb1i2LY9ZcjyxDOhZ33jXb8Uv5bfwLNLP308gbCqsBKXfPu8R9hwDQeoRdEc0VQvNUw+o1XakAhJnltBVAmxIwKnRlg7TTAOX/HiIbCKELXppoH9JQhCDvX1P1EEqJjvXAQqcGZaXo6jeoMhWdK/IycRNRSL7OouVFUn8aQlvXvyasMu02wYWva5OPEBIyzW8wV3+ohDFnm0Z4sxSXfsCL/Cyf0uX9QEJYVuAZHk9Y1x18o6Ovnmgp9zUsEOZiLk0lW4yMW8bC83RDNxSf+3mg7nGvb/J3szBSFEUZh3qYSGpOmwvvVeC8ZlmWH5RMX20CEUFntTUMNuD3vRO6H7cIQ1URwSJDj0PYda0YqOfkypOqVXHrE3NUTtPYHskQz16citUmc+zH9BCERxP71IJ2Q+2K8I/n+TEVZRkYOoojVJSorexzYXh+Wr4fHmQ2lrRciexz6DwLj/jW0xL9w7vhs6vnkCIMzrK2zIgX/bQq2qCWITUrj4Ff5P9qHR6xWogk/jQBe/mwu+7fYhJlXXGqrT2Cwdk3nWrql/sWv7QNFRnN4jHQhUQF5X26HPeQKK0vwC0fotNKI6+O9BE1tXKYOzD5poqIHexasnEWgmKPfkp8t1Ct6iSn8R4OHJGdGY+urXJSrBJ3CFfTiBH2BOAyGlkPZ1fXlMosCOsVMwaYv2Av00AtDTr9N8plG+ADv3ec/YNIPEhE/mKeHxHYxK6VA/2kWkta1b37hWcVDnYae0Q8TjHesEqtemfBGsmJ8Myq5dDeiq5OrKzguBA7rCyAFR+Fli1aYtfXGOcUStc34NpmJvy48DrNDd8gGo7mIsxIAJidc9ZEoGiLVBAyoCv/WgD+hBAMVshCrmkUPoj2vnGAPaYUj2t60xmEGU4qtC6O4MzP2XIGWUgg5R9wmjDdWAzgIcgHpDctNO8TDcF8FG8PWCq6CY2FOAHrGFDxm9lKE+60KEzwpobBJR/SdgHIDswUcZkvVij0mHcThtQBehL/Wc1/u2syMX9VGKhJghjXfrDAX6oGf/3eah4JblFvRk9u2HsqZG9eywITi8klCxjjic4aNT0LNn7DF+477w3eWyyCYYIMjsNdtB11hbXIarlb8XzRxziaupAS0ubiesWnsi3cxfnGQOk0F4agm9m2UR85Uze4+JAjAh1URAFIEpOzA5Qic5s6ViESaZUB2tZ3oAQ5609CyaupFsP6gZDMlchFB+bjkrsWVBy6PFHan12di8Rvzjs1jrQR6Ivl0Ae1hK61C8KKwrEhFuPuHsVJ4iUao45yLTMeqhtNVTMbbq1X8CWZZ/zfUkoRoSoAosmYbWxvf4H7l+ecFUk1gAr8/ohHS99h+n0hBBtOIZCGXZ+1DI8rfbzulOIQoSk06DQH489ydpxrKjobFQo0QSICyduDD5SDBrUIYhqGwGhVoV1psok8EiRxRX0Qp/DCqgm1Ax+syxZtzZacFNGscxVMosQml35cyIC8wxkDTGiNb+U6eB7POX3QVRoQA1/CcMueSRbmQoicROsgFMT28kx+Btybn1OqwxUmKRl2tC/gHQjTgofolDSbb3MfydAdrBLlw7FUEd0AwSWoE/xEJVdX3jTeqVUUQTEvkhg7lu4s7RXCVRRrWZH9urYe5R0VPLRNmbXs4td63jQyE15lGkshof/ip9uNGRbC/he2/uCdaYm/25FS8Z+bcv4dMZ+sAuK1Vymb0/ZDoQe/Ev7GV4Nao63zgYj0lInJbhe9uC0kMQyZcKKqMfrre0oddpOctp6nX4alCl98c41OElS4Q2SGkffnTs12W9Aw4hZpplT953X1oaKAVHIEvZocAehU/rBpOaVl0HTHIrbgEQIi6j0dxIcOfwRSeavjWBaCqmSNJLUp0p6FpleWHO8bkepe2DYRWkODE8j23XF1ETaldo6ElTAUZBh6dFXO0hWDThSy5bo8GX2emNHqgUcbErFMj8/0xS8OY//CMrEMEVbdH3MDcre70Tu/c3/dTxWs1OdPhE6lKsYKr1Df1KMa6+TwsRJRp9q7Zm2SC2WmECYebV5XJVHRasAId07+zxSwZQg2rW6lhYXwyhTi/QMajj/FQSxlh3NT1v5MrX5CEHGPNlJ3PmlQ6Is+oFgeUxROM8QmFY6DZOIuTsju5WcZIkB1cJpxpP2aumF6at/BHxVISYYAx4beoBR9jKIr2RMamtunwHgoFslZnC+Lds8YoYDS0fCWsls7cIP7LVQDH2SQI4NWnk8ZJSYyvZwUYhN+dOwj7IWjX66vfuzDmToYnZHnLGdnjPeZW57nNEBJHgK7EHygwLc6QPnCECHI7RLD6RSbyLBlSZC381QpOqkXMyTawfocv1t0pTCqs4iTHaBWKLkccle5aGdeSnA1fBJIbHLno06t50IB9lzMQhsXWgdP4UyimKGTgTN0fxPiHJhk0QxwZf9E/DCgqC9MDRK+vQUQzD4/Vjs9yJI7n5AWLi0HFH8OzyuKTHp3Csc0HD18hGwPaWFb1m+simb8oBFMm6VHU8M58suLVy2AOwkWHwKPGSg0yO6+bq04YIqLG1Nh+Q+ZID1VN2VsI3w2NxGoufdTv2iMKoV+RywbBIUVEqj1KO+CL3UmXln3IUXmGguJmXnVsT0J2NqXOjXrzxBO6//XSh6NC47RPYkC5gMVIub/jd1lcI7xRY0rg99EGtXvv3iqPwb5tks4+7ELaxDK6+8Wlc9Ht6ReBnqezoUUvearXHrDGeVN9ocYRkKnGTZw63ksGjCv8PlUz2uJCBBDTGaYtyD82mw4KsPGqwoUVN9/fuUouxGIxvRzuFYNGSrXH94e8ykWKvjxkGasUB965tNK8zfaTRo7lxrAa5ITGeCIHfDFUOHgCT0hsAZ3GB8Y6yRs96QZWUyMKVzIlB4T7xKXoxoHsLev95k5/RwT2KrXfEzhCJylm3UAiDzkF46VDZyfGQsDjwKTAKpL3R15fYjBA/DmYZnhW0BKT6oS15zqsQSsYLr/2XLQHONUFw1EZd4F1/iof5CPBOQbKh2ISv+qY4abyU+62YJuUToSKh2/lfxnArzjKJAjyuXIFnTkLrv7AQOrHDN0rDwfexzJTv1UPeHh6vGfyOuF88wRe6I8qoxZmmXux7pmZzBAFhrLy9Tv7wD/6XlpQIE80BvwXv/k9ZVgPzLsQcjQJWIRrDY/XnO7OM8+Z1L6RK+6FVcEzzVQ6gaDDgHnOBZbKRu2YqEhclLkEalgkOPt2PkQZLsJqg5nXVbTeHRcKU84FT0qjFTSwPQrCJeRs/Nihhpmmtd0g/h4G2X+OlDY/ZMQAIENUqQ2V2L+vUlkTv24FEDhkGZNBO36fS1c/aE85xnIjBpgsCLUvG6cWT7lhTAQ+i8heFwrCWyKA/CNXqc8FPh7KZYzdgsHbQRsMTbRSxn22rN7wFPOSIgFx72DxZ4f2mhQTVj0gC11Y5xWcjvDExCDpGBuMeF4UnxD7E4KtBgwMDAxMDIwMzA0MDUwNjA3MDgwOTEwMTExMjEzMTQxNTE2MTcxODE5MjAyMTIyMjMyNDI1MjYyNzI4MjkzMDMxMzIzMzM0MzUzNjM3MzgzOTQwNDE0MjQzNDQ0NTQ2NDc0ODQ5NTA1MTUyNTM1NDU1NTY1NzU4NTk2MDYxNjI2MzY0NjU2NjY3Njg2OTcwNzE3MjczNzQ3NTc2Nzc3ODc5ODA4MTgyODM4NDg1ODY4Nzg4ODk5MDkxOTI5Mzk0OTU5Njk3OTg5OTAuMGJ5dGUgYXJyYXlib29sZWFuIGAAAA0+EAAJAAAAREAQAAEAAABpbnRlZ2VyIGAAAAAoPhAACQAAAERAEAABAAAAY2hhcmFjdGVyIGAARD4QAAsAAABEQBAAAQAAAHN0cmluZyAAYD4QAAcAAABPcHRpb24gdmFsdWVuZXd0eXBlIHN0cnVjdHNlcXVlbmNlbWFwZW51bXVuaXQgdmFyaWFudG5ld3R5cGUgdmFyaWFudHR1cGxlIHZhcmlhbnRzdHJ1Y3QgdmFyaWFudGYzMi9ydXN0Yy80ZDkxZGU0ZTQ4MTk4ZGEyZTMzNDEzZWZkY2Q5Y2QyY2MwYzQ2Njg4L2xpYnJhcnkvY29yZS9zcmMvc3RyL3BhdHRlcm4ucnMAAADSPhAATwAAADgGAAAUAAAA0j4QAE8AAAA4BgAAIQAAANI+EABPAAAALAYAABQAAADSPhAATwAAACwGAAAhAAAAL3J1c3RjLzRkOTFkZTRlNDgxOThkYTJlMzM0MTNlZmRjZDljZDJjYzBjNDY2ODgvbGlicmFyeS9hbGxvYy9zcmMvc2xpY2UucnMAAGQ/EABKAAAAoQAAABkAAABhc3NlcnRpb24gZmFpbGVkOiBzZWxmLmlzX2NoYXJfYm91bmRhcnkobmV3X2xlbinYUBAASwAAAMAFAAANAAAAIGF0IGxpbmUgaW52YWxpZCB0eXBlOiAsIGV4cGVjdGVkIAAACUAQAA4AAAAXQBAACwAAAGZsb2F0aW5nIHBvaW50IGBgAAAANEAQABAAAABEQBAAAQAAAG51bGwvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZV9qc29uLTEuMC4xMzQvc3JjL2Vycm9yLnJzAAAAXEAQAGEAAAD3AQAAIQAAAFxAEABhAAAA+wEAAAwAAABcQBAAYQAAAAICAAAhAAAAXEAQAGEAAAALAgAAKgAAAFxAEABhAAAADwIAACwAAAAvaG9tZS9ydW5uZXIvLmNhcmdvL3JlZ2lzdHJ5L3NyYy9pbmRleC5jcmF0ZXMuaW8tMTk0OWNmOGM2YjViNTU3Zi9zZXJkZV9qc29uLTEuMC4xMzQvc3JjL3JlYWQucnMQQRAAYAAAAKABAABFAAAAEEEQAGAAAAClAQAAPQAAABBBEABgAAAArQEAABoAAAAQQRAAYAAAAPoBAAATAAAAEEEQAGAAAAD/AQAAMwAAABBBEABgAAAAAwIAAD4AAAAQQRAAYAAAAAkCAAA6AAAAEEEQAGAAAABWAgAAEwAAABBBEABgAAAAaAIAABkAAAAQQRAAYAAAAGwDAAAZAAAAEEEQAGAAAABtAwAAGgAAABBBEABgAAAAbgMAABkAAAAQQRAAYAAAAG8DAAAZAAAAEEEQAGAAAABwAwAAGQAAABBBEABgAAAAcQMAABkAAAAQQRAAYAAAAHIDAAAZAAAAEEEQAGAAAABzAwAAGQAAABBBEABgAAAAzgMAABEAAAD///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////8AAAEAAgADAAQABQAGAAcACAAJAP//////////////////CgALAAwADQAOAA8A/////////////////////////////////////////////////////////////////////woACwAMAA0ADgAPAP///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////wAAEAAgADAAQABQAGAAcACAAJAA//////////////////+gALAAwADQAOAA8AD/////////////////////////////////////////////////////////////////////oACwAMAA0ADgAPAA////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////aW5mLWluZk5hTgBBpo3B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NDgxOThkYTJlMzM0MTNlZmRjZDljZDJjYzBjNDY2ODgvbGlicmFyeS9hbGxvYy9zcmMvcmF3X3ZlYy5ycwAjURAATAAAACgCAAARAAAAL3J1c3QvZGVwcy9kbG1hbGxvYy0wLjIuNy9zcmMvZGxtYWxsb2MucnNhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA+PSBzaXplICsgbWluX292ZXJoZWFkAIBREAApAAAAqAQAAAkAAABhc3NlcnRpb24gZmFpbGVkOiBwc2l6ZSA8PSBzaXplICsgbWF4X292ZXJoZWFkAACAURAAKQAAAK4EAAANAAAAbnVsbCBwb2ludGVyIHBhc3NlZCB0byBydXN0cmVjdXJzaXZlIHVzZSBvZiBhbiBvYmplY3QgZGV0ZWN0ZWQgd2hpY2ggd291bGQgbGVhZCB0byB1bnNhZmUgYWxpYXNpbmcgaW4gcnVzdAB7CXByb2R1Y2VycwIIbGFuZ3VhZ2UBBFJ1c3QADHByb2Nlc3NlZC1ieQMFcnVzdGMdMS44NS4wICg0ZDkxZGU0ZTQgMjAyNS0wMi0xNykGd2FscnVzBjAuMjIuMAx3YXNtLWJpbmRnZW4SMC4yLjk1ICgzYThkYTdjYjgpAEkPdGFyZ2V0X2ZlYXR1cmVzBCsPbXV0YWJsZS1nbG9iYWxzKwhzaWduLWV4dCsPcmVmZXJlbmNlLXR5cGVzKwptdWx0aXZhbHVl".split("base64,")[1],gA=Uint8Array.from(atob(IA),(A=>A.charCodeAt(0)));WebAssembly.instantiate(gA,{"./index_bg.js":g}).then((A=>{L(A.instance.exports),A.instance.exports.__wbindgen_start()}));var QA=function(A,I,g,Q){return new(g||(g=Promise))((function(B,C){function E(A){try{o(Q.next(A))}catch(A){C(A)}}function i(A){try{o(Q.throw(A))}catch(A){C(A)}}function o(A){var I;A.done?B(A.value):(I=A.value,I instanceof g?I:new g((function(A){A(I)}))).then(E,i)}o((Q=Q.apply(A,I||[])).next())}))};function BA(A){return QA(this,void 0,void 0,(function*(){const I=yield function(){return B(this,void 0,void 0,(function*(){if(!navigator.gpu)throw Error("this browser does not support WebGPU");const A=yield navigator.gpu.requestAdapter();if(!A)throw Error("this browser supports webgpu but it appears disabled");const I=yield A.requestDevice();return I.lost.then((A=>{console.error(`WebGPU device was lost: ${A.message}`),A.reason})),I}))}(),g=Z.new(300,300),C=A.getContext("webgpu");if(!C)throw Error("WebGPU from canvas needs to be always provided");const R=navigator.gpu.getPreferredCanvasFormat();C.configure({device:I,format:R}),function(A,I){new ResizeObserver((A=>{for(const g of A)Q(g.target,0|g.contentBoxSize[0].inlineSize,0|g.contentBoxSize[0].blockSize,I)})).observe(A),Q(A,A.clientWidth,A.clientHeight,I)}(A,I),function(A,I){c=function(A,I){const g=A.createShaderModule({label:"triangle shader module",code:i}),Q=A.createRenderPipeline({label:"triangle pipline",layout:"auto",vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:8,attributes:[{shaderLocation:0,offset:0,format:"float32x2"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]},depthStencil:{depthWriteEnabled:!1,depthCompare:"always",format:"depth24plus"}});return function(I,g,B){const C=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),i=new Float32Array(16),o=i.subarray(0,4),e=i.subarray(4,16);o.set([Math.random(),Math.random(),Math.random(),1]);const D=new Float32Array([500,100,800,400,200,400]),t=new Uint32Array([0,1,2]),w=A.createBuffer({label:"vertex buffer vertices",size:D.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(w,0,D);const a=A.createBuffer({label:"index buffer",size:t.byteLength,usage:GPUBufferUsage.INDEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,t);const s=A.createBindGroup({label:"bind group for object",layout:Q.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:C}}]});I.setPipeline(Q),I.setVertexBuffer(0,w),I.setIndexBuffer(a,"uint32"),e.set(g),E.translate(e,[B,0],e),A.queue.writeBuffer(C,0,i),I.setBindGroup(0,s),I.drawIndexed(3)}}(A,I),F=function(A,I){const g=A.createShaderModule({label:"bezier shader module",code:o}),Q=A.createRenderPipeline({label:"bezier pipline",layout:"auto",primitive:{topology:"triangle-strip"},vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:4,attributes:[{shaderLocation:0,offset:0,format:"float32"}]},{arrayStride:4,attributes:[{shaderLocation:1,offset:0,format:"float32"}]},{arrayStride:4,attributes:[{shaderLocation:2,offset:0,format:"uint32"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]},depthStencil:{depthWriteEnabled:!1,depthCompare:"always",format:"depth24plus"}});return function(I,g,B,C,E,i,o){const e=4*B.length,D=A.createBuffer({label:"storage points",size:e,usage:GPUBufferUsage.STORAGE|GPUBufferUsage.COPY_DST}),t=A.createBuffer({label:"uniforms",size:80,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),w=new Float32Array(20),a=w.subarray(0,16),s=w.subarray(16,17),n=A.createBindGroup({label:"bezier bind group for object",layout:Q.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:t}},{binding:1,resource:{buffer:D}}]}),r=A.createBuffer({label:"bezier vertex buffer vertices",size:C.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(r,0,C);const c=A.createBuffer({label:"bezier vertex buffer vertices",size:E.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(c,0,E);const F=A.createBuffer({label:"bezier vertex buffer vertices",size:i.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(F,0,i),I.setPipeline(Q),I.setVertexBuffer(0,r),I.setVertexBuffer(1,c),I.setVertexBuffer(2,F),a.set(g),s.set(new Float32Array([o])),A.queue.writeBuffer(t,0,w),A.queue.writeBuffer(D,0,B),I.setBindGroup(0,n),I.draw(C.length)}}(A,I),h=function(A,I){const g=A.createShaderModule({label:"3d model texture shader module",code:e}),Q=A.createRenderPipeline({label:"3d model texture pipline",layout:"auto",vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:20,attributes:[{shaderLocation:0,offset:0,format:"float32x3"},{shaderLocation:1,offset:12,format:"float32x2"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]},depthStencil:{depthWriteEnabled:!1,depthCompare:"always",format:"depth24plus"}});return function(I,g,B,C,E){const i=A.createSampler({magFilter:"linear",minFilter:"linear"}),o=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),e=new Float32Array(16),D=e.subarray(0,16),t=E.length,w=A.createBuffer({label:"3d model texture vertex buffer vertices",size:C.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(w,0,C);const a=A.createBuffer({label:"3d model texture index buffer",size:E.byteLength,usage:GPUBufferUsage.INDEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(a,0,E);const s=A.createBindGroup({label:"3d model texture bind group for object",layout:Q.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:o}},{binding:1,resource:i},{binding:2,resource:B.createView()}]});I.setPipeline(Q),I.setVertexBuffer(0,w),I.setIndexBuffer(a,"uint32"),D.set(g),A.queue.writeBuffer(o,0,e),I.setBindGroup(0,s),I.drawIndexed(t)}}(A,I),G=function(A,I){const g=A.createShaderModule({label:"3d model shader module",code:D}),Q=A.createRenderPipeline({label:"3d model pipline",layout:"auto",vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:12,attributes:[{shaderLocation:0,offset:0,format:"float32x3"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]},primitive:{cullMode:"back"},depthStencil:{depthWriteEnabled:!0,depthCompare:"less",format:"depth24plus"}});return function(I,g,B,C){const E=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),i=new Float32Array(16),o=i.subarray(0,16),e=C.length,D=A.createBuffer({label:"vertex buffer vertices",size:B.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(D,0,B);const t=A.createBuffer({label:"index buffer",size:C.byteLength,usage:GPUBufferUsage.INDEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(t,0,C);const w=A.createBindGroup({label:"bind group for object",layout:Q.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:E}}]});I.setPipeline(Q),I.setVertexBuffer(0,D),I.setIndexBuffer(t,"uint32"),o.set(g),A.queue.writeBuffer(E,0,i),I.setBindGroup(0,w),I.drawIndexed(e)}}(A,I),y=function(A,I){const g=A.createShaderModule({label:"3d model light shader module",code:t}),Q=A.createRenderPipeline({label:"3d model light pipline",layout:"auto",vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:24,attributes:[{shaderLocation:0,offset:0,format:"float32x3"},{shaderLocation:1,offset:12,format:"float32x3"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]},primitive:{cullMode:"back"},depthStencil:{depthWriteEnabled:!0,depthCompare:"less",format:"depth24plus"}});return function(I,g,B,C){const{worldViewProjection:E,normalMatrix:i,lightColor:o,lightDirection:e}=g,D=A.createBuffer({label:"uniforms",size:144,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),t=new Float32Array(36),w=t.subarray(0,12),a=t.subarray(12,28),s=t.subarray(28,32),n=t.subarray(32,35),r=A.createBindGroup({label:"bind group for object",layout:Q.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:D}}]}),c=C.length,F=A.createBuffer({label:"vertex buffer vertices",size:B.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(F,0,B);const G=A.createBuffer({label:"index buffer",size:C.byteLength,usage:GPUBufferUsage.INDEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(G,0,C),I.setPipeline(Q),I.setVertexBuffer(0,F),I.setIndexBuffer(G,"uint32"),w.set(i),a.set(E),s.set(o),n.set(e),A.queue.writeBuffer(D,0,t),I.setBindGroup(0,r),I.drawIndexed(c)}}(A,I),M=function(A){const I=A.createShaderModule({label:"blur shader module",code:w}),g=A.createComputePipeline({layout:"auto",compute:{module:I,entryPoint:"main"}});return function(I,Q){const B=[0,1].map((()=>A.createTexture({size:{width:I.width,height:I.height},format:"rgba8unorm",usage:GPUTextureUsage.COPY_DST|GPUTextureUsage.STORAGE_BINDING|GPUTextureUsage.TEXTURE_BINDING}))),C=(()=>{const I=A.createBuffer({size:4,mappedAtCreation:!0,usage:GPUBufferUsage.UNIFORM});return new Uint32Array(I.getMappedRange())[0]=0,I.unmap(),I})(),E=(()=>{const I=A.createBuffer({size:4,mappedAtCreation:!0,usage:GPUBufferUsage.UNIFORM});return new Uint32Array(I.getMappedRange())[0]=1,I.unmap(),I})(),i=A.createBuffer({size:8,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.UNIFORM}),o=A.createSampler({magFilter:"linear",minFilter:"linear"}),e=A.createBindGroup({layout:g.getBindGroupLayout(0),entries:[{binding:0,resource:o},{binding:1,resource:{buffer:i}}]}),D=A.createBindGroup({layout:g.getBindGroupLayout(1),entries:[{binding:1,resource:I.createView()},{binding:2,resource:B[0].createView()},{binding:3,resource:{buffer:C}}]}),t=A.createBindGroup({layout:g.getBindGroupLayout(1),entries:[{binding:1,resource:B[0].createView()},{binding:2,resource:B[1].createView()},{binding:3,resource:{buffer:E}}]}),w=A.createBindGroup({layout:g.getBindGroupLayout(1),entries:[{binding:1,resource:B[1].createView()},{binding:2,resource:B[0].createView()},{binding:3,resource:{buffer:C}}]}),n=a-14;A.queue.writeBuffer(i,0,new Uint32Array([15,n]));const r=Q.beginComputePass();r.setPipeline(g),r.setBindGroup(0,e),r.setBindGroup(1,D),r.dispatchWorkgroups(Math.ceil(I.width/n),Math.ceil(I.height/s[1])),r.setBindGroup(1,t),r.dispatchWorkgroups(Math.ceil(I.height/n),Math.ceil(I.width/s[1]));for(let A=0;A<1;++A)r.setBindGroup(1,w),r.dispatchWorkgroups(Math.ceil(I.width/n),Math.ceil(I.height/s[1])),r.setBindGroup(1,t),r.dispatchWorkgroups(Math.ceil(I.height/n),Math.ceil(I.width/s[1]));return r.end(),B[1]}}(A),N=function(A,I){const g=A.createShaderModule({label:"texture module",code:n}),Q=A.createSampler({minFilter:"linear",magFilter:"linear"}),B=A.createRenderPipeline({label:"texture pipeline",layout:"auto",vertex:{module:g,entryPoint:"vs",buffers:[{arrayStride:4*r,attributes:[{shaderLocation:0,offset:0,format:"float32x4"},{shaderLocation:1,offset:16,format:"float32x2"}]}]},fragment:{module:g,entryPoint:"fs",targets:[{format:I}]}}),C=A.createBuffer({label:"uniforms",size:64,usage:GPUBufferUsage.UNIFORM|GPUBufferUsage.COPY_DST}),E=new Float32Array(16),i=E.subarray(0,16);return function(I,g,o,e){const D=Math.round(o.length/r),t=A.createBuffer({label:"vertex buffer vertices",size:o.byteLength,usage:GPUBufferUsage.VERTEX|GPUBufferUsage.COPY_DST});A.queue.writeBuffer(t,0,o);const w=A.createBindGroup({layout:B.getBindGroupLayout(0),entries:[{binding:0,resource:{buffer:C}},{binding:1,resource:Q},{binding:2,resource:e.createView()}]});I.setPipeline(B),I.setVertexBuffer(0,t),i.set(g),A.queue.writeBuffer(C,0,E),I.setBindGroup(0,w),I.draw(D)}}(A,I)}(I,R);const Y=[];return function(A,I,g,Q,B,C){const E=function(A){return k.ortho(0,A.clientWidth,A.clientHeight,0,1,-1)}(I);requestAnimationFrame((function I(B){const i=Q.createCommandEncoder(),o=function(A,I){const g=A.getCurrentTexture();return function(A,I,g){U&&U.width===I&&U.height===g||(null==U||U.destroy(),U=A.createTexture({size:[I,g],format:"depth24plus",usage:GPUTextureUsage.RENDER_ATTACHMENT}))}(I,g.width,g.height),{label:"our render to canvas renderPass",colorAttachments:[{view:g.createView(),clearValue:[0,0,0,1],loadOp:"clear",storeOp:"store"}]}}(g,Q),e=i.beginRenderPass(o);let D=!1,t=0;for(;!D;){const{texture_id:I,vertex_data:g}=A.get_shader_input(t);t++,D=0===g.length,D||N(e,E,new Float32Array(g),C[I])}e.end();const w=i.finish();Q.queue.submit([w]),requestAnimationFrame(I)}))}(g,A,C,I,0,Y),{addImage:Q=>{const B=Y.length;Y.push(function(A,I,g={}){const Q=A.createTexture({format:"rgba8unorm",mipLevelCount:g.mips?S(I.width,I.height):1,size:[I.width,I.height],usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT});return function(A,I,g,{flipY:Q,depthOrArrayLayers:B}={}){A.queue.copyExternalImageToTexture({source:g,flipY:Q},{texture:I},{width:g.width,height:g.height,depthOrArrayLayers:B})}(A,Q,I,g),Q}(I,Q)),console.log("env",Q.width,A.width);const C=function(A,I){if(I.height-A.height<I.width-A.width)return J(A.height,.2*I.height,.8*I.height)/A.height;return J(A.width,.2*I.width,.8*I.width)/A.width}(Q,A),E=Q.width*C,i=Q.height*C,o=.5*(A.width-E),e=.5*(A.height-i);g.add_texture([{x:o,y:e,u:0,v:0},{x:o+E,y:e,u:1,v:0},{x:o+E,y:e+i,u:1,v:1},{x:o,y:e+i,u:0,v:1}],B)},updatePoints:(A,I)=>{g.update_points(A,I)}}}))}var CA=I.A;export{CA as default};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"glue_code.d.ts","sourceRoot":"","sources":["../../../crate/glue_code.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
export function __wbg_set_wasm(val: any): void;
|
|
2
|
+
export function __wbindgen_is_undefined(arg0: any): boolean;
|
|
3
|
+
export function __wbg_stringify_eead5648c09faaf8(...args: any[]): any;
|
|
4
|
+
export function __wbindgen_string_new(arg0: any, arg1: any): any;
|
|
5
|
+
export function __wbg_new_e69b5f66fda8f13c(): Object;
|
|
6
|
+
export function __wbindgen_number_new(arg0: any): any;
|
|
7
|
+
export function __wbg_set_20cbc34131e76824(arg0: any, arg1: any, arg2: any): void;
|
|
8
|
+
export function __wbg_new_034f913e7636e987(): any[];
|
|
9
|
+
export function __wbg_set_425e70f7c64ac962(arg0: any, arg1: any, arg2: any): void;
|
|
10
|
+
export function __wbindgen_string_get(arg0: any, arg1: any): void;
|
|
11
|
+
export function __wbindgen_throw(arg0: any, arg1: any): void;
|
|
12
|
+
export function __wbindgen_init_externref_table(): void;
|
|
13
|
+
export class State {
|
|
14
|
+
static __wrap(ptr: any): any;
|
|
15
|
+
/**
|
|
16
|
+
* @param {number} width
|
|
17
|
+
* @param {number} height
|
|
18
|
+
* @returns {State}
|
|
19
|
+
*/
|
|
20
|
+
static "new"(width: number, height: number): State;
|
|
21
|
+
__destroy_into_raw(): number | undefined;
|
|
22
|
+
__wbg_ptr: number | undefined;
|
|
23
|
+
free(): void;
|
|
24
|
+
/**
|
|
25
|
+
* @param {any} raw_points
|
|
26
|
+
* @param {number} id
|
|
27
|
+
*/
|
|
28
|
+
add_texture(raw_points: any, id: number): void;
|
|
29
|
+
/**
|
|
30
|
+
* @param {number} index
|
|
31
|
+
* @returns {any}
|
|
32
|
+
*/
|
|
33
|
+
get_shader_input(index: number): any;
|
|
34
|
+
/**
|
|
35
|
+
* @param {number} texture_id
|
|
36
|
+
* @param {any} raw_points
|
|
37
|
+
*/
|
|
38
|
+
update_points(texture_id: number, raw_points: any): void;
|
|
39
|
+
}
|
|
40
|
+
export const __wbg_error_53abcd6a461f73d8: {
|
|
41
|
+
(...data: any[]): void;
|
|
42
|
+
(message?: any, ...optionalParams: any[]): void;
|
|
43
|
+
};
|
|
44
|
+
//# sourceMappingURL=index_bg.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index_bg.d.ts","sourceRoot":"","sources":["../../../../crate/pkg/index_bg.js"],"names":[],"mappings":"AACA,+CAEC;AAyKD,4DAGC;AAED,sEAGe;AAEf,iEAGC;AAED,qDAGC;AAED,sDAGC;AAED,kFAEC;AAED,oDAGC;AAED,kFAEC;AAED,kEAOC;AAED,6DAEC;AAID,wDASC;AApHD;IAEI,6BAMC;IAaD;;;;OAIG;IACH,oBAJW,MAAM,UACN,MAAM,GACJ,KAAK,CAKjB;IAnBD,yCAKC;IAHG,8BAAkB;IAKtB,aAGC;IAUD;;;OAGG;IACH,wBAHW,GAAG,MACH,MAAM,QAIhB;IACD;;;OAGG;IACH,wBAHW,MAAM,GACJ,GAAG,CAKf;IACD;;;OAGG;IACH,0BAHW,MAAM,cACN,GAAG,QAIb;CACJ;AAqDD;;;EAA6H"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"canvasSizeObserver.d.ts","sourceRoot":"","sources":["../../../../src/WebGPU/canvasSizeObserver.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,MAAM,EAAE,iBAAiB,EACzB,MAAM,EAAE,SAAS,EACjB,QAAQ,EAAE,YAAY,QAgBvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDevice.d.ts","sourceRoot":"","sources":["../../../../src/WebGPU/getDevice.ts"],"names":[],"mappings":"AAAA,wBAA8B,SAAS,uBAuBtC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"createCheckedImageData.d.ts","sourceRoot":"","sources":["../../../../../src/WebGPU/getTexture/createCheckedImageData.ts"],"names":[],"mappings":"AAiBA,MAAM,CAAC,OAAO,UAAU,sBAAsB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,SAAS,CAwBrF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"generateMimapsArray.d.ts","sourceRoot":"","sources":["../../../../../src/WebGPU/getTexture/generateMimapsArray.ts"],"names":[],"mappings":"AAIA,UAAU,cAAc;IACtB,cAAc,EAAE,oBAAoB,CAAC;IACrC,eAAe,EAAE,CAAC,CAAC;CACpB;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,MAAM,EAAE,SAAS,EACjB,OAAO,EAAE,UAAU,EACnB,cAAc,EAAE,cAAc,QAuH/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/WebGPU/getTexture/index.ts"],"names":[],"mappings":"AAGA,UAAU,OAAO;IACf,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,KAAK,CAAC,EAAE,OAAO,CAAA;IACf,kBAAkB,CAAC,EAAE,MAAM,CAAA;CAC5B;AAED,KAAK,aAAa,GAChB,WAAW,GACX,gBAAgB,GAChB,iBAAiB,GACjB,gBAAgB,GAChB,eAAe,CAAC;AAOlB,MAAM,WAAW,YAAY;IAC3B,MAAM,EAAE,0BAA0B,CAAA;IAClC,WAAW,EAAE,OAAO,CAAA;CACrB;AAgCD,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAUlG;AAGD,wBAAgB,WAAW,CACzB,MAAM,EAAE,SAAS,EACjB,aAAa,EAAE,UAAU,EACzB,KAAK,EAAE,MAAM,EACb,MAAM,EAAE,MAAM,EACd,MAAM,EAAE,0BAA0B,EAClC,UAAU,EAAE,MAAM,EAClB,OAAO,GAAE,OAAY,QA0BtB;AAGD,wBAAgB,uBAAuB,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,aAAa,EAAE,OAAO,GAAE,OAAY,cAWtG;AAiBD,wBAAsB,eAAe,CAAC,GAAG,EAAE,MAAM,wBAIhD;AAED,wBAAsB,sBAAsB,CAAC,MAAM,EAAE,SAAS,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,uBAG5F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"m3.d.ts","sourceRoot":"","sources":["../../../../src/WebGPU/m3.ts"],"names":[],"mappings":"AACA,QAAA,MAAM,IAAI;gBACI,YAAY;sBAON,MAAM,UAAU,MAAM;;gBAe5B,YAAY,KAAK,YAAY;0BAmCnB,CAAC,MAAM,EAAE,MAAM,CAAC;6BAOb,MAAM;sBAUb,CAAC,MAAM,EAAE,MAAM,CAAC;iBAOrB,YAAY,eAAe,CAAC,MAAM,EAAE,MAAM,CAAC;cAI9C,YAAY,kBAAkB,MAAM;aAIrC,YAAY,SAAS,CAAC,MAAM,EAAE,MAAM,CAAC;CAG/C,CAAA;AAED,eAAe,IAAI,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/blur/getProgram.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,IAehD,SAAS,UAAU,EACnB,gBAAgB,iBAAiB,KAChC,UAAU,CA2Kd"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/draw3dModel/getProgram.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,IAwCtF,MAAM,oBAAoB,EAC1B,QAAQ,YAAY,EACpB,YAAY,YAAY,EACxB,WAAW,WAAW,UAmDzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/draw3dModelLight/getProgram.ts"],"names":[],"mappings":"AAEA,UAAU,QAAQ;IAChB,mBAAmB,EAAE,YAAY,CAAC;IAClC,YAAY,EAAE,YAAY,CAAC;IAC3B,UAAU,EAAE,YAAY,CAAC;IACzB,cAAc,EAAE,YAAY,CAAA;CAC7B;AAED,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,IAyCtF,MAAM,oBAAoB,EAC1B,SAAS,QAAQ,EACjB,YAAY,YAAY,EACxB,WAAW,WAAW,UAqEzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/draw3dModelTexture/getProgram.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,IAoCtF,MAAM,oBAAoB,EAC1B,QAAQ,YAAY,EACpB,SAAS,UAAU,EACnB,YAAY,YAAY,EACxB,WAAW,WAAW,UAwDzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/drawBezier/getProgram.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,IAiDtF,MAAM,oBAAoB,EAC1B,QAAQ,YAAY,EACpB,YAAY,YAAY,EACxB,OAAO,YAAY,EACnB,SAAS,YAAY,EACrB,kBAAkB,WAAW,EAC7B,MAAM,MAAM,UAoFf"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/drawTexture/getProgram.ts"],"names":[],"mappings":"AAKA,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,MAAM,EAAE,SAAS,EACjB,kBAAkB,EAAE,gBAAgB,IAqElC,MAAM,oBAAoB,EAC1B,uBAAuB,YAAY,EACnC,YAAY,YAAY,CAAC,eAAe,CAAC,EACzC,SAAS,UAAU,UAkCtB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getProgram.d.ts","sourceRoot":"","sources":["../../../../../../src/WebGPU/programs/drawTriangle/getProgram.ts"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,kBAAkB,EAAE,gBAAgB,IA8CtF,MAAM,oBAAoB,EAC1B,QAAQ,YAAY,EACpB,GAAG,MAAM,UAkEZ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"initPrograms.d.ts","sourceRoot":"","sources":["../../../../../src/WebGPU/programs/initPrograms.ts"],"names":[],"mappings":"AAAA,OAAO,eAAe,MAAM,2BAA2B,CAAA;AACvD,OAAO,aAAa,MAAM,yBAAyB,CAAA;AACnD,OAAO,qBAAqB,MAAM,iCAAiC,CAAA;AACnE,OAAO,cAAc,MAAM,0BAA0B,CAAA;AACrD,OAAO,mBAAmB,MAAM,+BAA+B,CAAA;AAC/D,OAAO,OAAO,MAAM,mBAAmB,CAAA;AACvC,OAAO,cAAc,MAAM,0BAA0B,CAAA;AAErD,eAAO,IAAI,YAAY,EAAE,UAAU,CAAC,OAAO,eAAe,CAAC,CAAA;AAC3D,eAAO,IAAI,UAAU,EAAE,UAAU,CAAC,OAAO,aAAa,CAAC,CAAA;AACvD,eAAO,IAAI,WAAW,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA;AACzD,eAAO,IAAI,kBAAkB,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAA;AACvE,eAAO,IAAI,gBAAgB,EAAE,UAAU,CAAC,OAAO,mBAAmB,CAAC,CAAA;AACnE,eAAO,IAAI,QAAQ,EAAE,UAAU,CAAC,OAAO,OAAO,CAAC,CAAA;AAC/C,eAAO,IAAI,WAAW,EAAE,UAAU,CAAC,OAAO,cAAc,CAAC,CAAA;AAEzD,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,MAAM,EAAE,SAAS,EACjB,kBAAkB,EAAE,gBAAgB,QASrC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.test.d.ts","sourceRoot":"","sources":["../../../../src/__test__/index.test.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/Preview/index.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consts.d.ts","sourceRoot":"","sources":["../../../src/consts.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,aAAa,EAAE,GAAG,CAAC;QACnB,gBAAgB,EAAE,MAAM,CAAC;KAC1B;IAED,UAAU,SAAS;QACjB,gBAAgB,EAAE,MAAM,CAAC;KAC1B;CACF;AAED,eAAO,MAAM,QAAQ,SAGlB,CAAA;AAEH,eAAO,MAAM,SAAS,QAAsB,CAAA;AAC5C,eAAO,MAAM,YAAY,IAAI,CAAA;AAC7B,eAAO,MAAM,WAAW,QAA2B,CAAA;AAEnD,eAAO,MAAM,cAAc,KAIY,CAAA;AAEvC,eAAO,MAAM,GAAG,QAA0B,CAAA"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCanvasMatrix.d.ts","sourceRoot":"","sources":["../../../src/getCanvasMatrix.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,MAAM,EAAE,iBAAiB,6BAWhE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCanvasRenderDescriptor.d.ts","sourceRoot":"","sources":["../../../src/getCanvasRenderDescriptor.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,yBAAyB,CAAC,OAAO,EAAE,gBAAgB,EAAE,MAAM,EAAE,SAAS,2BAwB7F"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDepthTexture.d.ts","sourceRoot":"","sources":["../../../src/getDepthTexture.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,cAcvF"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getRenderDescriptor.d.ts","sourceRoot":"","sources":["../../../src/getRenderDescriptor.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,UAAU,mBAAmB,CACzC,OAAO,EAAE,UAAU,EACnB,MAAM,EAAE,SAAS,GAChB,uBAAuB,CAkCzB"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { Point } from "types";
|
|
2
|
-
interface CreatorAPI {
|
|
2
|
+
export interface CreatorAPI {
|
|
3
3
|
addImage: (img: HTMLImageElement) => void;
|
|
4
4
|
updatePoints: (textureId: number, points: Point[]) => void;
|
|
5
5
|
}
|
|
6
6
|
export default function initCreator(canvas: HTMLCanvasElement): Promise<CreatorAPI>;
|
|
7
|
-
export {};
|
|
8
7
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAG7B,MAAM,WAAW,UAAU;IACzB,QAAQ,EAAE,CAAC,GAAG,EAAE,gBAAgB,KAAK,IAAI,CAAA;IACzC,YAAY,EAAE,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,IAAI,CAAA;CAC3D;AAED,wBAA8B,WAAW,CACvC,MAAM,EAAE,iBAAiB,GACxB,OAAO,CAAC,UAAU,CAAC,CAkDrB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MiniatureVideo.d.ts","sourceRoot":"","sources":["../../../../../src/models/Video/MiniatureVideo.ts"],"names":[],"mappings":"AAgBA,MAAM,CAAC,OAAO,OAAO,cAAc;IAgB/B,OAAO,CAAC,WAAW;IAEnB,OAAO,CAAC,MAAM;IAjBhB,OAAO,CAAC,MAAM,CAAC,CAAQ;IACvB,OAAO,CAAC,OAAO,CAAC,CAAQ;IACxB,OAAO,CAAC,SAAS,CAAC,CAAQ;IACnB,IAAI,EAAE,gBAAgB,CAAA;IACtB,OAAO,EAAE,OAAO,CAAA;IACvB,OAAO,CAAC,eAAe,CAAgB;IAChC,YAAY,EAAE,UAAU,CAAA;IAC/B,OAAO,CAAC,eAAe,CAAU;IAC1B,SAAS,EAAE,OAAO,CAAA;IACzB,OAAO,CAAC,QAAQ,CAAQ;IACxB,OAAO,CAAC,SAAS,CAAQ;gBAGvB,GAAG,EAAE,MAAM,EACX,SAAS,EAAE,CAAC,KAAK,EAAE,cAAc,KAAK,IAAI,EAClC,WAAW,EAAE,MAAM,MAAM,EACjC,UAAU,EAAE,YAAY,EAChB,MAAM,EAAE,SAAS;IAoD3B,IAAI,QAAQ,CAAC,IAAI,EAAE,MAAM,EAExB;IAED,IAAI,QAAQ,IAJO,MAAM,CAMxB;IAGD,IAAI,QAAQ,WAQX;IAED,IAAI,KAAK,WAQR;IAED,IAAI,MAAM,WAQT;IAED,OAAO,CAAC,iBAAiB;IAiEzB,OAAO,CAAC,YAAY;IAUpB,OAAO,CAAC,cAAc;IAgBtB,OAAO,CAAC,eAAe;IAoBhB,cAAc;IAUd,YAAY,CACjB,QAAQ,EAAE,MAAM,EAChB,QAAQ,EAAE,YAAY,EACtB,KAAK,EAAE,OAAO,GACb,OAAO;IAaH,IAAI,CAAC,IAAI,EAAE,MAAM;IAMjB,KAAK,aAGX;CACF"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { State } from "../crate/
|
|
1
|
+
import { State } from "../crate/glue_code";
|
|
2
2
|
export declare const transformMatrix: Float32Array<ArrayBuffer>;
|
|
3
3
|
export declare const MAP_BACKGROUND_SCALE = 1000;
|
|
4
4
|
export default function runCreator(state: State, canvas: HTMLCanvasElement, context: GPUCanvasContext, device: GPUDevice, presentationFormat: GPUTextureFormat, textures: GPUTexture[]): void;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../../src/run.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAG1C,eAAO,MAAM,eAAe,2BAAqB,CAAA;AACjD,eAAO,MAAM,oBAAoB,OAAO,CAAA;AAMxC,MAAM,CAAC,OAAO,UAAU,UAAU,CAChC,KAAK,EAAE,KAAK,EACZ,MAAM,EAAE,iBAAiB,EACzB,OAAO,EAAE,gBAAgB,EACzB,MAAM,EAAE,SAAS,EACjB,kBAAkB,EAAE,gBAAgB,EACpC,QAAQ,EAAE,UAAU,EAAE,QAmCvB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,KAAK;IACpB,CAAC,EAAE,MAAM,CAAC;IACV,CAAC,EAAE,MAAM,CAAC;CACX;AAED,MAAM,MAAM,IAAI,GAAG,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;AAElC,MAAM,WAAW,cAAe,SAAQ,KAAK;IAC3C,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAAC;CACxC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"atNormIndex.d.ts","sourceRoot":"","sources":["../../../../src/utils/atNormIndex.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,GAAG,EAAE,MAAM,EAAE,EAAE,SAAS,EAAE,MAAM,UAUnE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureCanvasStream.d.ts","sourceRoot":"","sources":["../../../../src/utils/captureCanvasStream.ts"],"names":[],"mappings":"AACA,MAAM,CAAC,OAAO,UAAU,uBAAuB,CAAC,UAAU,EAAE,iBAAiB,cAW5E"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"captureCanvasStreamWasm.d.ts","sourceRoot":"","sources":["../../../../src/utils/captureCanvasStreamWasm.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"clamp.d.ts","sourceRoot":"","sources":["../../../../src/utils/clamp.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,UAEpE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"distancePointToLine.d.ts","sourceRoot":"","sources":["../../../../src/utils/distancePointToLine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,UAKzE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"fitCurve.d.ts","sourceRoot":"","sources":["../../../../src/utils/fitCurve.js"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH;;;;;;GAMG;AAEH,yCALW,KAAK,CAAC,KAAK,QAAQ,CAAC,qBAElB,KAAK,CAAC,KAAK,CAAC,KAAK,QAAQ,CAAC,CAAC,CAmBvC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAngle.d.ts","sourceRoot":"","sources":["../../../../src/utils/getAngle.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,MAAM,CAAC,OAAO,UAAU,QAAQ,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,UAEtD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getAngleDiff.d.ts","sourceRoot":"","sources":["../../../../src/utils/getAngleDiff.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAMxE"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBezierPos.d.ts","sourceRoot":"","sources":["../../../../src/utils/getBezierPos.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,CAAC,EAAE,MAAM,GACR,KAAK,CAkBP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getBezierTan.d.ts","sourceRoot":"","sources":["../../../../src/utils/getBezierTan.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAG7B,MAAM,CAAC,OAAO,UAAU,YAAY,CAClC,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,CAAC,EAAE,MAAM,GACR,KAAK,CAeP"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getCurveLength.d.ts","sourceRoot":"","sources":["../../../../src/utils/getCurveLength.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAO7B,MAAM,CAAC,OAAO,UAAU,cAAc,CACpC,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,EAAE,EAAE,KAAK,EACT,SAAS,EAAE,MAAM,GAChB,MAAM,EAAE,CAYV"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"getDistance.d.ts","sourceRoot":"","sources":["../../../../src/utils/getDistance.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,OAAO,CAAA;AAE7B,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAAE,EAAE,KAAK,EAAE,EAAE,EAAE,KAAK,UAEvD"}
|