mirror of
https://github.com/heygen-com/hyperframes.git
synced 2026-11-03 12:17:03 +00:00
* chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog * chore(catalog): publish generated catalog --------- Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
1 line
1.6 MiB
Plaintext
1 line
1.6 MiB
Plaintext
{"html":"<!DOCTYPE html>\n<html lang=\"en\">\n<head><script data-hf-after-fonts-fallback=\"\">document.addEventListener(\"DOMContentLoaded\", function () {\n if (window.__hfAfterFontsClaimed) return;\n var T = \"text/hf-after-fonts\";\n var all = [].slice.call(document.querySelectorAll('script[type=\"text/hf-after-fonts\"], script[type=\"text/hf-after-fonts+module\"]'));\n if (!all.length) return;\n console.warn(\"[hyperframes] the runtime has no web-font gate; composition scripts run without waiting for fonts\");\n var late = function (el) { return el.type !== T || el.matches('[defer][src], [defer][data-hf-inlined-src]'); };\n var queue = all.filter(function (el) { return !late(el); }).concat(all.filter(late));\n (function next() {\n var el = queue.shift();\n if (!el) return;\n var s = document.createElement(\"script\");\n for (var i = 0; i < el.attributes.length; i++) s.setAttribute(el.attributes[i].name, el.attributes[i].value);\n if (el.type === T) s.removeAttribute(\"type\"); else s.type = \"module\";\n s.async = el.hasAttribute(\"async\");\n s.text = el.text;\n var waits = s.type !== \"module\" && s.hasAttribute(\"src\") && !s.async && !s.noModule;\n if (waits) { s.addEventListener(\"load\", next); s.addEventListener(\"error\", next); }\n el.replaceWith(s);\n if (!waits) next();\n })();\n});\n//# sourceURL=hyperframes://after-fonts-fallback</script><style data-hyperframes-text-rendering=\"true\">html,body,*{text-rendering:geometricPrecision}</style>\n <meta charset=\"UTF-8\">\n <meta name=\"viewport\" content=\"width=1920, height=1080\">\n <script>/* inlined: https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js */\n/*!\n * GSAP 3.14.2\n * https://gsap.com\n * \n * @license Copyright 2025, GreenSock. All rights reserved.\n * Subject to the terms at https://gsap.com/standard-license.\n * @author: Jack Doyle, jack@greensock.com\n */\n\n!function(t,e){\"object\"==typeof exports&&\"undefined\"!=typeof module?e(exports):\"function\"==typeof define&&define.amd?define([\"exports\"],e):e((t=t||self).window=t.window||{})}(this,function(e){\"use strict\";function _inheritsLoose(t,e){t.prototype=Object.create(e.prototype),(t.prototype.constructor=t).__proto__=e}function _assertThisInitialized(t){if(void 0===t)throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");return t}function r(t){return\"string\"==typeof t}function s(t){return\"function\"==typeof t}function t(t){return\"number\"==typeof t}function u(t){return void 0===t}function v(t){return\"object\"==typeof t}function w(t){return!1!==t}function x(){return\"undefined\"!=typeof window}function y(t){return s(t)||r(t)}function R(t){return(i=bt(t,ht))&&Fe}function S(t,e){return console.warn(\"Invalid property\",t,\"set to\",e,\"Missing plugin? gsap.registerPlugin()\")}function T(t,e){return!e&&console.warn(t)}function U(t,e){return t&&(ht[t]=e)&&i&&(i[t]=e)||ht}function V(){return 0}function ga(t){var e,r,i=t[0];if(v(i)||s(i)||(t=[t]),!(e=(i._gsap||{}).harness)){for(r=yt.length;r--&&!yt[r].targetTest(i););e=yt[r]}for(r=t.length;r--;)t[r]&&(t[r]._gsap||(t[r]._gsap=new Xt(t[r],e)))||t.splice(r,1);return t}function ha(t){return t._gsap||ga(Pt(t))[0]._gsap}function ia(t,e,r){return(r=t[e])&&s(r)?t[e]():u(r)&&t.getAttribute&&t.getAttribute(e)||r}function ja(t,e){return(t=t.split(\",\")).forEach(e)||t}function ka(t){return Math.round(1e5*t)/1e5||0}function la(t){return Math.round(1e7*t)/1e7||0}function ma(t,e){var r=e.charAt(0),i=parseFloat(e.substr(2));return t=parseFloat(t),\"+\"===r?t+i:\"-\"===r?t-i:\"*\"===r?t*i:t/i}function na(t,e){for(var r=e.length,i=0;t.indexOf(e[i])<0&&++i<r;);return i<r}function oa(){var t,e,r=pt.length,i=pt.slice(0);for(_t={},t=pt.length=0;t<r;t++)(e=i[t])&&e._lazy&&(e.render(e._lazy[0],e._lazy[1],!0)._lazy=0)}function pa(t){return!!(t._initted||t._startAt||t.add)}function qa(t,e,r,i){pt.length&&!I&&oa(),t.render(e,r,i||!!(I&&e<0&&pa(t))),pt.length&&!I&&oa()}function ra(t){var e=parseFloat(t);return(e||0===e)&&(t+\"\").match(ot).length<2?e:r(t)?t.trim():t}function sa(t){return t}function ta(t,e){for(var r in e)r in t||(t[r]=e[r]);return t}function wa(t,e){for(var r in e)\"__proto__\"!==r&&\"constructor\"!==r&&\"prototype\"!==r&&(t[r]=v(e[r])?wa(t[r]||(t[r]={}),e[r]):e[r]);return t}function xa(t,e){var r,i={};for(r in t)r in e||(i[r]=t[r]);return i}function ya(t){var e=t.parent||L,r=t.keyframes?function _setKeyframeDefaults(i){return function(t,e){for(var r in e)r in t||\"duration\"===r&&i||\"ease\"===r||(t[r]=e[r])}}($(t.keyframes)):ta;if(w(t.inherit))for(;e;)r(t,e.vars.defaults),e=e.parent||e._dp;return t}function Aa(t,e,r,i,n){void 0===r&&(r=\"_first\"),void 0===i&&(i=\"_last\");var a,s=t[i];if(n)for(a=e[n];s&&s[n]>a;)s=s._prev;return s?(e._next=s._next,s._next=e):(e._next=t[r],t[r]=e),e._next?e._next._prev=e:t[i]=e,e._prev=s,e.parent=e._dp=t,e}function Ba(t,e,r,i){void 0===r&&(r=\"_first\"),void 0===i&&(i=\"_last\");var n=e._prev,a=e._next;n?n._next=a:t[r]===e&&(t[r]=a),a?a._prev=n:t[i]===e&&(t[i]=n),e._next=e._prev=e.parent=null}function Ca(t,e){t.parent&&(!e||t.parent.autoRemoveChildren)&&t.parent.remove&&t.parent.remove(t),t._act=0}function Da(t,e){if(t&&(!e||e._end>t._dur||e._start<0))for(var r=t;r;)r._dirty=1,r=r.parent;return t}function Fa(t,e,r,i){return t._startAt&&(I?t._startAt.revert(ft):t.vars.immediateRender&&!t.vars.autoRevert||t._startAt.render(e,!0,i))}function Ha(t){return t._repeat?wt(t._tTime,t=t.duration()+t._rDelay)*t:0}function Ja(t,e){return(t-e._start)*e._ts+(0<=e._ts?0:e._dirty?e.totalDuration():e._tDur)}function Ka(t){return t._end=la(t._start+(t._tDur/Math.abs(t._ts||t._rts||q)||0))}function La(t,e){var r=t._dp;return r&&r.smoothChildTiming&&t._ts&&(t._start=la(r._time-(0<t._ts?e/t._ts:((t._dirty?t.totalDuration():t._tDur)-e)/-t._ts)),Ka(t),r._dirty||Da(r,t)),t}function Ma(t,e){var r;if((e._time||!e._dur&&e._initted||e._start<t._time&&(e._dur||!e.add))&&(r=Ja(t.rawTime(),e),(!e._dur||Mt(0,e.totalDuration(),r)-e._tTime>q)&&e.render(r,!0)),Da(t,e)._dp&&t._initted&&t._time>=t._dur&&t._ts){if(t._dur<t.duration())for(r=t;r._dp;)0<=r.rawTime()&&r.totalTime(r._tTime),r=r._dp;t._zTime=-q}}function Na(e,r,i,n){return r.parent&&Ca(r),r._start=la((t(i)?i:i||e!==L?Ot(e,i,r):e._time)+r._delay),r._end=la(r._start+(r.totalDuration()/Math.abs(r.timeScale())||0)),Aa(e,r,\"_first\",\"_last\",e._sort?\"_start\":0),xt(r)||(e._recent=r),n||Ma(e,r),e._ts<0&&La(e,e._tTime),e}function Oa(t,e){return(ht.ScrollTrigger||S(\"scrollTrigger\",e))&&ht.ScrollTrigger.create(e,t)}function Pa(t,e,r,i,n){return Qt(t,e,n),t._initted?!r&&t._pt&&!I&&(t._dur&&!1!==t.vars.lazy||!t._dur&&t.vars.lazy)&&f!==It.frame?(pt.push(t),t._lazy=[n,i],1):void 0:1}function Ua(t,e,r,i){var n=t._repeat,a=la(e)||0,s=t._tTime/t._tDur;return s&&!i&&(t._time*=a/t._dur),t._dur=a,t._tDur=n?n<0?1e10:la(a*(n+1)+t._rDelay*n):a,0<s&&!i&&La(t,t._tTime=t._tDur*s),t.parent&&Ka(t),r||Da(t.parent,t),t}function Va(t){return t instanceof Zt?Da(t):Ua(t,t._dur)}function Ya(e,r,i){var n,a,s=t(r[1]),o=(s?2:1)+(e<2?0:1),u=r[o];if(s&&(u.duration=r[1]),u.parent=i,e){for(n=u,a=i;a&&!(\"immediateRender\"in n);)n=a.vars.defaults||{},a=w(a.vars.inherit)&&a.parent;u.immediateRender=w(n.immediateRender),e<2?u.runBackwards=1:u.startAt=r[o-1]}return new te(r[0],u,r[1+o])}function Za(t,e){return t||0===t?e(t):e}function _a(t,e){return r(t)&&(e=ut.exec(t))?e[1]:\"\"}function cb(t,e){return t&&v(t)&&\"length\"in t&&(!e&&!t.length||t.length-1 in t&&v(t[0]))&&!t.nodeType&&t!==h}function fb(r){return r=Pt(r)[0]||T(\"Invalid scope\")||{},function(t){var e=r.current||r.nativeElement||r;return Pt(t,e.querySelectorAll?e:e===r?T(\"Invalid scope\")||a.createElement(\"div\"):r)}}function gb(t){return t.sort(function(){return.5-Math.random()})}function hb(t){if(s(t))return t;var p=v(t)?t:{each:t},_=Vt(p.ease),m=p.from||0,g=parseFloat(p.base)||0,y={},e=0<m&&m<1,T=isNaN(m)||e,b=p.axis,w=m,x=m;return r(m)?w=x={center:.5,edges:.5,end:1}[m]||0:!e&&T&&(w=m[0],x=m[1]),function(t,e,r){var i,n,a,s,o,u,h,l,f,d=(r||p).length,c=y[d];if(!c){if(!(f=\"auto\"===p.grid?0:(p.grid||[1,X])[1])){for(h=-X;h<(h=r[f++].getBoundingClientRect().left)&&f<d;);f<d&&f--}for(c=y[d]=[],i=T?Math.min(f,d)*w-.5:m%f,n=f===X?0:T?d*x/f-.5:m/f|0,l=X,u=h=0;u<d;u++)a=u%f-i,s=n-(u/f|0),c[u]=o=b?Math.abs(\"y\"===b?s:a):J(a*a+s*s),h<o&&(h=o),o<l&&(l=o);\"random\"===m&&gb(c),c.max=h-l,c.min=l,c.v=d=(parseFloat(p.amount)||parseFloat(p.each)*(d<f?d-1:b?\"y\"===b?d/f:f:Math.max(f,d/f))||0)*(\"edges\"===m?-1:1),c.b=d<0?g-d:g,c.u=_a(p.amount||p.each)||0,_=_&&d<0?jt(_):_}return d=(c[t]-c.min)/c.max||0,la(c.b+(_?_(d):d)*c.v)+c.u}}function ib(i){var n=Math.pow(10,((i+\"\").split(\".\")[1]||\"\").length);return function(e){var r=la(Math.round(parseFloat(e)/i)*i*n);return(r-r%1)/n+(t(e)?0:_a(e))}}function jb(h,e){var l,f,r=$(h);return!r&&v(h)&&(l=r=h.radius||X,h.values?(h=Pt(h.values),(f=!t(h[0]))&&(l*=l)):h=ib(h.increment)),Za(e,r?s(h)?function(t){return f=h(t),Math.abs(f-t)<=l?f:t}:function(e){for(var r,i,n=parseFloat(f?e.x:e),a=parseFloat(f?e.y:0),s=X,o=0,u=h.length;u--;)(r=f?(r=h[u].x-n)*r+(i=h[u].y-a)*i:Math.abs(h[u]-n))<s&&(s=r,o=u);return o=!l||s<=l?h[o]:e,f||o===e||t(e)?o:o+_a(e)}:ib(h))}function kb(t,e,r,i){return Za($(t)?!e:!0===r?!!(r=0):!i,function(){return $(t)?t[~~(Math.random()*t.length)]:(r=r||1e-5)&&(i=r<1?Math.pow(10,(r+\"\").length-2):1)&&Math.floor(Math.round((t-r/2+Math.random()*(e-t+.99*r))/r)*r*i)/i})}function ob(e,r,t){return Za(t,function(t){return e[~~r(t)]})}function rb(t){return t.replace(tt,function(t){var e=t.indexOf(\"[\")+1,r=t.substring(e||7,e?t.indexOf(\"]\"):t.length-1).split(et);return kb(e?r:+r[0],e?0:+r[1],+r[2]||1e-5)})}function ub(t,e,r){var i,n,a,s=t.labels,o=X;for(i in s)(n=s[i]-e)<0==!!r&&n&&o>(n=Math.abs(n))&&(a=i,o=n);return a}function wb(t){return Ca(t),t.scrollTrigger&&t.scrollTrigger.kill(!!I),t.progress()<1&&Dt(t,\"onInterrupt\"),t}function zb(t){if(t)if(t=!t.name&&t.default||t,x()||t.headless){var e=t.name,r=s(t),i=e&&!r&&t.init?function(){this._props=[]}:t,n={init:V,render:ve,add:Jt,kill:Te,modifier:ye,rawVars:0},a={targetTest:0,get:0,getSetter:le,aliases:{},register:0};if(Lt(),t!==i){if(mt[e])return;ta(i,ta(xa(t,n),a)),bt(i.prototype,bt(n,xa(t,a))),mt[i.prop=e]=i,t.targetTest&&(yt.push(i),ct[e]=1),e=(\"css\"===e?\"CSS\":e.charAt(0).toUpperCase()+e.substr(1))+\"Plugin\"}U(e,i),t.register&&t.register(Fe,i,we)}else St.push(t)}function Cb(t,e,r){return(6*(t+=t<0?1:1<t?-1:0)<1?e+(r-e)*t*6:t<.5?r:3*t<2?e+(r-e)*(2/3-t)*6:e)*zt+.5|0}function Db(e,r,i){var n,a,s,o,u,h,l,f,d,c,p=e?t(e)?[e>>16,e>>8&zt,e&zt]:0:Et.black;if(!p){if(\",\"===e.substr(-1)&&(e=e.substr(0,e.length-1)),Et[e])p=Et[e];else if(\"#\"===e.charAt(0)){if(e.length<6&&(e=\"#\"+(n=e.charAt(1))+n+(a=e.charAt(2))+a+(s=e.charAt(3))+s+(5===e.length?e.charAt(4)+e.charAt(4):\"\")),9===e.length)return[(p=parseInt(e.substr(1,6),16))>>16,p>>8&zt,p&zt,parseInt(e.substr(7),16)/255];p=[(e=parseInt(e.substr(1),16))>>16,e>>8&zt,e&zt]}else if(\"hsl\"===e.substr(0,3))if(p=c=e.match(rt),r){if(~e.indexOf(\"=\"))return p=e.match(it),i&&p.length<4&&(p[3]=1),p}else o=+p[0]%360/360,u=p[1]/100,n=2*(h=p[2]/100)-(a=h<=.5?h*(u+1):h+u-h*u),3<p.length&&(p[3]*=1),p[0]=Cb(o+1/3,n,a),p[1]=Cb(o,n,a),p[2]=Cb(o-1/3,n,a);else p=e.match(rt)||Et.transparent;p=p.map(Number)}return r&&!c&&(n=p[0]/zt,a=p[1]/zt,s=p[2]/zt,h=((l=Math.max(n,a,s))+(f=Math.min(n,a,s)))/2,l===f?o=u=0:(d=l-f,u=.5<h?d/(2-l-f):d/(l+f),o=l===n?(a-s)/d+(a<s?6:0):l===a?(s-n)/d+2:(n-a)/d+4,o*=60),p[0]=~~(o+.5),p[1]=~~(100*u+.5),p[2]=~~(100*h+.5)),i&&p.length<4&&(p[3]=1),p}function Eb(t){var r=[],i=[],n=-1;return t.split(Rt).forEach(function(t){var e=t.match(nt)||[];r.push.apply(r,e),i.push(n+=e.length+1)}),r.c=i,r}function Fb(t,e,r){var i,n,a,s,o=\"\",u=(t+o).match(Rt),h=e?\"hsla(\":\"rgba(\",l=0;if(!u)return t;if(u=u.map(function(t){return(t=Db(t,e,1))&&h+(e?t[0]+\",\"+t[1]+\"%,\"+t[2]+\"%,\"+t[3]:t.join(\",\"))+\")\"}),r&&(a=Eb(t),(i=r.c).join(o)!==a.c.join(o)))for(s=(n=t.replace(Rt,\"1\").split(nt)).length-1;l<s;l++)o+=n[l]+(~i.indexOf(l)?u.shift()||h+\"0,0,0,0)\":(a.length?a:u.length?u:r).shift());if(!n)for(s=(n=t.split(Rt)).length-1;l<s;l++)o+=n[l]+u[l];return o+n[s]}function Ib(t){var e,r=t.join(\" \");if(Rt.lastIndex=0,Rt.test(r))return e=Ft.test(r),t[1]=Fb(t[1],e),t[0]=Fb(t[0],e,Eb(t[1])),!0}function Rb(t){var e=(t+\"\").split(\"(\"),r=Bt[e[0]];return r&&1<e.length&&r.config?r.config.apply(null,~t.indexOf(\"{\")?[function _parseObjectInString(t){for(var e,r,i,n={},a=t.substr(1,t.length-3).split(\":\"),s=a[0],o=1,u=a.length;o<u;o++)r=a[o],e=o!==u-1?r.lastIndexOf(\",\"):r.length,i=r.substr(0,e),n[s]=isNaN(i)?i.replace(Nt,\"\").trim():+i,s=r.substr(e+1).trim();return n}(e[1])]:function _valueInParentheses(t){var e=t.indexOf(\"(\")+1,r=t.indexOf(\")\"),i=t.indexOf(\"(\",e);return t.substring(e,~i&&i<r?t.indexOf(\")\",r+1):r)}(t).split(\",\").map(ra)):Bt._CE&&Yt.test(t)?Bt._CE(\"\",t):r}function Tb(t,e){for(var r,i=t._first;i;)i instanceof Zt?Tb(i,e):!i.vars.yoyoEase||i._yoyo&&i._repeat||i._yoyo===e||(i.timeline?Tb(i.timeline,e):(r=i._ease,i._ease=i._yEase,i._yEase=r,i._yoyo=e)),i=i._next}function Vb(t,e,r,i){void 0===r&&(r=function easeOut(t){return 1-e(1-t)}),void 0===i&&(i=function easeInOut(t){return t<.5?e(2*t)/2:1-e(2*(1-t))/2});var n,a={easeIn:e,easeOut:r,easeInOut:i};return ja(t,function(t){for(var e in Bt[t]=ht[t]=a,Bt[n=t.toLowerCase()]=r,a)Bt[n+(\"easeIn\"===e?\".in\":\"easeOut\"===e?\".out\":\".inOut\")]=Bt[t+\".\"+e]=a[e]}),a}function Wb(e){return function(t){return t<.5?(1-e(1-2*t))/2:.5+e(2*(t-.5))/2}}function Xb(r,t,e){function Lm(t){return 1===t?1:i*Math.pow(2,-10*t)*G((t-a)*n)+1}var i=1<=t?t:1,n=(e||(r?.3:.45))/(t<1?t:1),a=n/Z*(Math.asin(1/i)||0),s=\"out\"===r?Lm:\"in\"===r?function(t){return 1-Lm(1-t)}:Wb(Lm);return n=Z/n,s.config=function(t,e){return Xb(r,t,e)},s}function Yb(e,r){function Tm(t){return t?--t*t*((r+1)*t+r)+1:0}void 0===r&&(r=1.70158);var t=\"out\"===e?Tm:\"in\"===e?function(t){return 1-Tm(1-t)}:Wb(Tm);return t.config=function(t){return Yb(e,t)},t}var F,I,l,L,h,n,a,i,o,f,d,c,p,_,m,g,b,k,O,M,C,P,A,D,z,E,B,Y,N={autoSleep:120,force3D:\"auto\",nullTargetWarn:1,units:{lineHeight:\"\"}},j={duration:.5,overwrite:!1,delay:0},X=1e8,q=1/X,Z=2*Math.PI,W=Z/4,H=0,J=Math.sqrt,Q=Math.cos,G=Math.sin,K=\"function\"==typeof ArrayBuffer&&ArrayBuffer.isView||function(){},$=Array.isArray,tt=/random\\([^)]+\\)/g,et=/,\\s*/g,rt=/(?:-?\\.?\\d|\\.)+/gi,it=/[-+=.]*\\d+[.e\\-+]*\\d*[e\\-+]*\\d*/g,nt=/[-+=.]*\\d+[.e-]*\\d*[a-z%]*/g,at=/[-+=.]*\\d+\\.?\\d*(?:e-|e\\+)?\\d*/gi,st=/[+-]=-?[.\\d]+/,ot=/[^,'\"\\[\\]\\s]+/gi,ut=/^[+\\-=e\\s\\d]*\\d+[.\\d]*([a-z]*|%)\\s*$/i,ht={},lt={suppressEvents:!0,isStart:!0,kill:!1},ft={suppressEvents:!0,kill:!1},dt={suppressEvents:!0},ct={},pt=[],_t={},mt={},gt={},vt=30,yt=[],Tt=\"\",bt=function _merge(t,e){for(var r in e)t[r]=e[r];return t},wt=function _animationCycle(t,e){var r=Math.floor(t=la(t/e));return t&&r===t?r-1:r},xt=function _isFromOrFromStart(t){var e=t.data;return\"isFromStart\"===e||\"isStart\"===e},kt={_start:0,endTime:V,totalDuration:V},Ot=function _parsePosition(t,e,i){var n,a,s,o=t.labels,u=t._recent||kt,h=t.duration()>=X?u.endTime(!1):t._dur;return r(e)&&(isNaN(e)||e in o)?(a=e.charAt(0),s=\"%\"===e.substr(-1),n=e.indexOf(\"=\"),\"<\"===a||\">\"===a?(0<=n&&(e=e.replace(/=/,\"\")),(\"<\"===a?u._start:u.endTime(0<=u._repeat))+(parseFloat(e.substr(1))||0)*(s?(n<0?u:i).totalDuration()/100:1)):n<0?(e in o||(o[e]=h),o[e]):(a=parseFloat(e.charAt(n-1)+e.substr(n+1)),s&&i&&(a=a/100*($(i)?i[0]:i).totalDuration()),1<n?_parsePosition(t,e.substr(0,n-1),i)+a:h+a)):null==e?h:+e},Mt=function _clamp(t,e,r){return r<t?t:e<r?e:r},Ct=[].slice,Pt=function toArray(t,e,i){return l&&!e&&l.selector?l.selector(t):!r(t)||i||!n&&Lt()?$(t)?function _flatten(t,e,i){return void 0===i&&(i=[]),t.forEach(function(t){return r(t)&&!e||cb(t,1)?i.push.apply(i,Pt(t)):i.push(t)})||i}(t,i):cb(t)?Ct.call(t,0):t?[t]:[]:Ct.call((e||a).querySelectorAll(t),0)},At=function mapRange(e,t,r,i,n){var a=t-e,s=i-r;return Za(n,function(t){return r+((t-e)/a*s||0)})},Dt=function _callback(t,e,r){var i,n,a,s=t.vars,o=s[e],u=l,h=t._ctx;if(o)return i=s[e+\"Params\"],n=s.callbackScope||t,r&&pt.length&&oa(),h&&(l=h),a=i?o.apply(n,i):o.call(n),l=u,a},St=[],zt=255,Et={aqua:[0,zt,zt],lime:[0,zt,0],silver:[192,192,192],black:[0,0,0],maroon:[128,0,0],teal:[0,128,128],blue:[0,0,zt],navy:[0,0,128],white:[zt,zt,zt],olive:[128,128,0],yellow:[zt,zt,0],orange:[zt,165,0],gray:[128,128,128],purple:[128,0,128],green:[0,128,0],red:[zt,0,0],pink:[zt,192,203],cyan:[0,zt,zt],transparent:[zt,zt,zt,0]},Rt=function(){var t,e=\"(?:\\\\b(?:(?:rgb|rgba|hsl|hsla)\\\\(.+?\\\\))|\\\\B#(?:[0-9a-f]{3,4}){1,2}\\\\b\";for(t in Et)e+=\"|\"+t+\"\\\\b\";return new RegExp(e+\")\",\"gi\")}(),Ft=/hsl[a]?\\(/,It=(O=Date.now,M=500,C=33,P=O(),A=P,z=D=1e3/240,g={time:0,frame:0,tick:function tick(){Al(!0)},deltaRatio:function deltaRatio(t){return b/(1e3/(t||60))},wake:function wake(){o&&(!n&&x()&&(h=n=window,a=h.document||{},ht.gsap=Fe,(h.gsapVersions||(h.gsapVersions=[])).push(Fe.version),R(i||h.GreenSockGlobals||!h.gsap&&h||{}),St.forEach(zb)),m=\"undefined\"!=typeof requestAnimationFrame&&requestAnimationFrame,p&&g.sleep(),_=m||function(t){return setTimeout(t,z-1e3*g.time+1|0)},c=1,Al(2))},sleep:function sleep(){(m?cancelAnimationFrame:clearTimeout)(p),c=0,_=V},lagSmoothing:function lagSmoothing(t,e){M=t||1/0,C=Math.min(e||33,M)},fps:function fps(t){D=1e3/(t||240),z=1e3*g.time+D},add:function add(n,t,e){var a=t?function(t,e,r,i){n(t,e,r,i),g.remove(a)}:n;return g.remove(n),E[e?\"unshift\":\"push\"](a),Lt(),a},remove:function remove(t,e){~(e=E.indexOf(t))&&E.splice(e,1)&&e<=k&&k--},_listeners:E=[]}),Lt=function _wake(){return!c&&It.wake()},Bt={},Yt=/^[\\d.\\-M][\\d.\\-,\\s]/,Nt=/[\"']/g,jt=function _invertEase(e){return function(t){return 1-e(1-t)}},Vt=function _parseEase(t,e){return t&&(s(t)?t:Bt[t]||Rb(t))||e};function Al(t){var e,r,i,n,a=O()-A,s=!0===t;if((M<a||a<0)&&(P+=a-C),(0<(e=(i=(A+=a)-P)-z)||s)&&(n=++g.frame,b=i-1e3*g.time,g.time=i/=1e3,z+=e+(D<=e?4:D-e),r=1),s||(p=_(Al)),r)for(k=0;k<E.length;k++)E[k](i,b,n,t)}function jn(t){return t<Y?B*t*t:t<.7272727272727273?B*Math.pow(t-1.5/2.75,2)+.75:t<.9090909090909092?B*(t-=2.25/2.75)*t+.9375:B*Math.pow(t-2.625/2.75,2)+.984375}ja(\"Linear,Quad,Cubic,Quart,Quint,Strong\",function(t,e){var r=e<5?e+1:e;Vb(t+\",Power\"+(r-1),e?function(t){return Math.pow(t,r)}:function(t){return t},function(t){return 1-Math.pow(1-t,r)},function(t){return t<.5?Math.pow(2*t,r)/2:1-Math.pow(2*(1-t),r)/2})}),Bt.Linear.easeNone=Bt.none=Bt.Linear.easeIn,Vb(\"Elastic\",Xb(\"in\"),Xb(\"out\"),Xb()),B=7.5625,Y=1/2.75,Vb(\"Bounce\",function(t){return 1-jn(1-t)},jn),Vb(\"Expo\",function(t){return Math.pow(2,10*(t-1))*t+t*t*t*t*t*t*(1-t)}),Vb(\"Circ\",function(t){return-(J(1-t*t)-1)}),Vb(\"Sine\",function(t){return 1===t?1:1-Q(t*W)}),Vb(\"Back\",Yb(\"in\"),Yb(\"out\"),Yb()),Bt.SteppedEase=Bt.steps=ht.SteppedEase={config:function config(t,e){void 0===t&&(t=1);var r=1/t,i=t+(e?0:1),n=e?1:0;return function(t){return((i*Mt(0,.99999999,t)|0)+n)*r}}},j.ease=Bt[\"quad.out\"],ja(\"onComplete,onUpdate,onStart,onRepeat,onReverseComplete,onInterrupt\",function(t){return Tt+=t+\",\"+t+\"Params,\"});var Ut,Xt=function GSCache(t,e){this.id=H++,(t._gsap=this).target=t,this.harness=e,this.get=e?e.get:ia,this.set=e?e.getSetter:le},qt=((Ut=Animation.prototype).delay=function delay(t){return t||0===t?(this.parent&&this.parent.smoothChildTiming&&this.startTime(this._start+t-this._delay),this._delay=t,this):this._delay},Ut.duration=function duration(t){return arguments.length?this.totalDuration(0<this._repeat?t+(t+this._rDelay)*this._repeat:t):this.totalDuration()&&this._dur},Ut.totalDuration=function totalDuration(t){return arguments.length?(this._dirty=0,Ua(this,this._repeat<0?t:(t-this._repeat*this._rDelay)/(this._repeat+1))):this._tDur},Ut.totalTime=function totalTime(t,e){if(Lt(),!arguments.length)return this._tTime;var r=this._dp;if(r&&r.smoothChildTiming&&this._ts){for(La(this,t),!r._dp||r.parent||Ma(r,this);r&&r.parent;)r.parent._time!==r._start+(0<=r._ts?r._tTime/r._ts:(r.totalDuration()-r._tTime)/-r._ts)&&r.totalTime(r._tTime,!0),r=r.parent;!this.parent&&this._dp.autoRemoveChildren&&(0<this._ts&&t<this._tDur||this._ts<0&&0<t||!this._tDur&&!t)&&Na(this._dp,this,this._start-this._delay)}return(this._tTime!==t||!this._dur&&!e||this._initted&&Math.abs(this._zTime)===q||!this._initted&&this._dur&&t||!t&&!this._initted&&(this.add||this._ptLookup))&&(this._ts||(this._pTime=t),qa(this,t,e)),this},Ut.time=function time(t,e){return arguments.length?this.totalTime(Math.min(this.totalDuration(),t+Ha(this))%(this._dur+this._rDelay)||(t?this._dur:0),e):this._time},Ut.totalProgress=function totalProgress(t,e){return arguments.length?this.totalTime(this.totalDuration()*t,e):this.totalDuration()?Math.min(1,this._tTime/this._tDur):0<=this.rawTime()&&this._initted?1:0},Ut.progress=function progress(t,e){return arguments.length?this.totalTime(this.duration()*(!this._yoyo||1&this.iteration()?t:1-t)+Ha(this),e):this.duration()?Math.min(1,this._time/this._dur):0<this.rawTime()?1:0},Ut.iteration=function iteration(t,e){var r=this.duration()+this._rDelay;return arguments.length?this.totalTime(this._time+(t-1)*r,e):this._repeat?wt(this._tTime,r)+1:1},Ut.timeScale=function timeScale(t,e){if(!arguments.length)return this._rts===-q?0:this._rts;if(this._rts===t)return this;var r=this.parent&&this._ts?Ja(this.parent._time,this):this._tTime;return this._rts=+t||0,this._ts=this._ps||t===-q?0:this._rts,this.totalTime(Mt(-Math.abs(this._delay),this.totalDuration(),r),!1!==e),Ka(this),function _recacheAncestors(t){for(var e=t.parent;e&&e.parent;)e._dirty=1,e.totalDuration(),e=e.parent;return t}(this)},Ut.paused=function paused(t){return arguments.length?(this._ps!==t&&((this._ps=t)?(this._pTime=this._tTime||Math.max(-this._delay,this.rawTime()),this._ts=this._act=0):(Lt(),this._ts=this._rts,this.totalTime(this.parent&&!this.parent.smoothChildTiming?this.rawTime():this._tTime||this._pTime,1===this.progress()&&Math.abs(this._zTime)!==q&&(this._tTime-=q)))),this):this._ps},Ut.startTime=function startTime(t){if(arguments.length){this._start=la(t);var e=this.parent||this._dp;return!e||!e._sort&&this.parent||Na(e,this,this._start-this._delay),this}return this._start},Ut.endTime=function endTime(t){return this._start+(w(t)?this.totalDuration():this.duration())/Math.abs(this._ts||1)},Ut.rawTime=function rawTime(t){var e=this.parent||this._dp;return e?t&&(!this._ts||this._repeat&&this._time&&this.totalProgress()<1)?this._tTime%(this._dur+this._rDelay):this._ts?Ja(e.rawTime(t),this):this._tTime:this._tTime},Ut.revert=function revert(t){void 0===t&&(t=dt);var e=I;return I=t,pa(this)&&(this.timeline&&this.timeline.revert(t),this.totalTime(-.01,t.suppressEvents)),\"nested\"!==this.data&&!1!==t.kill&&this.kill(),I=e,this},Ut.globalTime=function globalTime(t){for(var e=this,r=arguments.length?t:e.rawTime();e;)r=e._start+r/(Math.abs(e._ts)||1),e=e._dp;return!this.parent&&this._sat?this._sat.globalTime(t):r},Ut.repeat=function repeat(t){return arguments.length?(this._repeat=t===1/0?-2:t,Va(this)):-2===this._repeat?1/0:this._repeat},Ut.repeatDelay=function repeatDelay(t){if(arguments.length){var e=this._time;return this._rDelay=t,Va(this),e?this.time(e):this}return this._rDelay},Ut.yoyo=function yoyo(t){return arguments.length?(this._yoyo=t,this):this._yoyo},Ut.seek=function seek(t,e){return this.totalTime(Ot(this,t),w(e))},Ut.restart=function restart(t,e){return this.play().totalTime(t?-this._delay:0,w(e)),this._dur||(this._zTime=-q),this},Ut.play=function play(t,e){return null!=t&&this.seek(t,e),this.reversed(!1).paused(!1)},Ut.reverse=function reverse(t,e){return null!=t&&this.seek(t||this.totalDuration(),e),this.reversed(!0).paused(!1)},Ut.pause=function pause(t,e){return null!=t&&this.seek(t,e),this.paused(!0)},Ut.resume=function resume(){return this.paused(!1)},Ut.reversed=function reversed(t){return arguments.length?(!!t!==this.reversed()&&this.timeScale(-this._rts||(t?-q:0)),this):this._rts<0},Ut.invalidate=function invalidate(){return this._initted=this._act=0,this._zTime=-q,this},Ut.isActive=function isActive(){var t,e=this.parent||this._dp,r=this._start;return!(e&&!(this._ts&&this._initted&&e.isActive()&&(t=e.rawTime(!0))>=r&&t<this.endTime(!0)-q))},Ut.eventCallback=function eventCallback(t,e,r){var i=this.vars;return 1<arguments.length?(e?(i[t]=e,r&&(i[t+\"Params\"]=r),\"onUpdate\"===t&&(this._onUpdate=e)):delete i[t],this):i[t]},Ut.then=function then(t){var i=this,n=i._prom;return new Promise(function(e){function Fo(){var t=i.then;i.then=null,n&&n(),s(r)&&(r=r(i))&&(r.then||r===i)&&(i.then=t),e(r),i.then=t}var r=s(t)?t:sa;i._initted&&1===i.totalProgress()&&0<=i._ts||!i._tTime&&i._ts<0?Fo():i._prom=Fo})},Ut.kill=function kill(){wb(this)},Animation);function Animation(t){this.vars=t,this._delay=+t.delay||0,(this._repeat=t.repeat===1/0?-2:t.repeat||0)&&(this._rDelay=t.repeatDelay||0,this._yoyo=!!t.yoyo||!!t.yoyoEase),this._ts=1,Ua(this,+t.duration,1,1),this.data=t.data,l&&(this._ctx=l).data.push(this),c||It.wake()}ta(qt.prototype,{_time:0,_start:0,_end:0,_tTime:0,_tDur:0,_dirty:0,_repeat:0,_yoyo:!1,parent:null,_initted:!1,_rDelay:0,_ts:1,_dp:0,ratio:0,_zTime:-q,_prom:0,_ps:!1,_rts:1});var Zt=function(i){function Timeline(t,e){var r;return void 0===t&&(t={}),(r=i.call(this,t)||this).labels={},r.smoothChildTiming=!!t.smoothChildTiming,r.autoRemoveChildren=!!t.autoRemoveChildren,r._sort=w(t.sortChildren),L&&Na(t.parent||L,_assertThisInitialized(r),e),t.reversed&&r.reverse(),t.paused&&r.paused(!0),t.scrollTrigger&&Oa(_assertThisInitialized(r),t.scrollTrigger),r}_inheritsLoose(Timeline,i);var e=Timeline.prototype;return e.to=function to(t,e,r){return Ya(0,arguments,this),this},e.from=function from(t,e,r){return Ya(1,arguments,this),this},e.fromTo=function fromTo(t,e,r,i){return Ya(2,arguments,this),this},e.set=function set(t,e,r){return e.duration=0,e.parent=this,ya(e).repeatDelay||(e.repeat=0),e.immediateRender=!!e.immediateRender,new te(t,e,Ot(this,r),1),this},e.call=function call(t,e,r){return Na(this,te.delayedCall(0,t,e),r)},e.staggerTo=function staggerTo(t,e,r,i,n,a,s){return r.duration=e,r.stagger=r.stagger||i,r.onComplete=a,r.onCompleteParams=s,r.parent=this,new te(t,r,Ot(this,n)),this},e.staggerFrom=function staggerFrom(t,e,r,i,n,a,s){return r.runBackwards=1,ya(r).immediateRender=w(r.immediateRender),this.staggerTo(t,e,r,i,n,a,s)},e.staggerFromTo=function staggerFromTo(t,e,r,i,n,a,s,o){return i.startAt=r,ya(i).immediateRender=w(i.immediateRender),this.staggerTo(t,e,i,n,a,s,o)},e.render=function render(t,e,r){var i,n,a,s,o,u,h,l,f,d,c,p,_=this._time,m=this._dirty?this.totalDuration():this._tDur,g=this._dur,v=t<=0?0:la(t),y=this._zTime<0!=t<0&&(this._initted||!g);if(this!==L&&m<v&&0<=t&&(v=m),v!==this._tTime||r||y){if(_!==this._time&&g&&(v+=this._time-_,t+=this._time-_),i=v,f=this._start,u=!(l=this._ts),y&&(g||(_=this._zTime),!t&&e||(this._zTime=t)),this._repeat){if(c=this._yoyo,o=g+this._rDelay,this._repeat<-1&&t<0)return this.totalTime(100*o+t,e,r);if(i=la(v%o),v===m?(s=this._repeat,i=g):((s=~~(d=la(v/o)))&&s===d&&(i=g,s--),g<i&&(i=g)),d=wt(this._tTime,o),!_&&this._tTime&&d!==s&&this._tTime-d*o-this._dur<=0&&(d=s),c&&1&s&&(i=g-i,p=1),s!==d&&!this._lock){var T=c&&1&d,b=T===(c&&1&s);if(s<d&&(T=!T),_=T?0:v%g?g:v,this._lock=1,this.render(_||(p?0:la(s*o)),e,!g)._lock=0,this._tTime=v,!e&&this.parent&&Dt(this,\"onRepeat\"),this.vars.repeatRefresh&&!p&&(this.invalidate()._lock=1,d=s),_&&_!==this._time||u!=!this._ts||this.vars.onRepeat&&!this.parent&&!this._act)return this;if(g=this._dur,m=this._tDur,b&&(this._lock=2,_=T?g:-1e-4,this.render(_,!0),this.vars.repeatRefresh&&!p&&this.invalidate()),this._lock=0,!this._ts&&!u)return this;Tb(this,p)}}if(this._hasPause&&!this._forcing&&this._lock<2&&(h=function _findNextPauseTween(t,e,r){var i;if(e<r)for(i=t._first;i&&i._start<=r;){if(\"isPause\"===i.data&&i._start>e)return i;i=i._next}else for(i=t._last;i&&i._start>=r;){if(\"isPause\"===i.data&&i._start<e)return i;i=i._prev}}(this,la(_),la(i)))&&(v-=i-(i=h._start)),this._tTime=v,this._time=i,this._act=!l,this._initted||(this._onUpdate=this.vars.onUpdate,this._initted=1,this._zTime=t,_=0),!_&&v&&g&&!e&&!d&&(Dt(this,\"onStart\"),this._tTime!==v))return this;if(_<=i&&0<=t)for(n=this._first;n;){if(a=n._next,(n._act||i>=n._start)&&n._ts&&h!==n){if(n.parent!==this)return this.render(t,e,r);if(n.render(0<n._ts?(i-n._start)*n._ts:(n._dirty?n.totalDuration():n._tDur)+(i-n._start)*n._ts,e,r),i!==this._time||!this._ts&&!u){h=0,a&&(v+=this._zTime=-q);break}}n=a}else{n=this._last;for(var w=t<0?t:i;n;){if(a=n._prev,(n._act||w<=n._end)&&n._ts&&h!==n){if(n.parent!==this)return this.render(t,e,r);if(n.render(0<n._ts?(w-n._start)*n._ts:(n._dirty?n.totalDuration():n._tDur)+(w-n._start)*n._ts,e,r||I&&pa(n)),i!==this._time||!this._ts&&!u){h=0,a&&(v+=this._zTime=w?-q:q);break}}n=a}}if(h&&!e&&(this.pause(),h.render(_<=i?0:-q)._zTime=_<=i?1:-1,this._ts))return this._start=f,Ka(this),this.render(t,e,r);this._onUpdate&&!e&&Dt(this,\"onUpdate\",!0),(v===m&&this._tTime>=this.totalDuration()||!v&&_)&&(f!==this._start&&Math.abs(l)===Math.abs(this._ts)||this._lock||(!t&&g||!(v===m&&0<this._ts||!v&&this._ts<0)||Ca(this,1),e||t<0&&!_||!v&&!_&&m||(Dt(this,v===m&&0<=t?\"onComplete\":\"onReverseComplete\",!0),!this._prom||v<m&&0<this.timeScale()||this._prom())))}return this},e.add=function add(e,i){var n=this;if(t(i)||(i=Ot(this,i,e)),!(e instanceof qt)){if($(e))return e.forEach(function(t){return n.add(t,i)}),this;if(r(e))return this.addLabel(e,i);if(!s(e))return this;e=te.delayedCall(0,e)}return this!==e?Na(this,e,i):this},e.getChildren=function getChildren(t,e,r,i){void 0===t&&(t=!0),void 0===e&&(e=!0),void 0===r&&(r=!0),void 0===i&&(i=-X);for(var n=[],a=this._first;a;)a._start>=i&&(a instanceof te?e&&n.push(a):(r&&n.push(a),t&&n.push.apply(n,a.getChildren(!0,e,r)))),a=a._next;return n},e.getById=function getById(t){for(var e=this.getChildren(1,1,1),r=e.length;r--;)if(e[r].vars.id===t)return e[r]},e.remove=function remove(t){return r(t)?this.removeLabel(t):s(t)?this.killTweensOf(t):(t.parent===this&&Ba(this,t),t===this._recent&&(this._recent=this._last),Da(this))},e.totalTime=function totalTime(t,e){return arguments.length?(this._forcing=1,!this._dp&&this._ts&&(this._start=la(It.time-(0<this._ts?t/this._ts:(this.totalDuration()-t)/-this._ts))),i.prototype.totalTime.call(this,t,e),this._forcing=0,this):this._tTime},e.addLabel=function addLabel(t,e){return this.labels[t]=Ot(this,e),this},e.removeLabel=function removeLabel(t){return delete this.labels[t],this},e.addPause=function addPause(t,e,r){var i=te.delayedCall(0,e||V,r);return i.data=\"isPause\",this._hasPause=1,Na(this,i,Ot(this,t))},e.removePause=function removePause(t){var e=this._first;for(t=Ot(this,t);e;)e._start===t&&\"isPause\"===e.data&&Ca(e),e=e._next},e.killTweensOf=function killTweensOf(t,e,r){for(var i=this.getTweensOf(t,r),n=i.length;n--;)Wt!==i[n]&&i[n].kill(t,e);return this},e.getTweensOf=function getTweensOf(e,r){for(var i,n=[],a=Pt(e),s=this._first,o=t(r);s;)s instanceof te?na(s._targets,a)&&(o?(!Wt||s._initted&&s._ts)&&s.globalTime(0)<=r&&s.globalTime(s.totalDuration())>r:!r||s.isActive())&&n.push(s):(i=s.getTweensOf(a,r)).length&&n.push.apply(n,i),s=s._next;return n},e.tweenTo=function tweenTo(t,e){e=e||{};var r,i=this,n=Ot(i,t),a=e.startAt,s=e.onStart,o=e.onStartParams,u=e.immediateRender,h=te.to(i,ta({ease:e.ease||\"none\",lazy:!1,immediateRender:!1,time:n,overwrite:\"auto\",duration:e.duration||Math.abs((n-(a&&\"time\"in a?a.time:i._time))/i.timeScale())||q,onStart:function onStart(){if(i.pause(),!r){var t=e.duration||Math.abs((n-(a&&\"time\"in a?a.time:i._time))/i.timeScale());h._dur!==t&&Ua(h,t,0,1).render(h._time,!0,!0),r=1}s&&s.apply(h,o||[])}},e));return u?h.render(0):h},e.tweenFromTo=function tweenFromTo(t,e,r){return this.tweenTo(e,ta({startAt:{time:Ot(this,t)}},r))},e.recent=function recent(){return this._recent},e.nextLabel=function nextLabel(t){return void 0===t&&(t=this._time),ub(this,Ot(this,t))},e.previousLabel=function previousLabel(t){return void 0===t&&(t=this._time),ub(this,Ot(this,t),1)},e.currentLabel=function currentLabel(t){return arguments.length?this.seek(t,!0):this.previousLabel(this._time+q)},e.shiftChildren=function shiftChildren(t,e,r){void 0===r&&(r=0);var i,n=this._first,a=this.labels;for(t=la(t);n;)n._start>=r&&(n._start+=t,n._end+=t),n=n._next;if(e)for(i in a)a[i]>=r&&(a[i]+=t);return Da(this)},e.invalidate=function invalidate(t){var e=this._first;for(this._lock=0;e;)e.invalidate(t),e=e._next;return i.prototype.invalidate.call(this,t)},e.clear=function clear(t){void 0===t&&(t=!0);for(var e,r=this._first;r;)e=r._next,this.remove(r),r=e;return this._dp&&(this._time=this._tTime=this._pTime=0),t&&(this.labels={}),Da(this)},e.totalDuration=function totalDuration(t){var e,r,i,n=0,a=this,s=a._last,o=X;if(arguments.length)return a.timeScale((a._repeat<0?a.duration():a.totalDuration())/(a.reversed()?-t:t));if(a._dirty){for(i=a.parent;s;)e=s._prev,s._dirty&&s.totalDuration(),o<(r=s._start)&&a._sort&&s._ts&&!a._lock?(a._lock=1,Na(a,s,r-s._delay,1)._lock=0):o=r,r<0&&s._ts&&(n-=r,(!i&&!a._dp||i&&i.smoothChildTiming)&&(a._start+=la(r/a._ts),a._time-=r,a._tTime-=r),a.shiftChildren(-r,!1,-Infinity),o=0),s._end>n&&s._ts&&(n=s._end),s=e;Ua(a,a===L&&a._time>n?a._time:n,1,1),a._dirty=0}return a._tDur},Timeline.updateRoot=function updateRoot(t){if(L._ts&&(qa(L,Ja(t,L)),f=It.frame),It.frame>=vt){vt+=N.autoSleep||120;var e=L._first;if((!e||!e._ts)&&N.autoSleep&&It._listeners.length<2){for(;e&&!e._ts;)e=e._next;e||It.sleep()}}},Timeline}(qt);ta(Zt.prototype,{_lock:0,_hasPause:0,_forcing:0});function dc(t,e,i,n,a,o){var u,h,l,f;if(mt[t]&&!1!==(u=new mt[t]).init(a,u.rawVars?e[t]:function _processVars(t,e,i,n,a){if(s(t)&&(t=Gt(t,a,e,i,n)),!v(t)||t.style&&t.nodeType||$(t)||K(t))return r(t)?Gt(t,a,e,i,n):t;var o,u={};for(o in t)u[o]=Gt(t[o],a,e,i,n);return u}(e[t],n,a,o,i),i,n,o)&&(i._pt=h=new we(i._pt,a,t,0,1,u.render,u,0,u.priority),i!==d))for(l=i._ptLookup[i._targets.indexOf(a)],f=u._props.length;f--;)l[u._props[f]]=h;return u}function jc(t,r,e,i){var n,a,s=r.ease||i||\"power1.inOut\";if($(r))a=e[t]||(e[t]=[]),r.forEach(function(t,e){return a.push({t:e/(r.length-1)*100,v:t,e:s})});else for(n in r)a=e[n]||(e[n]=[]),\"ease\"===n||a.push({t:parseFloat(t),v:r[n],e:s})}var Wt,Ht,Jt=function _addPropTween(t,e,i,n,a,o,u,h,l,f){s(n)&&(n=n(a||0,t,o));var d,c=t[e],p=\"get\"!==i?i:s(c)?l?t[e.indexOf(\"set\")||!s(t[\"get\"+e.substr(3)])?e:\"get\"+e.substr(3)](l):t[e]():c,_=s(c)?l?ue:re:ee;if(r(n)&&(~n.indexOf(\"random(\")&&(n=rb(n)),\"=\"===n.charAt(1)&&(!(d=ma(p,n)+(_a(p)||0))&&0!==d||(n=d))),!f||p!==n||Ht)return isNaN(p*n)||\"\"===n?(c||e in t||S(e,n),function _addComplexStringPropTween(t,e,r,i,n,a,s){var o,u,h,l,f,d,c,p,_=new we(this._pt,t,e,0,1,ge,null,n),m=0,g=0;for(_.b=r,_.e=i,r+=\"\",(c=~(i+=\"\").indexOf(\"random(\"))&&(i=rb(i)),a&&(a(p=[r,i],t,e),r=p[0],i=p[1]),u=r.match(at)||[];o=at.exec(i);)l=o[0],f=i.substring(m,o.index),h?h=(h+1)%5:\"rgba(\"===f.substr(-5)&&(h=1),l!==u[g++]&&(d=parseFloat(u[g-1])||0,_._pt={_next:_._pt,p:f||1===g?f:\",\",s:d,c:\"=\"===l.charAt(1)?ma(d,l)-d:parseFloat(l)-d,m:h&&h<4?Math.round:0},m=at.lastIndex);return _.c=m<i.length?i.substring(m,i.length):\"\",_.fp=s,(st.test(i)||c)&&(_.e=0),this._pt=_}.call(this,t,e,p,n,_,h||N.stringFilter,l)):(d=new we(this._pt,t,e,+p||0,n-(p||0),\"boolean\"==typeof c?_e:ce,0,_),l&&(d.fp=l),u&&d.modifier(u,this,t),this._pt=d)},Qt=function _initTween(t,e,r){var i,n,a,s,o,u,h,l,f,d,c,p,_,m=t.vars,g=m.ease,v=m.startAt,y=m.immediateRender,T=m.lazy,b=m.onUpdate,x=m.runBackwards,k=m.yoyoEase,O=m.keyframes,M=m.autoRevert,C=t._dur,P=t._startAt,A=t._targets,D=t.parent,S=D&&\"nested\"===D.data?D.vars.targets:A,z=\"auto\"===t._overwrite&&!F,E=t.timeline;if(!E||O&&g||(g=\"none\"),t._ease=Vt(g,j.ease),t._yEase=k?jt(Vt(!0===k?g:k,j.ease)):0,k&&t._yoyo&&!t._repeat&&(k=t._yEase,t._yEase=t._ease,t._ease=k),t._from=!E&&!!m.runBackwards,!E||O&&!m.stagger){if(p=(l=A[0]?ha(A[0]).harness:0)&&m[l.prop],i=xa(m,ct),P&&(P._zTime<0&&P.progress(1),e<0&&x&&y&&!M?P.render(-1,!0):P.revert(x&&C?ft:lt),P._lazy=0),v){if(Ca(t._startAt=te.set(A,ta({data:\"isStart\",overwrite:!1,parent:D,immediateRender:!0,lazy:!P&&w(T),startAt:null,delay:0,onUpdate:b&&function(){return Dt(t,\"onUpdate\")},stagger:0},v))),t._startAt._dp=0,t._startAt._sat=t,e<0&&(I||!y&&!M)&&t._startAt.revert(ft),y&&C&&e<=0&&r<=0)return void(e&&(t._zTime=e))}else if(x&&C&&!P)if(e&&(y=!1),a=ta({overwrite:!1,data:\"isFromStart\",lazy:y&&!P&&w(T),immediateRender:y,stagger:0,parent:D},i),p&&(a[l.prop]=p),Ca(t._startAt=te.set(A,a)),t._startAt._dp=0,t._startAt._sat=t,e<0&&(I?t._startAt.revert(ft):t._startAt.render(-1,!0)),t._zTime=e,y){if(!e)return}else _initTween(t._startAt,q,q);for(t._pt=t._ptCache=0,T=C&&w(T)||T&&!C,n=0;n<A.length;n++){if(h=(o=A[n])._gsap||ga(A)[n]._gsap,t._ptLookup[n]=d={},_t[h.id]&&pt.length&&oa(),c=S===A?n:S.indexOf(o),l&&!1!==(f=new l).init(o,p||i,t,c,S)&&(t._pt=s=new we(t._pt,o,f.name,0,1,f.render,f,0,f.priority),f._props.forEach(function(t){d[t]=s}),f.priority&&(u=1)),!l||p)for(a in i)mt[a]&&(f=dc(a,i,t,c,o,S))?f.priority&&(u=1):d[a]=s=Jt.call(t,o,a,\"get\",i[a],c,S,0,m.stringFilter);t._op&&t._op[n]&&t.kill(o,t._op[n]),z&&t._pt&&(Wt=t,L.killTweensOf(o,d,t.globalTime(e)),_=!t.parent,Wt=0),t._pt&&T&&(_t[h.id]=1)}u&&be(t),t._onInit&&t._onInit(t)}t._onUpdate=b,t._initted=(!t._op||t._pt)&&!_,O&&e<=0&&E.render(X,!0,!0)},Gt=function _parseFuncOrString(t,e,i,n,a){return s(t)?t.call(e,i,n,a):r(t)&&~t.indexOf(\"random(\")?rb(t):t},Kt=Tt+\"repeat,repeatDelay,yoyo,repeatRefresh,yoyoEase,autoRevert\",$t={};ja(Kt+\",id,stagger,delay,duration,paused,scrollTrigger\",function(t){return $t[t]=1});var te=function(R){function Tween(e,r,i,n){var a;\"number\"==typeof r&&(i.duration=r,r=i,i=null);var s,o,u,h,l,f,d,c,p=(a=R.call(this,n?r:ya(r))||this).vars,_=p.duration,m=p.delay,g=p.immediateRender,b=p.stagger,x=p.overwrite,k=p.keyframes,O=p.defaults,M=p.scrollTrigger,C=p.yoyoEase,P=r.parent||L,A=($(e)||K(e)?t(e[0]):\"length\"in r)?[e]:Pt(e);if(a._targets=A.length?ga(A):T(\"GSAP target \"+e+\" not found. https://gsap.com\",!N.nullTargetWarn)||[],a._ptLookup=[],a._overwrite=x,k||b||y(_)||y(m)){if(r=a.vars,(s=a.timeline=new Zt({data:\"nested\",defaults:O||{},targets:P&&\"nested\"===P.data?P.vars.targets:A})).kill(),s.parent=s._dp=_assertThisInitialized(a),s._start=0,b||y(_)||y(m)){if(h=A.length,d=b&&hb(b),v(b))for(l in b)~Kt.indexOf(l)&&((c=c||{})[l]=b[l]);for(o=0;o<h;o++)(u=xa(r,$t)).stagger=0,C&&(u.yoyoEase=C),c&&bt(u,c),f=A[o],u.duration=+Gt(_,_assertThisInitialized(a),o,f,A),u.delay=(+Gt(m,_assertThisInitialized(a),o,f,A)||0)-a._delay,!b&&1===h&&u.delay&&(a._delay=m=u.delay,a._start+=m,u.delay=0),s.to(f,u,d?d(o,f,A):0),s._ease=Bt.none;s.duration()?_=m=0:a.timeline=0}else if(k){ya(ta(s.vars.defaults,{ease:\"none\"})),s._ease=Vt(k.ease||r.ease||\"none\");var D,S,z,E=0;if($(k))k.forEach(function(t){return s.to(A,t,\">\")}),s.duration();else{for(l in u={},k)\"ease\"===l||\"easeEach\"===l||jc(l,k[l],u,k.easeEach);for(l in u)for(D=u[l].sort(function(t,e){return t.t-e.t}),o=E=0;o<D.length;o++)(z={ease:(S=D[o]).e,duration:(S.t-(o?D[o-1].t:0))/100*_})[l]=S.v,s.to(A,z,E),E+=z.duration;s.duration()<_&&s.to({},{duration:_-s.duration()})}}_||a.duration(_=s.duration())}else a.timeline=0;return!0!==x||F||(Wt=_assertThisInitialized(a),L.killTweensOf(A),Wt=0),Na(P,_assertThisInitialized(a),i),r.reversed&&a.reverse(),r.paused&&a.paused(!0),(g||!_&&!k&&a._start===la(P._time)&&w(g)&&function _hasNoPausedAncestors(t){return!t||t._ts&&_hasNoPausedAncestors(t.parent)}(_assertThisInitialized(a))&&\"nested\"!==P.data)&&(a._tTime=-q,a.render(Math.max(0,-m)||0)),M&&Oa(_assertThisInitialized(a),M),a}_inheritsLoose(Tween,R);var e=Tween.prototype;return e.render=function render(t,e,r){var i,n,a,s,o,u,h,l,f,d=this._time,c=this._tDur,p=this._dur,_=t<0,m=c-q<t&&!_?c:t<q?0:t;if(p){if(m!==this._tTime||!t||r||!this._initted&&this._tTime||this._startAt&&this._zTime<0!=_||this._lazy){if(i=m,l=this.timeline,this._repeat){if(s=p+this._rDelay,this._repeat<-1&&_)return this.totalTime(100*s+t,e,r);if(i=la(m%s),m===c?(a=this._repeat,i=p):(a=~~(o=la(m/s)))&&a===o?(i=p,a--):p<i&&(i=p),(u=this._yoyo&&1&a)&&(f=this._yEase,i=p-i),o=wt(this._tTime,s),i===d&&!r&&this._initted&&a===o)return this._tTime=m,this;a!==o&&(l&&this._yEase&&Tb(l,u),this.vars.repeatRefresh&&!u&&!this._lock&&i!==s&&this._initted&&(this._lock=r=1,this.render(la(s*a),!0).invalidate()._lock=0))}if(!this._initted){if(Pa(this,_?t:i,r,e,m))return this._tTime=0,this;if(!(d===this._time||r&&this.vars.repeatRefresh&&a!==o))return this;if(p!==this._dur)return this.render(t,e,r)}if(this._tTime=m,this._time=i,!this._act&&this._ts&&(this._act=1,this._lazy=0),this.ratio=h=(f||this._ease)(i/p),this._from&&(this.ratio=h=1-h),!d&&m&&!e&&!o&&(Dt(this,\"onStart\"),this._tTime!==m))return this;for(n=this._pt;n;)n.r(h,n.d),n=n._next;l&&l.render(t<0?t:l._dur*l._ease(i/this._dur),e,r)||this._startAt&&(this._zTime=t),this._onUpdate&&!e&&(_&&Fa(this,t,0,r),Dt(this,\"onUpdate\")),this._repeat&&a!==o&&this.vars.onRepeat&&!e&&this.parent&&Dt(this,\"onRepeat\"),m!==this._tDur&&m||this._tTime!==m||(_&&!this._onUpdate&&Fa(this,t,0,!0),!t&&p||!(m===this._tDur&&0<this._ts||!m&&this._ts<0)||Ca(this,1),e||_&&!d||!(m||d||u)||(Dt(this,m===c?\"onComplete\":\"onReverseComplete\",!0),!this._prom||m<c&&0<this.timeScale()||this._prom()))}}else!function _renderZeroDurationTween(t,e,r,i){var n,a,s,o=t.ratio,u=e<0||!e&&(!t._start&&function _parentPlayheadIsBeforeStart(t){var e=t.parent;return e&&e._ts&&e._initted&&!e._lock&&(e.rawTime()<0||_parentPlayheadIsBeforeStart(e))}(t)&&(t._initted||!xt(t))||(t._ts<0||t._dp._ts<0)&&!xt(t))?0:1,h=t._rDelay,l=0;if(h&&t._repeat&&(l=Mt(0,t._tDur,e),a=wt(l,h),t._yoyo&&1&a&&(u=1-u),a!==wt(t._tTime,h)&&(o=1-u,t.vars.repeatRefresh&&t._initted&&t.invalidate())),u!==o||I||i||t._zTime===q||!e&&t._zTime){if(!t._initted&&Pa(t,e,i,r,l))return;for(s=t._zTime,t._zTime=e||(r?q:0),r=r||e&&!s,t.ratio=u,t._from&&(u=1-u),t._time=0,t._tTime=l,n=t._pt;n;)n.r(u,n.d),n=n._next;e<0&&Fa(t,e,0,!0),t._onUpdate&&!r&&Dt(t,\"onUpdate\"),l&&t._repeat&&!r&&t.parent&&Dt(t,\"onRepeat\"),(e>=t._tDur||e<0)&&t.ratio===u&&(u&&Ca(t,1),r||I||(Dt(t,u?\"onComplete\":\"onReverseComplete\",!0),t._prom&&t._prom()))}else t._zTime||(t._zTime=e)}(this,t,e,r);return this},e.targets=function targets(){return this._targets},e.invalidate=function invalidate(t){return t&&this.vars.runBackwards||(this._startAt=0),this._pt=this._op=this._onUpdate=this._lazy=this.ratio=0,this._ptLookup=[],this.timeline&&this.timeline.invalidate(t),R.prototype.invalidate.call(this,t)},e.resetTo=function resetTo(t,e,r,i,n){c||It.wake(),this._ts||this.play();var a,s=Math.min(this._dur,(this._dp._time-this._start)*this._ts);return this._initted||Qt(this,s),a=this._ease(s/this._dur),function _updatePropTweens(t,e,r,i,n,a,s,o){var u,h,l,f,d=(t._pt&&t._ptCache||(t._ptCache={}))[e];if(!d)for(d=t._ptCache[e]=[],l=t._ptLookup,f=t._targets.length;f--;){if((u=l[f][e])&&u.d&&u.d._pt)for(u=u.d._pt;u&&u.p!==e&&u.fp!==e;)u=u._next;if(!u)return Ht=1,t.vars[e]=\"+=0\",Qt(t,s),Ht=0,o?T(e+\" not eligible for reset\"):1;d.push(u)}for(f=d.length;f--;)(u=(h=d[f])._pt||h).s=!i&&0!==i||n?u.s+(i||0)+a*u.c:i,u.c=r-u.s,h.e&&(h.e=ka(r)+_a(h.e)),h.b&&(h.b=u.s+_a(h.b))}(this,t,e,r,i,a,s,n)?this.resetTo(t,e,r,i,1):(La(this,0),this.parent||Aa(this._dp,this,\"_first\",\"_last\",this._dp._sort?\"_start\":0),this.render(0))},e.kill=function kill(t,e){if(void 0===e&&(e=\"all\"),!(t||e&&\"all\"!==e))return this._lazy=this._pt=0,this.parent?wb(this):this.scrollTrigger&&this.scrollTrigger.kill(!!I),this;if(this.timeline){var i=this.timeline.totalDuration();return this.timeline.killTweensOf(t,e,Wt&&!0!==Wt.vars.overwrite)._first||wb(this),this.parent&&i!==this.timeline.totalDuration()&&Ua(this,this._dur*this.timeline._tDur/i,0,1),this}var n,a,s,o,u,h,l,f=this._targets,d=t?Pt(t):f,c=this._ptLookup,p=this._pt;if((!e||\"all\"===e)&&function _arraysMatch(t,e){for(var r=t.length,i=r===e.length;i&&r--&&t[r]===e[r];);return r<0}(f,d))return\"all\"===e&&(this._pt=0),wb(this);for(n=this._op=this._op||[],\"all\"!==e&&(r(e)&&(u={},ja(e,function(t){return u[t]=1}),e=u),e=function _addAliasesToVars(t,e){var r,i,n,a,s=t[0]?ha(t[0]).harness:0,o=s&&s.aliases;if(!o)return e;for(i in r=bt({},e),o)if(i in r)for(n=(a=o[i].split(\",\")).length;n--;)r[a[n]]=r[i];return r}(f,e)),l=f.length;l--;)if(~d.indexOf(f[l]))for(u in a=c[l],\"all\"===e?(n[l]=e,o=a,s={}):(s=n[l]=n[l]||{},o=e),o)(h=a&&a[u])&&(\"kill\"in h.d&&!0!==h.d.kill(u)||Ba(this,h,\"_pt\"),delete a[u]),\"all\"!==s&&(s[u]=1);return this._initted&&!this._pt&&p&&wb(this),this},Tween.to=function to(t,e,r){return new Tween(t,e,r)},Tween.from=function from(t,e){return Ya(1,arguments)},Tween.delayedCall=function delayedCall(t,e,r,i){return new Tween(e,0,{immediateRender:!1,lazy:!1,overwrite:!1,delay:t,onComplete:e,onReverseComplete:e,onCompleteParams:r,onReverseCompleteParams:r,callbackScope:i})},Tween.fromTo=function fromTo(t,e,r){return Ya(2,arguments)},Tween.set=function set(t,e){return e.duration=0,e.repeatDelay||(e.repeat=0),new Tween(t,e)},Tween.killTweensOf=function killTweensOf(t,e,r){return L.killTweensOf(t,e,r)},Tween}(qt);ta(te.prototype,{_targets:[],_lazy:0,_startAt:0,_op:0,_onInit:0}),ja(\"staggerTo,staggerFrom,staggerFromTo\",function(r){te[r]=function(){var t=new Zt,e=Ct.call(arguments,0);return e.splice(\"staggerFromTo\"===r?5:4,0,0),t[r].apply(t,e)}});function rc(t,e,r){return t.setAttribute(e,r)}function zc(t,e,r,i){i.mSet(t,e,i.m.call(i.tween,r,i.mt),i)}var ee=function _setterPlain(t,e,r){return t[e]=r},re=function _setterFunc(t,e,r){return t[e](r)},ue=function _setterFuncWithParam(t,e,r,i){return t[e](i.fp,r)},le=function _getSetter(t,e){return s(t[e])?re:u(t[e])&&t.setAttribute?rc:ee},ce=function _renderPlain(t,e){return e.set(e.t,e.p,Math.round(1e6*(e.s+e.c*t))/1e6,e)},_e=function _renderBoolean(t,e){return e.set(e.t,e.p,!!(e.s+e.c*t),e)},ge=function _renderComplexString(t,e){var r=e._pt,i=\"\";if(!t&&e.b)i=e.b;else if(1===t&&e.e)i=e.e;else{for(;r;)i=r.p+(r.m?r.m(r.s+r.c*t):Math.round(1e4*(r.s+r.c*t))/1e4)+i,r=r._next;i+=e.c}e.set(e.t,e.p,i,e)},ve=function _renderPropTweens(t,e){for(var r=e._pt;r;)r.r(t,r.d),r=r._next},ye=function _addPluginModifier(t,e,r,i){for(var n,a=this._pt;a;)n=a._next,a.p===i&&a.modifier(t,e,r),a=n},Te=function _killPropTweensOf(t){for(var e,r,i=this._pt;i;)r=i._next,i.p===t&&!i.op||i.op===t?Ba(this,i,\"_pt\"):i.dep||(e=1),i=r;return!e},be=function _sortPropTweensByPriority(t){for(var e,r,i,n,a=t._pt;a;){for(e=a._next,r=i;r&&r.pr>a.pr;)r=r._next;(a._prev=r?r._prev:n)?a._prev._next=a:i=a,(a._next=r)?r._prev=a:n=a,a=e}t._pt=i},we=(PropTween.prototype.modifier=function modifier(t,e,r){this.mSet=this.mSet||this.set,this.set=zc,this.m=t,this.mt=r,this.tween=e},PropTween);function PropTween(t,e,r,i,n,a,s,o,u){this.t=e,this.s=i,this.c=n,this.p=r,this.r=a||ce,this.d=s||this,this.set=o||ee,this.pr=u||0,(this._next=t)&&(t._prev=this)}ja(Tt+\"parent,duration,ease,delay,overwrite,runBackwards,startAt,yoyo,immediateRender,repeat,repeatDelay,data,paused,reversed,lazy,callbackScope,stringFilter,id,yoyoEase,stagger,inherit,repeatRefresh,keyframes,autoRevert,scrollTrigger\",function(t){return ct[t]=1}),ht.TweenMax=ht.TweenLite=te,ht.TimelineLite=ht.TimelineMax=Zt,L=new Zt({sortChildren:!1,defaults:j,autoRemoveChildren:!0,id:\"root\",smoothChildTiming:!0}),N.stringFilter=Ib;function Hc(t){return(Oe[t]||Me).map(function(t){return t()})}function Ic(){var t=Date.now(),o=[];2<t-Ce&&(Hc(\"matchMediaInit\"),ke.forEach(function(t){var e,r,i,n,a=t.queries,s=t.conditions;for(r in a)(e=h.matchMedia(a[r]).matches)&&(i=1),e!==s[r]&&(s[r]=e,n=1);n&&(t.revert(),i&&o.push(t))}),Hc(\"matchMediaRevert\"),o.forEach(function(e){return e.onMatch(e,function(t){return e.add(null,t)})}),Ce=t,Hc(\"matchMedia\"))}var xe,ke=[],Oe={},Me=[],Ce=0,Pe=0,De=((xe=Context.prototype).add=function add(t,i,n){function Jw(){var t,e=l,r=a.selector;return e&&e!==a&&e.data.push(a),n&&(a.selector=fb(n)),l=a,t=i.apply(a,arguments),s(t)&&a._r.push(t),l=e,a.selector=r,a.isReverted=!1,t}s(t)&&(n=i,i=t,t=s);var a=this;return a.last=Jw,t===s?Jw(a,function(t){return a.add(null,t)}):t?a[t]=Jw:Jw},xe.ignore=function ignore(t){var e=l;l=null,t(this),l=e},xe.getTweens=function getTweens(){var e=[];return this.data.forEach(function(t){return t instanceof Context?e.push.apply(e,t.getTweens()):t instanceof te&&!(t.parent&&\"nested\"===t.parent.data)&&e.push(t)}),e},xe.clear=function clear(){this._r.length=this.data.length=0},xe.kill=function kill(i,t){var n=this;if(i?function(){for(var t,e=n.getTweens(),r=n.data.length;r--;)\"isFlip\"===(t=n.data[r]).data&&(t.revert(),t.getChildren(!0,!0,!1).forEach(function(t){return e.splice(e.indexOf(t),1)}));for(e.map(function(t){return{g:t._dur||t._delay||t._sat&&!t._sat.vars.immediateRender?t.globalTime(0):-1/0,t:t}}).sort(function(t,e){return e.g-t.g||-1/0}).forEach(function(t){return t.t.revert(i)}),r=n.data.length;r--;)(t=n.data[r])instanceof Zt?\"nested\"!==t.data&&(t.scrollTrigger&&t.scrollTrigger.revert(),t.kill()):t instanceof te||!t.revert||t.revert(i);n._r.forEach(function(t){return t(i,n)}),n.isReverted=!0}():this.data.forEach(function(t){return t.kill&&t.kill()}),this.clear(),t)for(var e=ke.length;e--;)ke[e].id===this.id&&ke.splice(e,1)},xe.revert=function revert(t){this.kill(t||{})},Context);function Context(t,e){this.selector=e&&fb(e),this.data=[],this._r=[],this.isReverted=!1,this.id=Pe++,t&&this.add(t)}var Se,Ee=((Se=MatchMedia.prototype).add=function add(t,e,r){v(t)||(t={matches:t});var i,n,a,s=new De(0,r||this.scope),o=s.conditions={};for(n in l&&!s.selector&&(s.selector=l.selector),this.contexts.push(s),e=s.add(\"onMatch\",e),s.queries=t)\"all\"===n?a=1:(i=h.matchMedia(t[n]))&&(ke.indexOf(s)<0&&ke.push(s),(o[n]=i.matches)&&(a=1),i.addListener?i.addListener(Ic):i.addEventListener(\"change\",Ic));return a&&e(s,function(t){return s.add(null,t)}),this},Se.revert=function revert(t){this.kill(t||{})},Se.kill=function kill(e){this.contexts.forEach(function(t){return t.kill(e,!0)})},MatchMedia);function MatchMedia(t){this.contexts=[],this.scope=t,l&&l.data.push(this)}var Re={registerPlugin:function registerPlugin(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];e.forEach(function(t){return zb(t)})},timeline:function timeline(t){return new Zt(t)},getTweensOf:function getTweensOf(t,e){return L.getTweensOf(t,e)},getProperty:function getProperty(i,t,e,n){r(i)&&(i=Pt(i)[0]);var a=ha(i||{}).get,s=e?sa:ra;return\"native\"===e&&(e=\"\"),i?t?s((mt[t]&&mt[t].get||a)(i,t,e,n)):function(t,e,r){return s((mt[t]&&mt[t].get||a)(i,t,e,r))}:i},quickSetter:function quickSetter(r,e,i){if(1<(r=Pt(r)).length){var n=r.map(function(t){return Fe.quickSetter(t,e,i)}),a=n.length;return function(t){for(var e=a;e--;)n[e](t)}}r=r[0]||{};var s=mt[e],o=ha(r),u=o.harness&&(o.harness.aliases||{})[e]||e,h=s?function(t){var e=new s;d._pt=0,e.init(r,i?t+i:t,d,0,[r]),e.render(1,e),d._pt&&ve(1,d)}:o.set(r,u);return s?h:function(t){return h(r,u,i?t+i:t,o,1)}},quickTo:function quickTo(t,i,e){function by(t,e,r){return n.resetTo(i,t,e,r)}var r,n=Fe.to(t,ta(((r={})[i]=\"+=0.1\",r.paused=!0,r.stagger=0,r),e||{}));return by.tween=n,by},isTweening:function isTweening(t){return 0<L.getTweensOf(t,!0).length},defaults:function defaults(t){return t&&t.ease&&(t.ease=Vt(t.ease,j.ease)),wa(j,t||{})},config:function config(t){return wa(N,t||{})},registerEffect:function registerEffect(t){var i=t.name,n=t.effect,e=t.plugins,a=t.defaults,r=t.extendTimeline;(e||\"\").split(\",\").forEach(function(t){return t&&!mt[t]&&!ht[t]&&T(i+\" effect requires \"+t+\" plugin.\")}),gt[i]=function(t,e,r){return n(Pt(t),ta(e||{},a),r)},r&&(Zt.prototype[i]=function(t,e,r){return this.add(gt[i](t,v(e)?e:(r=e)&&{},this),r)})},registerEase:function registerEase(t,e){Bt[t]=Vt(e)},parseEase:function parseEase(t,e){return arguments.length?Vt(t,e):Bt},getById:function getById(t){return L.getById(t)},exportRoot:function exportRoot(t,e){void 0===t&&(t={});var r,i,n=new Zt(t);for(n.smoothChildTiming=w(t.smoothChildTiming),L.remove(n),n._dp=0,n._time=n._tTime=L._time,r=L._first;r;)i=r._next,!e&&!r._dur&&r instanceof te&&r.vars.onComplete===r._targets[0]||Na(n,r,r._start-r._delay),r=i;return Na(L,n,0),n},context:function context(t,e){return t?new De(t,e):l},matchMedia:function matchMedia(t){return new Ee(t)},matchMediaRefresh:function matchMediaRefresh(){return ke.forEach(function(t){var e,r,i=t.conditions;for(r in i)i[r]&&(i[r]=!1,e=1);e&&t.revert()})||Ic()},addEventListener:function addEventListener(t,e){var r=Oe[t]||(Oe[t]=[]);~r.indexOf(e)||r.push(e)},removeEventListener:function removeEventListener(t,e){var r=Oe[t],i=r&&r.indexOf(e);0<=i&&r.splice(i,1)},utils:{wrap:function wrap(e,t,r){var i=t-e;return $(e)?ob(e,wrap(0,e.length),t):Za(r,function(t){return(i+(t-e)%i)%i+e})},wrapYoyo:function wrapYoyo(e,t,r){var i=t-e,n=2*i;return $(e)?ob(e,wrapYoyo(0,e.length-1),t):Za(r,function(t){return e+(i<(t=(n+(t-e)%n)%n||0)?n-t:t)})},distribute:hb,random:kb,snap:jb,normalize:function normalize(t,e,r){return At(t,e,0,1,r)},getUnit:_a,clamp:function clamp(e,r,t){return Za(t,function(t){return Mt(e,r,t)})},splitColor:Db,toArray:Pt,selector:fb,mapRange:At,pipe:function pipe(){for(var t=arguments.length,e=new Array(t),r=0;r<t;r++)e[r]=arguments[r];return function(t){return e.reduce(function(t,e){return e(t)},t)}},unitize:function unitize(e,r){return function(t){return e(parseFloat(t))+(r||_a(t))}},interpolate:function interpolate(e,i,t,n){var a=isNaN(e+i)?0:function(t){return(1-t)*e+t*i};if(!a){var s,o,u,h,l,f=r(e),d={};if(!0===t&&(n=1)&&(t=null),f)e={p:e},i={p:i};else if($(e)&&!$(i)){for(u=[],h=e.length,l=h-2,o=1;o<h;o++)u.push(interpolate(e[o-1],e[o]));h--,a=function func(t){t*=h;var e=Math.min(l,~~t);return u[e](t-e)},t=i}else n||(e=bt($(e)?[]:{},e));if(!u){for(s in i)Jt.call(d,e,s,\"get\",i[s]);a=function func(t){return ve(t,d)||(f?e.p:e)}}}return Za(t,a)},shuffle:gb},install:R,effects:gt,ticker:It,updateRoot:Zt.updateRoot,plugins:mt,globalTimeline:L,core:{PropTween:we,globals:U,Tween:te,Timeline:Zt,Animation:qt,getCache:ha,_removeLinkedListItem:Ba,reverting:function reverting(){return I},context:function context(t){return t&&l&&(l.data.push(t),t._ctx=l),l},suppressOverwrites:function suppressOverwrites(t){return F=t}}};ja(\"to,from,fromTo,delayedCall,set,killTweensOf\",function(t){return Re[t]=te[t]}),It.add(Zt.updateRoot),d=Re.to({},{duration:0});function Mc(t,e){for(var r=t._pt;r&&r.p!==e&&r.op!==e&&r.fp!==e;)r=r._next;return r}function Oc(t,a){return{name:t,headless:1,rawVars:1,init:function init(t,n,e){e._onInit=function(t){var e,i;if(r(n)&&(e={},ja(n,function(t){return e[t]=1}),n=e),a){for(i in e={},n)e[i]=a(n[i]);n=e}!function _addModifiers(t,e){var r,i,n,a=t._targets;for(r in e)for(i=a.length;i--;)(n=(n=t._ptLookup[i][r])&&n.d)&&(n._pt&&(n=Mc(n,r)),n&&n.modifier&&n.modifier(e[r],t,a[i],r))}(t,n)}}}}var Fe=Re.registerPlugin({name:\"attr\",init:function init(t,e,r,i,n){var a,s,o;for(a in this.tween=r,e)o=t.getAttribute(a)||\"\",(s=this.add(t,\"setAttribute\",(o||0)+\"\",e[a],i,n,0,0,a)).op=a,s.b=o,this._props.push(a)},render:function render(t,e){for(var r=e._pt;r;)I?r.set(r.t,r.p,r.b,r):r.r(t,r.d),r=r._next}},{name:\"endArray\",headless:1,init:function init(t,e){for(var r=e.length;r--;)this.add(t,r,t[r]||0,e[r],0,0,0,0,0,1)}},Oc(\"roundProps\",ib),Oc(\"modifiers\"),Oc(\"snap\",jb))||Re;te.version=Zt.version=Fe.version=\"3.14.2\",o=1,x()&&Lt();function yd(t,e){return e.set(e.t,e.p,Math.round(1e4*(e.s+e.c*t))/1e4+e.u,e)}function zd(t,e){return e.set(e.t,e.p,1===t?e.e:Math.round(1e4*(e.s+e.c*t))/1e4+e.u,e)}function Ad(t,e){return e.set(e.t,e.p,t?Math.round(1e4*(e.s+e.c*t))/1e4+e.u:e.b,e)}function Bd(t,e){return e.set(e.t,e.p,1===t?e.e:t?Math.round(1e4*(e.s+e.c*t))/1e4+e.u:e.b,e)}function Cd(t,e){var r=e.s+e.c*t;e.set(e.t,e.p,~~(r+(r<0?-.5:.5))+e.u,e)}function Dd(t,e){return e.set(e.t,e.p,t?e.e:e.b,e)}function Ed(t,e){return e.set(e.t,e.p,1!==t?e.b:e.e,e)}function Fd(t,e,r){return t.style[e]=r}function Gd(t,e,r){return t.style.setProperty(e,r)}function Hd(t,e,r){return t._gsap[e]=r}function Id(t,e,r){return t._gsap.scaleX=t._gsap.scaleY=r}function Jd(t,e,r,i,n){var a=t._gsap;a.scaleX=a.scaleY=r,a.renderTransform(n,a)}function Kd(t,e,r,i,n){var a=t._gsap;a[e]=r,a.renderTransform(n,a)}function Nd(t,e){var r=this,i=this.target,n=i.style,a=i._gsap;if(t in hr&&n){if(this.tfm=this.tfm||{},\"transform\"===t)return mr.transform.split(\",\").forEach(function(t){return Nd.call(r,t,e)});if(~(t=mr[t]||t).indexOf(\",\")?t.split(\",\").forEach(function(t){return r.tfm[t]=xr(i,t)}):this.tfm[t]=a.x?a[t]:xr(i,t),t===vr&&(this.tfm.zOrigin=a.zOrigin),0<=this.props.indexOf(gr))return;a.svg&&(this.svgo=i.getAttribute(\"data-svg-origin\"),this.props.push(vr,e,\"\")),t=gr}(n||e)&&this.props.push(t,e,n[t])}function Od(t){t.translate&&(t.removeProperty(\"translate\"),t.removeProperty(\"scale\"),t.removeProperty(\"rotate\"))}function Pd(){var t,e,r=this.props,i=this.target,n=i.style,a=i._gsap;for(t=0;t<r.length;t+=3)r[t+1]?2===r[t+1]?i[r[t]](r[t+2]):i[r[t]]=r[t+2]:r[t+2]?n[r[t]]=r[t+2]:n.removeProperty(\"--\"===r[t].substr(0,2)?r[t]:r[t].replace(cr,\"-$1\").toLowerCase());if(this.tfm){for(e in this.tfm)a[e]=this.tfm[e];a.svg&&(a.renderTransform(),i.setAttribute(\"data-svg-origin\",this.svgo||\"\")),(t=Ue())&&t.isStart||n[gr]||(Od(n),a.zOrigin&&n[vr]&&(n[vr]+=\" \"+a.zOrigin+\"px\",a.zOrigin=0,a.renderTransform()),a.uncache=1)}}function Qd(t,e){var r={target:t,props:[],revert:Pd,save:Nd};return t._gsap||Fe.core.getCache(t),e&&t.style&&t.nodeType&&e.split(\",\").forEach(function(t){return r.save(t)}),r}function Sd(t,e){var r=Le.createElementNS?Le.createElementNS((e||\"http://www.w3.org/1999/xhtml\").replace(/^https/,\"http\"),t):Le.createElement(t);return r&&r.style?r:Le.createElement(t)}function Td(t,e,r){var i=getComputedStyle(t);return i[e]||i.getPropertyValue(e.replace(cr,\"-$1\").toLowerCase())||i.getPropertyValue(e)||!r&&Td(t,Tr(e)||e,1)||\"\"}function Wd(){(function _windowExists(){return\"undefined\"!=typeof window})()&&window.document&&(Ie=window,Le=Ie.document,Ye=Le.documentElement,je=Sd(\"div\")||{style:{}},Sd(\"div\"),gr=Tr(gr),vr=gr+\"Origin\",je.style.cssText=\"border-width:0;line-height:0;position:absolute;padding:0\",Xe=!!Tr(\"perspective\"),Ue=Fe.core.reverting,Ne=1)}function Xd(t){var e,r=t.ownerSVGElement,i=Sd(\"svg\",r&&r.getAttribute(\"xmlns\")||\"http://www.w3.org/2000/svg\"),n=t.cloneNode(!0);n.style.display=\"block\",i.appendChild(n),Ye.appendChild(i);try{e=n.getBBox()}catch(t){}return i.removeChild(n),Ye.removeChild(i),e}function Yd(t,e){for(var r=e.length;r--;)if(t.hasAttribute(e[r]))return t.getAttribute(e[r])}function Zd(e){var r,i;try{r=e.getBBox()}catch(t){r=Xd(e),i=1}return r&&(r.width||r.height)||i||(r=Xd(e)),!r||r.width||r.x||r.y?r:{x:+Yd(e,[\"x\",\"cx\",\"x1\"])||0,y:+Yd(e,[\"y\",\"cy\",\"y1\"])||0,width:0,height:0}}function $d(t){return!(!t.getCTM||t.parentNode&&!t.ownerSVGElement||!Zd(t))}function _d(t,e){if(e){var r,i=t.style;e in hr&&e!==vr&&(e=gr),i.removeProperty?(\"ms\"!==(r=e.substr(0,2))&&\"webkit\"!==e.substr(0,6)||(e=\"-\"+e),i.removeProperty(\"--\"===r?e:e.replace(cr,\"-$1\").toLowerCase())):i.removeAttribute(e)}}function ae(t,e,r,i,n,a){var s=new we(t._pt,e,r,0,1,a?Ed:Dd);return(t._pt=s).b=i,s.e=n,t._props.push(r),s}function de(t,e,r,i){var n,a,s,o,u=parseFloat(r)||0,h=(r+\"\").trim().substr((u+\"\").length)||\"px\",l=je.style,f=pr.test(e),d=\"svg\"===t.tagName.toLowerCase(),c=(d?\"client\":\"offset\")+(f?\"Width\":\"Height\"),p=\"px\"===i,_=\"%\"===i;if(i===h||!u||br[i]||br[h])return u;if(\"px\"===h||p||(u=de(t,e,r,\"px\")),o=t.getCTM&&$d(t),(_||\"%\"===h)&&(hr[e]||~e.indexOf(\"adius\")))return n=o?t.getBBox()[f?\"width\":\"height\"]:t[c],ka(_?u/n*100:u/100*n);if(l[f?\"width\":\"height\"]=100+(p?h:i),a=\"rem\"!==i&&~e.indexOf(\"adius\")||\"em\"===i&&t.appendChild&&!d?t:t.parentNode,o&&(a=(t.ownerSVGElement||{}).parentNode),a&&a!==Le&&a.appendChild||(a=Le.body),(s=a._gsap)&&_&&s.width&&f&&s.time===It.time&&!s.uncache)return ka(u/s.width*100);if(!_||\"height\"!==e&&\"width\"!==e)!_&&\"%\"!==h||wr[Td(a,\"display\")]||(l.position=Td(t,\"position\")),a===t&&(l.position=\"static\"),a.appendChild(je),n=je[c],a.removeChild(je),l.position=\"absolute\";else{var m=t.style[e];t.style[e]=100+i,n=t[c],m?t.style[e]=m:_d(t,e)}return f&&_&&((s=ha(a)).time=It.time,s.width=a[c]),ka(p?n*u/100:n&&u?100/n*u:0)}function fe(t,e,r,i){if(!r||\"none\"===r){var n=Tr(e,t,1),a=n&&Td(t,n,1);a&&a!==r?(e=n,r=a):\"borderColor\"===e&&(r=Td(t,\"borderTopColor\"))}var s,o,u,h,l,f,d,c,p,_,m,g=new we(this._pt,t.style,e,0,1,ge),v=0,y=0;if(g.b=r,g.e=i,r+=\"\",\"var(--\"===(i+=\"\").substring(0,6)&&(i=Td(t,i.substring(4,i.indexOf(\")\")))),\"auto\"===i&&(f=t.style[e],t.style[e]=i,i=Td(t,e)||i,f?t.style[e]=f:_d(t,e)),Ib(s=[r,i]),i=s[1],u=(r=s[0]).match(nt)||[],(i.match(nt)||[]).length){for(;o=nt.exec(i);)d=o[0],p=i.substring(v,o.index),l?l=(l+1)%5:\"rgba(\"!==p.substr(-5)&&\"hsla(\"!==p.substr(-5)||(l=1),d!==(f=u[y++]||\"\")&&(h=parseFloat(f)||0,m=f.substr((h+\"\").length),\"=\"===d.charAt(1)&&(d=ma(h,d)+m),c=parseFloat(d),_=d.substr((c+\"\").length),v=nt.lastIndex-_.length,_||(_=_||N.units[e]||m,v===i.length&&(i+=_,g.e+=_)),m!==_&&(h=de(t,e,f,_)||0),g._pt={_next:g._pt,p:p||1===y?p:\",\",s:h,c:c-h,m:l&&l<4||\"zIndex\"===e?Math.round:0});g.c=v<i.length?i.substring(v,i.length):\"\"}else g.r=\"display\"===e&&\"none\"===i?Ed:Dd;return st.test(i)&&(g.e=0),this._pt=g}function he(t){var e=t.split(\" \"),r=e[0],i=e[1]||\"50%\";return\"top\"!==r&&\"bottom\"!==r&&\"left\"!==i&&\"right\"!==i||(t=r,r=i,i=t),e[0]=kr[r]||r,e[1]=kr[i]||i,e.join(\" \")}function ie(t,e){if(e.tween&&e.tween._time===e.tween._dur){var r,i,n,a=e.t,s=a.style,o=e.u,u=a._gsap;if(\"all\"===o||!0===o)s.cssText=\"\",i=1;else for(n=(o=o.split(\",\")).length;-1<--n;)r=o[n],hr[r]&&(i=1,r=\"transformOrigin\"===r?vr:gr),_d(a,r);i&&(_d(a,gr),u&&(u.svg&&a.removeAttribute(\"transform\"),s.scale=s.rotate=s.translate=\"none\",Pr(a,1),u.uncache=1,Od(s)))}}function me(t){return\"matrix(1, 0, 0, 1, 0, 0)\"===t||\"none\"===t||!t}function ne(t){var e=Td(t,gr);return me(e)?Mr:e.substr(7).match(it).map(ka)}function oe(t,e){var r,i,n,a,s=t._gsap||ha(t),o=t.style,u=ne(t);return s.svg&&t.getAttribute(\"transform\")?\"1,0,0,1,0,0\"===(u=[(n=t.transform.baseVal.consolidate().matrix).a,n.b,n.c,n.d,n.e,n.f]).join(\",\")?Mr:u:(u!==Mr||t.offsetParent||t===Ye||s.svg||(n=o.display,o.display=\"block\",(r=t.parentNode)&&(t.offsetParent||t.getBoundingClientRect().width)||(a=1,i=t.nextElementSibling,Ye.appendChild(t)),u=ne(t),n?o.display=n:_d(t,\"display\"),a&&(i?r.insertBefore(t,i):r?r.appendChild(t):Ye.removeChild(t))),e&&6<u.length?[u[0],u[1],u[4],u[5],u[12],u[13]]:u)}function pe(t,e,r,i,n,a){var s,o,u,h=t._gsap,l=n||oe(t,!0),f=h.xOrigin||0,d=h.yOrigin||0,c=h.xOffset||0,p=h.yOffset||0,_=l[0],m=l[1],g=l[2],v=l[3],y=l[4],T=l[5],b=e.split(\" \"),w=parseFloat(b[0])||0,x=parseFloat(b[1])||0;r?l!==Mr&&(o=_*v-m*g)&&(u=w*(-m/o)+x*(_/o)-(_*T-m*y)/o,w=w*(v/o)+x*(-g/o)+(g*T-v*y)/o,x=u):(w=(s=Zd(t)).x+(~b[0].indexOf(\"%\")?w/100*s.width:w),x=s.y+(~(b[1]||b[0]).indexOf(\"%\")?x/100*s.height:x)),i||!1!==i&&h.smooth?(y=w-f,T=x-d,h.xOffset=c+(y*_+T*g)-y,h.yOffset=p+(y*m+T*v)-T):h.xOffset=h.yOffset=0,h.xOrigin=w,h.yOrigin=x,h.smooth=!!i,h.origin=e,h.originIsAbsolute=!!r,t.style[vr]=\"0px 0px\",a&&(ae(a,h,\"xOrigin\",f,w),ae(a,h,\"yOrigin\",d,x),ae(a,h,\"xOffset\",c,h.xOffset),ae(a,h,\"yOffset\",p,h.yOffset)),t.setAttribute(\"data-svg-origin\",w+\" \"+x)}function se(t,e,r){var i=_a(e);return ka(parseFloat(e)+parseFloat(de(t,\"x\",r+\"px\",i)))+i}function ze(t,e,i,n,a){var s,o,u=360,h=r(a),l=parseFloat(a)*(h&&~a.indexOf(\"rad\")?lr:1)-n,f=n+l+\"deg\";return h&&(\"short\"===(s=a.split(\"_\")[1])&&(l%=u)!==l%180&&(l+=l<0?u:-u),\"cw\"===s&&l<0?l=(l+36e9)%u-~~(l/u)*u:\"ccw\"===s&&0<l&&(l=(l-36e9)%u-~~(l/u)*u)),t._pt=o=new we(t._pt,e,i,n,l,zd),o.e=f,o.u=\"deg\",t._props.push(i),o}function Ae(t,e){for(var r in e)t[r]=e[r];return t}function Be(t,e,r){var i,n,a,s,o,u,h,l=Ae({},r._gsap),f=r.style;for(n in l.svg?(a=r.getAttribute(\"transform\"),r.setAttribute(\"transform\",\"\"),f[gr]=e,i=Pr(r,1),_d(r,gr),r.setAttribute(\"transform\",a)):(a=getComputedStyle(r)[gr],f[gr]=e,i=Pr(r,1),f[gr]=a),hr)(a=l[n])!==(s=i[n])&&\"perspective,force3D,transformOrigin,svgOrigin\".indexOf(n)<0&&(o=_a(a)!==(h=_a(s))?de(r,n,a,h):parseFloat(a),u=parseFloat(s),t._pt=new we(t._pt,i,n,o,u-o,yd),t._pt.u=h||0,t._props.push(n));Ae(i,l)}var Ie,Le,Ye,Ne,je,Ve,Ue,Xe,qe=Bt.Power0,Ze=Bt.Power1,We=Bt.Power2,He=Bt.Power3,Je=Bt.Power4,Qe=Bt.Linear,Ge=Bt.Quad,Ke=Bt.Cubic,$e=Bt.Quart,tr=Bt.Quint,er=Bt.Strong,rr=Bt.Elastic,ir=Bt.Back,nr=Bt.SteppedEase,ar=Bt.Bounce,sr=Bt.Sine,or=Bt.Expo,ur=Bt.Circ,hr={},lr=180/Math.PI,fr=Math.PI/180,dr=Math.atan2,cr=/([A-Z])/g,pr=/(left|right|width|margin|padding|x)/i,_r=/[\\s,\\(]\\S/,mr={autoAlpha:\"opacity,visibility\",scale:\"scaleX,scaleY\",alpha:\"opacity\"},gr=\"transform\",vr=gr+\"Origin\",yr=\"O,Moz,ms,Ms,Webkit\".split(\",\"),Tr=function _checkPropPrefix(t,e,r){var i=(e||je).style,n=5;if(t in i&&!r)return t;for(t=t.charAt(0).toUpperCase()+t.substr(1);n--&&!(yr[n]+t in i););return n<0?null:(3===n?\"ms\":0<=n?yr[n]:\"\")+t},br={deg:1,rad:1,turn:1},wr={grid:1,flex:1},xr=function _get(t,e,r,i){var n;return Ne||Wd(),e in mr&&\"transform\"!==e&&~(e=mr[e]).indexOf(\",\")&&(e=e.split(\",\")[0]),hr[e]&&\"transform\"!==e?(n=Pr(t,i),n=\"transformOrigin\"!==e?n[e]:n.svg?n.origin:Ar(Td(t,vr))+\" \"+n.zOrigin+\"px\"):(n=t.style[e])&&\"auto\"!==n&&!i&&!~(n+\"\").indexOf(\"calc(\")||(n=Or[e]&&Or[e](t,e,r)||Td(t,e)||ia(t,e)||(\"opacity\"===e?1:0)),r&&!~(n+\"\").trim().indexOf(\" \")?de(t,e,n,r)+r:n},kr={top:\"0%\",bottom:\"100%\",left:\"0%\",right:\"100%\",center:\"50%\"},Or={clearProps:function clearProps(t,e,r,i,n){if(\"isFromStart\"!==n.data){var a=t._pt=new we(t._pt,e,r,0,0,ie);return a.u=i,a.pr=-10,a.tween=n,t._props.push(r),1}}},Mr=[1,0,0,1,0,0],Cr={},Pr=function _parseTransform(t,e){var r=t._gsap||new Xt(t);if(\"x\"in r&&!e&&!r.uncache)return r;var i,n,a,s,o,u,h,l,f,d,c,p,_,m,g,v,y,T,b,w,x,k,O,M,C,P,A,D,S,z,E,R,F=t.style,I=r.scaleX<0,L=\"deg\",B=getComputedStyle(t),Y=Td(t,vr)||\"0\";return i=n=a=u=h=l=f=d=c=0,s=o=1,r.svg=!(!t.getCTM||!$d(t)),B.translate&&(\"none\"===B.translate&&\"none\"===B.scale&&\"none\"===B.rotate||(F[gr]=(\"none\"!==B.translate?\"translate3d(\"+(B.translate+\" 0 0\").split(\" \").slice(0,3).join(\", \")+\") \":\"\")+(\"none\"!==B.rotate?\"rotate(\"+B.rotate+\") \":\"\")+(\"none\"!==B.scale?\"scale(\"+B.scale.split(\" \").join(\",\")+\") \":\"\")+(\"none\"!==B[gr]?B[gr]:\"\")),F.scale=F.rotate=F.translate=\"none\"),m=oe(t,r.svg),r.svg&&(M=r.uncache?(C=t.getBBox(),Y=r.xOrigin-C.x+\"px \"+(r.yOrigin-C.y)+\"px\",\"\"):!e&&t.getAttribute(\"data-svg-origin\"),pe(t,M||Y,!!M||r.originIsAbsolute,!1!==r.smooth,m)),p=r.xOrigin||0,_=r.yOrigin||0,m!==Mr&&(T=m[0],b=m[1],w=m[2],x=m[3],i=k=m[4],n=O=m[5],6===m.length?(s=Math.sqrt(T*T+b*b),o=Math.sqrt(x*x+w*w),u=T||b?dr(b,T)*lr:0,(f=w||x?dr(w,x)*lr+u:0)&&(o*=Math.abs(Math.cos(f*fr))),r.svg&&(i-=p-(p*T+_*w),n-=_-(p*b+_*x))):(R=m[6],z=m[7],A=m[8],D=m[9],S=m[10],E=m[11],i=m[12],n=m[13],a=m[14],h=(g=dr(R,S))*lr,g&&(M=k*(v=Math.cos(-g))+A*(y=Math.sin(-g)),C=O*v+D*y,P=R*v+S*y,A=k*-y+A*v,D=O*-y+D*v,S=R*-y+S*v,E=z*-y+E*v,k=M,O=C,R=P),l=(g=dr(-w,S))*lr,g&&(v=Math.cos(-g),E=x*(y=Math.sin(-g))+E*v,T=M=T*v-A*y,b=C=b*v-D*y,w=P=w*v-S*y),u=(g=dr(b,T))*lr,g&&(M=T*(v=Math.cos(g))+b*(y=Math.sin(g)),C=k*v+O*y,b=b*v-T*y,O=O*v-k*y,T=M,k=C),h&&359.9<Math.abs(h)+Math.abs(u)&&(h=u=0,l=180-l),s=ka(Math.sqrt(T*T+b*b+w*w)),o=ka(Math.sqrt(O*O+R*R)),g=dr(k,O),f=2e-4<Math.abs(g)?g*lr:0,c=E?1/(E<0?-E:E):0),r.svg&&(M=t.getAttribute(\"transform\"),r.forceCSS=t.setAttribute(\"transform\",\"\")||!me(Td(t,gr)),M&&t.setAttribute(\"transform\",M))),90<Math.abs(f)&&Math.abs(f)<270&&(I?(s*=-1,f+=u<=0?180:-180,u+=u<=0?180:-180):(o*=-1,f+=f<=0?180:-180)),e=e||r.uncache,r.x=i-((r.xPercent=i&&(!e&&r.xPercent||(Math.round(t.offsetWidth/2)===Math.round(-i)?-50:0)))?t.offsetWidth*r.xPercent/100:0)+\"px\",r.y=n-((r.yPercent=n&&(!e&&r.yPercent||(Math.round(t.offsetHeight/2)===Math.round(-n)?-50:0)))?t.offsetHeight*r.yPercent/100:0)+\"px\",r.z=a+\"px\",r.scaleX=ka(s),r.scaleY=ka(o),r.rotation=ka(u)+L,r.rotationX=ka(h)+L,r.rotationY=ka(l)+L,r.skewX=f+L,r.skewY=d+L,r.transformPerspective=c+\"px\",(r.zOrigin=parseFloat(Y.split(\" \")[2])||!e&&r.zOrigin||0)&&(F[vr]=Ar(Y)),r.xOffset=r.yOffset=0,r.force3D=N.force3D,r.renderTransform=r.svg?Fr:Xe?Rr:Dr,r.uncache=0,r},Ar=function _firstTwoOnly(t){return(t=t.split(\" \"))[0]+\" \"+t[1]},Dr=function _renderNon3DTransforms(t,e){e.z=\"0px\",e.rotationY=e.rotationX=\"0deg\",e.force3D=0,Rr(t,e)},Sr=\"0deg\",zr=\"0px\",Er=\") \",Rr=function _renderCSSTransforms(t,e){var r=e||this,i=r.xPercent,n=r.yPercent,a=r.x,s=r.y,o=r.z,u=r.rotation,h=r.rotationY,l=r.rotationX,f=r.skewX,d=r.skewY,c=r.scaleX,p=r.scaleY,_=r.transformPerspective,m=r.force3D,g=r.target,v=r.zOrigin,y=\"\",T=\"auto\"===m&&t&&1!==t||!0===m;if(v&&(l!==Sr||h!==Sr)){var b,w=parseFloat(h)*fr,x=Math.sin(w),k=Math.cos(w);w=parseFloat(l)*fr,b=Math.cos(w),a=se(g,a,x*b*-v),s=se(g,s,-Math.sin(w)*-v),o=se(g,o,k*b*-v+v)}_!==zr&&(y+=\"perspective(\"+_+Er),(i||n)&&(y+=\"translate(\"+i+\"%, \"+n+\"%) \"),!T&&a===zr&&s===zr&&o===zr||(y+=o!==zr||T?\"translate3d(\"+a+\", \"+s+\", \"+o+\") \":\"translate(\"+a+\", \"+s+Er),u!==Sr&&(y+=\"rotate(\"+u+Er),h!==Sr&&(y+=\"rotateY(\"+h+Er),l!==Sr&&(y+=\"rotateX(\"+l+Er),f===Sr&&d===Sr||(y+=\"skew(\"+f+\", \"+d+Er),1===c&&1===p||(y+=\"scale(\"+c+\", \"+p+Er),g.style[gr]=y||\"translate(0, 0)\"},Fr=function _renderSVGTransforms(t,e){var r,i,n,a,s,o=e||this,u=o.xPercent,h=o.yPercent,l=o.x,f=o.y,d=o.rotation,c=o.skewX,p=o.skewY,_=o.scaleX,m=o.scaleY,g=o.target,v=o.xOrigin,y=o.yOrigin,T=o.xOffset,b=o.yOffset,w=o.forceCSS,x=parseFloat(l),k=parseFloat(f);d=parseFloat(d),c=parseFloat(c),(p=parseFloat(p))&&(c+=p=parseFloat(p),d+=p),d||c?(d*=fr,c*=fr,r=Math.cos(d)*_,i=Math.sin(d)*_,n=Math.sin(d-c)*-m,a=Math.cos(d-c)*m,c&&(p*=fr,s=Math.tan(c-p),n*=s=Math.sqrt(1+s*s),a*=s,p&&(s=Math.tan(p),r*=s=Math.sqrt(1+s*s),i*=s)),r=ka(r),i=ka(i),n=ka(n),a=ka(a)):(r=_,a=m,i=n=0),(x&&!~(l+\"\").indexOf(\"px\")||k&&!~(f+\"\").indexOf(\"px\"))&&(x=de(g,\"x\",l,\"px\"),k=de(g,\"y\",f,\"px\")),(v||y||T||b)&&(x=ka(x+v-(v*r+y*n)+T),k=ka(k+y-(v*i+y*a)+b)),(u||h)&&(s=g.getBBox(),x=ka(x+u/100*s.width),k=ka(k+h/100*s.height)),s=\"matrix(\"+r+\",\"+i+\",\"+n+\",\"+a+\",\"+x+\",\"+k+\")\",g.setAttribute(\"transform\",s),w&&(g.style[gr]=s)};ja(\"padding,margin,Width,Radius\",function(e,r){var t=\"Right\",i=\"Bottom\",n=\"Left\",o=(r<3?[\"Top\",t,i,n]:[\"Top\"+n,\"Top\"+t,i+t,i+n]).map(function(t){return r<2?e+t:\"border\"+t+e});Or[1<r?\"border\"+e:e]=function(e,t,r,i,n){var a,s;if(arguments.length<4)return a=o.map(function(t){return xr(e,t,r)}),5===(s=a.join(\" \")).split(a[0]).length?a[0]:s;a=(i+\"\").split(\" \"),s={},o.forEach(function(t,e){return s[t]=a[e]=a[e]||a[(e-1)/2|0]}),e.init(t,s,n)}});var Ir,Lr,Br,Yr={name:\"css\",register:Wd,targetTest:function targetTest(t){return t.style&&t.nodeType},init:function init(t,e,i,n,a){var s,o,u,h,l,f,d,c,p,_,m,g,v,y,T,b,w,x=this._props,k=t.style,O=i.vars.startAt;for(d in Ne||Wd(),this.styles=this.styles||Qd(t),b=this.styles.props,this.tween=i,e)if(\"autoRound\"!==d&&(o=e[d],!mt[d]||!dc(d,e,i,n,t,a)))if(l=typeof o,f=Or[d],\"function\"===l&&(l=typeof(o=o.call(i,n,t,a))),\"string\"===l&&~o.indexOf(\"random(\")&&(o=rb(o)),f)f(this,t,d,o,i)&&(T=1);else if(\"--\"===d.substr(0,2))s=(getComputedStyle(t).getPropertyValue(d)+\"\").trim(),o+=\"\",Rt.lastIndex=0,Rt.test(s)||(c=_a(s),(p=_a(o))?c!==p&&(s=de(t,d,s,p)+p):c&&(o+=c)),this.add(k,\"setProperty\",s,o,n,a,0,0,d),x.push(d),b.push(d,0,k[d]);else if(\"undefined\"!==l){if(O&&d in O?(s=\"function\"==typeof O[d]?O[d].call(i,n,t,a):O[d],r(s)&&~s.indexOf(\"random(\")&&(s=rb(s)),_a(s+\"\")||\"auto\"===s||(s+=N.units[d]||_a(xr(t,d))||\"\"),\"=\"===(s+\"\").charAt(1)&&(s=xr(t,d))):s=xr(t,d),h=parseFloat(s),(_=\"string\"===l&&\"=\"===o.charAt(1)&&o.substr(0,2))&&(o=o.substr(2)),u=parseFloat(o),d in mr&&(\"autoAlpha\"===d&&(1===h&&\"hidden\"===xr(t,\"visibility\")&&u&&(h=0),b.push(\"visibility\",0,k.visibility),ae(this,k,\"visibility\",h?\"inherit\":\"hidden\",u?\"inherit\":\"hidden\",!u)),\"scale\"!==d&&\"transform\"!==d&&~(d=mr[d]).indexOf(\",\")&&(d=d.split(\",\")[0])),m=d in hr){if(this.styles.save(d),w=o,\"string\"===l&&\"var(--\"===o.substring(0,6)){if(\"calc(\"===(o=Td(t,o.substring(4,o.indexOf(\")\")))).substring(0,5)){var M=t.style.perspective;t.style.perspective=o,o=Td(t,\"perspective\"),M?t.style.perspective=M:_d(t,\"perspective\")}u=parseFloat(o)}if(g||((v=t._gsap).renderTransform&&!e.parseTransform||Pr(t,e.parseTransform),y=!1!==e.smoothOrigin&&v.smooth,(g=this._pt=new we(this._pt,k,gr,0,1,v.renderTransform,v,0,-1)).dep=1),\"scale\"===d)this._pt=new we(this._pt,v,\"scaleY\",v.scaleY,(_?ma(v.scaleY,_+u):u)-v.scaleY||0,yd),this._pt.u=0,x.push(\"scaleY\",d),d+=\"X\";else{if(\"transformOrigin\"===d){b.push(vr,0,k[vr]),o=he(o),v.svg?pe(t,o,0,y,0,this):((p=parseFloat(o.split(\" \")[2])||0)!==v.zOrigin&&ae(this,v,\"zOrigin\",v.zOrigin,p),ae(this,k,d,Ar(s),Ar(o)));continue}if(\"svgOrigin\"===d){pe(t,o,1,y,0,this);continue}if(d in Cr){ze(this,v,d,h,_?ma(h,_+o):o);continue}if(\"smoothOrigin\"===d){ae(this,v,\"smooth\",v.smooth,o);continue}if(\"force3D\"===d){v[d]=o;continue}if(\"transform\"===d){Be(this,o,t);continue}}}else d in k||(d=Tr(d)||d);if(m||(u||0===u)&&(h||0===h)&&!_r.test(o)&&d in k)u=u||0,(c=(s+\"\").substr((h+\"\").length))!==(p=_a(o)||(d in N.units?N.units[d]:c))&&(h=de(t,d,s,p)),this._pt=new we(this._pt,m?v:k,d,h,(_?ma(h,_+u):u)-h,m||\"px\"!==p&&\"zIndex\"!==d||!1===e.autoRound?yd:Cd),this._pt.u=p||0,m&&w!==o?(this._pt.b=s,this._pt.e=w,this._pt.r=Bd):c!==p&&\"%\"!==p&&(this._pt.b=s,this._pt.r=Ad);else if(d in k)fe.call(this,t,d,s,_?_+o:o);else if(d in t)this.add(t,d,s||t[d],_?_+o:o,n,a);else if(\"parseTransform\"!==d){S(d,o);continue}m||(d in k?b.push(d,0,k[d]):\"function\"==typeof t[d]?b.push(d,2,t[d]()):b.push(d,1,s||t[d])),x.push(d)}T&&be(this)},render:function render(t,e){if(e.tween._time||!Ue())for(var r=e._pt;r;)r.r(t,r.d),r=r._next;else e.styles.revert()},get:xr,aliases:mr,getSetter:function getSetter(t,e,r){var i=mr[e];return i&&i.indexOf(\",\")<0&&(e=i),e in hr&&e!==vr&&(t._gsap.x||xr(t,\"x\"))?r&&Ve===r?\"scale\"===e?Id:Hd:(Ve=r||{})&&(\"scale\"===e?Jd:Kd):t.style&&!u(t.style[e])?Fd:~e.indexOf(\"-\")?Gd:le(t,e)},core:{_removeProperty:_d,_getMatrix:oe}};Fe.utils.checkPrefix=Tr,Fe.core.getStyleSaver=Qd,Br=ja((Ir=\"x,y,z,scale,scaleX,scaleY,xPercent,yPercent\")+\",\"+(Lr=\"rotation,rotationX,rotationY,skewX,skewY\")+\",transform,transformOrigin,svgOrigin,force3D,smoothOrigin,transformPerspective\",function(t){hr[t]=1}),ja(Lr,function(t){N.units[t]=\"deg\",Cr[t]=1}),mr[Br[13]]=Ir+\",\"+Lr,ja(\"0:translateX,1:translateY,2:translateZ,8:rotate,8:rotationZ,8:rotateZ,9:rotateX,10:rotateY\",function(t){var e=t.split(\":\");mr[e[1]]=Br[e[0]]}),ja(\"x,y,z,top,right,bottom,left,width,height,fontSize,padding,margin,perspective\",function(t){N.units[t]=\"px\"}),Fe.registerPlugin(Yr);var Nr=Fe.registerPlugin(Yr)||Fe,jr=Nr.core.Tween;e.Back=ir,e.Bounce=ar,e.CSSPlugin=Yr,e.Circ=ur,e.Cubic=Ke,e.Elastic=rr,e.Expo=or,e.Linear=Qe,e.Power0=qe,e.Power1=Ze,e.Power2=We,e.Power3=He,e.Power4=Je,e.Quad=Ge,e.Quart=$e,e.Quint=tr,e.Sine=sr,e.SteppedEase=nr,e.Strong=er,e.TimelineLite=Zt,e.TimelineMax=Zt,e.TweenLite=te,e.TweenMax=jr,e.default=Nr,e.gsap=Nr;if (typeof(window)===\"undefined\"||window!==e){Object.defineProperty(e,\"__esModule\",{value:!0})} else {delete e.default}});\n\n\n//# sourceURL=https://cdn.jsdelivr.net/npm/gsap@3.14.2/dist/gsap.min.js\n</script>\n <style>* { margin: 0; padding: 0; } html, body { width: 1920px; height: 1080px; overflow: hidden; background: #ffffff; }\n\n[data-composition-id=\"aurora\"] canvas[data-shader] {\n position: absolute;\n inset: 0;\n width: 1920px;\n height: 1080px;\n display: block;\n background: #000;\n }</style>\n</head>\n<body>\n <div data-composition-id=\"preview-root\" data-width=\"1920\" data-height=\"1080\" data-start=\"0\" data-duration=\"2\">\n <div style=\"width:1920px;height:1080px\" data-composition-file=\"compositions/aurora.html\" data-composition-id=\"aurora\" data-start=\"0\" data-duration=\"2\" data-track-index=\"0\" data-width=\"1920\" data-height=\"1080\"><div data-hf-inner-root=\"true\" data-width=\"1920\" data-height=\"1080\" data-requires-webgpu=\"\" data-no-timeline=\"\" style=\"position: relative; width: 1920px; height: 1080px; overflow: hidden; background: #000;width:1920px;height:1080px\">\n <canvas data-shader=\"Aurora\" width=\"1920\" height=\"1080\"></canvas>\n </div></div>\n </div>\n \n<script type=\"text/hf-after-fonts\">window.__timelines = window.__timelines || {};\n window.__timelines[\"preview-root\"] = gsap.timeline({ paused: true });\n//# sourceURL=hyperframes-composition://body</script><script type=\"text/hf-after-fonts\" data-hf-inlined-src=\"compositions/lib/shaders.iife.js\">/*! Shaders library (shaders@4.0.0), Copyright 2026 Shader Effects Inc., MIT. Licence texts ship beside this bundle. */\n(()=>{var od=class extends Error{reason;constructor(e,t,s){super(t??`[gpu] WebGPU unavailable (${e})`),this.name=\"GpuUnavailableError\",this.reason=e,s?.cause!==void 0&&(this.cause=s.cause)}};function f1(e){return!!e&&typeof e==\"object\"&&e.name===\"GpuUnavailableError\"&&typeof e.reason==\"string\"}var X0=null;function Ou(){if(X0!==null)return X0;let e=globalThis.__SHADERS_DEBUG__;if(e!=null)return!!e;try{if(typeof localStorage<\"u\"&&localStorage.getItem(\"shaders:debug\")===\"1\")return!0}catch{}return!1}var H0=!1;function j0(){H0=!0}function Vu(...e){(Ou()||H0)&&console.error(...e)}function vi(...e){Ou()&&console.warn(...e)}function yr(...e){Ou()&&console.error(...e)}function K0(){return typeof navigator<\"u\"&&!!navigator.gpu}var Wu=null;function Z0(){return Wu||(Wu=(async()=>{if(!K0())return{supported:!1,reason:\"unsupported\"};try{return await navigator.gpu.requestAdapter({powerPreference:\"high-performance\"})?{supported:!0}:{supported:!1,reason:\"no-adapter\"}}catch(e){return yr(\"[gpu] adapter probe threw:\",e),{supported:!1,reason:\"no-adapter\"}}})(),Wu)}var vP=new Set([\"unsupported\",\"no-adapter\",\"no-device\",\"out-of-memory\",\"gpu-error\"]),m1=null;function Q0(e){m1||!vP.has(e)||(m1=e)}function J0(){return m1}function Xs(e,t){let s=e.length;Array.isArray(e[0])||(e=[e]),Array.isArray(t[0])||(t=t.map(i=>[i]));let r=t[0].length,o=t[0].map((i,d)=>t.map(l=>l[d])),n=e.map(i=>o.map(d=>{let l=0;if(!Array.isArray(i)){for(let c of d)l+=i*c;return l}for(let c=0;c<i.length;c++)l+=i[c]*(d[c]||0);return l}));return s===1&&(n=n[0]),r===1?n.map(i=>i[0]):n}function Cl(e){return Pa(e)===\"string\"}function Pa(e){return(Object.prototype.toString.call(e).match(/^\\[object\\s+(.*?)\\]$/)[1]||\"\").toLowerCase()}function e_(e,{precision:t,unit:s}){return Ma(e)?\"none\":Zg(e,t)+(s??\"\")}function Ma(e){return Number.isNaN(e)||e instanceof Number&&e?.none}function _r(e){return Ma(e)?0:e}function Zg(e,t){if(e===0)return 0;let s=~~e,r=0;s&&t&&(r=~~Math.log10(Math.abs(s))+1);let o=10**(t-r);return Math.floor(e*o+.5)/o}var hP={deg:1,grad:.9,rad:180/Math.PI,turn:360};function Qg(e){if(!e)return;e=e.trim();let t=/^([a-z]+)\\((.+?)\\)$/i,s=/^-?[\\d.]+$/,r=/%|deg|g?rad|turn$/,o=/\\/?\\s*(none|[-\\w.]+(?:%|deg|g?rad|turn)?)/g,n=e.match(t);if(n){let i=[];return n[2].replace(o,(d,l)=>{let c=l.match(r),_=l;if(c){let p=c[0],f=_.slice(0,-p.length);p===\"%\"?(_=new Number(f/100),_.type=\"<percentage>\"):(_=new Number(f*hP[p]),_.type=\"<angle>\",_.unit=p)}else s.test(_)?(_=new Number(_),_.type=\"<number>\"):_===\"none\"&&(_=new Number(NaN),_.none=!0);d.startsWith(\"/\")&&(_=_ instanceof Number?_:new Number(_),_.alpha=!0),typeof _==\"object\"&&_ instanceof Number&&(_.raw=l),i.push(_)}),{name:n[1].toLowerCase(),rawName:n[1],rawArgs:n[2],args:i}}}function Jg(e){return e[e.length-1]}function Ml(e,t,s){return isNaN(e)?t:isNaN(t)?e:e+(t-e)*s}function ex(e,t,s){return(s-e)/(t-e)}function z1(e,t,s){return Ml(t[0],t[1],ex(e[0],e[1],s))}function tx(e){return e.map(t=>t.split(\"|\").map(s=>{s=s.trim();let r=s.match(/^(<[a-z]+>)\\[(-?[.\\d]+),\\s*(-?[.\\d]+)\\]?$/);if(r){let o=new String(r[1]);return o.range=[+r[2],+r[3]],o}return s}))}function sx(e,t,s){return Math.max(Math.min(s,t),e)}function o_(e,t){return Math.sign(e)===Math.sign(t)?e:-e}function Un(e,t){return o_(Math.abs(e)**t,e)}function G1(e,t){return t===0?0:e/t}function rx(e,t,s=0,r=e.length){for(;s<r;){let o=s+r>>1;e[o]<t?s=o+1:r=o}return s}var yP=Object.freeze({__proto__:null,bisectLeft:rx,clamp:sx,copySign:o_,interpolate:Ml,interpolateInv:ex,isNone:Ma,isString:Cl,last:Jg,mapRange:z1,multiplyMatrices:Xs,parseCoordGrammar:tx,parseFunction:Qg,serializeNumber:e_,skipNone:_r,spow:Un,toPrecision:Zg,type:Pa,zdiv:G1}),gP=class{add(e,t,s){if(typeof arguments[0]!=\"string\"){for(var e in arguments[0])this.add(e,arguments[0][e],arguments[1]);return}(Array.isArray(e)?e:[e]).forEach(function(r){this[r]=this[r]||[],t&&this[r][s?\"unshift\":\"push\"](t)},this)}run(e,t){this[e]=this[e]||[],this[e].forEach(function(s){s.call(t&&t.context?t.context:t,t)})}},ka=new gP,Fo={gamut_mapping:\"css\",precision:5,deltaE:\"76\",verbose:globalThis?.process?.env?.NODE_ENV?.toLowerCase()!==\"test\",warn:function(t){this.verbose&&globalThis?.console?.warn?.(t)}},ao={D50:[.3457/.3585,1,.2958/.3585],D65:[.3127/.329,1,.3583/.329]};function E1(e){return Array.isArray(e)?e:ao[e]}function t_(e,t,s,r={}){if(e=E1(e),t=E1(t),!e||!t)throw new TypeError(`Missing white point to convert ${e?\"\":\"from\"}${!e&&!t?\"/\":\"\"}${t?\"\":\"to\"}`);if(e===t)return s;let o={W1:e,W2:t,XYZ:s,options:r};if(ka.run(\"chromatic-adaptation-start\",o),o.M||(o.W1===ao.D65&&o.W2===ao.D50?o.M=[[1.0479297925449969,.022946870601609652,-.05019226628920524],[.02962780877005599,.9904344267538799,-.017073799063418826],[-.009243040646204504,.015055191490298152,.7518742814281371]]:o.W1===ao.D50&&o.W2===ao.D65&&(o.M=[[.955473421488075,-.02309845494876471,.06325924320057072],[-.0283697093338637,1.0099953980813041,.021041441191917323],[.012314014864481998,-.020507649298898964,1.330365926242124]])),ka.run(\"chromatic-adaptation-end\",o),o.M)return Xs(o.M,o.XYZ);throw new TypeError(\"Only Bradford CAT with white points D50 and D65 supported for now.\")}var xP=new Set([\"<number>\",\"<percentage>\",\"<angle>\"]);function eg(e,t,s,r){return Object.entries(e.coords).map(([o,n],i)=>{let d=t.coordGrammar[i],l=r[i],c=l?.type,_;if(l.none?_=d.find(h=>xP.has(h)):_=d.find(h=>h==c),!_){let h=n.name||o;throw new TypeError(`${c??l.raw} not allowed for ${h} in ${s}()`)}let p=_.range;c===\"<percentage>\"&&(p||=[0,1]);let f=n.range||n.refRange;return p&&f&&(r[i]=z1(p,f,r[i])),_})}function ox(e,{meta:t}={}){let s={str:String(e)?.trim()};if(ka.run(\"parse-start\",s),s.color)return s.color;if(s.parsed=Qg(s.str),s.parsed){let r=s.parsed.name;if(r===\"color\"){let o=s.parsed.args.shift(),n=o.startsWith(\"--\")?o.substring(2):`--${o}`,i=[o,n],d=s.parsed.rawArgs.indexOf(\"/\")>0?s.parsed.args.pop():1;for(let _ of _t.all){let p=_.getFormat(\"color\");if(p&&(i.includes(p.id)||p.ids?.filter(f=>i.includes(f)).length)){let f=Object.keys(_.coords).map((g,x)=>s.parsed.args[x]||0),h;return p.coordGrammar&&(h=eg(_,p,\"color\",f)),t&&Object.assign(t,{formatId:\"color\",types:h}),p.id.startsWith(\"--\")&&!o.startsWith(\"--\")&&Fo.warn(`${_.name} is a non-standard space and not currently supported in the CSS spec. Use prefixed color(${p.id}) instead of color(${o}).`),o.startsWith(\"--\")&&!p.id.startsWith(\"--\")&&Fo.warn(`${_.name} is a standard space and supported in the CSS spec. Use color(${p.id}) instead of prefixed color(${o}).`),{spaceId:_.id,coords:f,alpha:d}}}let l=\"\",c=o in _t.registry?o:n;if(c in _t.registry){let _=_t.registry[c].formats?.color?.id;_&&(l=`Did you mean color(${_})?`)}throw new TypeError(`Cannot parse color(${o}). `+(l||\"Missing a plugin?\"))}else for(let o of _t.all){let n=o.getFormat(r);if(n&&n.type===\"function\"){let i=1;(n.lastAlpha||Jg(s.parsed.args).alpha)&&(i=s.parsed.args.pop());let d=s.parsed.args,l;return n.coordGrammar&&(l=eg(o,n,r,d)),t&&Object.assign(t,{formatId:n.name,types:l}),{spaceId:o.id,coords:d,alpha:i}}}}else for(let r of _t.all)for(let o in r.formats){let n=r.formats[o];if(n.type!==\"custom\"||n.test&&!n.test(s.str))continue;let i=n.parse(s.str);if(i)return i.alpha??=1,t&&(t.formatId=o),i}throw new TypeError(`Could not parse ${e} as a color. Missing a plugin?`)}function Bt(e){if(Array.isArray(e))return e.map(Bt);if(!e)throw new TypeError(\"Empty color reference\");Cl(e)&&(e=ox(e));let t=e.space||e.spaceId;return t instanceof _t||(e.space=_t.get(t)),e.alpha===void 0&&(e.alpha=1),e}var bP=75e-6,_t=class hn{constructor(t){this.id=t.id,this.name=t.name,this.base=t.base?hn.get(t.base):null,this.aliases=t.aliases,this.base&&(this.fromBase=t.fromBase,this.toBase=t.toBase);let s=t.coords??this.base.coords;for(let r in s)\"name\"in s[r]||(s[r].name=r);this.coords=s,this.white=E1(t.white??this.base.white??\"D65\"),this.formats=t.formats??{};for(let r in this.formats){let o=this.formats[r];o.type||=\"function\",o.name||=r}this.formats.color?.id||(this.formats.color={...this.formats.color??{},id:t.cssId||this.id}),t.gamutSpace?this.gamutSpace=t.gamutSpace===\"self\"?this:hn.get(t.gamutSpace):this.isPolar?this.gamutSpace=this.base:this.gamutSpace=this,this.gamutSpace.isUnbounded&&(this.inGamut=(r,o)=>!0),this.referred=t.referred,Object.defineProperty(this,\"path\",{value:wP(this).reverse(),writable:!1,enumerable:!0,configurable:!0}),ka.run(\"colorspace-init-end\",this)}inGamut(t,{epsilon:s=bP}={}){if(!this.equals(this.gamutSpace))return t=this.to(this.gamutSpace,t),this.gamutSpace.inGamut(t,{epsilon:s});let r=Object.values(this.coords);return t.every((o,n)=>{let i=r[n];if(i.type!==\"angle\"&&i.range){if(Number.isNaN(o))return!0;let[d,l]=i.range;return(d===void 0||o>=d-s)&&(l===void 0||o<=l+s)}return!0})}get isUnbounded(){return Object.values(this.coords).every(t=>!(\"range\"in t))}get cssId(){return this.formats?.color?.id||this.id}get isPolar(){for(let t in this.coords)if(this.coords[t].type===\"angle\")return!0;return!1}getFormat(t){if(typeof t==\"object\")return t=tg(t,this),t;let s;return t===\"default\"?s=Object.values(this.formats)[0]:s=this.formats[t],s?(s=tg(s,this),s):null}equals(t){return t?this===t||this.id===t||this.id===t.id:!1}to(t,s){if(arguments.length===1){let d=Bt(t);[t,s]=[d.space,d.coords]}if(t=hn.get(t),this.equals(t))return s;s=s.map(d=>Number.isNaN(d)?0:d);let r=this.path,o=t.path,n,i;for(let d=0;d<r.length&&r[d].equals(o[d]);d++)n=r[d],i=d;if(!n)throw new Error(`Cannot convert between color spaces ${this} and ${t}: no connection space was found`);for(let d=r.length-1;d>i;d--)s=r[d].toBase(s);for(let d=i+1;d<o.length;d++)s=o[d].fromBase(s);return s}from(t,s){if(arguments.length===1){let r=Bt(t);[t,s]=[r.space,r.coords]}return t=hn.get(t),t.to(this,s)}toString(){return`${this.name} (${this.id})`}getMinCoords(){let t=[];for(let s in this.coords){let r=this.coords[s],o=r.range||r.refRange;t.push(o?.min??0)}return t}static registry={};static get all(){return[...new Set(Object.values(hn.registry))]}static register(t,s){if(arguments.length===1&&(s=arguments[0],t=s.id),s=this.get(s),this.registry[t]&&this.registry[t]!==s)throw new Error(`Duplicate color space registration: '${t}'`);if(this.registry[t]=s,arguments.length===1&&s.aliases)for(let r of s.aliases)this.register(r,s);return s}static get(t,...s){if(!t||t instanceof hn)return t;if(Pa(t)===\"string\"){let r=hn.registry[t.toLowerCase()];if(!r)throw new TypeError(`No color space found with id = \"${t}\"`);return r}if(s.length)return hn.get(...s);throw new TypeError(`${t} is not a valid color space`)}static resolveCoord(t,s){let r=Pa(t),o,n;if(r===\"string\"?t.includes(\".\")?[o,n]=t.split(\".\"):[o,n]=[,t]:Array.isArray(t)?[o,n]=t:(o=t.space,n=t.coordId),o=hn.get(o),o||(o=s),!o)throw new TypeError(`Cannot resolve coordinate reference ${t}: No color space specified and relative references are not allowed here`);if(r=Pa(n),r===\"number\"||r===\"string\"&&n>=0){let l=Object.entries(o.coords)[n];if(l)return{space:o,id:l[0],index:n,...l[1]}}o=hn.get(o);let i=n.toLowerCase(),d=0;for(let l in o.coords){let c=o.coords[l];if(l.toLowerCase()===i||c.name?.toLowerCase()===i)return{space:o,id:l,index:d,...c};d++}throw new TypeError(`No \"${n}\" coordinate found in ${o.name}. Its coordinates are: ${Object.keys(o.coords).join(\", \")}`)}static DEFAULT_FORMAT={type:\"functions\",name:\"color\"}};function wP(e){let t=[e];for(let s=e;s=s.base;)t.push(s);return t}function tg(e,{coords:t}={}){if(e.coords&&!e.coordGrammar){e.type||=\"function\",e.name||=\"color\",e.coordGrammar=tx(e.coords);let s=Object.entries(t).map(([r,o],n)=>{let i=e.coordGrammar[n][0],d=o.range||o.refRange,l=i.range,c=\"\";return i==\"<percentage>\"?(l=[0,100],c=\"%\"):i==\"<angle>\"&&(c=\"deg\"),{fromRange:d,toRange:l,suffix:c}});e.serializeCoords=(r,o)=>r.map((n,i)=>{let{fromRange:d,toRange:l,suffix:c}=s[i];return d&&l&&(n=z1(d,l,n)),n=e_(n,{precision:o,unit:c}),n})}return e}var Or=new _t({id:\"xyz-d65\",name:\"XYZ D65\",coords:{x:{name:\"X\"},y:{name:\"Y\"},z:{name:\"Z\"}},white:\"D65\",formats:{color:{ids:[\"xyz-d65\",\"xyz\"]}},aliases:[\"xyz\"]}),bo=class extends _t{constructor(e){e.coords||(e.coords={r:{range:[0,1],name:\"Red\"},g:{range:[0,1],name:\"Green\"},b:{range:[0,1],name:\"Blue\"}}),e.base||(e.base=Or),e.toXYZ_M&&e.fromXYZ_M&&(e.toBase??=t=>{let s=Xs(e.toXYZ_M,t);return this.white!==this.base.white&&(s=t_(this.white,this.base.white,s)),s},e.fromBase??=t=>(t=t_(this.base.white,this.white,t),Xs(e.fromXYZ_M,t))),e.referred??=\"display\",super(e)}};function Rl(e,t){return e=Bt(e),!t||e.space.equals(t)?e.coords.slice():(t=_t.get(t),t.from(e))}function Do(e,t){e=Bt(e);let{space:s,index:r}=_t.resolveCoord(t,e.space);return Rl(e,s)[r]}function D1(e,t,s){return e=Bt(e),t=_t.get(t),e.coords=t.to(e.space,s),e}D1.returns=\"color\";function Jn(e,t,s){if(e=Bt(e),arguments.length===2&&Pa(arguments[1])===\"object\"){let r=arguments[1];for(let o in r)Jn(e,o,r[o])}else{typeof s==\"function\"&&(s=s(Do(e,t)));let{space:r,index:o}=_t.resolveCoord(t,e.space),n=Rl(e,r);n[o]=s,D1(e,r,n)}return e}Jn.returns=\"color\";var L1=new _t({id:\"xyz-d50\",name:\"XYZ D50\",white:\"D50\",base:Or,fromBase:e=>t_(Or.white,\"D50\",e),toBase:e=>t_(\"D50\",Or.white,e)}),TP=216/24389,sg=24/116,Nu=24389/27,v1=ao.D50,Lo=new _t({id:\"lab\",name:\"Lab\",coords:{l:{refRange:[0,100],name:\"Lightness\"},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:v1,base:L1,fromBase(e){let t=e.map((s,r)=>s/v1[r]).map(s=>s>TP?Math.cbrt(s):(Nu*s+16)/116);return[116*t[1]-16,500*(t[0]-t[1]),200*(t[1]-t[2])]},toBase(e){let t=[];return t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200,[t[0]>sg?Math.pow(t[0],3):(116*t[0]-16)/Nu,e[0]>8?Math.pow((e[0]+16)/116,3):e[0]/Nu,t[2]>sg?Math.pow(t[2],3):(116*t[2]-16)/Nu].map((s,r)=>s*v1[r])},formats:{lab:{coords:[\"<number> | <percentage>\",\"<number> | <percentage>[-1,1]\",\"<number> | <percentage>[-1,1]\"]}}});function zn(e){return(e%360+360)%360}function SP(e,t){if(e===\"raw\")return t;let[s,r]=t.map(zn),o=r-s;return e===\"increasing\"?o<0&&(r+=360):e===\"decreasing\"?o>0&&(s+=360):e===\"longer\"?-180<o&&o<180&&(o>0?s+=360:r+=360):e===\"shorter\"&&(o>180?s+=360:o<-180&&(r+=360)),[s,r]}var kl=new _t({id:\"lch\",name:\"LCH\",coords:{l:{refRange:[0,100],name:\"Lightness\"},c:{refRange:[0,150],name:\"Chroma\"},h:{refRange:[0,360],type:\"angle\",name:\"Hue\"}},base:Lo,fromBase(e){let[t,s,r]=e,o,n=.02;return Math.abs(s)<n&&Math.abs(r)<n?o=NaN:o=Math.atan2(r,s)*180/Math.PI,[t,Math.sqrt(s**2+r**2),zn(o)]},toBase(e){let[t,s,r]=e;return s<0&&(s=0),isNaN(r)&&(r=0),[t,s*Math.cos(r*Math.PI/180),s*Math.sin(r*Math.PI/180)]},formats:{lch:{coords:[\"<number> | <percentage>\",\"<number> | <percentage>\",\"<number> | <angle>\"]}}}),rg=25**7,s_=Math.PI,og=180/s_,nd=s_/180;function ng(e){let t=e*e;return t*t*t*e}function nx(e,t,{kL:s=1,kC:r=1,kH:o=1}={}){[e,t]=Bt([e,t]);let[n,i,d]=Lo.from(e),l=kl.from(Lo,[n,i,d])[1],[c,_,p]=Lo.from(t),f=kl.from(Lo,[c,_,p])[1];l<0&&(l=0),f<0&&(f=0);let h=ng((l+f)/2),g=.5*(1-Math.sqrt(h/(h+rg))),x=(1+g)*i,T=(1+g)*_,S=Math.sqrt(x**2+d**2),A=Math.sqrt(T**2+p**2),E=x===0&&d===0?0:Math.atan2(d,x),M=T===0&&p===0?0:Math.atan2(p,T);E<0&&(E+=2*s_),M<0&&(M+=2*s_),E*=og,M*=og;let $=c-n,L=A-S,B=M-E,D=E+M,G=Math.abs(B),I;S*A===0?I=0:G<=180?I=B:B>180?I=B-360:B<-180?I=B+360:Fo.warn(\"the unthinkable has happened\");let X=2*Math.sqrt(A*S)*Math.sin(I*nd/2),H=(n+c)/2,ee=(S+A)/2,Q=ng(ee),de;S*A===0?de=D:G<=180?de=D/2:D<360?de=(D+360)/2:de=(D-360)/2;let Ee=(H-50)**2,he=1+.015*Ee/Math.sqrt(20+Ee),Me=1+.045*ee,Te=1;Te-=.17*Math.cos((de-30)*nd),Te+=.24*Math.cos(2*de*nd),Te+=.32*Math.cos((3*de+6)*nd),Te-=.2*Math.cos((4*de-63)*nd);let Pe=1+.015*ee*Te,Ce=30*Math.exp(-1*((de-275)/25)**2),ie=2*Math.sqrt(Q/(Q+rg)),Ne=-1*Math.sin(2*Ce*nd)*ie,ye=($/(s*he))**2;return ye+=(L/(r*Me))**2,ye+=(X/(o*Pe))**2,ye+=Ne*(L/(r*Me))*(X/(o*Pe)),Math.sqrt(ye)}var AP=[[.819022437996703,.3619062600528904,-.1288737815209879],[.0329836539323885,.9292868615863434,.0361446663506424],[.0481771893596242,.2642395317527308,.6335478284694309]],EP=[[1.2268798758459243,-.5578149944602171,.2813910456659647],[-.0405757452148008,1.112286803280317,-.0717110580655164],[-.0763729366746601,-.4214933324022432,1.5869240198367816]],PP=[[.210454268309314,.7936177747023054,-.0040720430116193],[1.9779985324311684,-2.42859224204858,.450593709617411],[.0259040424655478,.7827717124575296,-.8086757549230774]],MP=[[1,.3963377773761749,.2158037573099136],[1,-.1055613458156586,-.0638541728258133],[1,-.0894841775298119,-1.2914855480194092]],ld=new _t({id:\"oklab\",name:\"Oklab\",coords:{l:{refRange:[0,1],name:\"Lightness\"},a:{refRange:[-.4,.4]},b:{refRange:[-.4,.4]}},white:\"D65\",base:Or,fromBase(e){return Xs(PP,Xs(AP,e).map(t=>Math.cbrt(t)))},toBase(e){return Xs(EP,Xs(MP,e).map(t=>t**3))},formats:{oklab:{coords:[\"<percentage> | <number>\",\"<number> | <percentage>[-1,1]\",\"<number> | <percentage>[-1,1]\"]}}});function P1(e,t){[e,t]=Bt([e,t]);let[s,r,o]=ld.from(e),[n,i,d]=ld.from(t),l=s-n,c=r-i,_=o-d;return Math.sqrt(l**2+c**2+_**2)}var kP=75e-6;function yi(e,t,{epsilon:s=kP}={}){e=Bt(e),t||(t=e.space),t=_t.get(t);let r=e.coords;return t!==e.space&&(r=t.from(e)),t.inGamut(r,{epsilon:s})}function cd(e){return{space:e.space,coords:e.coords.slice(),alpha:e.alpha}}function ax(e,t,s=\"lab\"){s=_t.get(s);let r=s.from(e),o=s.from(t);return Math.sqrt(r.reduce((n,i,d)=>{let l=o[d];return isNaN(i)||isNaN(l)?n:n+(l-i)**2},0))}function $P(e,t){return ax(e,t,\"lab\")}var ag=Math.PI/180;function CP(e,t,{l:s=2,c:r=1}={}){[e,t]=Bt([e,t]);let[o,n,i]=Lo.from(e),[,d,l]=kl.from(Lo,[o,n,i]),[c,_,p]=Lo.from(t),f=kl.from(Lo,[c,_,p])[1];d<0&&(d=0),f<0&&(f=0);let h=o-c,g=d-f,x=n-_,T=i-p,S=x**2+T**2-g**2,A=.511;o>=16&&(A=.040975*o/(1+.01765*o));let E=.0638*d/(1+.0131*d)+.638,M;Number.isNaN(l)&&(l=0),l>=164&&l<=345?M=.56+Math.abs(.2*Math.cos((l+168)*ag)):M=.36+Math.abs(.4*Math.cos((l+35)*ag));let $=Math.pow(d,4),L=Math.sqrt($/($+1900)),B=E*(L*M+1-L),D=(h/(s*A))**2;return D+=(g/(r*E))**2,D+=S/B**2,Math.sqrt(D)}var ig=203,F1=new _t({id:\"xyz-abs-d65\",cssId:\"--xyz-abs-d65\",name:\"Absolute XYZ D65\",coords:{x:{refRange:[0,9504.7],name:\"Xa\"},y:{refRange:[0,1e4],name:\"Ya\"},z:{refRange:[0,10888.3],name:\"Za\"}},base:Or,fromBase(e){return e.map(t=>Math.max(t*ig,0))},toBase(e){return e.map(t=>Math.max(t/ig,0))}}),qu=1.15,Xu=.66,dg=2610/2**14,RP=2**14/2610,lg=3424/2**12,cg=2413/2**7,ug=2392/2**7,UP=1.7*2523/2**5,_g=2**5/(1.7*2523),Hu=-.56,h1=16295499532821565e-27,zP=[[.41478972,.579999,.014648],[-.20151,1.120649,.0531008],[-.0166008,.2648,.6684799]],GP=[[1.9242264357876067,-1.0047923125953657,.037651404030618],[.35031676209499907,.7264811939316552,-.06538442294808501],[-.09098281098284752,-.3127282905230739,1.5227665613052603]],DP=[[.5,.5,0],[3.524,-4.066708,.542708],[.199076,1.096799,-1.295875]],LP=[[1,.1386050432715393,.05804731615611886],[.9999999999999999,-.1386050432715393,-.05804731615611886],[.9999999999999998,-.09601924202631895,-.8118918960560388]],ix=new _t({id:\"jzazbz\",name:\"Jzazbz\",coords:{jz:{refRange:[0,1],name:\"Jz\"},az:{refRange:[-.5,.5]},bz:{refRange:[-.5,.5]}},base:F1,fromBase(e){let[t,s,r]=e,[o,n,i]=Xs(DP,Xs(zP,[qu*t-(qu-1)*r,Xu*s-(Xu-1)*t,r]).map(function(d){return((lg+cg*(d/1e4)**dg)/(1+ug*(d/1e4)**dg))**UP}));return[(1+Hu)*o/(1+Hu*o)-h1,n,i]},toBase(e){let[t,s,r]=e,[o,n,i]=Xs(GP,Xs(LP,[(t+h1)/(1+Hu-Hu*(t+h1)),s,r]).map(function(l){return 1e4*((lg-l**_g)/(ug*l**_g-cg))**RP})),d=(o+(qu-1)*i)/qu;return[d,(n+(Xu-1)*d)/Xu,i]},formats:{color:{coords:[\"<number> | <percentage>\",\"<number> | <percentage>[-1,1]\",\"<number> | <percentage>[-1,1]\"]}}}),M1=new _t({id:\"jzczhz\",name:\"JzCzHz\",coords:{jz:{refRange:[0,1],name:\"Jz\"},cz:{refRange:[0,1],name:\"Chroma\"},hz:{refRange:[0,360],type:\"angle\",name:\"Hue\"}},base:ix,fromBase(e){let[t,s,r]=e,o,n=2e-4;return Math.abs(s)<n&&Math.abs(r)<n?o=NaN:o=Math.atan2(r,s)*180/Math.PI,[t,Math.sqrt(s**2+r**2),zn(o)]},toBase(e){return[e[0],e[1]*Math.cos(e[2]*Math.PI/180),e[1]*Math.sin(e[2]*Math.PI/180)]}});function FP(e,t){[e,t]=Bt([e,t]);let[s,r,o]=M1.from(e),[n,i,d]=M1.from(t),l=s-n,c=r-i;Number.isNaN(o)&&Number.isNaN(d)?(o=0,d=0):Number.isNaN(o)?o=d:Number.isNaN(d)&&(d=o);let _=o-d,p=2*Math.sqrt(r*i)*Math.sin(_/2*(Math.PI/180));return Math.sqrt(l**2+c**2+p**2)}var dx=3424/4096,lx=2413/128,cx=2392/128,pg=2610/16384,BP=2523/32,IP=16384/2610,mg=32/2523,YP=[[.3592832590121217,.6976051147779502,-.035891593232029],[-.1920808463704993,1.100476797037432,.0753748658519118],[.0070797844607479,.0748396662186362,.8433265453898765]],WP=[[2048/4096,2048/4096,0],[6610/4096,-13613/4096,7003/4096],[17933/4096,-17390/4096,-543/4096]],OP=[[.9999999999999998,.0086090370379328,.111029625003026],[.9999999999999998,-.0086090370379328,-.1110296250030259],[.9999999999999998,.5600313357106791,-.3206271749873188]],VP=[[2.0701522183894223,-1.3263473389671563,.2066510476294053],[.3647385209748072,.6805660249472273,-.0453045459220347],[-.0497472075358123,-.0492609666966131,1.1880659249923042]],k1=new _t({id:\"ictcp\",name:\"ICTCP\",coords:{i:{refRange:[0,1],name:\"I\"},ct:{refRange:[-.5,.5],name:\"CT\"},cp:{refRange:[-.5,.5],name:\"CP\"}},base:F1,fromBase(e){return NP(Xs(YP,e))},toBase(e){return Xs(VP,qP(e))}});function NP(e){return Xs(WP,e.map(function(t){return((dx+lx*(t/1e4)**pg)/(1+cx*(t/1e4)**pg))**BP}))}function qP(e){return Xs(OP,e).map(function(t){return 1e4*(Math.max(t**mg-dx,0)/(lx-cx*t**mg))**IP})}function XP(e,t){[e,t]=Bt([e,t]);let[s,r,o]=k1.from(e),[n,i,d]=k1.from(t);return 720*Math.sqrt((s-n)**2+.25*(r-i)**2+(o-d)**2)}var HP=ao.D65,ux=.42,fg=1/ux,y1=2*Math.PI,_x=[[.401288,.650173,-.051461],[-.250268,1.204414,.045854],[-.002079,.048952,.953127]],jP=[[1.8620678550872327,-1.0112546305316843,.14918677544445175],[.38752654323613717,.6214474419314753,-.008973985167612518],[-.015841498849333856,-.03412293802851557,1.0499644368778496]],KP=[[460,451,288],[460,-891,-261],[460,-220,-6300]],ZP={dark:[.8,.525,.8],dim:[.9,.59,.9],average:[1,.69,1]},hi={h:[20.14,90,164.25,237.53,380.14],e:[.8,.7,1,1.2,.8],H:[0,100,200,300,400]},QP=180/Math.PI,vg=Math.PI/180;function px(e,t){return e.map(s=>{let r=Un(t*Math.abs(s)*.01,ux);return 400*o_(r,s)/(r+27.13)})}function JP(e,t){let s=100/t*27.13**fg;return e.map(r=>{let o=Math.abs(r);return o_(s*Un(o/(400-o),fg),r)})}function eM(e){let t=zn(e);t<=hi.h[0]&&(t+=360);let s=rx(hi.h,t)-1,[r,o]=hi.h.slice(s,s+2),[n,i]=hi.e.slice(s,s+2),d=hi.H[s],l=(t-r)/n;return d+100*l/(l+(o-t)/i)}function tM(e){let t=(e%400+400)%400,s=Math.floor(.01*t);t=t%100;let[r,o]=hi.h.slice(s,s+2),[n,i]=hi.e.slice(s,s+2);return zn((t*(i*r-n*o)-100*r*i)/(t*(i-n)-100*i))}function mx(e,t,s,r,o){let n={};n.discounting=o,n.refWhite=e,n.surround=r;let i=e.map(h=>h*100);n.la=t,n.yb=s;let d=i[1],l=Xs(_x,i);r=ZP[n.surround];let c=r[0];n.c=r[1],n.nc=r[2];let _=(1/(5*n.la+1))**4;n.fl=_*n.la+.1*(1-_)*(1-_)*Math.cbrt(5*n.la),n.flRoot=n.fl**.25,n.n=n.yb/d,n.z=1.48+Math.sqrt(n.n),n.nbb=.725*n.n**-.2,n.ncb=n.nbb;let p=o?1:Math.max(Math.min(c*(1-1/3.6*Math.exp((-n.la-42)/92)),1),0);n.dRgb=l.map(h=>Ml(1,d/h,p)),n.dRgbInv=n.dRgb.map(h=>1/h);let f=px(l.map((h,g)=>h*n.dRgb[g]),n.fl);return n.aW=n.nbb*(2*f[0]+f[1]+.05*f[2]),n}var hg=mx(HP,64/Math.PI*.2,20,\"average\",!1);function $1(e,t){if(!(e.J!==void 0^e.Q!==void 0))throw new Error(\"Conversion requires one and only one: 'J' or 'Q'\");if(!(e.C!==void 0^e.M!==void 0^e.s!==void 0))throw new Error(\"Conversion requires one and only one: 'C', 'M' or 's'\");if(!(e.h!==void 0^e.H!==void 0))throw new Error(\"Conversion requires one and only one: 'h' or 'H'\");if(e.J===0||e.Q===0)return[0,0,0];let s=0;e.h!==void 0?s=zn(e.h)*vg:s=tM(e.H)*vg;let r=Math.cos(s),o=Math.sin(s),n=0;e.J!==void 0?n=Un(e.J,1/2)*.1:e.Q!==void 0&&(n=.25*t.c*e.Q/((t.aW+4)*t.flRoot));let i=0;e.C!==void 0?i=e.C/n:e.M!==void 0?i=e.M/t.flRoot/n:e.s!==void 0&&(i=4e-4*e.s**2*(t.aW+4)/t.c);let d=Un(i*Math.pow(1.64-Math.pow(.29,t.n),-.73),10/9),l=.25*(Math.cos(s+2)+3.8),c=t.aW*Un(n,2/t.c/t.z),_=5e4/13*t.nc*t.ncb*l,p=c/t.nbb,f=23*(p+.305)*G1(d,23*_+d*(11*r+108*o));return Xs(jP,JP(Xs(KP,[p,f*r,f*o]).map(h=>h*1/1403),t.fl).map((h,g)=>h*t.dRgbInv[g])).map(h=>h/100)}function fx(e,t){let s=px(Xs(_x,e.map(x=>x*100)).map((x,T)=>x*t.dRgb[T]),t.fl),r=s[0]+(-12*s[1]+s[2])/11,o=(s[0]+s[1]-2*s[2])/9,n=(Math.atan2(o,r)%y1+y1)%y1,i=.25*(Math.cos(n+2)+3.8),d=Un(5e4/13*t.nc*t.ncb*G1(i*Math.sqrt(r**2+o**2),s[0]+s[1]+1.05*s[2]+.305),.9)*Math.pow(1.64-Math.pow(.29,t.n),.73),l=Un(t.nbb*(2*s[0]+s[1]+.05*s[2])/t.aW,.5*t.c*t.z),c=100*Un(l,2),_=4/t.c*l*(t.aW+4)*t.flRoot,p=d*l,f=p*t.flRoot,h=zn(n*QP),g=eM(h);return{J:c,C:p,h,s:50*Un(t.c*d/(t.aW+4),1/2),Q:_,M:f,H:g}}var sM=new _t({id:\"cam16-jmh\",cssId:\"--cam16-jmh\",name:\"CAM16-JMh\",coords:{j:{refRange:[0,100],name:\"J\"},m:{refRange:[0,105],name:\"Colorfulness\"},h:{refRange:[0,360],type:\"angle\",name:\"Hue\"}},base:Or,fromBase(e){let t=fx(e,hg);return[t.J,t.M,t.h]},toBase(e){return $1({J:e[0],M:e[1],h:e[2]},hg)}}),rM=ao.D65,oM=216/24389,vx=24389/27;function nM(e){return 116*(e>oM?Math.cbrt(e):(vx*e+16)/116)-16}function C1(e){return e>8?Math.pow((e+16)/116,3):e/vx}function aM(e,t){let[s,r,o]=e,n=[],i=0;if(o===0)return[0,0,0];let d=C1(o);o>0?i=.00379058511492914*o**2+.608983189401032*o+.9155088574762233:i=9514440756550361e-21*o**2+.08693057439788597*o-21.928975842194614;let l=2e-12,c=15,_=0,p=1/0;for(;_<=c;){n=$1({J:i,C:r,h:s},t);let f=Math.abs(n[1]-d);if(f<p){if(f<=l)return n;p=f}i=i-(n[1]-d)*i/(2*n[1]),_+=1}return $1({J:i,C:r,h:s},t)}function iM(e,t){let s=nM(e[1]);if(s===0)return[0,0,0];let r=fx(e,B1);return[zn(r.h),r.C,s]}var B1=mx(rM,200/Math.PI*C1(50),C1(50)*100,\"average\",!1),$l=new _t({id:\"hct\",name:\"HCT\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},c:{refRange:[0,145],name:\"Colorfulness\"},t:{refRange:[0,100],name:\"Tone\"}},base:Or,fromBase(e){return iM(e)},toBase(e){return aM(e,B1)},formats:{color:{id:\"--hct\",coords:[\"<number> | <angle>\",\"<percentage> | <number>\",\"<percentage> | <number>\"]}}}),dM=Math.PI/180,yg=[1,.007,.0228];function gg(e){e[1]<0&&(e=$l.fromBase($l.toBase(e)));let t=Math.log(Math.max(1+yg[2]*e[1]*B1.flRoot,1))/yg[2],s=e[0]*dM,r=t*Math.cos(s),o=t*Math.sin(s);return[e[2],r,o]}function lM(e,t){[e,t]=Bt([e,t]);let[s,r,o]=gg($l.from(e)),[n,i,d]=gg($l.from(t));return Math.sqrt((s-n)**2+(r-i)**2+(o-d)**2)}var ud={deltaE76:$P,deltaECMC:CP,deltaE2000:nx,deltaEJz:FP,deltaEITP:XP,deltaEOK:P1,deltaEHCT:lM};function cM(e){let t=e?Math.floor(Math.log10(Math.abs(e))):0;return Math.max(parseFloat(`1e${t-2}`),1e-6)}var xg={hct:{method:\"hct.c\",jnd:2,deltaEMethod:\"hct\",blackWhiteClamp:{}},\"hct-tonal\":{method:\"hct.c\",jnd:0,deltaEMethod:\"hct\",blackWhiteClamp:{channel:\"hct.t\",min:0,max:100}}};function $a(e,{method:t=Fo.gamut_mapping,space:s=void 0,deltaEMethod:r=\"\",jnd:o=2,blackWhiteClamp:n={}}={}){if(e=Bt(e),Cl(arguments[1])?s=arguments[1]:s||(s=e.space),s=_t.get(s),yi(e,s,{epsilon:0}))return e;let i;if(t===\"css\")i=uM(e,{space:s});else{if(t!==\"clip\"&&!yi(e,s)){Object.prototype.hasOwnProperty.call(xg,t)&&({method:t,jnd:o,deltaEMethod:r,blackWhiteClamp:n}=xg[t]);let d=nx;if(r!==\"\"){for(let c in ud)if(\"deltae\"+r.toLowerCase()===c.toLowerCase()){d=ud[c];break}}let l=$a(qs(e,s),{method:\"clip\",space:s});if(d(e,l)>o){if(Object.keys(n).length===3){let S=_t.resolveCoord(n.channel),A=Do(qs(e,S.space),S.id);if(Ma(A)&&(A=0),A>=n.max)return qs({space:\"xyz-d65\",coords:ao.D65},e.space);if(A<=n.min)return qs({space:\"xyz-d65\",coords:[0,0,0]},e.space)}let c=_t.resolveCoord(t),_=c.space,p=c.id,f=qs(e,_);f.coords.forEach((S,A)=>{Ma(S)&&(f.coords[A]=0)});let h=(c.range||c.refRange)[0],g=cM(o),x=h,T=Do(f,p);for(;T-x>g;){let S=cd(f);S=$a(S,{space:s,method:\"clip\"}),d(f,S)-o<g?x=Do(f,p):T=Do(f,p),Jn(f,p,(x+T)/2)}i=qs(f,s)}else i=l}else i=qs(e,s);if(t===\"clip\"||!yi(i,s,{epsilon:0})){let d=Object.values(s.coords).map(l=>l.range||[]);i.coords=i.coords.map((l,c)=>{let[_,p]=d[c];return _!==void 0&&(l=Math.max(_,l)),p!==void 0&&(l=Math.min(l,p)),l})}}return s!==e.space&&(i=qs(i,e.space)),e.coords=i.coords,e}$a.returns=\"color\";var bg={WHITE:{space:ld,coords:[1,0,0]},BLACK:{space:ld,coords:[0,0,0]}};function uM(e,{space:t}={}){e=Bt(e),t||(t=e.space),t=_t.get(t);let o=_t.get(\"oklch\");if(t.isUnbounded)return qs(e,t);let n=qs(e,o),i=n.coords[0];if(i>=1){let g=qs(bg.WHITE,t);return g.alpha=e.alpha,qs(g,t)}if(i<=0){let g=qs(bg.BLACK,t);return g.alpha=e.alpha,qs(g,t)}if(yi(n,t,{epsilon:0}))return qs(n,t);function d(g){let x=qs(g,t),T=Object.values(t.coords);return x.coords=x.coords.map((S,A)=>{if(\"range\"in T[A]){let[E,M]=T[A].range;return sx(E,S,M)}return S}),x}let l=0,c=n.coords[1],_=!0,p=cd(n),f=d(p),h=P1(f,p);if(h<.02)return f;for(;c-l>1e-4;){let g=(l+c)/2;if(p.coords[1]=g,_&&yi(p,t,{epsilon:0}))l=g;else if(f=d(p),h=P1(f,p),h<.02){if(.02-h<1e-4)break;_=!1,l=g}else c=g}return f}function qs(e,t,{inGamut:s}={}){e=Bt(e),t=_t.get(t);let r=t.from(e),o={space:t,coords:r,alpha:e.alpha};return s&&(o=$a(o,s===!0?void 0:s)),o}qs.returns=\"color\";function Pl(e,{precision:t=Fo.precision,format:s=\"default\",inGamut:r=!0,...o}={}){let n;e=Bt(e);let i=s;s=e.space.getFormat(s)??e.space.getFormat(\"default\")??_t.DEFAULT_FORMAT;let d=e.coords.slice();if(r||=s.toGamut,r&&!yi(e)&&(d=$a(cd(e),r===!0?void 0:r).coords),s.type===\"custom\")if(o.precision=t,s.serialize)n=s.serialize(d,e.alpha,o);else throw new TypeError(`format ${i} can only be used to parse colors, not for serialization`);else{let l=s.name||\"color\";s.serializeCoords?d=s.serializeCoords(d,t):t!==null&&(d=d.map(f=>e_(f,{precision:t})));let c=[...d];if(l===\"color\"){let f=s.id||s.ids?.[0]||e.space.id;c.unshift(f)}let _=e.alpha;t!==null&&(_=e_(_,{precision:t}));let p=e.alpha>=1||s.noAlpha?\"\":`${s.commas?\",\":\" /\"} ${_}`;n=`${l}(${c.join(s.commas?\", \":\" \")}${p})`}return n}var n_=new bo({id:\"rec2020-linear\",cssId:\"--rec2020-linear\",name:\"Linear REC.2020\",white:\"D65\",toXYZ_M:[[.6369580483012914,.14461690358620832,.1688809751641721],[.2627002120112671,.6779980715188708,.05930171646986196],[0,.028072693049087428,1.060985057710791]],fromXYZ_M:[[1.716651187971268,-.355670783776392,-.25336628137366],[-.666684351832489,1.616481236634939,.0157685458139111],[.017639857445311,-.042770613257809,.942103121235474]]}),ju=1.09929682680944,wg=.018053968510807,hx=new bo({id:\"rec2020\",name:\"REC.2020\",base:n_,toBase(e){return e.map(function(t){return t<wg*4.5?t/4.5:Math.pow((t+ju-1)/ju,1/.45)})},fromBase(e){return e.map(function(t){return t>=wg?ju*Math.pow(t,.45)-(ju-1):4.5*t})}}),yx=new bo({id:\"p3-linear\",cssId:\"--display-p3-linear\",name:\"Linear P3\",white:\"D65\",toXYZ_M:[[.4865709486482162,.26566769316909306,.1982172852343625],[.2289745640697488,.6917385218365064,.079286914093745],[0,.04511338185890264,1.043944368900976]],fromXYZ_M:[[2.493496911941425,-.9313836179191239,-.40271078445071684],[-.8294889695615747,1.7626640603183463,.023624685841943577],[.03584583024378447,-.07617238926804182,.9568845240076872]]}),_M=[[.41239079926595934,.357584339383878,.1804807884018343],[.21263900587151027,.715168678767756,.07219231536073371],[.01933081871559182,.11919477979462598,.9505321522496607]],gr=[[3.2409699419045226,-1.537383177570094,-.4986107602930034],[-.9692436362808796,1.8759675015077202,.04155505740717559],[.05563007969699366,-.20397695888897652,1.0569715142428786]],gx=new bo({id:\"srgb-linear\",name:\"Linear sRGB\",white:\"D65\",toXYZ_M:_M,fromXYZ_M:gr}),Tg={aliceblue:[240/255,248/255,1],antiquewhite:[250/255,235/255,215/255],aqua:[0,1,1],aquamarine:[127/255,1,212/255],azure:[240/255,1,1],beige:[245/255,245/255,220/255],bisque:[1,228/255,196/255],black:[0,0,0],blanchedalmond:[1,235/255,205/255],blue:[0,0,1],blueviolet:[138/255,43/255,226/255],brown:[165/255,42/255,42/255],burlywood:[222/255,184/255,135/255],cadetblue:[95/255,158/255,160/255],chartreuse:[127/255,1,0],chocolate:[210/255,105/255,30/255],coral:[1,127/255,80/255],cornflowerblue:[100/255,149/255,237/255],cornsilk:[1,248/255,220/255],crimson:[220/255,20/255,60/255],cyan:[0,1,1],darkblue:[0,0,139/255],darkcyan:[0,139/255,139/255],darkgoldenrod:[184/255,134/255,11/255],darkgray:[169/255,169/255,169/255],darkgreen:[0,100/255,0],darkgrey:[169/255,169/255,169/255],darkkhaki:[189/255,183/255,107/255],darkmagenta:[139/255,0,139/255],darkolivegreen:[85/255,107/255,47/255],darkorange:[1,140/255,0],darkorchid:[153/255,50/255,204/255],darkred:[139/255,0,0],darksalmon:[233/255,150/255,122/255],darkseagreen:[143/255,188/255,143/255],darkslateblue:[72/255,61/255,139/255],darkslategray:[47/255,79/255,79/255],darkslategrey:[47/255,79/255,79/255],darkturquoise:[0,206/255,209/255],darkviolet:[148/255,0,211/255],deeppink:[1,20/255,147/255],deepskyblue:[0,191/255,1],dimgray:[105/255,105/255,105/255],dimgrey:[105/255,105/255,105/255],dodgerblue:[30/255,144/255,1],firebrick:[178/255,34/255,34/255],floralwhite:[1,250/255,240/255],forestgreen:[34/255,139/255,34/255],fuchsia:[1,0,1],gainsboro:[220/255,220/255,220/255],ghostwhite:[248/255,248/255,1],gold:[1,215/255,0],goldenrod:[218/255,165/255,32/255],gray:[128/255,128/255,128/255],green:[0,128/255,0],greenyellow:[173/255,1,47/255],grey:[128/255,128/255,128/255],honeydew:[240/255,1,240/255],hotpink:[1,105/255,180/255],indianred:[205/255,92/255,92/255],indigo:[75/255,0,130/255],ivory:[1,1,240/255],khaki:[240/255,230/255,140/255],lavender:[230/255,230/255,250/255],lavenderblush:[1,240/255,245/255],lawngreen:[124/255,252/255,0],lemonchiffon:[1,250/255,205/255],lightblue:[173/255,216/255,230/255],lightcoral:[240/255,128/255,128/255],lightcyan:[224/255,1,1],lightgoldenrodyellow:[250/255,250/255,210/255],lightgray:[211/255,211/255,211/255],lightgreen:[144/255,238/255,144/255],lightgrey:[211/255,211/255,211/255],lightpink:[1,182/255,193/255],lightsalmon:[1,160/255,122/255],lightseagreen:[32/255,178/255,170/255],lightskyblue:[135/255,206/255,250/255],lightslategray:[119/255,136/255,153/255],lightslategrey:[119/255,136/255,153/255],lightsteelblue:[176/255,196/255,222/255],lightyellow:[1,1,224/255],lime:[0,1,0],limegreen:[50/255,205/255,50/255],linen:[250/255,240/255,230/255],magenta:[1,0,1],maroon:[128/255,0,0],mediumaquamarine:[102/255,205/255,170/255],mediumblue:[0,0,205/255],mediumorchid:[186/255,85/255,211/255],mediumpurple:[147/255,112/255,219/255],mediumseagreen:[60/255,179/255,113/255],mediumslateblue:[123/255,104/255,238/255],mediumspringgreen:[0,250/255,154/255],mediumturquoise:[72/255,209/255,204/255],mediumvioletred:[199/255,21/255,133/255],midnightblue:[25/255,25/255,112/255],mintcream:[245/255,1,250/255],mistyrose:[1,228/255,225/255],moccasin:[1,228/255,181/255],navajowhite:[1,222/255,173/255],navy:[0,0,128/255],oldlace:[253/255,245/255,230/255],olive:[128/255,128/255,0],olivedrab:[107/255,142/255,35/255],orange:[1,165/255,0],orangered:[1,69/255,0],orchid:[218/255,112/255,214/255],palegoldenrod:[238/255,232/255,170/255],palegreen:[152/255,251/255,152/255],paleturquoise:[175/255,238/255,238/255],palevioletred:[219/255,112/255,147/255],papayawhip:[1,239/255,213/255],peachpuff:[1,218/255,185/255],peru:[205/255,133/255,63/255],pink:[1,192/255,203/255],plum:[221/255,160/255,221/255],powderblue:[176/255,224/255,230/255],purple:[128/255,0,128/255],rebeccapurple:[102/255,51/255,153/255],red:[1,0,0],rosybrown:[188/255,143/255,143/255],royalblue:[65/255,105/255,225/255],saddlebrown:[139/255,69/255,19/255],salmon:[250/255,128/255,114/255],sandybrown:[244/255,164/255,96/255],seagreen:[46/255,139/255,87/255],seashell:[1,245/255,238/255],sienna:[160/255,82/255,45/255],silver:[192/255,192/255,192/255],skyblue:[135/255,206/255,235/255],slateblue:[106/255,90/255,205/255],slategray:[112/255,128/255,144/255],slategrey:[112/255,128/255,144/255],snow:[1,250/255,250/255],springgreen:[0,1,127/255],steelblue:[70/255,130/255,180/255],tan:[210/255,180/255,140/255],teal:[0,128/255,128/255],thistle:[216/255,191/255,216/255],tomato:[1,99/255,71/255],turquoise:[64/255,224/255,208/255],violet:[238/255,130/255,238/255],wheat:[245/255,222/255,179/255],white:[1,1,1],whitesmoke:[245/255,245/255,245/255],yellow:[1,1,0],yellowgreen:[154/255,205/255,50/255]},Sg=Array(3).fill(\"<percentage> | <number>[0, 255]\"),Ag=Array(3).fill(\"<number>[0, 255]\"),_d=new bo({id:\"srgb\",name:\"sRGB\",base:gx,fromBase:e=>e.map(t=>{let s=t<0?-1:1,r=t*s;return r>.0031308?s*(1.055*r**(1/2.4)-.055):12.92*t}),toBase:e=>e.map(t=>{let s=t<0?-1:1,r=t*s;return r<=.04045?t/12.92:s*((r+.055)/1.055)**2.4}),formats:{rgb:{coords:Sg},rgb_number:{name:\"rgb\",commas:!0,coords:Ag,noAlpha:!0},color:{},rgba:{coords:Sg,commas:!0,lastAlpha:!0},rgba_number:{name:\"rgba\",commas:!0,coords:Ag},hex:{type:\"custom\",toGamut:!0,test:e=>/^#([a-f0-9]{3,4}){1,2}$/i.test(e),parse(e){e.length<=5&&(e=e.replace(/[a-f0-9]/gi,\"$&$&\"));let t=[];return e.replace(/[a-f0-9]{2}/gi,s=>{t.push(parseInt(s,16)/255)}),{spaceId:\"srgb\",coords:t.slice(0,3),alpha:t.slice(3)[0]}},serialize:(e,t,{collapse:s=!0}={})=>{t<1&&e.push(t),e=e.map(o=>Math.round(o*255));let r=s&&e.every(o=>o%17===0);return\"#\"+e.map(o=>r?(o/17).toString(16):o.toString(16).padStart(2,\"0\")).join(\"\")}},keyword:{type:\"custom\",test:e=>/^[a-z]+$/i.test(e),parse(e){e=e.toLowerCase();let t={spaceId:\"srgb\",coords:null,alpha:1};if(e===\"transparent\"?(t.coords=Tg.black,t.alpha=0):t.coords=Tg[e],t.coords)return t}}}}),xx=new bo({id:\"p3\",cssId:\"display-p3\",name:\"P3\",base:yx,fromBase:_d.fromBase,toBase:_d.toBase});Fo.display_space=_d;var pM;if(typeof CSS<\"u\"&&CSS.supports)for(let e of[Lo,hx,xx]){let t=Pl({space:e,coords:e.getMinCoords(),alpha:1});if(CSS.supports(\"color\",t)){Fo.display_space=e;break}}function mM(e,{space:t=Fo.display_space,...s}={}){let r=Pl(e,s);if(typeof CSS>\"u\"||CSS.supports(\"color\",r)||!Fo.display_space)r=new String(r),r.color=e;else{let o=e;if((e.coords.some(Ma)||Ma(e.alpha))&&!(pM??=CSS.supports(\"color\",\"hsl(none 50% 50%)\"))&&(o=cd(e),o.coords=o.coords.map(_r),o.alpha=_r(o.alpha),r=Pl(o,s),CSS.supports(\"color\",r)))return r=new String(r),r.color=o,r;o=qs(o,t),r=new String(Pl(o,s)),r.color=o}return r}function fM(e,t){return e=Bt(e),t=Bt(t),e.space===t.space&&e.alpha===t.alpha&&e.coords.every((s,r)=>s===t.coords[r])}function Ca(e){return Do(e,[Or,\"y\"])}function bx(e,t){Jn(e,[Or,\"y\"],t)}function vM(e){Object.defineProperty(e.prototype,\"luminance\",{get(){return Ca(this)},set(t){bx(this,t)}})}var hM=Object.freeze({__proto__:null,getLuminance:Ca,register:vM,setLuminance:bx});function yM(e,t){e=Bt(e),t=Bt(t);let s=Math.max(Ca(e),0),r=Math.max(Ca(t),0);return r>s&&([s,r]=[r,s]),(s+.05)/(r+.05)}var gM=.56,xM=.57,bM=.62,wM=.65,Eg=.022,TM=1.414,SM=.1,AM=5e-4,EM=1.14,Pg=.027,PM=1.14;function Mg(e){return e>=Eg?e:e+(Eg-e)**TM}function ad(e){let t=e<0?-1:1,s=Math.abs(e);return t*Math.pow(s,2.4)}function MM(e,t){t=Bt(t),e=Bt(e);let s,r,o,n,i,d;t=qs(t,\"srgb\"),[n,i,d]=t.coords;let l=ad(n)*.2126729+ad(i)*.7151522+ad(d)*.072175;e=qs(e,\"srgb\"),[n,i,d]=e.coords;let c=ad(n)*.2126729+ad(i)*.7151522+ad(d)*.072175,_=Mg(l),p=Mg(c),f=p>_;return Math.abs(p-_)<AM?r=0:f?(s=p**gM-_**xM,r=s*EM):(s=p**wM-_**bM,r=s*PM),Math.abs(r)<SM?o=0:r>0?o=r-Pg:o=r+Pg,o*100}function kM(e,t){e=Bt(e),t=Bt(t);let s=Math.max(Ca(e),0),r=Math.max(Ca(t),0);r>s&&([s,r]=[r,s]);let o=s+r;return o===0?0:(s-r)/o}var $M=5e4;function CM(e,t){e=Bt(e),t=Bt(t);let s=Math.max(Ca(e),0),r=Math.max(Ca(t),0);return r>s&&([s,r]=[r,s]),r===0?$M:(s-r)/r}function RM(e,t){e=Bt(e),t=Bt(t);let s=Do(e,[Lo,\"l\"]),r=Do(t,[Lo,\"l\"]);return Math.abs(s-r)}var UM=216/24389,kg=24/116,Ku=24389/27,g1=ao.D65,R1=new _t({id:\"lab-d65\",name:\"Lab D65\",coords:{l:{refRange:[0,100],name:\"Lightness\"},a:{refRange:[-125,125]},b:{refRange:[-125,125]}},white:g1,base:Or,fromBase(e){let t=e.map((s,r)=>s/g1[r]).map(s=>s>UM?Math.cbrt(s):(Ku*s+16)/116);return[116*t[1]-16,500*(t[0]-t[1]),200*(t[1]-t[2])]},toBase(e){let t=[];return t[1]=(e[0]+16)/116,t[0]=e[1]/500+t[1],t[2]=t[1]-e[2]/200,[t[0]>kg?Math.pow(t[0],3):(116*t[0]-16)/Ku,e[0]>8?Math.pow((e[0]+16)/116,3):e[0]/Ku,t[2]>kg?Math.pow(t[2],3):(116*t[2]-16)/Ku].map((s,r)=>s*g1[r])},formats:{\"lab-d65\":{coords:[\"<number> | <percentage>\",\"<number> | <percentage>[-1,1]\",\"<number> | <percentage>[-1,1]\"]}}}),x1=Math.pow(5,.5)*.5+.5;function zM(e,t){e=Bt(e),t=Bt(t);let s=Do(e,[R1,\"l\"]),r=Do(t,[R1,\"l\"]),o=Math.abs(Math.pow(s,x1)-Math.pow(r,x1)),n=Math.pow(o,1/x1)*Math.SQRT2-40;return n<7.5?0:n}var Ju=Object.freeze({__proto__:null,contrastAPCA:MM,contrastDeltaPhi:zM,contrastLstar:RM,contrastMichelson:kM,contrastWCAG21:yM,contrastWeber:CM});function GM(e,t,s={}){Cl(s)&&(s={algorithm:s});let{algorithm:r,...o}=s;if(!r){let n=Object.keys(Ju).map(i=>i.replace(/^contrast/,\"\")).join(\", \");throw new TypeError(`contrast() function needs a contrast algorithm. Please specify one of: ${n}`)}e=Bt(e),t=Bt(t);for(let n in Ju)if(\"contrast\"+r.toLowerCase()===n.toLowerCase())return Ju[n](e,t,o);throw new TypeError(`Unknown contrast algorithm: ${r}`)}function a_(e){let[t,s,r]=Rl(e,Or),o=t+15*s+3*r;return[4*t/o,9*s/o]}function wx(e){let[t,s,r]=Rl(e,Or),o=t+s+r;return[t/o,s/o]}function DM(e){Object.defineProperty(e.prototype,\"uv\",{get(){return a_(this)}}),Object.defineProperty(e.prototype,\"xy\",{get(){return wx(this)}})}var LM=Object.freeze({__proto__:null,register:DM,uv:a_,xy:wx});function El(e,t,s={}){Cl(s)&&(s={method:s});let{method:r=Fo.deltaE,...o}=s;for(let n in ud)if(\"deltae\"+r.toLowerCase()===n.toLowerCase())return ud[n](e,t,o);throw new TypeError(`Unknown deltaE method: ${r}`)}function FM(e,t=.25){return Jn(e,[_t.get(\"oklch\",\"lch\"),\"l\"],s=>s*(1+t))}function BM(e,t=.25){return Jn(e,[_t.get(\"oklch\",\"lch\"),\"l\"],s=>s*(1-t))}var IM=Object.freeze({__proto__:null,darken:BM,lighten:FM});function Tx(e,t,s=.5,r={}){return[e,t]=[Bt(e),Bt(t)],Pa(s)===\"object\"&&([s,r]=[.5,s]),Ul(e,t,r)(s)}function Sx(e,t,s={}){let r;I1(e)&&([r,s]=[e,t],[e,t]=r.rangeArgs.colors);let{maxDeltaE:o,deltaEMethod:n,steps:i=2,maxSteps:d=1e3,...l}=s;r||([e,t]=[Bt(e),Bt(t)],r=Ul(e,t,l));let c=El(e,t),_=o>0?Math.max(i,Math.ceil(c/o)+1):i,p=[];if(d!==void 0&&(_=Math.min(_,d)),_===1)p=[{p:.5,color:r(.5)}];else{let f=1/(_-1);p=Array.from({length:_},(h,g)=>{let x=g*f;return{p:x,color:r(x)}})}if(o>0){let f=p.reduce((h,g,x)=>{if(x===0)return 0;let T=El(g.color,p[x-1].color,n);return Math.max(h,T)},0);for(;f>o;){f=0;for(let h=1;h<p.length&&p.length<d;h++){let g=p[h-1],x=p[h],T=(x.p+g.p)/2,S=r(T);f=Math.max(f,El(S,g.color),El(S,x.color)),p.splice(h,0,{p:T,color:r(T)}),h++}}}return p=p.map(f=>f.color),p}function Ul(e,t,s={}){if(I1(e)){let[l,c]=[e,t];return Ul(...l.rangeArgs.colors,{...l.rangeArgs.options,...c})}let{space:r,outputSpace:o,progression:n,premultiplied:i}=s;e=Bt(e),t=Bt(t),e=cd(e),t=cd(t);let d={colors:[e,t],options:s};if(r?r=_t.get(r):r=_t.registry[Fo.interpolationSpace]||e.space,o=o?_t.get(o):r,e=qs(e,r),t=qs(t,r),e=$a(e),t=$a(t),r.coords.h&&r.coords.h.type===\"angle\"){let l=s.hue=s.hue||\"shorter\",c=[r,\"h\"],[_,p]=[Do(e,c),Do(t,c)];isNaN(_)&&!isNaN(p)?_=p:isNaN(p)&&!isNaN(_)&&(p=_),[_,p]=SP(l,[_,p]),Jn(e,c,_),Jn(t,c,p)}return i&&(e.coords=e.coords.map(l=>l*e.alpha),t.coords=t.coords.map(l=>l*t.alpha)),Object.assign(l=>{l=n?n(l):l;let c=e.coords.map((f,h)=>{let g=t.coords[h];return Ml(f,g,l)}),_=Ml(e.alpha,t.alpha,l),p={space:r,coords:c,alpha:_};return i&&(p.coords=p.coords.map(f=>f/_)),o!==r&&(p=qs(p,o)),p},{rangeArgs:d})}function I1(e){return Pa(e)===\"function\"&&!!e.rangeArgs}Fo.interpolationSpace=\"lab\";function YM(e){e.defineFunction(\"mix\",Tx,{returns:\"color\"}),e.defineFunction(\"range\",Ul,{returns:\"function<color>\"}),e.defineFunction(\"steps\",Sx,{returns:\"array<color>\"})}var WM=Object.freeze({__proto__:null,isRange:I1,mix:Tx,range:Ul,register:YM,steps:Sx}),Ax=new _t({id:\"hsl\",name:\"HSL\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},s:{range:[0,100],name:\"Saturation\"},l:{range:[0,100],name:\"Lightness\"}},base:_d,fromBase:e=>{let t=Math.max(...e),s=Math.min(...e),[r,o,n]=e,[i,d,l]=[NaN,0,(s+t)/2],c=t-s;if(c!==0){switch(d=l===0||l===1?0:(t-l)/Math.min(l,1-l),t){case r:i=(o-n)/c+(o<n?6:0);break;case o:i=(n-r)/c+2;break;case n:i=(r-o)/c+4}i=i*60}return d<0&&(i+=180,d=Math.abs(d)),i>=360&&(i-=360),[i,d*100,l*100]},toBase:e=>{let[t,s,r]=e;t=t%360,t<0&&(t+=360),s/=100,r/=100;function o(n){let i=(n+t/30)%12,d=s*Math.min(r,1-r);return r-d*Math.max(-1,Math.min(i-3,9-i,1))}return[o(0),o(8),o(4)]},formats:{hsl:{coords:[\"<number> | <angle>\",\"<percentage>\",\"<percentage>\"]},hsla:{coords:[\"<number> | <angle>\",\"<percentage>\",\"<percentage>\"],commas:!0,lastAlpha:!0}}}),Ex=new _t({id:\"hsv\",name:\"HSV\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},s:{range:[0,100],name:\"Saturation\"},v:{range:[0,100],name:\"Value\"}},base:Ax,fromBase(e){let[t,s,r]=e;s/=100,r/=100;let o=r+s*Math.min(r,1-r);return[t,o===0?0:200*(1-r/o),100*o]},toBase(e){let[t,s,r]=e;s/=100,r/=100;let o=r*(1-s/2);return[t,o===0||o===1?0:(r-o)/Math.min(o,1-o)*100,o*100]},formats:{color:{id:\"--hsv\",coords:[\"<number> | <angle>\",\"<percentage> | <number>\",\"<percentage> | <number>\"]}}}),OM=new _t({id:\"hwb\",name:\"HWB\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},w:{range:[0,100],name:\"Whiteness\"},b:{range:[0,100],name:\"Blackness\"}},base:Ex,fromBase(e){let[t,s,r]=e;return[t,r*(100-s)/100,100-r]},toBase(e){let[t,s,r]=e;s/=100,r/=100;let o=s+r;if(o>=1)return[t,0,s/o*100];let n=1-r;return[t,(n===0?0:1-s/n)*100,n*100]},formats:{hwb:{coords:[\"<number> | <angle>\",\"<percentage> | <number>\",\"<percentage> | <number>\"]}}}),Px=new bo({id:\"a98rgb-linear\",cssId:\"--a98-rgb-linear\",name:\"Linear Adobe\\xAE 98 RGB compatible\",white:\"D65\",toXYZ_M:[[.5766690429101305,.1855582379065463,.1882286462349947],[.29734497525053605,.6273635662554661,.07529145849399788],[.02703136138641234,.07068885253582723,.9913375368376388]],fromXYZ_M:[[2.0415879038107465,-.5650069742788596,-.34473135077832956],[-.9692436362808795,1.8759675015077202,.04155505740717557],[.013444280632031142,-.11836239223101838,1.0151749943912054]]}),VM=new bo({id:\"a98rgb\",cssId:\"a98-rgb\",name:\"Adobe\\xAE 98 RGB compatible\",base:Px,toBase:e=>e.map(t=>Math.pow(Math.abs(t),563/256)*Math.sign(t)),fromBase:e=>e.map(t=>Math.pow(Math.abs(t),256/563)*Math.sign(t))}),Mx=new bo({id:\"prophoto-linear\",cssId:\"--prophoto-rgb-linear\",name:\"Linear ProPhoto\",white:\"D50\",base:L1,toXYZ_M:[[.7977666449006423,.13518129740053308,.0313477341283922],[.2880748288194013,.711835234241873,8993693872564e-17],[0,0,.8251046025104602]],fromXYZ_M:[[1.3457868816471583,-.25557208737979464,-.05110186497554526],[-.5446307051249019,1.5082477428451468,.02052744743642139],[0,0,1.2119675456389452]]}),NM=1/512,qM=16/512,XM=new bo({id:\"prophoto\",cssId:\"prophoto-rgb\",name:\"ProPhoto\",base:Mx,toBase(e){return e.map(t=>t<qM?t/16:t**1.8)},fromBase(e){return e.map(t=>t>=NM?t**(1/1.8):16*t)}}),HM=new _t({id:\"oklch\",name:\"Oklch\",coords:{l:{refRange:[0,1],name:\"Lightness\"},c:{refRange:[0,.4],name:\"Chroma\"},h:{refRange:[0,360],type:\"angle\",name:\"Hue\"}},white:\"D65\",base:ld,fromBase(e){let[t,s,r]=e,o,n=2e-4;return Math.abs(s)<n&&Math.abs(r)<n?o=NaN:o=Math.atan2(r,s)*180/Math.PI,[t,Math.sqrt(s**2+r**2),zn(o)]},toBase(e){let[t,s,r]=e,o,n;return isNaN(r)?(o=0,n=0):(o=s*Math.cos(r*Math.PI/180),n=s*Math.sin(r*Math.PI/180)),[t,o,n]},formats:{oklch:{coords:[\"<percentage> | <number>\",\"<number> | <percentage>[0,1]\",\"<number> | <angle>\"]}}}),kx=ao.D65,jM=216/24389,$g=24389/27,[Cg,Rg]=a_({space:Or,coords:kx}),$x=new _t({id:\"luv\",name:\"Luv\",coords:{l:{refRange:[0,100],name:\"Lightness\"},u:{refRange:[-215,215]},v:{refRange:[-215,215]}},white:kx,base:Or,fromBase(e){let t=[_r(e[0]),_r(e[1]),_r(e[2])],s=t[1],[r,o]=a_({space:Or,coords:t});if(!Number.isFinite(r)||!Number.isFinite(o))return[0,0,0];let n=s<=jM?$g*s:116*Math.cbrt(s)-16;return[n,13*n*(r-Cg),13*n*(o-Rg)]},toBase(e){let[t,s,r]=e;if(t===0||Ma(t))return[0,0,0];s=_r(s),r=_r(r);let o=s/(13*t)+Cg,n=r/(13*t)+Rg,i=t<=8?t/$g:Math.pow((t+16)/116,3);return[i*(9*o/(4*n)),i,i*((12-3*o-20*n)/(4*n))]},formats:{color:{id:\"--luv\",coords:[\"<number> | <percentage>\",\"<number> | <percentage>[-1,1]\",\"<number> | <percentage>[-1,1]\"]}}}),Y1=new _t({id:\"lchuv\",name:\"LChuv\",coords:{l:{refRange:[0,100],name:\"Lightness\"},c:{refRange:[0,220],name:\"Chroma\"},h:{refRange:[0,360],type:\"angle\",name:\"Hue\"}},base:$x,fromBase(e){let[t,s,r]=e,o,n=.02;return Math.abs(s)<n&&Math.abs(r)<n?o=NaN:o=Math.atan2(r,s)*180/Math.PI,[t,Math.sqrt(s**2+r**2),zn(o)]},toBase(e){let[t,s,r]=e;return s<0&&(s=0),isNaN(r)&&(r=0),[t,s*Math.cos(r*Math.PI/180),s*Math.sin(r*Math.PI/180)]},formats:{color:{id:\"--lchuv\",coords:[\"<number> | <percentage>\",\"<number> | <percentage>\",\"<number> | <angle>\"]}}}),KM=216/24389,ZM=24389/27,Ug=gr[0][0],zg=gr[0][1],b1=gr[0][2],Gg=gr[1][0],Dg=gr[1][1],w1=gr[1][2],Lg=gr[2][0],Fg=gr[2][1],T1=gr[2][2];function id(e,t,s){let r=t/(Math.sin(s)-e*Math.cos(s));return r<0?1/0:r}function r_(e){let t=Math.pow(e+16,3)/1560896,s=t>KM?t:e/ZM,r=s*(284517*Ug-94839*b1),o=s*(838422*b1+769860*zg+731718*Ug),n=s*(632260*b1-126452*zg),i=s*(284517*Gg-94839*w1),d=s*(838422*w1+769860*Dg+731718*Gg),l=s*(632260*w1-126452*Dg),c=s*(284517*Lg-94839*T1),_=s*(838422*T1+769860*Fg+731718*Lg),p=s*(632260*T1-126452*Fg);return{r0s:r/n,r0i:o*e/n,r1s:r/(n+126452),r1i:(o-769860)*e/(n+126452),g0s:i/l,g0i:d*e/l,g1s:i/(l+126452),g1i:(d-769860)*e/(l+126452),b0s:c/p,b0i:_*e/p,b1s:c/(p+126452),b1i:(_-769860)*e/(p+126452)}}function Bg(e,t){let s=t/360*Math.PI*2,r=id(e.r0s,e.r0i,s),o=id(e.r1s,e.r1i,s),n=id(e.g0s,e.g0i,s),i=id(e.g1s,e.g1i,s),d=id(e.b0s,e.b0i,s),l=id(e.b1s,e.b1i,s);return Math.min(r,o,n,i,d,l)}var QM=new _t({id:\"hsluv\",name:\"HSLuv\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},s:{range:[0,100],name:\"Saturation\"},l:{range:[0,100],name:\"Lightness\"}},base:Y1,gamutSpace:_d,fromBase(e){let[t,s,r]=[_r(e[0]),_r(e[1]),_r(e[2])],o;return t>99.9999999?(o=0,t=100):t<1e-8?(o=0,t=0):o=s/Bg(r_(t),r)*100,[r,o,t]},toBase(e){let[t,s,r]=[_r(e[0]),_r(e[1]),_r(e[2])],o;return r>99.9999999?(r=100,o=0):r<1e-8?(r=0,o=0):o=Bg(r_(r),t)/100*s,[r,o,t]},formats:{color:{id:\"--hsluv\",coords:[\"<number> | <angle>\",\"<percentage> | <number>\",\"<percentage> | <number>\"]}}});gr[0][0];gr[0][1];gr[0][2];gr[1][0];gr[1][1];gr[1][2];gr[2][0];gr[2][1];gr[2][2];function dd(e,t){return Math.abs(t)/Math.sqrt(Math.pow(e,2)+1)}function Ig(e){let t=dd(e.r0s,e.r0i),s=dd(e.r1s,e.r1i),r=dd(e.g0s,e.g0i),o=dd(e.g1s,e.g1i),n=dd(e.b0s,e.b0i),i=dd(e.b1s,e.b1i);return Math.min(t,s,r,o,n,i)}var JM=new _t({id:\"hpluv\",name:\"HPLuv\",coords:{h:{refRange:[0,360],type:\"angle\",name:\"Hue\"},s:{range:[0,100],name:\"Saturation\"},l:{range:[0,100],name:\"Lightness\"}},base:Y1,gamutSpace:\"self\",fromBase(e){let[t,s,r]=[_r(e[0]),_r(e[1]),_r(e[2])],o;return t>99.9999999?(o=0,t=100):t<1e-8?(o=0,t=0):o=s/Ig(r_(t))*100,[r,o,t]},toBase(e){let[t,s,r]=[_r(e[0]),_r(e[1]),_r(e[2])],o;return r>99.9999999?(r=100,o=0):r<1e-8?(r=0,o=0):o=Ig(r_(r))/100*s,[r,o,t]},formats:{color:{id:\"--hpluv\",coords:[\"<number> | <angle>\",\"<percentage> | <number>\",\"<percentage> | <number>\"]}}}),Yg=203,Wg=2610/2**14,ek=2**14/2610,tk=2523/2**5,Og=2**5/2523,Vg=3424/2**12,Ng=2413/2**7,qg=2392/2**7,sk=new bo({id:\"rec2100pq\",cssId:\"rec2100-pq\",name:\"REC.2100-PQ\",base:n_,toBase(e){return e.map(function(t){return(Math.max(t**Og-Vg,0)/(Ng-qg*t**Og))**ek*1e4/Yg})},fromBase(e){return e.map(function(t){let s=Math.max(t*Yg/1e4,0);return((Vg+Ng*s**Wg)/(1+qg*s**Wg))**tk})}}),Xg=.17883277,Hg=.28466892,jg=.55991073,S1=3.7743,rk=new bo({id:\"rec2100hlg\",cssId:\"rec2100-hlg\",name:\"REC.2100-HLG\",referred:\"scene\",base:n_,toBase(e){return e.map(function(t){return t<=.5?t**2/3*S1:(Math.exp((t-jg)/Xg)+Hg)/12*S1})},fromBase(e){return e.map(function(t){return t/=S1,t<=1/12?Math.sqrt(3*t):Xg*Math.log(12*t-Hg)+jg})}}),Cx={};ka.add(\"chromatic-adaptation-start\",e=>{e.options.method&&(e.M=Rx(e.W1,e.W2,e.options.method))});ka.add(\"chromatic-adaptation-end\",e=>{e.M||(e.M=Rx(e.W1,e.W2,e.options.method))});function i_({id:e,toCone_M:t,fromCone_M:s}){Cx[e]=arguments[0]}function Rx(e,t,s=\"Bradford\"){let r=Cx[s],[o,n,i]=Xs(r.toCone_M,e),[d,l,c]=Xs(r.toCone_M,t),_=Xs([[d/o,0,0],[0,l/n,0],[0,0,c/i]],r.toCone_M);return Xs(r.fromCone_M,_)}i_({id:\"von Kries\",toCone_M:[[.40024,.7076,-.08081],[-.2263,1.16532,.0457],[0,0,.91822]],fromCone_M:[[1.8599363874558397,-1.1293816185800916,.21989740959619328],[.3611914362417676,.6388124632850422,-6370596838649899e-21],[0,0,1.0890636230968613]]});i_({id:\"Bradford\",toCone_M:[[.8951,.2664,-.1614],[-.7502,1.7135,.0367],[.0389,-.0685,1.0296]],fromCone_M:[[.9869929054667121,-.14705425642099013,.15996265166373122],[.4323052697233945,.5183602715367774,.049291228212855594],[-.00852866457517732,.04004282165408486,.96848669578755]]});i_({id:\"CAT02\",toCone_M:[[.7328,.4296,-.1624],[-.7036,1.6975,.0061],[.003,.0136,.9834]],fromCone_M:[[1.0961238208355142,-.27886900021828726,.18274517938277307],[.4543690419753592,.4735331543074117,.07209780371722911],[-.009627608738429355,-.00569803121611342,1.0153256399545427]]});i_({id:\"CAT16\",toCone_M:[[.401288,.650173,-.051461],[-.250268,1.204414,.045854],[-.002079,.048952,.953127]],fromCone_M:[[1.862067855087233,-1.0112546305316845,.14918677544445172],[.3875265432361372,.6214474419314753,-.008973985167612521],[-.01584149884933386,-.03412293802851557,1.0499644368778496]]});Object.assign(ao,{A:[1.0985,1,.35585],C:[.98074,1,1.18232],D55:[.95682,1,.92149],D75:[.94972,1,1.22638],E:[1,1,1],F2:[.99186,1,.67393],F7:[.95041,1,1.08747],F11:[1.00962,1,.6435]});ao.ACES=[.32168/.33767,1,.34065/.33767];var Ux=new bo({id:\"acescg\",cssId:\"--acescg\",name:\"ACEScg\",coords:{r:{range:[0,65504],name:\"Red\"},g:{range:[0,65504],name:\"Green\"},b:{range:[0,65504],name:\"Blue\"}},referred:\"scene\",white:ao.ACES,toXYZ_M:[[.6624541811085053,.13400420645643313,.1561876870049078],[.27222871678091454,.6740817658111484,.05368951740793705],[-.005574649490394108,.004060733528982826,1.0103391003129971]],fromXYZ_M:[[1.6410233796943257,-.32480329418479,-.23642469523761225],[-.6636628587229829,1.6153315916573379,.016756347685530137],[.011721894328375376,-.008284441996237409,.9883948585390215]]}),Zu=2**-16,A1=-.35828683,Qu=(Math.log2(65504)+9.72)/17.52,ok=new bo({id:\"acescc\",cssId:\"--acescc\",name:\"ACEScc\",coords:{r:{range:[A1,Qu],name:\"Red\"},g:{range:[A1,Qu],name:\"Green\"},b:{range:[A1,Qu],name:\"Blue\"}},referred:\"scene\",base:Ux,toBase(e){let t=-.3013698630136986;return e.map(function(s){return s<=t?(2**(s*17.52-9.72)-Zu)*2:s<Qu?2**(s*17.52-9.72):65504})},fromBase(e){return e.map(function(t){return t<=0?(Math.log2(Zu)+9.72)/17.52:t<Zu?(Math.log2(Zu+t*.5)+9.72)/17.52:(Math.log2(t)+9.72)/17.52})}}),Kg=Object.freeze({__proto__:null,A98RGB:VM,A98RGB_Linear:Px,ACEScc:ok,ACEScg:Ux,CAM16_JMh:sM,HCT:$l,HPLuv:JM,HSL:Ax,HSLuv:QM,HSV:Ex,HWB:OM,ICTCP:k1,JzCzHz:M1,Jzazbz:ix,LCH:kl,LCHuv:Y1,Lab:Lo,Lab_D65:R1,Luv:$x,OKLCH:HM,OKLab:ld,P3:xx,P3_Linear:yx,ProPhoto:XM,ProPhoto_Linear:Mx,REC_2020:hx,REC_2020_Linear:n_,REC_2100_HLG:rk,REC_2100_PQ:sk,XYZ_ABS_D65:F1,XYZ_D50:L1,XYZ_D65:Or,sRGB:_d,sRGB_Linear:gx}),io=class xo{constructor(...t){let s;t.length===1&&(s=Bt(t[0]));let r,o,n;s?(r=s.space||s.spaceId,o=s.coords,n=s.alpha):[r,o,n]=t,Object.defineProperty(this,\"space\",{value:_t.get(r),writable:!1,enumerable:!0,configurable:!0}),this.coords=o?o.slice():[0,0,0],this.alpha=n>1||n===void 0?1:n<0?0:n;for(let i=0;i<this.coords.length;i++)this.coords[i]===\"NaN\"&&(this.coords[i]=NaN);for(let i in this.space.coords)Object.defineProperty(this,i,{get:()=>this.get(i),set:d=>this.set(i,d)})}get spaceId(){return this.space.id}clone(){return new xo(this.space,this.coords,this.alpha)}toJSON(){return{spaceId:this.spaceId,coords:this.coords,alpha:this.alpha}}display(...t){let s=mM(this,...t);return s.color=new xo(s.color),s}static get(t,...s){return t instanceof xo?t:new xo(t,...s)}static defineFunction(t,s,r=s){let{instance:o=!0,returns:n}=r,i=function(...d){let l=s(...d);if(n===\"color\")l=xo.get(l);else if(n===\"function<color>\"){let c=l;l=function(..._){let p=c(..._);return xo.get(p)},Object.assign(l,c)}else n===\"array<color>\"&&(l=l.map(c=>xo.get(c)));return l};t in xo||(xo[t]=i),o&&(xo.prototype[t]=function(...d){return i(this,...d)})}static defineFunctions(t){for(let s in t)xo.defineFunction(s,t[s],t[s])}static extend(t){if(t.register)t.register(xo);else for(let s in t)xo.defineFunction(s,t[s])}};io.defineFunctions({get:Do,getAll:Rl,set:Jn,setAll:D1,to:qs,equals:fM,inGamut:yi,toGamut:$a,distance:ax,toString:Pl});Object.assign(io,{util:yP,hooks:ka,WHITES:ao,Space:_t,spaces:_t.registry,parse:ox,defaults:Fo});for(let e of Object.keys(Kg))_t.register(Kg[e]);for(let e in _t.registry)U1(e,_t.registry[e]);ka.add(\"colorspace-init-end\",e=>{U1(e.id,e),e.aliases?.forEach(t=>{U1(t,e)})});function U1(e,t){let s=e.replace(/-/g,\"_\");Object.defineProperty(io.prototype,s,{get(){let r=this.getAll(e);return typeof Proxy>\"u\"?r:new Proxy(r,{has:(o,n)=>{try{return _t.resolveCoord([t,n]),!0}catch{}return Reflect.has(o,n)},get:(o,n,i)=>{if(n&&typeof n!=\"symbol\"&&!(n in o)){let{index:d}=_t.resolveCoord([t,n]);if(d>=0)return o[d]}return Reflect.get(o,n,i)},set:(o,n,i,d)=>{if(n&&typeof n!=\"symbol\"&&!(n in o)||n>=0){let{index:l}=_t.resolveCoord([t,n]);if(l>=0)return o[l]=i,this.setAll(e,o),!0}return Reflect.set(o,n,i,d)}})},set(r){this.setAll(e,r)},configurable:!0,enumerable:!0})}io.extend(ud);io.extend({deltaE:El});Object.assign(io,{deltaEMethods:ud});io.extend(IM);io.extend({contrast:GM});io.extend(LM);io.extend(hM);io.extend(WM);io.extend(Ju);var zx=\"p3-linear\",Gx=e=>{zx=e},Dx=e=>e?1:-1;function nk(e){try{let t=new io(e),s=zx===\"srgb\"?\"srgb-linear\":\"p3-linear\",r=t.to(s).coords,o=Number(t.alpha);return{r:Number.isFinite(r?.[0])?r[0]:0,g:Number.isFinite(r?.[1])?r[1]:0,b:Number.isFinite(r?.[2])?r[2]:0,a:Number.isFinite(o)?o:1}}catch{return{r:0,g:0,b:0,a:0}}}var ke=e=>nk(e),ct=e=>{let t=.5,s=.5,r=(n,i=!1)=>{if(typeof n==\"number\")return n;if(typeof n==\"object\"&&n!==null)return n.value;let d=n.toLowerCase().trim();if(i){if(d===\"top\")return 0;if(d===\"bottom\")return 1;if(d===\"center\")return .5}else{if(d===\"left\")return 0;if(d===\"right\")return 1;if(d===\"center\")return .5}return console.warn(`Invalid position value: ${n}. Defaulting to center.`),.5};if(typeof e==\"string\"){let n=e.toLowerCase().trim().split(/\\s+/);n.includes(\"left\")?t=0:n.includes(\"right\")?t=1:(n.includes(\"center\")||n.length===1&&(n[0]===\"top\"||n[0]===\"bottom\"))&&(t=.5),n.includes(\"top\")?s=0:n.includes(\"bottom\")?s=1:(n.includes(\"center\")||n.length===1&&(n[0]===\"left\"||n[0]===\"right\"))&&(s=.5),n.length===1&&n[0]===\"center\"&&(t=.5,s=.5)}else typeof e==\"object\"&&e!==null?(t=r(e.x,!1),s=r(e.y,!0)):console.warn(`Invalid position value provided: ${e}. Defaulting to center.`);let o=1-s;return{x:t,y:o}},Ra=e=>{if(typeof e==\"number\")return(e%360+360)%360;let t=e.toLowerCase().trim();switch(t){case\"to right\":return 0;case\"to bottom\":return 90;case\"to left\":return 180;case\"to top\":return 270;case\"to bottom right\":case\"to right bottom\":return 45;case\"to bottom left\":case\"to left bottom\":return 135;case\"to top left\":case\"to left top\":return 225;case\"to top right\":case\"to right top\":return 315;case\"from left\":return 0;case\"from top\":return 90;case\"from right\":return 180;case\"from bottom\":return 270;case\"from top left\":return 45;case\"from top right\":return 135;case\"from bottom right\":return 225;case\"from bottom left\":return 315;default:let s=t.match(/^(-?\\d*\\.?\\d+)(deg|rad|turn)?$/);if(s){let[,r,o=\"deg\"]=s,n=parseFloat(r);switch(o){case\"deg\":return(n%360+360)%360;case\"rad\":return(n*180/Math.PI%360+360)%360;case\"turn\":return(n*360%360+360)%360;default:return(n%360+360)%360}}return console.warn(`Invalid angle value: ${e}. Defaulting to 0 degrees.`),0}};var Lx=e=>({outside:0,center:1,inside:2})[e?.toLowerCase()]??1,At=[{label:\"Linear RGB\",value:\"linear\"},{label:\"OKLCh\",value:\"oklch\"},{label:\"OKLAB\",value:\"oklab\"},{label:\"HSL\",value:\"hsl\"},{label:\"HSV\",value:\"hsv\"},{label:\"LCH\",value:\"lch\"}],ft=e=>{let t={linear:0,oklch:1,oklab:2,hsl:3,hsv:4,lch:5}[e.toLowerCase()];return t===void 0?(console.warn(`Invalid color space mode: ${e}. Defaulting to 'linear'.`),0):t};var ak=Object.defineProperty,Pn=e=>{let t={};for(var s in e)ak(t,s,{get:e[s],enumerable:!0});return t};function Bo(e){typeof Symbol[e]>\"u\"&&Object.defineProperty(Symbol,e,{value:Symbol.for(`Symbol.${e}`),writable:!1,enumerable:!1,configurable:!1})}function Fx(e,t){return typeof e?.[t]==\"function\"}function Zd(e,t,s,r){let o=Vr.deferOperation;return Fx(e,s)&&(o=e[s](e,t)),o===Vr.deferOperation&&Fx(t,s)&&(o=t[s](e,t)),o===Vr.deferOperation?r(e,t):o}var ik=(e,t)=>e+t;function dk(e,t){return(typeof e==\"number\"||typeof e==\"string\")&&(typeof t==\"number\"||typeof t==\"string\")?e+t:Zd(e,t,Vr.plus,ik)}var lk=(e,t)=>e-t;function ck(e,t){return typeof e==\"number\"&&typeof t==\"number\"?e-t:Zd(e,t,Vr.minus,lk)}var uk=(e,t)=>e*t;function _k(e,t){return typeof e==\"number\"&&typeof t==\"number\"?e*t:Zd(e,t,Vr.star,uk)}var pk=(e,t)=>e/t;function mk(e,t){return typeof e==\"number\"&&typeof t==\"number\"?e/t:Zd(e,t,Vr.slash,pk)}var fk=(e,t)=>e**t;function vk(e,t){return typeof e==\"number\"&&typeof t==\"number\"?e**t:Zd(e,t,Vr.starStar,fk)}var hk=(e,t)=>e%t;function yk(e,t){return typeof e==\"number\"&&typeof t==\"number\"?e%t:Zd(e,t,Vr.percent,hk)}var Vr=(Bo(\"deferOperation\"),Bo(\"operatorPlus\"),Bo(\"operatorMinus\"),Bo(\"operatorStar\"),Bo(\"operatorSlash\"),Bo(\"operatorStarStar\"),Bo(\"operatorPercent\"),Bo(\"operatorEqEq\"),Bo(\"operatorPrePlusPlus\"),Bo(\"operatorPreMinusMinus\"),Bo(\"operatorPostPlusPlus\"),Bo(\"operatorPostMinusMinus\"),Bo(\"operatorPreMinus\"),globalThis.__tsover_add=dk,globalThis.__tsover_sub=ck,globalThis.__tsover_mul=_k,globalThis.__tsover_div=mk,globalThis.__tsover_pow=vk,globalThis.__tsover_mod=yk,{deferOperation:Symbol.deferOperation,plus:Symbol.operatorPlus,minus:Symbol.operatorMinus,star:Symbol.operatorStar,slash:Symbol.operatorSlash,starStar:Symbol.operatorStarStar,percent:Symbol.operatorPercent,eqEq:Symbol.operatorEqEq,prePlusPlus:Symbol.operatorPrePlusPlus,preMinusMinus:Symbol.operatorPreMinusMinus,postPlusPlus:Symbol.operatorPostPlusPlus,postMinusMinus:Symbol.operatorPostMinusMinus,preMinus:Symbol.operatorPreMinus}),sm=!1,ch=!1,kr=\"0.12.3\",q=Symbol(`typegpu:${kr}:$internal`),be=Symbol(`typegpu:${kr}:$soul`),$o=Symbol(`typegpu:${kr}:$gpuValueOf`),Pr=Symbol(`typegpu:${kr}:$getNameForward`),co=Symbol(`typegpu:${kr}:$providing`),Na=Symbol(`typegpu:${kr}:$ownSnippet`),ts=Symbol(`typegpu:${kr}:$resolve`),uh=Symbol(`typegpu:${kr}:$cast`),mr=Symbol(`typegpu:${kr}:$gpuCallable`),Qd=Symbol(`typegpu:${kr}:$repr`);`${kr}`;`${kr}`;`${kr}`;`${kr}`;`${kr}`;`${kr}`;`${kr}`;`${kr}`;`${kr}`;function Rt(e){return!!e?.[q]}var Ns={[q]:{},type:\"void\",toString(){return\"void\"}},gk=[\"bool\",\"f32\",\"f16\",\"i32\",\"u32\",\"u16\",\"vec2f\",\"vec2h\",\"vec2i\",\"vec2u\",\"vec2<bool>\",\"vec3f\",\"vec3h\",\"vec3i\",\"vec3u\",\"vec3<bool>\",\"vec4f\",\"vec4h\",\"vec4i\",\"vec4u\",\"vec4<bool>\",\"mat2x2f\",\"mat3x3f\",\"mat4x4f\",\"struct\",\"array\",\"ptr\",\"atomic\",\"decorated\",\"abstractInt\",\"abstractFloat\",\"void\",\"texture_1d\",\"texture_storage_1d\",\"texture_2d\",\"texture_storage_2d\",\"texture_multisampled_2d\",\"texture_depth_2d\",\"texture_depth_multisampled_2d\",\"texture_2d_array\",\"texture_storage_2d_array\",\"texture_depth_2d_array\",\"texture_cube\",\"texture_depth_cube\",\"texture_cube_array\",\"texture_depth_cube_array\",\"texture_3d\",\"texture_storage_3d\",\"texture_external\",\"sampler\",\"sampler_comparison\"];function Xr(e){let t=e;return Rt(t)&&typeof t.kind==\"string\"&&t.kind.startsWith(\"vec\")}function xk(e){return Xr(e)&&e.kind.includes(\"b\")}function bk(e){let t=e;return Rt(t)&&typeof t.type==\"string\"&&t.type.startsWith(\"vec2\")}function wk(e){let t=e;return Rt(t)&&typeof t.type==\"string\"&&t.type.startsWith(\"vec3\")}function Tk(e){let t=e;return Rt(t)&&typeof t.type==\"string\"&&t.type.startsWith(\"vec4\")}function as(e){return bk(e)||wk(e)||Tk(e)}function _h(e){return as(e)&&e.type.includes(\"b\")}function xn(e){let t=e;return Rt(t)&&typeof t.kind?.startsWith==\"function\"&&t.kind.startsWith(\"mat\")}function V5(e){return Rt(e)&&e?.type===\"mat2x2f\"}function N5(e){return Rt(e)&&e?.type===\"mat3x3f\"}function Sk(e){return Rt(e)&&e?.type===\"mat4x4f\"}function On(e){return V5(e)||N5(e)||Sk(e)}function q5(e){return Rt(e)&&[\"abstractInt\",\"i32\",\"u32\"].includes(e?.type)}function Ak(e){return as(e)&&q5(e.primitive)}function Bx(e){return Xr(e)&&[\"vec2f\",\"vec3f\",\"vec4f\"].includes(e.kind)}function H_(e){return Xr(e)&&/[iu]$/.test(e.kind)}function X5(e){return Xr(e)&&/[u]$/.test(e.kind)}function Oi(e){return Rt(e)&&gk.includes(e?.type)}function cr(e){return Rt(e)&&e?.type===\"array\"}function Es(e){return Rt(e)&&e?.type===\"struct\"}function Hr(e){return Rt(e)&&e?.type===\"ptr\"}function rm(e){return Rt(e)&&e?.type===\"atomic\"}function H5(e){return Rt(e)&&e?.type===\"@align\"}function j5(e){return Rt(e)&&e?.type===\"@size\"}function K5(e){return Rt(e)&&e?.type===\"@location\"}function Ek(e){return Rt(e)&&e?.type===\"@builtin\"}function ya(e){return Rt(e)&&e?.type===\"decorated\"}function om(e){return Rt(e)&&e.type===\"void\"}function Ga(e){return Rt(e)&&e.type===\"bool\"}function Gf(e){let t=e?.type;return Rt(e)&&(t===\"abstractInt\"||t===\"abstractFloat\"||t===\"f32\"||t===\"f16\"||t===\"i32\"||t===\"u32\")}function ph(e){let t=e?.type;return Rt(e)&&(t===\"f16\"||t===\"vec2h\"||t===\"vec3h\"||t===\"vec4h\")}var Pk=[\"abstractInt\",\"abstractFloat\",\"f32\",\"f16\",\"i32\",\"u32\",\"bool\"];function gn(e){return!Rt(e)||Pk.includes(e?.type)}function nm(e){return e.schema}var Mk=[\"deprecated\",\"suspicious\",\"fallback\",\"precision-loss\",\"implicit-conversion\",\"webgpu-feature-missing\",\"webgpu-limits-exceeded\",\"locations-mismatched\",\"log-limit-exceeded\",\"external-omitted\",\"uniform-schema-misaligned\"],kk=class{#e;#t;#s=new WeakMap;constructor(e){e?this.#e=[\"webgpu-feature-missing\",\"webgpu-limits-exceeded\",\"locations-mismatched\",\"log-limit-exceeded\",\"external-omitted\"]:this.#e=Mk,this.#t=new Set(this.#e)}disable(e){this.#t.delete(e)}reset(){this.#t=new Set(this.#e)}warn(e,...t){this.#t.has(e)&&console.warn(`\\u26A0\\uFE0F [${e}] `,...t)}warnOnce(e,t,s,...r){if(!this.#t.has(e))return;let o=this.#s.get(t);o||(o=new Set,this.#s.set(t,o));let n=`${e}:${s}`;o.has(n)||(o.add(n),this.warn(e,...r))}},Z5=new kk(!(sm||ch)),fs=Z5,Q5=Z5;function Oo(e){if(Array.isArray(e))return`[${e.map(Oo).join(\", \")}]`;let t=String(e);if(t!==\"[object Object]\")return t;try{return JSON.stringify(e)}catch(s){return fs.warn(\"suspicious\",\"Error parsing JSON:\",s),\"<invalid json>\"}}function Df(e){return Xr(e)||xn(e)?e.toString():Array.isArray(e)?`[${e.map(Df).join(\", \")}]`:e&&typeof e==\"object\"?`{ ${Object.entries(e).map(([t,s])=>`${t}: ${Df(s)}`).join(\", \")} }`:String(e)}function $k(e){let t={};for(let[s,r]of Object.entries(e))Object.defineProperty(t,s,{get:r,enumerable:!0});return t}function Ck(e){if(e.v===1){let t=e.externals;return{...e,externals:typeof t==\"function\"?t:()=>t}}if(e.v===2){let t=$k(e?.externals);return{...e,externals:()=>t}}throw new Error(`Unrecognized TypeGPU metadata format: ${Oo(e)}`)}var J5=\"0.12.3\",pa=globalThis;pa.__TYPEGPU_VERSION__!==void 0&&console.warn(`Found duplicate TypeGPU version. First was ${pa.__TYPEGPU_VERSION__}, this one is ${J5}. This may cause unexpected behavior.`);pa.__TYPEGPU_VERSION__=J5;pa.__TYPEGPU_AUTONAME__=(e,t)=>$d(e)&&Rt(e)&&!Re(e)?e.$name(t):e;var j_=new WeakMap;function $d(e){return!!e?.$name}function e6(e){return!!e?.[Pr]}function t6(e){return e?.[be]}function Re(e){return e6(e)?Re(e[Pr]):j_.get(e)??t6(e)?.label??pa.__TYPEGPU_META__?.get(e)?.name}function Tt(e,t){if(e6(e)){Tt(e[Pr],t);return}j_.set(e,t);let s=t6(e);s&&(s.label=t)}var Ix=new WeakMap;function mh(e){let t=pa.__TYPEGPU_META__?.get(e);if(t){pa.__TYPEGPU_META__?.delete(e);let s=Ck(t);Ix.set(e,s),t.name&&j_.get(e)===void 0&&j_.set(e,t.name)}return Ix.get(e)}function Cd(e){return typeof e==\"function\"&&!!mh(e)}var fh=(sm||ch)&&{get enabled(){return!!pa.__TYPEGPU_MEASURE_PERF__},record(e,t){let s=pa.__TYPEGPU_PERF_RECORDS__??=new Map,r=s.get(e);r||(r=[],s.set(e,r)),r.push(t)}}||void 0,W1=\"Invariant failed\";function Ws(e,t){if(e)return;if(!sm&&!ch)throw new Error(W1);let s=typeof t==\"function\"?t():t,r=s?`${W1}: ${s}`:W1;throw new Error(r)}var gd=class Lf extends Error{cause;trace;constructor(t,s){let r=s.map(o=>`- ${Cd(o)?`fn*:${Re(o)}`:o}`);r.length>20&&(r=[...r.slice(0,11),\"...\",...r.slice(-10)]),super(`Resolution of the following tree failed:\n${r.join(`\n`)}: ${t&&typeof t==\"object\"&&\"message\"in t?t.message:t}`),this.cause=t,this.trace=s,Object.setPrototypeOf(this,Lf.prototype)}appendToTrace(t){let s=[t,...this.trace];return new Lf(this.cause,s)}},Yx=class Ff extends Error{cause;trace;constructor(t,s){let r=s.map(o=>`- ${o}`);r.length>20&&(r=[...r.slice(0,11),\"...\",...r.slice(-10)]),super(`Execution of the following tree failed:\n${r.join(`\n`)}: ${t&&typeof t==\"object\"&&\"message\"in t?t.message:t}`),this.cause=t,this.trace=s,Object.setPrototypeOf(this,Ff.prototype)}appendToTrace(t){let s=[t,...this.trace];return new Ff(this.cause,s)}},Rk=class s6 extends Error{slot;constructor(t){super(`Missing value for '${t}'`),this.slot=t,Object.setPrototypeOf(this,s6.prototype)}},Uk=class r6 extends Error{constructor(t){super(`Buffer '${Re(t)??\"<unnamed>\"}' is not bindable as a uniform. Use .$usage('uniform') to allow it.`),Object.setPrototypeOf(this,r6.prototype)}},zk=class o6 extends Error{constructor(t){super(`Missing bind groups for layouts: '${[...t].map(s=>Re(s)??\"<unnamed>\").join(\", \")}'. Please provide it using pipeline.with(bindGroup).(...)`),Object.setPrototypeOf(this,o6.prototype)}},Gk=class n6 extends Error{constructor(t){super(`Missing vertex buffers for layouts: '${[...t].map(s=>Re(s)??\"<unnamed>\").join(\", \")}'. Please provide it using pipeline.with(layout, buffer).(...)`),Object.setPrototypeOf(this,n6.prototype)}},Wx=class a6 extends Error{constructor(t){super(t),Object.setPrototypeOf(this,a6.prototype)}},Ox=class i6 extends Error{constructor(t){super(t),Object.setPrototypeOf(this,i6.prototype)}},vt=class d6 extends Error{constructor(t){super(t),Object.setPrototypeOf(this,d6.prototype)}},er=class l6 extends Error{constructor(t,s){super(`Unsupported data types: ${t.map(r=>r.type).join(\", \")}. Supported types are: ${s.map(r=>r.type).join(\", \")}.`),Object.setPrototypeOf(this,l6.prototype)}},kc=class c6 extends Error{constructor(t,s){super(`Cannot convert value '${t}' to type ${s.type} because of the Finite Math Assumption (see: https://www.w3.org/TR/WGSL/#finite-math-assumption)`),Object.setPrototypeOf(this,c6.prototype)}},u6=[\"uint8\",\"uint8x2\",\"uint8x4\",\"sint8\",\"sint8x2\",\"sint8x4\",\"unorm8\",\"unorm8x2\",\"unorm8x4\",\"snorm8\",\"snorm8x2\",\"snorm8x4\",\"uint16\",\"uint16x2\",\"uint16x4\",\"sint16\",\"sint16x2\",\"sint16x4\",\"unorm16\",\"unorm16x2\",\"unorm16x4\",\"snorm16\",\"snorm16x2\",\"snorm16x4\",\"float16\",\"float16x2\",\"float16x4\",\"float32\",\"float32x2\",\"float32x3\",\"float32x4\",\"uint32\",\"uint32x2\",\"uint32x3\",\"uint32x4\",\"sint32\",\"sint32x2\",\"sint32x3\",\"sint32x4\",\"unorm10-10-10-2\",\"unorm8x4-bgra\"],Dk={f32:\"float32\",vec2f:\"float32x2\",vec3f:\"float32x3\",vec4f:\"float32x4\",f16:\"float16\",vec2h:\"float16x2\",vec4h:\"float16x4\",u32:\"uint32\",vec2u:\"uint32x2\",vec3u:\"uint32x3\",vec4u:\"uint32x4\",i32:\"sint32\",vec2i:\"sint32x2\",vec3i:\"sint32x3\",vec4i:\"sint32x4\"};function qo(e){return ya(e)||oi(e)?e.inner:e}function wi(e){return Hr(e)?e.inner:e}var Lk=[\"unstruct\",\"disarray\",\"loose-decorated\",...u6];function am(e){return Rt(e)&&Lk.includes(e?.type)}function Vi(e){return Rt(e)&&e?.type===\"disarray\"}function Zn(e){return Rt(e)&&e?.type===\"unstruct\"}function oi(e){return Rt(e)&&e?.type===\"loose-decorated\"}function rc(e){return e.attribs?.find(H5)?.params[0]}function Fk(e){return e.attribs?.find(j5)?.params[0]}function qa(e){return e.attribs?.find(K5)?.params[0]}function $c(e){return Oi(e)||am(e)}var os=Symbol(\"UNKNOWN\"),_6=class{matrix;constructor(e){this.matrix=e}};function Bk(e){return e===\"runtime\"||e===\"constant\"?e:\"runtime\"}function In(e){return!(e.origin===\"runtime\"||e.origin===\"constant\")}var Ik={uniform:{space:\"uniform\",access:\"read\"},readonly:{space:\"storage\",access:\"read\"},mutable:{space:\"storage\",access:\"read-write\"},workgroup:{space:\"workgroup\",access:\"read-write\"},private:{space:\"private\",access:\"read-write\"},function:{space:\"function\",access:\"read-write\"},\"local-def\":{space:\"function\",access:\"read-write\"}},Cc=class{value;dataType;origin;possibleSideEffects;constructor(e,t,s,r){this.value=e,this.dataType=t,this.origin=s,this.possibleSideEffects=r}};function Rc(e){return e instanceof Cc}function Kl(e){return Gf(e.dataType)}function Ae(e,t,s,r=!0){if(sm&&Rc(e))throw new Error(\"Cannot nest snippets\");return new Cc(e,qo(t),s,r)}function vh(e,t){return new Cc(t.value,e,t.origin,t.possibleSideEffects)}function p6(e,t){return new Cc(e,t.dataType,t.origin,t.possibleSideEffects)}function Yk(e,t){return new Cc(t.value,t.dataType,t.origin,e)}function Wk(e){return Yk(!1,e)}function Bf(e){return e?.resourceType===\"slot\"}function If(e){return e?.resourceType===\"lazy\"}function U_(e){return e?.[co]!==void 0}function Jd(e){return e?.resourceType===\"accessor\"}function el(e){return e?.resourceType===\"mutable-accessor\"}var tl=class{type=\"normal\"},Ok=class{type=\"codegen\"},Vk=class{type=\"simulate\";buffers;vars;constructor(e,t){this.buffers=e,this.vars=t}};function m6(e){return!!e?.[ts]}function im(e){return e?.[Na]}function K_(e){return!!e?.[mr]}function Nk(e){return!!e?.[uh]}function js(e){return(typeof e.value!=\"string\"||e.dataType===os)&&im(e.value)===void 0}function qk(e){return typeof e==\"number\"||typeof e==\"boolean\"||m6(e)||Oi(e)||Bf(e)||If(e)||U_(e)}function ca(e){return!!e&&typeof e==\"object\"&&\"getMappedRange\"in e&&\"mapAsync\"in e}function fc(e){return e.resourceType===\"buffer\"}function f6(e){return!!e.usableAsUniform}function Z_(e){return!!e?.usableAsStorage}var z_=!1;function Xk(e){if(z_)return e();try{return z_=!0,e()}finally{z_=!1}}function Q_(){return z_}var Mi;function v6(e,t){if(Mi===e)return t();let s=Mi;Mi=e;try{return t()}finally{Mi=s}}function Li(){return Mi}var h6=new tl;function Vx(){return Mi?.mode??h6}function dm(){return Mi?.mode.type===\"codegen\"}function fe(e,...t){let s=Li();function r(n){return Rc(n)?s.resolveSnippet(n).value:n}let o=\"\";for(let n=0;n<e.length;++n){o+=e[n];let i=t[n];Array.isArray(i)?o+=i.filter(d=>d!==void 0).map(r).join(\", \"):i&&(o+=r(i))}return o}function y6(e){return lm(\"function\",e,\"read-write\")}function lm(e,t,s,r=!1){return{[q]:{},type:\"ptr\",addressSpace:e,inner:t,access:s,implicit:r,toString:()=>`ptr<${e}, ${t}, ${s}>`}}function hh(e,t){let s=Ik[e];if(s)return lm(s.space,t,s.access)}function g6(e){return lm(e.addressSpace,e.inner,e.access,!0)}function Hk(e){return lm(e.addressSpace,e.inner,e.access,!1)}var jk=(()=>{let e=(t=>Kk(t));return Tt(e,\"ref\"),e.toString=()=>\"ref\",e[q]=!0,e[mr]={call(t,[s]){if(s.origin===\"argument\")throw new vt(fe`d.ref(${s}) is illegal, cannot take a reference of an argument. Copy the value first, and take a reference of the copy.`);if(s.origin===\"constant-immutable-def\"||s.origin===\"runtime-immutable-def\"){let o=t.resolve(s.dataType).value;throw new vt(fe`d.ref(${s}) is illegal, cannot take a reference to a constant.\n-----\n- Try 'd.ref(${o}(${s}));' instead to create a new referencable value.\n-----`)}if(In(s)&&gn(s.dataType)){let o=t.resolve(s.dataType).value;throw new vt(fe`d.ref(${s}) is illegal, cannot take a reference to a scalar value.\n-----\n- Try 'd.ref(${o}(${s}));' instead to create a new referencable scalar.\n-----`)}if(Hr(s.dataType))return vh(Hk(s.dataType),s);let r=hh(s.origin,s.dataType);return Ae(new ia(s,r),r??os,\"runtime\",s.possibleSideEffects)}},e})();function x6(e){return e?.[q]?.type===\"ref\"}function Kk(e){let t={[q]:{type:\"ref\"},get $(){return e},set $(s){if(s&&typeof s==\"object\")for(let r of Object.keys(s))e[r]=s[r];else e=s}};if(e==null)throw new Error(\"Cannot create a ref from undefined or null\");return typeof e==\"object\"?new Proxy(t,{get(s,r){return r in s?s[r]:e[r]},set(s,r,o){return r===q?!1:Reflect.set(r===\"$\"?t:e,r,o)}}):t}var ia=class{[q];snippet;#e;constructor(e,t){this[q]=!0,this.snippet=e,this.#e=t}get[Na](){if(!this.#e)throw new Error(fe`Cannot take a reference of ${this.snippet}`);return Ae(this,this.#e,this.snippet.origin,this.snippet.possibleSideEffects)}[ts](){if(!this.#e)throw new Error(fe`Cannot take a reference of ${this.snippet}`);return Ae(fe`(&${this.snippet})`,this.#e,this.snippet.origin,this.snippet.possibleSideEffects)}};function yh(e){if(!Hr(e.dataType))return e;let t=e.dataType.inner;return e.value instanceof ia?Ae(fe`${e.value.snippet}`,t,e.origin,e.possibleSideEffects):Ae(fe`(*${e})`,t,e.origin,e.possibleSideEffects)}function Xa(e,t){let s=e;return Nk(s)?s[uh](t):typeof s!=\"function\"?t:t===void 0?s():s(t)}function b6(e,t,s){if(!K_(t))return s;let r=t;return s===void 0||s.value===void 0?r[mr].call(e,[]):r[mr].call(e,[s])}function vc(e,t){throw new Error(`Failed to handle ${e} at ${t}`)}function w6(e,t){Ws(Es(e.dataType)||Zn(e.dataType),\"Expected snippet type to be struct/unstruct.\");let s=e.dataType.propTypes[t];if(s)return s=qo(s),Ae(fe`${e}.${t}`,s,e.origin,e.possibleSideEffects)}var gh={rank:Number.POSITIVE_INFINITY,action:\"none\"};function J_(e,t){let s=qo(e),r=qo(t);if(s.type===r.type)return s.type===\"struct\"&&s!==r?{rank:1,action:\"cast\",targetType:t}:{rank:0,action:\"none\"};if(s.type===\"abstractFloat\"){if(r.type===\"f32\")return{rank:1,action:\"none\"};if(r.type===\"f16\")return{rank:2,action:\"none\"}}if(s.type===\"abstractInt\"){if(r.type===\"i32\")return{rank:3,action:\"none\"};if(r.type===\"u32\")return{rank:4,action:\"none\"};if(r.type===\"abstractFloat\")return{rank:5,action:\"none\"};if(r.type===\"f32\")return{rank:6,action:\"none\"};if(r.type===\"f16\")return{rank:7,action:\"none\"}}return as(s)&&as(r)&&s.type[3]===r.type[3]?J_(s.primitive,r.primitive):On(s)&&On(r)&&s.type[3]===r.type[3]?{rank:0,action:\"none\"}:gh}function Zk(e,t){let s=qo(e),r=qo(t);if(Hr(s)&&s.implicit&&J_(s.inner,r).rank<Number.POSITIVE_INFINITY)return{rank:0,action:\"deref\"};if(Hr(r)&&J_(s,r.inner).rank<Number.POSITIVE_INFINITY)return{rank:1,action:\"ref\"};let o={f32:0,f16:1,i32:2,u32:3,bool:4};if(s.type in o&&r.type in o){let n=s.type,i=r.type;if(n!==i){let d=o[n];return{rank:o[i]<d?10:20,action:\"cast\",targetType:r}}}if((s.type===\"u32\"||s.type===\"i32\")&&r.type===\"abstractFloat\")return{rank:1,action:\"cast\",targetType:r.concretized};if(s.type===\"abstractFloat\"){if(r.type===\"i32\")return{rank:2,action:\"cast\",targetType:r};if(r.type===\"u32\")return{rank:3,action:\"cast\",targetType:r}}return gh}function Qk(e,t,s){let r=J_(e,t);return r.rank<Number.POSITIVE_INFINITY?r:s?Zk(e,t):gh}function Yf(e,t,s){let r;for(let n of t){let i=n,d=[],l=0;for(let c of e){let _=Qk(c,n,s);if(l+=_.rank,_.rank===Number.POSITIVE_INFINITY)break;d.push(_),_.action===\"cast\"&&(i=_.targetType)}l<(r?.sum??Number.POSITIVE_INFINITY)&&(r={type:i,details:d,sum:l})}if(!r)return;let o=r.details.map((n,i)=>({sourceIndex:i,action:n.action,...n.action===\"cast\"&&{targetType:n.targetType}}));return{targetType:r.type,actions:o,hasImplicitConversions:o.some(n=>n.action===\"cast\")}}function xh(e,t){if(e.length===0)return;let s=[...new Set((t||e).map(qo))],r=Yf(e,s,!1);if(r)return r;let o=Yf(e,s,!0);if(o)return o}function Jk(e,t,s,r){if(s.action===\"none\")return r===t.dataType?t:vh(r,t);switch(s.action){case\"ref\":return Ae(new ia(t,r),r,t.origin,t.possibleSideEffects);case\"deref\":return yh(t);case\"cast\":if(Es(t.dataType)&&Es(r)){let o=Re(t.dataType)??\"<unnamed>\",n=Re(r)??\"<unnamed>\";if(t.possibleSideEffects)throw new Error(`Cannot resolve struct cast from '${o}' to '${n}'. Store the value to a variable first, then cast it.`);let i=Object.entries(r.propTypes).map(([l,c])=>{let _=w6(t,l);if(!_)throw new Error(`Cannot auto-convert struct '${o}' to '${n}' because the property '${l}' is missing.`);let p=La(e,[_],[c]);if(!p||!p[0])throw new Error(`Cannot auto-convert struct '${o}' to '${n}' because type '${Re(_.dataType)??\"<unnamed>\"}' is not convertible to '${Re(qo(c))??\"<unnamed>\"}'.`);return p[0]}),d=e.resolve(r).value;return Ae(`${d}(${i.map(l=>l.value).join(\", \")})`,r,\"runtime\",!1)}return b6(e,r,t);default:vc(s.action,\"applyActionToSnippet\")}}function jr(e,t){if(e.some(r=>r===os))return;let s=xh(e,t);if(s)return e.map(r=>as(r)||On(r)?r:s.targetType)}function cm(e,t){if(e.some(r=>r===os))return;let s=Yf(e,[...new Set((t||e).map(qo))],!1);if(s)return e.map(r=>as(r)||On(r)?r:s.targetType)}function La(e,t,s,r=!0){let o=t.map(i=>i.dataType);if(o.some(i=>i===os))return;Ws(!(Array.isArray(s)&&s.length===0),\"Internal error, expected 'restrictTo' to not be an empty array.\");let n=xh(o,s);if(n)return r&&n.hasImplicitConversions&&fs.warn(\"implicit-conversion\",`Implicit conversions from [\n${t.map(i=>` ${e.resolveSnippet(i).value}: ${Oo(i.dataType)}`).join(`,\n`)}\n] to ${n.targetType.type} are supported, but not recommended.\nConsider using explicit conversions instead.`),t.map((i,d)=>{let l=n.actions[d];return Ws(l,\"Action should not be undefined\"),Jk(e,i,l,n.targetType)})}function wo(e,t,s,r=!0){let o=Array.isArray(s)?s:[s],{value:n,dataType:i,origin:d,possibleSideEffects:l}=t;if(o.length===1){let _=o[0];if(_===i)return Ae(n,_,d,l);if(i===os)return e.resolveSnippet(Ae(n,_,d,l))}let c=La(e,[t],o,r);if(c)return c[0];throw new vt(`Cannot convert value of type '${String(i)}' to any of the target types: [${o.map(_=>_.type).join(\", \")}]`)}function Nx(e,t,s){return Object.entries(t.propTypes).map(([r,o])=>{let n=s[r];if(!n)throw new Error(`Missing property ${r}`);return La(e,[n],[o])?.[0]??n})}function Ni(e){let t=((...s)=>e.normalImpl(...s));return Tt(t,e.name),t.toString=()=>e.name,t[mr]={get strictSignature(){},call(s,r){let o=e.argTypes(...r.map(d=>Hr(d.dataType)&&d.dataType.implicit?d.dataType.inner:d.dataType)),n=r.map((d,l)=>{let c=o[l];if(!c)throw new Error(\"Function called with invalid arguments\");return wo(s,d,c,!1)}),i;if(n.every(d=>js(d))){s.pushMode(new tl);try{i=Ae(e.normalImpl(...n.map(d=>d.value)),e.schema(),\"constant\")}finally{s.popMode(\"normal\")}}else i=e.codegenImpl(s,n);return r.some(d=>d.possibleSideEffects)?i:Wk(i)}},t}var e$=Ni({name:\"bool\",schema:()=>Ft,argTypes:e=>e?[e]:[],normalImpl(e=!1){if(typeof e==\"boolean\")return e;if(typeof e==\"number\"){if(!Number.isFinite(e))throw new kc(e,Ft);return!!e}throw new Error(`Invalid argument type for 'd.bool'. Got '${typeof e}', expected number or boolean`)},codegenImpl:(e,[t])=>{if(t===void 0)return e.gen.typeInstantiation(Ft,[]);if(Ga(t.dataType)||Kl(t))return e.gen.typeInstantiation(Ft,[t]);throw t.dataType===os?new vt(\"Unknown argument type for 'd.bool'.\"):new er([t.dataType],[Ft,Y,oe,a,Zs])}}),Ft=Object.assign(e$,{[q]:{},type:\"bool\"}),t$=Ni({name:\"u32\",schema:()=>Y,argTypes:e=>e?[e]:[],normalImpl(e){if(e===void 0)return 0;if(typeof e==\"boolean\")return e?1:0;if(!Number.isFinite(e))throw new kc(e,Y);if(!Number.isInteger(e)){let t=Math.trunc(e);return t<0?0:t>4294967295?4294967295:t}return(e&4294967295)>>>0},codegenImpl:(e,[t])=>e.gen.typeInstantiation(Y,t?[t]:[])}),Y=Object.assign(t$,{[q]:{},type:\"u32\"}),s$=Ni({name:\"i32\",schema:()=>oe,argTypes:e=>e?[e]:[],normalImpl(e){if(e===void 0)return 0;if(typeof e==\"boolean\")return e?1:0;if(!Number.isFinite(e))throw new kc(e,oe);return e|0},codegenImpl:(e,[t])=>e.gen.typeInstantiation(oe,t?[t]:[])}),bW={[q]:{},type:\"u16\"},oe=Object.assign(s$,{[q]:{},type:\"i32\"}),r$=Ni({name:\"f32\",schema:()=>a,argTypes:e=>e?[e]:[],normalImpl(e){if(e===void 0)return 0;if(typeof e==\"boolean\")return e?1:0;if(!Number.isFinite(e))throw new kc(e,a);return Math.fround(e)},codegenImpl:(e,[t])=>e.gen.typeInstantiation(a,t?[t]:[])}),a=Object.assign(r$,{[q]:{},type:\"f32\"}),T6=new ArrayBuffer(4),o$=new Float32Array(T6),n$=new Uint32Array(T6);function ep(e){o$[0]=e;let t=n$[0],s=t>>>31&1,r=t>>>23&255,o=t&8388607;if(r===255)return s<<15|31744|(o?512:0);if(r=r-127+15,r<=0){if(r<-10)return s<<15;let l=o|8388608,c=14-r,_=l>>>c-1&1,p=l&(1<<c-1)-1?1:0,f=l>>>c;return _&(p|f&1)&&(f+=1),s<<15|f}if(r>=31)return s<<15|31744;let n=o>>>12&1,i=o&4095?1:0,d=o>>>13;return n&(i|d&1)&&(d+=1),d===1024&&(d=0,++r,r>=31)?s<<15|31744:s<<15|r<<10|d}function bh(e){let t=e&32768?-1:1,s=e>>10&31,r=e&1023;return s===0?r?t*r*2**-24:t*0:s===31?r?NaN:t===1?Number.POSITIVE_INFINITY:Number.NEGATIVE_INFINITY:t*(1+r/1024)*2**(s-15)}function a$(e){return bh(ep(e))}var i$=Ni({name:\"f16\",schema:()=>Zs,argTypes:e=>e?[e]:[],normalImpl(e){if(e===void 0)return 0;if(typeof e==\"boolean\")return e?1:0;if(!Number.isFinite(e))throw new kc(e,Zs);return a$(e)},codegenImpl:(e,[t])=>e.gen.typeInstantiation(Zs,t?[t]:[])}),Zs=Object.assign(i$,{[q]:{},type:\"f16\"}),Uc={[q]:{},type:\"abstractInt\",toString(){return\"abstractInt\"},concretized:oe},Fi={[q]:{},type:\"abstractFloat\",toString(){return\"abstractFloat\"},concretized:a};function Vn(e){return e>=2**63||e<-(2**63)?Ae(e,Fi,\"constant\",!1):Number.isInteger(e)?(Number.isSafeInteger(e)||fs.warn(\"precision-loss\",`The integer ${e} exceeds the safe integer range and may have lost precision.`),Ae(e,Uc,\"constant\",!1)):Ae(e,Fi,\"constant\",!1)}function Wo(e){return e.type===\"abstractFloat\"?a:e.type===\"abstractInt\"?oe:e}function d$(e){return vh(Wo(e.dataType),e)}function To(e){if(Rc(e))return e;if(x6(e))throw new Error(\"Cannot use refs (d.ref(...)) from the outer scope.\");let t=im(e);return t||(Xr(e)||xn(e)?Ae(e,nm(e),\"constant\",!1):typeof e==\"number\"?Vn(e):typeof e==\"boolean\"?Ae(e,Ft,\"constant\",!1):Ae(e,os,\"constant\",!1))}var oc=class{[q]=!0;type;elements;constructor(e,t){this.type=e,this.elements=t}toString(){return\"ArrayExpression\"}[ts](e){for(let t of this.elements)if(In(t)&&!gn(t.dataType)){let s=e.resolveSnippet(t).value,r=e.resolve(Wo(t.dataType)).value;throw new vt(`'${s}' reference cannot be used in an array constructor.\n-----\nTry '${r}(${s})' or 'arrayOf(${r}, count)([...])' to copy the value instead.\n-----`)}return e.gen.typeInstantiation(this.type,this.elements)}};function nn(e){let t=((...s)=>e(...s));return t.toString=()=>\"comptime\",t[Pr]=e,t[mr]={call(s,r){if(!r.every(o=>js(o)))throw new vt(`Called comptime function with runtime-known values: ${r.filter(o=>!js(o)).map(o=>`'${o.value}'`).join(\", \")}`);s.pushMode(new tl);try{return To(e(...r.map(o=>o.value)))}finally{s.popMode()}}},t.$name=s=>(Tt(e,s),t),Object.defineProperty(t,q,{value:{isComptime:!0}}),t}var vr=class extends Error{constructor(e){super(e),this.name=this.constructor.name}};function we(e){let t=((...s)=>{if(typeof e.normalImpl==\"string\")throw new vr(e.normalImpl);return e.normalImpl(...s)});return e.name&&Tt(t,e.name),t.toString=()=>e.name??\"<unknown>\",t[mr]={get strictSignature(){return typeof e.signature!=\"function\"?e.signature:void 0},call(s,r){let{argTypes:o,returnType:n}=typeof e.signature==\"function\"?e.signature(...r.map(c=>Hr(c.dataType)&&c.dataType.implicit?c.dataType.inner:c.dataType)):e.signature,i=r.map((c,_)=>{let p=o[_];if(!p)throw new Error(\"Function called with invalid arguments\");return wo(s,c,p,!e.ignoreImplicitCastWarning)});if(!e.noComptime&&i.every(c=>js(c))&&typeof e.normalImpl==\"function\"){s.pushMode(new tl);try{return Ae(e.normalImpl(...i.map(c=>c.value)),n,\"constant\",e.sideEffects)}catch(c){if(!(c instanceof vr))throw c}finally{s.popMode(\"normal\")}}let d=e.sideEffects||r.some(c=>c.possibleSideEffects),l=Wo(n);return Ae(e.codegenImpl(s,i,l),l,\"runtime\",d)}},t}var ea=[\"x\",\"y\",\"z\",\"w\"],ta=[\"r\",\"g\",\"b\",\"a\"],Yn=class bi extends Array{static#e=(()=>{for(let t=0;t<4;t++)for(let s=0;s<4;s++)for(let r=0;r<4;r++)for(let o=0;o<4;o++){let n=`${ea[t]}${ea[s]}${ea[r]}${ea[o]}`,i=`${ta[t]}${ta[s]}${ta[r]}${ta[o]}`;Object.defineProperty(bi.prototype,n,{get(){return new this._Vec4(this[t],this[s],this[r],this[o])}}),Object.defineProperty(bi.prototype,i,{get(){return new this._Vec4(this[t],this[s],this[r],this[o])}})}for(let t=0;t<4;t++)for(let s=0;s<4;s++)for(let r=0;r<4;r++){let o=`${ea[t]}${ea[s]}${ea[r]}`,n=`${ta[t]}${ta[s]}${ta[r]}`;Object.defineProperty(bi.prototype,o,{get(){return new this._Vec3(this[t],this[s],this[r])}}),Object.defineProperty(bi.prototype,n,{get(){return new this._Vec3(this[t],this[s],this[r])}})}for(let t=0;t<4;t++)for(let s=0;s<4;s++){let r=`${ea[t]}${ea[s]}`,o=`${ta[t]}${ta[s]}`;Object.defineProperty(bi.prototype,r,{get(){return new this._Vec2(this[t],this[s])}}),Object.defineProperty(bi.prototype,o,{get(){return new this._Vec2(this[t],this[s])}})}})();castElement(){return this[q].elementSchema}[ts](t){let s=nm(this);return this.every(r=>!r)?t.gen.typeInstantiation(s,[]):this.every(r=>this[0]===r)?t.gen.typeInstantiation(s,[Vn(this[0])]):t.gen.typeInstantiation(s,this.map(r=>Vn(r)))}toString(){return`${this.kind}(${this.join(\", \")})`}},zc=class extends Yn{e0;e1;constructor(e,t){super(2),this.e0=this.castElement()(e),this.e1=this.castElement()(t??e)}get 0(){return this.e0}get 1(){return this.e1}set 0(e){this.e0=this.castElement()(e)}set 1(e){this.e1=this.castElement()(e)}get x(){return this[0]}get y(){return this[1]}set x(e){this[0]=this.castElement()(e)}set y(e){this[1]=this.castElement()(e)}get r(){return this[0]}get g(){return this[1]}set r(e){this[0]=this.castElement()(e)}set g(e){this[1]=this.castElement()(e)}},Gc=class extends Yn{e0;e1;e2;constructor(e,t,s){super(3),this.e0=this.castElement()(e),this.e1=this.castElement()(t??e),this.e2=this.castElement()(s??e)}get 0(){return this.e0}get 1(){return this.e1}get 2(){return this.e2}set 0(e){this.e0=this.castElement()(e)}set 1(e){this.e1=this.castElement()(e)}set 2(e){this.e2=this.castElement()(e)}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}set x(e){this[0]=this.castElement()(e)}set y(e){this[1]=this.castElement()(e)}set z(e){this[2]=this.castElement()(e)}get r(){return this[0]}get g(){return this[1]}get b(){return this[2]}set r(e){this[0]=this.castElement()(e)}set g(e){this[1]=this.castElement()(e)}set b(e){this[2]=this.castElement()(e)}},Dc=class extends Yn{e0;e1;e2;e3;constructor(e,t,s,r){super(4),this.e0=this.castElement()(e),this.e1=this.castElement()(t??e),this.e2=this.castElement()(s??e),this.e3=this.castElement()(r??e)}get 0(){return this.e0}get 1(){return this.e1}get 2(){return this.e2}get 3(){return this.e3}set 0(e){this.e0=this.castElement()(e)}set 1(e){this.e1=this.castElement()(e)}set 2(e){this.e2=this.castElement()(e)}set 3(e){this.e3=this.castElement()(e)}get x(){return this[0]}get y(){return this[1]}get z(){return this[2]}get w(){return this[3]}set x(e){this[0]=e}set y(e){this[1]=e}set z(e){this[2]=e}set w(e){this[3]=e}get r(){return this[0]}get g(){return this[1]}get b(){return this[2]}get a(){return this[3]}set r(e){this[0]=e}set g(e){this[1]=e}set b(e){this[2]=e}set a(e){this[3]=e}},wh=class S6 extends zc{get[q](){return{elementSchema:a}}get kind(){return\"vec2f\"}get _Vec2(){return S6}get _Vec3(){return Ph}get _Vec4(){return Rh}},Th=class A6 extends zc{get[q](){return{elementSchema:Zs}}get kind(){return\"vec2h\"}get _Vec2(){return A6}get _Vec3(){return Mh}get _Vec4(){return Uh}},Sh=class E6 extends zc{get[q](){return{elementSchema:oe}}get kind(){return\"vec2i\"}get _Vec2(){return E6}get _Vec3(){return kh}get _Vec4(){return zh}},Ah=class P6 extends zc{get[q](){return{elementSchema:Y}}get kind(){return\"vec2u\"}get _Vec2(){return P6}get _Vec3(){return $h}get _Vec4(){return Gh}},Eh=class M6 extends zc{get[q](){return{elementSchema:Ft}}get kind(){return\"vec2<bool>\"}get _Vec2(){return M6}get _Vec3(){return Ch}get _Vec4(){return Dh}},Ph=class k6 extends Gc{get[q](){return{elementSchema:a}}get kind(){return\"vec3f\"}get _Vec2(){return wh}get _Vec3(){return k6}get _Vec4(){return Rh}},Mh=class $6 extends Gc{get[q](){return{elementSchema:Zs}}get kind(){return\"vec3h\"}get _Vec2(){return Th}get _Vec3(){return $6}get _Vec4(){return Uh}},kh=class C6 extends Gc{get[q](){return{elementSchema:oe}}get kind(){return\"vec3i\"}get _Vec2(){return Sh}get _Vec3(){return C6}get _Vec4(){return zh}},$h=class R6 extends Gc{get[q](){return{elementSchema:Y}}get kind(){return\"vec3u\"}get _Vec2(){return Ah}get _Vec3(){return R6}get _Vec4(){return Gh}},Ch=class U6 extends Gc{get[q](){return{elementSchema:Ft}}get kind(){return\"vec3<bool>\"}get _Vec2(){return Eh}get _Vec3(){return U6}get _Vec4(){return Dh}},Rh=class z6 extends Dc{get[q](){return{elementSchema:a}}get kind(){return\"vec4f\"}get _Vec2(){return wh}get _Vec3(){return Ph}get _Vec4(){return z6}},Uh=class G6 extends Dc{get[q](){return{elementSchema:Zs}}get kind(){return\"vec4h\"}get _Vec2(){return Th}get _Vec3(){return Mh}get _Vec4(){return G6}},zh=class D6 extends Dc{get[q](){return{elementSchema:oe}}get kind(){return\"vec4i\"}get _Vec2(){return Sh}get _Vec3(){return kh}get _Vec4(){return D6}},Gh=class L6 extends Dc{get[q](){return{elementSchema:Y}}get kind(){return\"vec4u\"}get _Vec2(){return Ah}get _Vec3(){return $h}get _Vec4(){return L6}},Dh=class F6 extends Dc{get[q](){return{elementSchema:Ft}}get kind(){return\"vec4<bool>\"}get _Vec2(){return Eh}get _Vec3(){return Ch}get _Vec4(){return F6}},$t=fo(wh,a),Sr=fo(Th,Zs),xs=fo(Sh,oe),ns=fo(Ah,Y),So=fo(Eh,Ft),cs=fo(Ph,a),po=fo(Mh,Zs),Os=fo(kh,oe),Ot=fo($h,Y),Ao=fo(Ch,Ft),lt=fo(Rh,a),Ar=fo(Uh,Zs),ps=fo(zh,oe),es=fo(Gh,Y),Eo=fo(Dh,Ft),l$={vec2f:$t,vec2h:Sr,vec2i:xs,vec2u:ns,\"vec2<bool>\":So,vec3f:cs,vec3h:po,vec3i:Os,vec3u:Ot,\"vec3<bool>\":Ao,vec4f:lt,vec4h:Ar,vec4i:ps,vec4u:es,\"vec4<bool>\":Eo};function fo(e,t){let{kind:s,length:r}=new e,o=r,i=Ni({name:s,schema:()=>d,argTypes:(...l)=>l.map(c=>as(c)?c:t),normalImpl:(...l)=>{let c=Array.from({length:l.length}),_=0;for(let p of l)if(typeof p==\"number\"||typeof p==\"boolean\")c[_++]=p;else for(let f=0;f<p.length;++f)c[_++]=p[f];if(c.length<=1||c.length===o)return new e(...c);throw new Error(`'${s}' constructor called with invalid number of arguments.`)},codegenImpl:(l,c)=>l.gen.typeInstantiation(d,c)}),d=Object.assign(i,{[q]:{},type:s,primitive:t,componentCount:o,[Qd]:void 0});return e.prototype.schema=d,d}var Td=class{};function Lh(e){let t=Ni({name:e.type,schema:()=>s,normalImpl:(...r)=>{let o=[];for(let n of r)if(typeof n==\"number\")o.push(n);else for(let i=0;i<n.length;++i)o.push(n[i]);if(o.length!==0&&o.length!==e.columns*e.rows)throw new Error(`'${e.type}' constructor called with invalid number of arguments.`);for(let n=o.length;n<e.columns*e.rows;++n)o.push(0);return new e.MatImpl(...o)},argTypes:(...r)=>r.map(o=>as(o)?o:a),codegenImpl:(r,o)=>r.gen.typeInstantiation(s,o)}),s=Object.assign(t,{[q]:{},type:e.type,primitive:a,identity:g$[e.columns],translation:e.columns===4?x$:void 0,scaling:e.columns===4?b$:void 0,rotationX:e.columns===4?w$:void 0,rotationY:e.columns===4?T$:void 0,rotationZ:e.columns===4?S$:void 0});return e.MatImpl.prototype.schema=s,s}var qx=[0,1,2,3],c$=class extends Td{[q]=!0;columns;length=4;constructor(...e){super(),this.columns=[this.makeColumn(e[0],e[1]),this.makeColumn(e[2],e[3])]}get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[1].x}get 3(){return this.columns[1].y}set 0(e){this.columns[0].x=e}set 1(e){this.columns[0].y=e}set 2(e){this.columns[1].x=e}set 3(e){this.columns[1].y=e}*[Symbol.iterator](){yield this[0],yield this[1],yield this[2],yield this[3]}[ts](e){return e.gen.typeInstantiation(ga,qx.map(t=>Vn(this[t])))}toString(){return`${this.kind}(${qx.map(e=>this[e]).join(\", \")})`}},u$=class extends c${kind=\"mat2x2f\";makeColumn(e,t){return $t(e,t)}},Xx=[0,1,2,4,5,6,8,9,10],_$=class extends Td{[q]=!0;columns;length=12;constructor(...e){super(),this.columns=[this.makeColumn(e[0],e[1],e[2]),this.makeColumn(e[3],e[4],e[5]),this.makeColumn(e[6],e[7],e[8])]}get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[0].z}get 3(){return 0}get 4(){return this.columns[1].x}get 5(){return this.columns[1].y}get 6(){return this.columns[1].z}get 7(){return 0}get 8(){return this.columns[2].x}get 9(){return this.columns[2].y}get 10(){return this.columns[2].z}get 11(){return 0}set 0(e){this.columns[0].x=e}set 1(e){this.columns[0].y=e}set 2(e){this.columns[0].z=e}set 3(e){}set 4(e){this.columns[1].x=e}set 5(e){this.columns[1].y=e}set 6(e){this.columns[1].z=e}set 7(e){}set 8(e){this.columns[2].x=e}set 9(e){this.columns[2].y=e}set 10(e){this.columns[2].z=e}set 11(e){}*[Symbol.iterator](){for(let e=0;e<12;e++)yield this[e]}[ts](e){return e.gen.typeInstantiation(xa,Xx.map(t=>Vn(this[t])))}toString(){return`${this.kind}(${Xx.map(e=>this[e]).join(\", \")})`}},p$=class extends _${kind=\"mat3x3f\";makeColumn(e,t,s){return cs(e,t,s)}},Hx=Array.from({length:16},(e,t)=>t),m$=class extends Td{[q]=!0;columns;constructor(...e){super(),this.columns=[this.makeColumn(e[0],e[1],e[2],e[3]),this.makeColumn(e[4],e[5],e[6],e[7]),this.makeColumn(e[8],e[9],e[10],e[11]),this.makeColumn(e[12],e[13],e[14],e[15])]}length=16;get 0(){return this.columns[0].x}get 1(){return this.columns[0].y}get 2(){return this.columns[0].z}get 3(){return this.columns[0].w}get 4(){return this.columns[1].x}get 5(){return this.columns[1].y}get 6(){return this.columns[1].z}get 7(){return this.columns[1].w}get 8(){return this.columns[2].x}get 9(){return this.columns[2].y}get 10(){return this.columns[2].z}get 11(){return this.columns[2].w}get 12(){return this.columns[3].x}get 13(){return this.columns[3].y}get 14(){return this.columns[3].z}get 15(){return this.columns[3].w}set 0(e){this.columns[0].x=e}set 1(e){this.columns[0].y=e}set 2(e){this.columns[0].z=e}set 3(e){this.columns[0].w=e}set 4(e){this.columns[1].x=e}set 5(e){this.columns[1].y=e}set 6(e){this.columns[1].z=e}set 7(e){this.columns[1].w=e}set 8(e){this.columns[2].x=e}set 9(e){this.columns[2].y=e}set 10(e){this.columns[2].z=e}set 11(e){this.columns[2].w=e}set 12(e){this.columns[3].x=e}set 13(e){this.columns[3].y=e}set 14(e){this.columns[3].z=e}set 15(e){this.columns[3].w=e}*[Symbol.iterator](){for(let e=0;e<16;e++)yield this[e]}[ts](e){return e.gen.typeInstantiation(Mr,Hx.map(t=>Vn(this[t])))}toString(){return`${this.kind}(${Hx.map(e=>this[e]).join(\", \")})`}},f$=class extends m${kind=\"mat4x4f\";makeColumn(e,t,s,r){return lt(e,t,s,r)}},v$=nn(()=>ga(1,0,0,1)).$name(\"identity2\"),h$=nn(()=>xa(1,0,0,0,1,0,0,0,1)).$name(\"identity3\"),y$=nn(()=>Mr(1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1)).$name(\"identity4\"),g$={2:v$,3:h$,4:y$},x$=we({name:\"translation4\",normalImpl:e=>Mr(1,0,0,0,0,1,0,0,0,0,1,0,e.x,e.y,e.z,1),get signature(){return{argTypes:[cs],returnType:Mr}},codegenImpl:(e,[t])=>fe`mat4x4f(1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, ${t}.x, ${t}.y, ${t}.z, 1)`,sideEffects:!1}),b$=we({name:\"scaling4\",normalImpl:e=>Mr(e.x,0,0,0,0,e.y,0,0,0,0,e.z,0,0,0,0,1),get signature(){return{argTypes:[cs],returnType:Mr}},codegenImpl:(e,[t])=>fe`mat4x4f(${t}.x, 0, 0, 0, 0, ${t}.y, 0, 0, 0, 0, ${t}.z, 0, 0, 0, 0, 1)`,sideEffects:!1}),w$=we({name:\"rotationX4\",normalImpl:e=>Mr(1,0,0,0,0,Math.cos(e),Math.sin(e),0,0,-Math.sin(e),Math.cos(e),0,0,0,0,1),get signature(){return{argTypes:[a],returnType:Mr}},codegenImpl:(e,[t])=>fe`mat4x4f(1, 0, 0, 0, 0, cos(${t}), sin(${t}), 0, 0, -sin(${t}), cos(${t}), 0, 0, 0, 0, 1)`,sideEffects:!1}),T$=we({name:\"rotationY4\",normalImpl:e=>Mr(Math.cos(e),0,-Math.sin(e),0,0,1,0,0,Math.sin(e),0,Math.cos(e),0,0,0,0,1),get signature(){return{argTypes:[a],returnType:Mr}},codegenImpl:(e,[t])=>fe`mat4x4f(cos(${t}), 0, -sin(${t}), 0, 0, 1, 0, 0, sin(${t}), 0, cos(${t}), 0, 0, 0, 0, 1)`,sideEffects:!1}),S$=we({name:\"rotationZ4\",normalImpl:e=>Mr(Math.cos(e),Math.sin(e),0,0,-Math.sin(e),Math.cos(e),0,0,0,0,1,0,0,0,0,1),get signature(){return{argTypes:[a],returnType:Mr}},codegenImpl:(e,[t])=>fe`mat4x4f(cos(${t}), sin(${t}), 0, 0, -sin(${t}), cos(${t}), 0, 0, 0, 0, 1, 0, 0, 0, 0, 1)`,sideEffects:!1}),ga=Lh({type:\"mat2x2f\",rows:2,columns:2,MatImpl:u$}),xa=Lh({type:\"mat3x3f\",rows:3,columns:3,MatImpl:p$}),Mr=Lh({type:\"mat4x4f\",rows:4,columns:4,MatImpl:f$});var A$=(e,t,s)=>{if(e===t)return 0;let r=B6((s-e)/(t-e),0,1);return r*r*(3-2*r)},B6=(e,t,s)=>Math.min(Math.max(t,e),s),Fh=new ArrayBuffer(4),I6=new Float32Array(Fh),Bh=new Uint32Array(Fh),E$=new Int32Array(Fh);function Ln(e){return Bh[0]=e,I6[0]}function Fn(e){return Bh[0]=e,E$[0]}function Bn(e){return I6[0]=e,Bh[0]}var jx=e=>Math.sqrt(e.x**2+e.y**2),Kx=e=>Math.sqrt(e.x**2+e.y**2+e.z**2),Zx=e=>Math.sqrt(e.x**2+e.y**2+e.z**2+e.w**2),d_=(e,t)=>e.x*t.x+e.y*t.y,l_=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z,c_=(e,t)=>e.x*t.x+e.y*t.y+e.z*t.z+e.w*t.w,Qx=e=>(t,s)=>ns(e(t.x,s.x),e(t.y,s.y)),Jx=e=>(t,s)=>Ot(e(t.x,s.x),e(t.y,s.y),e(t.z,s.z)),eb=e=>(t,s)=>es(e(t.x,s.x),e(t.y,s.y),e(t.z,s.z),e(t.w,s.w)),tb=e=>(t,s)=>xs(e(t.x,s.x),e(t.y,s.y)),sb=e=>(t,s)=>Os(e(t.x,s.x),e(t.y,s.y),e(t.z,s.z)),rb=e=>(t,s)=>ps(e(t.x,s.x),e(t.y,s.y),e(t.z,s.z),e(t.w,s.w)),Mo={all:{\"vec2<bool>\":e=>e.x&&e.y,\"vec3<bool>\":e=>e.x&&e.y&&e.z,\"vec4<bool>\":e=>e.x&&e.y&&e.z&&e.w},length:{vec2f:jx,vec2h:jx,vec3f:Kx,vec3h:Kx,vec4f:Zx,vec4h:Zx},mulMxM:{mat2x2f:(e,t)=>{let s=e.columns,r=t.columns;return ga(s[0].x*r[0].x+s[1].x*r[0].y,s[0].y*r[0].x+s[1].y*r[0].y,s[0].x*r[1].x+s[1].x*r[1].y,s[0].y*r[1].x+s[1].y*r[1].y)},mat3x3f:(e,t)=>{let s=e.columns,r=t.columns;return xa(s[0].x*r[0].x+s[1].x*r[0].y+s[2].x*r[0].z,s[0].y*r[0].x+s[1].y*r[0].y+s[2].y*r[0].z,s[0].z*r[0].x+s[1].z*r[0].y+s[2].z*r[0].z,s[0].x*r[1].x+s[1].x*r[1].y+s[2].x*r[1].z,s[0].y*r[1].x+s[1].y*r[1].y+s[2].y*r[1].z,s[0].z*r[1].x+s[1].z*r[1].y+s[2].z*r[1].z,s[0].x*r[2].x+s[1].x*r[2].y+s[2].x*r[2].z,s[0].y*r[2].x+s[1].y*r[2].y+s[2].y*r[2].z,s[0].z*r[2].x+s[1].z*r[2].y+s[2].z*r[2].z)},mat4x4f:(e,t)=>{let s=e.columns,r=t.columns;return Mr(s[0].x*r[0].x+s[1].x*r[0].y+s[2].x*r[0].z+s[3].x*r[0].w,s[0].y*r[0].x+s[1].y*r[0].y+s[2].y*r[0].z+s[3].y*r[0].w,s[0].z*r[0].x+s[1].z*r[0].y+s[2].z*r[0].z+s[3].z*r[0].w,s[0].w*r[0].x+s[1].w*r[0].y+s[2].w*r[0].z+s[3].w*r[0].w,s[0].x*r[1].x+s[1].x*r[1].y+s[2].x*r[1].z+s[3].x*r[1].w,s[0].y*r[1].x+s[1].y*r[1].y+s[2].y*r[1].z+s[3].y*r[1].w,s[0].z*r[1].x+s[1].z*r[1].y+s[2].z*r[1].z+s[3].z*r[1].w,s[0].w*r[1].x+s[1].w*r[1].y+s[2].w*r[1].z+s[3].w*r[1].w,s[0].x*r[2].x+s[1].x*r[2].y+s[2].x*r[2].z+s[3].x*r[2].w,s[0].y*r[2].x+s[1].y*r[2].y+s[2].y*r[2].z+s[3].y*r[2].w,s[0].z*r[2].x+s[1].z*r[2].y+s[2].z*r[2].z+s[3].z*r[2].w,s[0].w*r[2].x+s[1].w*r[2].y+s[2].w*r[2].z+s[3].w*r[2].w,s[0].x*r[3].x+s[1].x*r[3].y+s[2].x*r[3].z+s[3].x*r[3].w,s[0].y*r[3].x+s[1].y*r[3].y+s[2].y*r[3].z+s[3].y*r[3].w,s[0].z*r[3].x+s[1].z*r[3].y+s[2].z*r[3].z+s[3].z*r[3].w,s[0].w*r[3].x+s[1].w*r[3].y+s[2].w*r[3].z+s[3].w*r[3].w)}},mulMxV:{mat2x2f:(e,t)=>{let s=e.columns;return $t(s[0].x*t.x+s[1].x*t.y,s[0].y*t.x+s[1].y*t.y)},mat3x3f:(e,t)=>{let s=e.columns;return cs(s[0].x*t.x+s[1].x*t.y+s[2].x*t.z,s[0].y*t.x+s[1].y*t.y+s[2].y*t.z,s[0].z*t.x+s[1].z*t.y+s[2].z*t.z)},mat4x4f:(e,t)=>{let s=e.columns;return lt(s[0].x*t.x+s[1].x*t.y+s[2].x*t.z+s[3].x*t.w,s[0].y*t.x+s[1].y*t.y+s[2].y*t.z+s[3].y*t.w,s[0].z*t.x+s[1].z*t.y+s[2].z*t.z+s[3].z*t.w,s[0].w*t.x+s[1].w*t.y+s[2].w*t.z+s[3].w*t.w)}},mulVxM:{mat2x2f:(e,t)=>{let s=t.columns;return $t(e.x*s[0].x+e.y*s[0].y,e.x*s[1].x+e.y*s[1].y)},mat3x3f:(e,t)=>{let s=t.columns;return cs(e.x*s[0].x+e.y*s[0].y+e.z*s[0].z,e.x*s[1].x+e.y*s[1].y+e.z*s[1].z,e.x*s[2].x+e.y*s[2].y+e.z*s[2].z)},mat4x4f:(e,t)=>{let s=t.columns;return lt(e.x*s[0].x+e.y*s[0].y+e.z*s[0].z+e.w*s[0].w,e.x*s[1].x+e.y*s[1].y+e.z*s[1].z+e.w*s[1].w,e.x*s[2].x+e.y*s[2].y+e.z*s[2].z+e.w*s[2].w,e.x*s[3].x+e.y*s[3].y+e.z*s[3].z+e.w*s[3].w)}},dot:{vec2f:d_,vec2h:d_,vec2i:d_,vec2u:d_,vec3f:l_,vec3h:l_,vec3i:l_,vec3u:l_,vec4f:c_,vec4h:c_,vec4i:c_,vec4u:c_},cross:{vec3f:(e,t)=>cs(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x),vec3h:(e,t)=>po(e.y*t.z-e.z*t.y,e.z*t.x-e.x*t.z,e.x*t.y-e.y*t.x)},bitShiftLeft:{vec2i:tb((e,t)=>e<<t),vec2u:Qx((e,t)=>e<<t),vec3i:sb((e,t)=>e<<t),vec3u:Jx((e,t)=>e<<t),vec4i:rb((e,t)=>e<<t),vec4u:eb((e,t)=>e<<t)},bitShiftRight:{vec2i:tb((e,t)=>e>>t),vec2u:Qx((e,t)=>e>>>t),vec3i:sb((e,t)=>e>>t),vec3u:Jx((e,t)=>e>>>t),vec4i:rb((e,t)=>e>>t),vec4u:eb((e,t)=>e>>>t)},bitcastU32toF32:{vec2u:e=>$t(Ln(e.x),Ln(e.y)),vec3u:e=>cs(Ln(e.x),Ln(e.y),Ln(e.z)),vec4u:e=>lt(Ln(e.x),Ln(e.y),Ln(e.z),Ln(e.w))},bitcastU32toI32:{vec2u:e=>xs(Fn(e.x),Fn(e.y)),vec3u:e=>Os(Fn(e.x),Fn(e.y),Fn(e.z)),vec4u:e=>ps(Fn(e.x),Fn(e.y),Fn(e.z),Fn(e.w))},bitcastF32toU32:{vec2f:e=>ns(Bn(e.x),Bn(e.y)),vec3f:e=>Ot(Bn(e.x),Bn(e.y),Bn(e.z)),vec4f:e=>es(Bn(e.x),Bn(e.y),Bn(e.z),Bn(e.w))}},P$={vec2f:So,vec2h:So,vec2i:So,vec2u:So,\"vec2<bool>\":So,vec3f:Ao,vec3h:Ao,vec3i:Ao,vec3u:Ao,\"vec3<bool>\":Ao,vec4f:Eo,vec4h:Eo,vec4i:Eo,vec4u:Eo,\"vec4<bool>\":Eo},Wf={...l$,mat2x2f:ga,mat3x3f:xa,mat4x4f:Mr};function M$(e,t){let s=e===\"boolean\"?P$:Wf;if(t in s)return s[t];throw new Error(`No corresponding vector/matrix type for '${t}' kind in '${e}' mode.`)}function k$(e){return e.kind.startsWith(\"vec\")?e:e.columns.flat()}function Y6(e,t,s){let r=t.map($$);if(r.every(l=>l===\"boolean\"||l===\"number\"))return e(...t);let o=r[0];Ws(o,\"Expected kind of the first argument to be present.\");let n=M$(s,o),i=t.map(k$),d=i[0]?.length;return Ws(d!==void 0,\"Expected constructor to have at least one argument.\"),n(...Array.from({length:d},(l,c)=>e(...i.map(_=>_[c]))))}function qt(e,t){return Y6(e,t,\"first\")}function um(e,t){return Y6(e,t,\"boolean\")}function $$(e){return typeof e==\"number\"?\"number\":typeof e==\"boolean\"?\"boolean\":e.kind}function Ih(e){let[t,s]=e;if(typeof t==\"number\"&&Xr(s)){let r=Wf[s.kind];return[r(t),s]}else if(Xr(t)&&typeof s==\"number\"){let r=Wf[t.kind];return[t,r(s)]}return[t,s]}var ob=e=>\"primitive\"in e?e.primitive:e,Yh=e=>(t,s)=>{let{restrict:r}=e??{},o=_=>{throw r?new er([t,s],r):new Error(`Cannot apply operator to ${t.type} and ${s.type}: ${_}`)};if(e?.noMat&&(On(t)||On(s)))return o(\"matrices not supported\");let n=as(t)||On(t),i=as(s)||On(s);if(!n&&!i){let _=jr([t,s],r);return _?{argTypes:_,returnType:_[0]}:o(\"incompatible scalar types\")}if(n&&i)return e?.matVecProduct&&as(t)!==as(s)?{argTypes:[t,s],returnType:as(t)?t:s}:t.type!==s.type?o(\"operands must have the same type\"):{argTypes:[t,s],returnType:t};let[d,l]=n?[s,t]:[t,s],c=jr([d],[ob(l)]);return c?{argTypes:n?[t,c[0]]:[c[0],s],returnType:l}:o(`scalar not convertible to ${ob(l).type}`)},W6=Yh(),C$=Yh({matVecProduct:!0}),O6=Yh({noMat:!0,restrict:[a,Zs,Fi]});function V6(e,t){if(typeof e==\"number\"&&typeof t==\"number\")return e+t;if(typeof e==\"number\"&&Xr(t))return qt(s=>e+s,[t]);if(Xr(e)&&typeof t==\"number\")return qt(s=>s+t,[e]);if(Xr(e)&&Xr(t)||xn(e)&&xn(t))return qt((s,r)=>s+r,[e,t]);throw new Error(\"Add/Sub called with invalid arguments.\")}var ua=we({name:\"add\",signature:W6,normalImpl:V6,codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"+\",s),sideEffects:!1});function R$(e,t){return V6(e,N6(-1,t))}var It=we({name:\"sub\",signature:W6,normalImpl:R$,codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"-\",s),sideEffects:!1});function N6(e,t){if(typeof e==\"number\"&&typeof t==\"number\")return e*t;if(typeof e==\"number\"&&(Xr(t)||xn(t)))return qt(s=>e*s,[t]);if((Xr(e)||xn(e))&&typeof t==\"number\")return qt(s=>s*t,[e]);if(Xr(e)&&Xr(t))return qt((s,r)=>s*r,[e,t]);if(Bx(e)&&xn(t))return Mo.mulVxM[t.kind](e,t);if(xn(e)&&Bx(t))return Mo.mulMxV[e.kind](e,t);if(xn(e)&&xn(t))return Mo.mulMxM[e.kind](e,t);throw new Error(\"Mul called with invalid arguments.\")}var Kr=we({name:\"mul\",signature:C$,normalImpl:N6,codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"*\",s),sideEffects:!1});function U$(e,t){return qt((s,r)=>s/r,Ih([e,t]))}var Of=we({name:\"div\",signature:O6,normalImpl:U$,codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"/\",s),ignoreImplicitCastWarning:!0,sideEffects:!1}),tn=we({name:\"mod\",signature:O6,normalImpl:((e,t)=>qt((s,r)=>s%r,Ih([e,t]))),codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"%\",s),sideEffects:!1});function z$(e){return qt(t=>-t,[e])}var nb=we({name:\"neg\",signature:e=>({argTypes:[e],returnType:e}),normalImpl:z$,codegenImpl:(e,[t])=>fe`-(${t})`,sideEffects:!1}),q6={vec2i:ns,vec2u:ns,vec3i:Ot,vec3u:Ot,vec4i:es,vec4u:es},X6=(e,t)=>{let s=jr([e],[xs,Os,ps,ns,Ot,es])?.[0];if(!s||!as(s))throw new er([e],[xs,Os,ps,ns,Ot,es]);let r=s.componentCount,o=r===2?ns:r===3?Ot:es,n=jr([t],[Y,o])?.[0];if(!n)throw new er([t],[Y,o]);return{argTypes:[s,n],returnType:s}};function G$(e,t){if(H_(e)&&X5(t)&&e.length==t.length)return Mo.bitShiftLeft[e.kind](e,t);if(H_(e)&&typeof t==\"number\"){let s=q6[e.kind](t);return Mo.bitShiftLeft[e.kind](e,s)}throw new Error(\"'bitShiftLeft' called with invalid arguments, expected: left-hand side to be an integer vector, right-hand side to be a number or unsigned integer vector of the same arity as the left-hand side.\")}var D$=we({name:\"bitShiftLeft\",signature:X6,normalImpl:G$,codegenImpl:(e,[t,s])=>{if(as(t.dataType)&&!as(s.dataType)){let r=t.dataType.componentCount,o=r===2?ns:r===3?Ot:es;return e.gen.emitBinaryOp(t,\"<<\",e.gen.typeInstantiation(o,[s]))}return e.gen.emitBinaryOp(t,\"<<\",s)},sideEffects:!1});function L$(e,t){if(H_(e)&&X5(t)&&e.length==t.length)return Mo.bitShiftRight[e.kind](e,t);if(H_(e)&&typeof t==\"number\"){let s=q6[e.kind](t);return Mo.bitShiftRight[e.kind](e,s)}throw new Error(\"'bitShiftRight' called with invalid arguments, expected: left-hand side to be an integer vector, right-hand side to be a number or unsigned integer vector of the same arity as the left-hand side.\")}var Vf={add:ua,sub:It,mul:Kr,div:Of,mod:tn,bitShiftLeft:D$,bitShiftRight:we({name:\"bitShiftRight\",signature:X6,normalImpl:L$,codegenImpl:(e,[t,s])=>{if(as(t.dataType)&&!as(s.dataType)){let r=t.dataType.componentCount,o=r===2?ns:r===3?Ot:es;return e.gen.emitBinaryOp(t,\">>\",e.gen.typeInstantiation(o,[s]))}return e.gen.emitBinaryOp(t,\">>\",s)},sideEffects:!1})},Wh=class{lhs;operator;constructor(e,t){this.lhs=e,this.operator=t}};function F$(e){return e instanceof Wh}function Gn(e,t,s){let r=Vf[t];Object.defineProperty(e.prototype,s,{value:r});function o(n){return r(this,n)}Object.defineProperty(e.prototype,t,{get(){return dm()?new Wh(this,r):o}})}var ab=!1;function Fr(){ab||(ab=!0,Gn(Yn,\"add\",Vr.plus),Gn(Td,\"add\",Vr.plus),Gn(Yn,\"sub\",Vr.minus),Gn(Td,\"sub\",Vr.minus),Gn(Yn,\"mul\",Vr.star),Gn(Td,\"mul\",Vr.star),Gn(Yn,\"div\",Vr.slash),Gn(Yn,\"mod\",Vr.percent),Gn(Yn,\"bitShiftLeft\",Symbol()),Gn(Yn,\"bitShiftRight\",Symbol()))}var Oh=new Set([\"alias\",\"break\",\"case\",\"const\",\"const_assert\",\"continue\",\"continuing\",\"default\",\"diagnostic\",\"discard\",\"else\",\"enable\",\"false\",\"fn\",\"for\",\"if\",\"let\",\"loop\",\"override\",\"requires\",\"return\",\"struct\",\"switch\",\"true\",\"var\",\"while\",\"NULL\",\"Self\",\"abstract\",\"active\",\"alignas\",\"alignof\",\"as\",\"asm\",\"asm_fragment\",\"async\",\"attribute\",\"auto\",\"await\",\"become\",\"cast\",\"catch\",\"class\",\"co_await\",\"co_return\",\"co_yield\",\"coherent\",\"column_major\",\"common\",\"compile\",\"compile_fragment\",\"concept\",\"const_cast\",\"consteval\",\"constexpr\",\"constinit\",\"crate\",\"debugger\",\"decltype\",\"delete\",\"demote\",\"demote_to_helper\",\"do\",\"dynamic_cast\",\"enum\",\"explicit\",\"export\",\"extends\",\"extern\",\"external\",\"fallthrough\",\"filter\",\"final\",\"finally\",\"friend\",\"from\",\"fxgroup\",\"get\",\"goto\",\"groupshared\",\"highp\",\"impl\",\"implements\",\"import\",\"inline\",\"instanceof\",\"interface\",\"layout\",\"lowp\",\"macro\",\"macro_rules\",\"match\",\"mediump\",\"meta\",\"mod\",\"module\",\"move\",\"mut\",\"mutable\",\"namespace\",\"new\",\"nil\",\"noexcept\",\"noinline\",\"nointerpolation\",\"non_coherent\",\"noncoherent\",\"noperspective\",\"null\",\"nullptr\",\"of\",\"operator\",\"package\",\"packoffset\",\"partition\",\"pass\",\"patch\",\"pixelfragment\",\"precise\",\"precision\",\"premerge\",\"priv\",\"protected\",\"pub\",\"public\",\"readonly\",\"ref\",\"regardless\",\"register\",\"reinterpret_cast\",\"require\",\"resource\",\"restrict\",\"self\",\"set\",\"shared\",\"sizeof\",\"smooth\",\"snorm\",\"static\",\"static_assert\",\"static_cast\",\"std\",\"subroutine\",\"super\",\"target\",\"template\",\"this\",\"thread_local\",\"throw\",\"trait\",\"try\",\"type\",\"typedef\",\"typeid\",\"typename\",\"typeof\",\"union\",\"unless\",\"unorm\",\"unsafe\",\"unsized\",\"use\",\"using\",\"varying\",\"virtual\",\"volatile\",\"wgsl\",\"where\",\"with\",\"writeonly\",\"yield\",\"sampler\",\"uniform\",\"storage\"]),B$=new Set([\"array\",\"bool\",\"f16\",\"f32\",\"i32\",\"u32\",\"mat2x2\",\"mat2x3\",\"mat2x4\",\"mat3x2\",\"mat3x3\",\"mat3x4\",\"mat4x2\",\"mat4x3\",\"mat4x4\",\"vec2\",\"vec3\",\"vec4\",\"bitcast\",\"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\",\"pack4xI8Clamp\",\"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\"]);function I$(e){if(e){let t=e.replaceAll(/\\s/g,\"_\").replaceAll(/[^\\w]/g,\"\");return _m(t).success?t:\"item\"}return\"item\"}function _m(e){return e===\"_\"||e===\"\"?{success:!1,error:\"Identifiers cannot be equal to '' or '_'\"}:/\\s/.test(e)?{success:!1,error:\"Identifiers cannot contain whitespace.\"}:e.startsWith(\"__\")?{success:!1,error:\"Identifiers cannot start with double underscores.\"}:/^(([_\\p{XID_Start}][\\p{XID_Continue}]+)|([\\p{XID_Start}]))$/u.test(e)?{success:!0}:{success:!1,error:\"Not compliant with WGSL guidelines.\"}}function H6(e){let t=_m(e);return t.success?Oh.has(e)?{success:!1,error:\"Identifiers cannot start with reserved keywords.\"}:{success:!0}:t}function Ct(e){return pm(e,!1)}function zr(e){return pm(e,!0)}function pm(e,t){Object.keys(e).forEach(r=>{let o=H6(r);if(!o.success)throw new Error(`Invalid property key '${r}'${o.error?`: ${o.error}`:\"\"}`)});let s=r=>Object.fromEntries(Object.entries(e).map(([o,n])=>[o,Xa(n,r?.[o])]));return Object.setPrototypeOf(s,Y$),s.propTypes=e,Object.defineProperty(s,q,{value:{isAbstruct:t}}),s}var Y$={type:\"struct\",$name(e){return Tt(this,e),this},toString(){return`struct:${Re(this)??\"<unnamed>\"}`}},Er=(e,t)=>{let s=t-1,r=~s;return(e&s)===0?e:(e&r)+t},Yt=class{[q]={};type;[mr];constructor(e){this.type=e,this[mr]={call:(t,[s])=>b6(t,ma[this.type],s)}}[uh](e){return Xa(ma[this.type],e)}},ma={uint8:Y,uint8x2:ns,uint8x4:es,sint8:oe,sint8x2:xs,sint8x4:ps,unorm8:a,unorm8x2:$t,unorm8x4:lt,snorm8:a,snorm8x2:$t,snorm8x4:lt,uint16:Y,uint16x2:ns,uint16x4:es,sint16:oe,sint16x2:xs,sint16x4:ps,unorm16:a,unorm16x2:$t,unorm16x4:lt,snorm16:a,snorm16x2:$t,snorm16x4:lt,float16:a,float16x2:$t,float16x4:lt,float32:a,float32x2:$t,float32x3:cs,float32x4:lt,uint32:Y,uint32x2:ns,uint32x3:Ot,uint32x4:es,sint32:oe,sint32x2:xs,sint32x3:Os,sint32x4:ps,\"unorm10-10-10-2\":lt,\"unorm8x4-bgra\":lt},j6=new Set(Object.keys(ma)),wW=new Yt(\"uint8\"),TW=new Yt(\"uint8x2\"),SW=new Yt(\"uint8x4\"),AW=new Yt(\"sint8\"),EW=new Yt(\"sint8x2\"),PW=new Yt(\"sint8x4\"),MW=new Yt(\"unorm8\"),kW=new Yt(\"unorm8x2\"),$W=new Yt(\"unorm8x4\"),CW=new Yt(\"snorm8\"),RW=new Yt(\"snorm8x2\"),UW=new Yt(\"snorm8x4\"),zW=new Yt(\"uint16\"),GW=new Yt(\"uint16x2\"),DW=new Yt(\"uint16x4\"),LW=new Yt(\"sint16\"),FW=new Yt(\"sint16x2\"),BW=new Yt(\"sint16x4\"),IW=new Yt(\"unorm16\"),YW=new Yt(\"unorm16x2\"),WW=new Yt(\"unorm16x4\"),OW=new Yt(\"snorm16\"),VW=new Yt(\"snorm16x2\"),NW=new Yt(\"snorm16x4\"),qW=new Yt(\"float16\"),XW=new Yt(\"float16x2\"),HW=new Yt(\"float16x4\"),jW=new Yt(\"float32\"),KW=new Yt(\"float32x2\"),ZW=new Yt(\"float32x3\"),QW=new Yt(\"float32x4\"),JW=new Yt(\"uint32\"),eO=new Yt(\"uint32x2\"),tO=new Yt(\"uint32x3\"),sO=new Yt(\"uint32x4\"),rO=new Yt(\"sint32\"),oO=new Yt(\"sint32x2\"),nO=new Yt(\"sint32x3\"),aO=new Yt(\"sint32x4\"),iO=new Yt(\"unorm10-10-10-2\"),dO=new Yt(\"unorm8x4-bgra\");function W$(e){return Rt(e)&&j6.has(e?.type)}var O$={f32:4,f16:2,i32:4,u32:4,bool:4,u16:2,vec2f:8,vec2h:4,vec2i:8,vec2u:8,\"vec2<bool>\":8,vec3f:16,vec3h:8,vec3i:16,vec3u:16,\"vec3<bool>\":16,vec4f:16,vec4h:8,vec4i:16,vec4u:16,\"vec4<bool>\":16,mat2x2f:8,mat3x3f:16,mat4x4f:16,atomic:4};function V$(e){let t=e?.type,s=O$[t];if(s!==void 0)return s;if(Es(e))return Object.values(e.propTypes).map(ks).reduce((r,o)=>r>o?r:o);if(cr(e))return ks(e.elementType);if(Zn(e)){let r=Object.values(e.propTypes)[0];return r?rc(r)??1:1}if(Vi(e))return rc(e.elementType)??1;if(ya(e)||oi(e))return rc(e)??ks(e.inner);if(j6.has(t))return 1;throw new Error(`Cannot determine alignment of data: ${Oo(e)}`)}function N$(e){if(Zn(e)){let t=Object.values(e.propTypes)[0];return t?sn(t):1}return Vi(e)?sn(e.elementType):oi(e)?rc(e)??sn(e.inner):rc(e)??1}var ib=new WeakMap,db=new WeakMap;function ks(e){let t=ib.get(e);return t===void 0&&(t=V$(e),ib.set(e,t)),t}function sn(e){let t=db.get(e);return t===void 0&&(t=N$(e),db.set(e,t)),t}var q$={bool:4,f32:4,f16:2,i32:4,u32:4,u16:2,vec2f:8,vec2h:4,vec2i:8,vec2u:8,\"vec2<bool>\":8,vec3f:12,vec3h:6,vec3i:12,vec3u:12,\"vec3<bool>\":12,vec4f:16,vec4h:8,vec4i:16,vec4u:16,\"vec4<bool>\":16,mat2x2f:16,mat3x3f:48,mat4x4f:64,uint8:1,uint8x2:2,uint8x4:4,sint8:1,sint8x2:2,sint8x4:4,unorm8:1,unorm8x2:2,unorm8x4:4,snorm8:1,snorm8x2:2,snorm8x4:4,uint16:2,uint16x2:4,uint16x4:8,sint16:2,sint16x2:4,sint16x4:8,unorm16:2,unorm16x2:4,unorm16x4:8,snorm16:2,snorm16x2:4,snorm16x4:8,float16:2,float16x2:4,float16x4:8,float32:4,float32x2:8,float32x3:12,float32x4:16,uint32:4,uint32x2:8,uint32x3:12,uint32x4:16,sint32:4,sint32x2:8,sint32x3:12,sint32x4:16,\"unorm10-10-10-2\":4,\"unorm8x4-bgra\":4,atomic:4};function X$(e){let t=0,s=0,r=!0,o=!1;for(let i of Object.values(e.propTypes)){if(Number.isNaN(t))throw new Error(\"Only the last property of a struct can be unbounded\");let d=t;t=Er(t,ks(i));let l=d!==t,c=Bi(i);if(t+=c.size,Number.isNaN(t)&&i.type!==\"array\")throw new Error(\"Cannot nest unbounded struct within another struct\");o||(!l&&c.isContiguous?s+=c.size:(o=!0,r=!1,l||(s+=c.longestContiguousPrefix)))}let n=Er(t,ks(e));return{isContiguous:t===n&&r,size:n,longestContiguousPrefix:s}}function H$(e){let t=0,s=0,r=!0,o=!1;for(let n of Object.values(e.propTypes)){let i=sn(n),d=t;t=Er(t,i);let l=d!==t;l&&(r=!1);let c=Bi(n);t+=c.size,!o&&(!l&&c.isContiguous?s+=c.size:(o=!0,r=!1,l||(s+=c.longestContiguousPrefix)))}return{isContiguous:r,size:t,longestContiguousPrefix:s}}function j$(e){let t=e.elementType,s=Bi(t),r=s.size,o=Er(r,ks(t)),n=!(o>r)&&s.isContiguous,i=e.elementCount===0?NaN:e.elementCount*o,d;return n?d=i:d=s.longestContiguousPrefix,{size:i,isContiguous:n,longestContiguousPrefix:d}}function K$(e){let t=e.elementType,s=Bi(t),r=s.size,o=Er(r,sn(t)),n=!(o>r)&&s.isContiguous,i=e.elementCount*o,d;return n?d=i:d=s.longestContiguousPrefix,{size:i,isContiguous:n,longestContiguousPrefix:d}}function Bi(e){let t=q$[e.type];if(t!==void 0)return{isContiguous:e.type!==\"mat3x3f\",size:t,longestContiguousPrefix:e.type===\"mat3x3f\"?12:t};if(Es(e))return X$(e);if(Zn(e))return H$(e);if(cr(e))return j$(e);if(Vi(e))return K$(e);if(ya(e)||oi(e)){let s=Fk(e),r=Bi(qo(e));return s?{isContiguous:s===r.size&&r.isContiguous,size:s,longestContiguousPrefix:r.longestContiguousPrefix}:Bi(e.inner)}throw new Error(`Cannot determine memory layout of data: ${e}`)}var lb=new WeakMap;function Vh(e,t){let s=lb.get(e);return s===void 0&&(s=Bi(e),lb.set(e,s)),s[t]}function kt(e){return Vh(e,\"size\")}function cb(e){return kt(e)}var zt=nn(((e,t)=>{if(ya(e)&&!e.attribs.every(K5))throw new Error(\"Arrays cannot hold decorated types other than @location. Wrap it in a struct instead, e.g. d.arrayOf(d.struct({ value: d.align(16, d.u32) }), n).\");return t===void 0?nn(s=>ub(e,s)):ub(e,t)})).$name(\"arrayOf\");function ub(e,t){let s=r=>{if(r&&r.length!==t)throw new Error(`Array schema of ${t} elements of type ${e.type} called with ${r.length} argument(s).`);return Array.from({length:t},(o,n)=>Xa(e,r?.[n]))};if(Object.setPrototypeOf(s,Z$),Number.isNaN(kt(e)))throw new Error(\"Cannot nest runtime sized arrays.\");if(s.elementType=e,!Number.isInteger(t)||t<0)throw new Error(`Cannot create array schema with invalid element count: ${t}.`);return s.elementCount=t,s}var Z$={[q]:!0,type:\"array\",toString(){return`arrayOf(${String(this.elementType)}, ${this.elementCount})`}};function Q$(e){if(\"multisampled\"in e){if(e.multisampled){if(e.dimension===\"2d\")return eC(e.sampleType);throw new Error(`Multisampled textures only support '2d' dimension, got '${e.dimension}'`)}switch(e.dimension){case\"1d\":return J$(e.sampleType);case\"2d\":return Hs(e.sampleType);case\"2d-array\":return tC(e.sampleType);case\"3d\":return oC(e.sampleType);case\"cube\":return sC(e.sampleType);case\"cube-array\":return rC(e.sampleType);default:throw new Error(`Unsupported texture dimension: '${e.dimension}'`)}}if(!(\"access\"in e))throw new Error(\"Descriptor is neither a sampled nor a storage texture\");switch(e.dimension){case\"1d\":return nC(e.format,e.access);case\"2d\":return an(e.format,e.access);case\"2d-array\":return aC(e.format,e.access);case\"3d\":return iC(e.format,e.access);default:throw new Error(`Unsupported storage texture dimension: '${e.dimension}'`)}}function qi(e,t){let s=e.startsWith(\"texture_depth\")?[\"depth\",\"float\",\"unfilterable-float\"]:t.sampleType.type===\"i32\"?[\"sint\"]:t.sampleType.type===\"u32\"?[\"uint\"]:[\"float\",\"unfilterable-float\"];return{[q]:{},[Qd]:void 0,type:e,bindingSampleType:s,...t}}function mm(e,t){return{[q]:{},[Qd]:void 0,type:e,...t}}var _b=new Map,Lc={\"write-only\":\"write\",\"read-only\":\"read\",\"read-write\":\"read_write\"};function cn(e,t){let s=_b.get(e);return s||(s=t(),_b.set(e,s)),s}function J$(e){let t=e||a;return cn(`texture_1d<${t.type}>`,()=>qi(\"texture_1d\",{dimension:\"1d\",sampleType:t,multisampled:!1}))}function Hs(e){let t=e||a;return cn(`texture_2d<${t.type}>`,()=>qi(\"texture_2d\",{dimension:\"2d\",sampleType:t,multisampled:!1}))}function eC(e){let t=e||a;return cn(`texture_multisampled_2d<${t.type}>`,()=>qi(\"texture_multisampled_2d\",{dimension:\"2d\",sampleType:t,multisampled:!0}))}function tC(e){let t=e||a;return cn(`texture_2d_array<${t.type}>`,()=>qi(\"texture_2d_array\",{dimension:\"2d-array\",sampleType:t,multisampled:!1}))}function sC(e){let t=e||a;return cn(`texture_cube<${t.type}>`,()=>qi(\"texture_cube\",{dimension:\"cube\",sampleType:t,multisampled:!1}))}function rC(e){let t=e||a;return cn(`texture_cube_array<${t.type}>`,()=>qi(\"texture_cube_array\",{dimension:\"cube-array\",sampleType:t,multisampled:!1}))}function oC(e){let t=e||a;return cn(`texture_3d<${t.type}>`,()=>qi(\"texture_3d\",{dimension:\"3d\",sampleType:t,multisampled:!1}))}function nC(e,t){let s=t||\"write-only\";return cn(`texture_storage_1d<${e}, ${Lc[s]}>`,()=>mm(\"texture_storage_1d\",{dimension:\"1d\",format:e,access:s}))}function an(e,t){let s=t||\"write-only\";return cn(`texture_storage_2d<${e}, ${Lc[s]}>`,()=>mm(\"texture_storage_2d\",{dimension:\"2d\",format:e,access:s}))}function aC(e,t){let s=t||\"write-only\";return cn(`texture_storage_2d_array<${e}, ${Lc[s]}>`,()=>mm(\"texture_storage_2d_array\",{dimension:\"2d-array\",format:e,access:s}))}function iC(e,t){let s=t||\"write-only\";return cn(`texture_storage_3d<${e}, ${Lc[s]}>`,()=>mm(\"texture_storage_3d\",{dimension:\"3d\",format:e,access:s}))}function K6(){return cn(\"texture_external\",()=>({[q]:{},[Qd]:void 0,type:\"texture_external\",dimension:\"2d\"}))}function Z6(e){return!!e[q]&&typeof e.multisampled==\"boolean\"}function G_(e){return!!e[q]&&typeof e.format==\"string\"&&typeof e.access==\"string\"}function dC(e){return!!e[q]&&e.type===\"texture_external\"}function Nh(){return{[q]:{},type:\"sampler\",[Qd]:void 0}}function Q6(){return{[q]:{},type:\"sampler_comparison\",[Qd]:void 0}}function lC(e){return!!e[q]&&e.type===\"sampler\"}function cC(e){return!!e[q]&&e.type===\"sampler_comparison\"}var lO=nn(((e,t)=>t===void 0?s=>pb(e,s):pb(e,t))).$name(\"disarrayOf\");function pb(e,t){let s=r=>{if(r&&r.length!==t)throw new Error(`Disarray schema of ${t} elements of type ${e.type} called with ${r.length} argument(s).`);return Array.from({length:t},(o,n)=>Xa(e,r?.[n]))};if(Object.setPrototypeOf(s,uC),s.elementType=e,!Number.isInteger(t)||t<0)throw new Error(`Cannot create disarray schema with invalid element count: ${t}.`);return s.elementCount=t,s}var uC={[q]:!0,type:\"disarray\",toString(){return`disarrayOf(${this.elementType}, ${this.elementCount})`}};var cO={[q]:!0,type:\"unstruct\",$name(e){return Tt(this,e),this},toString(){return`unstruct:${Re(this)??\"<unnamed>\"}`}};function _C(e){return new pC(e)}var pC=class{[q]={};type=\"atomic\";inner;constructor(e){this.inner=e}};function fm(e,t){return ya(e)?new mb(e.inner,[t,...e.attribs]):oi(e)?new fb(e.inner,[t,...e.attribs]):am(e)?new fb(e,[t]):new mb(e,[t])}function J6(e,t){return fm(t,{[q]:!0,type:\"@align\",params:[e]})}function ew(e,t){return fm(t,{[q]:!0,type:\"@size\",params:[e]})}function Nf(e,t){return fm(t,{[q]:!0,type:\"@location\",params:[e]})}function Nn(e){return(ya(e)||oi(e))&&e.attribs.find(Ek)!==void 0}function hc(e){return!ya(e)&&!oi(e)?\"\":e.attribs.map(t=>t.params.length===0?`${t.type} `:`${t.type}(${t.params.join(\", \")}) `).join(\"\")}var tw=class{[q]={};inner;attribs;constructor(e,t){this.inner=e,this.attribs=t;let s=t.find(H5)?.params[0],r=t.find(j5)?.params[0];if(s!==void 0){if(s<=0)throw new Error(`Custom data alignment must be a positive number, got: ${s}.`);if(Math.log2(s)%1!==0)throw new Error(`Alignment has to be a power of 2, got: ${s}.`);if(Oi(this.inner)&&s%ks(this.inner)!==0)throw new Error(`Custom alignment has to be a multiple of the standard data alignment. Got: ${s}, expected multiple of: ${ks(this.inner)}.`)}if(r!==void 0){if(r<kt(this.inner))throw new Error(`Custom data size cannot be smaller then the standard data size. Got: ${r}, expected at least: ${kt(this.inner)}.`);if(r<=0)throw new Error(`Custom data size must be a positive number. Got: ${r}.`)}}},mb=class extends tw{[q]={};type=\"decorated\"},fb=class extends tw{[q]={};type=\"loose-decorated\"};function sw(e){return Vh(e,\"isContiguous\")}function rw(e){return Vh(e,\"longestContiguousPrefix\")}var ow=Object.defineProperty,mC=(e,t,s)=>t in e?ow(e,t,{enumerable:!0,configurable:!0,writable:!0,value:s}):e[t]=s,fC=(e,t)=>{for(var s in t)ow(e,s,{get:t[s],enumerable:!0})},Kt=(e,t,s)=>mC(e,typeof t!=\"symbol\"?t+\"\":t,s);fC({},{BufferReader:()=>sl,BufferWriter:()=>Xi,MaxValue:()=>ar,Measurer:()=>Qs,UnresolvedReferenceError:()=>Ti,ValidationError:()=>vm,arrayOf:()=>xC,bool:()=>wC,byte:()=>PC,chars:()=>YC,concat:()=>NC,dynamicArrayOf:()=>XC,f16:()=>LC,f32:()=>BC,f32Array:()=>l4,f64Array:()=>c4,generic:()=>OC,genericEnum:()=>VC,i16:()=>kC,i16Array:()=>i4,i32:()=>UC,i32Array:()=>d4,i8:()=>AC,i8Array:()=>a4,keyed:()=>KC,object:()=>WC,optional:()=>QC,string:()=>TC,tupleOf:()=>t4,u16:()=>CC,u16Array:()=>o4,u32:()=>GC,u32Array:()=>n4,u8:()=>lw,u8Array:()=>s4,u8ClampedArray:()=>r4});var Ti=class nw extends Error{constructor(t){super(t),Object.setPrototypeOf(this,nw.prototype)}},vm=class aw extends Error{constructor(t){super(t),Object.setPrototypeOf(this,aw.prototype)}},vC=class{constructor(){Kt(this,\"size\",NaN),Kt(this,\"unbounded\",this),Kt(this,\"isUnbounded\",!0)}add(){return this}fork(){return this}},hC=new vC,Qs=class iw{constructor(){Kt(this,\"size\",0),Kt(this,\"unbounded\",hC),Kt(this,\"isUnbounded\",!1)}add(t){return this.size+=t,this}fork(){let t=new iw;return t.size=this.size,t}},ar=Symbol(\"The biggest (in amount of bytes needed) value a schema can represent\"),Br=class{constructor(){Kt(this,\"__unwrapped\")}resolveReferences(e){}seekProperty(e,t){return null}},yC=class{constructor(e){this.key=e}},nc={STRING:\"string\",ENUM:\"enum\"},gC=class extends Br{constructor(e,t){super(),this._unstableElementSchema=e,this.length=t,Kt(this,\"elementSchema\"),this.elementSchema=e}resolveReferences(e){this.elementSchema=e.resolve(this._unstableElementSchema)}write(e,t){if(t.length!==this.length)throw new vm(`Expected array of length ${this.length}, got ${t.length}`);for(let s of t)this.elementSchema.write(e,s)}read(e){let t=[];for(let s=0;s<this.length;++s)t.push(this.elementSchema.read(e));return t}get maxSize(){return this.elementSchema.measure(ar).size*this.length}measure(e,t=new Qs){for(let s=0;s<this.length;++s)this.elementSchema.measure(e===ar?ar:e[s],t);return t}};function xC(e,t){return new gC(e,t)}var bC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",1)}read(e){return e.readBool()}write(e,t){e.writeBool(t)}measure(e,t=new Qs){return t.add(1)}},wC=new bC,dw=class Zl extends Br{static get _encoder(){return Zl._cachedEncoder||(Zl._cachedEncoder=new TextEncoder),Zl._cachedEncoder}read(t){return t.readString()}write(t,s){t.writeString(s)}measure(t,s=new Qs){if(t===ar)return s.unbounded;let r=Zl._encoder.encode(t);return s.add(r.byteLength+1)}};Kt(dw,\"_cachedEncoder\");var TC=new dw,SC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",1)}read(e){return e.readInt8()}write(e,t){e.writeInt8(t)}measure(e,t=new Qs){return t.add(1)}},AC=new SC,EC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",1)}read(e){return e.readUint8()}write(e,t){e.writeUint8(t)}measure(e,t=new Qs){return t.add(1)}},lw=new EC,PC=lw,MC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",2)}read(e){return e.readInt16()}write(e,t){e.writeInt16(t)}measure(e,t=new Qs){return t.add(2)}},kC=new MC,$C=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",2)}read(e){return e.readUint16()}write(e,t){e.writeUint16(t)}measure(e,t=new Qs){return t.add(2)}},CC=new $C,RC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",4)}read(e){return e.readInt32()}write(e,t){e.writeInt32(t)}measure(e,t=new Qs){return t.add(4)}},UC=new RC,zC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",4)}read(e){return e.readUint32()}write(e,t){e.writeUint32(t)}measure(e,t=new Qs){return t.add(4)}},GC=new zC,DC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",2)}read(e){return e.readFloat16()}write(e,t){e.writeFloat16(t)}measure(e,t=new Qs){return t.add(2)}},LC=new DC,FC=class extends Br{constructor(){super(...arguments),Kt(this,\"maxSize\",4)}read(e){return e.readFloat32()}write(e,t){e.writeFloat32(t)}measure(e,t=new Qs){return t.add(4)}},BC=new FC,IC=class extends Br{constructor(e){super(),this.length=e}write(e,t){if(t.length!==this.length)throw new vm(`Expected char-string of length ${this.length}, got ${t.length}`);for(let s=0;s<t.length;++s)e.writeUint8(t.charCodeAt(s))}read(e){let t=\"\";for(let s=0;s<this.length;++s)t+=String.fromCharCode(e.readByte());return t}measure(e,t=new Qs){return t.add(this.length)}};function YC(e){return new IC(e)}function Fa(e){return Object.entries(e)}function cw(e,t){let s={};for(let[r,o]of Fa(t))s[r]=e.resolve(o);return s}var qh=class extends Br{constructor(e){super(),this._properties=e,Kt(this,\"properties\"),this.properties=e}resolveReferences(e){this.properties=cw(e,this._properties)}write(e,t){for(let[s,r]of Fa(this.properties))r.write(e,t[s])}read(e){let t={};for(let[s,r]of Fa(this.properties))t[s]=r.read(e);return t}get maxSize(){let e=new Qs;for(let t of Object.values(this.properties))t.measure(ar,e);return e.size}measure(e,t=new Qs){for(let[s,r]of Fa(this.properties))r.measure(e===ar?ar:e[s],t);return t}seekProperty(e,t){let s=0;for(let[r,o]of Fa(this.properties)){if(r===t)return{bufferOffset:s,schema:o};s+=o.measure(e).size}return null}};function WC(e){return new qh(e)}var uw=class extends Br{constructor(e,t,s){super(),this.keyedBy=e,this._subTypeMap=s,Kt(this,\"_baseObject\"),Kt(this,\"subTypeMap\"),this._baseObject=new qh(t),this.subTypeMap=s}resolveReferences(e){this._baseObject.resolveReferences(e),this.subTypeMap=cw(e,this._subTypeMap)}write(e,t){let s=t.type,r=this.subTypeMap[s]||null;if(r===null)throw new Error(`Unknown sub-type '${s.toString()}' in among '${JSON.stringify(Object.keys(this.subTypeMap))}'`);this.keyedBy===nc.ENUM?e.writeUint8(t.type):e.writeString(t.type),this._baseObject.write(e,t);for(let[o,n]of Fa(r.properties))n.write(e,t[o])}read(e){let t=this.keyedBy===nc.ENUM?e.readByte():e.readString(),s=this.subTypeMap[t]||null;if(s===null)throw new Error(`Unknown sub-type '${t}' in among '${JSON.stringify(Object.keys(this.subTypeMap))}'`);let r=this._baseObject.read(e);if(r.type=t,s!==null)for(let[o,n]of Fa(s.properties))r[o]=n.read(e);return r}measure(e,t=new Qs){if(this._baseObject.measure(e,t),this.keyedBy===nc.ENUM)t.add(1);else if(e!==ar)t.add(e.type.length+1);else return t.unbounded;if(e===ar){let s=Object.values(this.subTypeMap).map(r=>{let o=t.fork();for(let n of Object.values(r.properties))n.measure(ar,o);return[r,o.size]}).reduce((r,o)=>r[1]>o[1]?r:o)[0];for(let r of Object.values(s.properties))r.measure(ar,t)}else{let s=e.type,r=this.subTypeMap[s]||null;if(r===null)throw new Error(`Unknown sub-type '${s.toString()}', expected one of '${JSON.stringify(Object.keys(this.subTypeMap))}'`);for(let[o,n]of Fa(r.properties))n.measure(e[o],t)}return t}};function OC(e,t){return new uw(nc.STRING,e,t)}function VC(e,t){return new uw(nc.ENUM,e,t)}function NC(e){return new qh(Object.fromEntries(e.flatMap(({properties:t})=>Object.entries(t))))}var qC=class extends Br{constructor(e){super(),this._unstableElementType=e,Kt(this,\"elementType\"),this.elementType=e}resolveReferences(e){this.elementType=e.resolve(this._unstableElementType)}write(e,t){e.writeUint32(t.length);for(let s of t)this.elementType.write(e,s)}read(e){let t=[],s=e.readUint32();for(let r=0;r<s;++r)t.push(this.elementType.read(e));return t}get maxSize(){return this.measure(ar).size}measure(e,t=new Qs){if(e===ar)return t.unbounded;t.add(4);for(let s of e)this.elementType.measure(s,t);return t}seekProperty(e,t){if(typeof t==\"symbol\")return null;let s=Number.parseInt(String(t),10);if(Number.isNaN(s))return null;if(e===ar)return{bufferOffset:this.elementType.measure(ar).size*s,schema:this.elementType};if(s>=e.length)return null;let r=new Qs;for(let o=0;o<s;++o)this.elementType.measure(e[o],r);return{bufferOffset:r.size,schema:this.elementType}}};function XC(e){return new qC(e)}var _w=class{constructor(e){Kt(this,\"__unwrapped\"),Kt(this,\"ref\"),this.ref=new yC(e)}resolveReferences(){throw new Ti(\"Tried to resolve a reference directly. Do it through a RefResolver instead.\")}read(){throw new Ti(\"Tried to read a reference directly. Resolve it instead.\")}write(){throw new Ti(\"Tried to write a reference directly. Resolve it instead.\")}measure(){throw new Ti(\"Tried to measure size of a reference directly. Resolve it instead.\")}seekProperty(){throw new Ti(\"Tried to seek property of a reference directly. Resolve it instead.\")}},HC=class{constructor(){Kt(this,\"registry\",{})}hasKey(e){return this.registry[e]!==void 0}register(e,t){this.registry[e]=t}resolve(e){if(e instanceof _w){let t=e.ref.key;if(this.registry[t]!==void 0)return this.registry[t];throw new Ti(`Couldn't resolve reference to ${t}. Unknown key.`)}return e.resolveReferences(this),e}},jC=class{constructor(e,t){this.key=e,Kt(this,\"__unwrapped\"),Kt(this,\"__keyDefinition\"),Kt(this,\"innerType\"),this.innerType=t(new _w(e)),this.resolveReferences(new HC)}resolveReferences(e){e.hasKey(this.key)||(e.register(this.key,this.innerType),this.innerType.resolveReferences(e))}read(e){return this.innerType.read(e)}write(e,t){this.innerType.write(e,t)}get maxSize(){return this.measure(ar).size}measure(e,t=new Qs){return this.innerType.measure(e,t)}seekProperty(e,t){return this.innerType.seekProperty(e,t)}};function KC(e,t){return new jC(e,t)}var ZC=class extends Br{constructor(e){super(),this._innerUnstableSchema=e,Kt(this,\"innerSchema\"),this.innerSchema=e}resolveReferences(e){this.innerSchema=e.resolve(this._innerUnstableSchema)}write(e,t){t!=null?(e.writeBool(!0),this.innerSchema.write(e,t)):e.writeBool(!1)}read(e){if(e.readBool())return this.innerSchema.read(e)}get maxSize(){return this.measure(ar).size}measure(e,t=new Qs){return e!==void 0&&this.innerSchema.measure(e,t),t.add(1)}};function QC(e){return new ZC(e)}function JC(e,t){return t.map(s=>e.resolve(s))}var e4=class extends Br{constructor(e){super(),this._unstableSchemas=e,Kt(this,\"schemas\"),this.schemas=e}resolveReferences(e){this.schemas=JC(e,this._unstableSchemas)}write(e,t){if(t.length!==this.schemas.length)throw new vm(`Expected tuple of length ${this.schemas.length}, got ${t.length}`);for(let s=0;s<this.schemas.length;++s)this.schemas[s].write(e,t[s])}read(e){let t=[];for(let s=0;s<this.schemas.length;++s)t.push(this.schemas[s].read(e));return t}get maxSize(){return this.measure(ar).size}measure(e,t=new Qs){for(let s=0;s<this.schemas.length;++s)this.schemas[s].measure(e===ar?ar:e[s],t);return t}};function t4(e){return new e4(e)}var ba=class extends Br{constructor(e,t){super(),this.length=e,this._arrayConstructor=t,Kt(this,\"byteLength\"),this.byteLength=e*t.BYTES_PER_ELEMENT}write(e,t){e.writeSlice(t)}read(e){let t=new ArrayBuffer(this.byteLength),s=new this._arrayConstructor(t,0,this.length);return e.readSlice(s,0,this.byteLength),s}measure(e,t=new Qs){return t.add(this.byteLength)}},s4=e=>new ba(e,Uint8Array),r4=e=>new ba(e,Uint8ClampedArray),o4=e=>new ba(e,Uint16Array),n4=e=>new ba(e,Uint32Array),a4=e=>new ba(e,Int8Array),i4=e=>new ba(e,Int16Array),d4=e=>new ba(e,Int32Array),l4=e=>new ba(e,Float32Array),c4=e=>new ba(e,Float64Array);function u4(){let e=new Uint8Array(4),t=new Uint32Array(e.buffer);return t[0]=1,e[0]===0}function Xh(){return u4()?\"big\":\"little\"}function Hh(e){let t=0,s=e;return s&&\"buffer\"in s&&\"byteOffset\"in s&&(t+=s.byteOffset,s=s.buffer),{buffer:s,byteOffset:t,byteLength:e.byteLength}}var pw=class{constructor(e,t){Kt(this,\"dataView\"),Kt(this,\"littleEndian\"),Kt(this,\"needsByteSwap\"),Kt(this,\"byteOffset\",0),Kt(this,\"endianness\");let{byteOffset:s=0,endianness:r=\"system\"}=t??{};this.byteOffset=s;let o=Xh();this.endianness=r===\"system\"?o:r,this.littleEndian=this.endianness===\"little\",this.needsByteSwap=this.endianness!==o;let n=Hh(e);this.byteOffset+=n.byteOffset,this.dataView=new DataView(n.buffer)}get currentByteOffset(){return this.byteOffset}seekTo(e){this.byteOffset=e}skipBytes(e){this.byteOffset+=e}},sl=class extends pw{constructor(){super(...arguments),Kt(this,\"_cachedTextDecoder\")}get _textDecoder(){return this._cachedTextDecoder||(this._cachedTextDecoder=new TextDecoder(void 0,{fatal:!0})),this._cachedTextDecoder}readBool(){return this.dataView.getUint8(this.byteOffset++)!==0}readByte(){return this.dataView.getUint8(this.byteOffset++)}readInt8(){return this.dataView.getInt8(this.byteOffset++)}readUint8(){return this.dataView.getUint8(this.byteOffset++)}readInt16(){let e=this.dataView.getInt16(this.byteOffset,this.littleEndian);return this.byteOffset+=2,e}readUint16(){let e=this.dataView.getUint16(this.byteOffset,this.littleEndian);return this.byteOffset+=2,e}readInt32(){let e=this.dataView.getInt32(this.byteOffset,this.littleEndian);return this.byteOffset+=4,e}readUint32(){let e=this.dataView.getUint32(this.byteOffset,this.littleEndian);return this.byteOffset+=4,e}readFloat16(){let e=this.dataView.getFloat16(this.byteOffset,this.littleEndian);return this.byteOffset+=2,e}readFloat32(){let e=this.dataView.getFloat32(this.byteOffset,this.littleEndian);return this.byteOffset+=4,e}readString(){let e=0;for(;this.byteOffset+e<this.dataView.byteLength&&this.dataView.getUint8(this.byteOffset+e++)!==0;);let t=this._textDecoder.decode(new Uint8Array(this.dataView.buffer,this.byteOffset,e-1));return this.byteOffset+=e,t}readSlice(e,t,s){let r=Hh(e),o=new Uint8Array(r.buffer,r.byteOffset+t),n=e.BYTES_PER_ELEMENT;if(this.needsByteSwap&&n>1)for(let i=0;i<s;i+=n)for(let d=n-1;d>=0;d--)o[i+d]=this.dataView.getUint8(this.byteOffset++);else o.set(new Uint8Array(this.dataView.buffer,this.byteOffset,s)),this.byteOffset+=s}},Xi=class extends pw{constructor(){super(...arguments),Kt(this,\"_cachedTextEncoder\")}get _textEncoder(){return this._cachedTextEncoder||(this._cachedTextEncoder=new TextEncoder),this._cachedTextEncoder}writeBool(e){this.dataView.setUint8(this.byteOffset++,e?1:0)}writeByte(e){this.dataView.setUint8(this.byteOffset++,e)}writeInt8(e){this.dataView.setInt8(this.byteOffset++,e)}writeUint8(e){this.dataView.setUint8(this.byteOffset++,e)}writeInt16(e){this.dataView.setInt16(this.byteOffset,e,this.littleEndian),this.byteOffset+=2}writeUint16(e){this.dataView.setUint16(this.byteOffset,e,this.littleEndian),this.byteOffset+=2}writeInt32(e){this.dataView.setInt32(this.byteOffset,e,this.littleEndian),this.byteOffset+=4}writeUint32(e){this.dataView.setUint32(this.byteOffset,e,this.littleEndian),this.byteOffset+=4}writeFloat16(e){this.dataView.setFloat16(this.byteOffset,e,this.littleEndian),this.byteOffset+=2}writeFloat32(e){this.dataView.setFloat32(this.byteOffset,e,this.littleEndian),this.byteOffset+=4}writeString(e){let t=this._textEncoder.encodeInto(e,new Uint8Array(this.dataView.buffer,this.byteOffset));this.byteOffset+=t.written,this.dataView.setUint8(this.byteOffset++,0)}writeSlice(e){let t=Hh(e),s=new Uint8Array(t.buffer,t.byteOffset,t.byteLength),r=e.BYTES_PER_ELEMENT;if(this.needsByteSwap&&r>1)for(let o=0;o<s.length;o+=r)for(let n=r-1;n>=0;n--)this.dataView.setUint8(this.byteOffset++,s[o+n]);else new Uint8Array(this.dataView.buffer,this.byteOffset).set(s),this.byteOffset+=s.length}};function _4(e,t){let s=\"size\"in e?e.size:e.currentByteOffset,r=t-1,o=s&r;\"skipBytes\"in e?e.skipBytes(t-o&r):e.add(t-o&r)}var Tr=_4,vb=new WeakMap;function hm(e){let t=vb.get(e);if(t)return t;let s=new Qs,r={},o;for(let n in e.propTypes){let i=e.propTypes[n];if(i===void 0)throw new Error(`Property ${n} is undefined in struct`);let d=s.size;Tr(s,Zn(e)?sn(i):ks(i)),o&&(o.padding=s.size-d);let l=kt(i);r[n]={offset:s.size,size:l},o=r[n],s.add(l)}return o&&(o.padding=Er(kt(e),ks(e))-s.size),vb.set(e,r),r}var Ha=Symbol(\"indirectOffset\"),ja=Symbol(\"indirectContiguous\");function p4(e){return typeof e==\"object\"&&e!==null&&Ha in e&&ja in e}function Ql(e,t){return{[Ha]:e,[ja]:t}}function jh(e,t){if(t===Ha)return e[Ha];if(t===ja)return e[ja]}function Kh(e,t,s=kt(e)){let r=qo(e),o=as(r)?r.componentCount:void 0;if(o!==void 0){let n=kt(r.primitive);return f4(Ql(t,s),n,o)}return Es(r)?h4(r,Ql(t,s)):cr(r)?v4(r,Ql(t,s)):Ql(t,s)}function m4(e,t=0){return Kh(e,t,kt(e))}function f4(e,t,s){let r=e[Ha];return new Proxy(e,{get(o,n){let i=jh(o,n);if(i!==void 0)return i;let d=n===\"x\"||n===\"0\"?0:n===\"y\"||n===\"1\"?1:n===\"z\"||n===\"2\"?2:n===\"w\"||n===\"3\"?3:-1;if(d<0||d>=s)return;let l=d*t,c=Math.max(0,o[ja]-l);return Ql(r+l,c)}})}function v4(e,t){let s=e.elementType,r=kt(s),o=Er(r,ks(s)),n=o>r;return new Proxy(t,{get(i,d){let l=jh(i,d);if(l!==void 0)return l;if(d===\"length\")return e.elementCount;if(typeof d!=\"string\")return;let c=Number(d);if(!Number.isInteger(c)||c<0||c>=e.elementCount)return;let _=c*o,p=sw(s)?Math.max(0,i[ja]-_):r+rw(s),f=n?Math.min(p,r):p;return Kh(s,i[Ha]+_,f)}})}function h4(e,t){let s=hm(e),r=e.propTypes,o=Object.keys(r),n=new Map,i=0;for(let d=0;d<o.length;d++){let l=o[d];if(!l)continue;let c=r[l];if(!c)continue;let _=s[l],p=_.padding??0,f=sw(c);if(!(d===o.length-1||p>0||!f))continue;let h=_.offset+(f?_.size:rw(c));for(let g=i;g<=d;g++){let x=o[g];if(!x)continue;let T=s[x];n.set(x,{offset:T.offset,runEnd:h})}i=d+1}return new Proxy(t,{get(d,l){let c=jh(d,l);if(c!==void 0)return c;if(typeof l!=\"string\")return;let _=n.get(l);if(!_)return;let p=Math.max(0,d[ja]-_.offset),f=Math.max(0,_.runEnd-_.offset),h=r[l];if(h)return Kh(h,d[Ha]+_.offset,kt(e)===_.runEnd?p:f)}})}function y4(e){let t=qo(e);if(Es(t)){let s=hm(t),r=t.propTypes,o=Object.keys(r);for(let n=0;n<o.length;n++){let i=o[n];if(!i)continue;let d=s[i],l=d.padding??0,c=d.offset+d.size;if(n===o.length-1||l>0)return c}return 0}if(cr(t)){let s=t.elementType,r=kt(s),o=Er(r,ks(s)),n=kt(e);return Number.isFinite(n)?o>r?r:n:r}return kt(e)}function D_(e,t){if(!t)return{offset:0,contiguous:y4(e)};let s=t(m4(e));if(p4(s))return{offset:s[Ha],contiguous:s[ja]};throw new Error(\"memoryLayoutOf: accessor did not return a schema element. Make sure the accessor navigates to a field or element of the schema (e.g. `(s) => s.position.x`).\")}function pr(e,t){return fm(e,{[q]:!0,type:\"@builtin\",params:[t]})}var qr={vertexIndex:pr(Y,\"vertex_index\"),instanceIndex:pr(Y,\"instance_index\"),clipDistances:pr(zt(Y,8),\"clip_distances\"),position:pr(lt,\"position\"),frontFacing:pr(Ft,\"front_facing\"),fragDepth:pr(a,\"frag_depth\"),primitiveIndex:pr(Y,\"primitive_index\"),sampleIndex:pr(Y,\"sample_index\"),sampleMask:pr(Y,\"sample_mask\"),localInvocationId:pr(Ot,\"local_invocation_id\"),localInvocationIndex:pr(Y,\"local_invocation_index\"),globalInvocationId:pr(Ot,\"global_invocation_id\"),globalInvocationIndex:pr(Y,\"global_invocation_index\"),workgroupId:pr(Ot,\"workgroup_id\"),workgroupIndex:pr(Y,\"workgroup_index\"),numWorkgroups:pr(Ot,\"num_workgroups\"),subgroupInvocationId:pr(Y,\"subgroup_invocation_id\"),subgroupSize:pr(Y,\"subgroup_size\"),subgroupId:pr(Y,\"subgroup_id\"),numSubgroups:pr(Y,\"num_subgroups\")};var uO=(Fr(),So),u=(Fr(),$t),_O=(Fr(),Sr),tp=(Fr(),xs),He=(Fr(),ns),pO=(Fr(),Ao),v=(Fr(),cs),mO=(Fr(),po),fO=(Fr(),Os),Gi=(Fr(),Ot),vO=(Fr(),Eo),b=(Fr(),lt),hO=(Fr(),Ar),yO=(Fr(),ps),gO=(Fr(),es),xO=(Fr(),ga),rl=(Fr(),xa),bO=(Fr(),Mr);function g4(e){return e?.[$o]}function Zh(e,t={}){let s=0,r=new Set;return Object.fromEntries(Object.entries(e??{}).map(([o,n])=>{let i=qa(n);if(i!==void 0){if(r.has(i))throw new Error(\"Duplicate custom location attributes found\");r.add(i)}return[o,n]}).map(([o,n])=>{if(Nn(n))return[o,n];if(qa(n)!==void 0)return[o,n];if(t[o])return[o,Nf(t[o],n)];for(;r.has(s);)s++;return[o,Nf(s++,n)]}))}function mw(e,t={}){let s=[],r={};for(let[o,n]of Object.entries(e))Nn(n)?s.push({schemaKey:o,type:n}):r[o]=n;return{dataSchema:Object.keys(r).length>0?pm(Zh(r,t),!1):void 0,positionalArgs:s}}function x4(e){let t=Zh(e);return{dataSchema:void 0,positionalArgs:Object.entries(t).map(([s,r])=>({schemaKey:s,type:r}))}}function Fc(e,t={}){return $c(e)?om(e)||Nn(e)||qa(e)!==void 0?e:Nf(0,e):pm(Zh(e,t),!1)}var Sn=class{#e;#t;#s;#r;#o;#n;constructor(e,t,s){this.#e=e,this.#n=t,this.#t={},this.#r=s,this.#s=new Set}accessProp(e){let t=this.#e[e]??this.#n;if(t)return this.provideProp(e,t)}provideProp(e,t){let s=this.#t[e];if(!s){let r=e.replaceAll(\"$\",\"\");if(this.#s.has(r))throw new Error(`Property name '${r}' causes naming clashes. Choose a different name.`);let o=H6(r);if(!o.success)throw new Error(`Invalid property key '${e}'${o.error?`: ${o.error}`:\"\"}`);this.#s.add(r),s={prop:r,type:t},this.#t[e]=s}return s}get completeStruct(){if(!this.#o){this.#o=Fc(Object.fromEntries(Object.values(this.#t).map(t=>[t.prop,t.type])),this.#r);let e=Re(this);e&&Tt(this.#o,e)}return this.#o}[ts](e){return e.resolve(this.completeStruct)}toString(){return`auto-struct:${Re(this)??\"<unnamed>\"}`}};Sn.prototype[q]={};Sn.prototype.type=\"auto-struct\";var fw=class{[q]={};type=\"entry-input-router\";structArg;positionalArgsMap;constructor(e,t){this.structArg=e,this.positionalArgsMap=new Map(t.map(s=>[s.schemaKey,s.arg]))}toString(){return\"entry-input-router\"}accessProp(e){let t=this.positionalArgsMap.get(e);if(t)return t();let s=this.structArg?.();if(s&&Es(s.dataType))return{target:s,prop:e}}},b4=[\"vec2f\",\"vec3f\",\"vec4f\",\"vec2h\",\"vec3h\",\"vec4h\",\"vec2i\",\"vec3i\",\"vec4i\",\"vec2u\",\"vec3u\",\"vec4u\",\"mat2x2f\",\"mat3x3f\",\"mat4x4f\"],w4={f:{1:a,2:$t,3:cs,4:lt},h:{1:Zs,2:Sr,3:po,4:Ar},i:{1:oe,2:xs,3:Os,4:ps},u:{1:Y,2:ns,3:Ot,4:es},b:{1:Ft,2:So,3:Ao,4:Eo}};function Rd(e,t){if(b4.includes(e.dataType.type)&&t in Vf){let r=Vf[t];return Ae(new Wh(e,r),os,e.origin,e.possibleSideEffects)}if(cr(e.dataType)&&t===\"length\")return e.dataType.elementCount===0?Ae(fe`arrayLength(&${e})`,Y,\"runtime\",e.possibleSideEffects):Vn(e.dataType.elementCount);if(On(e.dataType)&&t===\"columns\")return Ae(new _6(e),os,e.origin,e.possibleSideEffects);if(Es(e.dataType)||Zn(e.dataType))return w6(e,t);if(e.dataType instanceof Sn){let r=e.dataType.accessProp(t);return r?Ae(fe`${e}.${r.prop}`,r.type,\"argument\",e.possibleSideEffects):void 0}if(e.dataType instanceof fw){let r=e.dataType.accessProp(t);return Rc(r)?r:r?Rd(r.target,r.prop):void 0}if(Hr(e.dataType)){let r=yh(e);return t===\"$\"?r:Rd(r,t)}if(as(e.dataType)&&t===\"kind\")return Ae(e.dataType.type,os,\"constant\",!1);let s=t.length;if(as(e.dataType)&&s>=1&&s<=4&&/^[xyzw]+$|^[rgba]+$/.test(t)){let r=w4[e.dataType.type.includes(\"bool\")?\"b\":e.dataType.type[4]][s];return r?Ae(js(e)?e.value[t]:fe`${e}.${t}`,r,s===1?e.origin:e.origin===\"constant\"||e.origin===\"constant-immutable-def\"?\"constant\":\"runtime\",e.possibleSideEffects):void 0}if(js(e)||e.dataType===os){let r=e.value[t];return $d(r)&&Re(r)===void 0&&Tt(r,t),To(r)}}var hb={mat2x2f:$t,mat3x3f:cs,mat4x4f:lt};function ym(e,t){let s=typeof t==\"number\"?To(t):t;if(cr(e.dataType)||Vi(e.dataType)){let r=e.dataType.elementType,o;return e.origin===\"constant-immutable-def\"?o=s.origin===\"constant\"||s.origin===\"constant-immutable-def\"?\"constant-immutable-def\":\"runtime-immutable-def\":e.origin===\"constant\"?o=s.origin===\"constant\"||s.origin===\"constant-immutable-def\"?\"constant\":\"runtime\":o=e.origin,e.value instanceof oc&&js(s)?e.value.elements[s.value]:Ae(js(e)&&js(s)?e.value[s.value]:fe`${e}[${s}]`,r,o,e.possibleSideEffects||s.possibleSideEffects)}if(as(e.dataType))return Ae(js(e)&&js(s)?e.value[s.value]:fe`${e}[${s}]`,e.dataType.primitive,e.origin,e.possibleSideEffects||s.possibleSideEffects);if(Hr(e.dataType))return ym(yh(e),s);if(e.value instanceof _6){let r=hb[e.value.matrix.dataType.type];return Ae(fe`${e.value.matrix}[${s}]`,r,e.origin,e.possibleSideEffects||s.possibleSideEffects)}if(e.dataType.type in hb)throw new Error(\"The only way of accessing matrix elements in TypeGPU functions is through the 'columns' property.\");if(js(e)&&js(s))return To(e.value[s.value]);if(Es(e.dataType)&&js(s)&&typeof s.value==\"string\")return Rd(e,s.value)}var Ud={get(e,t){if(t in e)return Reflect.get(e,t);if(t===\"toString\"||t===Symbol.toStringTag||t===Symbol.toPrimitive)return()=>e.toString();if(typeof t==\"symbol\")return;let s=im(e),r=Number(t);if(!Number.isNaN(r)){let n=ym(s,r);return n?new Proxy({[q]:!0,[ts]:i=>i.resolveSnippet(n),[Na]:n,toString:()=>`${String(e)}[${t}]`},Ud):void 0}let o=Rd(s,String(t));if(o)return new Proxy({[q]:!0,[ts]:n=>n.resolveSnippet(o),[Na]:o,toString:()=>`${String(e)}.${t}`},Ud)}};function sp(e){let t=e;for(;;){let s=g4(t);if(!s)break;t=s}return t}function Qn(e,t){return Object.defineProperty(e,$o,{get(){if(\"get\"in t.codegenMode)return t.codegenMode.get.apply(this);let s=this;return new Proxy({[q]:!0,get[Na](){if(!(\"getBaseSnippet\"in t.codegenMode))throw new Error(\"Expected 'getBaseSnippet' to be defined.\");return t.codegenMode.getBaseSnippet.apply(s,[this])},[ts]:r=>r.resolve(s),toString:()=>`${s.toString()}.$`},Ud)}}),Object.defineProperty(e,\"$\",{get(){let s=Vx();return s.type===\"codegen\"?this[$o]:s.type===\"simulate\"?t.simulateMode?.get?t.simulateMode.get.apply(this,[s]):t.normalMode.get.apply(this):s.type===\"normal\"?t.normalMode.get.apply(this):vc(s,\"makeDereferenceable.ts#$ (get)\")},set(s){let r=Vx();if(r.type===\"normal\"){if(!t.normalMode.set)throw new Error(`'${this.toString()}' cannot be set in normal mode`);t.normalMode.set.apply(this,[s]);return}if(r.type===\"simulate\"){if(t.simulateMode?.set)t.simulateMode.set.apply(this,[r,s]);else if(t.normalMode.set)t.normalMode.set.apply(this,[s]);else throw new Error(`'${this.toString()}' cannot be set in simulate mode`);return}if(r.type===\"codegen\")throw new Error(\"Unreachable makeDerefenceable.ts#$ (set)\");return vc(r,\"makeDereferenceable.ts#$ (set)\")}}),e}function wa(e,t){return Rt(e)||Object.defineProperty(e,q,{value:!0,writable:!0}),Object.defineProperty(e,\"toString\",{value(){return t.asString.apply(this)}}),Object.defineProperty(e,ts,{value(s){return t.resolve.apply(this,[s])}}),e}function Qh(e,t){if(!$c(e)){if(!Array.isArray(t))throw new Error(`Expected an array value for a partially-applied array schema, but received: ${typeof t}.`);return new yb(e(t.length),t)}return new yb(e,t)}function vw(e){let t=Reflect.ownKeys(e);for(let s of t){let r=e[s];(r&&typeof r==\"object\"||typeof r==\"function\")&&vw(r)}return Object.freeze(e)}var yb=class L_{[be];static#e=void(L_.prototype[q]={},L_.prototype.resourceType=\"const\",Qn(wa(L_.prototype,{asString(){return`const:${Re(this)??\"<unnamed>\"}`},resolve(t){let s=t.makeUniqueIdentifier(Re(this),\"global\");return t.gen.declareGlobalConst({id:s,dataType:this.dataType,init:Ae(this[be].value,this.dataType,\"constant\")})}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.dataType,\"constant-immutable-def\",!1)}},normalMode:{get(){return this[be].value}}}));constructor(t,s){this[be]={type:\"const\",dataType:t,value:s&&typeof s==\"object\"?vw(s):s,label:void 0}}get dataType(){return this[be].dataType}$name(t){return Tt(this,t),this}};function T4(e){return qk(e)||am(e)||Cd(e)}function gb(e){let t=e.pluginProvided??e.userProvided??{},s=Object.defineProperties({},Object.getOwnPropertyDescriptors(t));for(let r of[e.args,e.out].filter(o=>o!==void 0))for(let[o,n]of Object.entries(r)){if(o in s&&s[o]!==n)throw new Error(`Key '${o}' appears in externals despite already being used for argument/return type. Please rename this external.`);s[o]=n}return s}function S4(e,t,s){let r=[...e.matchAll(/:\\s*(?<arg>.*?)\\s*[,)]/g)].map(n=>n?.[1]),o=Object.fromEntries(t.flatMap((n,i)=>{let d=r?.[i];return Es(n)&&d!==void 0?[[d,n]]:[]}));s.setExternals(\"args\",o)}function hw(e,t,s){let r=e.match(/->\\s(?<output>[\\w\\d_]+)\\s{/),o=r?r[1]?.trim():void 0;Es(t)&&o&&!/\\s/g.test(o)&&s.setExternals(\"out\",{[o]:t})}var xb=/([$_\\p{XID_Start}][$\\p{XID_Continue}]*)/u,A4=new RegExp(`(${xb.source})(\\\\.${xb.source})*`,\"ug\"),E4=new RegExp(`(?<![\\\\p{XID_Continue}\\\\$.])${A4.source}(?![\\\\p{XID_Continue}\\\\$])`,\"ug\");function gm(e,t,s){let r=Object.keys(t);if(r.length===0)return s;let o=r.find(n=>n.includes(\".\"));if(o)throw new Error(`External key '${o}' contains invalid character '.'`);return s.replaceAll(E4,n=>{let i=n.split(\".\");if(!Object.hasOwn(t,i.at(0)))return n;let d=t,l=\"\";for(let[c,_]of i.entries()){if(d=d[_],T4(d)||typeof d==\"string\"){l=i.slice(c+1).map(p=>`.${p}`).join(\"\"),$d(d)&&Re(d)===void 0&&Tt(d,i.slice(0,c+1).join(\"_\"));break}if(typeof d!=\"object\"||d===null||c===i.length-1)return fs.warn(\"external-omitted\",`During resolution, the external '${i.slice(0,c+1).join(\".\")}' has been omitted. Only TGPU resources, 'use gpu' functions, primitives, and plain JS objects can be used as externals.`),n}return e.resolve(d).value+l})}var P4=class{[q]=!0;#e;constructor(e){this.#e=e}[ts](){return Ae(this.#e,os,\"runtime\",!0)}},Jh=new Set([`\n`,\"\\v\",\"\\f\",\"\\r\",\"\\x85\",\"\\u2028\",\"\\u2029\"]),yw=new Set([...Jh,\" \",\"\t\",\"\\u200E\",\"\\u200F\"]);function M4(e){let{strippedCode:t,argRange:s}=k4(e),r=new gw(t);r.consume(\"(\");let o=[];for(;!r.isAt(\")\");){let i=[];for(;r.isAt(\"@\");)r.parseUntil(bb,wb),r.consume(\")\"),i.push(r.lastParsed);r.parseUntil($4);let d=r.lastParsed,l;r.isAt(\":\")&&(r.consume(\":\"),r.parseUntil(C4,U4),l=r.lastParsed),o.push({identifier:d,attributes:i,type:l}),r.isAt(\",\")&&r.consume(\",\")}r.consume(\")\");let n;if(r.isAt(\"->\")){r.consume(\"->\");let i=[];for(;r.isAt(\"@\");)r.parseUntil(bb,wb),r.consume(\")\"),i.push(r.lastParsed);n={type:r.str.slice(r.pos),attributes:i}}return{args:o,ret:n,range:{begin:s[0],end:s[1]}}}function k4(e){let t=new gw(e),s=\"\",r;for(;!t.isFinished();){if(t.isAt(yw)){t.advanceBy(1);continue}if(t.isAt(\"//\")){t.consume(\"//\"),t.parseUntil(Jh),t.advanceBy(1);continue}if(t.isAt(\"/*\")){t.parseUntil(R4,z4),t.consume(\"*/\");continue}if(t.isAt(\"{\"))return{strippedCode:s,argRange:[r,t.pos]};t.isAt(\"(\")&&r===void 0&&(r=t.pos),r!==void 0&&(s+=t.str[t.pos]),t.advanceBy(1)}throw new Error(\"Invalid wgsl code!\")}var gw=class{str;#e;#t;constructor(e){this.str=e,this.#t=0}get pos(){return this.#t}get lastParsed(){if(this.#e===void 0)throw new Error(\"Parse was not called yet!\");return this.str.slice(this.#e,this.pos)}isFinished(){return this.#t>=this.str.length}isAt(e){if(typeof e==\"string\"){for(let t=0;t<e.length;t++)if(this.str[this.#t+t]!==e[t])return!1;return!0}for(let t of e)if(this.isAt(t))return!0;return!1}parseUntil(e,t){this.#e=this.#t;let s=0;for(;this.#t<this.str.length;){if(t&&this.isAt(t[0])&&(s+=1),t&&this.isAt(t[1])&&(s-=1),s===0&&this.isAt(e))return this.#t;this.#t+=1}throw new Error(\"Reached the end of the string without finding a match!\")}advanceBy(e){this.#t+=e}consume(e){if(!this.isAt(e))throw new Error(`Expected '${e}' at position ${this.#t}, but found '${this.str.slice(this.#t,this.#t+e.length)}'`);this.advanceBy(e.length)}},bb=new Set([\")\"]),$4=new Set([\":\",\",\",\")\"]),C4=new Set([\",\",\")\"]),R4=new Set([\"*/\"]),wb=[\"(\",\")\"],U4=[\"<\",\">\"],z4=[\"/*\",\"*/\"];function Hi(e,t,s){let r={};return{[Pr]:typeof e==\"function\"?e:void 0,setExternals(o,n){if(o===\"userProvided\"&&\"userProvided\"in r)throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");if(r[o]=n,r.userProvided&&r.pluginProvided)throw new Error(\"Cannot call '$uses' on functions whose metadata was provided by unplugin-typegpu.\")},resolve(o,n,i,d){let l=\"\";t===\"compute\"?l=`@compute @workgroup_size(${s?.join(\", \")}) `:t===\"vertex\"?l=\"@vertex \":t===\"fragment\"&&(l=\"@fragment \");let c=o.makeUniqueIdentifier(Re(this),\"global\");if(typeof e==\"string\"){if(!i)throw new Error(\"Explicit return type is required for string implementation\");if(d){for(let E of d.positionalArgs){let M=_m(E.schemaKey);if(!M.success)throw new Error(`Invalid argument name \"${E.schemaKey}\"${M.error?`: ${M.error}`:\"\"}`);if(o.isIdentifierBanned(E.schemaKey))throw new Error(`Invalid argument name \"${E.schemaKey}\", the identifier is a reserved keyword.`)}this.setExternals(\"args\",{in:Object.fromEntries(d.positionalArgs.map(E=>[E.schemaKey,new P4(E.schemaKey)]))})}let T=gm(o,gb(r),e),S=\"\",A=\"\";if(t!==\"normal\"&&d){let{dataSchema:E,positionalArgs:M}=d,$=[];E&&Tb(\"in\",T)&&$.push(`in: ${o.resolve(E).value}`);for(let D of M){let G=D.schemaKey;Tb(G,T)&&$.push(`${hc(D.type)}${G}: ${o.resolve(D.type).value}`)}let L=`(${$.join(\", \")})`,B=Oi(i)?hc(i):\"\";S=`${L}${i!==Ns?Es(i)?` -> ${o.resolve(i).value} `:` -> ${B!==\"\"?B:\"@location(0)\"} ${o.resolve(i).value} `:\" \"}`,A=T}else{let E=M4(T);if(E.args.length!==n.length)throw new Error(`WGSL implementation has ${E.args.length} arguments, while the shell has ${n.length} arguments.`);S=`(${E.args.map((M,$)=>`${M.identifier}: ${Sb(o,`parameter ${M.identifier}`,M.type,n[$])}`).join(\", \")})${i===Ns?\" \":` -> ${Sb(o,\"return type\",E.ret?.type,i)} `}`,A=T.slice(E.range.end)}return o.addDeclaration(`${l}fn ${c}${S}${A}`,c),Ae(c,i,\"runtime\")}let _=mh(e),p=_?.externals();p&&this.setExternals(\"pluginProvided\",p);let f=_?.ast;if(!f)throw new Error(\"Missing metadata for tgpu.fn function body (either missing 'use gpu' directive, or misconfigured `unplugin-typegpu`)\");let h=f.params[1];h&&h.type===\"i\"&&t!==\"normal\"&&this.setExternals(\"out\",{[h.name]:qo(i)});let{code:g,returnType:x}=o.resolveFunction({functionType:t,name:c,workgroupSize:s,argTypes:n,entryInput:d,params:f.params,returnType:i,body:f.body,externalMap:gb(r)});return o.addDeclaration(g,c),Ae(c,x,\"runtime\")}}}function Tb(e,t){return new RegExp(`\\\\b${e}\\\\b`).test(t)}function Sb(e,t,s,r){let o=e.resolve(r).value.replace(/\\s/g,\"\");if(!s)return o;let n=s.replace(/\\s/g,\"\");if(n!==o)throw new Error(`Type mismatch between TGPU shell and WGSL code string: ${t}, JS type \"${o}\", WGSL type \"${n}\".`);return s}function xm(e,...t){return G4(e)?D4(e,...t):e}function G4(e){return Array.isArray(e)&&\"raw\"in e&&Array.isArray(e.raw)&&e.raw.every(t=>typeof t==\"string\")}function D4(e,...t){return e.slice(1).reduce((s,r,o)=>`${s}${t[o]}${r}`,e[0])}function gs(e,t){if(typeof e==\"function\")return bw(e,[]);let s=e,r={[q]:!0,argTypes:s,returnType:t??Ns};return Object.assign((n,...i)=>L4(r,xm(n,...i)),r)}function qf(e){return Rt(e)&&e?.resourceType===\"function\"}function Xf(e){return Rt(e)&&e?.resourceType===\"generic-function\"}function xw([e,t]){return`${Re(e)??\"<unnamed>\"}=${t}`}function L4(e,t){let s=[],r;Xf(t)?(s=t[co]?.pairs??[],r=t[q].inner):r=t;let o=Hi(r,\"normal\"),n={shell:e,resourceType:\"function\",[q]:{implementation:r},$uses(l){return o.setExternals(\"userProvided\",l),this},[Pr]:o,$name(l){return Tt(this,l),this},with:nn((l,c)=>Hf(d,[[Jd(l)||el(l)?l.slot:l,c]])),[ts](l){return typeof r==\"string\"&&(S4(r,e.argTypes,o),hw(r,e.returnType,o)),o.resolve(l,e.argTypes,e.returnType)}},i=we({name:void 0,noComptime:!0,signature:{argTypes:e.argTypes,returnType:e.returnType},normalImpl:(...l)=>Xk(()=>{try{if(typeof r==\"string\")throw new Error(\"Cannot execute on the CPU functions constructed with raw WGSL\");let c=l.map((p,f)=>Xa(e.argTypes[f],p)),_=r(...c);return Xa(e.returnType,_)}catch(c){throw c instanceof Yx?c.appendToTrace(d):new Yx(c,[d])}}),codegenImpl:(l,c)=>l.withResetIndentLevel(()=>fe`${l.resolve(d).value}(${c})`),sideEffects:!0}),d=Object.assign(i,n);return Object.defineProperty(d,\"toString\",{value(){return`fn:${Re(o)??\"<unnamed>\"}`}}),s.length>0?Hf(d,s):d}function Hf(e,t){let s={resourceType:\"function\",shell:e.shell,[q]:{implementation:e[q].implementation},[co]:{inner:e,pairs:t},$uses(i){return e.$uses(i),this},$name(i){return Tt(this,i),this},with:nn((i,d)=>{let l=Jd(i)||el(i)?i.slot:i;return Hf(e,[...t,[l,d]])})},r=we({name:void 0,noComptime:!0,signature:{argTypes:e.shell.argTypes,returnType:e.shell.returnType},normalImpl:e,codegenImpl:(i,d)=>i.withResetIndentLevel(()=>fe`${i.resolve(o).value}(${d})`),sideEffects:!0}),o=Object.assign(r,s);Object.defineProperty(o,\"toString\",{value(){return`fn:${Re(this)??\"<unnamed>\"}[${t.map(xw).join(\", \")}]`}});let n=Re(e);return n&&Tt(o,n),o}function bw(e,t){let s={[q]:{inner:e},resourceType:\"generic-function\",[co]:t.length>0?{inner:e,pairs:t}:void 0,$name(i){return Tt(this,i),Re(e)||Tt(e,i),this},[ts](i){return i.resolve(e)},with(i,d){let l=Jd(i)||el(i)?i.slot:i;return bw(e,[...t,[l,d]])}},o=Object.assign((...i)=>e(...i),s),n=Re(e);return n&&Tt(o,n),Object.defineProperty(o,\"toString\",{value(){let i=Re(o)??\"<unnamed>\";return t.length>0?`fn*:${i}[${t.map(xw).join(\", \")}]`:`fn*:${i}`}}),o}var F4={block:0,binaryExpr:1,assignmentExpr:2,logicalExpr:3,unaryExpr:4,numericLiteral:5,call:6,memberAccess:7,indexAccess:8,return:10,if:11,let:12,const:13,for:14,while:15,continue:16,break:17,forOf:18,arrayExpr:100,preUpdate:101,postUpdate:102,stringLiteral:103,objectExpr:104,conditionalExpr:105},Jl={identifier:\"i\",destructuredObject:\"d\"},ww=Pn({FuncParameterType:()=>Jl,NodeTypeCatalog:()=>F4}),ey=e=>({argTypes:[e],returnType:e}),ty=(...e)=>{let t=jr(e)??e;return{argTypes:t,returnType:t[0]}},Ht=e=>(...t)=>{let s=jr(t,e);if(!s)throw new er(t,e);return{argTypes:s,returnType:s[0]}};function Tw(e){return(t,...s)=>{let r=t;for(let o of s)r=e(r,o);return r}}function Sw(e){return(t,[s,...r])=>{let o=fe`${s}`;for(let n of r)o=fe`${e}(${o}, ${n})`;return o}}var B4=[a,Zs,Fi],yc=[$t,cs,lt,Sr,po,Ar],Xt=[...B4,...yc],I4=[oe,Y],Y4=[xs,Os,ps,ns,Ot,es],fa=[...I4,...Y4];function W4(e){return qt(Math.abs,[e])}var W=we({name:\"abs\",signature:ey,normalImpl:W4,codegenImpl:(e,[t])=>fe`abs(${t})`,sideEffects:!1});function O4(e){return qt(Math.acos,[e])}var V4=we({name:\"acos\",signature:Ht(Xt),normalImpl:O4,codegenImpl:(e,[t])=>fe`acos(${t})`,sideEffects:!1});function N4(e){return qt(Math.acosh,[e])}var q4=we({name:\"acosh\",signature:Ht(Xt),normalImpl:N4,codegenImpl:(e,[t])=>fe`acosh(${t})`,sideEffects:!1});function X4(e){return qt(Math.asin,[e])}var jf=we({name:\"asin\",signature:Ht(Xt),normalImpl:X4,codegenImpl:(e,[t])=>fe`asin(${t})`,sideEffects:!1});function H4(e){return qt(Math.asinh,[e])}var j4=we({name:\"asinh\",signature:Ht(Xt),normalImpl:H4,codegenImpl:(e,[t])=>fe`asinh(${t})`,sideEffects:!1});function K4(e){return qt(Math.atan,[e])}var Z4=we({name:\"atan\",signature:Ht(Xt),normalImpl:K4,codegenImpl:(e,[t])=>fe`atan(${t})`,sideEffects:!1});function Q4(e){return qt(Math.atanh,[e])}var J4=we({name:\"atanh\",signature:Ht(Xt),normalImpl:Q4,codegenImpl:(e,[t])=>fe`atanh(${t})`,sideEffects:!1});function eR(e,t){return qt(Math.atan2,[e,t])}var bt=we({name:\"atan2\",signature:Ht(Xt),normalImpl:eR,codegenImpl:(e,[t,s])=>fe`atan2(${t}, ${s})`,sideEffects:!1});function tR(e){return qt(Math.ceil,[e])}var ac=we({name:\"ceil\",signature:Ht(Xt),normalImpl:tR,codegenImpl:(e,[t])=>fe`ceil(${t})`,sideEffects:!1});function sR(e,t,s){return qt(B6,[e,t,s])}var z=we({name:\"clamp\",signature:ty,normalImpl:sR,codegenImpl:(e,[t,s,r])=>fe`clamp(${t}, ${s}, ${r})`,sideEffects:!1});function rR(e){return qt(Math.cos,[e])}var J=we({name:\"cos\",signature:Ht(Xt),normalImpl:rR,codegenImpl:(e,[t])=>fe`cos(${t})`,sideEffects:!1});function oR(e){return qt(Math.cosh,[e])}var nR=we({name:\"cosh\",signature:Ht(Xt),normalImpl:oR,codegenImpl:(e,[t])=>fe`cosh(${t})`,sideEffects:!1}),aR=we({name:\"countLeadingZeros\",signature:Ht(fa),normalImpl:\"CPU implementation for countLeadingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`countLeadingZeros(${t})`,sideEffects:!1});we({name:\"countOneBits\",signature:Ht(fa),normalImpl:\"CPU implementation for countOneBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`countOneBits(${t})`,sideEffects:!1});we({name:\"countTrailingZeros\",signature:Ht(fa),normalImpl:\"CPU implementation for countTrailingZeros not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`countTrailingZeros(${t})`,sideEffects:!1});var wO=we({name:\"cross\",signature:Ht([cs,po]),normalImpl:(e,t)=>Mo.cross[e.kind](e,t),codegenImpl:(e,[t,s])=>fe`cross(${t}, ${s})`,sideEffects:!1});function iR(e){if(typeof e==\"number\")return e*180/Math.PI;throw new vr(\"CPU implementation for degrees on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}we({name:\"degrees\",signature:Ht(Xt),normalImpl:iR,codegenImpl:(e,[t])=>fe`degrees(${t})`,sideEffects:!1});we({name:\"determinant\",signature:e=>{if(!(e.type===\"mat2x2f\"||e.type===\"mat3x3f\"||e.type===\"mat4x4f\"))throw new er([e],[ga,xa,Mr]);return{argTypes:[e],returnType:a}},normalImpl:\"CPU implementation for determinant not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`determinant(${t})`,sideEffects:!1});function dR(e,t){return typeof e==\"number\"&&typeof t==\"number\"?Math.abs(e-t):te(It(e,t))}we({name:\"distance\",signature:(...e)=>{let t=jr(e,Xt);if(!t)throw new er(e,Xt);return{argTypes:t,returnType:ph(t[0])?Zs:a}},normalImpl:dR,codegenImpl:(e,[t,s])=>fe`distance(${t}, ${s})`,sideEffects:!1});var le=we({name:\"dot\",signature:(...e)=>({argTypes:e,returnType:e[0].primitive}),normalImpl:(e,t)=>Mo.dot[e.kind](e,t),codegenImpl:(e,[t,s])=>fe`dot(${t}, ${s})`,sideEffects:!1});we({name:\"dot4U8Packed\",signature:{argTypes:[Y,Y],returnType:Y},normalImpl:\"CPU implementation for dot4U8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s])=>fe`dot4U8Packed(${t}, ${s})`,sideEffects:!1});we({name:\"dot4I8Packed\",signature:{argTypes:[Y,Y],returnType:oe},normalImpl:\"CPU implementation for dot4I8Packed not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s])=>fe`dot4I8Packed(${t}, ${s})`,sideEffects:!1});function lR(e){return qt(Math.exp,[e])}var Mt=we({name:\"exp\",signature:Ht(Xt),normalImpl:lR,codegenImpl:(e,[t])=>fe`exp(${t})`,sideEffects:!1});function cR(e){return qt(t=>2**t,[e])}var rp=we({name:\"exp2\",signature:Ht(Xt),normalImpl:cR,codegenImpl:(e,[t])=>fe`exp2(${t})`,sideEffects:!1}),TO=we({name:\"extractBits\",signature:(e,t,s)=>{let r=jr([e],fa)?.[0];if(!r)throw new er([e],fa);return{argTypes:[r,Y,Y],returnType:r}},normalImpl:\"CPU implementation for extractBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s,r])=>fe`extractBits(${t}, ${s}, ${r})`,sideEffects:!1});we({name:\"faceForward\",signature:Ht(yc),normalImpl:\"CPU implementation for faceForward not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s,r])=>fe`faceForward(${t}, ${s}, ${r})`,sideEffects:!1});we({name:\"firstLeadingBit\",signature:ey,normalImpl:\"CPU implementation for firstLeadingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`firstLeadingBit(${t})`,sideEffects:!1});we({name:\"firstTrailingBit\",signature:Ht(fa),normalImpl:\"CPU implementation for firstTrailingBit not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`firstTrailingBit(${t})`,sideEffects:!1});function uR(e){return qt(Math.floor,[e])}var K=we({name:\"floor\",signature:Ht(Xt),normalImpl:uR,codegenImpl:(e,[t])=>fe`floor(${t})`,sideEffects:!1});function _R(e,t,s){if(typeof e==\"number\")return e*t+s;throw new vr(\"CPU implementation for fma on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}we({name:\"fma\",signature:Ht(Xt),normalImpl:_R,codegenImpl:(e,[t,s,r])=>fe`fma(${t}, ${s}, ${r})`,sideEffects:!1});function pR(e){return qt(t=>t-Math.floor(t),[e])}var ve=we({name:\"fract\",signature:Ht(Xt),normalImpl:pR,codegenImpl:(e,[t])=>fe`fract(${t})`,sideEffects:!1}),mR={f32:zr({fract:a,exp:oe}),f16:zr({fract:Zs,exp:oe}),abstractFloat:zr({fract:Fi,exp:Uc}),vec2f:zr({fract:$t,exp:xs}),vec3f:zr({fract:cs,exp:Os}),vec4f:zr({fract:lt,exp:ps}),vec2h:zr({fract:Sr,exp:xs}),vec3h:zr({fract:po,exp:Os}),vec4h:zr({fract:Ar,exp:ps})};we({name:\"frexp\",normalImpl:\"CPU implementation for frexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",signature:e=>{let t=mR[e.type];if(!t)throw new er([e],Xt);return{argTypes:[e],returnType:t}},codegenImpl:(e,[t])=>fe`frexp(${t})`,sideEffects:!1});we({name:\"insertBits\",signature:(e,t,s,r)=>{let o=jr([e,t],fa);if(!o)throw new er([e,t],fa);return{argTypes:[...o,Y,Y],returnType:o[0]}},normalImpl:\"CPU implementation for insertBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s,r,o])=>fe`insertBits(${t}, ${s}, ${r}, ${o})`,sideEffects:!1});function fR(e){if(typeof e==\"number\")return 1/Math.sqrt(e);throw new vr(\"CPU implementation for inverseSqrt on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}we({name:\"inverseSqrt\",signature:Ht(Xt),normalImpl:fR,codegenImpl:(e,[t])=>fe`inverseSqrt(${t})`,sideEffects:!1});we({name:\"ldexp\",signature:(e,t)=>{switch(e.type){case\"abstractFloat\":return{argTypes:[e,Uc],returnType:e};case\"f32\":case\"f16\":return{argTypes:[e,oe],returnType:e};case\"vec2f\":case\"vec2h\":return{argTypes:[e,xs],returnType:e};case\"vec3f\":case\"vec3h\":return{argTypes:[e,Os],returnType:e};case\"vec4f\":case\"vec4h\":return{argTypes:[e,ps],returnType:e};default:throw new Error(`Unsupported data type for ldexp: ${e.type}. Supported types are abstractFloat, f32, f16, vec2f, vec2h, vec3f, vec3h, vec4f, vec4h.`)}},normalImpl:\"CPU implementation for ldexp not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s])=>fe`ldexp(${t}, ${s})`,sideEffects:!1});function vR(e){return typeof e==\"number\"?Math.abs(e):Mo.length[e.kind](e)}var te=we({name:\"length\",signature:e=>{let t=jr([e],Xt);if(!t)throw new er([e],Xt);return{argTypes:t,returnType:ph(t[0])?Zs:a}},normalImpl:vR,codegenImpl:(e,[t])=>fe`length(${t})`,sideEffects:!1});function hR(e){return qt(Math.log,[e])}var yR=we({name:\"log\",signature:Ht(Xt),normalImpl:hR,codegenImpl:(e,[t])=>fe`log(${t})`,sideEffects:!1});function gR(e){return qt(Math.log2,[e])}var Kf=we({name:\"log2\",signature:Ht(Xt),normalImpl:gR,codegenImpl:(e,[t])=>fe`log2(${t})`,sideEffects:!1});function xR(e,t){return qt(Math.max,[e,t])}var w=we({name:\"max\",signature:ty,normalImpl:Tw(xR),codegenImpl:Sw(\"max\"),sideEffects:!1});function bR(e,t){return qt(Math.min,[e,t])}var ue=we({name:\"min\",signature:ty,normalImpl:Tw(bR),codegenImpl:Sw(\"min\"),sideEffects:!1});function wR(e,t,s){return qt((r,o,n)=>r*(1-n)+o*n,[e,...Ih([t,s])])}var Z=we({name:\"mix\",signature:(e,t,s)=>{if(e.type.startsWith(\"vec\")&&!s.type.startsWith(\"vec\")){let o=jr([s],[e.primitive]);if(!o)throw new er([s],[e.primitive]);return{argTypes:[e,t,o[0]],returnType:e}}let r=jr([e,t,s],Xt);if(!r)throw new er([e,t,s],Xt);return{argTypes:r,returnType:r[0]}},normalImpl:wR,codegenImpl:(e,[t,s,r])=>fe`mix(${t}, ${s}, ${r})`,sideEffects:!1}),TR={f32:zr({fract:a,whole:a}),f16:zr({fract:Zs,whole:Zs}),abstractFloat:zr({fract:Fi,whole:Fi}),vec2f:zr({fract:$t,whole:$t}),vec3f:zr({fract:cs,whole:cs}),vec4f:zr({fract:lt,whole:lt}),vec2h:zr({fract:Sr,whole:Sr}),vec3h:zr({fract:po,whole:po}),vec4h:zr({fract:Ar,whole:Ar})};we({name:\"modf\",signature:e=>{let t=TR[e.type];if(!t)throw new Error(`Unsupported data type for modf: ${e.type}. Supported types are f32, f16, abstractFloat, vec2f, vec3f, vec4f, vec2h, vec3h, vec4h.`);return{argTypes:[e],returnType:t}},normalImpl:\"CPU implementation for modf not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`modf(${t})`,sideEffects:!1});var Rs=we({name:\"normalize\",signature:Ht(yc),normalImpl:e=>{let t=te(e);return qt(s=>s/t,[e])},codegenImpl:(e,[t])=>fe`normalize(${t})`,sideEffects:!1});function SR(e,t){return qt((s,r)=>s**r,[e,t])}var Ye=we({name:\"pow\",signature:Ht(Xt),normalImpl:SR,codegenImpl:(e,[t,s])=>fe`pow(${t}, ${s})`,sideEffects:!1});we({name:\"quantizeToF16\",signature:e=>{let t=[$t,cs,lt,a],s=jr([e],t)?.[0];if(!s)throw new er([e],t);return{argTypes:[s],returnType:s}},normalImpl:\"CPU implementation for quantizeToF16 not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`quantizeToF16(${t})`,sideEffects:!1});function AR(e){if(typeof e==\"number\")return e*Math.PI/180;throw new vr(\"CPU implementation for radians on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}var Ab=we({name:\"radians\",signature:Ht(Xt),normalImpl:AR,codegenImpl:(e,[t])=>fe`radians(${t})`,sideEffects:!1});we({name:\"reflect\",signature:(...e)=>{let t=jr(e,yc);if(!t)throw new er(e,yc);return{argTypes:t,returnType:t[0]}},normalImpl:(e,t)=>It(e,Kr(2*le(t,e),t)),codegenImpl:(e,[t,s])=>fe`reflect(${t}, ${s})`,sideEffects:!1});we({name:\"refract\",normalImpl:\"CPU implementation for refract not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t,s,r])=>fe`refract(${t}, ${s}, ${r})`,signature:(e,t,s)=>({argTypes:[e,t,ph(e)?Zs:a],returnType:e}),sideEffects:!1});we({name:\"reverseBits\",signature:Ht(fa),normalImpl:\"CPU implementation for reverseBits not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`reverseBits(${t})`,sideEffects:!1});function ER(e){if(typeof e==\"number\"){let t=Math.floor(e);return e===t+.5?t%2===0?t:t+1:Math.round(e)}throw new vr(\"CPU implementation for round on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}var Wa=we({name:\"round\",signature:Ht(Xt),normalImpl:ER,codegenImpl:(e,[t])=>fe`round(${t})`,sideEffects:!1});function PR(e){if(typeof e==\"number\")return Math.max(0,Math.min(1,e));throw new vr(\"CPU implementation for saturate on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}we({name:\"saturate\",signature:Ht(Xt),normalImpl:PR,codegenImpl:(e,[t])=>e.gen.emitCall(\"saturate\",[],[t]),sideEffects:!1});function MR(e){return qt(Math.sign,[e])}var ir=we({name:\"sign\",signature:e=>{let t=[...Xt,oe,xs,Os,ps],s=jr([e],t)?.[0];if(!s)throw new er([e],t);return{argTypes:[s],returnType:s}},normalImpl:MR,codegenImpl:(e,[t])=>fe`sign(${t})`,sideEffects:!1});function kR(e){return qt(Math.sin,[e])}var O=we({name:\"sin\",signature:Ht(Xt),normalImpl:kR,codegenImpl:(e,[t])=>fe`sin(${t})`,sideEffects:!1});function $R(e){return qt(Math.sinh,[e])}var CR=we({name:\"sinh\",signature:Ht(Xt),normalImpl:$R,codegenImpl:(e,[t])=>fe`sinh(${t})`,sideEffects:!1});function RR(e,t,s){return qt(A$,[e,t,s])}var ce=we({name:\"smoothstep\",signature:Ht(Xt),normalImpl:RR,codegenImpl:(e,[t,s,r])=>fe`smoothstep(${t}, ${s}, ${r})`,sideEffects:!1});function UR(e){return qt(Math.sqrt,[e])}var $e=we({name:\"sqrt\",signature:Ht(Xt),normalImpl:UR,codegenImpl:(e,[t])=>fe`sqrt(${t})`,sideEffects:!1});function zR(e,t){if(typeof e==\"number\")return e<=t?1:0;throw new vr(\"CPU implementation for step on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}var ot=we({name:\"step\",signature:Ht(Xt),normalImpl:zR,codegenImpl:(e,[t,s])=>fe`step(${t}, ${s})`,sideEffects:!1});function GR(e){if(typeof e==\"number\")return Math.tan(e);throw new vr(\"CPU implementation for tan on vectors not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\")}var Zf=we({name:\"tan\",signature:Ht(Xt),normalImpl:GR,codegenImpl:(e,[t])=>fe`tan(${t})`,sideEffects:!1});function DR(e){return qt(Math.tanh,[e])}var LR=we({name:\"tanh\",signature:Ht(Xt),normalImpl:DR,codegenImpl:(e,[t])=>fe`tanh(${t})`,sideEffects:!1});function FR(e){let t=nm(e)(),s=e.columns,r=t.columns;if(s.length===2)r[0][0]=s[0][0],r[0][1]=s[1][0],r[1][0]=s[0][1],r[1][1]=s[1][1];else if(s.length===3){r[0][0]=s[0][0],r[0][1]=s[1][0],r[0][2]=s[2][0],r[1][0]=s[0][1],r[1][1]=s[1][1],r[1][2]=s[2][1];let o=r[2];o[0]=s[0][2],o[1]=s[1][2],o[2]=s[2][2]}else if(s.length===4){r[0][0]=s[0][0],r[0][1]=s[1][0],r[0][2]=s[2][0],r[0][3]=s[3][0],r[1][0]=s[0][1],r[1][1]=s[1][1],r[1][2]=s[2][1],r[1][3]=s[3][1];let o=r[2];o[0]=s[0][2],o[1]=s[1][2],o[2]=s[2][2],o[3]=s[3][2];let n=r[3];n[0]=s[0][3],n[1]=s[1][3],n[2]=s[2][3],n[3]=s[3][3]}else vc(s,\"std/numeric.ts#cpuTranspose\");return t}we({name:\"transpose\",signature:ey,normalImpl:FR,codegenImpl:(e,[t])=>fe`transpose(${t})`,sideEffects:!1});var BR=we({name:\"trunc\",signature:Ht(Xt),normalImpl:\"CPU implementation for trunc not implemented yet. Please submit an issue at https://github.com/software-mansion/TypeGPU/issues\",codegenImpl:(e,[t])=>fe`trunc(${t})`,sideEffects:!1});function IR(e,t){if(typeof e!=\"number\"||typeof t!=\"number\")throw new Error(\"std.intdiv called with invalid arguments.\");return Math.trunc(Math.trunc(e)/Math.trunc(t))}we({name:\"intdiv\",signature:(e,t)=>{let s=jr([e,t],[Y,oe]);if(!s)throw new er([e,t],[Y,oe,Uc]);return{argTypes:s,returnType:s[0]}},normalImpl:IR,codegenImpl:(e,[t,s])=>e.gen.emitBinaryOp(t,\"/\",s),sideEffects:!1});function op(e){return Xr(e)||xn(e)?nm(e)(e):Array.isArray(e)?e.map(op):typeof e==\"object\"&&e!==null?Object.fromEntries(Object.entries(e).map(([t,s])=>[t,op(s)])):e}we({name:\"copy\",signature:e=>({argTypes:[e],returnType:e}),normalImpl:op,codegenImpl(e,[t]){return fe`${t}`},sideEffects:!1});function ol(e){return e.type.includes(\"2\")?So:e.type.includes(\"3\")?Ao:Eo}var YR=we({name:\"allEq\",signature:(...e)=>({argTypes:e,returnType:Ft}),normalImpl:(e,t)=>ry(Bc(e,t)),codegenImpl:(e,[t,s])=>fe`all(${t} == ${s})`,sideEffects:!1}),Bc=(e,t)=>um((s,r)=>s===r,[e,t]),WR=we({name:\"eq\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:Bc,codegenImpl:(e,[t,s])=>fe`(${t} == ${s})`,sideEffects:!1}),OR=we({name:\"ne\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:(e,t)=>Gr(Bc(e,t)),codegenImpl:(e,[t,s])=>fe`(${t} != ${s})`,sideEffects:!1}),bm=(e,t)=>um((s,r)=>s<r,[e,t]),VR=we({name:\"lt\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:bm,codegenImpl:(e,[t,s])=>fe`(${t} < ${s})`,sideEffects:!1}),gc=we({name:\"le\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:(e,t)=>sy(bm(e,t),Bc(e,t)),codegenImpl:(e,[t,s])=>fe`(${t} <= ${s})`,sideEffects:!1}),NR=we({name:\"gt\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:(e,t)=>Aw(Gr(bm(e,t)),Gr(Bc(e,t))),codegenImpl:(e,[t,s])=>fe`(${t} > ${s})`,sideEffects:!1}),Qf=we({name:\"ge\",signature:(...e)=>({argTypes:e,returnType:ol(e[0])}),normalImpl:(e,t)=>Gr(bm(e,t)),codegenImpl:(e,[t,s])=>fe`(${t} >= ${s})`,sideEffects:!1});function Gr(e){if(typeof e==\"boolean\")return!e;if(!xk(e))throw new Error(\"'std.not' requires a boolean or boolean vector.\");switch(e.length){case 2:return So(Gr(e.x),Gr(e.y));case 3:return Ao(Gr(e.x),Gr(e.y),Gr(e.z));case 4:return Eo(Gr(e.x),Gr(e.y),Gr(e.z),Gr(e.w))}}var qR=we({name:\"not\",signature:e=>{if(!Ga(e)&&!_h(e))throw new er([e],[Ft,So,Ao,Eo]);return{argTypes:[e],returnType:e}},normalImpl:Gr,codegenImpl:(e,[t])=>fe`!(${t})`,sideEffects:!1}),sy=(e,t)=>um((s,r)=>s||r,[e,t]);we({name:\"or\",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:sy,codegenImpl:(e,[t,s])=>fe`(${t} | ${s})`,sideEffects:!1});var Aw=(e,t)=>Gr(sy(Gr(e),Gr(t)));we({name:\"and\",signature:(...e)=>({argTypes:e,returnType:e[0]}),normalImpl:Aw,codegenImpl:(e,[t,s])=>fe`(${t} & ${s})`,sideEffects:!1});var ry=e=>Mo.all[e.kind](e),XR=we({name:\"all\",signature:(...e)=>({argTypes:e,returnType:Ft}),normalImpl:ry,codegenImpl:(e,[t])=>fe`all(${t})`,sideEffects:!1});we({name:\"any\",signature:(...e)=>({argTypes:e,returnType:Ft}),normalImpl:e=>!ry(Gr(e)),codegenImpl:(e,[t])=>fe`any(${t})`,sideEffects:!1});we({name:\"isCloseTo\",signature:(...e)=>({argTypes:e,returnType:Ft}),normalImpl:(e,t,s=.01)=>{let r=um((o,n)=>Math.abs(o-n)<s,[e,t]);return typeof r==\"boolean\"?r:XR(r)},codegenImpl:(e,[t,s,r=Ae(.01,a,\"constant\",!1)])=>Kl(t)&&Kl(s)?fe`(abs(f32(${t}) - f32(${s})) <= ${r})`:!Kl(t)&&!Kl(s)?fe`all(abs(${t} - ${s}) <= (${t} - ${t}) + ${r})`:\"false\",sideEffects:!1});function HR(e,t,s){return typeof s==\"boolean\"?op(s?t:e):qt((r,o,n)=>n?o:r,[e,t,s])}var F_=[a,Zs,oe,Y,Ft,$t,cs,lt,Sr,po,Ar,xs,Os,ps,ns,Ot,es,So,Ao,Eo],F=we({name:\"select\",signature:(e,t,s)=>{let[r,o]=jr([e,t],F_)??[e,t];return{argTypes:[r,o,s],returnType:r}},normalImpl:HR,codegenImpl:(e,[t,s,r])=>{let o=e.gen.emitCall(\"select\",[],[t,s,r]);if(!F_.includes(t.dataType)||!F_.includes(s.dataType))throw new Error(`'${o}' is invalid, std.select requires both branches to be either scalars or vectors.`);if(t.dataType!==s.dataType){let n=e.resolve(t.dataType),i=e.resolve(s.dataType);throw new Error(`'${o}' is invalid, std.select requires both branches to be the same type, got [${n.value}, ${i.value}].`)}return o},sideEffects:!1});function wm(e){return typeof e?.format==\"string\"}function jR(e,t){let s=[];if($c(e)){if(!wm(t))throw new Error(\"Shader expected a single attribute, not a record of attributes to be passed in.\");return s.push(t._layout),{usedVertexLayouts:s,bufferDefinitions:[{arrayStride:t._layout.stride,stepMode:t._layout.stepMode,attributes:[{format:t.format,offset:t.offset,shaderLocation:qa(e)??0}]}]}}let r=[],o=new WeakMap,n=0;for(let[i,d]of Object.entries(e)){if(Nn(d))continue;let l=t[i];if(!l)throw new Error(`An attribute by the name of '${i}' was not provided to the shader.`);let c=l._layout,_=o.get(c);_||(s.push(c),_=[],r.push({arrayStride:c.stride,stepMode:c.stepMode,attributes:_}),o.set(c,_)),n=qa(d)??n,_.push({format:l.format,offset:l.offset,shaderLocation:n++})}return{usedVertexLayouts:s,bufferDefinitions:r}}var KR=[\"bool\",\"f32\",\"f16\",\"i32\",\"u32\",\"vec2f\",\"vec3f\",\"vec4f\",\"vec2h\",\"vec3h\",\"vec4h\",\"vec2i\",\"vec3i\",\"vec4i\",\"vec2u\",\"vec3u\",\"vec4u\",\"vec2<bool>\",\"vec3<bool>\",\"vec4<bool>\",\"mat2x2f\",\"mat3x3f\",\"mat4x4f\",\"texture_external\"];function ZR(e){return KR.includes(e.type)}function Jf(e,[t,s]){return` ${hc(s)}${t}: ${e.resolve(s).value},\n`}function QR(e,t){if(t[q].isAbstruct)throw new Error(\"Cannot resolve abstract struct types to WGSL.\");let s=e.makeUniqueIdentifier(Re(t),\"global\");return e.addDeclaration(`struct ${s} {\n${Object.entries(t.propTypes).map(r=>Jf(e,r)).join(\"\")}}`,s),s}function JR(e,t){let s=e.makeUniqueIdentifier(Re(t),\"global\");return e.addDeclaration(`struct ${s} {\n${Object.entries(t.propTypes).map(r=>wm(r[1])?Jf(e,[r[0],ma[r[1].format]]):Jf(e,r)).join(\"\")}\n}`,s),s}function eU(e,t){let s=e.resolve(t.elementType).value;return t.elementCount===0?`array<${s}>`:`array<${s}, ${t.elementCount}>`}function tU(e,t){let s=e.resolve(wm(t.elementType)?ma[t.elementType.format]:t.elementType).value;return t.elementCount===0?`array<${s}>`:`array<${s}, ${t.elementCount}>`}function Ew(e,t){if(am(t))return t.type===\"unstruct\"?JR(e,t):t.type===\"disarray\"?tU(e,t):t.type===\"loose-decorated\"?e.resolve(wm(t.inner)?ma[t.inner.format]:t.inner).value:e.resolve(ma[t.type]).value;if(ZR(t))return t.type;if(t.type===\"struct\")return QR(e,t);if(t.type===\"array\")return eU(e,t);if(t.type===\"atomic\")return`atomic<${Ew(e,t.inner)}>`;if(t.type===\"decorated\")return e.resolve(t.inner).value;if(t.type===\"ptr\")return t.addressSpace===\"storage\"?`ptr<storage, ${e.resolve(t.inner).value}, ${t.access===\"read-write\"?\"read_write\":t.access}>`:`ptr<${t.addressSpace}, ${e.resolve(t.inner).value}>`;if(t.type===\"abstractInt\"||t.type===\"abstractFloat\"||t.type===\"void\"||t.type===\"u16\")throw new Error(`${t.type} has no representation in WGSL`);if(G_(t))return`${t.type}<${t.format}, ${Lc[t.access]}>`;if(Z6(t))return t.type.startsWith(\"texture_depth\")?t.type:`${t.type}<${t.sampleType.type}>`;if(cC(t)||lC(t))return t.type;vc(t,\"resolveData\")}var Pw=class{[q]=!0;snippet;constructor(e){this.snippet=e}[ts](e){return e.resolveSnippet(this.snippet)}},Mw=(()=>{function e(s){return s}let t=e;return Tt(t,\"unroll\"),t.toString=()=>\"unroll\",t[q]=!0,t[mr]={call(s,[r]){return p6(new Pw(r),r)}},t})(),Eb=new Map([[Math.abs,W],[Math.acos,V4],[Math.acosh,q4],[Math.asin,jf],[Math.asinh,j4],[Math.atan,Z4],[Math.atan2,bt],[Math.atanh,J4],[Math.ceil,ac],[Math.cos,J],[Math.cosh,nR],[Math.exp,Mt],[Math.floor,K],[Math.fround,a],[Math.clz32,aR],[Math.trunc,BR],[Math.log,yR],[Math.log2,Kf],[Math.pow,Ye],[Math.sign,ir],[Math.sin,O],[Math.sinh,CR],[Math.sqrt,$e],[Math.tan,Zf],[Math.tanh,LR],[Math.max,w],[Math.min,ue]]),sU=()=>[console.log,console.debug,console.info,console.warn,console.error,console.clear],Pb=e=>Hr(e)&&cr(e.inner)?e.inner.elementCount:0,rU=we({name:\"arrayLength\",signature:e=>{let t=Hr(e)?e:y6(e);return{argTypes:[t],returnType:Pb(t)>0?Uc:Y}},normalImpl:e=>x6(e)?e.$.length:e.length,codegenImpl(e,[t]){let s=Pb(t.dataType);return s>0?`${s}`:e.gen.emitCall(\"arrayLength\",[],[t])},sideEffects:!1});nn((e,t,s=1)=>{if(t===void 0&&(t=e,e=0),!Number.isInteger(e))throw new Error(`'start' must be an integer, got ${e}`);if(!Number.isInteger(t))throw new Error(`'end' must be an integer, got ${t}`);if(!Number.isInteger(s)||s===0)throw new Error(`'step' must be a non-zero integer, got ${s}`);let r=[];if(r.start=e,r.end=t,r.step=s,Math.sign(s)!==Math.sign(t-e))return r;if(s>0)for(let o=e;o<t;o+=s)r.push(o);if(s<0)for(let o=e;o>t;o+=s)r.push(o);return r});function ev(e){return Array.isArray(e)&&\"start\"in e&&\"end\"in e&&\"step\"in e}function oU(e){return e.origin===\"constant-immutable-def\"?\"const\":\"let\"}function Mb(e,t){let s=ym(e,t);if(!s)throw new vt(\"`for ... of ...` loops only support array or vector iterables\");return s}function nU(e,t){let s=e.dataType;if(s===os)throw new vt(fe`The elements in iterable ${t} are of unknown type`);if(gn(e.dataType)||e.origin===\"runtime\"||e.origin===\"constant\"||e.origin===\"constant-immutable-def\"||e.origin===\"runtime-immutable-def\")return s;if(!Hr(s)){let r=hh(e.origin,Wo(s));Ws(r!==void 0,`Creating pointer type from origin ${e.origin}`),s=r}return g6(s)}function aU(e,t,s=!1){let{value:r,dataType:o}=t;if(ev(r)){let{start:i,end:d,step:l}=r,c=[i,d,l].every(_=>_>=0)?Y:oe;return{start:Ae(i,c,\"constant\",!1),end:Ae(d,c,\"constant\",!1),step:Ae(l,c,\"constant\",!1),comparison:l<0?\">\":\"<\"}}if(!s&&!In(t))throw new Error(\"`for ... of ...` loops only support std.range or iterables stored in variables.\\n-----\\nYou can wrap iterable with `tgpu.unroll(...)`. If iterable is known at comptime, the loop will be unrolled.\\n-----\");let n={start:Ae(0,Y,\"constant\",!1),step:Ae(1,Y,\"constant\",!1),comparison:\"<\"};if(cr(o))return{...n,end:o.elementCount>0?Ae(o.elementCount,Y,\"constant\",!1):rU[mr].call(e,[t])};if(as(o))return{...n,end:Ae(o.componentCount,Y,\"constant\",!1)};if(s){if(Array.isArray(r))return{...n,end:Ae(r.length,Y,\"constant\",!1)};if(r instanceof oc)return{...n,end:Ae(r.elements.length,Y,\"constant\",!1)}}throw new vt(\"`for ... of ...` loops only support array or vector iterables\")}var{NodeTypeCatalog:Pt}=ww;function ws(e){return $w(e)?Nr(e,\"\"):na(e,\"\")}function na(e,t){if($w(e))return`${t}${Nr(e,t)};`;if(e[0]===Pt.block)return`{\n${e[1].map(s=>na(s,t+\" \")).join(`\n`)}\n${t}}`;if(e[0]===Pt.return)return`${t}return${e[1]===void 0?\"\":` ${Nr(e[1],\"\")}`};`;if(e[0]===Pt.if){let s=`${t}if (${Nr(e[1],t)}) ${na(e[2],t)}`;return e[3]!==void 0?`${s} else ${na(e[3],t)}`:s}if(e[0]===Pt.let)return e[2]!==void 0?`${t}let ${e[1]} = ${Nr(e[2],t)};`:`${t}let ${e[1]};`;if(e[0]===Pt.const)return e[2]!==void 0?`${t}const ${e[1]} = ${Nr(e[2],t)};`:`${t}const ${e[1]};`;if(e[0]===Pt.for){let s=e[1]?na(e[1],\"\"):\";\",r=e[2]?Nr(e[2],t):\"\",o=e[3]?na(e[3],\"\"):\"\",n=na(e[4],t);return`${t}for (${s} ${r}; ${o.slice(0,-1)}) ${n}`}if(e[0]===Pt.while)return`${t}while (${Nr(e[1],t)}) ${na(e[2],t)}`;if(e[0]===Pt.continue)return`${t}continue;`;if(e[0]===Pt.break)return`${t}break;`;if(e[0]===Pt.forOf)return`${t}for (${e[1][0]===Pt.const?\"const\":\"let\"} ${e[1][1]} of ${Nr(e[2],t)}) ${na(e[3],t)}`;kw(e)}function Nr(e,t){if(typeof e==\"string\")return e;if(typeof e==\"boolean\")return`${e}`;if(e[0]===Pt.numericLiteral)return e[1];if(e[0]===Pt.stringLiteral)return JSON.stringify(e[1]);if(e[0]===Pt.arrayExpr)return`[${e[1].map(s=>Nr(s,t)).join(\", \")}]`;if(e[0]===Pt.binaryExpr)return`${Io(e[1],t)} ${e[2]} ${Io(e[3],t)}`;if(e[0]===Pt.assignmentExpr)return`${Nr(e[1],t)} ${e[2]} ${Nr(e[3],t)}`;if(e[0]===Pt.logicalExpr)return`${Io(e[1],t)} ${e[2]} ${Io(e[3],t)}`;if(e[0]===Pt.unaryExpr){let s=e[1].length>1?\" \":\"\";return`${e[1]}${s}${Io(e[2],t)}`}if(e[0]===Pt.call)return`${Io(e[1],t)}(${e[2].map(s=>Nr(s,t)).join(\", \")})`;if(e[0]===Pt.memberAccess)return Array.isArray(e[1])&&e[1][0]===Pt.numericLiteral?`(${Nr(e[1],t)}).${e[2]}`:`${Io(e[1],t)}.${e[2]}`;if(e[0]===Pt.indexAccess)return`${Io(e[1],t)}[${Nr(e[2],t)}]`;if(e[0]===Pt.preUpdate)return`${e[1]}${Io(e[2],t)}`;if(e[0]===Pt.postUpdate)return`${Io(e[2],t)}${e[1]}`;if(e[0]===Pt.objectExpr)return`{ ${Object.entries(e[1]).map(([s,r])=>`${s}: ${Nr(r,t)}`).join(\", \")} }`;if(e[0]===Pt.conditionalExpr)return`${Io(e[1],t)} ? ${Io(e[2],t)} : ${Io(e[3],t)}`;kw(e)}function kw(e){throw new Error(`'${JSON.stringify(e)}' was not handled by the stringify function.`)}function $w(e){return typeof e==\"string\"||typeof e==\"boolean\"||e[0]===Pt.numericLiteral||e[0]===Pt.stringLiteral||e[0]===Pt.arrayExpr||e[0]===Pt.binaryExpr||e[0]===Pt.assignmentExpr||e[0]===Pt.logicalExpr||e[0]===Pt.unaryExpr||e[0]===Pt.call||e[0]===Pt.memberAccess||e[0]===Pt.indexAccess||e[0]===Pt.preUpdate||e[0]===Pt.postUpdate||e[0]===Pt.objectExpr||e[0]===Pt.conditionalExpr}var iU=[Pt.memberAccess,Pt.indexAccess,Pt.call,Pt.arrayExpr,Pt.stringLiteral,Pt.numericLiteral];function Io(e,t){let s=Nr(e,t);return typeof e==\"string\"||typeof e==\"boolean\"||iU.includes(e[0])?s:`(${s})`}var{NodeTypeCatalog:Jt}=ww,dU=[\"==\",\"!=\",\"===\",\"!==\",\"<\",\"<=\",\">\",\">=\",\"<<\",\">>\",\">>>\",\"+\",\"-\",\"*\",\"/\",\"%\",\"|\",\"^\",\"&\"],lU=[\"&&\",\"||\",\"==\",\"!=\",\"===\",\"!==\",\"<\",\"<=\",\">\",\">=\"],cU={\"===\":WR.toString(),\"!==\":OR.toString(),\"<\":VR.toString(),\"<=\":gc.toString(),\">\":NR.toString(),\">=\":Qf.toString()},uU=[\"<<\",\">>\",\"<<=\",\">>=\",\">>>\",\">>>=\"],_U={\"===\":\"==\",\"!==\":\"!=\",\">>>\":\">>\",get in(){throw new Error(\"The `in` operator is unsupported in TypeGPU functions.\")},get instanceof(){throw new Error(\"The `instanceof` operator is unsupported in TypeGPU functions.\")},get\"|>\"(){throw new Error(\"The `|>` operator is unsupported in TypeGPU functions.\")},get\"??\"(){throw new Error(\"The `??` operator is unsupported in TypeGPU functions.\")},\">>>=\":\">>=\",get\"**=\"(){throw new Error(\"The `**=` operator is unsupported in TypeGPU functions.\")},get\"??=\"(){throw new Error(\"The `??=` operator is unsupported in TypeGPU functions.\")},get\"&&=\"(){throw new Error(\"The `&&=` operator is unsupported in TypeGPU functions.\")},get\"||=\"(){throw new Error(\"The `||=` operator is unsupported in TypeGPU functions.\")}};function kb(e,t,s){return s?lU.includes(t)?Ft:t===\"=\"?s:e:t===\"!\"?Ft:e}var pU={\"-\":nb[mr].call.bind(nb),void:()=>Ae(void 0,Ns,\"constant\",!1),\"!\":(e,[t])=>{if(t===void 0)throw new Error(\"The unary operator `!` expects 1 argument, but 0 were provided.\");if(js(t))return Ae(!t.value,Ft,\"constant\",!1);let s=e.resolveSnippet(t).value;if(!Ga(t.dataType))throw new vt(`Unary operator ! requires boolean operand. Got ${String(t.dataType)}.${_h(t.dataType)?` For component-wise negation, use 'std.${qR.toString()}'.`:\"\"}`);return Ae(`!(${s})`,Ft,\"runtime\",t.possibleSideEffects)}},mU={\"+\":ua[mr].call.bind(ua),\"-\":It[mr].call.bind(It),\"*\":Kr[mr].call.bind(Kr),\"/\":Of[mr].call.bind(Of),\"**\":Ye[mr].call.bind(Ye)},$b={private:\"private\",workgroup:\"workgroup\",uniform:\"uniform\",mutable:\"storage, read_write\",readonly:\"storage, read\"},O1=2,fU=class Cw{#e=void 0;#t=[];static#s=Cw.prototype.languageKey=\"wgsl\";initGenerator(t){if(this.#e!==void 0)throw new Error(\"Cannot initialize shader generators twice. Create one generator per resolution.\");this.#e=t}get ctx(){if(!this.#e)throw new Error(\"WGSL Generator has not yet been initialized. Please call initialize(ctx) before using the generator.\");return this.#e}_block([t,s],r,o){this.ctx.pushBlockScope();try{if(o){let c=Object.fromEntries(Object.entries(o).map(([_,p])=>[_,To(p)]));this.ctx.setBlockExternals(c)}let n=\"\",i=!1,d;this.ctx.indent();for(let c of s){let _=this._statement(c);if(_.code.length>0&&(n+=`${_.code}\n`),i||=_.definesInNearestScope??!1,_.endsWithControlFlow!==void 0){d=_.endsWithControlFlow;break}}this.ctx.dedent();let l=r&&!i;return this.ctx.blockDepth===O1&&(n=n.replace(/[ ]*return\\s*;\\s*$/u,\"\")),n===\"\"?{code:\"\",endsWithControlFlow:d,definesInNearestScope:!1}:l?{code:this.ctx.getDedented(n.trim()),endsWithControlFlow:d,definesInNearestScope:i}:{code:`{\n${n}${this.ctx.pre}}`,endsWithControlFlow:d,definesInNearestScope:!1}}finally{this.ctx.popBlockScope()}}_blockStatement(t,s){let{code:r,...o}=this._block(t,!0,s);return r===\"\"?{...o,code:\"\"}:{...o,code:`${this.ctx.pre}${r}`}}refVariable(t,s){let r=this.ctx.makeUniqueIdentifier(t,\"block\"),o=y6(s),n=Ae(new ia(Ae(r,s,\"function\",!1),o),o,\"function\",!1);return this.ctx.defineVariable(t,n),r}_emitVarDecl(t,s,r,o){return`${this.ctx.pre}${t} ${s} = ${o};`}_identifier(t){if(!t)throw new Error(\"Cannot resolve an empty identifier\");if(t===\"undefined\")return Ae(void 0,Ns,\"constant\",!1);let s=this.ctx.getById(t);if(!s)throw new Error(`Identifier ${t} not found`);return s}_callShellless(t,s){let r=Xf(t),o=r?t[co]?.pairs??[]:[],n=r?t[q].inner:t;return this.ctx.withRenamed(n,Re(t),()=>this.ctx.withSlots(o,()=>{let i=this.ctx.shelllessRepo.get(n,s);if(!i)return;let d=s.map((l,c)=>{let _=i.argTypes[c];return wo(this.ctx,l,_,!1)});return this.ctx.withResetIndentLevel(()=>{let l=this.ctx.resolve(i);return Ae(fe`${l.value}(${d})`,l.dataType,\"runtime\")})}))}_typedExpression(t,s){let r=this.ctx.expectedType;this.ctx.expectedType=s;try{let o=this._expression(t);return s instanceof Sn?o:wo(this.ctx,o,s)}finally{this.ctx.expectedType=r}}_expression(t){if(typeof t==\"string\")return this._identifier(t);if(typeof t==\"boolean\")return Ae(t,Ft,\"constant\",!1);if(t[0]===Jt.logicalExpr){let[s,r,o,n]=t,i=this._expression(r);if(js(i)){let _=Ga(this.ctx.expectedType);if(!(o===\"&&\"?i.value:!i.value))return _?Ae(o===\"||\",Ft,\"constant\",!1):To(i.value);let p=this._expression(n);if(js(p)){let f=To(p.value);return _?wo(this.ctx,f,Ft,!1):f}if(p.dataType===os)throw new vt(`Right-hand side of '${o}' is of unknown type`);return _?wo(this.ctx,p,Ft,!1):p}let d=this._expression(n);if(i.dataType===os)throw new vt(`Left-hand side of '${o}' is of unknown type`);if(!js(d)&&d.dataType===os)throw new vt(`Right-hand side of '${o}' is of unknown type`);if(!Ga(i.dataType)||!Ga(d.dataType))throw new vt(`Logical expression '${o}' requires boolean operands. Got '${String(i.dataType)}' and '${String(d.dataType)}'.`);let l=this.ctx.resolveSnippet(i).value,c=this.ctx.resolveSnippet(d).value;return Ae(`(${l} ${o} ${c})`,Ft,\"runtime\",i.possibleSideEffects||d.possibleSideEffects)}if(t[0]===Jt.binaryExpr||t[0]===Jt.assignmentExpr){let[s,r,o,n]=t,i=this._expression(r),d=this._expression(n);if(d.value instanceof ia)throw new vt(fe`Cannot assign a ref to an existing variable '${ws(r)}', define a new variable instead.`);if(o===\"==\")throw new Error(\"Please use the === operator instead of ==\");if(o===\"!=\")throw new Error(\"Please use the !== operator instead of !=\");let l=cU[o];if(l&&js(i)&&js(d)){let h=i.value,g=d.value;switch(o){case\"===\":return Ae(h===g,Ft,\"constant\",!1);case\"!==\":return Ae(h!==g,Ft,\"constant\",!1)}if(typeof h!=\"number\"||typeof g!=\"number\")throw new vt(`Comparison '${o}' requires numeric operands.${as(i.dataType)&&as(d.dataType)?` For component-wise comparison, use 'std.${l}'.`:\"\"}`);switch(o){case\"<\":return Ae(h<g,Ft,\"constant\",!1);case\"<=\":return Ae(h<=g,Ft,\"constant\",!1);case\">\":return Ae(h>g,Ft,\"constant\",!1);case\">=\":return Ae(h>=g,Ft,\"constant\",!1)}}if(i.dataType===os)throw new vt(`Left-hand side of '${o}' is of unknown type`);if(d.dataType===os)throw new vt(`Right-hand side of '${o}' is of unknown type`);let c=mU[o];if(c)return c(this.ctx,[i,d]);let _,p;if(uU.includes(o)){let h=i.dataType;if(!q5(h)&&!Ak(h))throw new vt(`Expression: ${ws(t)}\nLeft-hand side of '${o}' must be an integer or vector of integers.\nGot ${this.ctx.resolve(h).value}.`);let g=as(h)?h.primitive:h;if([\">>>\",\">>>=\"].includes(o)&&g.type!==\"u32\")throw new vt(`Expression: ${ws(t)}\nLeft-hand side of '${o}' must be an unsigned integer or vector of unsigned integers.\nGot ${this.ctx.resolve(h).value}.\nUse ${o.slice(1)} instead.`);[\">>\",\">>=\"].includes(o)&&g.type===\"u32\"&&fs.warn(\"deprecated\",`\nExpression: ${ws(t)}\nUsing u32 or vecN<u32> as left-hand side of ${o} is deprecated.\nUse >${o} instead.`);let x;if(as(h)){let T=h.componentCount;x=T===2?ns:T===3?Ot:es}else x=Y;p=wo(this.ctx,d,x,!1),_=i}else{let h=s===Jt.assignmentExpr?[i.dataType]:void 0;[_,p]=La(this.ctx,[i,d],h)??[i,d]}let f=kb(_.dataType,o,p.dataType);if(s===Jt.assignmentExpr&&(Cb(_,t),this.tryMarkModified(r),o===\"=\"&&In(d)&&!gn(d.dataType)))throw new vt(`'${ws(t)}' is invalid, because references cannot be assigned.\n-----\nTry '${ws(r)} = ${this.ctx.resolve(wi(d.dataType)).value}(${ws(n)})' to copy the value instead.\n-----`);if(l){let h=[\"===\",\"!==\"].includes(o);if(!(Gf(_.dataType)&&Gf(p.dataType)||h&&Ga(_.dataType)&&Ga(p.dataType))){let g=as(_.dataType)&&as(p.dataType);throw new vt(`Comparison '${o}' requires numeric${h?\" or boolean\":\"\"} operands. Got '${String(_.dataType)}' and '${String(p.dataType)}'.${g?` For component-wise comparison, use 'std.${l}'.`:\"\"}`)}}return Ae(this.emitBinaryOp(_,_U[o]??o,p),f,\"runtime\",s===Jt.assignmentExpr||i.possibleSideEffects||d.possibleSideEffects)}if(t[0]===Jt.postUpdate)throw new Error(`'${ws(t)}' is invalid because update is only allowed as a statement.`);if(t[0]===Jt.unaryExpr){let[s,r,o]=t,n=this._expression(o),i=pU[r];if(i)return i(this.ctx,[n]);let d=this.ctx.resolveSnippet(n).value,l=kb(n.dataType,r);return Ae(`${r}${d}`,l,\"runtime\",n.possibleSideEffects)}if(t[0]===Jt.memberAccess){let[s,r,o]=t,n=Rd(this._expression(r),o);if(!n)throw new Error(`Property '${o}' not found on '${ws(r)}'`);return n}if(t[0]===Jt.indexAccess){let[s,r,o]=t,n=this._expression(r),i=this._expression(o),d=ym(n,La(this.ctx,[i],[Y,oe],!1)?.[0]??i);if(!d)throw new Error(`Index access '${ws(t)}' is invalid. If the value is an array, to address this, consider one of the following approaches: (1) declare the array using 'tgpu.const', (2) store the array in a buffer, or (3) define the array within the GPU function scope.`);return d}if(t[0]===Jt.numericLiteral){let s=typeof t[1]==\"string\"?Vn(hU(t[1])):Vn(t[1]);return Ws(s,`Expected ${ws(t)} to be valid numeric literal`),s}if(t[0]===Jt.call){let[s,r,o]=t,n=this._expression(r),i=Eb.has(n.value)?Ae(Eb.get(n.value),os,\"runtime\",n.possibleSideEffects):n;if(sU().includes(i.value))return this.ctx.generateLog(i.value,o.map(c=>this._expression(c)));if(Es(i.value)){if(o.length>1)throw new vt(\"Struct schemas should always be called with at most 1 argument\");if(!o[0])return Ae(`${this.ctx.resolve(i.value).value}()`,i.value,\"runtime\",!1);let c=this._typedExpression(o[0],i.value);return Ae(this.ctx.resolveSnippet(c).value,i.value,\"runtime\",c.possibleSideEffects)}if(cr(i.value)){if(o.length>1)throw new vt(\"Array schemas should always be called with at most 1 argument\");if(!o[0])return this.typeInstantiation(i.value,[]);let c=this._typedExpression(o[0],i.value);return c.value instanceof oc?this.typeInstantiation(i.value,c.value.elements):Ae(this.ctx.resolveSnippet(c).value,i.value,\"runtime\",c.possibleSideEffects)}if(i.value===Qh)throw new Error(\"Constants cannot be defined within TypeGPU function scope. To address this, move the constant definition outside the function scope.\");if(F$(i.value)){if(!o[0])throw new vt(`An infix operator '${Re(i.value.operator)}' was called without any arguments`);let c=To(i.value.lhs),_=this._expression(o[0]);return i.value.operator[mr].call(this.ctx,[c,_])}if((i.value===jk||i.value===Mw)&&o[0]&&this.tryMarkModified(o[0]),K_(i.value)){let c=i.value[mr],_=c.strictSignature,p;_?p=o.map((f,h)=>{let g=_.argTypes[h];if(!g)throw new vt(`Call '${ws(t)}' is invalid since the function expected fewer arguments`);return this._typedExpression(f,g)}):p=o.map(f=>this._expression(f));try{return c.call(this.ctx,p)}catch(f){throw f instanceof gd?f:new gd(f,[{toString:()=>`fn:${Re(i.value)}`}])}}if(!Rt(i.value)||Xf(i.value)){let c=o.map(p=>this._expression(p)),_=this._callShellless(i.value,c);if(_)return _}let d=Object.getOwnPropertyNames(Math).find(c=>Math[c]===i.value);if(d)throw new Error(`Unsupported Math functionality 'Math.${d}()'. Use an std alternative, or implement the function manually.`);let l=Object.getOwnPropertyNames(console).find(c=>console[c]===i.value);throw l?new Error(`Unsupported console functionality 'console.${l}()'.`):new Error(`Function '${Re(i.value)??String(i.value)}' is not marked with the 'use gpu' directive and cannot be used in a shader`)}if(t[0]===Jt.objectExpr){let s=t[1],r=this.ctx.expectedType;if(r instanceof Sn){let o=Object.fromEntries(Object.entries(s).map(([d,l])=>{let c=r.accessProp(d),_;if(c)_=this._typedExpression(l,c.type);else{if(_=this._expression(l),_.dataType===os)throw new vt(fe`Property ${d} in object literal has a value of unknown type: '${_}'`);c=r.provideProp(d,wi(Wo(_.dataType)))}return[c.prop,_]})),n=r.completeStruct,i=Nx(this.ctx,n,o);return Ae(fe`${this.ctx.resolve(r).value}(${i})`,n,\"runtime\")}if(Es(r)){let o=Object.fromEntries(Object.entries(r.propTypes).map(([i,d])=>{let l=s[i];if(l===void 0)throw new vt(`Missing property ${i} in object literal for struct ${r}`);return[i,this._typedExpression(l,d)]})),n=Nx(this.ctx,r,o);return Ae(fe`${this.ctx.resolve(r).value}(${n})`,r,\"runtime\",n.some(i=>i.possibleSideEffects))}throw new vt(`No target type could be inferred for object '${ws(t)}', please wrap the object in the corresponding schema.`)}if(t[0]===Jt.arrayExpr){let[s,r]=t,o=this.ctx.expectedType,n,i;if(cr(o)){if(n=o.elementType,i=r.map(c=>this._typedExpression(c,n)),i.length!==o.elementCount)throw new vt(`Cannot create value of type '${o}' from an array of length: ${i.length}`)}else{let c=r.map(p=>this._expression(p));if(c.length===0)throw new vt(\"Cannot infer the type of an empty array literal.\");let _=La(this.ctx,c);if(!_)throw new vt(`Values '${ws(t)}' cannot be automatically converted to a common type. Consider wrapping the array in an appropriate schema`);i=_,n=Wo(i[0]?.dataType)}let d=zt(n,i.length),l=i.every(c=>c.origin===\"constant\");return Ae(new oc(d,i),d,l?\"constant\":\"runtime\",i.some(c=>c.possibleSideEffects))}if(t[0]===Jt.conditionalExpr){let[s,r,o,n]=t,i=this._expression(r);if(js(i))return i.value?this._expression(o):this._expression(n);{let d=wo(this.ctx,i,Ft,!1),l=this._expression(o),c=this._expression(n),[_,p]=La(this.ctx,[l,c],F_)??[];if(!_||!p||l.possibleSideEffects||c.possibleSideEffects||In(l)&&!gn(l.dataType)||In(c)&&!gn(c.dataType))throw new Error(`Ternary operator '${ws(t)}' is invalid. For more complex branching, please use 'std.select' or if/else statements.`);return Ae(fe`select(${p}, ${_}, ${d})`,_.dataType,\"runtime\",i.possibleSideEffects)}}if(t[0]===Jt.stringLiteral)return Ae(t[1],os,\"constant\",!1);if(t[0]===Jt.preUpdate)throw new Error(\"Cannot use pre-updates in TypeGPU functions.\");vU(t)}declareGlobalConst(t){let s=this.ctx.resolve(t.dataType).value,r=this.ctx.resolveSnippet(t.init).value;return this.ctx.addDeclaration(`const ${t.id}: ${s} = ${r};`,t.id),Ae(t.id,t.dataType,\"constant-immutable-def\")}declareGlobalVar(t){let s=\"\";return t.group!==void 0&&(s+=`@group(${t.group}) `),t.binding!==void 0&&(s+=`@binding(${t.binding}) `),t.scope in $b?s+=`var<${$b[t.scope]}> `:s+=\"var \",s+=`${t.id}: ${this.ctx.resolve(t.dataType).value}`,this.ctx.addDeclaration(t.init?`${s} = ${this.ctx.resolveSnippet(t.init).value};`:`${s};`,t.id),Ae(t.id,t.dataType,t.scope)}functionDefinition(t){Ws(this.ctx.blockDepth===O1-1,`Expecting exactly ${O1-1} block(s) before going into the first function block scope`);let s=this._block(t.body,!1),r=this.ctx.topFunctionScope;Ws(r,\"Expected function scope to be present\");let o=Object.fromEntries([...r.placeholderForVariable.entries()].map(([c,_])=>[_,r.modifiedVariables.has(c)?\"var\":\"let\"]));if(Object.keys(o).length>0){let c=new RegExp(Object.keys(o).join(\"|\"),\"gi\");s.code=s.code.replace(c,_=>o[_]??\"#ERR\")}let n=t.determineReturnType(),i=t.args.filter(c=>c.used||t.functionType===\"normal\").map(c=>`${hc(c.decoratedType)}${c.name}: ${this.ctx.resolve(c.decoratedType).value}`).join(\", \"),d=n.type!==\"void\"?`(${i}) -> ${hc(n)}${this.ctx.resolve(n).value} `:`(${i}) `,l=\"\";if(t.functionType===\"compute\"){if(!t.workgroupSize)throw new Error(\"Compute shaders must have a workgroup size\");l=`@compute @workgroup_size(${t.workgroupSize.join(\", \")}) `}else t.functionType===\"vertex\"?l=\"@vertex \":t.functionType===\"fragment\"&&(l=\"@fragment \");return`${l}fn ${t.name}${d}${s.code||\"{}\"}`}emitTypeAnnotation(t){return Ew(this.ctx,t)}typeInstantiation(t,s){return s.length===1&&s[0]?.dataType===t?Ae(fe`${s[0]}`,t,Bk(s[0].origin),s[0].possibleSideEffects):Ae(fe`${this.ctx.resolve(t).value}(${s})`,t,\"runtime\",s.some(r=>r.possibleSideEffects))}numericLiteral(t,s){if(!Number.isFinite(t))throw new Error(`Value '${t}' (${s.type}) cannot be resolved due to WGSL's Finite Math Assumption (see: https://www.w3.org/TR/WGSL/#finite-math-assumption). This value might be a result of a comptime-evaluated operation.`);if(s.type===\"abstractInt\")return Ae(`${t}`,s,\"constant\",!1);if(s.type===\"u32\")return Ae(`${t}u`,s,\"constant\",!1);if(s.type===\"i32\")return Ae(`${t}i`,s,\"constant\",!1);let r=t.toExponential(),o=s.type===\"abstractFloat\"&&Number.isInteger(t)?`${t}.`:`${t}`,n=r.length<o.length?r:o;return s.type===\"f32\"?Ae(`${n}f`,s,\"constant\",!1):s.type===\"f16\"?Ae(`${n}h`,s,\"constant\",!1):Ae(n,s,\"constant\",!1)}emitCall(t,s,r){let o=s.map(i=>this.ctx.resolveSnippet(i).value).join(\", \"),n=r.map(i=>this.ctx.resolveSnippet(i).value).join(\", \");return o.length>0?`${t}<${o}>(${n})`:`${t}(${n})`}emitBinaryOp(t,s,r){let o=this.ctx.resolveSnippet(t).value,n=this.ctx.resolveSnippet(r).value;return dU.includes(s)?`(${o} ${s} ${n})`:`${o} ${s} ${n}`}_return(t){let s=t[1];if(s!==void 0){let r=this.ctx.topFunctionReturnType,o=r?this._typedExpression(s,r):this._expression(s);if(o.value===void 0&&om(o.dataType))return this.ctx.reportReturnType(Ns),`${this.ctx.pre}return;`;if(o.value instanceof ia)throw new vt(`Cannot return '${ws(s)}' because it is a d.ref`);if(o.origin===\"argument\"&&!gn(o.dataType)&&this.ctx.topFunctionScope?.functionType===\"normal\")throw new vt(`'${ws(t)}' is invalid, cannot return references to arguments. Copy the argument before returning it.`);if(!r&&In(o)&&!gn(o.dataType)&&o.origin!==\"local-def\"){let n=ws(s),i=this.ctx.resolve(wi(o.dataType)).value;throw new vt(`'return ${n};' is invalid, cannot return references.\n-----\nTry 'return ${i}(${n});' instead.\n-----`)}return o=wo(this.ctx,o,wi(o.dataType),!1),Ws(o.dataType!==os,\"Return type should be known\"),this.ctx.reportReturnType(o.dataType),fe`${this.ctx.pre}return ${o};`}return this.ctx.reportReturnType(Ns),`${this.ctx.pre}return;`}_letStatement(t){let[s,r,o]=t;if(o===void 0)throw new Error(`'${ws(t)}' is invalid because all variables need initializers.`);let n=this._expression(o);if(n.value instanceof ia){let h=ws(o);throw new vt(`'let ${r} = ${h}' is invalid, cannot initialize 'let' variables with d.ref()\n-----\n- Try 'const ${r} = ${h}'.\n-----`)}let i=n.dataType;if(i===os){let h=ws(o);throw new vt(`'let ${r} = ${h}' is invalid, cannot determine WGSL type of '${h}'\n-----\n- Try using or defining a schema that matches your desired value the most, and wrap the value with it: 'let ${r} = Schema(${h})'\n-----`)}if(In(n)&&!gn(n.dataType)){let h=ws(o),g=this.ctx.resolve(wi(n.dataType)).value;throw new vt(`'let ${r} = ${h}' is invalid, because references cannot be assigned to 'let' variable declarations.\n-----\n- Try 'let ${r} = ${g}(${h})' if you need to reassign '${r}' later\n- Try 'const ${r} = ${h}' if you won't reassign '${r}' later.\n-----`)}let d=Wo(i),l=Ae(this.ctx.makeUniqueIdentifier(r,\"block\"),d,\"local-def\",!1);this.ctx.defineVariable(r,l);let c=wo(this.ctx,n,i,!1),_=this.ctx.resolveSnippet(c).value,p=this.ctx.topFunctionScope;Ws(p,`Expected function scope to be present for ${r}`);let f=`#VAR_${p.placeholderForVariable.size}#`;return p.placeholderForVariable.set(l,f),{code:this._emitVarDecl(f,l.value,d,_),definesInNearestScope:!0}}_constStatement(t){let[s,r,o]=t;if(o===void 0)throw new Error(`'${ws(t)}' is invalid because all variables need initializers.`);let n=this._expression(o);if(n.value instanceof ia){if(n.dataType!==os)throw new vt(\"Cannot store d.ref() in a variable if it references another value. Copy the value passed into d.ref() instead.\");let x=n.value.snippet,T=this.refVariable(r,Wo(x.dataType));return{code:fe`${this.ctx.pre}var ${T} = ${wo(this.ctx,x,x.dataType,!1)};`,definesInNearestScope:!0}}let i=gn(n.dataType),d=\"local-def\",l=\"<deferred>\",c=n.dataType;if(c===os){let x=ws(o);throw new vt(`'const ${r} = ${x}' is invalid, cannot determine WGSL type of '${x}'\n-----\n- Try using or defining a schema that matches your desired value the most, and wrap the value with it: 'const ${r} = Schema(${x})'\n-----`)}if(n.origin===\"argument\")l=\"let\",d=i?\"local-def\":\"argument\";else if(n.origin===\"constant-immutable-def\")l=\"const\",d=\"constant-immutable-def\";else if(n.origin===\"runtime-immutable-def\")l=\"let\",d=\"runtime-immutable-def\";else if(i)l=n.origin===\"constant\"?\"const\":\"let\",d=\"local-def\";else if(!In(n))l=\"<deferred>\",d=\"local-def\";else return this._aliasConstStatement(r,o,n);let _=Wo(c),p=Ae(this.ctx.makeUniqueIdentifier(r,\"block\"),_,d,!1);this.ctx.defineVariable(r,p);let f=wo(this.ctx,n,c,!1),h=this.ctx.resolveSnippet(f).value,g;if(l===\"<deferred>\"){let x=this.ctx.topFunctionScope;Ws(x,`Expected function scope to be present for ${r}`),g=`#VAR_${x.placeholderForVariable.size}#`,x.placeholderForVariable.set(p,g)}else g=l;return{code:this._emitVarDecl(g,p.value,_,h),definesInNearestScope:!0}}_aliasConstStatement(t,s,r){let o=r.dataType;if(!Hr(o)){let c=hh(r.origin,Wo(o));Ws(c!==void 0,`Creating pointer type from origin ${r.origin}`),o=c}o=g6(o),this.tryMarkModified(s);let n=Wo(o),i=Ae(this.ctx.makeUniqueIdentifier(t,\"block\"),n,r.origin,!1);this.ctx.defineVariable(t,i);let d=wo(this.ctx,r,o,!1),l=this.ctx.resolveSnippet(d).value;return{code:this._emitVarDecl(\"let\",i.value,n,l),definesInNearestScope:!0}}_statement(t){if(typeof t==\"string\"){let o=this._identifier(t),n=o.value!==void 0&&o.value!==null?this.ctx.resolveSnippet(o).value:\"\";return{code:n?`${this.ctx.pre}${n};`:\"\",definesInNearestScope:!1}}if(typeof t==\"boolean\")return{code:`${this.ctx.pre}${t?\"true\":\"false\"};`,definesInNearestScope:!1};if(t[0]===Jt.return)return{code:this._return(t),endsWithControlFlow:\"return\",definesInNearestScope:!1};if(t[0]===Jt.if){let[o,n,i,d]=t,l=this._typedExpression(n,Ft);if(typeof l.value==\"boolean\"){let p=l.value?i:d;return p===void 0?{code:\"\",definesInNearestScope:!1}:(Array.isArray(p)||(p=gi(p)),p[0]===Jt.block&&p[1].length===1&&p[1][0][0]===Jt.if?this._statement(p[1][0]):p[0]===Jt.if?this._statement(p):this._blockStatement(gi(p)))}let c=this._block(gi(i),!1),_=d?this._block(gi(d),!1).code:void 0;return _?{code:fe`\\\n${this.ctx.pre}if (${l}) ${c.code||\"{}\"}\n${this.ctx.pre}else ${_}`,definesInNearestScope:!1}:{code:fe`${this.ctx.pre}if (${l}) ${c.code||\"{}\"}`,definesInNearestScope:!1}}if(t[0]===Jt.let)return this._letStatement(t);if(t[0]===Jt.const)return this._constStatement(t);if(t[0]===Jt.block)return this._blockStatement(t);if(t[0]===Jt.for){let[o,n,i,d,l]=t,c=this.#t;this.#t=[];try{this.ctx.pushBlockScope();let[_,p,f]=this.ctx.withResetIndentLevel(()=>[n?this._statement(n).code:void 0,i?this._typedExpression(i,Ft):void 0,d?this._statement(d).code:void 0]),h=_?_.slice(0,-1):\"\",g=f?f.slice(0,-1):\"\",x=this._block(gi(l),!1).code;return{code:fe`${this.ctx.pre}for (${h}; ${p}; ${g}) ${x||\"{}\"}`,definesInNearestScope:!1}}finally{this.#t=c,this.ctx.popBlockScope()}}if(t[0]===Jt.while){let o=this.#t;this.#t=[];try{let[n,i,d]=t,l=this._typedExpression(i,Ft),c=this.ctx.resolveSnippet(l).value,_=this._block(gi(d),!1).code;return{code:`${this.ctx.pre}while (${c}) ${_||\"{}\"}`,definesInNearestScope:!1}}finally{this.#t=o}}if(t[0]===Jt.forOf){let[o,n,i,d]=t;if(n[0]!==Jt.const)throw new vt(\"Only `for (const ... of ... )` loops are supported\");this.tryMarkModified(i);let l=!1,c=this.#t;try{this.ctx.pushBlockScope();let _=this._expression(i),p=_.value instanceof Pw,f=p?_.value.snippet:_,h=aU(this.ctx,f,p),g=n[1],x=gi(d);if(p){if(!js(h.end))throw new Error(\"Cannot unroll loop. Length of iterable is unknown at comptime.\");let E=h.end.value;if(E===0)return{code:\"\",definesInNearestScope:!1};let{value:M}=f,$=ev(M)?M.map(I=>To(I)):M instanceof oc?M.elements:Array.from({length:E},(I,X)=>Mb(f,Ae(X,Y,\"constant\"))),L=$[0];if(!In(L)&&!gn(L.dataType))throw new vt(`Cannot unroll '${ws(i)}'. The elements of iterable are constructed in place but are not value types.`);let B=\"\",D,G=!1;for(let I=0;I<$.length;I++){let X=$[I];this.#t=[...c,I];let H=this._blockStatement(x,{[g]:X});if(G||=H.definesInNearestScope,B+=`${this.ctx.pre}// unrolled iteration ${this.#t.map(ee=>`#${ee}`).join(\" / \")}\n${H.code}\n`,H.endsWithControlFlow!==void 0){D=H.endsWithControlFlow;break}}return{code:`${B}${this.ctx.pre}// ---`,endsWithControlFlow:D,definesInNearestScope:G}}this.#t=[];let T=this.ctx.makeUniqueIdentifier(\"i\",\"block\"),S=fe`${this.ctx.pre}for (var ${T} = ${h.start}; ${T} ${h.comparison} ${h.end}; ${T} += ${h.step})`,A=\"\";if(ev(f.value))A=this._block(x,!1,{[g]:Ae(T,h.start.dataType,\"runtime\",!1)}).code;else{this.ctx.indent(),l=!0;let E=this.ctx.makeUniqueIdentifier(g,\"block\"),M=Mb(f,Ae(T,Y,\"runtime\")),$=oU(M),L=nU(M,f);A=`{\n${fe`${this.ctx.pre}${$} ${E} = ${wo(this.ctx,M,L,!1)};`}\n${this._blockStatement(x,{[g]:Ae(E,L,M.origin,!1)}).code}\n`,this.ctx.dedent(),A+=`${this.ctx.pre}}`,l=!1}return{code:fe`${S} ${A.trim()||\"{}\"}`,definesInNearestScope:!1}}finally{l&&this.ctx.dedent(),this.#t=c,this.ctx.popBlockScope()}}if(t[0]===Jt.postUpdate){let[o,n,i]=t,d=this._expression(i),l=this.ctx.resolveSnippet(d).value;return Cb(d,t),this.tryMarkModified(i),{code:`${this.ctx.pre}${l}${n};`,definesInNearestScope:!1}}if(t[0]===Jt.continue){if(this.#t.length>0)throw new vt(\"Cannot unroll loop containing `continue`\");return{code:`${this.ctx.pre}continue;`,endsWithControlFlow:\"continue\",definesInNearestScope:!1}}if(t[0]===Jt.break){if(this.#t.length>0)throw new vt(\"Cannot unroll loop containing `break`\");return{code:`${this.ctx.pre}break;`,endsWithControlFlow:\"break\",definesInNearestScope:!1}}let s=this._expression(t),r=s.value!==void 0&&s.value!==null?this.ctx.resolveSnippet(s).value:\"\";return{code:r?`${this.ctx.pre}${r};`:\"\",definesInNearestScope:!1}}tryMarkModified(t){if(!t)return;let s=yU(t);if(s!==void 0){let r=this.ctx.getById(s),o=this.ctx.topFunctionScope;r&&o&&o.placeholderForVariable.has(r)&&o.modifiedVariables.add(r)}}};function Cb(e,t){if(e.origin===\"constant\"||e.origin===\"constant-immutable-def\"||e.origin===\"runtime-immutable-def\")throw js(e)?new vt(`'${ws(t)}' is invalid, because the left side is defined outside of the shader, and therefore is immutable during its execution. Try using tgpu.privateVar or buffers.`):new vt(`'${ws(t)}' is invalid, because the left side is a constant.`);if(e.origin===\"uniform\")throw new vt(`'${ws(t)}' is invalid, because uniform buffers cannot be mutated.`);if(e.origin===\"readonly\")throw new vt(`'${ws(t)}' is invalid, because readonly buffers cannot be mutated.`);if(e.origin===\"argument\")throw new vt(`'${ws(t)}' is invalid, because non-pointer arguments cannot be mutated.`)}function vU(e){throw new Error(`'${Oo(e)}' was not handled by the WGSL generator.`)}function hU(e){return/^0x[0-9a-f]+$/i.test(e)?Number.parseInt(e):/^0b[01]+$/i.test(e)?Number.parseInt(e.slice(2),2):Number.parseFloat(e)}function gi(e){return typeof e!=\"object\"||e[0]!==Jt.block?[Jt.block,[e]]:e}function yU(e){let t=e;for(;Array.isArray(t)&&(t[0]===Jt.memberAccess||t[0]===Jt.indexAccess);)t=t[1];if(typeof t==\"string\")return t}var gU=(()=>{try{return new Function(\"return true\"),!0}catch{return!1}})(),Rb=new WeakMap,Ub=!1,u_={u32:\"u32\",vec2u:\"u32\",vec3u:\"u32\",vec4u:\"u32\",u16:\"u16\",i32:\"i32\",vec2i:\"i32\",vec3i:\"i32\",vec4i:\"i32\",f32:\"f32\",vec2f:\"f32\",vec3f:\"f32\",vec4f:\"f32\",f16:\"f16\",vec2h:\"f16\",vec3h:\"f16\",vec4h:\"f16\",mat2x2f:\"f32\",mat3x3f:\"f32\",mat4x4f:\"f32\"},xU={uint8:\"u8\",uint8x2:\"u8\",uint8x4:\"u8\",sint8:\"i8\",sint8x2:\"i8\",sint8x4:\"i8\",unorm8:\"u8\",unorm8x2:\"u8\",unorm8x4:\"u8\",snorm8:\"i8\",snorm8x2:\"i8\",snorm8x4:\"i8\",uint16:\"u16\",uint16x2:\"u16\",uint16x4:\"u16\",sint16:\"i16\",sint16x2:\"i16\",sint16x4:\"i16\",unorm16:\"u16\",unorm16x2:\"u16\",unorm16x4:\"u16\",snorm16:\"i16\",snorm16x2:\"i16\",snorm16x4:\"i16\",float16:\"f16\",float16x2:\"f16\",float16x4:\"f16\",float32:\"f32\",float32x2:\"f32\",float32x3:\"f32\",float32x4:\"f32\",uint32:\"u32\",uint32x2:\"u32\",uint32x3:\"u32\",uint32x4:\"u32\",sint32:\"i32\",sint32x2:\"i32\",sint32x3:\"i32\",sint32x4:\"i32\"},__={u32:\"setUint32\",i32:\"setInt32\",f32:\"setFloat32\",u16:\"setUint16\",i16:\"setInt16\",f16:\"setFloat16\",u8:\"setUint8\",i8:\"setInt8\"},bU={unorm8:e=>`Math.round(${e} * 255)`,unorm8x2:e=>`Math.round(${e} * 255)`,unorm8x4:e=>`Math.round(${e} * 255)`,snorm8:e=>`Math.round(${e} * 127)`,snorm8x2:e=>`Math.round(${e} * 127)`,snorm8x4:e=>`Math.round(${e} * 127)`,unorm16:e=>`Math.round(${e} * 65535)`,unorm16x2:e=>`Math.round(${e} * 65535)`,unorm16x4:e=>`Math.round(${e} * 65535)`,snorm16:e=>`Math.round(${e} * 32767)`,snorm16x2:e=>`Math.round(${e} * 32767)`,snorm16x4:e=>`Math.round(${e} * 32767)`},zb={\"unorm10-10-10-2\":{writeFunction:\"setUint32\",generator:(e,t)=>`output.setUint32(${e}, ((${t}.x*1023&0x3FF)<<22)|((${t}.y*1023&0x3FF)<<12)|((${t}.z*1023&0x3FF)<<2)|(${t}.w*3&3), littleEndian);\n`},\"unorm8x4-bgra\":{writeFunction:\"setUint8\",generator:(e,t)=>[\"z\",\"y\",\"x\",\"w\"].map((s,r)=>`output.setUint8((${e} + ${r}), Math.round(${t}.${s} * 255), littleEndian);\n`).join(\"\")}};function Gb(e,t,s,r=0,o=!1){let n=(l,c,_)=>o?`if (${c} < endOffset) { output.${l}(${c}, ${_}, littleEndian); }\n`:`output.${l}(${c}, ${_}, littleEndian);\n`,i=(l,c)=>o?`if (${l} < endOffset) {\n${c}}\n`:c;function d(l,c,_,p){let f=[\"i\",\"j\",\"k\"][p]||`i${p}`;if(rm(l)||ya(l))return d(l.inner,c,_,p);if(Es(l)||Zn(l))return Object.entries(hm(l)).map(([g,x])=>{let T=l.propTypes[g];return T?d(T,`(${c} + ${x.offset})`,`${_}.${g}`,p):\"\"}).join(\"\");if(cr(l)||Vi(l)){if(l.elementCount===0)throw new Error(\"Cannot write using a runtime-sized schema.\");let g=Er(kt(l.elementType),ks(l)),x=l.elementCount*g,T=o?`Math.min(${_}.byteLength, Math.max(0, endOffset - (${c})))`:`Math.min(${_}.byteLength, ${x})`,S=`if (ArrayBuffer.isView(${_})) {\n`;return S+=` new Uint8Array(output.buffer).set(new Uint8Array(${_}.buffer, ${_}.byteOffset, ${T}), output.byteOffset + (${c}));\n`,S+=`} else {\n`,S+=`for (let ${f} = 0; ${f} < ${l.elementCount}; ${f}++) {\n`,o&&(S+=`if ((${c} + ${f} * ${g}) >= endOffset) return;\n`),S+=d(l.elementType,`(${c} + ${f} * ${g})`,`${_}[${f}]`,p+1),S+=`}\n`,S+=`}\n`,S}if(as(l)){if(_h(l))throw new Error(\"Compiled writers do not support boolean vectors\");let g=u_[l.type],x=kt(l.primitive),T=__[g];return Array.from({length:l.componentCount},(S,A)=>n(T,`(${c} + ${A*x})`,`${_}[${A}]`)).join(\"\")}if(On(l)){let g=__[u_[l.type]],x=V5(l)?2:N5(l)?3:4,T=Er(x*4,8),S=[\"x\",\"y\",\"z\",\"w\"],A=T/4;return Array.from({length:x*x},(E,M)=>{let $=Math.floor(M/x),L=M%x,B=$*x+L,D=$*A+L;return n(g,`(${c} + ${$*T+L*4})`,`ArrayBuffer.isView(${_}) ? ${_}[${D}] : Array.isArray(${_}) ? ${_}[${B}] : ${_}.columns[${$}].${S[L]}`)}).join(\"\")}if(W$(l)){let g=l.type;if(g in zb){let L=zb[g];return i(`(${c})`,L.generator(c,_))}let x=xU[g],T=__[x],S=ma[g],A=as(S)?S.componentCount:1,E=x===\"u8\"||x===\"i8\"?1:x===\"u16\"||x===\"i16\"||x===\"f16\"?2:4,M=[\"x\",\"y\",\"z\",\"w\"],$=bU[g];return Array.from({length:A},(L,B)=>{let D=A===1?_:`${_}.${M[B]}`,G=$?$(D):D;return n(T,`(${c} + ${B*E})`,G)}).join(\"\")}if(!Object.hasOwn(u_,l.type))throw new Error(`Primitive ${l.type} is unsupported by compiled writer`);let h=u_[l.type];return n(__[h],c,_)}return d(e,t,s,r)}function oy(e){if(!gU){Ub||(fs.warn(\"fallback\",\"This environment does not allow eval - using default writer as fallback\"),Ub=!0);return}let t=Rb.get(e);if(t)return t;try{let s=Gb(e,\"offset\",\"value\",0,!1),r=`if (offset > 0 || endOffset < output.byteLength) {\n${Gb(e,\"offset\",\"value\",0,!0)}} else {\n${s}}\n`,o=new Function(\"output\",\"offset\",\"value\",\"littleEndian=true\",\"endOffset=output.byteLength\",r);return Rb.set(e,o),o}catch(s){fs.warn(\"fallback\",`Failed to compile writer for schema: ${e}\nReason: ${s instanceof Error?s.message:String(s)}\nFalling back to default writer`)}}function xr(e,t){e.writeUint16(ep(t))}function br(e){return bh(e.readUint16())}var hd={bool(){throw new Error(\"Booleans are not host-shareable\")},f32(e,t,s){e.writeFloat32(s)},f16(e,t,s){xr(e,s)},i32(e,t,s){e.writeInt32(s)},u32(e,t,s){e.writeUint32(s)},u16(e,t,s){e.writeUint16(s)},vec2f(e,t,s){e.writeFloat32(s[0]),e.writeFloat32(s[1])},vec2h(e,t,s){xr(e,s[0]),xr(e,s[1])},vec2i(e,t,s){e.writeInt32(s[0]),e.writeInt32(s[1])},vec2u(e,t,s){e.writeUint32(s[0]),e.writeUint32(s[1])},\"vec2<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},vec3f(e,t,s){e.writeFloat32(s[0]),e.writeFloat32(s[1]),e.writeFloat32(s[2])},vec3h(e,t,s){xr(e,s[0]),xr(e,s[1]),xr(e,s[2])},vec3i(e,t,s){e.writeInt32(s[0]),e.writeInt32(s[1]),e.writeInt32(s[2])},vec3u(e,t,s){e.writeUint32(s[0]),e.writeUint32(s[1]),e.writeUint32(s[2])},\"vec3<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},vec4f(e,t,s){e.writeFloat32(s[0]),e.writeFloat32(s[1]),e.writeFloat32(s[2]),e.writeFloat32(s[3])},vec4h(e,t,s){xr(e,s[0]),xr(e,s[1]),xr(e,s[2]),xr(e,s[3])},vec4i(e,t,s){e.writeInt32(s[0]),e.writeInt32(s[1]),e.writeInt32(s[2]),e.writeInt32(s[3])},vec4u(e,t,s){e.writeUint32(s[0]),e.writeUint32(s[1]),e.writeUint32(s[2]),e.writeUint32(s[3])},\"vec4<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},mat2x2f(e,t,s){for(let r=0;r<s.length;++r)e.writeFloat32(s[r])},mat3x3f(e,t,s){for(let r=0;r<s.length;++r)e.writeFloat32(s[r])},mat4x4f(e,t,s){for(let r=0;r<s.length;++r)e.writeFloat32(s[r])},struct(e,t,s){let r=ks(t);Tr(e,r);for(let[o,n]of Object.entries(t.propTypes))Tr(e,ks(n)),np(e,n,s[o]);Tr(e,r)},array(e,t,s){if(t.elementCount===0)throw new Error(\"Cannot write using a runtime-sized schema.\");let r=ks(t);Tr(e,r);let o=e.currentByteOffset;for(let n=0;n<Math.min(t.elementCount,s.length);n++)Tr(e,r),np(e,t.elementType,s[n]);e.seekTo(o+kt(t))},ptr(){throw new Error(\"Pointers are not host-shareable\")},atomic(e,t,s){hd[t.inner.type]?.(e,t,s)},decorated(e,t,s){Tr(e,sn(t));let r=e.currentByteOffset;hd[t.inner?.type]?.(e,t.inner,s),e.seekTo(r+kt(t))},uint8(e,t,s){e.writeUint8(s)},uint8x2(e,t,s){e.writeUint8(s.x),e.writeUint8(s.y)},uint8x4(e,t,s){e.writeUint8(s.x),e.writeUint8(s.y),e.writeUint8(s.z),e.writeUint8(s.w)},sint8(e,t,s){e.writeInt8(s)},sint8x2(e,t,s){e.writeInt8(s.x),e.writeInt8(s.y)},sint8x4(e,t,s){e.writeInt8(s.x),e.writeInt8(s.y),e.writeInt8(s.z),e.writeInt8(s.w)},unorm8(e,t,s){e.writeUint8(Math.round(s*255))},unorm8x2(e,t,s){e.writeUint8(Math.round(s.x*255)),e.writeUint8(Math.round(s.y*255))},unorm8x4(e,t,s){e.writeUint8(Math.round(s.x*255)),e.writeUint8(Math.round(s.y*255)),e.writeUint8(Math.round(s.z*255)),e.writeUint8(Math.round(s.w*255))},snorm8(e,t,s){e.writeInt8(Math.round(s*127))},snorm8x2(e,t,s){e.writeInt8(Math.round(s.x*127)),e.writeInt8(Math.round(s.y*127))},snorm8x4(e,t,s){e.writeInt8(Math.round(s.x*127)),e.writeInt8(Math.round(s.y*127)),e.writeInt8(Math.round(s.z*127)),e.writeInt8(Math.round(s.w*127))},uint16(e,t,s){e.writeUint16(s)},uint16x2(e,t,s){e.writeUint16(s.x),e.writeUint16(s.y)},uint16x4(e,t,s){e.writeUint16(s.x),e.writeUint16(s.y),e.writeUint16(s.z),e.writeUint16(s.w)},sint16(e,t,s){e.writeInt16(s)},sint16x2(e,t,s){e.writeInt16(s.x),e.writeInt16(s.y)},sint16x4(e,t,s){e.writeInt16(s.x),e.writeInt16(s.y),e.writeInt16(s.z),e.writeInt16(s.w)},unorm16(e,t,s){e.writeUint16(s*65535)},unorm16x2(e,t,s){e.writeUint16(s.x*65535),e.writeUint16(s.y*65535)},unorm16x4(e,t,s){e.writeUint16(s.x*65535),e.writeUint16(s.y*65535),e.writeUint16(s.z*65535),e.writeUint16(s.w*65535)},snorm16(e,t,s){e.writeInt16(Math.round(s*32767))},snorm16x2(e,t,s){e.writeInt16(Math.round(s.x*32767)),e.writeInt16(Math.round(s.y*32767))},snorm16x4(e,t,s){e.writeInt16(Math.round(s.x*32767)),e.writeInt16(Math.round(s.y*32767)),e.writeInt16(Math.round(s.z*32767)),e.writeInt16(Math.round(s.w*32767))},float16(e,t,s){xr(e,s)},float16x2(e,t,s){xr(e,s.x),xr(e,s.y)},float16x4(e,t,s){xr(e,s.x),xr(e,s.y),xr(e,s.z),xr(e,s.w)},float32(e,t,s){e.writeFloat32(s)},float32x2(e,t,s){e.writeFloat32(s.x),e.writeFloat32(s.y)},float32x3(e,t,s){e.writeFloat32(s.x),e.writeFloat32(s.y),e.writeFloat32(s.z)},float32x4(e,t,s){e.writeFloat32(s.x),e.writeFloat32(s.y),e.writeFloat32(s.z),e.writeFloat32(s.w)},uint32(e,t,s){e.writeUint32(s)},uint32x2(e,t,s){e.writeUint32(s.x),e.writeUint32(s.y)},uint32x3(e,t,s){e.writeUint32(s.x),e.writeUint32(s.y),e.writeUint32(s.z)},uint32x4(e,t,s){e.writeUint32(s.x),e.writeUint32(s.y),e.writeUint32(s.z),e.writeUint32(s.w)},sint32(e,t,s){e.writeInt32(s)},sint32x2(e,t,s){e.writeInt32(s.x),e.writeInt32(s.y)},sint32x3(e,t,s){e.writeInt32(s.x),e.writeInt32(s.y),e.writeInt32(s.z)},sint32x4(e,t,s){e.writeInt32(s.x),e.writeInt32(s.y),e.writeInt32(s.z),e.writeInt32(s.w)},\"unorm10-10-10-2\"(e,t,s){let r=0;r|=(s.x*1023&1023)<<22,r|=(s.y*1023&1023)<<12,r|=(s.z*1023&1023)<<2,r|=s.w*3&3,e.writeUint32(r)},\"unorm8x4-bgra\"(e,t,s){e.writeUint8(s.z*255),e.writeUint8(s.y*255),e.writeUint8(s.x*255),e.writeUint8(s.w*255)},disarray(e,t,s){let r=ks(t);Tr(e,r);let o=e.currentByteOffset;for(let n=0;n<Math.min(t.elementCount,s.length);n++)Tr(e,r),hd[t.elementType?.type]?.(e,t.elementType,s[n]);e.seekTo(o+kt(t))},unstruct(e,t,s){let r=t.propTypes;for(let[o,n]of Object.entries(r))hd[n.type]?.(e,n,s[o])},\"loose-decorated\"(e,t,s){Tr(e,sn(t));let r=e.currentByteOffset,o=hd[t.inner?.type];return o?.(e,t.inner,s),e.seekTo(r+kt(t)),s}};function np(e,t,s){if(ArrayBuffer.isView(s)){let o=s,n=kt(t);o.byteLength!==n&&fs.warn(\"suspicious\",`TypedArray size mismatch: schema expects ${n} bytes, got ${o.byteLength}. `+(o.byteLength<n?\"Data truncated.\":\"Excess ignored.\"));let i=e.currentByteOffset;e.writeSlice(new Uint8Array(o.buffer,o.byteOffset,Math.min(o.byteLength,n))),e.seekTo(i+n);return}let r=hd[t.type];if(!r)throw new Error(`Cannot write data of type '${t.type}'.`);r(e,t,s)}var wU={bool(){throw new Error(\"Booleans are not host-shareable\")},f32(e){return e.readFloat32()},f16(e){return br(e)},i32(e){return e.readInt32()},u32(e){return e.readUint32()},u16(e){return e.readUint16()},vec2f(e){return $t(e.readFloat32(),e.readFloat32())},vec3f(e){return cs(e.readFloat32(),e.readFloat32(),e.readFloat32())},vec4f(e){return lt(e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32())},vec2h(e){return Sr(br(e),br(e))},vec3h(e){return po(br(e),br(e),br(e))},vec4h(e){return Ar(br(e),br(e),br(e),br(e))},vec2i(e){return xs(e.readInt32(),e.readInt32())},vec3i(e){return Os(e.readInt32(),e.readInt32(),e.readInt32())},vec4i(e){return ps(e.readInt32(),e.readInt32(),e.readInt32(),e.readInt32())},vec2u(e){return ns(e.readUint32(),e.readUint32())},vec3u(e){return Ot(e.readUint32(),e.readUint32(),e.readUint32())},vec4u(e){return es(e.readUint32(),e.readUint32(),e.readUint32(),e.readUint32())},\"vec2<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},\"vec3<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},\"vec4<bool>\"(){throw new Error(\"Booleans are not host-shareable\")},mat2x2f(e){return ga(e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32())},mat3x3f(e){let t=()=>{let s=e.readFloat32();return e.readFloat32(),s};return xa(e.readFloat32(),e.readFloat32(),t(),e.readFloat32(),e.readFloat32(),t(),e.readFloat32(),e.readFloat32(),t())},mat4x4f(e){return Mr(e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32())},struct(e,t){let s=ks(t);Tr(e,s);let r={},o=t.propTypes;for(let[n,i]of Object.entries(o))Tr(e,ks(i)),r[n]=za(e,i);return Tr(e,s),r},array(e,t){if(t.elementCount===0)throw new Error(\"Cannot read using a runtime-sized schema.\");let s=ks(t),r=[];for(let o=0;o<t.elementCount;o++){Tr(e,s);let n=t.elementType,i=za(e,n);r.push(i)}return Tr(e,s),r},ptr(){throw new Error(\"Pointers are not host-shareable\")},atomic(e,t){return za(e,t.inner)},decorated(e,t){Tr(e,sn(t));let s=e.currentByteOffset,r=za(e,t.inner);return e.seekTo(s+kt(t)),r},uint8:e=>e.readUint8(),uint8x2:e=>ns(e.readUint8(),e.readUint8()),uint8x4:e=>es(e.readUint8(),e.readUint8(),e.readUint8(),e.readUint8()),sint8:e=>e.readInt8(),sint8x2:e=>xs(e.readInt8(),e.readInt8()),sint8x4:e=>ps(e.readInt8(),e.readInt8(),e.readInt8(),e.readInt8()),unorm8:e=>e.readUint8()/255,unorm8x2:e=>$t(e.readUint8()/255,e.readUint8()/255),unorm8x4:e=>lt(e.readUint8()/255,e.readUint8()/255,e.readUint8()/255,e.readUint8()/255),snorm8:e=>e.readInt8()/127,snorm8x2:e=>$t(e.readInt8()/127,e.readInt8()/127),snorm8x4:e=>lt(e.readInt8()/127,e.readInt8()/127,e.readInt8()/127,e.readInt8()/127),uint16:e=>e.readUint16(),uint16x2:e=>ns(e.readUint16(),e.readUint16()),uint16x4:e=>es(e.readUint16(),e.readUint16(),e.readUint16(),e.readUint16()),sint16:e=>e.readInt16(),sint16x2:e=>xs(e.readInt16(),e.readInt16()),sint16x4:e=>ps(e.readInt16(),e.readInt16(),e.readInt16(),e.readInt16()),unorm16:e=>e.readUint16()/65535,unorm16x2:e=>$t(e.readUint16()/65535,e.readUint16()/65535),unorm16x4:e=>lt(e.readUint16()/65535,e.readUint16()/65535,e.readUint16()/65535,e.readUint16()/65535),snorm16:e=>e.readInt16()/32767,snorm16x2:e=>$t(e.readInt16()/32767,e.readInt16()/32767),snorm16x4:e=>lt(e.readInt16()/32767,e.readInt16()/32767,e.readInt16()/32767,e.readInt16()/32767),float16(e){return br(e)},float16x2:e=>$t(br(e),br(e)),float16x4:e=>lt(br(e),br(e),br(e),br(e)),float32:e=>e.readFloat32(),float32x2:e=>$t(e.readFloat32(),e.readFloat32()),float32x3:e=>cs(e.readFloat32(),e.readFloat32(),e.readFloat32()),float32x4:e=>lt(e.readFloat32(),e.readFloat32(),e.readFloat32(),e.readFloat32()),uint32:e=>e.readUint32(),uint32x2:e=>ns(e.readUint32(),e.readUint32()),uint32x3:e=>Ot(e.readUint32(),e.readUint32(),e.readUint32()),uint32x4:e=>es(e.readUint32(),e.readUint32(),e.readUint32(),e.readUint32()),sint32:e=>e.readInt32(),sint32x2:e=>xs(e.readInt32(),e.readInt32()),sint32x3:e=>Os(e.readInt32(),e.readInt32(),e.readInt32()),sint32x4:e=>ps(e.readInt32(),e.readInt32(),e.readInt32(),e.readInt32()),\"unorm10-10-10-2\"(e){let t=e.readUint32();return lt((t>>22)/1023,(t>>12&1023)/1023,(t>>2&1023)/1023,(t&3)/3)},\"unorm8x4-bgra\"(e){let t=e.readByte()/255,s=e.readByte()/255;return lt(e.readByte()/255,s,t,e.readByte()/255)},unstruct(e,t){let s={},r=t.propTypes;for(let[o,n]of Object.entries(r))s[o]=za(e,n);return s},disarray(e,t){let s=ks(t),r=[];for(let o=0;o<t.elementCount;o++)Tr(e,s),r.push(za(e,t.elementType));return Tr(e,s),r},\"loose-decorated\"(e,t){Tr(e,sn(t));let s=e.currentByteOffset,r=za(e,t.inner);return e.seekTo(s+kt(t)),r}};function za(e,t){let s=wU[t.type];if(!s)throw new Error(`Cannot read data of type '${t.type}'.`);return s(e,t)}var TU=Xh();function Rw(e,t,s){let r=kt(t),o=e?.startOffset??0,n;cr(t)&&Array.isArray(s)?n=s.length*Er(kt(t.elementType),ks(t.elementType)):(ArrayBuffer.isView(s)||s instanceof ArrayBuffer)&&(n=s.byteLength);let i=n!==void 0?Math.min(o+n,r):void 0;return{startOffset:o,endOffset:e?.endOffset??i??r}}function V1(e,t,s,r){let{startOffset:o,endOffset:n}=Rw(r,t,s);if(s instanceof ArrayBuffer||ArrayBuffer.isView(s)){let _=s instanceof ArrayBuffer?new Uint8Array(s):new Uint8Array(s.buffer,s.byteOffset,s.byteLength),p=n-o;_.byteLength!==p&&fs.warn(\"suspicious\",`Buffer size mismatch: expected ${p} bytes, got ${_.byteLength}. `+(_.byteLength<p?\"Data truncated.\":\"Excess ignored.\"));let f=Math.min(_.byteLength,p);new Uint8Array(e).set(_.subarray(0,f),o);return}let i=new DataView(e),d=TU===\"little\",l=oy(t);if(l)try{l(i,o,s,d,n);return}catch(_){fs.warn(\"fallback\",`Error when using compiled writer for data type '${t.type}' (${Re(t)??\"unnamed\"}) - this is likely a bug, please submit an issue at https://github.com/software-mansion/TypeGPU/issues\nUsing fallback writer instead.`,_)}let c=new Xi(e);c.seekTo(o),np(c,t,s)}function N1(e,t){return za(new sl(e),t)}function tv(e,t){if(t==null)return t;if(Es(e)||Zn(e)){let s={},r=t;for(let o of Object.keys(e.propTypes)){let n=e.propTypes[o],i=r[o];i!==void 0&&n&&(s[o]=tv(n,i))}return s}if(cr(e)||Vi(e)){let s=e,r={};for(let{idx:o,value:n}of t)r[o]=tv(s.elementType,n);return r}return t}var SU=Xh()===\"little\";function Uw(e,t,s){let r=kt(e);if(r===0||t===void 0||t===null)return[];let o=s??new ArrayBuffer(r),n=new Xi(o),i=new DataView(o),d=[];function l(p,f,h,g){if(f==null)return;if(Es(p)||Zn(p)){let S=hm(p);for(let[A,E]of Object.entries(S)){let M=f[A],$=p.propTypes[A];M!==void 0&&$&&l($,M,h+E.offset,E.padding??g)}return}if(cr(p)||Vi(p)){let S=p,A=Er(kt(S.elementType),ks(S.elementType)),E=A-kt(S.elementType);if(ArrayBuffer.isView(f)){let $=Math.min(f.byteLength,S.elementCount*A);new Uint8Array(o,h,$).set(new Uint8Array(f.buffer,f.byteOffset,$)),d.push({start:h,end:h+$,padding:g});return}if(Array.isArray(f)){for(let $=0;$<Math.min(S.elementCount,f.length);$++)l(S.elementType,f[$],h+$*A,E);return}let M=f;for(let $ of Object.keys(M)){let L=Number($);Number.isNaN(L)||l(S.elementType,M[$],h+L*A,E)}return}let x=kt(p),T=oy(p);T?T(i,h,f,SU,h+x):(n.seekTo(h),np(n,p,f)),d.push({start:h,end:h+x,padding:g})}l(e,t,0);let c=[],_=null;for(let p of d)_&&p.start===_.end+(_.padding??0)?_={start:_.start,end:p.end,padding:p.padding}:(_&&c.push({gpuOffset:_.start,data:new Uint8Array(o,_.start,_.end-_.start).slice()}),_=p);return _&&c.push({gpuOffset:_.start,data:new Uint8Array(o,_.start,_.end-_.start).slice()}),c}function AU(e,t,s){let r=Uw(t,s,e),o=new Uint8Array(e);for(let{data:n,gpuOffset:i}of r)o.set(n,i)}var Db=class zw extends Error{constructor(t){super(`Resource '${Re(t)??\"<unnamed>\"}' cannot be bound as 'storage'. Use .$usage('storage') to allow it.`),Object.setPrototypeOf(this,zw.prototype)}};function Ic(e){return e instanceof Di}function EU(e){return Ic(e)&&e.resourceType===\"uniform\"}function PU(e){return Ic(e)&&e.resourceType===\"mutable\"}function MU(e){return Ic(e)&&e.resourceType===\"readonly\"}var Di=class sv{[be];[Pr];resourceType;static#e=void(sv.prototype[q]=!0,Qn(wa(sv.prototype,{asString(){return`${this.resourceType}BufferBinding:${Re(this)??\"<unnamed>\"}`},resolve(t){let s=this.buffer.dataType,r=t.makeUniqueIdentifier(Re(this),\"global\"),{group:o,binding:n}=t.allocateFixedEntry(this.resourceType===\"uniform\"?{uniform:s}:{storage:s,access:this.resourceType},this.buffer);return t.gen.declareGlobalVar({group:o,binding:n,scope:this.resourceType,id:r,dataType:s,init:void 0})}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.buffer.dataType,this.resourceType,!1)}},simulateMode:{get(t){return t.buffers.has(this.buffer)||t.buffers.set(this.buffer,Xa(this.buffer.dataType,this.buffer.initial)),t.buffers.get(this.buffer)},set(t,s){t.buffers.set(this.buffer,s)}},normalMode:{get(){throw new Ox(Q_()?`Cannot access ${String(this.buffer)}. TypeGPU functions that depends on GPU resources need to be part of a compute dispatch, draw call or simulation`:\".$ is inaccessible during normal JS execution. Try `.read()`\")},set(){throw new Ox(Q_()?`Cannot access ${String(this.buffer)}. TypeGPU functions that depends on GPU resources need to be part of a compute dispatch, draw call or simulation`:\".$ is inaccessible during normal JS execution. Try `.write()`\")}}}));constructor(t,s){this.resourceType=t,this[Pr]=s,this[be]={type:t,buffer:s,label:void 0}}get buffer(){return this[be].buffer}$name(t){return Tt(this,t),this}write(t,s){this.buffer.write(t,s)}writePartial(t){this.buffer.writePartial(t)}patch(t){this.buffer.patch(t)}read(){return this.buffer.read()}},Lb=new WeakMap;function kU(e){if(!Z_(e))throw new Error(`Cannot call as('mutable') on ${e}, as it is not allowed to be used as storage. To allow it, call .$usage('storage') when creating the buffer.`);let t=Lb.get(e);return t||(t=new Di(\"mutable\",e),Lb.set(e,t)),t}var Fb=new WeakMap;function $U(e){if(!Z_(e))throw new Error(`Cannot call as('readonly') on ${e}, as it is not allowed to be used as storage. To allow it, call .$usage('storage') when creating the buffer.`);let t=Fb.get(e);return t||(t=new Di(\"readonly\",e),Fb.set(e,t)),t}var Bb=new WeakMap;function CU(e){if(!f6(e))throw new Error(`Cannot call as('uniform') on ${e}, as it is not allowed to be used as a uniform. To allow it, call .$usage('uniform') when creating the buffer.`);let t=Bb.get(e);return t||(t=new Di(\"uniform\",e),Bb.set(e,t)),t}function Gw(e,t){let s=Object.values(e).flatMap(n=>Object.values(n.entries)).filter(n=>n!==null),r=s.filter(n=>\"uniform\"in n).length,o=s.filter(n=>\"storage\"in n).length;r>t.maxUniformBuffersPerShaderStage&&fs.warn(\"webgpu-limits-exceeded\",`Total number of uniform buffers (${r}) exceeds maxUniformBuffersPerShaderStage (${t.maxUniformBuffersPerShaderStage}). Consider:\n1. Grouping some of the uniforms into one using 'd.struct',\n2. Increasing the limit when requesting a device or creating a root.`),o>t.maxStorageBuffersPerShaderStage&&fs.warn(\"webgpu-limits-exceeded\",`Total number of storage buffers (${o}) exceeds maxStorageBuffersPerShaderStage (${t.maxStorageBuffersPerShaderStage}).`)}function RU(e){return Es(e)||cr(e)?Er(ks(e),16):ks(e)}function rv(e){if(cr(e)){rv(e.elementType);let t=Er(kt(e.elementType),ks(e.elementType));t%16!==0&&fs.warn(\"uniform-schema-misaligned\",`Schema '${Re(e.elementType)??\"<unnamed>\"}' is used in an array in a uniform buffer, and its stride (${t}) is not a multiple of 16.\nThis is not portable (see https://www.w3.org/TR/WGSL/#address-space-layout-constraints), and will break on some devices.\nTo address this, put the element schema in a struct and wrap the prop in 'd.align(16, ...)', or use a different schema like 'vec4f'.`)}if(Es(e)){Object.values(e.propTypes).forEach(rv),Object.entries(e.propTypes).forEach(([s,r])=>{let o=D_(e,i=>i[s]).offset,n=RU(r);o%n&&fs.warn(\"uniform-schema-misaligned\",`Schema '${Re(e)??\"<unnamed>\"}' is used in a uniform buffer, and its property '${s}' does not meet required alignment (offset is ${o}, required alignment is ${n}).\nThis is not portable (see https://www.w3.org/TR/WGSL/#address-space-layout-constraints), and will break on some devices.\nTo address this, wrap the property '${s}' in 'd.align(${n}, ...)'.`)});let t=Object.keys(e.propTypes);for(let s=0;s<t.length-1;s++){let r=t[s],o=t[s+1];Ws(r&&o);let n=e.propTypes[r];if(Ws(n),!Es(n))continue;let i=Er(kt(n),16),d=D_(e,c=>c[r]).offset,l=D_(e,c=>c[o]).offset-d;i>l&&fs.warn(\"uniform-schema-misaligned\",`Schema '${Re(e)??\"<unnamed>\"}' is used in a uniform buffer, and the difference between memory offsets of '${r}' and '${o}' props (${l}) is less than recommended (${i}).\nThis is not portable (see https://www.w3.org/TR/WGSL/#address-space-layout-constraints), and will break on some devices.\nTo address this, wrap the '${r}' prop in 'd.size(${i}, ...)'.`)}}}var UU={uniform:CU,mutable:kU,readonly:$U};function p_(e,t,s){return Oi(t)?new Ib(e,t,s):new Ib(e,t,s,[\"storage\",\"uniform\"])}var Ib=class{[q];[be];resourceType=\"buffer\";#e;#t=!1;#s;get#r(){return this.#s??=new ArrayBuffer(kt(this.dataType))}#o;#n;#i;initial;usableAsUniform=!1;usableAsStorage=!1;usableAsVertex=!1;usableAsIndex=!1;usableAsIndirect=!1;constructor(e,t,s,r){this[be]={type:\"buffer\",device:e.device,dataType:t,flags:GPUBufferUsage.COPY_DST|GPUBufferUsage.COPY_SRC,usages:[],raw:void 0,label:void 0},this.#i=r,ca(s)?(this.#e=!1,this[be].raw=s):(this.#e=!0,typeof s==\"function\"?this.#n=s:this.initial=s),this[q]={root:e,materialize:()=>{if(this.#t)throw new Error(\"This buffer has been destroyed\");let o=this[be];return o.raw||(o.raw=o.device.createBuffer({size:kt(o.dataType),usage:o.flags,mappedAtCreation:!!this.initial||!!this.#n,label:Re(this)??\"<unnamed>\"}),(this.initial||this.#n)&&(this.#n?this.#n(this):this.initial&&V1(this.#a(),this.dataType,this.initial),this.#d())),o.raw}}}get dataType(){return this[be].dataType}get flags(){return this[be].flags}set flags(e){this[be].flags=e}get buffer(){return this[q].materialize()}get destroyed(){return this.#t}get arrayBuffer(){return this.buffer.mapState===\"mapped\"?this.#a():this.#r}#a(){let e=this[be].raw;if(!e||e.mapState!==\"mapped\")throw new Error(\"Buffer is not mapped.\");return this.#o??=e.getMappedRange(),this.#o}#d(){let e=this[be].raw;!e||e.mapState!==\"mapped\"||(this.#o=void 0,e.unmap())}$name(e){Tt(this,e);let t=this[be].raw;return t&&(t.label=e),this}$usage(...e){for(let t of e){if(this.#i?.includes(t))throw new Error(`Buffer of type ${this.dataType.type} cannot be used as ${t}`);t===\"uniform\"&&rv(this.dataType),this.flags|=t===\"uniform\"?GPUBufferUsage.UNIFORM:0,this.flags|=t===\"storage\"?GPUBufferUsage.STORAGE:0,this.flags|=t===\"vertex\"?GPUBufferUsage.VERTEX:0,this.flags|=t===\"index\"?GPUBufferUsage.INDEX:0,this.flags|=t===\"indirect\"?GPUBufferUsage.INDIRECT:0,this.usableAsUniform=this.usableAsUniform||t===\"uniform\",this.usableAsStorage=this.usableAsStorage||t===\"storage\",this.usableAsVertex=this.usableAsVertex||t===\"vertex\",this.usableAsIndex=this.usableAsIndex||t===\"index\",this.usableAsIndirect=this.usableAsIndirect||t===\"indirect\",this[be].usages.includes(t)||this[be].usages.push(t)}return this}$addFlags(e){if(!this.#e)throw new Error(\"Cannot add flags to a buffer that is not managed by TypeGPU.\");return e&GPUBufferUsage.MAP_READ?(this.flags=GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ,this):e&GPUBufferUsage.MAP_WRITE?(this.flags=GPUBufferUsage.COPY_SRC|GPUBufferUsage.MAP_WRITE,this):(this.flags|=e,this)}compileWriter(){oy(this.dataType)}write(e,t){let s=this.buffer;if(s.mapState===\"mapped\"){let i=this.#a();if(e instanceof ArrayBuffer&&e===i)return;V1(i,this.dataType,e,t);return}e instanceof ArrayBuffer&&e===this.#r||V1(this.#r,this.dataType,e,t);let{startOffset:r,endOffset:o}=Rw(t,this.dataType,e),n=o-r;this[be].device.queue.writeBuffer(s,r,this.#r,r,n)}writePartial(e){this.patch(tv(this.dataType,e))}patch(e){let t=this.buffer;if(t.mapState===\"mapped\")AU(this.#a(),this.dataType,e);else{let s=Uw(this.dataType,e,this.#r);for(let{data:r,gpuOffset:o}of s)this[be].device.queue.writeBuffer(t,o,r)}}clear(e){let t=this.buffer;if(e){e[q].rawEncoder.clearBuffer(t);return}if(t.mapState===\"mapped\"){new Uint8Array(this.#a()).fill(0);return}let s=this[be].device.createCommandEncoder();s.clearBuffer(t),this[be].device.queue.submit([s.finish()])}copyFrom(e,t){if(this.buffer.mapState===\"mapped\")throw new Error(\"Cannot copy to a mapped buffer.\");let s=kt(this.dataType);if(t){t[q].rawEncoder.copyBufferToBuffer(e.buffer,0,this.buffer,0,s);return}let r=this[be].device.createCommandEncoder();r.copyBufferToBuffer(e.buffer,0,this.buffer,0,s),this[be].device.queue.submit([r.finish()])}async read(){let e=this.buffer;if(e.mapState===\"mapped\")return N1(this.#a(),this.dataType);if(e.usage&GPUBufferUsage.MAP_READ){await e.mapAsync(GPUMapMode.READ);let o=N1(this.#a(),this.dataType);return this.#d(),o}let t=this[be].device.createBuffer({size:kt(this.dataType),usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ}),s=this[be].device.createCommandEncoder();s.copyBufferToBuffer(e,0,t,0,kt(this.dataType)),this[be].device.queue.submit([s.finish()]),await t.mapAsync(GPUMapMode.READ,0,kt(this.dataType));let r=N1(t.getMappedRange(),this.dataType);return t.unmap(),t.destroy(),r}as(e){return UU[e](this)}destroy(){this.#t||(this.#t=!0,this.#o=void 0,this.#e&&this[be].raw?.destroy())}toString(){return`buffer:${Re(this)??\"<unnamed>\"}`}},Dw=class ov{bindings;constructor(t){this.bindings=t}with(t,s){return new ov([...this.bindings,[Jd(t)||el(t)?t.slot:t,s]])}pipe(t){let s=t(this);return new ov([...this.bindings,...s.bindings])}};function*zU(e){let t=0;for(;;)e.has(t)||(yield t),t++}function GU(e,t){return new Fw(Nh(),e,t)}function DU(e,t){return new Fw(Q6(),e,t)}function ny(e){let t=e;return t?.resourceType===\"sampler\"&&!!t[q]}function ay(e){let t=e;return t?.resourceType===\"sampler-comparison\"&&!!t[q]}var LU=class Lw{[q]={materialize:void 0};resourceType;schema;#e;static#t=Qn(wa(Lw.prototype,{asString(){return`${this.resourceType}:${Re(this)??\"<unnamed>\"}`},resolve(t){let s=t.makeUniqueIdentifier(Re(this),\"global\"),r=t.allocateLayoutEntry(this.#e.layout);return t.addDeclaration(`@group(${r}) @binding(${this.#e.idx}) var ${s}: ${t.resolve(this.schema).value};`,s),Ae(s,this.schema,\"handle\")}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.schema,\"handle\",!1)}},normalMode:{get(){throw new Error(\"Direct access to sampler values is possible only as part of a compute dispatch or draw call.\")}}});constructor(t,s){this.schema=t,this.#e=s,this.resourceType=t.type===\"sampler_comparison\"?\"sampler-comparison\":\"sampler\",Tt(this,s.key)}},Fw=class Bw{[q];[be];resourceType;schema;#e;static#t=Qn(wa(Bw.prototype,{asString(){return`${this.resourceType}:${Re(this)??\"<unnamed>\"}`},resolve(t){let s=t.makeUniqueIdentifier(Re(this),\"global\"),{group:r,binding:o}=t.allocateFixedEntry(this.schema.type===\"sampler_comparison\"?{sampler:\"comparison\"}:{sampler:this.#e?\"filtering\":\"non-filtering\"},this);return t.addDeclaration(`@group(${r}) @binding(${o}) var ${s}: ${t.resolve(this.schema).value};`,s),Ae(s,this.schema,\"handle\")}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.schema,\"handle\",!1)}},normalMode:{get(){throw new Error(\"Direct access to sampler values is possible only as part of a compute dispatch or draw call.\")}}});constructor(t,s,r){this.schema=t,this.resourceType=t.type===\"sampler_comparison\"?\"sampler-comparison\":\"sampler\",this[be]={type:this.resourceType,device:r.device,props:s,raw:void 0,label:void 0},this[q]={root:r,materialize:()=>{let o=this[be];return o.raw||(o.raw=o.device.createSampler({...o.props,label:Re(this)??\"<unnamed>\"})),o.raw}},this.#e=s.minFilter===\"linear\"||s.magFilter===\"linear\"||s.mipmapFilter===\"linear\"}$name(t){return Tt(this,t),this}},FU=class{resourceType=\"external-texture\";[q]=!0;schema;#e;constructor(e,t){this.schema=e,this.#e=t,Tt(this,t.key)}[ts](e){let t=e.makeUniqueIdentifier(Re(this),\"global\"),s=e.allocateLayoutEntry(this.#e.layout);return e.addDeclaration(`@group(${s}) @binding(${this.#e.idx}) var ${t}: ${e.resolve(this.schema).value};`,t),Ae(t,K6(),\"handle\")}get[$o](){let e=this.schema;return new Proxy({[q]:!0,get[Na](){return Ae(this,e,\"handle\",!1)},[ts]:t=>t.resolve(this),toString:()=>`textureExternal:${Re(this)??\"<unnamed>\"}.$`},Ud)}get $(){if(dm())return this[$o];throw new Error(\"Direct access to texture views values is possible only as part of a compute dispatch or draw call. Try .read() or .write() instead\")}toString(){return`textureExternal:${Re(this)??\"<unnamed>\"}`}},BU={channelType:a,vectorType:lt,sampleTypes:[\"depth\",\"unfilterable-float\"],texelSize:\"non-copyable\"},IU={channelType:a,vectorType:lt,sampleTypes:[\"depth\",\"unfilterable-float\"],texelSize:2},YU={channelType:a,vectorType:lt,sampleTypes:[\"depth\",\"unfilterable-float\"],texelSize:4},WU={channelType:Y,vectorType:es,sampleTypes:[\"uint\"],texelSize:1},Yb=new Map;function Yc(e){let t=Yb.get(e);return t===void 0&&(t=OU(e),Yb.set(e,t)),t}function OU(e){let t=qU(e),s=VU(e),r=e.includes(\"stencil\");return{channelType:t,vectorType:t===Y?es:t===oe?ps:lt,texelSize:XU(e),sampleTypes:HU(e),canRenderAttachment:NU(e),...s&&{depthAspect:s},...r&&{stencilAspect:WU}}}function VU(e){if(e===\"depth16unorm\")return IU;if(e===\"depth32float\"||e===\"depth32float-stencil8\")return YU;if(e===\"depth24plus\"||e===\"depth24plus-stencil8\")return BU}function NU(e){return!(e.startsWith(\"bc\")||e.startsWith(\"etc2\")||e.startsWith(\"eac\")||e.startsWith(\"astc\")||e===\"rgb9e5ufloat\")}function qU(e){return e===\"stencil8\"||e.includes(\"uint\")?Y:e.includes(\"sint\")?oe:a}function XU(e){let[,t,s]=e.match(/^(rgba|bgra|rg|r)(8|16|32)/)??[];return t&&s?t.length*Number(s)/8:e===\"stencil8\"?1:e===\"depth16unorm\"?2:e===\"depth32float\"?4:e===\"depth32float-stencil8\"?5:e===\"depth24plus\"||e===\"depth24plus-stencil8\"?\"non-copyable\":/^(bc[14]-|etc2-rgb8|eac-r11)/.test(e)?8:/^(bc|astc-|etc2-rgba|eac-rg)/.test(e)?16:4}function HU(e){return e===\"stencil8\"?[\"uint\"]:e.includes(\"uint\")?[\"uint\"]:e.includes(\"sint\")?[\"sint\"]:e.includes(\"depth\")?[\"depth\",\"unfilterable-float\"]:/^(r|rg|rgba)16(u|s)norm$/.test(e)?[\"unfilterable-float\"]:[\"float\",\"unfilterable-float\"]}var jU=new Set([\"r32float\",\"rg32float\",\"rgba32float\"]);function KU(e,t){return jU.has(t)&&!e.features.has(\"float32-filterable\")?[\"unfilterable-float\"]:Yc(t).sampleTypes}function Iw(e){let{videoWidth:t,videoHeight:s}=e;if(t&&s)return{width:t,height:s};let{naturalWidth:r,naturalHeight:o}=e;if(r&&o)return{width:r,height:o};let{codedWidth:n,codedHeight:i}=e;if(n&&i)return{width:n,height:i};let{width:d,height:l}=e;if(d&&l)return{width:d,height:l};throw new Error(\"Cannot determine dimensions of the provided image source.\")}var ZU=`\nstruct VertexOutput {\n @builtin(position) pos: vec4f,\n @location(0) uv: vec2f,\n}\n\n@vertex\nfn vs_main(@builtin(vertex_index) i: u32) -> VertexOutput {\n const pos = array(vec2f(-1, -1), vec2f(3, -1), vec2f(-1, 3));\n const uv = array(vec2f(0, 1), vec2f(2, 1), vec2f(0, -1));\n return VertexOutput(vec4f(pos[i], 0, 1), uv[i]);\n}`,QU=`\n@group(0) @binding(0) var src: texture_2d<f32>;\n@group(0) @binding(1) var samp: sampler;\n\n@fragment\nfn fs_main(@location(0) uv: vec2f) -> @location(0) vec4f {\n return textureSample(src, samp, uv);\n}`,JU=`\n@group(0) @binding(0) var src: texture_2d<f32>;\n@group(0) @binding(1) var samp: sampler;\n\n@fragment\nfn fs_main(@location(0) uv: vec2f) -> @location(0) vec4f {\n let r = textureGather(0, src, samp, uv);\n let g = textureGather(1, src, samp, uv);\n let b = textureGather(2, src, samp, uv);\n let a = textureGather(3, src, samp, uv);\n return vec4f(dot(r, vec4f(0.25)), dot(g, vec4f(0.25)), dot(b, vec4f(0.25)), dot(a, vec4f(0.25)));\n}`,nv=new WeakMap;function ez(e){let t=nv.get(e);return t||(t={vertexModule:e.createShaderModule({code:ZU}),filterableResources:new Map,layoutResources:new Map},nv.set(e,t)),t}function tz(e,t,s){let r=ez(e),o=r.filterableResources.get(t);o||(o={fragmentModule:e.createShaderModule({code:t?QU:JU}),sampler:e.createSampler(t?{magFilter:\"linear\",minFilter:\"linear\"}:{})},r.filterableResources.set(t,o));let n=`${t}:${s}`,i=r.layoutResources.get(n);if(!i){let d=e.createBindGroupLayout({entries:[{binding:0,visibility:GPUShaderStage.FRAGMENT,texture:{sampleType:s}},{binding:1,visibility:GPUShaderStage.FRAGMENT,sampler:{type:t?\"filtering\":\"non-filtering\"}}]});i={bindGroupLayout:d,pipelineLayout:e.createPipelineLayout({bindGroupLayouts:[d]})},r.layoutResources.set(n,i)}return{vertexModule:r.vertexModule,...o,...i}}function Yw(e){let{device:t,source:s,destination:r,format:o,filterable:n,sampleType:i}=e,d=tz(t,n,i),l=t.createRenderPipeline({layout:d.pipelineLayout,vertex:{module:d.vertexModule},fragment:{module:d.fragmentModule,targets:[{format:o}]},primitive:{topology:\"triangle-list\"}}),c=t.createBindGroup({layout:d.bindGroupLayout,entries:[{binding:0,resource:s},{binding:1,resource:d.sampler}]}),_=!e.encoder,p=e.encoder??t.createCommandEncoder(),f=p.beginRenderPass({colorAttachments:[{view:r,loadOp:\"clear\",storeOp:\"store\"}]});f.setPipeline(l),f.setBindGroup(0,c),f.draw(3),f.end(),_&&t.queue.submit([p.finish()])}function sz(e){nv.delete(e)}function Ww(e,t,s){let r=Yc(t),o=KU(e,t),n=o.includes(\"float\"),i=o.includes(\"unfilterable-float\");if(!n&&!i)throw new Error(`Cannot ${s} for format '${t}': only float formats are supported.`);if(!r.canRenderAttachment)throw new Error(`Cannot ${s} for format '${t}': format does not support render attachments.`);return{filterable:n,sampleType:n?\"float\":\"unfilterable-float\"}}function rz(e,t,s=0,r){if(t.dimension!==\"2d\")throw new Error(\"Mipmap generation only supports 2D textures.\");let{filterable:o,sampleType:n}=Ww(e,t.format,\"generate mipmaps\"),i=r??t.mipLevelCount-s;for(let d=0;d<t.depthOrArrayLayers;d++)for(let l=s;l<s+i-1;l++){let c=_=>({dimension:\"2d\",baseMipLevel:_,mipLevelCount:1,baseArrayLayer:d,arrayLayerCount:1});Yw({device:e,source:t.createView(c(l)),destination:t.createView(c(l+1)),format:t.format,filterable:o,sampleType:n})}}function oz(e,t,s,r=0){if(t.dimension!==\"2d\")throw new Error(\"Resampling only supports 2D textures.\");let{filterable:o}=Ww(e,t.format,\"resample\"),{width:n,height:i}=Iw(s),d=e.createTexture({size:[n,i],format:\"rgba8unorm\",usage:GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.COPY_DST|GPUTextureUsage.RENDER_ATTACHMENT});e.queue.copyExternalImageToTexture({source:s},{texture:d},[n,i]);let l=e.createTexture({size:[t.width,t.height],format:t.format,usage:GPUTextureUsage.RENDER_ATTACHMENT|GPUTextureUsage.COPY_SRC}),c=e.createCommandEncoder();Yw({device:e,source:d.createView(),destination:l.createView(),format:t.format,filterable:o,sampleType:\"float\",encoder:c}),c.copyTextureToTexture({texture:l},{texture:t,origin:{x:0,y:0,z:r}},{width:t.width,height:t.height,depthOrArrayLayers:1}),e.queue.submit([c.finish()]),d.destroy(),l.destroy()}function nz(e){return{dimension:e.dimension??\"2d\",sampleType:Yc(e.format).channelType,multisampled:(e.sampleCount??1)!==1}}function az(e,t,s){return new iz(e,t,s)}function xc(e){return e?.resourceType===\"texture\"&&!!e[q]}function zd(e){return e?.resourceType===\"texture-view\"&&!!e[q]}var iz=class{[q];[be];resourceType=\"texture\";usableAsSampled=!1;usableAsStorage=!1;usableAsRender=!1;#e;#t=!1;#s;constructor(e,t,s){this.#s=s===void 0,this[be]={type:\"texture\",device:t.device,props:e,flags:GPUTextureUsage.COPY_DST|GPUTextureUsage.COPY_SRC,flagsOverridden:!1,usages:[],raw:s,label:void 0},this.#e=Yc(e.format),this[q]={root:t,materialize:()=>{if(this.#t)throw new Error(\"This texture has been destroyed\");let r=this[be];if(!r.raw){let o=r.props;r.raw=(globalThis.__TYPEGPU_AUTONAME__??(n=>n))(r.device.createTexture({label:Re(this)??\"<unnamed>\",format:o.format,size:o.size,usage:r.flags,dimension:o.dimension??\"2d\",viewFormats:o.viewFormats??[],mipLevelCount:o.mipLevelCount??1,sampleCount:o.sampleCount??1}),\"raw\")}return r.raw}}}get props(){return this[be].props}$name(e){return Tt(this,e),this}$usage(...e){let t=this[be];if(t.flagsOverridden)throw new Error(\"Cannot call $usage() after $overrideFlags().\");let s=e.includes(\"storage\"),r=e.includes(\"sampled\"),o=e.includes(\"render\"),n=e.includes(\"transient\"),i=(r?GPUTextureUsage.TEXTURE_BINDING:0)|(s?GPUTextureUsage.STORAGE_BINDING:0),d=GPUTextureUsage.TRANSIENT_ATTACHMENT|GPUTextureUsage.RENDER_ATTACHMENT,l=t.flags|i|(o?GPUTextureUsage.RENDER_ATTACHMENT:0),c=n||!!(t.flags&GPUTextureUsage.TRANSIENT_ATTACHMENT),_=!!(l&(GPUTextureUsage.TEXTURE_BINDING|GPUTextureUsage.STORAGE_BINDING));if(c&&_)throw new Error(\"Transient texture usage cannot be combined with 'sampled' or 'storage'.\");t.flags=n?d:l,this.usableAsStorage||=s,this.usableAsSampled||=r,this.usableAsRender||=o||n;for(let p of e)t.usages.includes(p)||t.usages.push(p);return this}$overrideFlags(e){let t=this[be];return t.flags=e,t.flagsOverridden=!0,this.usableAsSampled=!0,this.usableAsStorage=!0,this.usableAsRender=!0,this}createView(e,t){return e===\"render\"?new lz(this,t):new dz(e??Q$(nz(this.props)),this,t)}#r(e=0){let t=2**e,[s,r,o]=[Math.max(1,Math.floor((this.props.size[0]??1)/t)),Math.max(1,Math.floor((this.props.size[1]??1)/t)),Math.max(1,Math.floor((this.props.size[2]??1)/t))],n=this.#e.texelSize;if(n===\"non-copyable\")throw new Error(`Cannot clear texture with format '${this.props.format}': this format does not support copy operations.`);this[be].device.queue.writeTexture({texture:this[q].materialize(),mipLevel:e},new Uint8Array(s*r*o*n),{bytesPerRow:n*s,rowsPerImage:r},[s,r,o])}clear(e=\"all\"){if(e===\"all\"){let t=this.props.mipLevelCount??1;for(let s=0;s<t;s++)this.#r(s)}else this.#r(e)}generateMipmaps(e=0,t){if(!this.usableAsRender)throw new Error(\"generateMipmaps called without specifying 'render' usage. Add it via the $usage('render') method.\");let s=t??(this.props.mipLevelCount??1)-e;if(s<=1){fs.warn(\"suspicious\",`generateMipmaps is a no-op: would generate ${s} mip levels (base: ${e}, total: ${this.props.mipLevelCount??1})`);return}if(e>=(this.props.mipLevelCount??1))throw new Error(`Base mip level ${e} is out of range. Texture has ${this.props.mipLevelCount??1} mip levels.`);rz(this[be].device,this[q].materialize(),e,s)}write(e,t=0){if(e instanceof ArrayBuffer||ArrayBuffer.isView(e)){this.#o(e,typeof t==\"number\"?t:0);return}if(!this.usableAsRender)throw new Error(\"texture.write(...) with image sources requires 'render' usage. Add it via the $usage('render') method.\");let s=typeof t==\"number\"?void 0:t,r=this.props.dimension??\"2d\";if(!Array.isArray(e)){this.#n(e,r===\"3d\"?0:void 0,s);return}let o=this.props.size[2]??1;e.length>o&&fs.warn(\"suspicious\",`Too many image sources provided. Expected ${o} layers, got ${e.length}. Extra sources will be ignored.`);for(let n=0;n<Math.min(e.length,o);n++){let i=e[n];i&&this.#n(i,n,s)}}#o(e,t){let s=Math.max(1,this.props.size[0]>>t),r=Math.max(1,(this.props.size[1]??1)>>t),o=Math.max(1,(this.props.size[2]??1)>>t),n=this.#e.texelSize;if(n===\"non-copyable\")throw new Error(`Cannot write to texture with format '${this.props.format}': this format does not support copy operations.`);let i=s*r*o*n,d=e.byteLength??e.byteLength;if(d!==i)throw new Error(`Buffer size mismatch. Expected ${i} bytes for mip level ${t}, got ${d} bytes.`);this[be].device.queue.writeTexture({texture:this[q].materialize(),mipLevel:t},\"buffer\"in e?e.buffer:e,{bytesPerRow:n*s,rowsPerImage:r},[s,r,o])}#n(e,t,s){let r=this.props.size[0],o=this.props.size[1]??1,{width:n,height:i}=Iw(e);if(n!==r||i!==o){if(s?.fit!==\"stretch\")throw new Error(`Texture write source size ${n}x${i} does not match target size ${r}x${o}. Pass fit: 'stretch' to resize explicitly.`);oz(this[be].device,this[q].materialize(),e,t);return}this[be].device.queue.copyExternalImageToTexture({source:e},{texture:this[q].materialize(),...t!==void 0&&{origin:{x:0,y:0,z:t}}},t!==void 0?[r,o,1]:this.props.size)}copyFrom(e){if(e.props.format!==this.props.format)throw new Error(`Texture format mismatch. Source texture has format ${e.props.format}, target texture has format ${this.props.format}`);if(e.props.size[0]!==this.props.size[0]||(e.props.size[1]??1)!==(this.props.size[1]??1)||(e.props.size[2]??1)!==(this.props.size[2]??1))throw new Error(`Texture size mismatch. Source texture has size ${e.props.size.join(\"x\")}, target texture has size ${this.props.size.join(\"x\")}`);let t=this[be].device.createCommandEncoder();t.copyTextureToTexture({texture:e[q].materialize()},{texture:this[q].materialize()},e.props.size),this[be].device.queue.submit([t.finish()])}toString(){return`${this.resourceType}:${Re(this)??\"<unnamed>\"}`}get destroyed(){return this.#t}destroy(){this.#t||(this.#t=!0,this.#s&&this[be].raw?.destroy())}},dz=class{[q];[be];resourceType=\"texture-view\";constructor(e,t,s){this[be]={type:\"texture-view\",texture:t,schema:e,descriptor:s,raw:void 0,label:void 0},this[q]={unwrap:()=>{let r=this[be];if(!r.raw){let o=r.schema,n=G_(o)?o.format:r.texture.props.format;r.raw=(globalThis.__TYPEGPU_AUTONAME__??(i=>i))(r.texture[q].materialize().createView({...r.descriptor,label:Re(this)??\"<unnamed>\",format:r.descriptor?.format??n,dimension:o.dimension}),\"raw\")}return r.raw},format:s?.format??(G_(e)?e.format:t.props.format),aspect:s?.aspect}}get schema(){return this[be].schema}$name(e){return Tt(this,e),this[be].raw&&(this[be].raw.label=e),this}get[$o](){let e=this.schema;return new Proxy({[q]:!0,get[Na](){return Ae(this,e,\"handle\",!1)},[ts]:t=>t.resolve(this),toString:()=>`${this.toString()}.$`},Ud)}get $(){if(dm())return this[$o];throw new Error(\"Direct access to texture view values is possible only as part of a compute dispatch or draw call. Try .read() or .write() instead\")}get size(){return this[be].texture.props.size}toString(){return`textureView:${Re(this)??\"<unnamed>\"}`}[ts](e){let t=e.makeUniqueIdentifier(Re(this),\"global\"),{group:s,binding:r}=e.allocateFixedEntry(G_(this.schema)?{storageTexture:this.schema}:{texture:this.schema,sampleType:this[be].descriptor?.sampleType??this.schema.bindingSampleType[0]},this);return e.gen.declareGlobalVar({group:s,binding:r,id:t,dataType:this.schema,scope:\"handle\",init:void 0})}},Wb=class{[q]={unwrap:void 0};resourceType=\"texture-view\";#e;schema;constructor(e,t){this.schema=e,this.#e=t,Tt(this,t.key)}toString(){return`textureView:${Re(this)??\"<unnamed>\"}`}[ts](e){let t=e.makeUniqueIdentifier(Re(this),\"global\"),s=e.allocateLayoutEntry(this.#e.layout);return e.addDeclaration(`@group(${s}) @binding(${this.#e.idx}) var ${t}: ${e.resolve(this.schema).value};`,t),Ae(t,this.schema,\"handle\")}get[$o](){let e=this.schema;return new Proxy({[q]:!0,get[Na](){return Ae(this,e,\"handle\",!1)},[ts]:t=>t.resolve(this),toString:()=>`${this.toString()}.$`},Ud)}get $(){if(dm())return this[$o];throw new Error(`Accessed view '${Re(this)??\"<unnamed>\"}' outside of codegen mode. Direct access to texture views values is possible only as part of a compute dispatch or draw call. Try .read() or .write() instead`)}$name(e){return Tt(this,e),this}},lz=class{[q];[be];resourceType=\"texture-view\";constructor(e,t={}){this[be]={type:\"texture-view\",texture:e,schema:\"render\",descriptor:t,raw:void 0,label:void 0},this[q]={unwrap:()=>e[q].materialize().createView({label:Re(this)??\"<unnamed>\",...this.descriptor}),format:t.format??e.props.format,aspect:t.aspect}}get descriptor(){return this[be].descriptor??{}}};function cz(e){return!!e?.usableAsSampled}var uz=class Ow extends Error{constructor(t){super(`Resource '${Re(t)??\"<unnamed>\"}' cannot be bound as 'sampled'. Use .$usage('sampled') to allow it.`),Object.setPrototypeOf(this,Ow.prototype)}},Ob=class av{[q];usage;dataType;#e;static#t=void(av.prototype.resourceType=\"laid-out-buffer\",Qn(wa(av.prototype,{asString(){return`${this.usage}:${Re(this)??\"<unnamed>\"}`},resolve(t){let s=t.makeUniqueIdentifier(Re(this),\"global\"),r=t.allocateLayoutEntry(this.#e.layout);return t.gen.declareGlobalVar({group:r,binding:this.#e.idx,scope:this.usage,id:s,dataType:this.dataType,init:void 0})}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.dataType,this.usage,!1)}},normalMode:{get(){throw new Error(\"Direct access to buffer values is possible only as part of a compute dispatch or draw call. Try .read() or .write() instead\")}}}));constructor(t,s,r){this[q]={dataType:s},this.usage=t,this.dataType=s,this.#e=r,Tt(this,r.key)}};function Vw(e){return new pz({...e})}function Tm(e){return!!e&&e.resourceType===\"bind-group-layout\"}function Ka(e){return!!e&&e.resourceType===\"bind-group\"}var _z=class Nw extends Error{constructor(t,s){super(`Bind group '${t??\"<unnamed>\"}' is missing a required binding '${s}'`),Object.setPrototypeOf(this,Nw.prototype)}},Vb=[\"compute\",\"fragment\"],zl=[\"compute\",\"vertex\",\"fragment\"],pz=class{[q];[be];resourceType=\"bind-group-layout\";$={};entries;get[$o](){return this.$}constructor(e){this.entries=e,this[q]=[];let t={};this[be]={type:\"bind-group-layout\",entries:t,index:void 0,label:void 0};let s=0;for(let[r,o]of Object.entries(e)){if(o===null){t[r]=null,s++;continue}let n={layout:this,key:r,idx:s},i;if(t[r]=o,\"uniform\"in o&&(i=new Ob(\"uniform\",o.uniform,n)),\"storage\"in o){let d=\"type\"in o.storage?o.storage:o.storage(0);i=new Ob(o.access??\"readonly\",d,n),t[r]={...o,storage:d}}\"texture\"in o&&(i=new Wb(o.texture,n)),\"storageTexture\"in o&&(i=new Wb(o.storageTexture,n)),\"externalTexture\"in o&&(i=new FU(o.externalTexture,n)),\"sampler\"in o&&(i=new LU(o.sampler===\"comparison\"?Q6():Nh(),n)),Ws(i!==void 0,\"Internal error, expected item to be defined\"),Object.defineProperty(this.$,r,{get:()=>i.$}),this[q].push(i),s++}}toString(){return`bindGroupLayout:${Re(this)??\"<unnamed>\"}`}get index(){return this[be].index}$name(e){return Tt(this,e),this}$idx(e){return this[be].index=e,this}unwrap(e){return e.device.createBindGroupLayout({label:Re(this)??\"<unnamed>\",entries:Object.values(this.entries).map((t,s)=>{if(t===null)return null;let r=t.visibility,o={binding:s,visibility:0};if(\"uniform\"in t)r=r??zl,o.buffer={type:\"uniform\"};else if(\"storage\"in t)r=r??(t.access===\"mutable\"?Vb:zl),o.buffer={type:t.access===\"mutable\"?\"storage\":\"read-only-storage\"};else if(\"sampler\"in t)r=r??zl,o.sampler={type:t.sampler};else if(\"texture\"in t){r=r??zl;let{multisampled:n,dimension:i,bindingSampleType:d}=t.texture;o.texture={sampleType:t.sampleType??d[0],viewDimension:i,multisampled:n}}else if(\"storageTexture\"in t){r=r??Vb;let{dimension:n,access:i,format:d}=t.storageTexture;o.storageTexture={access:i,format:d,viewDimension:n}}else\"externalTexture\"in t&&(r=r??zl,o.externalTexture={});return r?.includes(\"compute\")&&(o.visibility|=GPUShaderStage.COMPUTE),r?.includes(\"vertex\")&&(o.visibility|=GPUShaderStage.VERTEX),r?.includes(\"fragment\")&&(o.visibility|=GPUShaderStage.FRAGMENT),o}).filter(t=>t!==null)})}},qw=class{[q];[be];resourceType=\"bind-group\";#e;constructor(e,t,s,r){if(this.#e=s,this[be]={type:\"bind-group\",device:e?.device,layout:t,raw:r,label:void 0},this[q]={materialize:()=>{let o=this[be];return o.raw||(Ws(e,\"Cannot unwrap a bind group created outside of a root.\"),o.raw=e.unwrap(this)),o.raw}},!r){for(let o of Object.keys(t.entries))if(t.entries[o]!==null&&!(o in s))throw new _z(Re(t),o)}}get layout(){return this[be].layout}get entries(){return this.#e}unwrap(e){let t=this[be].raw;return t||e.device.createBindGroup({label:Re(this.layout)??\"<unnamed>\",layout:e.unwrap(this.layout),entries:Object.entries(this.layout.entries).map(([s,r],o)=>{if(r===null)return null;let n=this.entries[s];if(n===void 0)throw new Error(`'${s}' is a resource required to populate bind group layout '${Re(this.layout)??\"<unnamed>\"}'.`);if(\"uniform\"in r){let i;if(fc(n)){if(!f6(n))throw new Uk(n);i={buffer:e.unwrap(n)}}else EU(n)?i={buffer:e.unwrap(n)}:i={buffer:n};return{binding:o,resource:i}}if(\"storage\"in r){let i;if(fc(n)){if(!Z_(n))throw new Db(n);i={buffer:e.unwrap(n)}}else PU(n)||MU(n)?(Ws(r.access===\"mutable\"==(n.resourceType===\"mutable\"),\"Invalid buffer access mode.\"),i={buffer:e.unwrap(n)}):i={buffer:n};return{binding:o,resource:i}}if(\"texture\"in r){let i;if(xc(n)){if(!cz(n))throw new uz(n);i=e.unwrap(n.createView(r.texture))}else zd(n)?i=e.unwrap(n):i=n;return{binding:o,resource:i}}if(\"storageTexture\"in r){let i;if(xc(n)){if(!Z_(n))throw new Db(n);i=e.unwrap(n.createView(r.storageTexture))}else zd(n)?i=e.unwrap(n):i=n;return{binding:o,resource:i}}if(\"sampler\"in r)return ay(n)||ny(n)?{binding:o,resource:e.unwrap(n)}:{binding:o,resource:n};if(\"externalTexture\"in r)return{binding:o,resource:n};throw new Error(`Malformed bind group entry: ${Oo(n)}`)}).filter(s=>s!==null)})}};function Wc(e){return new mz(e)}var mz=class{[q]=!0;[be];resourceType=\"slot\";constructor(e=void 0){this[be]={type:\"slot\",defaultValue:e,label:void 0}}get defaultValue(){return this[be].defaultValue}$name(e){return Tt(this,e),this}areEqual(e,t){return Object.is(e,t)}toString(){return`slot:${Re(this)??\"<unnamed>\"}`}get[$o](){let e=Li();if(!e)throw new Error(\"Cannot access tgpu.slot's value outside of resolution.\");return sp(e.unwrap(this))}get $(){return this[$o]}},nl=Wc(null);function Sm(e,t){return new Hw(\"private\",e,t)}function Xw(e){return new Hw(\"workgroup\",e)}var Hw=class jw{[be];static#e=(()=>{let t=jw.prototype;t.resourceType=\"var\",t[q]={},Qn(wa(t,{asString(){return`var:${Re(this)??\"<unnamed>\"}`},resolve(s){let r=s.makeUniqueIdentifier(Re(this),\"global\"),o=this[be].initialValue?Ae(this[be].initialValue,this[be].dataType,\"constant\"):void 0;return s.gen.declareGlobalVar({scope:this[be].scope,id:r,dataType:this[be].dataType,init:o})}}),{codegenMode:{getBaseSnippet(s){return Ae(s,this[be].dataType,this[be].scope,!1)}},simulateMode:{get(s){return s.vars[this[be].scope].has(this)||s.vars[this[be].scope].set(this,this[be].initialValue),s.vars[this[be].scope].get(this)},set(s,r){s.vars[this[be].scope].set(this,r)}},normalMode:{get(){throw new Wx(Q_()?`Cannot access variable '${Re(this)??\"<unnamed>\"}'. TypeGPU functions that depends on GPU resources need to be part of a compute dispatch, draw call or simulation`:\"TypeGPU variables are inaccessible during normal JS execution. If you wanted to simulate GPU behavior, try `tgpu.simulate()`\")},set(s){throw new Wx(Q_()?`Cannot access variable ${Re(this)??\"<unnamed>\"}. TypeGPU functions that depends on GPU resources need to be part of a compute dispatch, draw call or simulation`:\"TypeGPU variables are inaccessible during normal JS execution. If you wanted to simulate GPU behavior, try `tgpu.simulate()`\")}}})})();constructor(t,s,r){this[be]={type:\"var\",scope:t,dataType:s,initialValue:r,label:void 0}}$name(t){return Tt(this,t),this}},Kw=Sm(Y,0).$name(\"dataBlockIndex\"),Zw=Sm(Y,0).$name(\"dataByteIndex\"),Qw=Wc().$name(\"dataBuffer\"),fz=gs([],Y)`() {\n let i = dataByteIndex;\n dataByteIndex = dataByteIndex + 1u;\n return i;\n}`.$uses({dataByteIndex:Zw}).$name(\"nextByteIndex\"),Xe=\"dataBuffer[dataBlockIndex].serializedData[nextByteIndex()]\",Jw={f32:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([a])`(n) {\n ${Xe} = bitcast<u32>(n);\n}`,\"f32\"),f16:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Zs])`(n) {\n ${Xe} = pack2x16float(vec2f(f32(n), 0.0));\n}`,\"f16\"),i32:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([oe])`(n) {\n ${Xe} = bitcast<u32>(n);\n}`,\"i32\"),u32:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Y])`(n) {\n ${Xe} = n;\n}`,\"u32\"),bool:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Ft])`(b) {\n ${Xe} = u32(b);\n}`,\"bool\"),vec2f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([$t])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n}`,\"vec2f\"),vec3f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([cs])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n ${Xe} = bitcast<u32>(v.z);\n}`,\"vec3f\"),vec4f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([lt])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n ${Xe} = bitcast<u32>(v.z);\n ${Xe} = bitcast<u32>(v.w);\n}`,\"vec4f\"),vec2h:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Sr])`(v) {\n ${Xe} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n}`,\"vec2h\"),vec3h:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([po])`(v) {\n ${Xe} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n ${Xe} = pack2x16float(vec2f(f32(v.z), 0.0));\n}`,\"vec3h\"),vec4h:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Ar])`(v) {\n ${Xe} = pack2x16float(vec2f(f32(v.x), f32(v.y)));\n ${Xe} = pack2x16float(vec2f(f32(v.z), f32(v.w)));\n}`,\"vec4h\"),vec2i:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([xs])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n}`,\"vec2i\"),vec3i:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Os])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n ${Xe} = bitcast<u32>(v.z);\n}`,\"vec3i\"),vec4i:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([ps])`(v) {\n ${Xe} = bitcast<u32>(v.x);\n ${Xe} = bitcast<u32>(v.y);\n ${Xe} = bitcast<u32>(v.z);\n ${Xe} = bitcast<u32>(v.w);\n}`,\"vec4i\"),vec2u:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([ns])`(v) {\n ${Xe} = v.x;\n ${Xe} = v.y;\n}`,\"vec2u\"),vec3u:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Ot])`(v) {\n ${Xe} = v.x;\n ${Xe} = v.y;\n ${Xe} = v.z;\n}`,\"vec3u\"),vec4u:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([es])`(v) {\n ${Xe} = v.x;\n ${Xe} = v.y;\n ${Xe} = v.z;\n ${Xe} = v.w;\n}`,\"vec4u\"),\"vec2<bool>\":gs([So])`(v) {\n ${Xe} = u32(v.x);\n ${Xe} = u32(v.y);\n}`,\"vec3<bool>\":gs([Ao])`(v) {\n ${Xe} = u32(v.x);\n ${Xe} = u32(v.y);\n ${Xe} = u32(v.z);\n}`,\"vec4<bool>\":gs([Eo])`(v) {\n ${Xe} = u32(v.x);\n ${Xe} = u32(v.y);\n ${Xe} = u32(v.z);\n ${Xe} = u32(v.w);\n}`,mat2x2f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([ga])`(m) {\n ${Xe} = bitcast<u32>(m[0][0]);\n ${Xe} = bitcast<u32>(m[0][1]);\n ${Xe} = bitcast<u32>(m[1][0]);\n ${Xe} = bitcast<u32>(m[1][1]);\n}`,\"mat2x2f\"),mat3x3f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([xa])`(m) {\n ${Xe} = bitcast<u32>(m[0][0]);\n ${Xe} = bitcast<u32>(m[0][1]);\n ${Xe} = bitcast<u32>(m[0][2]);\n ${Xe} = 0u;\n ${Xe} = bitcast<u32>(m[1][0]);\n ${Xe} = bitcast<u32>(m[1][1]);\n ${Xe} = bitcast<u32>(m[1][2]);\n ${Xe} = 0u;\n ${Xe} = bitcast<u32>(m[2][0]);\n ${Xe} = bitcast<u32>(m[2][1]);\n ${Xe} = bitcast<u32>(m[2][2]);\n ${Xe} = 0u;\n}`,\"mat3x3f\"),mat4x4f:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(gs([Mr])`(m) {\n ${Xe} = bitcast<u32>(m[0][0]);\n ${Xe} = bitcast<u32>(m[0][1]);\n ${Xe} = bitcast<u32>(m[0][2]);\n ${Xe} = bitcast<u32>(m[0][3]);\n ${Xe} = bitcast<u32>(m[1][0]);\n ${Xe} = bitcast<u32>(m[1][1]);\n ${Xe} = bitcast<u32>(m[1][2]);\n ${Xe} = bitcast<u32>(m[1][3]);\n ${Xe} = bitcast<u32>(m[2][0]);\n ${Xe} = bitcast<u32>(m[2][1]);\n ${Xe} = bitcast<u32>(m[2][2]);\n ${Xe} = bitcast<u32>(m[2][3]);\n ${Xe} = bitcast<u32>(m[3][0]);\n ${Xe} = bitcast<u32>(m[3][1]);\n ${Xe} = bitcast<u32>(m[3][2]);\n ${Xe} = bitcast<u32>(m[3][3]);\n}`,\"mat4x4f\")};for(let[e,t]of Object.entries(Jw))t.$name(`serialize${e[0].toLocaleUpperCase()}${e.slice(1)}`).$uses({dataBlockIndex:Kw,nextByteIndex:fz,dataBuffer:Qw});function e7(e){return`(${e.map((t,s)=>`_arg_${s}`).join(\", \")})`}function t7(e,t){let s=Jw[e.type];if(s)return s.with(Qw,t);if(Es(e)){let r=Object.keys(e.propTypes),o=s7(Object.values(e.propTypes),t);return gs([e])`(arg) {\\n propsSerializer(${r.map(n=>`arg.${n}`).join(\", \")});\\n}`.$uses({propsSerializer:o}).$name(`${Re(e)??\"struct\"}Serializer`)}if(cr(e)){let r=e.elementType,o=e.elementCount,n=t7(r,t);return gs([e])`(arg) {\\n${Array.from({length:o},(i,d)=>` elementSerializer(arg[${d}]);`).join(`\n`)}\\n}`.$uses({elementSerializer:n}).$name(\"arraySerializer\")}throw new Error(`Cannot serialize data of type ${e.type}`)}function s7(e,t){let s={};return(globalThis.__TYPEGPU_AUTONAME__??(r=>r))(gs(e),\"shell\")`${e7(e)} {\\n${e.map((r,o)=>(s[`serializer${o}`]=t7(r,t),` serializer${o}(_arg_${o});`)).join(`\n`)}\\n}`.$uses(s).$name(\"compoundSerializer\")}function vz(e,t,s,r,o){let n=t.map(kt).reduce((l,c)=>l+c,0);if(n>o.logSizeLimit)throw new Error(`Logged data needs to fit in ${o.logSizeLimit} bytes (one of the logs requires ${n} bytes). Consider increasing the limit by passing appropriate options to tgpu.init().`);let i=s7(t,s).$name(`log${e}serializer`),d=e7(t);return gs(t)`${d} {\n dataBlockIndex = atomicAdd(&indexBuffer, 1);\n if (dataBlockIndex >= ${o.logCountLimit}) {\n return;\n }\n dataBuffer[dataBlockIndex].id = ${e};\n dataByteIndex = 0;\n\n compoundSerializer${d};\n}`.$uses({indexBuffer:r,dataBuffer:s,dataBlockIndex:Kw,dataByteIndex:Zw,compoundSerializer:i}).$name(`log${e}`)}var hz={logCountLimit:64,logSizeLimit:252,messagePrefix:\" GPU \"},r7=Ae(\"/* console.log() */\",Ns,\"runtime\"),yz=class{get logResources(){}generateLog(){return fs.warn(\"fallback\",\"'console.log' is only supported when resolving pipelines.\"),r7}},gz=class{#e;#t;#s=1;#r;#o;constructor(e){this.#e={...hz,...e[q].logOptions},this.#t=new Map;let t=Ct({id:Y,serializedData:zt(Y,Math.ceil(this.#e.logSizeLimit/4))}).$name(\"SerializedLogData\");this.#o=e.createMutable(zt(t,this.#e.logCountLimit)).$name(\"dataBuffer\"),this.#r=e.createMutable(_C(Y)).$name(\"indexBuffer\")}generateLog(e,t,s){if(nl.$===\"vertex\")return fs.warn(\"suspicious\",\"'console' operations are not supported in vertex shaders.\"),r7;let r=this.#s++,o=s.map(l=>{if(l.dataType===os)return l;let c=La(e,[l],[wi(l.dataType)])?.[0];return Ws(c,`Internal error. Expected type ${l.dataType} to be convertible to ${wi(l.dataType)}`),c}).map(d$),n=o.filter(l=>l.dataType!==os),i=vz(r,n.map(l=>l.dataType),this.#o,this.#r,this.#e),d=Ae(fe`${e.resolve(i).value}(${n})`,Ns,\"runtime\");return this.#t.set(r,{op:t,argTypes:o.map(l=>l?.dataType===os?l?.value:l?.dataType)}),d}get logResources(){return this.#s===1?void 0:{dataBuffer:this.#o,indexBuffer:this.#r,options:this.#e,logIdToMeta:this.#t}}};function xz(e){return e?.resourceType===\"shellless-impl\"}function bz(e,t){let s=Hi(t,\"normal\");return{[q]:!0,[Pr]:s,resourceType:\"shellless-impl\",argTypes:e,[ts](r){return s.resolve(r,e,void 0)},toString(){return`fn*:${Re(s)??\"<unnamed>\"}(${e.map(r=>r.toString()).join(\", \")})`}}}var wz=new RegExp(`[${[...yw].join(\"\")}]+`,\"ug\"),Nb=/[.\\p{XID_Continue}]/u;function qb(e){let t=Sz(e).split(wz).filter(r=>r!==\"\"),s=\"\";for(let r=0;r<t.length;r++){let o=t[r],n=t[r+1];Ws(o),s+=o,Tz(o,n)&&(s+=\" \")}return s}function Tz(e,t){if(t===void 0)return!1;let s=e.at(-1),r=t.at(0);return Ws(s?.length===1&&r?.length===1,\"Expected tokens during minification to not be empty.\"),!!(Nb.test(s)&&Nb.test(r)||[\"//\",\"/*\",\"*/\"].includes(`${s}${r}`))}function Sz(e){let t=\"\",s=0,r=0;for(;r<e.length;){if(e.startsWith(\"//\",r)){for(t+=`${e.slice(s,r)} `,r+=2;r<e.length&&!Jh.has(e.charAt(r));)r+=1;s=r;continue}if(e.startsWith(\"/*\",r)){t+=`${e.slice(s,r)} `;let o=1;for(r+=2;r<e.length&&o>0;)e.startsWith(\"/*\",r)?(o+=1,r+=2):e.startsWith(\"*/\",r)?(o-=1,r+=2):r+=1;if(o>0)throw new SyntaxError(\"Block comment opening without corresponding closing found during minification.\");s=r;continue}if(e.startsWith(\"*/\",r))throw new SyntaxError(\"Block comment closing without corresponding opening found during minification.\");r+=1}return t+e.slice(s)}var iv=\"#CATCHALL#\",Az=class{_stack=[];_itemDepth=0;get itemDepth(){return this._itemDepth}get topItem(){let e=this._stack[this._stack.length-1];if(!e||e.type!==\"item\")throw new Error(\"Internal error, expected item layer to be on top.\");return e}get topFunctionScope(){return this._stack.findLast(e=>e.type===\"functionScope\")}get topBlockScope(){return this._stack.findLast(e=>e.type===\"blockScope\")}get blockDepth(){let e=0;for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"functionScope\")break;s?.type===\"blockScope\"&&e++}return e}pushItem(){this._itemDepth++,this._stack.push({type:\"item\",usedSlots:new Set})}pushSlotBindings(e){this._stack.push({type:\"slotBinding\",bindingMap:new WeakMap(e)})}pushFunctionScope(e,t,s,r){let o={type:\"functionScope\",functionType:e,argAccess:t,returnType:s,externalMap:r,reportedReturnTypes:new Set,placeholderForVariable:new Map,modifiedVariables:new Set};return this._stack.push(o),o}pushBlockScope(){this._stack.push({type:\"blockScope\",takenLocalIdentifiers:new Set,declarations:new Map,externals:new Map})}pop(e){let t=this._stack[this._stack.length-1];if(!t||e&&t.type!==e)throw new Error(`Internal error, expected a ${e} layer to be on top.`);let s=this._stack.pop();return e===\"item\"&&this._itemDepth--,s}readSlot(e){for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"item\")s.usedSlots.add(e);else if(s?.type===\"slotBinding\"){let r=s.bindingMap.get(e);if(r!==void 0)return r}else if(!(s?.type===\"functionScope\"||s?.type===\"blockScope\"))throw new Error(\"Unknown layer type.\")}return e.defaultValue}getSnippetById(e){for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"functionScope\"){let r=s.argAccess[e];if(r)return r();if(Object.hasOwn(s.externalMap,e)){let o=s.externalMap[e];return $d(o)&&Re(o)===void 0&&Tt(o,e.replaceAll(\".\",\"_\")),To(o)}return}if(s?.type===\"blockScope\"){let r=s.declarations.get(e)??s.externals.get(e);if(r!==void 0)return r}}}isIdentifierTakenLocally(e){for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"functionScope\")return!1;if(s?.type===\"blockScope\"&&s.takenLocalIdentifiers.has(e))return!0}return!1}isIdentifierTakenInCallStack(e){for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"blockScope\"&&s.takenLocalIdentifiers.has(e))return!0}return!1}defineBlockVariable(e,t){if(t.dataType===os)throw Error(`Tried to define variable '${e}' of unknown type`);for(let s=this._stack.length-1;s>=0;--s){let r=this._stack[s];if(r?.type===\"blockScope\"){r.declarations.set(e,t);return}}throw new Error(\"No block scope found to define a variable in.\")}setBlockExternals(e){for(let t=this._stack.length-1;t>=0;--t){let s=this._stack[t];if(s?.type===\"blockScope\"){Object.entries(e).forEach(([r,o])=>{s.externals.set(r,o)});return}}throw new Error(\"No block scope found to set externals in.\")}clearBlockExternals(){for(let e=this._stack.length-1;e>=0;--e){let t=this._stack[e];if(t?.type===\"blockScope\"){t.externals.clear();return}}throw new Error(\"No block scope found to clear externals in.\")}},ic=[\"\",\" \",\" \",\" \",\" \",\" \",\" \",\" \",\" \"],q1=ic.length-1,Ez=class{identLevel=0;get pre(){return ic[this.identLevel]??ic[q1].repeat(this.identLevel/q1)+ic[this.identLevel%q1]}indent(){let e=this.pre;return this.identLevel++,e}dedent(){return this.identLevel--,this.pre}withResetLevel(e){let t=this.identLevel;this.identLevel=0;try{return e()}finally{this.identLevel=t}}};function pd(e,t,s=\"argument\"){let r=!1;return{name:e,access:()=>(r=!0,Ae(e,t,s,!1)),decoratedType:t,get used(){return r}}}function Xb(e,t){return()=>{let s=e();if(s)return Rd(s,t)}}var o7=class{#e;_indentController=new Ez;_itemStateStack=new Az;#t=[];_declarations=[];_varyingLocations;#s=new WeakSet;#r;gen;get varyingLocations(){return this._varyingLocations}[q]={itemStateStack:this._itemStateStack};bindGroupLayoutsToPlaceholderMap=new Map;_nextFreeLayoutPlaceholderIdx=0;fixedBindings=[];enableExtensions;expectedType;#o=0;constructor(e){this.enableExtensions=e.enableExtensions,this.#r=e.root?new gz(e.root):new yz,this.#e=e.namespace[q],this.gen=e.shaderGenerator??new fU,this.gen.initGenerator(this)}isIdentifierBanned(e){return Oh.has(e)}isIdentifierTaken(e,t){return this.#e.takenGlobalIdentifiers.has(e)||(t===\"block\"?this._itemStateStack.isIdentifierTakenLocally(e):this._itemStateStack.isIdentifierTakenInCallStack(e))}makeUniqueIdentifier(e=\"item\",t){if(t===\"block\"&&_m(e).success&&!this.isIdentifierTaken(e,t))return this.reserveIdentifier(e,\"block\"),e;let s=I$(e),r=0,o=this.#e.strategy===\"random\",n=o?`${s}_${this.#o++}`:s;for(;this.isIdentifierTaken(n,t);)n=o?`${s}_${this.#o++}`:`${s}_${++r}`;return this.reserveIdentifier(n,t),n}reserveIdentifier(e,t){if(t===\"block\"){let s=this._itemStateStack.topBlockScope;if(s){s.takenLocalIdentifiers.add(e);return}}this.#e.takenGlobalIdentifiers.add(e)}get pre(){return this._indentController.pre}get topFunctionScope(){return this._itemStateStack.topFunctionScope}get topFunctionReturnType(){let e=this._itemStateStack.topFunctionScope;return Ws(e,\"Internal error, expected function scope to be present.\"),e.returnType}get shelllessRepo(){return this.#e.shelllessRepo}get blockDepth(){return this._itemStateStack.blockDepth}indent(){return this._indentController.indent()}dedent(){return this._indentController.dedent()}getDedented(e){return e.replaceAll(`\n${ic[1]}`,`\n`)}withResetIndentLevel(e){return this._indentController.withResetLevel(e)}getById(e){let t=this._itemStateStack.getSnippetById(e);return t===void 0?null:t}defineVariable(e,t){this._itemStateStack.defineBlockVariable(e,t)}reportReturnType(e){let t=this._itemStateStack.topFunctionScope;Ws(t,\"Internal error, expected function scope to be present.\"),t.reportedReturnTypes.add(e)}pushBlockScope(){this._itemStateStack.pushBlockScope()}popBlockScope(){this._itemStateStack.pop(\"blockScope\")}setBlockExternals(e){this._itemStateStack.setBlockExternals(e)}clearBlockExternals(){this._itemStateStack.clearBlockExternals()}generateLog(e,t){return this.#r.generateLog(this,e,t)}get logResources(){return this.#r.logResources}resolveFunction(e){try{let t=this._itemStateStack.pushFunctionScope(e.functionType,{},e.returnType,e.externalMap);this._itemStateStack.pushBlockScope();let s=[];if(e.entryInput){let{dataSchema:n,positionalArgs:i}=e.entryInput,d=e.params[0],l=n?pd(this.makeUniqueIdentifier(\"_arg_0\",\"block\"),n):void 0;if(l&&s.push(l),d?.type===Jl.destructuredObject)for(let{name:c,alias:_}of d.props){let p=i.find(f=>f.schemaKey===c);if(p){let f=pd(this.makeUniqueIdentifier(_,\"block\"),p.type);s.push(f),t.argAccess[_]=f.access}else l&&(t.argAccess[_]=Xb(l.access,c))}else if(d?.type===Jl.identifier){let c=[];for(let p of i){let f=pd(this.makeUniqueIdentifier(p.schemaKey,\"block\"),p.type);s.push(f),c.push({schemaKey:p.schemaKey,arg:f.access})}let _=new fw(l?.access,c);t.argAccess[d.name]=()=>Ae(\"N/A\",_,\"argument\")}else for(let c of i){let _=this.makeUniqueIdentifier(`_arg_${c.schemaKey}`,\"block\"),p=pd(_,c.type);s.push(p),t.argAccess[_]=p.access}}else for(let[n,i]of e.argTypes.entries()){let d=e.params[n],l=Hr(i)?i.addressSpace===\"storage\"?i.access===\"read\"?\"readonly\":\"mutable\":i.addressSpace:\"argument\";switch(d?.type){case Jl.identifier:{let c=pd(this.makeUniqueIdentifier(d.name,\"block\"),i,l);s.push(c),t.argAccess[d.name]=c.access;break}case Jl.destructuredObject:{let c=pd(this.makeUniqueIdentifier(`_arg_${n}`,\"block\"),i,l);s.push(c);for(let{name:_,alias:p}of d.props)t.argAccess[p]=Xb(c.access,_);break}case void 0:i instanceof Sn||s.push({name:this.makeUniqueIdentifier(`_arg_${n}`,\"block\"),access:()=>{throw new Error(\"Unreachable: Accessing an argument that wasn't named in the function signature\")},decoratedType:i,used:!1})}}let r,o=this.gen.functionDefinition({functionType:e.functionType,name:e.name,workgroupSize:e.workgroupSize,args:s,body:e.body,determineReturnType:()=>{if(r)return r;if(r=e.returnType,r instanceof Sn&&(Es(t.reportedReturnTypes.values().next().value)?r=r.completeStruct:r=void 0),!r){let n=[...t.reportedReturnTypes];if(n.length===0)r=Ns;else{let i=xh(n);i&&!i.hasImplicitConversions&&(r=i.targetType)}if(!r)throw new Error(`Expected function to have a single return type, got [${n.join(\", \")}]. Cast explicitly to the desired type.`);r=Wo(r),(e.functionType===\"vertex\"||e.functionType===\"fragment\")&&(r=Fc(r))}return r}});if(!r)throw new Error(\"Failed to determine return type\");return{code:o,returnType:r}}finally{this._itemStateStack.pop(\"blockScope\"),this._itemStateStack.pop(\"functionScope\")}}addDeclaration(e,t){this._declarations.push({name:t,code:e})}get declarations(){return this._declarations}allocateLayoutEntry(e){let t=this.bindGroupLayoutsToPlaceholderMap,s=t.get(e);return s||(s=`#BIND_GROUP_LAYOUT_${this._nextFreeLayoutPlaceholderIdx++}#`,t.set(e,s)),s}allocateFixedEntry(e,t){let s=this.fixedBindings.length;return this.fixedBindings.push({layoutEntry:e,resource:t}),{group:iv,binding:s}}readSlot(e){let t=this._itemStateStack.readSlot(e);if(t===void 0)throw new Rk(e);return t}withSlots(e,t){if(e.length===0)return t();this._itemStateStack.pushSlotBindings(e);try{return t()}finally{this._itemStateStack.pop(\"slotBinding\")}}withVaryingLocations(e,t){this._varyingLocations=e;try{return t()}finally{this._varyingLocations=void 0}}withRenamed(e,t,s){if(!t)return s();let r=Re(e);try{return Tt(e,t),s()}finally{r&&Tt(e,r)}}unwrap(e){if(U_(e))return this.withRenamed(e[co].inner,Re(e),()=>this.withSlots(e[co].pairs,()=>this.unwrap(e[co].inner)));let t=e;for(;;)if(Bf(t))t=this.readSlot(t);else if(If(t))t=this._getOrCompute(t);else break;return t}_getOrCompute(e){let t=this.#e.memoizedLazy.get(e)??[];this._itemStateStack.pushItem();try{for(let o of t)if([...o.slotToValueMap.entries()].every(([n,i])=>n.areEqual(this._itemStateStack.readSlot(n),i)))return o.result;this.pushMode(new tl);let s;try{s=e[q].compute()}finally{this.popMode(\"normal\")}let r=new Map;for(let o of this._itemStateStack.topItem.usedSlots)r.set(o,this._itemStateStack.readSlot(o));return t.push({slotToValueMap:r,result:s}),this.#e.memoizedLazy.set(e,t),s}catch(s){throw s instanceof gd?s.appendToTrace(e):new gd(s,[e])}finally{this._itemStateStack.pop(\"item\")}}_getOrInstantiate(e){let t=this.#e.memoizedResolves.get(e)??[];this._itemStateStack.pushItem();try{for(let o of t)if([...o.slotToValueMap.entries()].every(([n,i])=>n.areEqual(this._itemStateStack.readSlot(n),i)))return o.result;let s;if($c(e))s=Ae(this.gen.emitTypeAnnotation(e),Ns,\"runtime\");else if(If(e)||Bf(e))s=this.resolve(this.unwrap(e));else if(m6(e))s=e[ts](this);else if(Cd(e)){let o=this.#e.shelllessRepo.get(e,void 0);if(!o)throw new Error(`Couldn't resolve ${e.name}. Make sure it's a function that accepts no arguments, or call it from another TypeGPU function.`);return this.withResetIndentLevel(()=>this.resolve(o))}else throw new TypeError(`Unresolvable internal value: ${Oo(e)}`);let r=new Map;for(let o of this._itemStateStack.topItem.usedSlots)r.set(o,this._itemStateStack.readSlot(o));return t.push({slotToValueMap:r,result:s}),this.#e.memoizedResolves.set(e,t),s}catch(s){throw s instanceof gd?s.appendToTrace(e):new gd(s,[e])}finally{this._itemStateStack.pop(\"item\")}}resolve(e,t){if(typeof e==\"string\"){if(!t||t===os)throw new Error(`Strings cannot be injected into WGSL directly (tried to inject '${e}'). Look for TypeGPU APIs that cover your use-case, or resort to using tgpu['~unstable'].rawCodeSnippet for raw code injection.`);return Ae(e,t,\"runtime\")}if((qf(e)||xz(e))&&!U_(e)){if(this.#s.has(e)&&!this.#e.memoizedResolves.has(e))throw new Error(`Recursive function ${e} detected. Recursion is not allowed on the GPU.`);this.#s.add(e)}if(U_(e))return this.withRenamed(e[co].inner,Re(e),()=>this.withSlots(e[co].pairs,()=>this.resolve(e[co].inner,t)));if(Rt(e)||Cd(e)){if(this._itemStateStack.itemDepth===0)try{this.pushMode(new Ok);let s=v6(this,()=>this._getOrInstantiate(e));return Ae(`${this._declarations.map(r=>r.code).join(`\n\n`)}${s.value}`,Ns,\"runtime\")}finally{this.popMode(\"codegen\")}return this._getOrInstantiate(e)}if(typeof e==\"number\"){let s=t??Vn(e).dataType;return Ws(s!==os,\"Schema has to be known for resolving numbers\"),this.gen.numericLiteral(e,s)}if(typeof e==\"boolean\")return Ae(e?\"true\":\"false\",Ft,\"constant\",!1);if(t&&cr(t)){if(!Array.isArray(e))throw new vt(`Cannot coerce ${e} into value of type '${t}'`);if(t.elementCount!==e.length)throw new vt(`Cannot create value of type '${t}' from an array of length: ${e.length}`);return this.gen.typeInstantiation(t,e.map(s=>Ae(s,t.elementType,\"runtime\")))}if(t&&Es(t))return this.gen.typeInstantiation(t,Object.entries(t.propTypes).map(([s,r])=>Ae(e[s],r,\"runtime\")));throw new vt(`Value ${Oo(e)} is not resolvable${t&&t!==os?` to type ${Oo(t)}`:\"\"}`)}resolveSnippet(e){return p6(this.resolve(e.value,e.dataType).value,e)}pushMode(e){this.#t.push(e)}popMode(e){let t=this.#t.pop();e!==void 0&&Ws(t?.type===e,\"Unexpected mode\")}get mode(){return this.#t[this.#t.length-1]??h6}};function Am(e,t){let s=new o7(t),r=(t.config?s.withSlots(t.config(new Dw([])).bindings,()=>s.resolve(e)):s.resolve(e)).value,o=s.bindGroupLayoutsToPlaceholderMap,n=[],i=zU(new Set([...o.keys()].map(f=>f.index).filter(f=>f!==void 0))),d=s.fixedBindings.map((f,h)=>[String(h),f.layoutEntry]),l=[],c=()=>{let f=i.next().value,h=(globalThis.__TYPEGPU_AUTONAME__??(g=>g))(Vw(Object.fromEntries(d)),\"catchallLayout\");return n[f]=h,r=r.replaceAll(iv,String(f)),l.push([iv,String(f)]),[f,new qw(t.root,h,Object.fromEntries(s.fixedBindings.map((g,x)=>[String(x),g.resource])))]},_=d.length>0?c():void 0;for(let[f,h]of o.entries()){let g=f.index??i.next().value;n[g]=f,r=r.replaceAll(h,String(g)),l.push([h,String(g)])}t.enableExtensions&&t.enableExtensions.length>0&&(r=`${t.enableExtensions.map(f=>`enable ${f};`).join(`\n`)}\n\n${r}`);let p=s.declarations.map(({name:f,code:h})=>({name:f,code:l.reduce((g,[x,T])=>g.replaceAll(x,T),h)}));return t.minify&&(r=qb(r),p=p.map(f=>({...f,code:qb(f.code)}))),{code:r,declarations:p,usedBindGroupLayouts:n,catchall:_,logResources:s.logResources}}function n7(e,t,s){return e.flatMap((r,o)=>{let n=t&&o===t[0]?t[1]:s?.get(r);return n?[[r,n]]:[]})}function Pz(e,t){return e.flatMap(s=>{let r=t?.get(s);return r?[[s,r]]:[]})}var Mz={dispatchWorkgroupsIndirect:\"3 x u32\",drawIndirect:\"4 x u32\",drawIndexedIndirect:\"3 x u32, i32, u32\"};function Hb(e,t,s,r){if(t+s>e)throw new Error(`Buffer too small for ${r}. Required: ${s} bytes at offset ${t}, but buffer is only ${e} bytes.`);if(t%4!==0)throw new Error(`Indirect buffer offset must be a multiple of 4. Got: ${t}`)}function Gd(e,t,s,r){if(ca(e)){let i=typeof t==\"number\"?t:t?.offset??0;return Hb(e.size,i,s,r),i}let{offset:o,contiguous:n}=t?typeof t==\"number\"?{offset:t,contiguous:s}:t:D_(e.dataType);return Hb(kt(e.dataType),o,s,r),n<s&&fs.warn(\"suspicious\",`${r}: Starting at offset ${o}, only ${n} contiguous bytes are available before padding. '${r}' requires ${s} bytes (${Mz[r]}). Reading across padding may result in undefined behavior.`),o}var ap=[Y,ns,Ot,es];we({name:\"bitcastU32toF32\",normalImpl:(e=>typeof e==\"number\"?Ln(e):Mo.bitcastU32toF32[e.kind](e)),codegenImpl:(e,[t],s)=>e.gen.emitCall(\"bitcast\",[To(s)],[t]),signature:(...e)=>{let t=cm(e,ap);if(!t)throw new er(e,ap);return{argTypes:t,returnType:as(t[0])?t[0].type===\"vec2u\"?$t:t[0].type===\"vec3u\"?cs:lt:a}},sideEffects:!1});we({name:\"bitcastU32toI32\",normalImpl:(e=>typeof e==\"number\"?Fn(e):Mo.bitcastU32toI32[e.kind](e)),codegenImpl:(e,[t],s)=>e.gen.emitCall(\"bitcast\",[To(s)],[t]),signature:(...e)=>{let t=cm(e,ap);if(!t)throw new er(e,ap);return{argTypes:t,returnType:as(t[0])?t[0].type===\"vec2u\"?xs:t[0].type===\"vec3u\"?Os:ps:oe}},sideEffects:!1});var jb=[a,$t,cs,lt];we({name:\"bitcastF32toU32\",normalImpl:(e=>typeof e==\"number\"?Bn(e):Mo.bitcastF32toU32[e.kind](e)),codegenImpl:(e,[t],s)=>e.gen.emitCall(\"bitcast\",[To(s)],[t]),signature:(...e)=>{let t=cm(e,jb);if(!t)throw new er(e,jb);return{argTypes:t,returnType:as(t[0])?t[0].type===\"vec2f\"?ns:t[0].type===\"vec3f\"?Ot:es:Y}},sideEffects:!1});var m_=new ArrayBuffer(16),f_={f32:new Float32Array(m_),u32:new Uint32Array(m_),i32:new Int32Array(m_),u16:new Uint16Array(m_)};function kz(e,t){if(typeof e==\"number\")t[0]=e;else for(let s=0;s<e.length;s++)t[s]=e[s]}function $z(e,t){if(typeof e==\"number\")t[0]=ep(e);else for(let s=0;s<e.length;s++)t[s]=ep(e[s])}function Cz(e,t){let s=\"componentCount\"in t?t.componentCount:1,r=[];for(let o=0;o<s;o++)r.push(e[o]);return t(...r)}function Rz(e,t){let s=\"componentCount\"in t?t.componentCount:1,r=[];for(let o=0;o<s;o++)r.push(bh(e[o]));return t(...r)}var Uz=(e,t)=>{let s=\"primitive\"in e?e.primitive:e,r=\"primitive\"in t?t.primitive:t;return o=>(s.type===\"f16\"?$z(o,f_.u16):kz(o,f_[s.type]),r.type===\"f16\"?Rz(f_.u16,t):Cz(f_[r.type],t))};function xt(e,t){return we({name:\"bitcast\",normalImpl:Uz(e,t),codegenImpl:(s,[r])=>s.gen.emitCall(\"bitcast\",[To(t)],[r]),signature:s=>{let r=cm([s],[e]);if(!r)throw new er([s],[e]);return{argTypes:r,returnType:t}},sideEffects:!1})}var Kb={f16:{f16:xt(Zs,Zs)},f32:{f32:xt(a,a),i32:xt(a,oe),u32:xt(a,Y),vec2h:xt(a,Sr)},i32:{f32:xt(oe,a),i32:xt(oe,oe),u32:xt(oe,Y),vec2h:xt(oe,Sr)},u32:{f32:xt(Y,a),i32:xt(Y,oe),u32:xt(Y,Y),vec2h:xt(Y,Sr)},vec2h:{f32:xt(Sr,a),i32:xt(Sr,oe),u32:xt(Sr,Y),vec2h:xt(Sr,Sr)},vec3h:{vec3h:xt(po,po)},vec2f:{vec2f:xt($t,$t),vec2i:xt($t,xs),vec2u:xt($t,ns),vec4h:xt($t,Ar)},vec2i:{vec2f:xt(xs,$t),vec2i:xt(xs,xs),vec2u:xt(xs,ns),vec4h:xt(xs,Ar)},vec2u:{vec2f:xt(ns,$t),vec2i:xt(ns,xs),vec2u:xt(ns,ns),vec4h:xt(ns,Ar)},vec4h:{vec2f:xt(Ar,$t),vec2i:xt(Ar,xs),vec2u:xt(Ar,ns),vec4h:xt(Ar,Ar)},vec3f:{vec3f:xt(cs,cs),vec3i:xt(cs,Os),vec3u:xt(cs,Ot)},vec3i:{vec3f:xt(Os,cs),vec3i:xt(Os,Os),vec3u:xt(Os,Ot)},vec3u:{vec3f:xt(Ot,cs),vec3i:xt(Ot,Os),vec3u:xt(Ot,Ot)},vec4f:{vec4f:xt(lt,lt),vec4i:xt(lt,ps),vec4u:xt(lt,es)},vec4i:{vec4f:xt(ps,lt),vec4i:xt(ps,ps),vec4u:xt(ps,es)},vec4u:{vec4f:xt(es,lt),vec4i:xt(es,ps),vec4u:xt(es,es)}};function zz(e,t){if(\"type\"in e&&e.type in Kb){let s=Kb[e.type];if(\"type\"in t&&t.type in s)return s[t.type]}throw new Error(`Incorrect bitcast from ${Re(e)} to ${Re(t)}.`)}var a7=nn(zz),Gz=we({name:\"unpack2x16float\",normalImpl:e=>{let t=new ArrayBuffer(4);new Xi(t).writeUint32(e);let s=new sl(t);return $t(br(s),br(s))},signature:{argTypes:[Y],returnType:$t},codegenImpl:(e,[t])=>fe`unpack2x16float(${t})`,sideEffects:!1});we({name:\"pack2x16float\",normalImpl:e=>{let t=new ArrayBuffer(4),s=new Xi(t);return xr(s,e.x),xr(s,e.y),Y(new sl(t).readUint32())},signature:{argTypes:[$t],returnType:Y},codegenImpl:(e,[t])=>fe`pack2x16float(${t})`,sideEffects:!1});we({name:\"unpack4x8unorm\",normalImpl:e=>{let t=new ArrayBuffer(4);new Xi(t).writeUint32(e);let s=new sl(t);return lt(s.readUint8()/255,s.readUint8()/255,s.readUint8()/255,s.readUint8()/255)},signature:{argTypes:[Y],returnType:lt},codegenImpl:(e,[t])=>fe`unpack4x8unorm(${t})`,sideEffects:!1});we({name:\"pack4x8unorm\",normalImpl:e=>{let t=new ArrayBuffer(4),s=new Xi(t);return s.writeUint8(e.x*255),s.writeUint8(e.y*255),s.writeUint8(e.z*255),s.writeUint8(e.w*255),Y(new sl(t).readUint32())},signature:{argTypes:[lt],returnType:Y},codegenImpl:(e,[t])=>fe`pack4x8unorm(${t})`,sideEffects:!1});var Nt=e=>a7(Y,a)(e??0),Dn=e=>a7(Y,oe)(e??0),md=e=>Gz(e??0),Dz={f32:e=>Nt(e[0]),f16:e=>md(e[0]).x,i32:e=>Dn(e[0]),u32:e=>e[0]??0,bool:e=>!!e[0],vec2f:e=>$t(Nt(e[0]),Nt(e[1])),vec3f:e=>cs(Nt(e[0]),Nt(e[1]),Nt(e[2])),vec4f:e=>lt(Nt(e[0]),Nt(e[1]),Nt(e[2]),Nt(e[3])),vec2h(e){let t=md(e[0]);return Sr(t.x,t.y)},vec3h(e){let t=md(e[0]),s=md(e[1]);return po(t.x,t.y,s.x)},vec4h(e){let t=md(e[0]),s=md(e[1]);return Ar(t.x,t.y,s.x,s.y)},vec2i:e=>xs(Dn(e[0]),Dn(e[1])),vec3i:e=>Os(Dn(e[0]),Dn(e[1]),Dn(e[2])),vec4i:e=>ps(Dn(e[0]),Dn(e[1]),Dn(e[2]),Dn(e[3])),vec2u:e=>ns(e[0]??0,e[1]??0),vec3u:e=>Ot(e[0]??0,e[1]??0,e[2]??0),vec4u:e=>es(e[0]??0,e[1]??0,e[2]??0,e[3]??0),\"vec2<bool>\":e=>So(!!e[0],!!e[1]),\"vec3<bool>\":e=>Ao(!!e[0],!!e[1],!!e[2]),\"vec4<bool>\":e=>Eo(!!e[0],!!e[1],!!e[2],!!e[3]),mat2x2f:e=>ga(Nt(e[0]),Nt(e[1]),Nt(e[2]),Nt(e[3])),mat3x3f:e=>xa(Nt(e[0]),Nt(e[1]),Nt(e[2]),Nt(e[4]),Nt(e[5]),Nt(e[6]),Nt(e[8]),Nt(e[9]),Nt(e[10])),mat4x4f:e=>Mr(Nt(e[0]),Nt(e[1]),Nt(e[2]),Nt(e[3]),Nt(e[4]),Nt(e[5]),Nt(e[6]),Nt(e[7]),Nt(e[8]),Nt(e[9]),Nt(e[10]),Nt(e[11]),Nt(e[12]),Nt(e[13]),Nt(e[14]),Nt(e[15]))};function Lz(e,t){let s=Dz[t.type];if(s)return s(e);if(Es(t)){let r=Object.keys(t.propTypes),o=dv(e,Object.values(t.propTypes));return Object.fromEntries(r.map((n,i)=>[n,o[i]]))}if(cr(t)){let r=t.elementType,o=t.elementCount;return dv(e,Array.from({length:o},()=>r))}throw new Error(`Cannot deserialize data of type ${t.type}`)}function dv(e,t){let s=0;return t.map(r=>{if(!Oi(r))return r;let o=Math.ceil(kt(r)/4),n=Lz(e.subarray(s,s+o),r);return s+=o,n})}function Fz(e,t){return dv(e,t).map(Df)}function Bz(e){let{indexBuffer:t,dataBuffer:s,logIdToMeta:r,options:o}=e;s.read().then(n=>{n.filter(i=>i.id).forEach(({id:i,serializedData:d})=>{let{argTypes:l,op:c}=r.get(i),_=Fz(new Uint32Array(d),l);_.length===0&&_.push(\"\"),c.bind(console)(`%c${o.messagePrefix}%c ${_[0]}`,\"background: #936ff5; color: white;\",\"color: inherit; background: none\",..._.slice(1))})}),t.read().then(n=>{n>o.logCountLimit&&fs.warn(\"log-limit-exceeded\",`Log count limit per dispatch (${o.logCountLimit}) exceeded by ${n-o.logCountLimit} calls. Consider increasing the limit by passing appropriate options to tgpu.init().`)}),s.buffer.clear(),t.buffer.clear()}function Iz(e,t,s,r){return new Yz(e,t,s,r)}function iy(e){let t=e;return t?.resourceType===\"query-set\"&&!!t[q]}var Yz=class{resourceType=\"query-set\";#e;#t=!1;#s=!0;#r=void 0;#o=void 0;[be];[q];constructor(e,t,s,r){this.#e=!r,this[be]={type:\"query-set\",device:e.device,queryType:t,count:s,raw:r,label:void 0};let o=this;this[q]={get readBuffer(){return o.#r||(o.#r=o[be].device.createBuffer({size:o.count*BigUint64Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.COPY_DST|GPUBufferUsage.MAP_READ})),o.#r},get resolveBuffer(){return o.#o||(o.#o=o[be].device.createBuffer({size:o.count*BigUint64Array.BYTES_PER_ELEMENT,usage:GPUBufferUsage.QUERY_RESOLVE|GPUBufferUsage.COPY_SRC})),o.#o},materialize:()=>{if(this.#t)throw new Error(\"This QuerySet has been destroyed.\");let n=this[be];return n.raw||(n.raw=n.device.createQuerySet({type:n.queryType,count:n.count})),n.raw}}}get type(){return this[be].queryType}get count(){return this[be].count}get querySet(){return this[q].materialize()}get destroyed(){return this.#t}get available(){return this.#s}$name(e){Tt(this,e);let t=this[be].raw;return t&&(t.label=e),this}resolve(){if(this.#t)throw new Error(\"This QuerySet has been destroyed.\");if(!this.#s)throw new Error(\"This QuerySet is busy resolving or reading.\");let e=this[be].device.createCommandEncoder();e.resolveQuerySet(this.querySet,0,this.count,this[q].resolveBuffer,0),this[be].device.queue.submit([e.finish()])}async read(){if(!this.#o)throw new Error(\"QuerySet must be resolved before reading.\");this.#s=!1;try{let e=this[be].device.createCommandEncoder();e.copyBufferToBuffer(this[q].resolveBuffer,0,this[q].readBuffer,0,this.count*BigUint64Array.BYTES_PER_ELEMENT),this[be].device.queue.submit([e.finish()]);let t=this[q].readBuffer;await t.mapAsync(GPUMapMode.READ);let s=new BigUint64Array(t.getMappedRange().slice());return t.unmap(),Array.from(s)}finally{this.#s=!0}}destroy(){this.#t||(this.#t=!0,this[be].raw&&this.#e&&this[be].raw.destroy(),this.#r?.destroy(),this.#o?.destroy(),this.#r=this.#o=void 0)}};function i7(e,t,s){return e.timestampWrites?{...e,performanceCallback:t}:{...e,performanceCallback:t,timestampWrites:{querySet:s,beginningOfPassWriteIndex:0,endOfPassWriteIndex:1}}}function d7(e,t,s){if(!s.enabledFeatures.has(\"timestamp-query\"))throw new Error('Timestamp writes require the \"timestamp-query\" feature to be enabled on GPU device.');let r={querySet:t.querySet};return t.beginningOfPassWriteIndex!==void 0&&(r.beginningOfPassWriteIndex=t.beginningOfPassWriteIndex),t.endOfPassWriteIndex!==void 0&&(r.endOfPassWriteIndex=t.endOfPassWriteIndex),{...e,timestampWrites:r}}var Zb=new WeakMap;async function Wz(e,t){if(!e.available)return;let s=await e.read();for(let{priors:r,callback:o}of t){let n=s[r.timestampWrites?.beginningOfPassWriteIndex??0],i=s[r.timestampWrites?.endOfPassWriteIndex??1];if(n===void 0||i===void 0)throw new Error(\"QuerySet did not return valid timestamps.\");await o(n,i)}}function Oz(e,t){let s=t.timestampWrites?.querySet,r=t.performanceCallback;if(!s)throw new Error(\"Cannot dispatch workgroups with performance callback without a query set.\");if(!iy(s))throw new Error(\"Performance callback with raw GPUQuerySet is not supported. Use TgpuQuerySet instead.\");let o=e[q];if(o.adopted)return!1;let{root:n}=o;o.beforeFinish.set(s,l=>{l.resolveQuerySet(n.unwrap(s),0,s.count,s[q].resolveBuffer,0)});let i=Zb.get(e);i||(i=new Map,Zb.set(e,i));let d=i.get(s);if(!d){let l=[];d=l,i.set(s,l),o.afterSubmit.set(s,()=>{i.delete(s),Wz(s,l)})}return d.some(l=>l.priors===t)?fs.warnOnce(\"suspicious\",s,\"repeated-timed-execution\",\"Repeated executions of a timed pipeline within one command encoder write to the same query set indices, so the performance callback reports only the last execution.\"):d.push({priors:t,callback:r}),!0}var Vz=class{bindGroups=new Map;vertexBuffers=new Map;currentPipeline;indexBuffer;stencilReference;appliedStencilReference=0;version=0;rawAccessed=!1},Nz=class{bindGroups=new Map;currentPipeline;version=0;rawAccessed=!1};function l7(e,t,s){Ka(t)?e.bindGroups.set(t.layout,t):e.bindGroups.set(t,s),e.version++}function c7(e,t){let{priors:s}=t[q];if(e.currentPipeline=t,s.bindGroupLayoutMap)for(let[r,o]of s.bindGroupLayoutMap)e.bindGroups.set(r,o);if(s.vertexLayoutMap)for(let[r,o]of s.vertexLayoutMap)e.vertexBuffers.set(r,{buffer:o,offset:void 0,size:void 0});s.indexBuffer&&(e.indexBuffer=s.indexBuffer),s.stencilReference!==void 0&&(e.stencilReference=s.stencilReference),e.version++}function u7(e,t){let{priors:s}=t[q];if(e.currentPipeline=t,s.bindGroupLayoutMap)for(let[r,o]of s.bindGroupLayoutMap)e.bindGroups.set(r,o);e.version++}function qz(e,t,s){let{buffer:r,indexFormat:o,offsetBytes:n,sizeBytes:i}=s;fc(r)?e.setIndexBuffer(t.unwrap(r),o,n,i):e.setIndexBuffer(r,o,n,i)}function _7(e,t,s,r,o){let n=new Set(s);if(s.forEach((i,d)=>{if(r&&d===r[0])e.setBindGroup(d,t.unwrap(r[1])),n.delete(i);else{let l=o(i);l!==void 0&&(n.delete(i),Ka(l)?e.setBindGroup(d,t.unwrap(l)):e.setBindGroup(d,l))}}),n.size>0)throw new zk(n)}function Xz(e,t,s,r){let o=new Set;if(s.forEach((n,i)=>{let d=r(n);!d||!d.buffer?o.add(n):fc(d.buffer)?e.setVertexBuffer(i,t.unwrap(d.buffer),d.offset,d.size):e.setVertexBuffer(i,d.buffer,d.offset,d.size)}),o.size>0)throw new Gk(o)}function Hz(e,t,s,r){let o=s[q].core.unwrap();e.setPipeline(o.pipeline),_7(e,t,o.usedBindGroupLayouts,o.catchall,n=>r.bindGroups.get(n)),Xz(e,t,o.usedVertexLayouts,n=>r.vertexBuffers.get(n)),r.indexBuffer!==void 0&&qz(e,t,r.indexBuffer),typeof e.setStencilReference==\"function\"&&r.stencilReference!==void 0&&(r.rawAccessed||r.stencilReference!==r.appliedStencilReference)&&(e.setStencilReference(r.stencilReference),r.appliedStencilReference=r.stencilReference)}function jz(e,t,s,r){let o=s[q].core.unwrap();e.setPipeline(o.pipeline),_7(e,t,o.usedBindGroupLayouts,o.catchall,n=>r.bindGroups.get(n))}function p7(e){if(!e)throw new Error(\"No index buffer is set. Call pipeline.withIndexBuffer or pass.setIndexBuffer before drawing indexed geometry.\")}function Qb(e,t){fs.warnOnce(\"suspicious\",e,t,`${t} is ignored when recording into a raw GPUCommandEncoder, since there is no submission to report after. Use root['~unstable'].createCommandEncoder() instead.`)}function m7(e,t){return!e||e[q].adopted?!1:(e[q].afterSubmit.set(t,()=>Bz(t)),!0)}function f7(e,t,s,r){s&&!m7(e,s)&&Qb(t,\"Shader console.log output\"),r.performanceCallback&&!Oz(e,r)&&Qb(t,\"The performance callback\"),r.encoder===void 0&&e.submit()}var Kz={render:{into:\"drawing into a render pass\",intoRaw:\"drawing into a raw render pass\",begin:\"beginRenderPass\"},compute:{into:\"dispatching into a compute pass\",intoRaw:\"dispatching into a raw compute pass\",begin:\"beginComputePass\"}};function v7(e,t,s,r,o,n=!1){let i=Kz[o];n&&fs.warnOnce(\"suspicious\",e,\"attachments\",`Pipeline-level attachments are ignored when ${i.into}. Pass \\`colorAttachments\\` and \\`depthStencilAttachment\\` to encoder.${i.begin} instead.`),s&&fs.warnOnce(\"suspicious\",e,\"timestampWrites\",`Pipeline-level timestamp writes are ignored when ${i.into}. Pass \\`timestampWrites\\` to encoder.${i.begin} instead.`),r&&!m7(t,r)&&fs.warnOnce(\"suspicious\",e,\"logs\",`Shader console.log output is ignored when ${i.intoRaw} encoder, since there is no submission to read it back after.`)}function lv(e,t,s,r,o,n=!1){let{state:i,rawPass:d}=t,{core:l,priors:c}=s[q];i.currentPipeline!==s&&c7(i,s),r&&p7(i.indexBuffer);let _=l.unwrap();n||v7(l,t.owner,!!c.timestampWrites,_.logResources,\"render\",!!c.colorAttachment||!!c.depthStencilAttachment),(i.rawAccessed||t.appliedVersion!==i.version)&&(Hz(d,e,s,i),t.appliedVersion=i.version),o(d)}function cv(e,t,s,r,o=!1){let{state:n,rawPass:i}=t,{core:d,priors:l}=s[q];n.currentPipeline!==s&&u7(n,s);let c=d.unwrap();o||v7(d,t.owner,!!l.timestampWrites,c.logResources,\"compute\"),(n.rawAccessed||t.appliedVersion!==n.version)&&(jz(i,e,s,n),t.appliedVersion=n.version),r(i)}function Zz(e){let t=e;return t?.resourceType===\"compute-pipeline\"&&Rt(t)}function Qz(e){let t=e;return t?.resourceType===\"render-pipeline\"&&Rt(t)}function Jz(e){return Qz(e)||Zz(e)}function dy(e){let t=e;return t?.resourceType===\"command-encoder\"&&Rt(t)}function h7(e){let t=e;return(t?.resourceType===\"render-pass\"||t?.resourceType===\"render-bundle-encoder\")&&Rt(t)}function y7(e){let t=e;return t?.resourceType===\"compute-pass\"&&Rt(t)}function eG(e){return typeof e?.getCurrentTexture==\"function\"}function g7(e){let t=e;return!Rt(t)&&typeof t?.beginRenderPass==\"function\"&&typeof t?.beginComputePass==\"function\"}function tG(e){let t=e;return!Rt(t)&&typeof t?.dispatchWorkgroups==\"function\"&&t?.beginRenderPass===void 0}function sG(e){let t=e;return!Rt(t)&&typeof t?.executeBundles==\"function\"&&typeof t?.draw==\"function\"}function rG(e){let t=e;return!Rt(t)&&typeof t?.draw==\"function\"&&typeof t?.finish==\"function\"&&t?.executeBundles===void 0&&t?.beginRenderPass===void 0&&t?.dispatchWorkgroups===void 0}function X1(e,t){return xc(t)?e.unwrap(t).createView():zd(t)?e.unwrap(t):eG(t)?t.getCurrentTexture().createView():t}function x7(e,t){let{querySet:s,beginningOfPassWriteIndex:r,endOfPassWriteIndex:o}=t,n={querySet:iy(s)?e.unwrap(s):s};return r!==void 0&&(n.beginningOfPassWriteIndex=r),o!==void 0&&(n.endOfPassWriteIndex=o),n}function oG(e,t){let{rawEncoder:s,root:r}=e[q],o={};return t?.label!==void 0&&(o.label=t.label),t?.timestampWrites!==void 0&&(o.timestampWrites=x7(r,t.timestampWrites)),new b7(r,s.beginComputePass(o),e)}function nG(e,t){let s=new b7(e,t,void 0);return s[q].state.rawAccessed=!0,s}var b7=class{[q];resourceType=\"compute-pass\";#e;constructor(e,t,s){this.#e=e,this[q]={rawPass:t,state:new Nz,owner:s,appliedVersion:void 0}}#t(e){let t=this[q],s=t.state.currentPipeline;if(!s)throw new Error(\"Cannot dispatch without a call to pass.setPipeline\");cv(this.#e,t,s,e)}setPipeline(e){u7(this[q].state,e)}setBindGroup(e,t){l7(this[q].state,e,t)}dispatchWorkgroups(e,t,s){this.#t(r=>r.dispatchWorkgroups(e,t,s))}dispatchWorkgroupsIndirect(e,t){let s=ca(e)?e:e.buffer,r=Gd(e,t,12,\"dispatchWorkgroupsIndirect\");this.#t(o=>o.dispatchWorkgroupsIndirect(s,r))}end(){this[q].rawPass.end()}};function aG(e){let t,s=\"all\";if(xc(e)?t=e.props.format:zd(e)&&(t=e[q].format,s=e[q].aspect??\"all\"),t!==void 0)return{hasDepth:t.includes(\"depth\")&&s!==\"stencil-only\",hasStencil:t.includes(\"stencil\")&&s!==\"depth-only\"}}function iG(e,t){let s={...e,view:t},r=aG(e.view);if(r===void 0&&(e.depthLoadOp!==void 0||e.depthStoreOp!==void 0||e.stencilLoadOp!==void 0||e.stencilStoreOp!==void 0))return s;let{hasDepth:o,hasStencil:n}=r??{hasDepth:!0,hasStencil:!1};return o&&!e.depthReadOnly&&(s.depthLoadOp??=\"clear\",s.depthStoreOp??=\"store\",s.depthClearValue??=1),n&&!e.stencilReadOnly&&(s.stencilLoadOp??=\"clear\",s.stencilStoreOp??=\"store\"),s}function dG(e,t){let{rawEncoder:s,root:r}=e[q],o={colorAttachments:(t.colorAttachments===void 0?[]:Array.isArray(t.colorAttachments)?t.colorAttachments:[t.colorAttachments]).map(n=>{if(n===null)return null;let i={...n,loadOp:n.loadOp??\"clear\",storeOp:n.storeOp??\"store\",view:X1(r,n.view)};return n.resolveTarget!==void 0&&(i.resolveTarget=X1(r,n.resolveTarget)),i})};return t.label!==void 0&&(o.label=t.label),t.depthStencilAttachment!==void 0&&(o.depthStencilAttachment=iG(t.depthStencilAttachment,X1(r,t.depthStencilAttachment.view))),t.occlusionQuerySet!==void 0&&(o.occlusionQuerySet=iy(t.occlusionQuerySet)?r.unwrap(t.occlusionQuerySet):t.occlusionQuerySet),t.timestampWrites!==void 0&&(o.timestampWrites=x7(r,t.timestampWrites)),t.maxDrawCount!==void 0&&(o.maxDrawCount=t.maxDrawCount),new w7(r,s.beginRenderPass(o),e)}function lG(e,t){return new uG(e,e.device.createRenderBundleEncoder(t),void 0)}function cG(e,t){let s=typeof t.executeBundles==\"function\"?new w7(e,t,void 0):new ly(e,t,void 0);return s[q].state.rawAccessed=!0,s}var ly=class{[q];resourceType=\"render-bundle-encoder\";#e;constructor(e,t,s){this.#e=e,this[q]={rawPass:t,state:new Vz,owner:s,appliedVersion:void 0}}#t(e,t){let s=this[q],r=s.state.currentPipeline;if(!r)throw new Error(\"Cannot draw without a call to pass.setPipeline\");lv(this.#e,s,r,e,t)}setPipeline(e){c7(this[q].state,e)}setBindGroup(e,t){l7(this[q].state,e,t)}setVertexBuffer(e,t,s,r){let{state:o}=this[q];o.vertexBuffers.set(e,{buffer:t,offset:s,size:r}),o.version++}setIndexBuffer(e,t,s,r){let{state:o}=this[q];o.indexBuffer={buffer:e,indexFormat:t,offsetBytes:s,sizeBytes:r},o.version++}draw(e,t,s,r){this.#t(!1,o=>o.draw(e,t,s,r))}drawIndexed(e,t,s,r,o){this.#t(!0,n=>n.drawIndexed(e,t,s,r,o))}drawIndirect(e,t){let s=ca(e)?e:e.buffer,r=Gd(e,t,16,\"drawIndirect\");this.#t(!1,o=>o.drawIndirect(s,r))}drawIndexedIndirect(e,t){let s=ca(e)?e:e.buffer,r=Gd(e,t,20,\"drawIndexedIndirect\");this.#t(!0,o=>o.drawIndexedIndirect(s,r))}},uG=class extends ly{resourceType=\"render-bundle-encoder\";finish(e){return this[q].rawPass.finish(e)}},w7=class extends ly{resourceType=\"render-pass\";setViewport(e,t,s,r,o,n){this[q].rawPass.setViewport(e,t,s,r,o,n)}setScissorRect(e,t,s,r){this[q].rawPass.setScissorRect(e,t,s,r)}setBlendConstant(e){this[q].rawPass.setBlendConstant(e)}setStencilReference(e){let{state:t}=this[q];t.stencilReference=e,t.version++}beginOcclusionQuery(e){this[q].rawPass.beginOcclusionQuery(e)}endOcclusionQuery(){this[q].rawPass.endOcclusionQuery()}executeBundles(e){let t=this[q];t.rawPass.executeBundles(e),t.appliedVersion=void 0}end(){this[q].rawPass.end()}};function cy(e,t){return new S7(e,e.device.createCommandEncoder(t),!1)}function T7(e,t){return new S7(e,t,!0)}var S7=class{[q];resourceType=\"command-encoder\";constructor(e,t,s){this[q]={rawEncoder:t,root:e,adopted:s,beforeFinish:new Map,afterSubmit:new Map}}beginRenderPass(e){return dG(this,e)}beginComputePass(e){return oG(this,e)}#e(){let{rawEncoder:e,beforeFinish:t}=this[q];for(let s of t.values())s(e);t.clear()}submit(){let{rawEncoder:e,root:t,afterSubmit:s}=this[q];this.#e(),t.device.queue.submit([e.finish()]);for(let r of s.values())r();s.clear()}finish(e){let{rawEncoder:t,root:s,afterSubmit:r}=this[q];return this.#e(),r.size>0&&fs.warnOnce(\"suspicious\",s,\"finishWithPendingWork\",\"Shader console.log output and performance callbacks do not fire for command buffers produced by encoder.finish(). Use encoder.submit() instead.\"),t.finish(e)}},A7=[\"f16\",\"clip_distances\",\"dual_source_blending\",\"subgroups\",\"primitive_index\"],E7={f16:\"shader-f16\",clip_distances:\"clip-distances\",dual_source_blending:\"dual-source-blending\",subgroups:\"subgroups\",primitive_index:\"primitive-index\"};function uv(e,t){return e.type!==t.type?!1:Hr(e)&&Hr(t)?e.access===t.access&&e.addressSpace===t.addressSpace&&e.implicit===t.implicit&&uv(e.inner,t.inner):cr(e)&&cr(t)?e.elementCount===t.elementCount&&uv(e.elementType,t.elementType):Es(e)&&Es(t)?e===t:!0}var _G=class{cache=new Map;get(e,t){let s=mh(e);if(!s)return;if(!t&&s.ast.params.length>0)throw new Error(`Cannot resolve '${Re(e)}' directly, because it expects arguments. Either call it from another function, or wrap it in a shell`);let r=(t??[]).map((i,d)=>{if(i.value instanceof ia){if(i.dataType===os)throw new vt(\"d.ref() created with primitive types must be stored in a variable before use\");return i.dataType}if(i.dataType===os)throw new Error(`Passed illegal value ${i.value} as the #${d} argument to ${Re(e)??\"<unnamed>\"}(...)\nShellless functions can only accept arguments representing WGSL resources: constructible WGSL types, d.refs, samplers or texture views.\nRemember, that arguments such as samplers, texture views, accessors, slots etc. should be dereferenced via '.$' first.`);let l=Wo(i.dataType);return Hr(l)&&l.implicit&&(l=l.inner),l}),o=this.cache.get(e);if(o){let i=o.find(d=>d.argTypes.length===r.length&&d.argTypes.every((l,c)=>uv(l,r[c])));if(i)return i}else o=[],this.cache.set(e,o);let n=bz(r,e);return o.push(n),n}},pG=class{[q];constructor(e){this[q]={strategy:e,takenGlobalIdentifiers:new Set([...Oh,...B$]),shelllessRepo:new _G,memoizedResolves:new WeakMap,memoizedLazy:new WeakMap}}};function al(e){let{names:t=\"strict\"}=e??{};return new pG(t)}var mG=new Set([\"bindGroupLayoutMap\",\"vertexLayoutMap\",\"indexBuffer\",\"stencilReference\",\"timestampWrites\",\"performanceCallback\"]);function P7(e){return Object.keys(e).filter(t=>!mG.has(t)&&e[t]!==void 0)}var M7=class{#e;#t;measureResolve(e){let t=performance.mark(\"typegpu:resolution:start\"),s=e();return this.#e=performance.measure(\"typegpu:resolution\",{start:t.name}),this.#t=s.code.length,s}measureCompile(e){(async()=>{let t=performance.mark(\"typegpu:compile-start\");await e.queue.onSubmittedWorkDone();let s=performance.measure(\"typegpu:compiled\",{start:t.name});fh?.record(\"resolution\",{resolveDuration:this.#e?.duration,compileDuration:s.duration,wgslSize:this.#t})})()}},k7=class{measureResolve(e){return e()}measureCompile(){}};function fG(e,t,s){return new vG(new hG(e,t,s),{})}var vG=class $7{[q];[be];resourceType=\"compute-pipeline\";[Pr];constructor(t,s){this[be]={type:\"compute-pipeline\",device:t.root.device,raw:void 0,label:void 0},this[q]={core:t,priors:s,root:t.root,materialize:()=>{let r=this[be];if(!r.raw){let o=t.unwrap();r.raw=o.pipeline,r.usedBindGroupLayouts=o.usedBindGroupLayouts,r.bindGroups=n7(o.usedBindGroupLayouts,o.catchall,s.bindGroupLayoutMap),r.timestampWrites=s.timestampWrites,r.performanceCallback=s.performanceCallback,r.nonTransferablePriors=P7(s)}return r.raw}},this[Pr]=t}[ts](t){return t.resolve(this[q].core)}toString(){return`computePipeline:${Re(this)??\"<unnamed>\"}`}#e(t){let{core:s,priors:r}=this[q];return new $7(s,{...r,...t})}with(t,s){let r=this[q];if(y7(t))return this.#e({pass:t,encoder:void 0});if(dy(t))return this.#e({pass:void 0,encoder:t});if(tG(t))return this.#e({pass:nG(r.root,t),encoder:void 0});if(g7(t))return this.#e({pass:void 0,encoder:T7(r.root,t)});if(Ka(t)||Tm(t)){let[o,n]=Ka(t)?[t.layout,t]:[t,s];return this.#e({bindGroupLayoutMap:new Map([...r.priors.bindGroupLayoutMap??[],[o,n]])})}throw new Error(\"Unsupported value passed into .with()\")}withPerformanceCallback(t){let s=this[q];if(s.priors.timestampWrites)return this.#e({performanceCallback:t});let r=s.core.performanceCallbackQuerySet;return r?this.#e(i7(s.priors,t,r)):(fs.warn(\"webgpu-feature-missing\",\"Performance callback cannot be used because the timestamp-query feature is not enabled on the root.\"),this)}withTimestampWrites(t){let s=this[q];return this.#e(d7(s.priors,t,s.root))}dispatchWorkgroups(t,s,r){this.#t(o=>o.dispatchWorkgroups(t,s,r))}dispatchWorkgroupsIndirect(t,s){let r=ca(t)?t:t.buffer,o=Gd(t,s,12,\"dispatchWorkgroupsIndirect\");this.#t(n=>n.dispatchWorkgroupsIndirect(r,o))}initAsync(){return this[q].core.initAsync()}initSync(){this[q].core.initSync()}#t(t){let{core:s,priors:r,root:o}=this[q];if(r.pass){cv(o,r.pass[q],this,t);return}let n=r.encoder??cy(o),i=n.beginComputePass({label:Re(s)??\"<unnamed>\",timestampWrites:r.timestampWrites});cv(o,i[q],this,t,!0),i.end(),f7(n,s,s.unwrap().logResources,r)}$name(t){return Tt(this,t),this}},hG=class C7{[q]=!0;root;#e;#t;#s;#r;#o;#n;constructor(t,s,r){this.root=t,this.#r=s,this.#o=r,this.#e=fh?.enabled?new M7:new k7}static precompiled(t,s){let r=new C7(t,[],void 0);return r.#s=s,r}[ts](t){let s=this.#o;return s?t.withSlots(this.#r,()=>(t.resolve(s.compute),Ae(\"\",Ns,\"runtime\"))):Ae(\"\",Ns,\"runtime\")}toString(){return\"computePipelineCore\"}get performanceCallbackQuerySet(){if(this.root.enabledFeatures.has(\"timestamp-query\"))return this.#n??=(globalThis.__TYPEGPU_AUTONAME__??(t=>t))(this.root.createQuerySet(\"timestamp\",2),\"performanceCallbackQuerySet\")}initAsync(){if(this.#s!==void 0)return Promise.resolve();if(this.#t===void 0){let t=this.root.device,{resolutionResult:s,module:r}=this.resolveAndCreateShaderModule(),{usedBindGroupLayouts:o,catchall:n,logResources:i}=s;this.#t=t.createComputePipelineAsync({label:Re(this)??\"<unnamed>\",layout:t.createPipelineLayout({label:`${Re(this)??\"<unnamed>\"} - Pipeline Layout`,bindGroupLayouts:o.map(d=>this.root.unwrap(d))}),compute:{module:r}}).then(d=>{this.#s={pipeline:d,usedBindGroupLayouts:o,catchall:n,logResources:i},this.#e.measureCompile(t)}).finally(()=>{this.#t=void 0})}return this.#t}initSync(){if(this.#s!==void 0)return;if(this.#t!==void 0)throw new Error(\"'pipeline.initAsync()' was called and is not yet resolved.\");let t=this.root.device,{resolutionResult:s,module:r}=this.resolveAndCreateShaderModule(),{usedBindGroupLayouts:o,catchall:n,logResources:i}=s;this.#s={pipeline:(globalThis.__TYPEGPU_AUTONAME__??(d=>d))(t.createComputePipeline({label:Re(this)??\"<unnamed>\",layout:t.createPipelineLayout({label:`${Re(this)??\"<unnamed>\"} - Pipeline Layout`,bindGroupLayouts:o.map(d=>this.root.unwrap(d))}),compute:{module:r}}),\"pipeline\"),usedBindGroupLayouts:o,catchall:n,logResources:i},this.#e.measureCompile(t)}unwrap(){return this.initSync(),this.#s}resolveAndCreateShaderModule(){let t=this.root.device,s=A7.filter(l=>this.root.enabledFeatures.has(E7[l])),r=al({names:this.root.nameRegistrySetting}),o=this.#e.measureResolve(()=>Am(this,{namespace:r,minify:this.root.minify,enableExtensions:s,shaderGenerator:this.root.shaderGeneratorClass?new this.root.shaderGeneratorClass:void 0,root:this.root})),{code:n,usedBindGroupLayouts:i,catchall:d}=o;return d!==void 0&&i[d[0]]?.$name(`${Re(this)??\"<unnamed>\"} - Automatic Bind Group & Layout`),Gw(i,t.limits),{resolutionResult:o,module:t.createShaderModule({label:`${Re(this)??\"<unnamed>\"} - Shader`,code:n})}}},yG={$vertexIndex:qr.vertexIndex,$instanceIndex:qr.instanceIndex},gG={$clipDistances:qr.clipDistances,$position:qr.position},xG={$position:qr.position,$frontFacing:qr.frontFacing,$primitiveIndex:qr.primitiveIndex,$sampleIndex:qr.sampleIndex,$sampleMask:qr.sampleMask,$subgroupInvocationId:qr.subgroupInvocationId,$subgroupSize:qr.subgroupSize},bG={$fragDepth:qr.fragDepth,$sampleMask:qr.sampleMask},uy=class{#e;autoIn;autoOut;constructor(e,t,s){Re(e)||Tt(e,\"fragmentFn\"),this.#e=Hi(e,\"fragment\"),this.autoIn=new Sn({...xG,...t},void 0,s),Tt(this.autoIn,\"FragmentIn\"),this.autoOut=new Sn(bG,lt),Tt(this.autoOut,\"FragmentOut\")}toString(){return\"autoFragmentFn\"}[ts](e){return e.withSlots([[nl,\"fragment\"]],()=>this.#e.resolve(e,[this.autoIn],this.autoOut))}};uy.prototype[q]=!0;uy.prototype.resourceType=\"auto-fragment-fn\";var _y=class{#e;autoIn;autoOut;constructor(e,t,s){Re(e)||Tt(e,\"vertexFn\"),this.#e=Hi(e,\"vertex\"),this.autoIn=new Sn({...yG,...t},void 0,s),Tt(this.autoIn,\"VertexIn\"),this.autoOut=new Sn(gG,void 0),Tt(this.autoOut,\"VertexOut\")}toString(){return\"autoVertexFn\"}[ts](e){return e.withSlots([[nl,\"vertex\"]],()=>this.#e.resolve(e,[this.autoIn],this.autoOut))}};_y.prototype[q]=!0;_y.prototype.resourceType=\"auto-vertex-fn\";function R7(e,t=\"vertex\"){return new wG(e,t)}function U7(e){return e?.resourceType===\"vertex-layout\"}var _v=Symbol(\"defaultAttribEntry\");function B_(e,t,s,r,o){if(ya(t)||oi(t)){let n=qa(t);return n!==void 0&&(r[o??_v]=n),B_(e,t.inner,Er(s,sn(t)),r)}if(Es(t)){let n=s,i=t.propTypes;return Object.fromEntries(Object.entries(i).map(([d,l])=>{n=Er(n,ks(l));let c=[d,B_(e,l,n,r,d)];return n+=kt(l),c}))}if(Zn(t)){let n=s,i=t.propTypes;return Object.fromEntries(Object.entries(i).map(([d,l])=>{n=Er(n,sn(l));let c=[d,B_(e,l,n,r,d)];return n+=kt(l),c}))}if(\"type\"in t&&typeof t.type==\"string\"){if(u6.includes(t.type))return{_layout:e,format:t.type,offset:s};let n=Dk[t.type];if(n)return{_layout:e,format:n,offset:s}}throw new Error(`Unsupported data used in vertex layout: ${String(t)}`)}var wG=class{[q]=!0;[be];resourceType=\"vertex-layout\";stride;attrib;schemaForCount;#e={};constructor(e,t){this.schemaForCount=e;let s=e(0);this[be]={type:\"vertex-layout\",schema:s,stepMode:t,label:void 0},this.stride=Er(kt(s.elementType),ks(s)),this.attrib=B_(this,s.elementType,0,this.#e)}get stepMode(){return this[be].stepMode}get vertexLayout(){if(this.#e[_v]!==void 0){if(typeof this.attrib.format!=\"string\"||typeof this.attrib.offset!=\"number\")throw new Error(\"Single attribute vertex layouts must have a format and offset.\");return{arrayStride:this.stride,stepMode:this.stepMode,attributes:[{format:this.attrib.format,offset:this.attrib.offset,shaderLocation:this.#e[_v]}]}}if(!Object.keys(this.attrib).every(e=>this.#e[e]!==void 0))throw new Error(\"All attributes must have custom locations in order to unwrap a vertex layout.\");return{arrayStride:this.stride,stepMode:this.stepMode,attributes:Object.entries(this.attrib).map(([e,t])=>({format:t.format,offset:t.offset,shaderLocation:this.#e[e]}))}}$name(e){return Tt(this,e),this}};function TG(e){return!!e?.view}function SG(e,t){if(om(e)||Nn(e))return[];if(Es(e)){let s=[];for(let r of Object.keys(e.propTypes)){let o=e.propTypes[r];if(Nn(o))continue;let n=t[r];if(!n)throw new Error(`A color attachment by the name of '${r}' was not provided to the shader.`);s.push(n)}return s}if(!TG(t))throw new Error(\"Expected a single color attachment, not a record.\");return[t]}function AG(e,t){let s;if(om(e)||Nn(e))return[null];if(Es(e)){let o=[];for(let n of Object.keys(e.propTypes)){let i=e.propTypes[n];if(Nn(i))continue;let d=t[n];o.push({...d,format:d?.format??(s??=navigator.gpu.getPreferredCanvasFormat())})}return o}let r=t;return[{...r,format:r?.format??(s??=navigator.gpu.getPreferredCanvasFormat())}]}function EG(e){return new PG(new MG(e),{})}var PG=class z7{[q];[be];resourceType=\"render-pipeline\";[Pr];constructor(t,s){this[be]={type:\"render-pipeline\",device:t.options.root.device,raw:void 0,label:void 0},this[q]={core:t,priors:s,root:t.options.root,materialize:()=>{let r=this[be];if(!r.raw){let o=t.unwrap();r.raw=o.pipeline,r.usedBindGroupLayouts=o.usedBindGroupLayouts,r.usedVertexLayouts=o.usedVertexLayouts,r.fragmentOut=o.fragmentOut,r.bindGroups=n7(o.usedBindGroupLayouts,o.catchall,s.bindGroupLayoutMap),r.vertexBuffers=Pz(o.usedVertexLayouts,s.vertexLayoutMap),r.indexBuffer=s.indexBuffer,r.stencilReference=s.stencilReference,r.timestampWrites=s.timestampWrites,r.performanceCallback=s.performanceCallback,r.nonTransferablePriors=P7(s)}return r.raw}},this[Pr]=t}[ts](t){return t.resolve(this[q].core)}toString(){return`renderPipeline:${Re(this)??\"<unnamed>\"}`}$name(t){return Tt(this,t),this}#e(t){let{core:s,priors:r}=this[q];return new z7(s,{...r,...t})}with(t,s){let r=this[q];if(h7(t))return this.#e({pass:t,encoder:void 0});if(dy(t))return this.#e({pass:void 0,encoder:t});if(sG(t)||rG(t))return this.#e({pass:cG(r.root,t),encoder:void 0});if(g7(t))return this.#e({pass:void 0,encoder:T7(r.root,t)});if(Ka(t)||Tm(t)){let[o,n]=Ka(t)?[t.layout,t]:[t,s];return this.#e({bindGroupLayoutMap:new Map([...r.priors.bindGroupLayoutMap??[],[o,n]])})}if(U7(t))return this.#e({vertexLayoutMap:new Map([...r.priors.vertexLayoutMap??[],[t,s]])});throw new Error(\"Unsupported value passed into .with()\")}withPerformanceCallback(t){let s=this[q];if(s.priors.timestampWrites)return this.#e({performanceCallback:t});let r=s.core.performanceCallbackQuerySet;return r?this.#e(i7(s.priors,t,r)):(fs.warn(\"webgpu-feature-missing\",\"Performance callback cannot be used because the timestamp-query feature is not enabled on the root.\"),this)}withTimestampWrites(t){let s=this[q];return this.#e(d7(s.priors,t,s.root))}withColorAttachment(t){return this.#e({colorAttachment:t})}withDepthStencilAttachment(t){return this.#e({depthStencilAttachment:t})}withStencilReference(t){return this.#e({stencilReference:t})}withIndexBuffer(t,s,r,o){if(ca(t)){if(typeof s!=\"string\")throw new Error(\"If a GPUBuffer is passed, indexFormat must be provided.\");return this.#e({indexBuffer:{buffer:t,indexFormat:s,offsetBytes:r,sizeBytes:o}})}let n={u32:\"uint32\",u16:\"uint16\"},i=t.dataType.elementType;return this.#e({indexBuffer:{buffer:t,indexFormat:n[i.type],offsetBytes:s!==void 0?s*kt(i):void 0,sizeBytes:o!==void 0?o*kt(i):void 0}})}initAsync(){return this[q].core.initAsync()}initSync(){this[q].core.initSync()}get hasIndexBuffer(){return this[q].priors.indexBuffer!==void 0}#t(){let{core:t,priors:s}=this[q],{fragmentOut:r}=t.unwrap();return{label:Re(t)??\"<unnamed>\",colorAttachments:r?SG(r,s.colorAttachment??{}):[],depthStencilAttachment:s.depthStencilAttachment,timestampWrites:s.timestampWrites}}#s(t,s){let{core:r,priors:o,root:n}=this[q];if(o.pass){lv(n,o.pass[q],this,t,s);return}t&&p7(o.indexBuffer);let i=o.encoder??cy(n),d=i.beginRenderPass(this.#t());lv(n,d[q],this,t,s,!0),d.end(),f7(i,r,r.unwrap().logResources,o)}draw(t,s,r,o){this.#s(!1,n=>n.draw(t,s,r,o))}drawIndexed(t,s,r,o,n){this.#s(!0,i=>i.drawIndexed(t,s,r,o,n))}drawIndirect(t,s){let r=ca(t)?t:t.buffer,o=Gd(t,s,16,\"drawIndirect\");this.#s(!1,n=>n.drawIndirect(r,o))}drawIndexedIndirect(t,s){let r=ca(t)?t:t.buffer,o=Gd(t,s,20,\"drawIndexedIndirect\");this.#s(!0,n=>n.drawIndexedIndirect(r,o))}},MG=class G7{[q]=!0;options;#e;#t;#s;#r;#o;#n;constructor(t){this.options=t,this.#e=fh?.enabled?new M7:new k7}static precompiled(t,s){let r=new G7({root:t,slotBindings:[],descriptor:void 0});return r.#s=s,r}[ts](t){let{slotBindings:s}=this.options,{vertex:r,fragment:o,attribs:n={}}=this.options.descriptor??{};if(!r)return Ae(\"\",Ns,\"runtime\");this.#r=void 0,this.#o=void 0;let i=kG(r?.shell?.out,o?.shell?.in,Re(r)??\"<unnamed>\",Re(o)??\"<unnamed>\");return t.withVaryingLocations(i,()=>t.withSlots(s,()=>{let d;if(typeof r==\"function\"){let l=new _y(r,Object.fromEntries(Object.entries(n).map(([c,_])=>[c,ma[_.format]])),i);t.resolve(l),this.#r=l.autoIn.completeStruct.propTypes,d=l.autoOut.completeStruct}else d=t.resolve(r).dataType;if(o)if(typeof o==\"function\"){let l=Object.fromEntries(Object.entries(d.propTypes).filter(([,c])=>!Nn(c)));this.#o=t.resolve(new uy(o,l,i)).dataType}else t.resolve(o);return Ae(\"\",Ns,\"runtime\")}))}toString(){return\"renderPipelineCore\"}get performanceCallbackQuerySet(){if(this.options.root.enabledFeatures.has(\"timestamp-query\"))return this.#n??=(globalThis.__TYPEGPU_AUTONAME__??(t=>t))(this.options.root.createQuerySet(\"timestamp\",2),\"performanceCallbackQuerySet\")}initAsync(){if(this.#s!==void 0)return Promise.resolve();if(this.#t===void 0){let t=this.options.root.device,{resolutionResult:s,descriptor:r,connectedAttribs:o,fragmentOut:n}=this.resolveAndCreateShaderModule(),{usedBindGroupLayouts:i,catchall:d,logResources:l}=s;this.#t=t.createRenderPipelineAsync(r).then(c=>{this.#s={pipeline:c,usedBindGroupLayouts:i,catchall:d,logResources:l,usedVertexLayouts:o.usedVertexLayouts,fragmentOut:n},this.#e.measureCompile(t)}).finally(()=>{this.#t=void 0})}return this.#t}initSync(){if(this.#s!==void 0)return;if(this.#t!==void 0)throw new Error(\"'pipeline.initAsync()' was called and is not yet resolved.\");let t=this.options.root.device,{resolutionResult:s,descriptor:r,connectedAttribs:o,fragmentOut:n}=this.resolveAndCreateShaderModule(),{usedBindGroupLayouts:i,catchall:d,logResources:l}=s;this.#s={pipeline:(globalThis.__TYPEGPU_AUTONAME__??(c=>c))(t.createRenderPipeline(r),\"pipeline\"),usedBindGroupLayouts:i,catchall:d,logResources:l,usedVertexLayouts:o.usedVertexLayouts,fragmentOut:n},this.#e.measureCompile(t)}unwrap(){return this.initSync(),this.#s}resolveAndCreateShaderModule(){let{root:t,descriptor:s}=this.options;if(!s)throw new Error(\"Precompiled pipelines are never resolved again.\");let r=t.device,o=A7.filter(M=>t.enabledFeatures.has(E7[M])),n=al({names:t.nameRegistrySetting}),i=this.#e.measureResolve(()=>Am(this,{namespace:n,minify:t.minify,enableExtensions:o,shaderGenerator:t.shaderGeneratorClass?new t.shaderGeneratorClass:void 0,root:t})),{code:d,usedBindGroupLayouts:l,catchall:c}=i;c!==void 0&&l[c[0]]?.$name(`${Re(this)??\"<unnamed>\"} - Automatic Bind Group & Layout`),Gw(l,r.limits);let _=r.createShaderModule({label:`${Re(this)??\"<unnamed>\"} - Shader`,code:d}),{vertex:p,fragment:f,attribs:h={},targets:g}=s,x=jR(p?.shell?.in??this.#r??{},h),T=f?.shell?.returnType??this.#o,S=T?AG(T,g):[null],A={layout:r.createPipelineLayout({label:`${Re(this)??\"<unnamed>\"} - Pipeline Layout`,bindGroupLayouts:l.map(M=>t.unwrap(M))}),vertex:{module:_,buffers:x.bufferDefinitions}},E=Re(this);return E!==void 0&&(A.label=E),s.fragment&&(A.fragment={module:_,targets:S}),s.primitive&&(Oi(s.primitive.stripIndexFormat)?A.primitive={...s.primitive,stripIndexFormat:{u32:\"uint32\",u16:\"uint16\"}[s.primitive.stripIndexFormat.type]}:A.primitive=s.primitive),s.depthStencil&&(A.depthStencil=s.depthStencil),s.multisample&&(A.multisample=s.multisample),{resolutionResult:i,descriptor:A,connectedAttribs:x,fragmentOut:T}}};function kG(e={},t={},s,r){let o={},n=new Set;function i(l,c){o[l]=c,n.add(c)}for(let[l,c]of Object.entries(e)){let _=qa(c);_!==void 0&&i(l,_)}for(let[l,c]of Object.entries(t)){let _=qa(c);_!==void 0&&(o[l]===void 0?i(l,_):o[l]!==_&&fs.warn(\"locations-mismatched\",`Mismatched location between vertexFn (${s}) output (${o[l]}) and fragmentFn (${r}) input (${_}) for the key \"${l}\", using the location set on vertex output.`))}let d=0;for(let l of Object.keys(e??{}))if(!(Nn(e[l])||o[l]!==void 0)){for(;n.has(d);)d++;i(l,d)}return o}var Jb=class{#e=new WeakMap;#t;constructor(e){this.#t=e}getOrMake(e,...t){if(this.#e.has(e))return this.#e.get(e);let s=this.#t(e,...t);return this.#e.set(e,s),s}};function py(e){let t={argTypes:Object.values(e.in??{}),returnType:Ns,workgroupSize:e.workgroupSize,entryPoint:\"compute\"},s=mw(e.in??{});return Object.assign((o,...n)=>$G(t,e.workgroupSize,xm(o,...n),s),t)}function $G(e,t,s,r){let o=Hi(s,\"compute\",t);return{shell:e,$uses(n){return o.setExternals(\"userProvided\",n),this},[q]:!0,[Pr]:o,$name(n){return Tt(this,n),this},[ts](n){return n.withSlots([[nl,\"compute\"]],()=>o.resolve(n,[],e.returnType,r))},toString(){return`computeFn:${Re(o)??\"<unnamed>\"}`}}}function CG(e){if(e.includes(0))throw new Error(\"Size and workgroupSize cannot contain zeroes.\");return Ot(e[0]??1,e[1]??1,e[2]??1)}var RG=[Ot(1,1,1),Ot(256,1,1),Ot(16,16,1),Ot(8,8,4)],UG=class I_{resourceType=\"guarded-compute-pipeline\";[be];#e;#t;constructor(t,s,r,o){this.#e=t,this.#t=Ot(),this[be]={type:\"guarded-compute-pipeline\",device:t.device,pipeline:s,sizeUniform:r,workgroupSize:o,label:void 0}}with(t){if(!Ka(t))throw new Error(\"Guarded pipelines only accept bind groups in .with(). To record into passes or encoders, use a regular compute pipeline.\");return new I_(this.#e,this[be].pipeline.with(t),this[be].sizeUniform,this[be].workgroupSize)}withPerformanceCallback(t){return new I_(this.#e,this[be].pipeline.withPerformanceCallback(t),this[be].sizeUniform,this[be].workgroupSize)}withTimestampWrites(t){return new I_(this.#e,this[be].pipeline.withTimestampWrites(t),this[be].sizeUniform,this[be].workgroupSize)}dispatchThreads(...t){let s=CG(t),r=ac(cs(s).div(cs(this[be].workgroupSize)));YR(s,this.#t)||(this.#t=s,this[be].sizeUniform.write(s)),this[be].pipeline.dispatchWorkgroups(r.x,r.y,r.z)}initAsync(){return this[be].pipeline.initAsync()}initSync(){this[be].pipeline.initSync()}get pipeline(){return this[be].pipeline}get sizeUniform(){return this[be].sizeUniform}[q]=!0;get[Pr](){return this[be].pipeline}$name(t){return Tt(this,t),this}},zG=class pv{#e;#t;constructor(t,s){this.#e=t,this.#t=s}with(t,s){return new pv(this.#e,[...this.#t,[Jd(t)||el(t)?t.slot:t,s]])}createComputePipeline(t){return fG(this.#e(),this.#t,t)}createRenderPipeline(t){return EG({root:this.#e(),slotBindings:this.#t,descriptor:t})}createGuardedComputePipeline(t){let s=this.#e();if(t.length>=4)throw new Error(\"Guarded compute callback only supports up to three dimensions.\");let r=RG[t.length],o=gs([Y,Y,Y])(t);Re(o)===void 0&&o.$name(\"wrappedCallback\");let n=(globalThis.__TYPEGPU_AUTONAME__??(d=>d))(s.createUniform(Ot),\"sizeUniform\"),i=(globalThis.__TYPEGPU_AUTONAME__??(d=>d))(py({workgroupSize:r,in:{id:qr.globalInvocationId}})`{\n if (any(in.id >= sizeUniform)) {\n return;\n }\n wrappedCallback(in.id.x, in.id.y, in.id.z);\n}`.$uses({sizeUniform:n,wrappedCallback:o}),\"mainCompute\");return new UG(s,this.createComputePipeline({compute:i}),n,r)}pipe(t){let s=t(new Dw([]));return new pv(this.#e,[...this.#t,...s.bindings])}},D7=class extends zG{\"~unstable\";resourceType=\"root\";[be];device;nameRegistrySetting;shaderGeneratorClass;#e=new Jb(e=>e.unwrap(this));#t=new Jb(e=>e.unwrap(this));#s;[q];constructor(e,t,s,r,o,n){super(()=>this,[]),this.device=e,this.nameRegistrySetting=t,this.#s=r,this.shaderGeneratorClass=n,this[\"~unstable\"]=this,this[be]={type:\"root\",device:e,nameRegistrySetting:t,logOptions:o,minify:s,nonTransferablePriors:n?[\"shaderGeneratorClass\"]:void 0,label:void 0},this[q]={logOptions:o}}configureContext(e){let t=e.canvas.getContext(\"webgpu\");if(!t)throw new Error(\"Unable to initialize 'webgpu' context on the provided canvas.\");return t.configure({...e,device:this.device,format:e.format??navigator.gpu.getPreferredCanvasFormat()}),t}get enabledFeatures(){return new Set(this.device.features)}get minify(){return this[be].minify}createBuffer(e,t){return p_(this,e,t)}createUniform(e,t){return new Di(\"uniform\",p_(this,e,t).$usage(\"uniform\"))}createMutable(e,t){return new Di(\"mutable\",p_(this,e,t).$usage(\"storage\"))}createReadonly(e,t){return new Di(\"readonly\",p_(this,e,t).$usage(\"storage\"))}createQuerySet(e,t,s){return Iz(this,e,t,s)}createBindGroup(e,t){return new qw(this,e,t)}destroy(){sz(this.device),this.#s&&this.device.destroy()}createTexture(e){return az(e,this)}createSampler(e){return GU(e,this)}createComparisonSampler(e){return DU(e,this)}unwrap(e){if(dy(e))return e[q].rawEncoder;if(h7(e)||y7(e))return e[q].state.rawAccessed=!0,e[q].rawPass;if(Tm(e))return this.#e.getOrMake(e);if(Ka(e))return this.#t.getOrMake(e);if(Ic(e))return e.buffer.buffer;if(zd(e)){if(!e[q].unwrap)throw new Error(\"Cannot unwrap laid-out texture view as it has no underlying resource.\");return e[q].unwrap()}if(U7(e))return e.vertexLayout;let t=e[q];if(t?.materialize)return t.materialize();throw ny(e)||ay(e)?new Error(\"Cannot unwrap laid-out sampler.\"):new Error(`Unknown resource type: ${Oo(e)}`)}createCommandEncoder(e){return cy(this,e)}createRenderBundleEncoder(e){return lG(this,e)}};async function GG(e){let{adapter:t,device:s,unstable_names:r=\"strict\",unstable_minify:o=!1,unstable_logOptions:n,unstable_shaderGeneratorClass:i}=e??{},{optionalFeatures:d,...l}=s??{};if(!navigator.gpu)throw new Error(\"WebGPU is not supported by this browser.\");let c=await navigator.gpu.requestAdapter(t);if(!c)throw new Error(\"Could not find a compatible GPU\");let _=[];for(let p of l.requiredFeatures??[]){if(!c.features.has(p))throw new Error(`Requested feature \"${p}\" is not supported by the adapter.`);_.push(p)}for(let p of d??[])c.features.has(p)?_.push(p):fs.warn(\"webgpu-feature-missing\",`Optional feature \"${p}\" is not supported by the adapter.`);return new D7(await c.requestDevice({...l,requiredFeatures:_}),r,o,!0,n??{},i)}function DG(e){let{device:t,unstable_names:s=\"strict\",unstable_minify:r=!1,unstable_logOptions:o,unstable_shaderGeneratorClass:n}=e??{};return new D7(t,s,r,!1,o??{},n)}function L7(e,t){return new LG(e,t)}function F7(e,t){return new FG(e,t)}function my(e){let t=Li(),s=sp(t.unwrap(e.slot));for(;typeof s==\"function\"&&!qf(s)&&!K_(s)&&!Cd(s);)s=s(),Rc(s)&&(s=s.value);let r=im(s);if(r)return r;if(K_(s))return s[mr].call(t,[]);if(qf(s)||Cd(s)){let o=t.resolve(s);return t.withResetIndentLevel(()=>Ae(`${o.value}()`,e.schema,\"runtime\",o.possibleSideEffects))}t.pushMode(new tl);try{return Ae(Xa(e.schema,s),e.schema,\"constant\",!1)}finally{t.popMode(\"normal\")}}var B7=class mv{[Pr];[be];slot;static#e=void(mv.prototype[q]=!0,wa(mv.prototype,{asString(){return`${this.resourceType}:${Re(this)??\"<unnamed>\"}`},resolve(t){return t.resolveSnippet(my(this))}}));constructor(t,s,r=void 0){this[be]={type:t,schema:$c(s)?s:s(0),defaultValue:r,label:void 0},this.slot=Wc(r),this[Pr]=this.slot}get schema(){return this[be].schema}get defaultValue(){return this[be].defaultValue}$name(t){return Tt(this,t),this.defaultValue&&typeof this.defaultValue==\"function\"&&!Re(this.defaultValue)&&Tt(this.defaultValue,t),this}},LG=class fv extends B7{static#e=void(fv.prototype.resourceType=\"accessor\",Qn(fv.prototype,{codegenMode:{get(){return my(this)}},normalMode:{get(){throw new Error(\"`tgpu.accessor` relies on GPU resources and cannot be accessed outside of a compute dispatch or draw call. Use `tgpu.slot` for non-WGSL values instead.\")}}}));constructor(t,s=void 0){super(\"accessor\",t,s)}},FG=class vv extends B7{static#e=void(vv.prototype.resourceType=\"mutable-accessor\",Qn(vv.prototype,{codegenMode:{get(){return my(this)}},normalMode:{get(){throw new Error(\"`tgpu.mutableAccessor` relies on GPU resources and cannot be accessed outside of a compute dispatch or draw call. Use `tgpu.slot` for non-WGSL values instead.\")}}}));constructor(t,s=void 0){super(\"mutable-accessor\",t,s)}};function hv(e,t){return Array.isArray(e)?YG(e,t):IG(e)}function BG(e,t){return Array.isArray(e)?hv(e,t).code:hv(e).code}function IG(e){let{template:t,externals:s,unstable_shaderGenerator:r,names:o=\"strict\",unstable_minify:n,config:i,enableExtensions:d}=e;t||fs.warn(\"deprecated\",\"Calling resolve with an empty template is deprecated and will soon return an empty string. Consider using the 'tgpu.resolve(resolvableArray, options)' API instead.\");let l={[q]:!0,[ts](_){return Ae(gm(_,s,t??\"\"),Ns,\"runtime\")},toString:()=>\"<root>\"},c=I7(Object.values(s));return Am(l,{namespace:typeof o==\"string\"?al({names:o}):o,minify:n??c?.minify??!1,enableExtensions:d,shaderGenerator:r,config:i,root:c})}function YG(e,t){let{unstable_shaderGenerator:s,names:r=\"strict\",unstable_minify:o,config:n,enableExtensions:i}=t??{},d={[q]:!0,[ts](c){for(let _ of e)if(Tm(_))for(let p of Object.values(_[q]))c.resolve(p);else c.resolve(_);return Ae(\"\",Ns,\"runtime\")},toString:()=>\"<root>\"},l=I7(e);return Am(d,{namespace:typeof r==\"string\"?al({names:r}):r,minify:o??l?.minify??!1,enableExtensions:i,shaderGenerator:s,config:n,root:l})}function I7(e){let t=new Map;for(let s of e){let r=yv(s);if(r){let o=t.get(r)??new Set;t.set(r,o),o.add(s)}}if(t.size>1){let s=[...t.values()].map((r,o)=>`root ${o+1}: ${[...r].map(n=>Re(n)??\"<unnamed>\").join(\", \")}`).join(\"; \");throw new Error(`Found resources originating from different roots in a single resolve (${s}).`)}return[...t.keys()][0]}function yv(e){if(Jz(e)||fc(e)||xc(e)||ny(e)||ay(e))return e[q].root;if(Ic(e))return yv(e.buffer);if(zd(e))return yv(e?.[be]?.texture)}function Y7(e){if(Li())throw new Error(\"Cannot create tgpu.lazy objects during shader resolution.\");return new WG(e,void 0)}var WG=class Y_{[q];[co];static#e=void(Y_.prototype.resourceType=\"lazy\",Qn(wa(Y_.prototype,{asString:()=>\"lazy\",resolve(t){throw new Error(\"Unreachable, is never resolved directly\")}}),{codegenMode:{get(){return this.#t()}},normalMode:{get(){return this.#t()}}}));constructor(t,s){this[q]={compute:t},this[co]=s}get[$o](){let t=Li();if(!t)throw new Error(\"Cannot access tgpu.lazy's value outside of resolution.\");return sp(t.unwrap(this))}get $(){return this[$o]}#t(){let t=Li();if(!t)throw new Error(\"Cannot access tgpu.lazy's value outside of resolution.\");return sp(t.unwrap(this))}with(t,s){return new Y_(this[q].compute.bind(this),{inner:this[co]?.inner??this,pairs:[...this[co]?.pairs??[],[Jd(t)||el(t)?t.slot:t,s]]})}};function W7(e){let t={in:e.in,out:e.out,returnType:Fc(e.out),entryPoint:\"fragment\"};return Object.assign((r,...o)=>OG(t,xm(r,...o)),t)}function OG(e,t){let s=Hi(t,\"fragment\"),r=e.returnType;return typeof t==\"string\"&&hw(t,r,s),{shell:e,outputType:r,$uses(o){return s.setExternals(\"userProvided\",o),this},[q]:!0,[Pr]:s,$name(o){return Tt(this,o),$d(r)&&r.$name(`${o}_Output`),this},[ts](o){let n=mw(e.in??{},o.varyingLocations??{});return n.dataSchema&&$d(n.dataSchema)&&n.dataSchema.$name(`${Re(this)??\"\"}_Input`),typeof t==\"string\"&&s.setExternals(\"out\",{Out:r}),o.withSlots([[nl,\"fragment\"]],()=>s.resolve(o,[],e.returnType,n))},toString(){return`fragmentFn:${Re(s)??\"<unnamed>\"}`}}}function Em(e){if(Object.keys(e.out).length===0)throw new Error(\"A vertexFn output cannot be empty since it must include the 'position' builtin.\");let t={in:e.in,out:e.out,argTypes:e.in&&Object.keys(e.in).length!==0?[Fc(e.in)]:[],entryPoint:\"vertex\"};return Object.assign((r,...o)=>VG(t,xm(r,...o)),t)}function VG(e,t){let s=Hi(t,\"vertex\"),r=x4(e.in??{});return{shell:e,$uses(o){return s.setExternals(\"userProvided\",o),this},[q]:!0,[Pr]:s,$name(o){return Tt(this,o),this},[ts](o){let n=Fc(e.out,o.varyingLocations).$name(`${Re(this)??\"\"}_Output`);return typeof t==\"string\"&&s.setExternals(\"out\",{Out:n}),o.withSlots([[nl,\"vertex\"]],()=>s.resolve(o,[],n,r))},toString(){return`vertexFn:${Re(s)??\"<unnamed>\"}`}}}function NG(e){return new qG(e)}var qG=class{[q]=!0;#e;#t;constructor(e){this.#t=e}$uses(e){if(this.#e!==void 0)throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");return this.#e=e,this}[ts](e){let t=gm(e,this.#e??{},this.#t);return e.addDeclaration(t),Ae(\"\",Ns,\"constant\")}toString(){return`declare: ${this.#t}`}};function XG(e,t,s=\"runtime\",r=!0){return new HG(e,t,s,r)}var HG=class gv{dataType;origin;possibleSideEffects;#e;#t;static#s=void(gv.prototype[q]=!0,Qn(wa(gv.prototype,{asString(){return`raw(${String(this.dataType)}): \"${this.#e}\"`},resolve(t){return Ae(gm(t,this.#t??{},this.#e),this.dataType,this.origin,this.possibleSideEffects)}}),{codegenMode:{getBaseSnippet(t){return Ae(t,this.dataType,this.origin,this.possibleSideEffects)}},normalMode:{get(){throw new Error(\"Raw code snippets can only be used on the GPU.\")}}}));constructor(t,s,r,o){this.dataType=s,this.origin=r,this.possibleSideEffects=o,this.#e=t}$uses(t){if(this.#t!==void 0)throw new Error(\"Cannot call '$uses' multiple times. If you wish to override dependencies, use slots or accessors instead.\");return this.#t=t,this}};function jG(e){let t=Li()??new o7({minify:!1,namespace:al()}),s=[1,1,1],r=[1,1,1],o=[s[0]*r[0],s[1]*r[1],s[2]*r[2]],n=new Map,i=Array.from({length:s[0]},()=>Array.from({length:s[1]},()=>Array.from({length:s[2]},()=>new Map))),d=Array.from({length:o[0]},()=>Array.from({length:o[1]},()=>Array.from({length:o[2]},()=>new Map))),l=Array.from({length:o[0]},(c,_)=>Array.from({length:o[1]},(p,f)=>Array.from({length:o[2]},(h,g)=>{let x=Math.floor(_/r[0]),T=Math.floor(f/r[1]),S=Math.floor(g/r[2]);return new Vk(n,{private:d[_][f][g],workgroup:i[x][T][S]})})));t.pushMode(l[0][0][0]);try{return{value:v6(t,e),buffers:n,privateVars:d,workgroupVars:i}}finally{t.popMode(\"simulate\")}}var KG=Pn({accessor:()=>rD,comptime:()=>QG,computeFn:()=>JG,const:()=>ZG,declare:()=>NG,derived:()=>nD,fn:()=>eD,fragmentFn:()=>tD,mutableAccessor:()=>oD,namespace:()=>al,privateVar:()=>iD,rawCodeSnippet:()=>XG,simulate:()=>jG,slot:()=>aD,vertexFn:()=>sD,vertexLayout:()=>lD,workgroupVar:()=>dD}),ZG=Qh,QG=nn,JG=py,eD=gs,tD=W7,sD=Em,rD=L7,oD=F7,nD=Y7,aD=Wc,iD=Sm,dD=Xw,lD=R7,cD=Pn({accessor:()=>L7,bindGroupLayout:()=>Vw,comptime:()=>nn,computeFn:()=>py,const:()=>Qh,fn:()=>gs,fragmentFn:()=>W7,init:()=>GG,initFromDevice:()=>DG,lazy:()=>Y7,mutableAccessor:()=>F7,privateVar:()=>Sm,resolve:()=>BG,resolveWithContext:()=>hv,slot:()=>Wc,unroll:()=>Mw,vertexFn:()=>Em,vertexLayout:()=>R7,workgroupVar:()=>Xw,\"~unstable\":()=>KG});we({name:\"workgroupBarrier\",normalImpl:\"workgroupBarrier is a no-op outside of CODEGEN mode.\",signature:{argTypes:[],returnType:Ns},codegenImpl:()=>\"workgroupBarrier()\",sideEffects:!0});we({name:\"storageBarrier\",normalImpl:\"storageBarrier is a no-op outside of CODEGEN mode.\",signature:{argTypes:[],returnType:Ns},codegenImpl:()=>\"storageBarrier()\",sideEffects:!0});we({name:\"textureBarrier\",normalImpl:\"textureBarrier is a no-op outside of CODEGEN mode.\",signature:{argTypes:[],returnType:Ns},codegenImpl:()=>\"textureBarrier()\",sideEffects:!0});var Ta=\"Atomic operations are not supported outside of CODEGEN mode.\",SO=we({name:\"atomicLoad\",normalImpl:Ta,signature:e=>{if(!rm(e))throw new Error(`Invalid atomic type: ${Oo(e)}`);return{argTypes:[e],returnType:e.inner}},codegenImpl:(e,[t])=>fe`atomicLoad(&${t})`,sideEffects:!0}),uD=e=>{if(!rm(e))throw new Error(`Invalid atomic type: ${Oo(e)}`);return{argTypes:[e,e.inner.type===\"u32\"?Y:oe],returnType:Ns}},ji=e=>{if(!rm(e))throw new Error(`Invalid atomic type: ${Oo(e)}`);let t=e.inner.type===\"u32\"?Y:oe;return{argTypes:[e,t],returnType:t}},AO=we({name:\"atomicStore\",normalImpl:Ta,signature:uD,codegenImpl:(e,[t,s])=>fe`atomicStore(&${t}, ${s})`,sideEffects:!0}),EO=we({name:\"atomicAdd\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicAdd(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicSub\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicSub(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicMax\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicMax(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicMin\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicMin(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicAnd\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicAnd(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicOr\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicOr(&${t}, ${s})`,sideEffects:!0});we({name:\"atomicXor\",normalImpl:Ta,signature:ji,codegenImpl:(e,[t,s])=>fe`atomicXor(&${t}, ${s})`,sideEffects:!0});var Sa=\"Derivative builtins are not allowed on the CPU\",Dd=we({name:\"dpdx\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdx(${t})`,sideEffects:!1});we({name:\"dpdxCoarse\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdxCoarse(${t})`,sideEffects:!1});we({name:\"dpdxFine\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdxFine(${t})`,sideEffects:!1});var Ld=we({name:\"dpdy\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdy(${t})`,sideEffects:!1});we({name:\"dpdyCoarse\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdyCoarse(${t})`,sideEffects:!1});we({name:\"dpdyFine\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`dpdyFine(${t})`,sideEffects:!1});var As=we({name:\"fwidth\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`fwidth(${t})`,sideEffects:!1});we({name:\"fwidthCoarse\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`fwidthCoarse(${t})`,sideEffects:!1});we({name:\"fwidthFine\",normalImpl:Sa,signature:e=>({argTypes:[e],returnType:e}),codegenImpl:(e,[t])=>fe`fwidthFine(${t})`,sideEffects:!1});function Oc(e){return e.filter(t=>t!==void 0)}function _D(e,t,s,r,o){throw new vr(\"Texture sampling relies on GPU resources and cannot be executed outside of a draw call\")}we({name:\"textureSample\",normalImpl:_D,codegenImpl:(e,t)=>e.gen.emitCall(\"textureSample\",[],Oc(t)),signature:(...e)=>({argTypes:e,returnType:e[0].type.startsWith(\"texture_depth\")?a:lt}),sideEffects:!1});function pD(e,t,s,r,o,n){throw new vr(\"Texture sampling with bias relies on GPU resources and cannot be executed outside of a draw call\")}we({name:\"textureSampleBias\",normalImpl:pD,codegenImpl:(e,t)=>e.gen.emitCall(\"textureSampleBias\",[],Oc(t)),signature:(...e)=>({argTypes:e,returnType:lt}),sideEffects:!1});function mD(e,t,s,r,o,n){throw new vr(\"Texture sampling relies on GPU resources and cannot be executed outside of a draw call\")}var ip=we({name:\"textureSampleLevel\",normalImpl:mD,codegenImpl:(e,t)=>e.gen.emitCall(\"textureSampleLevel\",[],Oc(t)),signature:(...e)=>({argTypes:e,returnType:e[0].type.startsWith(\"texture_depth\")?a:lt}),sideEffects:!1});function fD(e,t,s){throw new vr(\"`textureLoad` relies on GPU resources and cannot be executed outside of a draw call\")}var at=we({name:\"textureLoad\",normalImpl:fD,codegenImpl:(e,t)=>e.gen.emitCall(\"textureLoad\",[],Oc(t)),signature:(...e)=>{let t=e[0];if(Z6(t)){let r=t.type.startsWith(\"texture_depth\"),o=t.sampleType;return{argTypes:e,returnType:r?a:o.type===\"f32\"?lt:o.type===\"u32\"?es:ps}}if(dC(t))return{argTypes:e,returnType:lt};let s=t.format;return{argTypes:e,returnType:Yc(s).vectorType}},sideEffects:!1});function vD(e,t,s,r){throw new vr(\"`textureStore` relies on GPU resources and cannot be executed outside of a draw call\")}var Co=we({name:\"textureStore\",normalImpl:vD,codegenImpl:(e,t)=>fe`textureStore(${t})`,signature:(...e)=>({argTypes:e,returnType:Ns}),sideEffects:!0});function hD(e,t){throw new vr(\"`textureDimensions` relies on GPU resources and cannot be executed outside of a draw call\")}var PO=we({name:\"textureDimensions\",normalImpl:hD,codegenImpl:(e,t)=>e.gen.emitCall(\"textureDimensions\",[],Oc(t)),signature:(...e)=>{let t=e[0].dimension;return t===\"1d\"?{argTypes:e,returnType:Y}:t===\"3d\"?{argTypes:e,returnType:Ot}:{argTypes:e,returnType:ns}},sideEffects:!1}),yD=(...e)=>{throw new Error(\"Texture gather relies on GPU resources and cannot be executed outside of a draw call\")},gD={f32:lt,i32:ps,u32:es};we({name:\"textureGather\",normalImpl:yD,codegenImpl:(e,t)=>fe`textureGather(${t})`,signature:(...e)=>{if(e[0].type.startsWith(\"texture\")){let[i,d,l,c,..._]=e;return{argTypes:i.type===\"texture_depth_2d_array\"||i.type===\"texture_depth_cube_array\"?[i,d,l,[Y,oe],..._]:e,returnType:lt}}let[t,s,r,o,...n]=e;return{argTypes:s.type===\"texture_2d_array\"||s.type===\"texture_cube_array\"?[[Y,oe],s,r,o,[Y,oe],...n]:[[Y,oe],s,r,o,...n],returnType:gD[s.sampleType.type]}},sideEffects:!1});function xD(e,t,s,r,o,n){throw new vr(\"Texture comparison sampling relies on GPU resources and cannot be executed outside of a draw call\")}we({name:\"textureSampleCompare\",normalImpl:xD,codegenImpl:(e,t)=>fe`textureSampleCompare(${t})`,signature:(...e)=>({argTypes:e,returnType:a}),sideEffects:!1});function bD(e,t,s,r,o,n){throw new vr(\"Texture comparison sampling with level relies on GPU resources and cannot be executed outside of a draw call\")}we({name:\"textureSampleCompareLevel\",normalImpl:bD,codegenImpl:(e,t)=>fe`textureSampleCompareLevel(${t})`,signature:(...e)=>({argTypes:e,returnType:a}),sideEffects:!1});function wD(e,t,s){throw new vr(\"Texture sampling with base clamp to edge is not supported outside of GPU mode.\")}function TD(e,t,s,r,o,n,i){throw new vr(\"Texture sampling with gradients relies on GPU resources and cannot be executed outside of a draw call\")}we({name:\"textureSampleGrad\",normalImpl:TD,codegenImpl:(e,t)=>fe`textureSampleGrad(${t})`,signature:(...e)=>({argTypes:e,returnType:lt}),sideEffects:!1});we({name:\"textureSampleBaseClampToEdge\",normalImpl:wD,codegenImpl:(e,t)=>fe`textureSampleBaseClampToEdge(${t})`,signature:(...e)=>({argTypes:e,returnType:lt}),sideEffects:!1});var y=cD,v_=\"uniforms\";function O7(e){return e.replace(/[^a-zA-Z0-9_]/g,\"_\")}var SD=new Set([\"alias\",\"break\",\"case\",\"const\",\"const_assert\",\"continue\",\"continuing\",\"default\",\"diagnostic\",\"discard\",\"else\",\"enable\",\"false\",\"fn\",\"for\",\"if\",\"let\",\"loop\",\"override\",\"requires\",\"return\",\"struct\",\"switch\",\"true\",\"var\",\"while\",\"NULL\",\"Self\",\"abstract\",\"active\",\"alignas\",\"alignof\",\"as\",\"asm\",\"asm_fragment\",\"async\",\"attribute\",\"auto\",\"await\",\"become\",\"cast\",\"catch\",\"class\",\"co_await\",\"co_return\",\"co_yield\",\"coherent\",\"column_major\",\"common\",\"compile\",\"compile_fragment\",\"concept\",\"const_cast\",\"consteval\",\"constexpr\",\"constinit\",\"crate\",\"debugger\",\"decltype\",\"delete\",\"demote\",\"demote_to_helper\",\"do\",\"dynamic_cast\",\"enum\",\"explicit\",\"export\",\"extends\",\"extern\",\"external\",\"fallthrough\",\"filter\",\"final\",\"finally\",\"friend\",\"from\",\"fxgroup\",\"get\",\"goto\",\"groupshared\",\"highp\",\"impl\",\"implements\",\"import\",\"inline\",\"instanceof\",\"interface\",\"layout\",\"lowp\",\"macro\",\"macro_rules\",\"match\",\"mediump\",\"meta\",\"mod\",\"module\",\"move\",\"mut\",\"mutable\",\"namespace\",\"new\",\"nil\",\"noexcept\",\"noinline\",\"nointerpolation\",\"non_coherent\",\"noncoherent\",\"noperspective\",\"null\",\"nullptr\",\"of\",\"operator\",\"package\",\"packoffset\",\"partition\",\"pass\",\"patch\",\"pixelfragment\",\"precise\",\"precision\",\"premerge\",\"priv\",\"protected\",\"pub\",\"public\",\"readonly\",\"ref\",\"regardless\",\"register\",\"reinterpret_cast\",\"require\",\"resource\",\"restrict\",\"self\",\"set\",\"shared\",\"sizeof\",\"smooth\",\"snorm\",\"static\",\"static_assert\",\"static_cast\",\"std\",\"subroutine\",\"super\",\"target\",\"template\",\"this\",\"thread_local\",\"throw\",\"trait\",\"try\",\"type\",\"typedef\",\"typeid\",\"typename\",\"typeof\",\"union\",\"unless\",\"unorm\",\"unsafe\",\"unsized\",\"use\",\"using\",\"varying\",\"virtual\",\"volatile\",\"wgsl\",\"where\",\"with\",\"writeonly\",\"yield\",\"sampler\",\"uniform\",\"storage\"]);function AD(e){let t=O7(e);return SD.has(t)?`${t}_`:t}function yn(e){return`n_${O7(e)}`}function xv(e){return e===\"vec2\"?2:e===\"vec3\"?3:4}function V7(e){let t=e.type;return t===\"vec2f\"||t===\"vec2i\"||t===\"vec2u\"?\"vec2\":t===\"vec3f\"||t===\"vec3i\"||t===\"vec3u\"?\"vec3\":t===\"vec4f\"||t===\"vec4i\"||t===\"vec4u\"?\"vec4\":\"scalar\"}function ED(e){return e.type===\"array\"}function N7(e){if(typeof e==\"number\"||typeof e==\"boolean\")return a;if(e&&typeof e==\"object\"){let t=e.kind;if(typeof t==\"string\"){if(t.startsWith(\"vec2\"))return u;if(t.startsWith(\"vec3\"))return v;if(t.startsWith(\"vec4\"))return b}if(Array.isArray(e))return zt(a,e.length||1);let s=e;if(\"w\"in s)return b;if(\"z\"in s)return v;if(\"x\"in s&&\"y\"in s)return u}return Array.isArray(e)?zt(a,e.length||1):a}function bv(e,t){let s=e;if(s&&typeof s==\"object\"&&\"data\"in s&&!(\"x\"in s)&&(s=s.data),typeof s==\"number\")return new Array(t).fill(s);if(s instanceof q7)return s.toArray().slice(0,t);if(Array.isArray(s))return e3(s,t);if(s&&typeof s==\"object\"){let r=s;if(\"x\"in r){let o=[r.x,r.y??0];return t>=3&&o.push(r.z??0),t>=4&&o.push(r.w??0),o.slice(0,t)}if(typeof r.length==\"number\")return e3(Array.from(r),t)}throw new Error(`[uniformStore] cannot coerce value to a ${t}-component vector: ${String(e)}`)}function e3(e,t){let s=e.slice(0,t);for(;s.length<t;)s.push(0);return s}function t3(e){let t=e;if(t&&typeof t==\"object\"&&\"data\"in t&&(t=t.data),typeof t==\"number\")return t;if(typeof t==\"boolean\")return t?1:-1;let s=Number(t);return Number.isFinite(s)?s:0}var s3=new Set;function PD(e){if(e==null)return!0;let t=typeof e;if(t===\"number\"||t===\"boolean\"||t===\"string\")return!0;if(t!==\"object\")return!1;if(Array.isArray(e))return!0;let s=e;return!!(typeof s.kind==\"string\"&&s.kind.startsWith(\"vec\")||\"x\"in s&&\"y\"in s||typeof s.length==\"number\"||\"data\"in s)}var q7=class{constructor(e){this.handle=e}get n(){return this.handle._componentCount}component(e){return this.handle._mirror[e]??0}write(e,t){this.handle._mirror[e]=t,this.handle._enqueue()}get x(){return this.component(0)}set x(e){this.write(0,e)}get y(){return this.component(1)}set y(e){this.write(1,e)}get z(){return this.component(2)}set z(e){this.write(2,e)}get w(){return this.component(3)}set w(e){this.write(3,e)}get r(){return this.component(0)}set r(e){this.write(0,e)}get g(){return this.component(1)}set g(e){this.write(1,e)}get b(){return this.component(2)}set b(e){this.write(2,e)}get a(){return this.component(3)}set a(e){this.write(3,e)}copy(e){let t=bv(e,this.n);for(let s=0;s<this.n;s++)this.handle._mirror[s]=t[s];return this.handle._enqueue(),this}set(...e){for(let t=0;t<this.n&&t<e.length;t++)this.handle._mirror[t]=e[t];return this.handle._enqueue(),this}toArray(){return this.handle._mirror.slice(0,this.n)}},An=class{gpuPath;accessorPath;transform;cpu;schema;_componentCount;_mirror;_raw;_kind;_view;_sink;constructor(e){this._sink=e.sink,this.gpuPath=e.gpuPath,this.accessorPath=`${e.gpuPath[0]}.${e.gpuPath[1]}`,this.transform=e.transform,this.cpu=e.cpu??!1,this.schema=e.schema,this._kind=this.cpu||!e.schema?\"scalar\":V7(e.schema),this._componentCount=this._kind===\"scalar\"?1:xv(this._kind),this.cpu?(this._mirror=[],this._raw=e.initial):this._kind===\"scalar\"?this._mirror=[t3(e.initial)]:(this._mirror=bv(e.initial,this._componentCount),this._view=new q7(this))}_enqueue(){this.cpu||this._sink.markScalar(this)}_patchValue(){return this._kind===\"scalar\"?this._mirror[0]:this._mirror.slice(0,this._componentCount)}get value(){return this.cpu?this._raw:this._kind===\"scalar\"?this._mirror[0]:this._view}set value(e){if(this.cpu){this._raw=e;return}if(this._kind===\"scalar\")this._mirror[0]=t3(e);else{let t=bv(e,this._componentCount);for(let s=0;s<this._componentCount;s++)this._mirror[s]=t[s]}this._enqueue()}setFromRaw(e){if(this.cpu){this._raw=e;return}this.value=this.transform?this.transform(e):e}setComponents(...e){if(this.cpu||this._kind===\"scalar\"){e.length&&(this.value=e[0]);return}for(let t=0;t<this._componentCount&&t<e.length;t++)this._mirror[t]=e[t];this._enqueue()}},bc=class{gpuPath;accessorPath;transform;schema;length;elementKind;_mirror;_sink;constructor(e){this._sink=e.sink,this.gpuPath=e.gpuPath,this.accessorPath=`${e.gpuPath[0]}.${e.gpuPath[1]}`,this.transform=e.transform,this.schema=e.schema,this.length=e.schema.elementCount,this.elementKind=V7(e.schema.elementType),this._mirror=e.initial?e.initial.slice():new Array(this.flatLength).fill(0)}get flatLength(){return this.length*(this.elementKind===\"scalar\"?1:xv(this.elementKind))}get array(){return this._mirror}set array(e){e!==this._mirror&&(this._mirror=e.slice()),this._sink.markArray(this,\"all\")}setElement(e,t){this._mirror[e]=t,this._sink.markArray(this,e)}get componentsPerElement(){return this.elementKind===\"scalar\"?1:xv(this.elementKind)}_wholeArray(){let e=this._mirror.slice(0,this.flatLength),t=this.componentsPerElement;if(t===1)return e;let s=[];for(let r=0;r<this.length;r++)s.push(e.slice(r*t,(r+1)*t));return s}_elementAt(e){return this._mirror[e]}_elementTuple(e){let t=this.componentsPerElement;return this._mirror.slice(e*t,(e+1)*t)}},MD=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({time:a,deltaTime:a,frame:a,viewportSize:u,logicalViewportSize:u,aspect:a,pointer:u,pointerActive:a}),\"SystemUniforms\"),kD={time:0,deltaTime:0,frame:0,viewportSize:[1,1],logicalViewportSize:[1,1],aspect:1,pointer:[.5,.5],pointerActive:0};function X7(e,t={}){let s=t.systemSchema??MD,r={...kD,...t.systemInitial??{}},o=new Map,n=new Map,i={},d=s,l=!1,c=new Set,_=new Map,p=new Map,f={markScalar(A){c.add(A)},markArray(A,E){if(E===\"all\"){_.set(A,\"all\");return}let M=_.get(A);M!==\"all\"&&(M?M.add(E):_.set(A,new Set([E])))}},h;function g(A,E){let M={},$={};for(let L of E){let B=AD(L.name),D=L.transform?L.transform(L.initial):L.initial,G=L.cpu??typeof D==\"string\";if(L.transform&&!G&&!PD(D)&&!s3.has(L.transform)&&(s3.add(L.transform),console.warn(`[gpu] prop transform for \"${L.name}\" returned a non-packable value \\u2014 the uniform field will be NaN. A prop transform must return a number, boolean, vector, or array (or a string for cpu-only props).`,D)),G){M[L.name]=new An({sink:f,gpuPath:[A,B],initial:D,transform:L.transform,cpu:!0});continue}let I=D&&typeof D==\"object\"&&\"data\"in D?D.data:D,X=L.schema??N7(I);if($[B]=X,ED(X)){let H=new bc({sink:f,gpuPath:[A,B],schema:X,initial:L.initial,transform:L.transform});M[L.name]=H}else{let H=new An({sink:f,gpuPath:[A,B],schema:X,initial:D,transform:L.transform});M[L.name]=H}}return{handles:M,struct:(globalThis.__TYPEGPU_AUTONAME__??(L=>L))(Ct($),\"struct\")}}function x(){if(h)throw new Error(\"[uniformStore] cannot register fields after finalize()\")}function T(){let A={};for(let[E,M]of n)A[E]=S(M,E);return A._sys=S(i,\"_sys\"),A}function S(A,E){let M={};for(let $ of Object.values(A))$ instanceof bc?M[$.gpuPath[1]]=$._wholeArray():$.cpu||(M[$.gpuPath[1]]=$._patchValue());if(E)for(let $ of p.get(E)??[])M[$]=0;return M}return{get schema(){return h?.schema},get layout(){return h?.layout},get buffer(){return h?.buffer},get bindGroup(){return h?.bindGroup},get systemHandles(){return i},defineNode(A,E){x();let M=yn(A),{handles:$,struct:L}=g(M,E);return o.set(M,L),n.set(M,$),$},defineSystem(A){if(x(),A&&A.length){let E=g(\"_sys\",A);i=E.handles,d=E.struct}else{let E=g(\"_sys\",Object.entries(s.propTypes).map(([M,$])=>({name:M,schema:$,initial:r[M]??0})));i=E.handles,d=E.struct}return l=!0,i},finalize(){if(h)return h;l||this.defineSystem();let A=(I,X)=>{if(Object.keys(X.propTypes).length===0){let Q=[\"_pad0\",\"_pad1\",\"_pad2\",\"_pad3\"];return p.set(I,Q),Ct(Object.fromEntries(Q.map(de=>[de,a])))}let H=X,ee=[];for(;cb(H)%16!==0;){let Q=`_pad${ee.length}`;for(;Q in X.propTypes;)Q=`_${Q}`;ee.push(Q);let de={...X.propTypes};for(let Ee of ee)de[Ee]=a;H=(globalThis.__TYPEGPU_AUTONAME__??(Ee=>Ee))(Ct(de),\"padded\")}return ee.length&&p.set(I,ee),H},E={};for(let[I,X]of o)E[I]=A(I,X);E._sys=A(\"_sys\",d);let M=(globalThis.__TYPEGPU_AUTONAME__??(I=>I))(Ct(E),\"combined\"),$=cb(M),L=e.device?.limits?.maxUniformBufferBindingSize,B=typeof L==\"number\"&&L>0?L:65536;if($>B)throw new od(\"limit-exceeded\",`[gpu] this composition needs ${$} bytes of uniform data across ${o.size} nodes, but the device caps a uniform binding at ${B} bytes. Reduce the number of layers.`);let D=(globalThis.__TYPEGPU_AUTONAME__??(I=>I))(e.createBuffer(M).$usage(\"uniform\"),\"buffer\"),G=(globalThis.__TYPEGPU_AUTONAME__??(I=>I))(y.bindGroupLayout({[v_]:{uniform:M}}),\"layout\");return h={schema:M,layout:G,buffer:D,bindGroup:e.createBindGroup(G,{[v_]:D}),uniformEntryKey:v_},this.writeAll(),h},flush(){if(!h||c.size===0&&_.size===0)return;let A={},E=M=>A[M]??={};for(let M of c)E(M.gpuPath[0])[M.gpuPath[1]]=M._patchValue();for(let[M,$]of _){let L=E(M.gpuPath[0]);if($===\"all\")L[M.gpuPath[1]]=M._wholeArray();else if(M.componentsPerElement===1){let B={};for(let D of $)B[D]=M._elementAt(D);L[M.gpuPath[1]]=B}else{let B=M.componentsPerElement,D={};for(let G of $){let I=Math.floor(G/B);D[I]=M._elementTuple(I)}L[M.gpuPath[1]]=D}}h.buffer.patch(A),c.clear(),_.clear()},writeAll(){h&&(h.buffer.write(T()),c.clear(),_.clear())},gpuAccessor(A,E=\"layout\"){return`${E}.$.${v_}.${A.accessorPath}`},destroy(){h?.buffer.destroy?.(),h=void 0,o.clear(),n.clear(),c.clear(),_.clear(),p.clear()}}}function H7(e,t){if(e instanceof bc){Array.isArray(t)&&(e.array=t);return}e.setFromRaw(t)}var Qe=Math.PI/180;180/Math.PI;var ko=Math.PI,Et=Math.PI*2,_o=Et,dp=Math.PI/2,Za=Math.sqrt(3),$D=2.3999632297286535,lo=y.fn([Y,oe],Y)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return t<<Y(s)|t>>Y(__tsover_sub(oe(32),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"k\"}],body:[0,[[10,[1,[1,\"x\",\"<<\",[6,\"d.u32\",[\"k\"]]],\"|\",[1,\"x\",\">>\",[6,\"d.u32\",[[1,[6,\"d.i32\",[[5,\"32\"]]],\"-\",\"k\"]]]]]]]]},externals:{\"d.u32\":()=>Y,\"d.i32\":()=>oe}})&&e.f)({})),Fd=y.fn([Y,Y,Y],Y)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=t,n=s,i=r;return i=i^n,i=__tsover_sub(i,lo(n,oe(14))),o=o^i,o=__tsover_sub(o,lo(i,oe(11))),n=n^o,n=__tsover_sub(n,lo(o,oe(25))),i=i^n,i=__tsover_sub(i,lo(n,oe(16))),o=o^i,o=__tsover_sub(o,lo(i,oe(4))),n=n^o,n=__tsover_sub(n,lo(o,oe(14))),i=i^n,i=__tsover_sub(i,lo(n,oe(24))),i}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"a0\"},{type:\"i\",name:\"b0\"},{type:\"i\",name:\"c0\"}],body:[0,[[12,\"a\",\"a0\"],[12,\"b\",\"b0\"],[12,\"c\",\"c0\"],[2,\"c\",\"=\",[1,\"c\",\"^\",\"b\"]],[2,\"c\",\"=\",[1,\"c\",\"-\",[6,\"mxRotl32\",[\"b\",[6,\"d.i32\",[[5,\"14\"]]]]]]],[2,\"a\",\"=\",[1,\"a\",\"^\",\"c\"]],[2,\"a\",\"=\",[1,\"a\",\"-\",[6,\"mxRotl32\",[\"c\",[6,\"d.i32\",[[5,\"11\"]]]]]]],[2,\"b\",\"=\",[1,\"b\",\"^\",\"a\"]],[2,\"b\",\"=\",[1,\"b\",\"-\",[6,\"mxRotl32\",[\"a\",[6,\"d.i32\",[[5,\"25\"]]]]]]],[2,\"c\",\"=\",[1,\"c\",\"^\",\"b\"]],[2,\"c\",\"=\",[1,\"c\",\"-\",[6,\"mxRotl32\",[\"b\",[6,\"d.i32\",[[5,\"16\"]]]]]]],[2,\"a\",\"=\",[1,\"a\",\"^\",\"c\"]],[2,\"a\",\"=\",[1,\"a\",\"-\",[6,\"mxRotl32\",[\"c\",[6,\"d.i32\",[[5,\"4\"]]]]]]],[2,\"b\",\"=\",[1,\"b\",\"^\",\"a\"]],[2,\"b\",\"=\",[1,\"b\",\"-\",[6,\"mxRotl32\",[\"a\",[6,\"d.i32\",[[5,\"14\"]]]]]]],[2,\"c\",\"=\",[1,\"c\",\"^\",\"b\"]],[2,\"c\",\"=\",[1,\"c\",\"-\",[6,\"mxRotl32\",[\"b\",[6,\"d.i32\",[[5,\"24\"]]]]]]],[10,\"c\"]]]},externals:{mxRotl32:()=>lo,\"d.i32\":()=>oe}})&&e.f)({})),Bd=3735928559,Gl=y.fn([oe,oe],Y)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Y(2),o=__tsover_add(__tsover_add(Y(Bd),r<<Y(2)),Y(13));return Fd(__tsover_add(o,Y(t)),__tsover_add(o,Y(s)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"}],body:[0,[[13,\"len\",[6,\"d.u32\",[[5,\"2\"]]]],[13,\"seed\",[1,[1,[6,\"d.u32\",[\"DEADBEEF\"]],\"+\",[1,\"len\",\"<<\",[6,\"d.u32\",[[5,\"2\"]]]]],\"+\",[6,\"d.u32\",[[5,\"13\"]]]]],[13,\"a\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"x\"]]]],[13,\"b\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"y\"]]]],[10,[6,\"mxBjfinal\",[\"a\",\"b\",\"seed\"]]]]]},externals:{\"d.u32\":()=>Y,DEADBEEF:()=>Bd,mxBjfinal:()=>Fd}})&&e.f)({})),Yo=y.fn([oe,oe,oe],Y)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Y(3),n=__tsover_add(__tsover_add(Y(Bd),o<<Y(2)),Y(13));return Fd(__tsover_add(n,Y(t)),__tsover_add(n,Y(s)),__tsover_add(n,Y(r)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"z\"}],body:[0,[[13,\"len\",[6,\"d.u32\",[[5,\"3\"]]]],[13,\"seed\",[1,[1,[6,\"d.u32\",[\"DEADBEEF\"]],\"+\",[1,\"len\",\"<<\",[6,\"d.u32\",[[5,\"2\"]]]]],\"+\",[6,\"d.u32\",[[5,\"13\"]]]]],[13,\"a\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"x\"]]]],[13,\"b\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"y\"]]]],[13,\"c\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"z\"]]]],[10,[6,\"mxBjfinal\",[\"a\",\"b\",\"c\"]]]]]},externals:{\"d.u32\":()=>Y,DEADBEEF:()=>Bd,mxBjfinal:()=>Fd}})&&e.f)({})),h_=y.fn([oe,oe,oe,oe],Y)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Y(4),i=__tsover_add(__tsover_add(Y(Bd),n<<Y(2)),Y(13)),d=__tsover_add(i,Y(t)),l=__tsover_add(i,Y(s)),c=__tsover_add(i,Y(r));return d=__tsover_sub(d,c),d=d^lo(c,oe(4)),c=__tsover_add(c,l),l=__tsover_sub(l,d),l=l^lo(d,oe(6)),d=__tsover_add(d,c),c=__tsover_sub(c,l),c=c^lo(l,oe(8)),l=__tsover_add(l,d),d=__tsover_sub(d,c),d=d^lo(c,oe(16)),c=__tsover_add(c,l),l=__tsover_sub(l,d),l=l^lo(d,oe(19)),d=__tsover_add(d,c),c=__tsover_sub(c,l),c=c^lo(l,oe(4)),l=__tsover_add(l,d),d=__tsover_add(d,Y(o)),Fd(d,l,c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"z\"},{type:\"i\",name:\"xx\"}],body:[0,[[13,\"len\",[6,\"d.u32\",[[5,\"4\"]]]],[13,\"seed\",[1,[1,[6,\"d.u32\",[\"DEADBEEF\"]],\"+\",[1,\"len\",\"<<\",[6,\"d.u32\",[[5,\"2\"]]]]],\"+\",[6,\"d.u32\",[[5,\"13\"]]]]],[12,\"a\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"x\"]]]],[12,\"b\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"y\"]]]],[12,\"c\",[1,\"seed\",\"+\",[6,\"d.u32\",[\"z\"]]]],[2,\"a\",\"=\",[1,\"a\",\"-\",\"c\"]],[2,\"a\",\"=\",[1,\"a\",\"^\",[6,\"mxRotl32\",[\"c\",[6,\"d.i32\",[[5,\"4\"]]]]]]],[2,\"c\",\"=\",[1,\"c\",\"+\",\"b\"]],[2,\"b\",\"=\",[1,\"b\",\"-\",\"a\"]],[2,\"b\",\"=\",[1,\"b\",\"^\",[6,\"mxRotl32\",[\"a\",[6,\"d.i32\",[[5,\"6\"]]]]]]],[2,\"a\",\"=\",[1,\"a\",\"+\",\"c\"]],[2,\"c\",\"=\",[1,\"c\",\"-\",\"b\"]],[2,\"c\",\"=\",[1,\"c\",\"^\",[6,\"mxRotl32\",[\"b\",[6,\"d.i32\",[[5,\"8\"]]]]]]],[2,\"b\",\"=\",[1,\"b\",\"+\",\"a\"]],[2,\"a\",\"=\",[1,\"a\",\"-\",\"c\"]],[2,\"a\",\"=\",[1,\"a\",\"^\",[6,\"mxRotl32\",[\"c\",[6,\"d.i32\",[[5,\"16\"]]]]]]],[2,\"c\",\"=\",[1,\"c\",\"+\",\"b\"]],[2,\"b\",\"=\",[1,\"b\",\"-\",\"a\"]],[2,\"b\",\"=\",[1,\"b\",\"^\",[6,\"mxRotl32\",[\"a\",[6,\"d.i32\",[[5,\"19\"]]]]]]],[2,\"a\",\"=\",[1,\"a\",\"+\",\"c\"]],[2,\"c\",\"=\",[1,\"c\",\"-\",\"b\"]],[2,\"c\",\"=\",[1,\"c\",\"^\",[6,\"mxRotl32\",[\"b\",[6,\"d.i32\",[[5,\"4\"]]]]]]],[2,\"b\",\"=\",[1,\"b\",\"+\",\"a\"]],[2,\"a\",\"=\",[1,\"a\",\"+\",[6,\"d.u32\",[\"xx\"]]]],[10,[6,\"mxBjfinal\",[\"a\",\"b\",\"c\"]]]]]},externals:{\"d.u32\":()=>Y,DEADBEEF:()=>Bd,mxRotl32:()=>lo,\"d.i32\":()=>oe,mxBjfinal:()=>Fd}})&&e.f)({})),Ba=y.fn([Y],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_div(a(t),a(4294967295))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"bits\"}],body:[0,[[10,[1,[6,\"d.f32\",[\"bits\"]],\"/\",[6,\"d.f32\",[[5,\"4294967295\"]]]]]]]},externals:{\"d.f32\":()=>a}})&&e.f)({})),ki=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(__tsover_mul(__tsover_mul(t,t),t),__tsover_add(__tsover_mul(t,__tsover_sub(__tsover_mul(t,6),15)),10))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[1,[1,[1,\"t\",\"*\",\"t\"],\"*\",\"t\"],\"*\",[1,[1,\"t\",\"*\",[1,[1,\"t\",\"*\",[5,\"6\"]],\"-\",[5,\"15\"]]],\"+\",[5,\"10\"]]]]]]},externals:{}})&&e.f)({})),Dl=y.fn([Y,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=t&Y(7),n=F(r,s,o<Y(4)),i=__tsover_mul(2,F(s,r,o<Y(4))),d=F(n,-n,(o&Y(1))!==Y(0)),l=F(i,-i,(o&Y(2))!==Y(0));return __tsover_add(d,l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"hash\"},{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"}],body:[0,[[13,\"h\",[1,\"hash\",\"&\",[6,\"d.u32\",[[5,\"7\"]]]]],[13,\"u\",[6,\"std.select\",[\"y\",\"x\",[1,\"h\",\"<\",[6,\"d.u32\",[[5,\"4\"]]]]]]],[13,\"v\",[1,[5,\"2\"],\"*\",[6,\"std.select\",[\"x\",\"y\",[1,\"h\",\"<\",[6,\"d.u32\",[[5,\"4\"]]]]]]]],[13,\"uu\",[6,\"std.select\",[\"u\",[4,\"-\",\"u\"],[1,[1,\"h\",\"&\",[6,\"d.u32\",[[5,\"1\"]]]],\"!==\",[6,\"d.u32\",[[5,\"0\"]]]]]]],[13,\"vv\",[6,\"std.select\",[\"v\",[4,\"-\",\"v\"],[1,[1,\"h\",\"&\",[6,\"d.u32\",[[5,\"2\"]]]],\"!==\",[6,\"d.u32\",[[5,\"0\"]]]]]]],[10,[1,\"uu\",\"+\",\"vv\"]]]]},externals:{\"d.u32\":()=>Y,\"std.select\":()=>F}})&&e.f)({})),sa=y.fn([Y,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=t&Y(15),i=F(r,s,n<Y(8)),d=F(F(o,s,n===Y(12)||n===Y(14)),r,n<Y(4)),l=F(i,-i,(n&Y(1))!==Y(0)),c=F(d,-d,(n&Y(2))!==Y(0));return __tsover_add(l,c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"hash\"},{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"z\"}],body:[0,[[13,\"h\",[1,\"hash\",\"&\",[6,\"d.u32\",[[5,\"15\"]]]]],[13,\"u\",[6,\"std.select\",[\"y\",\"x\",[1,\"h\",\"<\",[6,\"d.u32\",[[5,\"8\"]]]]]]],[13,\"inner\",[6,\"std.select\",[\"z\",\"x\",[3,[1,\"h\",\"===\",[6,\"d.u32\",[[5,\"12\"]]]],\"||\",[1,\"h\",\"===\",[6,\"d.u32\",[[5,\"14\"]]]]]]]],[13,\"v\",[6,\"std.select\",[\"inner\",\"y\",[1,\"h\",\"<\",[6,\"d.u32\",[[5,\"4\"]]]]]]],[13,\"uu\",[6,\"std.select\",[\"u\",[4,\"-\",\"u\"],[1,[1,\"h\",\"&\",[6,\"d.u32\",[[5,\"1\"]]]],\"!==\",[6,\"d.u32\",[[5,\"0\"]]]]]]],[13,\"vv\",[6,\"std.select\",[\"v\",[4,\"-\",\"v\"],[1,[1,\"h\",\"&\",[6,\"d.u32\",[[5,\"2\"]]]],\"!==\",[6,\"d.u32\",[[5,\"0\"]]]]]]],[10,[1,\"uu\",\"+\",\"vv\"]]]]},externals:{\"d.u32\":()=>Y,\"std.select\":()=>F}})&&e.f)({})),r3=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(.6616,t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[10,[1,[5,\"0.6616\"],\"*\",\"v\"]]]]},externals:{}})&&e.f)({})),o3=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(.982,t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[10,[1,[5,\"0.982\"],\"*\",\"v\"]]]]},externals:{}})&&e.f)({})),n3=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_sub(1,n);return __tsover_add(__tsover_mul(__tsover_sub(1,i),__tsover_add(__tsover_mul(t,d),__tsover_mul(s,n))),__tsover_mul(i,__tsover_add(__tsover_mul(r,d),__tsover_mul(o,n))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v0\"},{type:\"i\",name:\"v1\"},{type:\"i\",name:\"v2\"},{type:\"i\",name:\"v3\"},{type:\"i\",name:\"s\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"s1\",[1,[5,\"1\"],\"-\",\"s\"]],[10,[1,[1,[1,[5,\"1\"],\"-\",\"t\"],\"*\",[1,[1,\"v0\",\"*\",\"s1\"],\"+\",[1,\"v1\",\"*\",\"s\"]]],\"+\",[1,\"t\",\"*\",[1,[1,\"v2\",\"*\",\"s1\"],\"+\",[1,\"v3\",\"*\",\"s\"]]]]]]]},externals:{}})&&e.f)({})),a3=y.fn([a,a,a,a,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=__tsover_sub(1,c),h=__tsover_sub(1,_),g=__tsover_sub(1,p);return __tsover_add(__tsover_mul(g,__tsover_add(__tsover_mul(h,__tsover_add(__tsover_mul(t,f),__tsover_mul(s,c))),__tsover_mul(_,__tsover_add(__tsover_mul(r,f),__tsover_mul(o,c))))),__tsover_mul(p,__tsover_add(__tsover_mul(h,__tsover_add(__tsover_mul(n,f),__tsover_mul(i,c))),__tsover_mul(_,__tsover_add(__tsover_mul(d,f),__tsover_mul(l,c))))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v0\"},{type:\"i\",name:\"v1\"},{type:\"i\",name:\"v2\"},{type:\"i\",name:\"v3\"},{type:\"i\",name:\"v4\"},{type:\"i\",name:\"v5\"},{type:\"i\",name:\"v6\"},{type:\"i\",name:\"v7\"},{type:\"i\",name:\"s\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"r\"}],body:[0,[[13,\"s1\",[1,[5,\"1\"],\"-\",\"s\"]],[13,\"t1\",[1,[5,\"1\"],\"-\",\"t\"]],[13,\"r1\",[1,[5,\"1\"],\"-\",\"r\"]],[10,[1,[1,\"r1\",\"*\",[1,[1,\"t1\",\"*\",[1,[1,\"v0\",\"*\",\"s1\"],\"+\",[1,\"v1\",\"*\",\"s\"]]],\"+\",[1,\"t\",\"*\",[1,[1,\"v2\",\"*\",\"s1\"],\"+\",[1,\"v3\",\"*\",\"s\"]]]]],\"+\",[1,\"r\",\"*\",[1,[1,\"t1\",\"*\",[1,[1,\"v4\",\"*\",\"s1\"],\"+\",[1,\"v5\",\"*\",\"s\"]]],\"+\",[1,\"t\",\"*\",[1,[1,\"v6\",\"*\",\"s1\"],\"+\",[1,\"v7\",\"*\",\"s\"]]]]]]]]]},externals:{}})&&e.f)({})),i3=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=oe(K(t.x)),r=oe(K(t.y)),o=__tsover_sub(t.x,a(s)),n=__tsover_sub(t.y,a(r)),i=ki(o),d=ki(n);return r3(n3(Dl(Gl(s,r),o,n),Dl(Gl(__tsover_add(s,oe(1)),r),__tsover_sub(o,1),n),Dl(Gl(s,__tsover_add(r,oe(1))),o,__tsover_sub(n,1)),Dl(Gl(__tsover_add(s,oe(1)),__tsover_add(r,oe(1))),__tsover_sub(o,1),__tsover_sub(n,1)),i,d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"X\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"Y\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[13,\"fx\",[1,[7,\"p\",\"x\"],\"-\",[6,\"d.f32\",[\"X\"]]]],[13,\"fy\",[1,[7,\"p\",\"y\"],\"-\",[6,\"d.f32\",[\"Y\"]]]],[13,\"u\",[6,\"mxFade\",[\"fx\"]]],[13,\"v\",[6,\"mxFade\",[\"fy\"]]],[13,\"result\",[6,\"mxBilerp\",[[6,\"mxGradientFloat2\",[[6,\"mxHashInt1\",[\"X\",\"Y\"]],\"fx\",\"fy\"]],[6,\"mxGradientFloat2\",[[6,\"mxHashInt1\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],\"Y\"]],[1,\"fx\",\"-\",[5,\"1\"]],\"fy\"]],[6,\"mxGradientFloat2\",[[6,\"mxHashInt1\",[\"X\",[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],\"fx\",[1,\"fy\",\"-\",[5,\"1\"]]]],[6,\"mxGradientFloat2\",[[6,\"mxHashInt1\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],[1,\"fx\",\"-\",[5,\"1\"]],[1,\"fy\",\"-\",[5,\"1\"]]]],\"u\",\"v\"]]],[10,[6,\"mxGradientScale2d\",[\"result\"]]]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.f32\":()=>a,mxFade:()=>ki,mxBilerp:()=>n3,mxGradientFloat2:()=>Dl,mxHashInt1:()=>Gl,mxGradientScale2d:()=>r3}})&&e.f)({})),d3=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=oe(K(t.x)),r=oe(K(t.y)),o=oe(K(t.z)),n=__tsover_sub(t.x,a(s)),i=__tsover_sub(t.y,a(r)),d=__tsover_sub(t.z,a(o)),l=ki(n),c=ki(i),_=ki(d);return o3(a3(sa(Yo(s,r,o),n,i,d),sa(Yo(__tsover_add(s,oe(1)),r,o),__tsover_sub(n,1),i,d),sa(Yo(s,__tsover_add(r,oe(1)),o),n,__tsover_sub(i,1),d),sa(Yo(__tsover_add(s,oe(1)),__tsover_add(r,oe(1)),o),__tsover_sub(n,1),__tsover_sub(i,1),d),sa(Yo(s,r,__tsover_add(o,oe(1))),n,i,__tsover_sub(d,1)),sa(Yo(__tsover_add(s,oe(1)),r,__tsover_add(o,oe(1))),__tsover_sub(n,1),i,__tsover_sub(d,1)),sa(Yo(s,__tsover_add(r,oe(1)),__tsover_add(o,oe(1))),n,__tsover_sub(i,1),__tsover_sub(d,1)),sa(Yo(__tsover_add(s,oe(1)),__tsover_add(r,oe(1)),__tsover_add(o,oe(1))),__tsover_sub(n,1),__tsover_sub(i,1),__tsover_sub(d,1)),l,c,_))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"X\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"Y\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[13,\"Z\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"z\"]]]]]],[13,\"fx\",[1,[7,\"p\",\"x\"],\"-\",[6,\"d.f32\",[\"X\"]]]],[13,\"fy\",[1,[7,\"p\",\"y\"],\"-\",[6,\"d.f32\",[\"Y\"]]]],[13,\"fz\",[1,[7,\"p\",\"z\"],\"-\",[6,\"d.f32\",[\"Z\"]]]],[13,\"u\",[6,\"mxFade\",[\"fx\"]]],[13,\"v\",[6,\"mxFade\",[\"fy\"]]],[13,\"w\",[6,\"mxFade\",[\"fz\"]]],[13,\"result\",[6,\"mxTrilerp\",[[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[\"X\",\"Y\",\"Z\"]],\"fx\",\"fy\",\"fz\"]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],\"Y\",\"Z\"]],[1,\"fx\",\"-\",[5,\"1\"]],\"fy\",\"fz\"]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[\"X\",[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],\"Z\"]],\"fx\",[1,\"fy\",\"-\",[5,\"1\"]],\"fz\"]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],\"Z\"]],[1,\"fx\",\"-\",[5,\"1\"]],[1,\"fy\",\"-\",[5,\"1\"]],\"fz\"]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[\"X\",\"Y\",[1,\"Z\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],\"fx\",\"fy\",[1,\"fz\",\"-\",[5,\"1\"]]]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],\"Y\",[1,\"Z\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],[1,\"fx\",\"-\",[5,\"1\"]],\"fy\",[1,\"fz\",\"-\",[5,\"1\"]]]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[\"X\",[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],[1,\"Z\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],\"fx\",[1,\"fy\",\"-\",[5,\"1\"]],[1,\"fz\",\"-\",[5,\"1\"]]]],[6,\"mxGradientFloat3\",[[6,\"mxHashInt2\",[[1,\"X\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],[1,\"Y\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]],[1,\"Z\",\"+\",[6,\"d.i32\",[[5,\"1\"]]]]]],[1,\"fx\",\"-\",[5,\"1\"]],[1,\"fy\",\"-\",[5,\"1\"]],[1,\"fz\",\"-\",[5,\"1\"]]]],\"u\",\"v\",\"w\"]]],[10,[6,\"mxGradientScale3d\",[\"result\"]]]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.f32\":()=>a,mxFade:()=>ki,mxTrilerp:()=>a3,mxGradientFloat3:()=>sa,mxHashInt2:()=>Yo,mxGradientScale3d:()=>o3}})&&e.f)({})),l3=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=oe(K(t.x)),r=oe(K(t.y));return v(Ba(Yo(s,r,oe(0))),Ba(Yo(s,r,oe(1))),Ba(Yo(s,r,oe(2))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"ix\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"iy\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[10,[6,\"d.vec3f\",[[6,\"mxBitsTo01\",[[6,\"mxHashInt2\",[\"ix\",\"iy\",[6,\"d.i32\",[[5,\"0\"]]]]]]],[6,\"mxBitsTo01\",[[6,\"mxHashInt2\",[\"ix\",\"iy\",[6,\"d.i32\",[[5,\"1\"]]]]]]],[6,\"mxBitsTo01\",[[6,\"mxHashInt2\",[\"ix\",\"iy\",[6,\"d.i32\",[[5,\"2\"]]]]]]]]]]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.vec3f\":()=>v,mxBitsTo01:()=>Ba,mxHashInt2:()=>Yo}})&&e.f)({})),c3=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=oe(K(t.x)),r=oe(K(t.y)),o=oe(K(t.z));return v(Ba(h_(s,r,o,oe(0))),Ba(h_(s,r,o,oe(1))),Ba(h_(s,r,o,oe(2))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"ix\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"iy\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[13,\"iz\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"z\"]]]]]],[10,[6,\"d.vec3f\",[[6,\"mxBitsTo01\",[[6,\"mxHashInt3\",[\"ix\",\"iy\",\"iz\",[6,\"d.i32\",[[5,\"0\"]]]]]]],[6,\"mxBitsTo01\",[[6,\"mxHashInt3\",[\"ix\",\"iy\",\"iz\",[6,\"d.i32\",[[5,\"1\"]]]]]]],[6,\"mxBitsTo01\",[[6,\"mxHashInt3\",[\"ix\",\"iy\",\"iz\",[6,\"d.i32\",[[5,\"2\"]]]]]]]]]]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.vec3f\":()=>v,mxBitsTo01:()=>Ba,mxHashInt3:()=>h_}})&&e.f)({})),u3=y.fn([u,oe,oe,oe,oe,a,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=l3(u(a(__tsover_add(s,o)),a(__tsover_add(r,n)))),c=u(l.x,l.y);c=ua(Kr(It(c,.5),i),.5);let _=It(ua(u(a(s),a(r)),c),t);return d===oe(2)?__tsover_add(W(_.x),W(_.y)):d===oe(3)?w(W(_.x),W(_.y)):le(_,_)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"xoff\"},{type:\"i\",name:\"yoff\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"metric\"}],body:[0,[[13,\"tmp\",[6,\"mxCellNoiseVec3_2d\",[[6,\"d.vec2f\",[[6,\"d.f32\",[[1,\"x\",\"+\",\"xoff\"]]],[6,\"d.f32\",[[1,\"y\",\"+\",\"yoff\"]]]]]]]],[12,\"off\",[6,\"d.vec2f\",[[7,\"tmp\",\"x\"],[7,\"tmp\",\"y\"]]]],[2,\"off\",\"=\",[6,\"std.add\",[[6,\"std.mul\",[[6,\"std.sub\",[\"off\",[5,\"0.5\"]]],\"jitter\"]],[5,\"0.5\"]]]],[13,\"cellpos\",[6,\"std.add\",[[6,\"d.vec2f\",[[6,\"d.f32\",[\"x\"]],[6,\"d.f32\",[\"y\"]]]],\"off\"]]],[13,\"diff\",[6,\"std.sub\",[\"cellpos\",\"p\"]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"2\"]]]],[0,[[10,[1,[6,\"std.abs\",[[7,\"diff\",\"x\"]]],\"+\",[6,\"std.abs\",[[7,\"diff\",\"y\"]]]]]]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"3\"]]]],[0,[[10,[6,\"std.max\",[[6,\"std.abs\",[[7,\"diff\",\"x\"]]],[6,\"std.abs\",[[7,\"diff\",\"y\"]]]]]]]]],[10,[6,\"std.dot\",[\"diff\",\"diff\"]]]]]},externals:{mxCellNoiseVec3_2d:()=>l3,\"d.vec2f\":()=>u,\"d.f32\":()=>a,\"std.add\":()=>ua,\"std.mul\":()=>Kr,\"std.sub\":()=>It,\"d.i32\":()=>oe,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.dot\":()=>le}})&&e.f)({})),_3=y.fn([v,oe,oe,oe,oe,oe,oe,a,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c)=>{\"use gpu\";let _=c3(v(a(__tsover_add(s,n)),a(__tsover_add(r,i)),a(__tsover_add(o,d))));_=ua(Kr(It(_,.5),l),.5);let p=It(ua(v(a(s),a(r),a(o)),_),t);return c===oe(2)?__tsover_add(__tsover_add(W(p.x),W(p.y)),W(p.z)):c===oe(3)?w(w(W(p.x),W(p.y)),W(p.z)):le(p,p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"z\"},{type:\"i\",name:\"xoff\"},{type:\"i\",name:\"yoff\"},{type:\"i\",name:\"zoff\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"metric\"}],body:[0,[[12,\"off\",[6,\"mxCellNoiseVec3_3d\",[[6,\"d.vec3f\",[[6,\"d.f32\",[[1,\"x\",\"+\",\"xoff\"]]],[6,\"d.f32\",[[1,\"y\",\"+\",\"yoff\"]]],[6,\"d.f32\",[[1,\"z\",\"+\",\"zoff\"]]]]]]]],[2,\"off\",\"=\",[6,\"std.add\",[[6,\"std.mul\",[[6,\"std.sub\",[\"off\",[5,\"0.5\"]]],\"jitter\"]],[5,\"0.5\"]]]],[13,\"cellpos\",[6,\"std.add\",[[6,\"d.vec3f\",[[6,\"d.f32\",[\"x\"]],[6,\"d.f32\",[\"y\"]],[6,\"d.f32\",[\"z\"]]]],\"off\"]]],[13,\"diff\",[6,\"std.sub\",[\"cellpos\",\"p\"]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"2\"]]]],[0,[[10,[1,[1,[6,\"std.abs\",[[7,\"diff\",\"x\"]]],\"+\",[6,\"std.abs\",[[7,\"diff\",\"y\"]]]],\"+\",[6,\"std.abs\",[[7,\"diff\",\"z\"]]]]]]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"3\"]]]],[0,[[10,[6,\"std.max\",[[6,\"std.max\",[[6,\"std.abs\",[[7,\"diff\",\"x\"]]],[6,\"std.abs\",[[7,\"diff\",\"y\"]]]]],[6,\"std.abs\",[[7,\"diff\",\"z\"]]]]]]]]],[10,[6,\"std.dot\",[\"diff\",\"diff\"]]]]]},externals:{mxCellNoiseVec3_3d:()=>c3,\"d.vec3f\":()=>v,\"d.f32\":()=>a,\"std.add\":()=>ua,\"std.mul\":()=>Kr,\"std.sub\":()=>It,\"d.i32\":()=>oe,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.dot\":()=>le}})&&e.f)({})),p3=y.fn([u,a,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=oe(K(t.x)),n=oe(K(t.y)),i=u(__tsover_sub(t.x,a(o)),__tsover_sub(t.y,a(n))),d=a(1e6);for(let l=-1;l<=1;l++)for(let c=-1;c<=1;c++){let _=u3(i,l,c,o,n,s,r);d=ue(d,_)}return r===oe(0)&&(d=$e(d)),d}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"metric\"}],body:[0,[[13,\"X\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"Y\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[13,\"localpos\",[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"-\",[6,\"d.f32\",[\"X\"]]],[1,[7,\"p\",\"y\"],\"-\",[6,\"d.f32\",[\"Y\"]]]]]],[12,\"sqdist\",[6,\"d.f32\",[[5,\"1000000\"]]]],[14,[12,\"x\",[4,\"-\",[5,\"1\"]]],[1,\"x\",\"<=\",[5,\"1\"]],[102,\"++\",\"x\"],[0,[[14,[12,\"y\",[4,\"-\",[5,\"1\"]]],[1,\"y\",\"<=\",[5,\"1\"]],[102,\"++\",\"y\"],[0,[[13,\"dist\",[6,\"mxWorleyDistance2d\",[\"localpos\",\"x\",\"y\",\"X\",\"Y\",\"jitter\",\"metric\"]]],[2,\"sqdist\",\"=\",[6,\"std.min\",[\"sqdist\",\"dist\"]]]]]]]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"0\"]]]],[0,[[2,\"sqdist\",\"=\",[6,\"std.sqrt\",[\"sqdist\"]]]]]],[10,\"sqdist\"]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.vec2f\":()=>u,\"d.f32\":()=>a,mxWorleyDistance2d:()=>u3,\"std.min\":()=>ue,\"std.sqrt\":()=>$e}})&&e.f)({})),m3=y.fn([v,a,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=oe(K(t.x)),n=oe(K(t.y)),i=oe(K(t.z)),d=v(__tsover_sub(t.x,a(o)),__tsover_sub(t.y,a(n)),__tsover_sub(t.z,a(i))),l=a(1e6);for(let c=-1;c<=1;c++)for(let _=-1;_<=1;_++)for(let p=-1;p<=1;p++){let f=_3(d,c,_,p,o,n,i,s,r);l=ue(l,f)}return r===oe(0)&&(l=$e(l)),l}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"metric\"}],body:[0,[[13,\"X\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"x\"]]]]]],[13,\"Y\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"y\"]]]]]],[13,\"Z\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"p\",\"z\"]]]]]],[13,\"localpos\",[6,\"d.vec3f\",[[1,[7,\"p\",\"x\"],\"-\",[6,\"d.f32\",[\"X\"]]],[1,[7,\"p\",\"y\"],\"-\",[6,\"d.f32\",[\"Y\"]]],[1,[7,\"p\",\"z\"],\"-\",[6,\"d.f32\",[\"Z\"]]]]]],[12,\"sqdist\",[6,\"d.f32\",[[5,\"1000000\"]]]],[14,[12,\"x\",[4,\"-\",[5,\"1\"]]],[1,\"x\",\"<=\",[5,\"1\"]],[102,\"++\",\"x\"],[0,[[14,[12,\"y\",[4,\"-\",[5,\"1\"]]],[1,\"y\",\"<=\",[5,\"1\"]],[102,\"++\",\"y\"],[0,[[14,[12,\"z\",[4,\"-\",[5,\"1\"]]],[1,\"z\",\"<=\",[5,\"1\"]],[102,\"++\",\"z\"],[0,[[13,\"dist\",[6,\"mxWorleyDistance3d\",[\"localpos\",\"x\",\"y\",\"z\",\"X\",\"Y\",\"Z\",\"jitter\",\"metric\"]]],[2,\"sqdist\",\"=\",[6,\"std.min\",[\"sqdist\",\"dist\"]]]]]]]]]]]],[11,[1,\"metric\",\"===\",[6,\"d.i32\",[[5,\"0\"]]]],[0,[[2,\"sqdist\",\"=\",[6,\"std.sqrt\",[\"sqdist\"]]]]]],[10,\"sqdist\"]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,\"d.vec3f\":()=>v,\"d.f32\":()=>a,mxWorleyDistance3d:()=>_3,\"std.min\":()=>ue,\"std.sqrt\":()=>$e}})&&e.f)({})),$i=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return i3(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"mxPerlinNoiseFloat2\",[\"p\"]]]]]},externals:{mxPerlinNoiseFloat2:()=>i3}})&&e.f)({})),Po=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return d3(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"mxPerlinNoiseFloat3\",[\"p\"]]]]]},externals:{mxPerlinNoiseFloat3:()=>d3}})&&e.f)({})),fy=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return p3(t,s,oe(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"jitter\"}],body:[0,[[10,[6,\"mxWorleyNoiseFloat2\",[\"p\",\"jitter\",[6,\"d.i32\",[[5,\"1\"]]]]]]]]},externals:{mxWorleyNoiseFloat2:()=>p3,\"d.i32\":()=>oe}})&&e.f)({}));y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return m3(t,s,oe(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"jitter\"}],body:[0,[[10,[6,\"mxWorleyNoiseFloat3\",[\"p\",\"jitter\",[6,\"d.i32\",[[5,\"1\"]]]]]]]]},externals:{mxWorleyNoiseFloat3:()=>m3,\"d.i32\":()=>oe}})&&e.f)({}));var f3=y.fn([a],Y)(\"(x: f32) -> u32 { return bitcast<u32>(x); }\"),Id=y.fn([u],He)(\"(v: vec2f) -> vec2u { return bitcast<vec2u>(v); }\"),lp=y.fn([v],Gi)(\"(v: vec3f) -> vec3u { return bitcast<vec3u>(v); }\"),dn=a(4294967295),fr=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=f3(__tsover_mul(t,3141592653));return __tsover_div(a(__tsover_mul(__tsover_mul(s,s),Y(3141592653))),dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint1\",[[1,\"p\",\"*\",[5,\"3141592653\"]]]]],[10,[1,[6,\"d.f32\",[[1,[1,\"u\",\"*\",\"u\"],\"*\",[6,\"d.u32\",[[5,\"3141592653\"]]]]]],\"/\",\"U32\"]]]]},externals:{floatBitsToUint1:()=>f3,\"d.f32\":()=>a,\"d.u32\":()=>Y,U32:()=>dn}})&&e.f)({})),ms=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=Id(t.mul(u(141421356,2718281828)));return __tsover_div(a(__tsover_mul(s.x^s.y,Y(3141592653))),dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint2\",[[6,[7,\"p\",\"mul\"],[[6,\"d.vec2f\",[[5,\"141421356\"],[5,\"2718281828\"]]]]]]]],[10,[1,[6,\"d.f32\",[[1,[1,[7,\"u\",\"x\"],\"^\",[7,\"u\",\"y\"]],\"*\",[6,\"d.u32\",[[5,\"3141592653\"]]]]]],\"/\",\"U32\"]]]]},externals:{floatBitsToUint2:()=>Id,\"d.vec2f\":()=>u,\"d.f32\":()=>a,\"d.u32\":()=>Y,U32:()=>dn}})&&e.f)({})),Dr=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=Id(t.mul(u(141421356,2718281828))),r=s.x^s.y,o=Kr(He(r,r),He(3141592653,1618033988));return u(a(o.x),a(o.y)).div(dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint2\",[[6,[7,\"p\",\"mul\"],[[6,\"d.vec2f\",[[5,\"141421356\"],[5,\"2718281828\"]]]]]]]],[13,\"h\",[1,[7,\"u\",\"x\"],\"^\",[7,\"u\",\"y\"]]],[13,\"prod\",[6,\"std.mul\",[[6,\"d.vec2u\",[\"h\",\"h\"]],[6,\"d.vec2u\",[[5,\"3141592653\"],[5,\"1618033988\"]]]]]],[10,[6,[7,[6,\"d.vec2f\",[[6,\"d.f32\",[[7,\"prod\",\"x\"]]],[6,\"d.f32\",[[7,\"prod\",\"y\"]]]]],\"div\"],[\"U32\"]]]]]},externals:{floatBitsToUint2:()=>Id,\"d.vec2f\":()=>u,\"std.mul\":()=>Kr,\"d.vec2u\":()=>He,\"d.f32\":()=>a,U32:()=>dn}})&&e.f)({})),MO=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=Id(t.mul(u(141421356,2718281828))),r=s.x^s.y,o=Kr(Gi(r,r,r),Gi(1732050807,2645751311,3316624790));return v(a(o.x),a(o.y),a(o.z)).div(dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint2\",[[6,[7,\"p\",\"mul\"],[[6,\"d.vec2f\",[[5,\"141421356\"],[5,\"2718281828\"]]]]]]]],[13,\"h\",[1,[7,\"u\",\"x\"],\"^\",[7,\"u\",\"y\"]]],[13,\"prod\",[6,\"std.mul\",[[6,\"d.vec3u\",[\"h\",\"h\",\"h\"]],[6,\"d.vec3u\",[[5,\"1732050807\"],[5,\"2645751311\"],[5,\"3316624790\"]]]]]],[10,[6,[7,[6,\"d.vec3f\",[[6,\"d.f32\",[[7,\"prod\",\"x\"]]],[6,\"d.f32\",[[7,\"prod\",\"y\"]]],[6,\"d.f32\",[[7,\"prod\",\"z\"]]]]],\"div\"],[\"U32\"]]]]]},externals:{floatBitsToUint2:()=>Id,\"d.vec2f\":()=>u,\"std.mul\":()=>Kr,\"d.vec3u\":()=>Gi,\"d.vec3f\":()=>v,\"d.f32\":()=>a,U32:()=>dn}})&&e.f)({})),kO=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=lp(t.mul(v(141421356,2718281828,1618033988)));return __tsover_div(a(__tsover_mul(s.x^s.y^s.z,Y(3141592653))),dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint3\",[[6,[7,\"p\",\"mul\"],[[6,\"d.vec3f\",[[5,\"141421356\"],[5,\"2718281828\"],[5,\"1618033988\"]]]]]]]],[10,[1,[6,\"d.f32\",[[1,[1,[1,[7,\"u\",\"x\"],\"^\",[7,\"u\",\"y\"]],\"^\",[7,\"u\",\"z\"]],\"*\",[6,\"d.u32\",[[5,\"3141592653\"]]]]]],\"/\",\"U32\"]]]]},externals:{floatBitsToUint3:()=>lp,\"d.vec3f\":()=>v,\"d.f32\":()=>a,\"d.u32\":()=>Y,U32:()=>dn}})&&e.f)({})),v3=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=lp(t.mul(v(141421356,2718281828,1618033988))),r=s.x^s.y^s.z,o=Kr(Gi(r,r,r),Gi(1732050807,2645751311,3316624790));return v(a(o.x),a(o.y),a(o.z)).div(dn)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"u\",[6,\"floatBitsToUint3\",[[6,[7,\"p\",\"mul\"],[[6,\"d.vec3f\",[[5,\"141421356\"],[5,\"2718281828\"],[5,\"1618033988\"]]]]]]]],[13,\"h\",[1,[1,[7,\"u\",\"x\"],\"^\",[7,\"u\",\"y\"]],\"^\",[7,\"u\",\"z\"]]],[13,\"prod\",[6,\"std.mul\",[[6,\"d.vec3u\",[\"h\",\"h\",\"h\"]],[6,\"d.vec3u\",[[5,\"1732050807\"],[5,\"2645751311\"],[5,\"3316624790\"]]]]]],[10,[6,[7,[6,\"d.vec3f\",[[6,\"d.f32\",[[7,\"prod\",\"x\"]]],[6,\"d.f32\",[[7,\"prod\",\"y\"]]],[6,\"d.f32\",[[7,\"prod\",\"z\"]]]]],\"div\"],[\"U32\"]]]]]},externals:{floatBitsToUint3:()=>lp,\"d.vec3f\":()=>v,\"std.mul\":()=>Kr,\"d.vec3u\":()=>Gi,\"d.f32\":()=>a,U32:()=>dn}})&&e.f)({})),uo=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=t.sub(s),o=r.mul(r).mul(It(3,r.mul(2)));return Z(Z(ms(s),ms(s.add(u(1,0))),o.x),Z(ms(s.add(u(0,1))),ms(s.add(u(1,1))),o.x),o.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f0\",[6,[7,\"p\",\"sub\"],[\"i\"]]],[13,\"f\",[6,[7,[6,[7,\"f0\",\"mul\"],[\"f0\"]],\"mul\"],[[6,\"std.sub\",[[5,\"3\"],[6,[7,\"f0\",\"mul\"],[[5,\"2\"]]]]]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[[6,\"hash12\",[\"i\"]],[6,\"hash12\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"0\"]]]]]]],[7,\"f\",\"x\"]]],[6,\"std.mix\",[[6,\"hash12\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]]]]]],[6,\"hash12\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]],[7,\"f\",\"x\"]]],[7,\"f\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.sub\":()=>It,\"std.mix\":()=>Z,hash12:()=>ms,\"d.vec2f\":()=>u}})&&e.f)({})),Ll=y.fn([u,u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(r,o);return le(Rs(Dr(t.add(n)).sub(.5)),s.sub(n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"i\"},{type:\"i\",name:\"f\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[13,\"o\",[6,\"d.vec2f\",[\"ox\",\"oy\"]]],[10,[6,\"std.dot\",[[6,\"std.normalize\",[[6,[7,[6,\"hash22\",[[6,[7,\"i\",\"add\"],[\"o\"]]]],\"sub\"],[[5,\"0.5\"]]]]],[6,[7,\"f\",\"sub\"],[\"o\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.dot\":()=>le,\"std.normalize\":()=>Rs,hash22:()=>Dr}})&&e.f)({})),Si=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=t.sub(s),o=r.mul(r).mul(r).mul(r.mul(r.mul(6).sub(15)).add(10)),n=Ll(s,r,0,0),i=Ll(s,r,1,0),d=Ll(s,r,0,1),l=Ll(s,r,1,1);return __tsover_add(__tsover_mul(Z(Z(n,i,o.x),Z(d,l,o.x),o.y),.7),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f\",[6,[7,\"p\",\"sub\"],[\"i\"]]],[13,\"u\",[6,[7,[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[5,\"6\"]]],\"sub\"],[[5,\"15\"]]]]],\"add\"],[[5,\"10\"]]]]]],[13,\"a\",[6,\"perlinGrad2\",[\"i\",\"f\",[5,\"0\"],[5,\"0\"]]]],[13,\"b\",[6,\"perlinGrad2\",[\"i\",\"f\",[5,\"1\"],[5,\"0\"]]]],[13,\"c\",[6,\"perlinGrad2\",[\"i\",\"f\",[5,\"0\"],[5,\"1\"]]]],[13,\"dd\",[6,\"perlinGrad2\",[\"i\",\"f\",[5,\"1\"],[5,\"1\"]]]],[10,[1,[1,[6,\"std.mix\",[[6,\"std.mix\",[\"a\",\"b\",[7,\"u\",\"x\"]]],[6,\"std.mix\",[\"c\",\"dd\",[7,\"u\",\"x\"]]],[7,\"u\",\"y\"]]],\"*\",[5,\"0.7\"]],\"+\",[5,\"0.5\"]]]]]},externals:{\"std.floor\":()=>K,perlinGrad2:()=>Ll,\"std.mix\":()=>Z}})&&e.f)({})),qn=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=ve(t),o=r.mul(r).mul(r).mul(r.mul(r.mul(6).sub(15)).add(10)),n=r.mul(r).mul(r.mul(r.sub(2)).add(1)).mul(30),i=Dr(s.add(u(0,0))).mul(2).sub(1),d=Dr(s.add(u(1,0))).mul(2).sub(1),l=Dr(s.add(u(0,1))).mul(2).sub(1),c=Dr(s.add(u(1,1))).mul(2).sub(1),_=le(i,r.sub(u(0,0))),p=le(d,r.sub(u(1,0))),f=le(l,r.sub(u(0,1))),h=le(c,r.sub(u(1,1))),g=__tsover_add(__tsover_sub(__tsover_sub(_,p),f),h),x=__tsover_add(__tsover_add(__tsover_add(_,__tsover_mul(o.x,__tsover_sub(p,_))),__tsover_mul(o.y,__tsover_sub(f,_))),__tsover_mul(__tsover_mul(o.x,o.y),g)),T=i.add(d.sub(i).mul(o.x)).add(l.sub(i).mul(o.y)).add(i.sub(d).sub(l).add(c).mul(__tsover_mul(o.x,o.y))).add(n.mul(u(o.y,o.x).mul(g).add(u(p,f)).sub(_)));return v(x,T.x,T.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f\",[6,\"std.fract\",[\"p\"]]],[13,\"u\",[6,[7,[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[5,\"6\"]]],\"sub\"],[[5,\"15\"]]]]],\"add\"],[[5,\"10\"]]]]]],[13,\"du\",[6,[7,[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[6,[7,\"f\",\"sub\"],[[5,\"2\"]]]]],\"add\"],[[5,\"1\"]]]]],\"mul\"],[[5,\"30\"]]]],[13,\"ga\",[6,[7,[6,[7,[6,\"hash22\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]]]]]],\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]],[13,\"gb\",[6,[7,[6,[7,[6,\"hash22\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"0\"]]]]]]],\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]],[13,\"gc\",[6,[7,[6,[7,[6,\"hash22\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]]]]]],\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]],[13,\"gd\",[6,[7,[6,[7,[6,\"hash22\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]],\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]],[13,\"va\",[6,\"std.dot\",[\"ga\",[6,[7,\"f\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]]]]]]],[13,\"vb\",[6,\"std.dot\",[\"gb\",[6,[7,\"f\",\"sub\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"0\"]]]]]]]],[13,\"vc\",[6,\"std.dot\",[\"gc\",[6,[7,\"f\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]]]]]]],[13,\"vd\",[6,\"std.dot\",[\"gd\",[6,[7,\"f\",\"sub\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]]],[13,\"k\",[1,[1,[1,\"va\",\"-\",\"vb\"],\"-\",\"vc\"],\"+\",\"vd\"]],[13,\"value\",[1,[1,[1,\"va\",\"+\",[1,[7,\"u\",\"x\"],\"*\",[1,\"vb\",\"-\",\"va\"]]],\"+\",[1,[7,\"u\",\"y\"],\"*\",[1,\"vc\",\"-\",\"va\"]]],\"+\",[1,[1,[7,\"u\",\"x\"],\"*\",[7,\"u\",\"y\"]],\"*\",\"k\"]]],[13,\"deriv\",[6,[7,[6,[7,[6,[7,[6,[7,\"ga\",\"add\"],[[6,[7,[6,[7,\"gb\",\"sub\"],[\"ga\"]],\"mul\"],[[7,\"u\",\"x\"]]]]],\"add\"],[[6,[7,[6,[7,\"gc\",\"sub\"],[\"ga\"]],\"mul\"],[[7,\"u\",\"y\"]]]]],\"add\"],[[6,[7,[6,[7,[6,[7,[6,[7,\"ga\",\"sub\"],[\"gb\"]],\"sub\"],[\"gc\"]],\"add\"],[\"gd\"]],\"mul\"],[[1,[7,\"u\",\"x\"],\"*\",[7,\"u\",\"y\"]]]]]],\"add\"],[[6,[7,\"du\",\"mul\"],[[6,[7,[6,[7,[6,[7,[6,\"d.vec2f\",[[7,\"u\",\"y\"],[7,\"u\",\"x\"]]],\"mul\"],[\"k\"]],\"add\"],[[6,\"d.vec2f\",[\"vb\",\"vc\"]]]],\"sub\"],[\"va\"]]]]]]],[10,[6,\"d.vec3f\",[\"value\",[7,\"deriv\",\"x\"],[7,\"deriv\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,hash22:()=>Dr,\"d.vec2f\":()=>u,\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),Fl=y.fn([b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.mul(t.mul(34).add(1));return s.sub(K(s.div(289)).mul(289))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"}],body:[0,[[13,\"xx\",[6,[7,\"x\",\"mul\"],[[6,[7,[6,[7,\"x\",\"mul\"],[[5,\"34\"]]],\"add\"],[[5,\"1\"]]]]]],[10,[6,[7,\"xx\",\"sub\"],[[6,[7,[6,\"std.floor\",[[6,[7,\"xx\",\"div\"],[[5,\"289\"]]]]],\"mul\"],[[5,\"289\"]]]]]]]]},externals:{\"std.floor\":()=>K}})&&e.f)({})),CD=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=t.sub(s),o=r.mul(r).mul(It(3,r.mul(2))),n=b(s.x,s.x,s.y,s.y).add(b(0,1,0,1)),i=Fl(b(n.x,n.y,n.x,n.y)),d=Fl(b(i.x,i.y,i.x,i.y).add(b(n.z,n.z,n.w,n.w))).add(b(s.z,s.z,s.z,s.z)),l=Fl(d),c=Fl(d.add(1)),_=Z(ve(l.mul(.02439024)),ve(c.mul(.02439024)),b(o.z)),p=Z(u(_.x,_.z),u(_.y,_.w),u(o.x));return Z(p.x,p.y,o.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"a\",[6,\"std.floor\",[\"p\"]]],[13,\"d0\",[6,[7,\"p\",\"sub\"],[\"a\"]]],[13,\"sd\",[6,[7,[6,[7,\"d0\",\"mul\"],[\"d0\"]],\"mul\"],[[6,\"std.sub\",[[5,\"3\"],[6,[7,\"d0\",\"mul\"],[[5,\"2\"]]]]]]]],[13,\"b\",[6,[7,[6,\"d.vec4f\",[[7,\"a\",\"x\"],[7,\"a\",\"x\"],[7,\"a\",\"y\"],[7,\"a\",\"y\"]]],\"add\"],[[6,\"d.vec4f\",[[5,\"0\"],[5,\"1\"],[5,\"0\"],[5,\"1\"]]]]]],[13,\"k1\",[6,\"perm4\",[[6,\"d.vec4f\",[[7,\"b\",\"x\"],[7,\"b\",\"y\"],[7,\"b\",\"x\"],[7,\"b\",\"y\"]]]]]],[13,\"k2\",[6,[7,[6,\"perm4\",[[6,[7,[6,\"d.vec4f\",[[7,\"k1\",\"x\"],[7,\"k1\",\"y\"],[7,\"k1\",\"x\"],[7,\"k1\",\"y\"]]],\"add\"],[[6,\"d.vec4f\",[[7,\"b\",\"z\"],[7,\"b\",\"z\"],[7,\"b\",\"w\"],[7,\"b\",\"w\"]]]]]]],\"add\"],[[6,\"d.vec4f\",[[7,\"a\",\"z\"],[7,\"a\",\"z\"],[7,\"a\",\"z\"],[7,\"a\",\"z\"]]]]]],[13,\"k3\",[6,\"perm4\",[\"k2\"]]],[13,\"k4\",[6,\"perm4\",[[6,[7,\"k2\",\"add\"],[[5,\"1\"]]]]]],[13,\"o1\",[6,\"std.fract\",[[6,[7,\"k3\",\"mul\"],[[5,\"0.02439024\"]]]]]],[13,\"o2\",[6,\"std.fract\",[[6,[7,\"k4\",\"mul\"],[[5,\"0.02439024\"]]]]]],[13,\"o3\",[6,\"std.mix\",[\"o1\",\"o2\",[6,\"d.vec4f\",[[7,\"sd\",\"z\"]]]]]],[13,\"o4\",[6,\"std.mix\",[[6,\"d.vec2f\",[[7,\"o3\",\"x\"],[7,\"o3\",\"z\"]]],[6,\"d.vec2f\",[[7,\"o3\",\"y\"],[7,\"o3\",\"w\"]]],[6,\"d.vec2f\",[[7,\"sd\",\"x\"]]]]]],[10,[6,\"std.mix\",[[7,\"o4\",\"x\"],[7,\"o4\",\"y\"],[7,\"sd\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.sub\":()=>It,\"d.vec4f\":()=>b,perm4:()=>Fl,\"std.fract\":()=>ve,\"std.mix\":()=>Z,\"d.vec2f\":()=>u}})&&e.f)({})),ra=y.fn([v,v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=v(r,o,n);return le(s.sub(i),Rs(v3(t.add(i)).sub(.5)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"i\"},{type:\"i\",name:\"f\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"},{type:\"i\",name:\"oz\"}],body:[0,[[13,\"o\",[6,\"d.vec3f\",[\"ox\",\"oy\",\"oz\"]]],[10,[6,\"std.dot\",[[6,[7,\"f\",\"sub\"],[\"o\"]],[6,\"std.normalize\",[[6,[7,[6,\"hash33\",[[6,[7,\"i\",\"add\"],[\"o\"]]]],\"sub\"],[[5,\"0.5\"]]]]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.dot\":()=>le,\"std.normalize\":()=>Rs,hash33:()=>v3}})&&e.f)({})),yd=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=t.sub(s),o=r.mul(r).mul(r).mul(r.mul(r.mul(6).sub(15)).add(10)),n=ra(s,r,0,0,0),i=ra(s,r,1,0,0),d=ra(s,r,0,1,0),l=ra(s,r,1,1,0),c=ra(s,r,0,0,1),_=ra(s,r,1,0,1),p=ra(s,r,0,1,1),f=ra(s,r,1,1,1),h=Z(Z(n,i,o.x),Z(d,l,o.x),o.y),g=Z(Z(c,_,o.x),Z(p,f,o.x),o.y);return __tsover_add(__tsover_mul(Z(h,g,o.z),.7),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f\",[6,[7,\"p\",\"sub\"],[\"i\"]]],[13,\"u\",[6,[7,[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[5,\"6\"]]],\"sub\"],[[5,\"15\"]]]]],\"add\"],[[5,\"10\"]]]]]],[13,\"a0\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"0\"],[5,\"0\"],[5,\"0\"]]]],[13,\"b0\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"1\"],[5,\"0\"],[5,\"0\"]]]],[13,\"c0\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"0\"],[5,\"1\"],[5,\"0\"]]]],[13,\"d0\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"1\"],[5,\"1\"],[5,\"0\"]]]],[13,\"a1\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"0\"],[5,\"0\"],[5,\"1\"]]]],[13,\"b1\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"1\"],[5,\"0\"],[5,\"1\"]]]],[13,\"c1\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"0\"],[5,\"1\"],[5,\"1\"]]]],[13,\"d1\",[6,\"perlinGrad3\",[\"i\",\"f\",[5,\"1\"],[5,\"1\"],[5,\"1\"]]]],[13,\"z0\",[6,\"std.mix\",[[6,\"std.mix\",[\"a0\",\"b0\",[7,\"u\",\"x\"]]],[6,\"std.mix\",[\"c0\",\"d0\",[7,\"u\",\"x\"]]],[7,\"u\",\"y\"]]]],[13,\"z1\",[6,\"std.mix\",[[6,\"std.mix\",[\"a1\",\"b1\",[7,\"u\",\"x\"]]],[6,\"std.mix\",[\"c1\",\"d1\",[7,\"u\",\"x\"]]],[7,\"u\",\"y\"]]]],[10,[1,[1,[6,\"std.mix\",[\"z0\",\"z1\",[7,\"u\",\"z\"]]],\"*\",[5,\"0.7\"]],\"+\",[5,\"0.5\"]]]]]},externals:{\"std.floor\":()=>K,perlinGrad3:()=>ra,\"std.mix\":()=>Z}})&&e.f)({})),Bl=y.fn([u,u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return O(__tsover_add(__tsover_mul(r,le(t,Dr(s.add(u(n,i))))),o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"i\"},{type:\"i\",name:\"freq\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[10,[6,\"std.sin\",[[1,[1,\"freq\",\"*\",[6,\"std.dot\",[\"p\",[6,\"hash22\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[\"ox\",\"oy\"]]]]]]]]],\"+\",\"phase\"]]]]]]},externals:{\"std.sin\":()=>O,\"std.dot\":()=>le,hash22:()=>Dr,\"d.vec2f\":()=>u}})&&e.f)({})),RD=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=K(t),n=t.sub(o),i=n.mul(n).mul(It(3,n.mul(2)));return Z(Z(Bl(t,o,s,r,0,0),Bl(t,o,s,r,1,0),i.x),Z(Bl(t,o,s,r,0,1),Bl(t,o,s,r,1,1),i.x),i.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"freq\"},{type:\"i\",name:\"phase\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f0\",[6,[7,\"p\",\"sub\"],[\"i\"]]],[13,\"f\",[6,[7,[6,[7,\"f0\",\"mul\"],[\"f0\"]],\"mul\"],[[6,\"std.sub\",[[5,\"3\"],[6,[7,\"f0\",\"mul\"],[[5,\"2\"]]]]]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[[6,\"gaborGrain\",[\"p\",\"i\",\"freq\",\"phase\",[5,\"0\"],[5,\"0\"]]],[6,\"gaborGrain\",[\"p\",\"i\",\"freq\",\"phase\",[5,\"1\"],[5,\"0\"]]],[7,\"f\",\"x\"]]],[6,\"std.mix\",[[6,\"gaborGrain\",[\"p\",\"i\",\"freq\",\"phase\",[5,\"0\"],[5,\"1\"]]],[6,\"gaborGrain\",[\"p\",\"i\",\"freq\",\"phase\",[5,\"1\"],[5,\"1\"]]],[7,\"f\",\"x\"]]],[7,\"f\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.sub\":()=>It,\"std.mix\":()=>Z,gaborGrain:()=>Bl}})&&e.f)({})),Yd=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=u(Si(t.add(u(.1,0))),Si(t.add(u(0,.1)))),r=u(Si(t.sub(u(.1,0))),Si(t.sub(u(0,.1))));return s.sub(r).div(.1).mul(.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"a\",[6,\"d.vec2f\",[[6,\"perlin12\",[[6,[7,\"p\",\"add\"],[[6,\"d.vec2f\",[[5,\"0.1\"],[5,\"0\"]]]]]]],[6,\"perlin12\",[[6,[7,\"p\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0.1\"]]]]]]]]]],[13,\"b\",[6,\"d.vec2f\",[[6,\"perlin12\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.1\"],[5,\"0\"]]]]]]],[6,\"perlin12\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0.1\"]]]]]]]]]],[10,[6,[7,[6,[7,[6,[7,\"a\",\"sub\"],[\"b\"]],\"div\"],[[5,\"0.1\"]]],\"mul\"],[[5,\"0.5\"]]]]]]},externals:{\"d.vec2f\":()=>u,perlin12:()=>Si}})&&e.f)({})),h3=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t.add(u(.1,0)),o=t.add(u(0,.1)),n=t.sub(u(.1,0)),i=t.sub(u(0,.1)),d=u(yd(v(r.x,r.y,s)),yd(v(o.x,o.y,s))),l=u(yd(v(n.x,n.y,s)),yd(v(i.x,i.y,s)));return d.sub(l).div(.1).mul(.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"z\"}],body:[0,[[13,\"pax\",[6,[7,\"p\",\"add\"],[[6,\"d.vec2f\",[[5,\"0.1\"],[5,\"0\"]]]]]],[13,\"pay\",[6,[7,\"p\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0.1\"]]]]]],[13,\"pbx\",[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.1\"],[5,\"0\"]]]]]],[13,\"pby\",[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0.1\"]]]]]],[13,\"a\",[6,\"d.vec2f\",[[6,\"perlin13\",[[6,\"d.vec3f\",[[7,\"pax\",\"x\"],[7,\"pax\",\"y\"],\"z\"]]]],[6,\"perlin13\",[[6,\"d.vec3f\",[[7,\"pay\",\"x\"],[7,\"pay\",\"y\"],\"z\"]]]]]]],[13,\"b\",[6,\"d.vec2f\",[[6,\"perlin13\",[[6,\"d.vec3f\",[[7,\"pbx\",\"x\"],[7,\"pbx\",\"y\"],\"z\"]]]],[6,\"perlin13\",[[6,\"d.vec3f\",[[7,\"pby\",\"x\"],[7,\"pby\",\"y\"],\"z\"]]]]]]],[10,[6,[7,[6,[7,[6,[7,\"a\",\"sub\"],[\"b\"]],\"div\"],[[5,\"0.1\"]]],\"mul\"],[[5,\"0.5\"]]]]]]},externals:{\"d.vec2f\":()=>u,perlin13:()=>yd,\"d.vec3f\":()=>v}})&&e.f)({})),$O=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=a(0),n=a(1),i=a(0),d=u(t.x,t.y);for(let l=0;l<4;l++){let c=d.mul(n),_=ve(K(c).mul(u(123.34,233.53)));_=_.add(le(_,_.add(23.234)));let p=__tsover_mul(ve(__tsover_mul(_.x,_.y)),1e3),f=ve(c).sub(.5),h=J(p),g=O(p),x=u(__tsover_sub(__tsover_mul(f.x,h),__tsover_mul(f.y,g)),__tsover_add(__tsover_mul(f.x,g),__tsover_mul(f.y,h)));o=__tsover_add(o,__tsover_div(__tsover_mul(O(__tsover_add(__tsover_mul(x.x,10),s)),ce(.25,0,le(x,x))),n)),d=u(__tsover_sub(__tsover_mul(d.x,.54),__tsover_mul(d.y,.84)),__tsover_add(__tsover_mul(d.x,.84),__tsover_mul(d.y,.54))).add(a(l)),i=__tsover_add(i,__tsover_div(1,n)),n=__tsover_mul(n,r)}return __tsover_div(o,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"scale\"}],body:[0,[[12,\"dsum\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"s\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"m\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"pp\",[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"y\"]]]],[14,[12,\"idx\",[5,\"0\"]],[1,\"idx\",\"<\",[5,\"4\"]],[102,\"++\",\"idx\"],[0,[[13,\"q0\",[6,[7,\"pp\",\"mul\"],[\"s\"]]],[12,\"g\",[6,\"std.fract\",[[6,[7,[6,\"std.floor\",[\"q0\"]],\"mul\"],[[6,\"d.vec2f\",[[5,\"123.34\"],[5,\"233.53\"]]]]]]]],[2,\"g\",\"=\",[6,[7,\"g\",\"add\"],[[6,\"std.dot\",[\"g\",[6,[7,\"g\",\"add\"],[[5,\"23.234\"]]]]]]]],[13,\"a\",[1,[6,\"std.fract\",[[1,[7,\"g\",\"x\"],\"*\",[7,\"g\",\"y\"]]]],\"*\",[5,\"1000\"]]],[13,\"qc\",[6,[7,[6,\"std.fract\",[\"q0\"]],\"sub\"],[[5,\"0.5\"]]]],[13,\"ca\",[6,\"std.cos\",[\"a\"]]],[13,\"sa\",[6,\"std.sin\",[\"a\"]]],[13,\"q\",[6,\"d.vec2f\",[[1,[1,[7,\"qc\",\"x\"],\"*\",\"ca\"],\"-\",[1,[7,\"qc\",\"y\"],\"*\",\"sa\"]],[1,[1,[7,\"qc\",\"x\"],\"*\",\"sa\"],\"+\",[1,[7,\"qc\",\"y\"],\"*\",\"ca\"]]]]],[2,\"dsum\",\"=\",[1,\"dsum\",\"+\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"q\",\"x\"],\"*\",[5,\"10\"]],\"+\",\"phase\"]]],\"*\",[6,\"std.smoothstep\",[[5,\"0.25\"],[5,\"0\"],[6,\"std.dot\",[\"q\",\"q\"]]]]],\"/\",\"s\"]]],[2,\"pp\",\"=\",[6,[7,[6,\"d.vec2f\",[[1,[1,[7,\"pp\",\"x\"],\"*\",[5,\"0.54\"]],\"-\",[1,[7,\"pp\",\"y\"],\"*\",[5,\"0.84\"]]],[1,[1,[7,\"pp\",\"x\"],\"*\",[5,\"0.84\"]],\"+\",[1,[7,\"pp\",\"y\"],\"*\",[5,\"0.54\"]]]]],\"add\"],[[6,\"d.f32\",[\"idx\"]]]]],[2,\"m\",\"=\",[1,\"m\",\"+\",[1,[5,\"1\"],\"/\",\"s\"]]],[2,\"s\",\"=\",[1,\"s\",\"*\",\"scale\"]]]]],[10,[1,\"dsum\",\"/\",\"m\"]]]]},externals:{\"d.f32\":()=>a,\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.floor\":()=>K,\"std.dot\":()=>le,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.smoothstep\":()=>ce}})&&e.f)({})),CO=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=a(0);for(let r=0;r<9;r++){let o=a(r),n=K(__tsover_div(o,3)),i=__tsover_sub(o,__tsover_mul(n,3));s=__tsover_add(s,ms(t.add(u(__tsover_sub(i,1),__tsover_sub(n,1)))))}return __tsover_add(__tsover_mul(.9,__tsover_sub(__tsover_mul(1.125,ms(t)),__tsover_div(s,8))),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[12,\"v\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"k\",[5,\"0\"]],[1,\"k\",\"<\",[5,\"9\"]],[102,\"++\",\"k\"],[0,[[13,\"fk\",[6,\"d.f32\",[\"k\"]]],[13,\"row\",[6,\"std.floor\",[[1,\"fk\",\"/\",[5,\"3\"]]]]],[13,\"col\",[1,\"fk\",\"-\",[1,\"row\",\"*\",[5,\"3\"]]]],[2,\"v\",\"=\",[1,\"v\",\"+\",[6,\"hash12\",[[6,[7,\"p\",\"add\"],[[6,\"d.vec2f\",[[1,\"col\",\"-\",[5,\"1\"]],[1,\"row\",\"-\",[5,\"1\"]]]]]]]]]]]]],[10,[1,[1,[5,\"0.9\"],\"*\",[1,[1,[5,\"1.125\"],\"*\",[6,\"hash12\",[\"p\"]]],\"-\",[1,\"v\",\"/\",[5,\"8\"]]]],\"+\",[5,\"0.5\"]]]]]},externals:{\"d.f32\":()=>a,\"std.floor\":()=>K,hash12:()=>ms,\"d.vec2f\":()=>u}})&&e.f)({})),y3=y.fn([tp],oe)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=oe(0),r=t.x,o=t.y;for(let n=256;n>0;n=n>>1){let i=oe(n),d=F(oe(0),oe(1),(r&i)>0),l=F(oe(0),oe(1),(o&i)>0),c=d<<1|d^l;s=__tsover_add(s,__tsover_mul(__tsover_mul(i,i),c));let _=__tsover_sub(oe(1),l),p=__tsover_mul(r^o,_)^__tsover_mul(oe(__tsover_sub(n,1)),d&_);r=r^p,o=o^p}return s}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[12,\"i\",[6,\"d.i32\",[[5,\"0\"]]]],[12,\"px\",[7,\"p\",\"x\"]],[12,\"py\",[7,\"p\",\"y\"]],[14,[12,\"s\",[5,\"256\"]],[1,\"s\",\">\",[5,\"0\"]],[2,\"s\",\"=\",[1,\"s\",\">>\",[5,\"1\"]]],[0,[[13,\"S\",[6,\"d.i32\",[\"s\"]]],[13,\"rx\",[6,\"std.select\",[[6,\"d.i32\",[[5,\"0\"]]],[6,\"d.i32\",[[5,\"1\"]]],[1,[1,\"px\",\"&\",\"S\"],\">\",[5,\"0\"]]]]],[13,\"ry\",[6,\"std.select\",[[6,\"d.i32\",[[5,\"0\"]]],[6,\"d.i32\",[[5,\"1\"]]],[1,[1,\"py\",\"&\",\"S\"],\">\",[5,\"0\"]]]]],[13,\"dq\",[1,[1,\"rx\",\"<<\",[5,\"1\"]],\"|\",[1,\"rx\",\"^\",\"ry\"]]],[2,\"i\",\"=\",[1,\"i\",\"+\",[1,[1,\"S\",\"*\",\"S\"],\"*\",\"dq\"]]],[13,\"oneMinusRy\",[1,[6,\"d.i32\",[[5,\"1\"]]],\"-\",\"ry\"]],[13,\"rhs\",[1,[1,[1,\"px\",\"^\",\"py\"],\"*\",\"oneMinusRy\"],\"^\",[1,[6,\"d.i32\",[[1,\"s\",\"-\",[5,\"1\"]]]],\"*\",[1,\"rx\",\"&\",\"oneMinusRy\"]]]],[2,\"px\",\"=\",[1,\"px\",\"^\",\"rhs\"]],[2,\"py\",\"=\",[1,\"py\",\"^\",\"rhs\"]]]]],[10,\"i\"]]]},externals:{\"d.i32\":()=>oe,\"std.select\":()=>F}})&&e.f)({}));y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=y3(tp(oe(t.x),oe(t.y)))&oe(262143);return ve(__tsover_mul(.6180339887498949,a(s)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"idx\",[1,[6,\"hilbertEncode512\",[[6,\"d.vec2i\",[[6,\"d.i32\",[[7,\"p\",\"x\"]]],[6,\"d.i32\",[[7,\"p\",\"y\"]]]]]]],\"&\",[6,\"d.i32\",[[5,\"262143\"]]]]],[10,[6,\"std.fract\",[[1,[5,\"0.6180339887498949\"],\"*\",[6,\"d.f32\",[\"idx\"]]]]]]]]},externals:{hilbertEncode512:()=>y3,\"d.vec2i\":()=>tp,\"d.i32\":()=>oe,\"std.fract\":()=>ve,\"d.f32\":()=>a}})&&e.f)({}));var g3=y.fn([u,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=K(t),i=t.sub(n),d=K(__tsover_mul(O(__tsover_mul(n.x,51024)),3104)),l=K(__tsover_mul(O(__tsover_mul(n.y,1324)),554)),c=__tsover_add(d,l),_=i.mul(2).sub(1);_=_.mul(J(c)).add(u(-_.y,_.x).mul(O(c))),_=_.add(O(__tsover_sub(d,l))),_=_.mul(.5).add(.5);let p=__tsover_mul(__tsover_add(O(__tsover_add(d,__tsover_mul(_.y,Math.PI))),O(__tsover_add(l,__tsover_mul(_.y,Math.PI)))),.2),f=W(__tsover_add(__tsover_sub(_.x,.5),p));f=__tsover_sub(.5,__tsover_mul(f,__tsover_div(s,o))),f=__tsover_mul(ce(-2,__tsover_add(__tsover_mul(As(f),1.5),16),f),12);let h=__tsover_add(__tsover_mul(O(__tsover_add(r,__tsover_mul(ms(n),6.2831853))),.5),.5);return __tsover_mul(__tsover_mul(f,_.y),h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"f\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"thickness\"}],body:[0,[[13,\"seed0\",[6,\"std.floor\",[\"uv\"]]],[13,\"lo\",[6,[7,\"uv\",\"sub\"],[\"seed0\"]]],[13,\"sx\",[6,\"std.floor\",[[1,[6,\"std.sin\",[[1,[7,\"seed0\",\"x\"],\"*\",[5,\"51024\"]]]],\"*\",[5,\"3104\"]]]]],[13,\"sy\",[6,\"std.floor\",[[1,[6,\"std.sin\",[[1,[7,\"seed0\",\"y\"],\"*\",[5,\"1324\"]]]],\"*\",[5,\"554\"]]]]],[13,\"ss\",[1,\"sx\",\"+\",\"sy\"]],[12,\"u2\",[6,[7,[6,[7,\"lo\",\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]],[2,\"u2\",\"=\",[6,[7,[6,[7,\"u2\",\"mul\"],[[6,\"std.cos\",[\"ss\"]]]],\"add\"],[[6,[7,[6,\"d.vec2f\",[[4,\"-\",[7,\"u2\",\"y\"]],[7,\"u2\",\"x\"]]],\"mul\"],[[6,\"std.sin\",[\"ss\"]]]]]]],[2,\"u2\",\"=\",[6,[7,\"u2\",\"add\"],[[6,\"std.sin\",[[1,\"sx\",\"-\",\"sy\"]]]]]],[2,\"u2\",\"=\",[6,[7,[6,[7,\"u2\",\"mul\"],[[5,\"0.5\"]]],\"add\"],[[5,\"0.5\"]]]],[13,\"WAVYNESS\",[5,\"0.2\"]],[13,\"sVal\",[1,[1,[6,\"std.sin\",[[1,\"sx\",\"+\",[1,[7,\"u2\",\"y\"],\"*\",\"Math.PI\"]]]],\"+\",[6,\"std.sin\",[[1,\"sy\",\"+\",[1,[7,\"u2\",\"y\"],\"*\",\"Math.PI\"]]]]],\"*\",\"WAVYNESS\"]],[12,\"x\",[6,\"std.abs\",[[1,[1,[7,\"u2\",\"x\"],\"-\",[5,\"0.5\"]],\"+\",\"sVal\"]]]],[2,\"x\",\"=\",[1,[5,\"0.5\"],\"-\",[1,\"x\",\"*\",[1,\"f\",\"/\",\"thickness\"]]]],[2,\"x\",\"=\",[1,[6,\"std.smoothstep\",[[4,\"-\",[5,\"2\"]],[1,[1,[6,\"std.fwidth\",[\"x\"]],\"*\",[5,\"1.5\"]],\"+\",[5,\"16\"]],\"x\"]],\"*\",[5,\"12\"]]],[13,\"pulse\",[1,[1,[6,\"std.sin\",[[1,\"time\",\"+\",[1,[6,\"hash12\",[\"seed0\"]],\"*\",[5,\"6.2831853\"]]]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]],[10,[1,[1,\"x\",\"*\",[7,\"u2\",\"y\"]],\"*\",\"pulse\"]]]]},externals:{\"std.floor\":()=>K,\"std.sin\":()=>O,\"std.cos\":()=>J,\"d.vec2f\":()=>u,\"Math.PI\":()=>Math.PI,\"std.abs\":()=>W,\"std.smoothstep\":()=>ce,\"std.fwidth\":()=>As,hash12:()=>ms}})&&e.f)({})),RO=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=a(0),n=u(t.x,t.y),i=__tsover_div(1,te(As(t)));for(let d=0;d<8;d++)o=w(o,g3(n,i,s,r)),n=u(__tsover_add(n.x,__tsover_mul(n.y,.7)),__tsover_add(__tsover_mul(n.x,-.7),n.y)).sub(12.31);return o}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"thickness\"}],body:[0,[[12,\"scratches\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"p\",[6,\"d.vec2f\",[[7,\"uv\",\"x\"],[7,\"uv\",\"y\"]]]],[13,\"f\",[1,[5,\"1\"],\"/\",[6,\"std.length\",[[6,\"std.fwidth\",[\"uv\"]]]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"8\"]],[102,\"++\",\"i\"],[0,[[2,\"scratches\",\"=\",[6,\"std.max\",[\"scratches\",[6,\"scratchOne\",[\"p\",\"f\",\"time\",\"thickness\"]]]]],[2,\"p\",\"=\",[6,[7,[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",[5,\"0.7\"]]],[1,[1,[7,\"p\",\"x\"],\"*\",[4,\"-\",[5,\"0.7\"]]],\"+\",[7,\"p\",\"y\"]]]],\"sub\"],[[5,\"12.31\"]]]]]]],[10,\"scratches\"]]]},externals:{\"d.f32\":()=>a,\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.fwidth\":()=>As,\"std.max\":()=>w,scratchOne:()=>g3}})&&e.f)({})),x3=y.fn([u,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=a(0),o=a(0),n=a(1),i=u(t.x,t.y);for(let d=0;d<s;d++)r=__tsover_add(r,__tsover_mul(n,Si(i))),o=__tsover_add(o,n),n=__tsover_mul(n,.5),i=i.mul(2);return __tsover_div(r,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"octaves\"}],body:[0,[[12,\"s\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"m\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"a\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"pp\",[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"y\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"octaves\"],[102,\"++\",\"i\"],[0,[[2,\"s\",\"=\",[1,\"s\",\"+\",[1,\"a\",\"*\",[6,\"perlin12\",[\"pp\"]]]]],[2,\"m\",\"=\",[1,\"m\",\"+\",\"a\"]],[2,\"a\",\"=\",[1,\"a\",\"*\",[5,\"0.5\"]]],[2,\"pp\",\"=\",[6,[7,\"pp\",\"mul\"],[[5,\"2\"]]]]]]],[10,[1,\"s\",\"/\",\"m\"]]]]},externals:{\"d.f32\":()=>a,\"d.vec2f\":()=>u,perlin12:()=>Si}})&&e.f)({})),b3=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=v(0,0,0),r=a(1),o=u(t.x,t.y);for(let n=0;n<6;n++)s=s.add(qn(o).mul(r)),r=__tsover_mul(r,.5),o=o.mul(2);return s}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[12,\"s\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]]],[12,\"a\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"pp\",[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"y\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"6\"]],[102,\"++\",\"i\"],[0,[[2,\"s\",\"=\",[6,[7,\"s\",\"add\"],[[6,[7,[6,\"perlin12d\",[\"pp\"]],\"mul\"],[\"a\"]]]]],[2,\"a\",\"=\",[1,\"a\",\"*\",[5,\"0.5\"]]],[2,\"pp\",\"=\",[6,[7,\"pp\",\"mul\"],[[5,\"2\"]]]]]]],[10,\"s\"]]]},externals:{\"d.vec3f\":()=>v,\"d.f32\":()=>a,\"d.vec2f\":()=>u,perlin12d:()=>qn}})&&e.f)({})),UO=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=b3(t);return x3(t.add(u(s.y,s.z).mul(.4)),oe(6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"fs\",[6,\"fbmStone\",[\"p\"]]],[10,[6,\"fbmPerlin\",[[6,[7,\"p\",\"add\"],[[6,[7,[6,\"d.vec2f\",[[7,\"fs\",\"y\"],[7,\"fs\",\"z\"]]],\"mul\"],[[5,\"0.4\"]]]]],[6,\"d.i32\",[[5,\"6\"]]]]]]]]},externals:{fbmStone:()=>b3,fbmPerlin:()=>x3,\"d.vec2f\":()=>u,\"d.i32\":()=>oe}})&&e.f)({})),w3=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=u(0,0),r=a(0),o=a(1),n=u(t.x,t.y);for(let i=0;i<6;i++)s=s.add(Yd(n).mul(o)),r=__tsover_add(r,o),o=__tsover_mul(o,.5),n=n.mul(2);return s.div(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[12,\"s\",[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]]],[12,\"m\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"a\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"pp\",[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"y\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"6\"]],[102,\"++\",\"i\"],[0,[[2,\"s\",\"=\",[6,[7,\"s\",\"add\"],[[6,[7,[6,\"curl22\",[\"pp\"]],\"mul\"],[\"a\"]]]]],[2,\"m\",\"=\",[1,\"m\",\"+\",\"a\"]],[2,\"a\",\"=\",[1,\"a\",\"*\",[5,\"0.5\"]]],[2,\"pp\",\"=\",[6,[7,\"pp\",\"mul\"],[[5,\"2\"]]]]]]],[10,[6,[7,\"s\",\"div\"],[\"m\"]]]]]},externals:{\"d.vec2f\":()=>u,\"d.f32\":()=>a,curl22:()=>Yd}})&&e.f)({})),zO=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=w3(t);return w(W(s.x),W(s.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"n\",[6,\"fbmWool\",[\"p\"]]],[10,[6,\"std.max\",[[6,\"std.abs\",[[7,\"n\",\"x\"]]],[6,\"std.abs\",[[7,\"n\",\"y\"]]]]]]]]},externals:{fbmWool:()=>w3,\"std.max\":()=>w,\"std.abs\":()=>W}})&&e.f)({})),T3=y.fn([u,u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=u(-s.y,s.x).mul(Math.PI),o=K(t),n=t.sub(o),i=u(0,0),d=a(0);for(let l=-1;l<=2;l++)for(let c=-1;c<=2;c++){let _=u(a(l),a(c)),p=n.sub(_).sub(Dr(o.add(_))).add(.5),f=le(p,p),h=w(a(0),__tsover_sub(Mt(__tsover_mul(f,-2)),.01111));d=__tsover_add(d,h);let g=le(p,r);i=i.add(u(J(g),-O(g)).mul(h))}return v(i.x,__tsover_mul(i.y,r.x),__tsover_mul(i.y,r.y)).div(d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"slope\"}],body:[0,[[13,\"sideDir\",[6,[7,[6,\"d.vec2f\",[[4,\"-\",[7,\"slope\",\"y\"]],[7,\"slope\",\"x\"]]],\"mul\"],[\"Math.PI\"]]],[13,\"id\",[6,\"std.floor\",[\"p\"]]],[13,\"pp\",[6,[7,\"p\",\"sub\"],[\"id\"]]],[12,\"heightSlope\",[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]]],[12,\"wSum\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"x\",[4,\"-\",[5,\"1\"]]],[1,\"x\",\"<=\",[5,\"2\"]],[102,\"++\",\"x\"],[0,[[14,[12,\"y\",[4,\"-\",[5,\"1\"]]],[1,\"y\",\"<=\",[5,\"2\"]],[102,\"++\",\"y\"],[0,[[13,\"off\",[6,\"d.vec2f\",[[6,\"d.f32\",[\"x\"]],[6,\"d.f32\",[\"y\"]]]]],[13,\"c\",[6,[7,[6,[7,[6,[7,\"pp\",\"sub\"],[\"off\"]],\"sub\"],[[6,\"hash22\",[[6,[7,\"id\",\"add\"],[\"off\"]]]]]],\"add\"],[[5,\"0.5\"]]]],[13,\"dist2\",[6,\"std.dot\",[\"c\",\"c\"]]],[13,\"w\",[6,\"std.max\",[[6,\"d.f32\",[[5,\"0\"]]],[1,[6,\"std.exp\",[[1,\"dist2\",\"*\",[4,\"-\",[5,\"2\"]]]]],\"-\",[5,\"0.01111\"]]]]],[2,\"wSum\",\"=\",[1,\"wSum\",\"+\",\"w\"]],[13,\"t\",[6,\"std.dot\",[\"c\",\"sideDir\"]]],[2,\"heightSlope\",\"=\",[6,[7,\"heightSlope\",\"add\"],[[6,[7,[6,\"d.vec2f\",[[6,\"std.cos\",[\"t\"]],[4,\"-\",[6,\"std.sin\",[\"t\"]]]]],\"mul\"],[\"w\"]]]]]]]]]]],[10,[6,[7,[6,\"d.vec3f\",[[7,\"heightSlope\",\"x\"],[1,[7,\"heightSlope\",\"y\"],\"*\",[7,\"sideDir\",\"x\"]],[1,[7,\"heightSlope\",\"y\"],\"*\",[7,\"sideDir\",\"y\"]]]],\"div\"],[\"wSum\"]]]]]},externals:{\"d.vec2f\":()=>u,\"Math.PI\":()=>Math.PI,\"std.floor\":()=>K,\"d.f32\":()=>a,hash22:()=>Dr,\"std.dot\":()=>le,\"std.max\":()=>w,\"std.exp\":()=>Mt,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec3f\":()=>v}})&&e.f)({})),GO=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=qn(t),r=a(.25),o=a(8),n=a(1);for(let i=0;i<4;i++){let d=u(s.y,s.z),l=w(le(d,d),a(1e-4)),c=d.mul(Ye(l,a(__tsover_mul(.5,__tsover_sub(.5,1)))));s=s.add(T3(t.mul(o),c).mul(r).mul(v(1,o,o))),n=__tsover_add(n,r),r=__tsover_mul(r,.5),o=__tsover_mul(o,2)}return s.div(n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[12,\"nd\",[6,\"perlin12d\",[\"p\"]]],[12,\"strength\",[6,\"d.f32\",[[5,\"0.25\"]]]],[12,\"freq\",[6,\"d.f32\",[[5,\"8\"]]]],[12,\"total\",[6,\"d.f32\",[[5,\"1\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"4\"]],[102,\"++\",\"i\"],[0,[[13,\"grad\",[6,\"d.vec2f\",[[7,\"nd\",\"y\"],[7,\"nd\",\"z\"]]]],[13,\"len2\",[6,\"std.max\",[[6,\"std.dot\",[\"grad\",\"grad\"]],[6,\"d.f32\",[[5,\"0.0001\"]]]]]],[13,\"slope\",[6,[7,\"grad\",\"mul\"],[[6,\"std.pow\",[\"len2\",[6,\"d.f32\",[[1,[5,\"0.5\"],\"*\",[1,[5,\"0.5\"],\"-\",[5,\"1\"]]]]]]]]]],[2,\"nd\",\"=\",[6,[7,\"nd\",\"add\"],[[6,[7,[6,[7,[6,\"gullies\",[[6,[7,\"p\",\"mul\"],[\"freq\"]],\"slope\"]],\"mul\"],[\"strength\"]],\"mul\"],[[6,\"d.vec3f\",[[5,\"1\"],\"freq\",\"freq\"]]]]]]],[2,\"total\",\"=\",[1,\"total\",\"+\",\"strength\"]],[2,\"strength\",\"=\",[1,\"strength\",\"*\",[5,\"0.5\"]]],[2,\"freq\",\"=\",[1,\"freq\",\"*\",[5,\"2\"]]]]]],[10,[6,[7,\"nd\",\"div\"],[\"total\"]]]]]},externals:{perlin12d:()=>qn,\"d.f32\":()=>a,\"d.vec2f\":()=>u,\"std.max\":()=>w,\"std.dot\":()=>le,\"std.pow\":()=>Ye,gullies:()=>T3,\"d.vec3f\":()=>v}})&&e.f)({})),S3=y.fn([u,oe],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=u(0,0),o=a(0),n=a(1),i=u(t.x,t.y);for(let d=0;d<s;d++)r=r.add(z(Yd(i).mul(.5).add(.5),u(0,0),u(1,1)).mul(n)),o=__tsover_add(o,n),n=__tsover_mul(n,.8),i=i.mul(2);return r.div(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"octaves\"}],body:[0,[[12,\"s\",[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]]],[12,\"m\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"a\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"pp\",[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"y\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"octaves\"],[102,\"++\",\"i\"],[0,[[2,\"s\",\"=\",[6,[7,\"s\",\"add\"],[[6,[7,[6,\"std.clamp\",[[6,[7,[6,[7,[6,\"curl22\",[\"pp\"]],\"mul\"],[[5,\"0.5\"]]],\"add\"],[[5,\"0.5\"]]],[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]],[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]],\"mul\"],[\"a\"]]]]],[2,\"m\",\"=\",[1,\"m\",\"+\",\"a\"]],[2,\"a\",\"=\",[1,\"a\",\"*\",[5,\"0.8\"]]],[2,\"pp\",\"=\",[6,[7,\"pp\",\"mul\"],[[5,\"2\"]]]]]]],[10,[6,[7,\"s\",\"div\"],[\"m\"]]]]]},externals:{\"d.vec2f\":()=>u,\"d.f32\":()=>a,\"std.clamp\":()=>z,curl22:()=>Yd}})&&e.f)({})),A3=y.fn([u,oe],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_add(__tsover_mul(__tsover_div(te(S3(t,s)),1.414),.6),.4)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"octaves\"}],body:[0,[[10,[1,[1,[1,[6,\"std.length\",[[6,\"fbmPaper\",[\"p\",\"octaves\"]]]],\"/\",[5,\"1.414\"]],\"*\",[5,\"0.6\"]],\"+\",[5,\"0.4\"]]]]]},externals:{\"std.length\":()=>te,fbmPaper:()=>S3}})&&e.f)({}));y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(__tsover_add(__tsover_mul(t.x,.2126),__tsover_mul(t.y,.7152)),__tsover_mul(t.z,.0722))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[1,[1,[1,[7,\"rgb\",\"x\"],\"*\",[5,\"0.2126\"]],\"+\",[1,[7,\"rgb\",\"y\"],\"*\",[5,\"0.7152\"]]],\"+\",[1,[7,\"rgb\",\"z\"],\"*\",[5,\"0.0722\"]]]]]]},externals:{}})&&e.f)({}));y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(__tsover_add(__tsover_mul(t.x,.299),__tsover_mul(t.y,.587)),__tsover_mul(t.z,.114))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[1,[1,[1,[7,\"rgb\",\"x\"],\"*\",[5,\"0.299\"]],\"+\",[1,[7,\"rgb\",\"y\"],\"*\",[5,\"0.587\"]]],\"+\",[1,[7,\"rgb\",\"z\"],\"*\",[5,\"0.114\"]]]]]]},externals:{}})&&e.f)({}));var E3=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return le(t,v(.2126,.7152,.0722))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),cp=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return le(t,v(.299,.587,.114))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({}));y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return z(__tsover_add(__tsover_mul(__tsover_sub(t,r),s),r),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"pivot\"}],body:[0,[[10,[6,\"std.clamp\",[[1,[1,[1,\"x\",\"-\",\"pivot\"],\"*\",\"contrast\"],\"+\",\"pivot\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({}));var UD=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(__tsover_mul(t,.5),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[10,[1,[1,\"v\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]]},externals:{}})&&e.f)({}));y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_sub(1,W(t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.abs\",[\"v\"]]]]]]},externals:{\"std.abs\":()=>W}})&&e.f)({}));var j7=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=z(__tsover_add(__tsover_add(__tsover_mul(__tsover_sub(t,.5),__tsover_add(s,1)),.5),r),0,1);return __tsover_sub(1,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"noise01\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"balance\"}],body:[0,[[13,\"k\",[6,\"std.clamp\",[[1,[1,[1,[1,\"noise01\",\"-\",[5,\"0.5\"]],\"*\",[1,\"contrast\",\"+\",[5,\"1\"]]],\"+\",[5,\"0.5\"]],\"+\",\"balance\"],[5,\"0\"],[5,\"1\"]]]],[10,[1,[5,\"1\"],\"-\",\"k\"]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({})),zD=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_add(__tsover_mul(t,__tsover_add(s,1)),r),n=z(__tsover_add(__tsover_mul(o,.5),.5),0,1);return __tsover_sub(1,n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"balance\"}],body:[0,[[13,\"adjusted\",[1,[1,\"v\",\"*\",[1,\"contrast\",\"+\",[5,\"1\"]]],\"+\",\"balance\"]],[13,\"k\",[6,\"std.clamp\",[[1,[1,\"adjusted\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[10,[1,[5,\"1\"],\"-\",\"k\"]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({})),GD=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(__tsover_mul(t,2),1),n=__tsover_add(__tsover_mul(o,s),r);return z(__tsover_add(__tsover_mul(n,.5),.5),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"balance\"}],body:[0,[[13,\"signed\",[1,[1,\"v\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]],[13,\"adjusted\",[1,[1,\"signed\",\"*\",\"contrast\"],\"+\",\"balance\"]],[10,[6,\"std.clamp\",[[1,[1,\"adjusted\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({})),DD=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Ye(t,__tsover_div(5,s)),i=z(__tsover_add(__tsover_mul(__tsover_sub(n,.5),r),.5),0,1),d=__tsover_sub(__tsover_div(o,100),.5),l=z(__tsover_add(i,d),0,1);return __tsover_sub(1,l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"},{type:\"i\",name:\"glow\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"balance\"}],body:[0,[[13,\"spread\",[6,\"std.pow\",[\"v\",[1,[5,\"5\"],\"/\",\"glow\"]]]],[13,\"contrasted\",[6,\"std.clamp\",[[1,[1,[1,\"spread\",\"-\",[5,\"0.5\"]],\"*\",\"contrast\"],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"balanceShift\",[1,[1,\"balance\",\"/\",[5,\"100\"]],\"-\",[5,\"0.5\"]]],[13,\"balanced\",[6,\"std.clamp\",[[1,\"contrasted\",\"+\",\"balanceShift\"],[5,\"0\"],[5,\"1\"]]]],[10,[1,[5,\"1\"],\"-\",\"balanced\"]]]]},externals:{\"std.pow\":()=>Ye,\"std.clamp\":()=>z}})&&e.f)({}));function K7(e){let{domain:t,contrastMode:s,invert:r,glowGamma:o=!1,balance:n=\"plain\"}=e;if(o){if(t===\"unit\"&&s===\"multiplicative\"&&r&&n===\"percentCentred\")return DD}else if(n===\"plain\"){if(t===\"unit\"&&s===\"additive\"&&r)return j7;if(t===\"signed\"&&s===\"additive\"&&r)return zD;if(t===\"unit\"&&s===\"multiplicative\"&&!r)return GD}throw new Error(`toneRemap: no variant for {domain: '${t}', contrastMode: '${s}', invert: ${r}, glowGamma: ${o}, balance: '${n}'} \\u2014 add its body to kit/tone.ts rather than approximating.`)}var LD=y.fn([b,u,u,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=ms(s.mul(r).add(u(o,__tsover_mul(o,1.618))));return b(z(t.xyz.add(__tsover_mul(__tsover_sub(n,.5),.004)),v(0),v(1)),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"n\",[6,\"hash12\",[[6,[7,[6,[7,\"uv\",\"mul\"],[\"viewport\"]],\"add\"],[[6,\"d.vec2f\",[\"animTime\",[1,\"animTime\",\"*\",[5,\"1.618\"]]]]]]]]],[13,\"rgb\",[6,\"std.clamp\",[[6,[7,[7,\"base\",\"xyz\"],\"add\"],[[1,[1,\"n\",\"-\",[5,\"0.5\"]],\"*\",[5,\"0.004\"]]]],[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]],[10,[6,\"d.vec4f\",[\"rgb\",[7,\"base\",\"w\"]]]]]]},externals:{hash12:()=>ms,\"d.vec2f\":()=>u,\"std.clamp\":()=>z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),Vt=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_div(t.x,w(t.y,1e-6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"viewport\"}],body:[0,[[10,[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]]]]},externals:{\"std.max\":()=>w}})&&e.f)({})),Wd=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_sub(t,__tsover_mul(s,K(__tsover_div(t,s))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"m\"}],body:[0,[[10,[1,\"x\",\"-\",[1,\"m\",\"*\",[6,\"std.floor\",[[1,\"x\",\"/\",\"m\"]]]]]]]]},externals:{\"std.floor\":()=>K}})&&e.f)({})),H1=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(__tsover_sub(t.x,__tsover_mul(s.x,K(__tsover_div(t.x,s.x)))),__tsover_sub(t.y,__tsover_mul(s.y,K(__tsover_div(t.y,s.y)))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"m\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"-\",[1,[7,\"m\",\"x\"],\"*\",[6,\"std.floor\",[[1,[7,\"p\",\"x\"],\"/\",[7,\"m\",\"x\"]]]]]],[1,[7,\"p\",\"y\"],\"-\",[1,[7,\"m\",\"y\"],\"*\",[6,\"std.floor\",[[1,[7,\"p\",\"y\"],\"/\",[7,\"m\",\"y\"]]]]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.floor\":()=>K}})&&e.f)({}));y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=F(w(s,1e-5),ue(s,-1e-5),s<0);return __tsover_div(t,r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"n\"},{type:\"i\",name:\"den\"}],body:[0,[[13,\"guarded\",[6,\"std.select\",[[6,\"std.max\",[\"den\",[5,\"0.00001\"]]],[6,\"std.min\",[\"den\",[4,\"-\",[5,\"0.00001\"]]]],[1,\"den\",\"<\",[5,\"0\"]]]]],[10,[1,\"n\",\"/\",\"guarded\"]]]]},externals:{\"std.select\":()=>F,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({}));var ln=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(__tsover_sub(__tsover_mul(t.x,s),__tsover_mul(t.y,r)),__tsover_add(__tsover_mul(t.x,r),__tsover_mul(t.y,s)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"cosA\"},{type:\"i\",name:\"sinA\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[1,[7,\"p\",\"x\"],\"*\",\"cosA\"],\"-\",[1,[7,\"p\",\"y\"],\"*\",\"sinA\"]],[1,[1,[7,\"p\",\"x\"],\"*\",\"sinA\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"cosA\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),P3=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(s.x,w(s.y,1e-6));return u(__tsover_mul(t.x,r),t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),up=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(s.x,w(s.y,1e-6));return u(__tsover_mul(t.x,r),__tsover_sub(1,t.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"uv\",\"y\"]]]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),j1=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return u(t.x,__tsover_sub(1,t.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"d.vec2f\",[[7,\"p\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"p\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),aa=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(__tsover_mul(t.x,s),__tsover_sub(1,t.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"aspect\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"pos\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"pos\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),Qa=y.fn([u,u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(r.x,w(r.y,1e-6));return u(__tsover_sub(__tsover_mul(t.x,o),__tsover_mul(s.x,o)),__tsover_sub(t.y,__tsover_sub(1,s.y)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,[7,\"center\",\"x\"],\"*\",\"aspect\"]],[1,[7,\"uv\",\"y\"],\"-\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),Ja=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(__tsover_sub(__tsover_mul(t.x,s),__tsover_mul(s,.5)),__tsover_sub(t.y,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,\"aspect\",\"*\",[5,\"0.5\"]]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),Od=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(s,.5),i=.5,d=__tsover_sub(t.x,n),l=__tsover_sub(t.y,i);return u(__tsover_add(__tsover_sub(__tsover_mul(d,r),__tsover_mul(l,o)),n),__tsover_add(__tsover_add(__tsover_mul(d,o),__tsover_mul(l,r)),i))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"cosA\"},{type:\"i\",name:\"sinA\"}],body:[0,[[13,\"centerX\",[1,\"aspect\",\"*\",[5,\"0.5\"]]],[13,\"centerY\",[5,\"0.5\"]],[13,\"cx\",[1,[7,\"p\",\"x\"],\"-\",\"centerX\"]],[13,\"cy\",[1,[7,\"p\",\"y\"],\"-\",\"centerY\"]],[10,[6,\"d.vec2f\",[[1,[1,[1,\"cx\",\"*\",\"cosA\"],\"-\",[1,\"cy\",\"*\",\"sinA\"]],\"+\",\"centerX\"],[1,[1,[1,\"cx\",\"*\",\"sinA\"],\"+\",[1,\"cy\",\"*\",\"cosA\"]],\"+\",\"centerY\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),_p=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_add(__tsover_mul(t.x,s),__tsover_mul(t.y,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"cosA\"},{type:\"i\",name:\"sinA\"}],body:[0,[[10,[1,[1,[7,\"p\",\"x\"],\"*\",\"cosA\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"sinA\"]]]]]},externals:{}})&&e.f)({}));y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return u(te(t),bt(t.y,t.x))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"d.vec2f\",[[6,\"std.length\",[\"p\"]],[6,\"std.atan2\",[[7,\"p\",\"y\"],[7,\"p\",\"x\"]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.atan2\":()=>bt}})&&e.f)({}));y.fn([a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(__tsover_mul(t,J(s)),__tsover_mul(t,O(s)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"r\"},{type:\"i\",name:\"theta\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,\"r\",\"*\",[6,\"std.cos\",[\"theta\"]]],[1,\"r\",\"*\",[6,\"std.sin\",[\"theta\"]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({}));var M3=2/Math.sqrt(3),K1=Ct({cell:u,local:u}).$name(\"CellTile\"),Vd=y.fn([u],K1)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return K1({cell:K(t),local:ve(t)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"CellTile\",[[104,{cell:[6,\"std.floor\",[\"p\"]],local:[6,\"std.fract\",[\"p\"]]}]]]]]]},externals:{CellTile:()=>K1,\"std.floor\":()=>K,\"std.fract\":()=>ve}})&&e.f)({})),Z1=Ct({gv:u,id:u}).$name(\"HexCell\"),pp=y.fn([u,u],Z1)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=s.mul(.5),o=H1(t,s).sub(r),n=H1(t.sub(r),s).sub(r),i=F(n,o,le(o,o)<le(n,n));return Z1({gv:i,id:t.sub(i)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"s\"}],body:[0,[[13,\"sh\",[6,[7,\"s\",\"mul\"],[[5,\"0.5\"]]]],[13,\"a\",[6,[7,[6,\"flooredMod2\",[\"p\",\"s\"]],\"sub\"],[\"sh\"]]],[13,\"b\",[6,[7,[6,\"flooredMod2\",[[6,[7,\"p\",\"sub\"],[\"sh\"]],\"s\"]],\"sub\"],[\"sh\"]]],[13,\"gv\",[6,\"std.select\",[\"b\",\"a\",[1,[6,\"std.dot\",[\"a\",\"a\"]],\"<\",[6,\"std.dot\",[\"b\",\"b\"]]]]]],[10,[6,\"HexCell\",[[104,{gv:\"gv\",id:[6,[7,\"p\",\"sub\"],[\"gv\"]]}]]]]]]},externals:{flooredMod2:()=>H1,\"std.select\":()=>F,\"std.dot\":()=>le,HexCell:()=>Z1}})&&e.f)({})),k3=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return u(__tsover_sub(t.x,__tsover_div(t.y,Za)),__tsover_mul(t.y,M3))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"-\",[1,[7,\"p\",\"y\"],\"/\",\"SQRT3\"]],[1,[7,\"p\",\"y\"],\"*\",\"TWO_OVER_SQRT3\"]]]]]]},externals:{\"d.vec2f\":()=>u,SQRT3:()=>Za,TWO_OVER_SQRT3:()=>M3}})&&e.f)({})),DO=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(s.x,w(s.y,1e-6)),n=__tsover_mul(t.x,o),i=__tsover_sub(1,t.y),d=__tsover_div(__tsover_add(K(__tsover_mul(n,r)),.5),r),l=__tsover_div(__tsover_add(K(__tsover_mul(i,r)),.5),r);return u(__tsover_div(d,o),__tsover_sub(1,l))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[13,\"correctedX\",[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"]],[13,\"correctedY\",[1,[5,\"1\"],\"-\",[7,\"uv\",\"y\"]]],[13,\"cellCenterCorrectedX\",[1,[1,[6,\"std.floor\",[[1,\"correctedX\",\"*\",\"cells\"]]],\"+\",[5,\"0.5\"]],\"/\",\"cells\"]],[13,\"cellCenterCorrectedY\",[1,[1,[6,\"std.floor\",[[1,\"correctedY\",\"*\",\"cells\"]]],\"+\",[5,\"0.5\"]],\"/\",\"cells\"]],[10,[6,\"d.vec2f\",[[1,\"cellCenterCorrectedX\",\"/\",\"aspect\"],[1,[5,\"1\"],\"-\",\"cellCenterCorrectedY\"]]]]]]},externals:{\"std.max\":()=>w,\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),$3=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_div(s.x,w(s.y,1e-6)),i=__tsover_mul(t.x,n),d=__tsover_sub(1,t.y),l=J(o),c=O(o),_=__tsover_mul(n,.5),p=.5,f=__tsover_sub(i,_),h=__tsover_sub(d,p),g=__tsover_add(__tsover_sub(__tsover_mul(f,l),__tsover_mul(h,c)),_),x=__tsover_add(__tsover_add(__tsover_mul(f,c),__tsover_mul(h,l)),p),T=__tsover_div(__tsover_add(K(__tsover_mul(g,r)),.5),r),S=__tsover_div(__tsover_add(K(__tsover_mul(x,r)),.5),r),A=__tsover_sub(T,_),E=__tsover_sub(S,p),M=__tsover_add(__tsover_add(__tsover_mul(A,l),__tsover_mul(E,c)),_),$=__tsover_add(__tsover_add(__tsover_mul(A,-c),__tsover_mul(E,l)),p);return u(__tsover_div(M,n),__tsover_sub(1,$))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"rotationRad\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[13,\"correctedX\",[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"]],[13,\"correctedY\",[1,[5,\"1\"],\"-\",[7,\"uv\",\"y\"]]],[13,\"cosR\",[6,\"std.cos\",[\"rotationRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotationRad\"]]],[13,\"centerX\",[1,\"aspect\",\"*\",[5,\"0.5\"]]],[13,\"centerY\",[5,\"0.5\"]],[13,\"cx\",[1,\"correctedX\",\"-\",\"centerX\"]],[13,\"cy\",[1,\"correctedY\",\"-\",\"centerY\"]],[13,\"rotX\",[1,[1,[1,\"cx\",\"*\",\"cosR\"],\"-\",[1,\"cy\",\"*\",\"sinR\"]],\"+\",\"centerX\"]],[13,\"rotY\",[1,[1,[1,\"cx\",\"*\",\"sinR\"],\"+\",[1,\"cy\",\"*\",\"cosR\"]],\"+\",\"centerY\"]],[13,\"cellRX\",[1,[1,[6,\"std.floor\",[[1,\"rotX\",\"*\",\"cells\"]]],\"+\",[5,\"0.5\"]],\"/\",\"cells\"]],[13,\"cellRY\",[1,[1,[6,\"std.floor\",[[1,\"rotY\",\"*\",\"cells\"]]],\"+\",[5,\"0.5\"]],\"/\",\"cells\"]],[13,\"ccx\",[1,\"cellRX\",\"-\",\"centerX\"]],[13,\"ccy\",[1,\"cellRY\",\"-\",\"centerY\"]],[13,\"unrotX\",[1,[1,[1,\"ccx\",\"*\",\"cosR\"],\"+\",[1,\"ccy\",\"*\",\"sinR\"]],\"+\",\"centerX\"]],[13,\"unrotY\",[1,[1,[1,\"ccx\",\"*\",[4,\"-\",\"sinR\"]],\"+\",[1,\"ccy\",\"*\",\"cosR\"]],\"+\",\"centerY\"]],[10,[6,\"d.vec2f\",[[1,\"unrotX\",\"/\",\"aspect\"],[1,[5,\"1\"],\"-\",\"unrotY\"]]]]]]},externals:{\"std.max\":()=>w,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),mp=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ve(t.mul(u(123.34,345.45))),r=s.add(le(s,s.add(34.345)));return ve(__tsover_mul(r.x,r.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"id\"}],body:[0,[[13,\"q0\",[6,\"std.fract\",[[6,[7,\"id\",\"mul\"],[[6,\"d.vec2f\",[[5,\"123.34\"],[5,\"345.45\"]]]]]]]],[13,\"q1\",[6,[7,\"q0\",\"add\"],[[6,\"std.dot\",[\"q0\",[6,[7,\"q0\",\"add\"],[[5,\"34.345\"]]]]]]]],[10,[6,\"std.fract\",[[1,[7,\"q1\",\"x\"],\"*\",[7,\"q1\",\"y\"]]]]]]]},externals:{\"std.fract\":()=>ve,\"d.vec2f\":()=>u,\"std.dot\":()=>le}})&&e.f)({})),fp=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ve(__tsover_mul(O(__tsover_mul(t,127.1)),43758.5453))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"row\"}],body:[0,[[10,[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,\"row\",\"*\",[5,\"127.1\"]]]],\"*\",[5,\"43758.5453\"]]]]]]]},externals:{\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({})),vp=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_add(1,__tsover_mul(__tsover_mul(__tsover_sub(t,.5),4),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rowHash\"},{type:\"i\",name:\"variance\"}],body:[0,[[10,[1,[5,\"1\"],\"+\",[1,[1,[1,\"rowHash\",\"-\",[5,\"0.5\"]],\"*\",[5,\"4\"]],\"*\",\"variance\"]]]]]},externals:{}})&&e.f)({})),C3=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return w(__tsover_add(1,__tsover_mul(__tsover_mul(__tsover_sub(t,.5),2),s)),0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rand\"},{type:\"i\",name:\"variation\"}],body:[0,[[10,[6,\"std.max\",[[1,[5,\"1\"],\"+\",[1,[1,[1,\"rand\",\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]],\"*\",\"variation\"]],[5,\"0\"]]]]]]},externals:{\"std.max\":()=>w}})&&e.f)({})),hp=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=w(W(Dd(t)),W(Ld(t)));return w(__tsover_add(r,s),1e-5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"baseW\",[6,\"std.max\",[[6,\"std.abs\",[[6,\"std.dpdx\",[\"x\"]]]],[6,\"std.abs\",[[6,\"std.dpdy\",[\"x\"]]]]]]],[10,[6,\"std.max\",[[1,\"baseW\",\"+\",\"softness\"],[5,\"0.00001\"]]]]]]},externals:{\"std.max\":()=>w,\"std.abs\":()=>W,\"std.dpdx\":()=>Dd,\"std.dpdy\":()=>Ld}})&&e.f)({})),R3=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Dd(t),o=Ld(t),n=u(w(W(r.x),W(o.x)),w(W(r.y),W(o.y)));return u(w(__tsover_add(n.x,s),1e-5),w(__tsover_add(n.y,s),1e-5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"dpx\",[6,\"std.dpdx\",[\"p\"]]],[13,\"dpy\",[6,\"std.dpdy\",[\"p\"]]],[13,\"baseW\",[6,\"d.vec2f\",[[6,\"std.max\",[[6,\"std.abs\",[[7,\"dpx\",\"x\"]]],[6,\"std.abs\",[[7,\"dpy\",\"x\"]]]]],[6,\"std.max\",[[6,\"std.abs\",[[7,\"dpx\",\"y\"]]],[6,\"std.abs\",[[7,\"dpy\",\"y\"]]]]]]]],[10,[6,\"d.vec2f\",[[6,\"std.max\",[[1,[7,\"baseW\",\"x\"],\"+\",\"softness\"],[5,\"0.00001\"]]],[6,\"std.max\",[[1,[7,\"baseW\",\"y\"],\"+\",\"softness\"],[5,\"0.00001\"]]]]]]]]},externals:{\"std.dpdx\":()=>Dd,\"std.dpdy\":()=>Ld,\"d.vec2f\":()=>u,\"std.max\":()=>w,\"std.abs\":()=>W}})&&e.f)({})),U3=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_add(t,__tsover_mul(s,.5)),n=__tsover_sub(t,__tsover_mul(s,.5)),i=__tsover_sub(1,r),d=__tsover_add(__tsover_mul(K(o),i),w(__tsover_sub(ve(o),r),0)),l=__tsover_add(__tsover_mul(K(n),i),w(__tsover_sub(ve(n),r),0));return z(__tsover_div(__tsover_sub(d,l),s),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"w\"},{type:\"i\",name:\"threshold\"}],body:[0,[[13,\"a\",[1,\"p\",\"+\",[1,\"w\",\"*\",[5,\"0.5\"]]]],[13,\"b\",[1,\"p\",\"-\",[1,\"w\",\"*\",[5,\"0.5\"]]]],[13,\"oneMinusThreshold\",[1,[5,\"1\"],\"-\",\"threshold\"]],[13,\"Fa\",[1,[1,[6,\"std.floor\",[\"a\"]],\"*\",\"oneMinusThreshold\"],\"+\",[6,\"std.max\",[[1,[6,\"std.fract\",[\"a\"]],\"-\",\"threshold\"],[5,\"0\"]]]]],[13,\"Fb\",[1,[1,[6,\"std.floor\",[\"b\"]],\"*\",\"oneMinusThreshold\"],\"+\",[6,\"std.max\",[[1,[6,\"std.fract\",[\"b\"]],\"-\",\"threshold\"],[5,\"0\"]]]]],[10,[6,\"std.clamp\",[[1,[1,\"Fa\",\"-\",\"Fb\"],\"/\",\"w\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.max\":()=>w,\"std.fract\":()=>ve,\"std.clamp\":()=>z}})&&e.f)({})),Q1=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_add(t,__tsover_mul(s,.5)),n=__tsover_sub(t,__tsover_mul(s,.5));return __tsover_div(__tsover_sub(__tsover_sub(__tsover_add(K(o),ue(__tsover_mul(ve(o),r),1)),K(n)),ue(__tsover_mul(ve(n),r),1)),__tsover_mul(r,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"w\"},{type:\"i\",name:\"N\"}],body:[0,[[13,\"a\",[1,\"p\",\"+\",[1,\"w\",\"*\",[5,\"0.5\"]]]],[13,\"b\",[1,\"p\",\"-\",[1,\"w\",\"*\",[5,\"0.5\"]]]],[10,[1,[1,[1,[1,[6,\"std.floor\",[\"a\"]],\"+\",[6,\"std.min\",[[1,[6,\"std.fract\",[\"a\"]],\"*\",\"N\"],[5,\"1\"]]]],\"-\",[6,\"std.floor\",[\"b\"]]],\"-\",[6,\"std.min\",[[1,[6,\"std.fract\",[\"b\"]],\"*\",\"N\"],[5,\"1\"]]]],\"/\",[1,\"N\",\"*\",\"w\"]]]]]},externals:{\"std.floor\":()=>K,\"std.min\":()=>ue,\"std.fract\":()=>ve}})&&e.f)({})),z3=y.fn([u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=u(__tsover_mul(s.x,.5),__tsover_mul(s.y,.5)),o=W(__tsover_sub(ve(__tsover_mul(__tsover_sub(t.x,r.x),.5)),.5)),n=W(__tsover_sub(ve(__tsover_mul(__tsover_sub(t.y,r.y),.5)),.5)),i=W(__tsover_sub(ve(__tsover_mul(__tsover_add(t.x,r.x),.5)),.5)),d=W(__tsover_sub(ve(__tsover_mul(__tsover_add(t.y,r.y),.5)),.5)),l=__tsover_div(__tsover_mul(__tsover_sub(o,i),2),s.x),c=__tsover_div(__tsover_mul(__tsover_sub(n,d),2),s.y);return z(__tsover_sub(.5,__tsover_mul(__tsover_mul(l,c),.5)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"w\"}],body:[0,[[13,\"aHalf\",[6,\"d.vec2f\",[[1,[7,\"w\",\"x\"],\"*\",[5,\"0.5\"]],[1,[7,\"w\",\"y\"],\"*\",[5,\"0.5\"]]]]],[13,\"minusSideX\",[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,[1,[7,\"p\",\"x\"],\"-\",[7,\"aHalf\",\"x\"]],\"*\",[5,\"0.5\"]]]],\"-\",[5,\"0.5\"]]]]],[13,\"minusSideY\",[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,[1,[7,\"p\",\"y\"],\"-\",[7,\"aHalf\",\"y\"]],\"*\",[5,\"0.5\"]]]],\"-\",[5,\"0.5\"]]]]],[13,\"plusSideX\",[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,[1,[7,\"p\",\"x\"],\"+\",[7,\"aHalf\",\"x\"]],\"*\",[5,\"0.5\"]]]],\"-\",[5,\"0.5\"]]]]],[13,\"plusSideY\",[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,[1,[7,\"p\",\"y\"],\"+\",[7,\"aHalf\",\"y\"]],\"*\",[5,\"0.5\"]]]],\"-\",[5,\"0.5\"]]]]],[13,\"iX\",[1,[1,[1,\"minusSideX\",\"-\",\"plusSideX\"],\"*\",[5,\"2\"]],\"/\",[7,\"w\",\"x\"]]],[13,\"iY\",[1,[1,[1,\"minusSideY\",\"-\",\"plusSideY\"],\"*\",[5,\"2\"]],\"/\",[7,\"w\",\"y\"]]],[10,[6,\"std.clamp\",[[1,[5,\"0.5\"],\"-\",[1,[1,\"iX\",\"*\",\"iY\"],\"*\",[5,\"0.5\"]]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.abs\":()=>W,\"std.fract\":()=>ve,\"std.clamp\":()=>z}})&&e.f)({})),yp=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return __tsover_mul(__tsover_sub(1,ce(r,o,t)),ot(1e-4,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"field\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"lo\"},{type:\"i\",name:\"hi\"}],body:[0,[[10,[1,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"lo\",\"hi\",\"field\"]]],\"*\",[6,\"std.step\",[[5,\"0.0001\"],\"lineWidth\"]]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.step\":()=>ot}})&&e.f)({})),Sd=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_mul(ce(s,r,t),ce(s,r,__tsover_sub(1,t)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"lo\"},{type:\"i\",name:\"hi\"}],body:[0,[[10,[1,[6,\"std.smoothstep\",[\"lo\",\"hi\",\"x\"]],\"*\",[6,\"std.smoothstep\",[\"lo\",\"hi\",[1,[5,\"1\"],\"-\",\"x\"]]]]]]]},externals:{\"std.smoothstep\":()=>ce}})&&e.f)({})),G3=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_sub(1,ce(__tsover_sub(s,__tsover_mul(r,.5)),s,t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"footprint\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"radius\",\"-\",[1,\"footprint\",\"*\",[5,\"0.5\"]]],\"radius\",\"dist\"]]]]]]},externals:{\"std.smoothstep\":()=>ce}})&&e.f)({})),FD=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vt(s);return u(__tsover_mul(t.x,n),t.y).mul(Mt(r)).add(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[10,[6,[7,[6,[7,\"aspectUV\",\"mul\"],[[6,\"std.exp\",[\"scale\"]]]],\"add\"],[\"seed\"]]]]]},externals:{aspectOf:()=>Vt,\"d.vec2f\":()=>u,\"std.exp\":()=>Mt}})&&e.f)({})),LO=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return K(t.mul(s).div(r)).add(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"grain\"},{type:\"i\",name:\"seed\"}],body:[0,[[10,[6,[7,[6,\"std.floor\",[[6,[7,[6,[7,\"uv\",\"mul\"],[\"viewport\"]],\"div\"],[\"grain\"]]]],\"add\"],[\"seed\"]]]]]},externals:{\"std.floor\":()=>K}})&&e.f)({})),FO=y.fn([u,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return v(t.x,t.y,__tsover_mul(s,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"rate\"}],body:[0,[[10,[6,\"d.vec3f\",[[7,\"pos\",\"x\"],[7,\"pos\",\"y\"],[1,\"t\",\"*\",\"rate\"]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),D3=new WeakMap,BD=0;function vy(e){let t=e,s=D3.get(t);if(s!==void 0)return s;let r=BD++;return D3.set(t,r),r}function Z7(e,t){let{maxOctaves:s,drift:r,stride:o=[17,31],name:n=\"fbmGated\"}=t,i=`${vy(e)}|${n}|${s}|${r}|${o[0]},${o[1]}`,d=L3.get(i);if(d)return d;let l=s,c=o[0],_=o[1],p=`${r===\"goldenAngle\"?\"Golden\":\"TimeSeed\"}${l}`,f;if(r===\"goldenAngle\"){let h=e;f=y.fn([u,a,a,a,a,u,a],u)((g=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(g.f=((x,T,S,A,E,M,$)=>{\"use gpu\";let L=oe($),B=T,D=a(1),G=a(0),I=a(0);for(let X=0;X<l;X++){let H=a(X),ee=J(__tsover_mul(H,2.3999632297286535)),Q=O(__tsover_mul(H,2.3999632297286535)),de=u(__tsover_add(__tsover_add(__tsover_mul(x.x,B),__tsover_mul(E,ee)),M.x),__tsover_add(__tsover_add(__tsover_mul(x.y,B),__tsover_mul(E,Q)),M.y)),Ee=F(a(0),a(1),X<L);G=__tsover_add(G,__tsover_mul(__tsover_mul(h(de),D),Ee)),I=__tsover_add(I,__tsover_mul(D,Ee)),B=__tsover_mul(B,S),D=__tsover_mul(D,A)}return u(G,I)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"baseFreq\"},{type:\"i\",name:\"lacunarity\"},{type:\"i\",name:\"persistence\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"seedOffset\"},{type:\"i\",name:\"octaveCount\"}],body:[0,[[13,\"n\",[6,\"d.i32\",[\"octaveCount\"]]],[12,\"freq\",\"baseFreq\"],[12,\"weight\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"accumulated\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"totalWeight\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"N\"],[102,\"++\",\"i\"],[0,[[13,\"fi\",[6,\"d.f32\",[\"i\"]]],[13,\"dirX\",[6,\"std.cos\",[[1,\"fi\",\"*\",\"GOLDEN\"]]]],[13,\"dirY\",[6,\"std.sin\",[[1,\"fi\",\"*\",\"GOLDEN\"]]]],[13,\"coord\",[6,\"d.vec2f\",[[1,[1,[1,[7,\"base\",\"x\"],\"*\",\"freq\"],\"+\",[1,\"animTime\",\"*\",\"dirX\"]],\"+\",[7,\"seedOffset\",\"x\"]],[1,[1,[1,[7,\"base\",\"y\"],\"*\",\"freq\"],\"+\",[1,\"animTime\",\"*\",\"dirY\"]],\"+\",[7,\"seedOffset\",\"y\"]]]]],[13,\"active\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"i\",\"<\",\"n\"]]]],[2,\"accumulated\",\"=\",[1,\"accumulated\",\"+\",[1,[1,[6,\"octaveField\",[\"coord\"]],\"*\",\"weight\"],\"*\",\"active\"]]],[2,\"totalWeight\",\"=\",[1,\"totalWeight\",\"+\",[1,\"weight\",\"*\",\"active\"]]],[2,\"freq\",\"=\",[1,\"freq\",\"*\",\"lacunarity\"]],[2,\"weight\",\"=\",[1,\"weight\",\"*\",\"persistence\"]]]]],[10,[6,\"d.vec2f\",[\"accumulated\",\"totalWeight\"]]]]]},externals:{\"d.i32\":()=>oe,\"d.f32\":()=>a,N:()=>l,\"std.cos\":()=>J,GOLDEN:()=>2.3999632297286535,\"std.sin\":()=>O,\"d.vec2f\":()=>u,\"std.select\":()=>F,octaveField:()=>h}})&&g.f)({})).$name(`${n}${p}`)}else{let h=e;f=y.fn([u,a,a,a,a,a,v,a],u)((g=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(g.f=((x,T,S,A,E,M,$,L)=>{\"use gpu\";let B=T,D=a(1),G=a(0),I=a(0);for(let X=0;X<l;X++){let H=a(X),ee=F(a(0),a(1),H<L),Q=h(u(__tsover_mul(x.x,B),__tsover_mul(x.y,B)),__tsover_add(E,__tsover_mul(H,c)),__tsover_add(M,__tsover_mul(H,_)),$.x,$.y,$.z);G=__tsover_add(G,__tsover_mul(__tsover_mul(Q,D),ee)),I=__tsover_add(I,__tsover_mul(D,ee)),D=__tsover_mul(D,A),B=__tsover_mul(B,S)}return u(G,I)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"baseFreq\"},{type:\"i\",name:\"lacunarity\"},{type:\"i\",name:\"persistence\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"extra\"},{type:\"i\",name:\"octaveCount\"}],body:[0,[[12,\"freq\",\"baseFreq\"],[12,\"amp\",[6,\"d.f32\",[[5,\"1\"]]]],[12,\"accumulated\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"totalWeight\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"o\",[5,\"0\"]],[1,\"o\",\"<\",\"N\"],[102,\"++\",\"o\"],[0,[[13,\"fo\",[6,\"d.f32\",[\"o\"]]],[13,\"active\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"fo\",\"<\",\"octaveCount\"]]]],[13,\"oUV\",[6,\"d.vec2f\",[[1,[7,\"base\",\"x\"],\"*\",\"freq\"],[1,[7,\"base\",\"y\"],\"*\",\"freq\"]]]],[13,\"animT\",[1,\"animTime\",\"+\",[1,\"fo\",\"*\",\"TIME_STRIDE\"]]],[13,\"seedOff\",[1,\"seed\",\"+\",[1,\"fo\",\"*\",\"SEED_STRIDE\"]]],[13,\"raw\",[6,\"octaveField\",[\"oUV\",\"animT\",\"seedOff\",[7,\"extra\",\"x\"],[7,\"extra\",\"y\"],[7,\"extra\",\"z\"]]]],[2,\"accumulated\",\"=\",[1,\"accumulated\",\"+\",[1,[1,\"raw\",\"*\",\"amp\"],\"*\",\"active\"]]],[2,\"totalWeight\",\"=\",[1,\"totalWeight\",\"+\",[1,\"amp\",\"*\",\"active\"]]],[2,\"amp\",\"=\",[1,\"amp\",\"*\",\"persistence\"]],[2,\"freq\",\"=\",[1,\"freq\",\"*\",\"lacunarity\"]]]]],[10,[6,\"d.vec2f\",[\"accumulated\",\"totalWeight\"]]]]]},externals:{\"d.f32\":()=>a,N:()=>l,\"std.select\":()=>F,\"d.vec2f\":()=>u,TIME_STRIDE:()=>c,SEED_STRIDE:()=>_,octaveField:()=>h}})&&g.f)({})).$name(`${n}${p}`)}return L3.set(i,f),f}var L3=new Map,Q7={q:[[.3,-.2,0],[5.2,1.3,.25]],r:[[1.7,9.2,.15],[8.3,2.8,.13]]};function J7(e,t={}){let{offsets:s=Q7,name:r=\"domainWarp2\"}=t,o=`${vy(e)}|${r}|${JSON.stringify(s)}`,n=gp.get(o);if(n)return n;let i=e,[d,l,c]=s.q[0],[_,p,f]=s.q[1],[h,g,x]=s.r[0],[T,S,A]=s.r[1],E=y.fn([v,a,a],v)((M=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(M.f=(($,L,B)=>{\"use gpu\";let D=i($.add(v(__tsover_mul(L,d),__tsover_mul(L,l),c))),G=i($.add(v(_,p,__tsover_mul(L,f)))),I=$.add(v(D,G,0).mul(B)),X=i(I.add(v(h,g,__tsover_mul(L,x)))),H=i(I.add(v(T,S,__tsover_mul(L,A))));return $.add(v(X,H,0).mul(B))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"warpAmount\"}],body:[0,[[13,\"qx\",[6,\"warpField\",[[6,[7,\"pos\",\"add\"],[[6,\"d.vec3f\",[[1,\"t\",\"*\",\"QX\"],[1,\"t\",\"*\",\"QY\"],\"QZ\"]]]]]]],[13,\"qy\",[6,\"warpField\",[[6,[7,\"pos\",\"add\"],[[6,\"d.vec3f\",[\"Q2X\",\"Q2Y\",[1,\"t\",\"*\",\"Q2Z\"]]]]]]]],[13,\"warped1\",[6,[7,\"pos\",\"add\"],[[6,[7,[6,\"d.vec3f\",[\"qx\",\"qy\",[5,\"0\"]]],\"mul\"],[\"warpAmount\"]]]]],[13,\"rx\",[6,\"warpField\",[[6,[7,\"warped1\",\"add\"],[[6,\"d.vec3f\",[\"RX\",\"RY\",[1,\"t\",\"*\",\"RZ\"]]]]]]]],[13,\"ry\",[6,\"warpField\",[[6,[7,\"warped1\",\"add\"],[[6,\"d.vec3f\",[\"R2X\",\"R2Y\",[1,\"t\",\"*\",\"R2Z\"]]]]]]]],[10,[6,[7,\"pos\",\"add\"],[[6,[7,[6,\"d.vec3f\",[\"rx\",\"ry\",[5,\"0\"]]],\"mul\"],[\"warpAmount\"]]]]]]]},externals:{warpField:()=>i,\"d.vec3f\":()=>v,QX:()=>d,QY:()=>l,QZ:()=>c,Q2X:()=>_,Q2Y:()=>p,Q2Z:()=>f,RX:()=>h,RY:()=>g,RZ:()=>x,R2X:()=>T,R2Y:()=>S,R2Z:()=>A}})&&M.f)({})).$name(r);return gp.set(o,E),E}function ID(e,t={}){let{offsets:s=Q7,name:r=\"domainWarp1\"}=t,o=`1|${vy(e)}|${r}|${JSON.stringify(s)}`,n=gp.get(o);if(n)return n;let i=e,[d,l,c]=s.q[0],[_,p,f]=s.q[1],h=y.fn([v,a,a],v)((g=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(g.f=((x,T,S)=>{\"use gpu\";let A=i(x.add(v(__tsover_mul(T,d),__tsover_mul(T,l),c))),E=i(x.add(v(_,p,__tsover_mul(T,f))));return x.add(v(A,E,0).mul(S))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"warpAmount\"}],body:[0,[[13,\"qx\",[6,\"warpField\",[[6,[7,\"pos\",\"add\"],[[6,\"d.vec3f\",[[1,\"t\",\"*\",\"QX\"],[1,\"t\",\"*\",\"QY\"],\"QZ\"]]]]]]],[13,\"qy\",[6,\"warpField\",[[6,[7,\"pos\",\"add\"],[[6,\"d.vec3f\",[\"Q2X\",\"Q2Y\",[1,\"t\",\"*\",\"Q2Z\"]]]]]]]],[10,[6,[7,\"pos\",\"add\"],[[6,[7,[6,\"d.vec3f\",[\"qx\",\"qy\",[5,\"0\"]]],\"mul\"],[\"warpAmount\"]]]]]]]},externals:{warpField:()=>i,\"d.vec3f\":()=>v,QX:()=>d,QY:()=>l,QZ:()=>c,Q2X:()=>_,Q2Y:()=>p,Q2Z:()=>f}})&&g.f)({})).$name(r);return gp.set(o,h),h}var gp=new Map,YD=y.fn([u,a,u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(t.x,s),t.y),d=u(__tsover_mul(r.x,s),__tsover_sub(1,r.y)),l=te(i.sub(d));return ce(o,__tsover_add(o,n),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"falloff\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"dist\",[6,\"std.length\",[[6,[7,\"aspectUV\",\"sub\"],[\"centerPos\"]]]]],[10,[6,\"std.smoothstep\",[\"radius\",[1,\"radius\",\"+\",\"falloff\"],\"dist\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.smoothstep\":()=>ce}})&&e.f)({})),J1=.11,xp=.6180339887,dc=8,F3=y.fn([a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_add(__tsover_mul(t,2.3999632297286535),__tsover_mul(fr(__tsover_add(__tsover_mul(r,.7311),1.618)),Et)),l=$e(__tsover_div(__tsover_add(t,.5),s)),c=Dr(u(__tsover_add(__tsover_mul(t,3.77),.917),__tsover_add(__tsover_mul(r,1.093),2.236))).sub(.5).mul(.26),_=Dr(u(__tsover_add(__tsover_mul(t,7.13),1.618),__tsover_add(__tsover_mul(r,.531),3.71))).mul(Et),p=__tsover_add(.5,__tsover_mul(fr(__tsover_add(__tsover_add(__tsover_mul(t,5.417),__tsover_mul(r,.291)),.917)),.7)),f=O(__tsover_add(__tsover_mul(__tsover_mul(i,J1),p),_.x)),h=J(__tsover_add(__tsover_mul(__tsover_mul(__tsover_mul(i,J1),p),1.37),_.y)),g=__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(J(d),l),.62),c.x),__tsover_mul(__tsover_mul(f,o),.16)),x=__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(O(d),l),.62),c.y),__tsover_mul(__tsover_mul(h,o),.16));return u(__tsover_mul(__tsover_add(.5,g),n),__tsover_add(.5,x))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fi\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"drift\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"theta\",[1,[1,\"fi\",\"*\",\"GOLDEN\"],\"+\",[1,[6,\"hash11\",[[1,[1,\"seed\",\"*\",[5,\"0.7311\"]],\"+\",[5,\"1.618\"]]]],\"*\",\"TAU\"]]],[13,\"r\",[6,\"std.sqrt\",[[1,[1,\"fi\",\"+\",[5,\"0.5\"]],\"/\",\"count\"]]]],[13,\"j\",[6,[7,[6,[7,[6,\"hash22\",[[6,\"d.vec2f\",[[1,[1,\"fi\",\"*\",[5,\"3.77\"]],\"+\",[5,\"0.917\"]],[1,[1,\"seed\",\"*\",[5,\"1.093\"]],\"+\",[5,\"2.236\"]]]]]],\"sub\"],[[5,\"0.5\"]]],\"mul\"],[[5,\"0.26\"]]]],[13,\"ph\",[6,[7,[6,\"hash22\",[[6,\"d.vec2f\",[[1,[1,\"fi\",\"*\",[5,\"7.13\"]],\"+\",[5,\"1.618\"]],[1,[1,\"seed\",\"*\",[5,\"0.531\"]],\"+\",[5,\"3.71\"]]]]]],\"mul\"],[\"TAU\"]]],[13,\"w1\",[1,[5,\"0.5\"],\"+\",[1,[6,\"hash11\",[[1,[1,[1,\"fi\",\"*\",[5,\"5.417\"]],\"+\",[1,\"seed\",\"*\",[5,\"0.291\"]]],\"+\",[5,\"0.917\"]]]],\"*\",[5,\"0.7\"]]]],[13,\"dx\",[6,\"std.sin\",[[1,[1,[1,\"animTime\",\"*\",\"SCATTER_DRIFT_RATE\"],\"*\",\"w1\"],\"+\",[7,\"ph\",\"x\"]]]]],[13,\"dy\",[6,\"std.cos\",[[1,[1,[1,[1,\"animTime\",\"*\",\"SCATTER_DRIFT_RATE\"],\"*\",\"w1\"],\"*\",[5,\"1.37\"]],\"+\",[7,\"ph\",\"y\"]]]]],[13,\"nx\",[1,[1,[1,[1,[6,\"std.cos\",[\"theta\"]],\"*\",\"r\"],\"*\",[5,\"0.62\"]],\"+\",[7,\"j\",\"x\"]],\"+\",[1,[1,\"dx\",\"*\",\"drift\"],\"*\",[5,\"0.16\"]]]],[13,\"ny\",[1,[1,[1,[1,[6,\"std.sin\",[\"theta\"]],\"*\",\"r\"],\"*\",[5,\"0.62\"]],\"+\",[7,\"j\",\"y\"]],\"+\",[1,[1,\"dy\",\"*\",\"drift\"],\"*\",[5,\"0.16\"]]]],[10,[6,\"d.vec2f\",[[1,[1,[5,\"0.5\"],\"+\",\"nx\"],\"*\",\"aspect\"],[1,[5,\"0.5\"],\"+\",\"ny\"]]]]]]},externals:{GOLDEN:()=>2.3999632297286535,hash11:()=>fr,TAU:()=>Et,\"std.sqrt\":()=>$e,hash22:()=>Dr,\"d.vec2f\":()=>u,\"std.sin\":()=>O,SCATTER_DRIFT_RATE:()=>J1,\"std.cos\":()=>J}})&&e.f)({})),WD=y.fn([u,a,a,zt(b,dc/2),a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=a(0),d=a(0),l=fr(__tsover_add(__tsover_mul(r,.531),.77));for(let c=0;c<dc;c++){let _=a(c),p=F(a(0),a(1),_<__tsover_sub(s,.5)),f=o[__tsover_div(c,2)],h=F(f.xy,f.zw,(c&1)===1),g=w(te(t.sub(h)),.01),x=__tsover_div(p,Ye(g,n)),T=ve(__tsover_add(__tsover_mul(_,xp),l));i=__tsover_add(i,__tsover_mul(x,T)),d=__tsover_add(d,x)}return __tsover_div(i,w(d,1e-6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"q\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"anchors\"},{type:\"i\",name:\"power\"}],body:[0,[[12,\"num\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"den\",[6,\"d.f32\",[[5,\"0\"]]]],[13,\"seedShuffle\",[6,\"hash11\",[[1,[1,\"seed\",\"*\",[5,\"0.531\"]],\"+\",[5,\"0.77\"]]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"SCATTER_MAX\"],[102,\"++\",\"i\"],[0,[[13,\"fi\",[6,\"d.f32\",[\"i\"]]],[13,\"active\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"fi\",\"<\",[1,\"count\",\"-\",[5,\"0.5\"]]]]]],[13,\"pair\",[8,\"anchors\",[1,\"i\",\"/\",[5,\"2\"]]]],[13,\"anchor\",[6,\"std.select\",[[7,\"pair\",\"xy\"],[7,\"pair\",\"zw\"],[1,[1,\"i\",\"&\",[5,\"1\"]],\"===\",[5,\"1\"]]]]],[13,\"dist\",[6,\"std.max\",[[6,\"std.length\",[[6,[7,\"q\",\"sub\"],[\"anchor\"]]]],[5,\"0.01\"]]]],[13,\"w\",[1,\"active\",\"/\",[6,\"std.pow\",[\"dist\",\"power\"]]]],[13,\"ti\",[6,\"std.fract\",[[1,[1,\"fi\",\"*\",\"GOLDEN_CONJ\"],\"+\",\"seedShuffle\"]]]],[2,\"num\",\"=\",[1,\"num\",\"+\",[1,\"w\",\"*\",\"ti\"]]],[2,\"den\",\"=\",[1,\"den\",\"+\",\"w\"]]]]],[10,[1,\"num\",\"/\",[6,\"std.max\",[\"den\",[5,\"0.000001\"]]]]]]]},externals:{\"d.f32\":()=>a,hash11:()=>fr,SCATTER_MAX:()=>dc,\"std.select\":()=>F,\"std.max\":()=>w,\"std.length\":()=>te,\"std.pow\":()=>Ye,\"std.fract\":()=>ve,GOLDEN_CONJ:()=>xp}})&&e.f)({})),OD=y.fn([u,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=a(0),c=a(0);for(let _=0;_<dc;_++){let p=a(_),f=F(a(0),a(1),p<__tsover_sub(s,.5)),h=F3(p,s,r,o,n,i),g=w(te(t.sub(h)),.01),x=__tsover_div(f,Ye(g,d)),T=ve(__tsover_add(__tsover_mul(p,xp),fr(__tsover_add(__tsover_mul(r,.531),.77))));l=__tsover_add(l,__tsover_mul(x,T)),c=__tsover_add(c,x)}return __tsover_div(l,w(c,1e-6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"q\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"drift\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"power\"}],body:[0,[[12,\"num\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"den\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"SCATTER_MAX\"],[102,\"++\",\"i\"],[0,[[13,\"fi\",[6,\"d.f32\",[\"i\"]]],[13,\"active\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"fi\",\"<\",[1,\"count\",\"-\",[5,\"0.5\"]]]]]],[13,\"anchor\",[6,\"spiralScatter\",[\"fi\",\"count\",\"seed\",\"drift\",\"aspect\",\"animTime\"]]],[13,\"dist\",[6,\"std.max\",[[6,\"std.length\",[[6,[7,\"q\",\"sub\"],[\"anchor\"]]]],[5,\"0.01\"]]]],[13,\"w\",[1,\"active\",\"/\",[6,\"std.pow\",[\"dist\",\"power\"]]]],[13,\"ti\",[6,\"std.fract\",[[1,[1,\"fi\",\"*\",\"GOLDEN_CONJ\"],\"+\",[6,\"hash11\",[[1,[1,\"seed\",\"*\",[5,\"0.531\"]],\"+\",[5,\"0.77\"]]]]]]]],[2,\"num\",\"=\",[1,\"num\",\"+\",[1,\"w\",\"*\",\"ti\"]]],[2,\"den\",\"=\",[1,\"den\",\"+\",\"w\"]]]]],[10,[1,\"num\",\"/\",[6,\"std.max\",[\"den\",[5,\"0.000001\"]]]]]]]},externals:{\"d.f32\":()=>a,SCATTER_MAX:()=>dc,\"std.select\":()=>F,spiralScatter:()=>F3,\"std.max\":()=>w,\"std.length\":()=>te,\"std.pow\":()=>Ye,\"std.fract\":()=>ve,GOLDEN_CONJ:()=>xp,hash11:()=>fr}})&&e.f)({})),VD=y.fn([u,a,a,u,u,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=v(__tsover_mul(t.x,s),__tsover_mul(t.y,s),r),c=Po(l.add(v(o.x,o.y,0))),_=Po(l.add(v(n.x,n.y,0)));return b(__tsover_add(t.x,__tsover_mul(__tsover_mul(c,i),d)),__tsover_add(t.y,__tsover_mul(__tsover_mul(_,i),d)),c,_)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"z\"},{type:\"i\",name:\"offA\"},{type:\"i\",name:\"offB\"},{type:\"i\",name:\"k\"},{type:\"i\",name:\"strength\"}],body:[0,[[13,\"wp\",[6,\"d.vec3f\",[[1,[7,\"pos\",\"x\"],\"*\",\"scale\"],[1,[7,\"pos\",\"y\"],\"*\",\"scale\"],\"z\"]]],[13,\"nx\",[6,\"mxNoiseFloat3\",[[6,[7,\"wp\",\"add\"],[[6,\"d.vec3f\",[[7,\"offA\",\"x\"],[7,\"offA\",\"y\"],[5,\"0\"]]]]]]]],[13,\"ny\",[6,\"mxNoiseFloat3\",[[6,[7,\"wp\",\"add\"],[[6,\"d.vec3f\",[[7,\"offB\",\"x\"],[7,\"offB\",\"y\"],[5,\"0\"]]]]]]]],[10,[6,\"d.vec4f\",[[1,[7,\"pos\",\"x\"],\"+\",[1,[1,\"nx\",\"*\",\"k\"],\"*\",\"strength\"]],[1,[7,\"pos\",\"y\"],\"+\",[1,[1,\"ny\",\"*\",\"k\"],\"*\",\"strength\"]],\"nx\",\"ny\"]]]]]},externals:{\"d.vec3f\":()=>v,mxNoiseFloat3:()=>Po,\"d.vec4f\":()=>b}})&&e.f)({})),y_=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ve(O(u(le(t,u(127.1,311.7)),le(t,u(269.5,183.3)))).mul(43758.5453))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"h\",[6,\"d.vec2f\",[[6,\"std.dot\",[\"p\",[6,\"d.vec2f\",[[5,\"127.1\"],[5,\"311.7\"]]]]],[6,\"std.dot\",[\"p\",[6,\"d.vec2f\",[[5,\"269.5\"],[5,\"183.3\"]]]]]]]],[10,[6,\"std.fract\",[[6,[7,[6,\"std.sin\",[\"h\"]],\"mul\"],[[5,\"43758.5453\"]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.dot\":()=>le,\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({}));function eT(e){let{distance:t,jitter:s,name:r=\"nearest2Cells\"}=e,o=`${r}|${t}|${s}`,n=B3.get(o);if(n)return n;let i=`${t===\"length\"?\"Len\":\"Sel\"}${s===\"mix\"?\"Jit\":\"\"}`,d;return t===\"length\"&&s===\"none\"?d=y.fn([u,a,a],u)((l=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(l.f=((c,_,p)=>{\"use gpu\";let f=K(c),h=ve(c),g=a(10),x=a(10);for(let T=-1;T<=1;T++)for(let S=-1;S<=1;S++){let A=u(a(S),a(T)),E=y_(u(__tsover_add(__tsover_add(f.x,A.x),p),__tsover_add(__tsover_add(f.y,A.y),p))),M=z(__tsover_add(E.x,__tsover_mul(O(__tsover_add(_,__tsover_mul(E.x,Et))),.15)),.05,.95),$=z(__tsover_add(E.y,__tsover_mul(J(__tsover_add(__tsover_mul(_,.7),__tsover_mul(E.y,Et))),.15)),.05,.95),L=te(u(__tsover_sub(h.x,__tsover_add(A.x,M)),__tsover_sub(h.y,__tsover_add(A.y,$))));x=ue(x,w(L,g)),g=ue(g,L)}return u(g,x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"animT\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"cell\",[6,\"std.floor\",[\"scaledUV\"]]],[13,\"localUV\",[6,\"std.fract\",[\"scaledUV\"]]],[12,\"d1\",[6,\"d.f32\",[[5,\"10\"]]]],[12,\"d2\",[6,\"d.f32\",[[5,\"10\"]]]],[14,[12,\"ny\",[4,\"-\",[5,\"1\"]]],[1,\"ny\",\"<=\",[5,\"1\"]],[102,\"++\",\"ny\"],[0,[[14,[12,\"nx\",[4,\"-\",[5,\"1\"]]],[1,\"nx\",\"<=\",[5,\"1\"]],[102,\"++\",\"nx\"],[0,[[13,\"offset\",[6,\"d.vec2f\",[[6,\"d.f32\",[\"nx\"]],[6,\"d.f32\",[\"ny\"]]]]],[13,\"h\",[6,\"cellHash2\",[[6,\"d.vec2f\",[[1,[1,[7,\"cell\",\"x\"],\"+\",[7,\"offset\",\"x\"]],\"+\",\"seed\"],[1,[1,[7,\"cell\",\"y\"],\"+\",[7,\"offset\",\"y\"]],\"+\",\"seed\"]]]]]],[13,\"pointX\",[6,\"std.clamp\",[[1,[7,\"h\",\"x\"],\"+\",[1,[6,\"std.sin\",[[1,\"animT\",\"+\",[1,[7,\"h\",\"x\"],\"*\",\"TAU\"]]]],\"*\",[5,\"0.15\"]]],[5,\"0.05\"],[5,\"0.95\"]]]],[13,\"pointY\",[6,\"std.clamp\",[[1,[7,\"h\",\"y\"],\"+\",[1,[6,\"std.cos\",[[1,[1,\"animT\",\"*\",[5,\"0.7\"]],\"+\",[1,[7,\"h\",\"y\"],\"*\",\"TAU\"]]]],\"*\",[5,\"0.15\"]]],[5,\"0.05\"],[5,\"0.95\"]]]],[13,\"dd\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"localUV\",\"x\"],\"-\",[1,[7,\"offset\",\"x\"],\"+\",\"pointX\"]],[1,[7,\"localUV\",\"y\"],\"-\",[1,[7,\"offset\",\"y\"],\"+\",\"pointY\"]]]]]]],[2,\"d2\",\"=\",[6,\"std.min\",[\"d2\",[6,\"std.max\",[\"dd\",\"d1\"]]]]],[2,\"d1\",\"=\",[6,\"std.min\",[\"d1\",\"dd\"]]]]]]]]],[10,[6,\"d.vec2f\",[\"d1\",\"d2\"]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,\"d.f32\":()=>a,\"d.vec2f\":()=>u,cellHash2:()=>y_,\"std.clamp\":()=>z,\"std.sin\":()=>O,TAU:()=>Et,\"std.cos\":()=>J,\"std.length\":()=>te,\"std.min\":()=>ue,\"std.max\":()=>w}})&&l.f)({})).$name(`${r}${i}`):d=y.fn([u,a,a,a,a],u)((l=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(l.f=((c,_,p,f,h)=>{\"use gpu\";let g=__tsover_mul(_,.7),x=K(c),T=ve(c),S=a(10),A=a(10);for(let E=-1;E<=1;E++)for(let M=-1;M<=1;M++){let $=u(a(M),a(E)),L=y_(u(__tsover_add(__tsover_add(x.x,$.x),p),__tsover_add(__tsover_add(x.y,$.y),p))),B=__tsover_add(L.x,__tsover_mul(O(__tsover_add(_,__tsover_mul(L.x,Et))),.15)),D=__tsover_add(L.y,__tsover_mul(J(__tsover_add(g,__tsover_mul(L.y,Et))),.15)),G=Z(.5,z(B,.05,.95),f),I=Z(.5,z(D,.05,.95),f),X=__tsover_sub(T.x,__tsover_add($.x,G)),H=__tsover_sub(T.y,__tsover_add($.y,I)),ee=__tsover_add(__tsover_mul(X,X),__tsover_mul(H,H)),Q=__tsover_add(W(X),W(H)),de=w(W(X),W(H)),Ee=ee;Ee=F(Ee,Q,h===1),Ee=F(Ee,de,h===2),A=ue(A,w(Ee,S)),S=ue(S,Ee)}return u(S,A)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"animT\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"jitterAmount\"},{type:\"i\",name:\"metric\"}],body:[0,[[13,\"animTSlow\",[1,\"animT\",\"*\",[5,\"0.7\"]]],[13,\"cell\",[6,\"std.floor\",[\"scaledUV\"]]],[13,\"localUV\",[6,\"std.fract\",[\"scaledUV\"]]],[12,\"d1\",[6,\"d.f32\",[[5,\"10\"]]]],[12,\"d2\",[6,\"d.f32\",[[5,\"10\"]]]],[14,[12,\"ny\",[4,\"-\",[5,\"1\"]]],[1,\"ny\",\"<=\",[5,\"1\"]],[102,\"++\",\"ny\"],[0,[[14,[12,\"nx\",[4,\"-\",[5,\"1\"]]],[1,\"nx\",\"<=\",[5,\"1\"]],[102,\"++\",\"nx\"],[0,[[13,\"offset\",[6,\"d.vec2f\",[[6,\"d.f32\",[\"nx\"]],[6,\"d.f32\",[\"ny\"]]]]],[13,\"h\",[6,\"cellHash2\",[[6,\"d.vec2f\",[[1,[1,[7,\"cell\",\"x\"],\"+\",[7,\"offset\",\"x\"]],\"+\",\"seed\"],[1,[1,[7,\"cell\",\"y\"],\"+\",[7,\"offset\",\"y\"]],\"+\",\"seed\"]]]]]],[13,\"px\",[1,[7,\"h\",\"x\"],\"+\",[1,[6,\"std.sin\",[[1,\"animT\",\"+\",[1,[7,\"h\",\"x\"],\"*\",\"TAU\"]]]],\"*\",[5,\"0.15\"]]]],[13,\"py\",[1,[7,\"h\",\"y\"],\"+\",[1,[6,\"std.cos\",[[1,\"animTSlow\",\"+\",[1,[7,\"h\",\"y\"],\"*\",\"TAU\"]]]],\"*\",[5,\"0.15\"]]]],[13,\"jx\",[6,\"std.mix\",[[5,\"0.5\"],[6,\"std.clamp\",[\"px\",[5,\"0.05\"],[5,\"0.95\"]]],\"jitterAmount\"]]],[13,\"jy\",[6,\"std.mix\",[[5,\"0.5\"],[6,\"std.clamp\",[\"py\",[5,\"0.05\"],[5,\"0.95\"]]],\"jitterAmount\"]]],[13,\"deltaX\",[1,[7,\"localUV\",\"x\"],\"-\",[1,[7,\"offset\",\"x\"],\"+\",\"jx\"]]],[13,\"deltaY\",[1,[7,\"localUV\",\"y\"],\"-\",[1,[7,\"offset\",\"y\"],\"+\",\"jy\"]]],[13,\"dEuclid\",[1,[1,\"deltaX\",\"*\",\"deltaX\"],\"+\",[1,\"deltaY\",\"*\",\"deltaY\"]]],[13,\"dManhattan\",[1,[6,\"std.abs\",[\"deltaX\"]],\"+\",[6,\"std.abs\",[\"deltaY\"]]]],[13,\"dChebyshev\",[6,\"std.max\",[[6,\"std.abs\",[\"deltaX\"]],[6,\"std.abs\",[\"deltaY\"]]]]],[12,\"dd\",\"dEuclid\"],[2,\"dd\",\"=\",[6,\"std.select\",[\"dd\",\"dManhattan\",[1,\"metric\",\"===\",[5,\"1\"]]]]],[2,\"dd\",\"=\",[6,\"std.select\",[\"dd\",\"dChebyshev\",[1,\"metric\",\"===\",[5,\"2\"]]]]],[2,\"d2\",\"=\",[6,\"std.min\",[\"d2\",[6,\"std.max\",[\"dd\",\"d1\"]]]]],[2,\"d1\",\"=\",[6,\"std.min\",[\"d1\",\"dd\"]]]]]]]]],[10,[6,\"d.vec2f\",[\"d1\",\"d2\"]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,\"d.f32\":()=>a,\"d.vec2f\":()=>u,cellHash2:()=>y_,\"std.sin\":()=>O,TAU:()=>Et,\"std.cos\":()=>J,\"std.mix\":()=>Z,\"std.clamp\":()=>z,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.select\":()=>F,\"std.min\":()=>ue}})&&l.f)({})).$name(`${r}${i}`),B3.set(o,d),d}var B3=new Map,ND={f1:0,f2:1,f2MinusF1:2,f1PlusF2:3,f1TimesF2:4},qD={euclidean:0,manhattan:1,chebyshev:2},I3=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=r===0,i=F(t,$e(t),n),d=F(s,$e(s),n),l=i;return l=F(l,d,o===1),l=F(l,__tsover_sub(d,i),o===2),l=F(l,__tsover_add(i,d),o===3),l=F(l,__tsover_mul(i,d),o===4),l}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"d1\"},{type:\"i\",name:\"d2\"},{type:\"i\",name:\"metric\"},{type:\"i\",name:\"mode\"}],body:[0,[[13,\"isEuclid\",[1,\"metric\",\"===\",[5,\"0\"]]],[13,\"sd1\",[6,\"std.select\",[\"d1\",[6,\"std.sqrt\",[\"d1\"]],\"isEuclid\"]]],[13,\"sd2\",[6,\"std.select\",[\"d2\",[6,\"std.sqrt\",[\"d2\"]],\"isEuclid\"]]],[12,\"raw\",\"sd1\"],[2,\"raw\",\"=\",[6,\"std.select\",[\"raw\",\"sd2\",[1,\"mode\",\"===\",[5,\"1\"]]]]],[2,\"raw\",\"=\",[6,\"std.select\",[\"raw\",[1,\"sd2\",\"-\",\"sd1\"],[1,\"mode\",\"===\",[5,\"2\"]]]]],[2,\"raw\",\"=\",[6,\"std.select\",[\"raw\",[1,\"sd1\",\"+\",\"sd2\"],[1,\"mode\",\"===\",[5,\"3\"]]]]],[2,\"raw\",\"=\",[6,\"std.select\",[\"raw\",[1,\"sd1\",\"*\",\"sd2\"],[1,\"mode\",\"===\",[5,\"4\"]]]]],[10,\"raw\"]]]},externals:{\"std.select\":()=>F,\"std.sqrt\":()=>$e}})&&e.f)({})),Y3=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=w(__tsover_add(t,s),1e-4);return z(Ye(z(__tsover_div(__tsover_mul(t,2),o),0,1),r),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"d1\"},{type:\"i\",name:\"d2\"},{type:\"i\",name:\"power\"}],body:[0,[[13,\"safeSum\",[6,\"std.max\",[[1,\"d1\",\"+\",\"d2\"],[5,\"0.0001\"]]]],[13,\"normalizedDist\",[6,\"std.clamp\",[[1,[1,\"d1\",\"*\",[5,\"2\"]],\"/\",\"safeSum\"],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"std.clamp\",[[6,\"std.pow\",[\"normalizedDist\",\"power\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.pow\":()=>Ye}})&&e.f)({})),W3=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=w(__tsover_add(t,s),1e-4),n=__tsover_div(__tsover_sub(s,t),o);return ce(0,__tsover_add(r,.001),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"d1\"},{type:\"i\",name:\"d2\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"safeSum\",[6,\"std.max\",[[1,\"d1\",\"+\",\"d2\"],[5,\"0.0001\"]]]],[13,\"edgeMetric\",[1,[1,\"d2\",\"-\",\"d1\"],\"/\",\"safeSum\"]],[10,[6,\"std.smoothstep\",[[5,\"0\"],[1,\"softness\",\"+\",[5,\"0.001\"]],\"edgeMetric\"]]]]]},externals:{\"std.max\":()=>w,\"std.smoothstep\":()=>ce}})&&e.f)({})),O3=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return Mt(-__tsover_mul(__tsover_mul(t,t),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"sharpness\"}],body:[0,[[10,[6,\"std.exp\",[[4,\"-\",[1,[1,\"dist\",\"*\",\"dist\"],\"*\",\"sharpness\"]]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})),ef=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return Mt(__tsover_mul(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s)),-r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"du\"},{type:\"i\",name:\"dv\"},{type:\"i\",name:\"sharpness\"}],body:[0,[[10,[6,\"std.exp\",[[1,[1,[1,\"du\",\"*\",\"du\"],\"+\",[1,\"dv\",\"*\",\"dv\"]],\"*\",[4,\"-\",\"sharpness\"]]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})),BO=y.fn([u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(__tsover_sub(t.x,r),s),d=__tsover_sub(t.y,o),l=__tsover_add(__tsover_mul(i,i),__tsover_mul(d,d));return Mt(__tsover_div(__tsover_mul(-.5,l),n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"lx\"},{type:\"i\",name:\"ly\"},{type:\"i\",name:\"sizeSq\"}],body:[0,[[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"lx\"],\"*\",\"aspect\"]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",\"ly\"]],[13,\"dd2\",[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]],[10,[6,\"std.exp\",[[1,[1,[4,\"-\",[5,\"0.5\"]],\"*\",\"dd2\"],\"/\",\"sizeSq\"]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})),V3=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return Ye(__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(t,s),r)),.5),.5),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angle\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"sharpness\"}],body:[0,[[13,\"t\",[1,[1,[6,\"std.sin\",[[1,[1,\"angle\",\"*\",\"count\"],\"+\",\"phase\"]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]],[10,[6,\"std.pow\",[\"t\",\"sharpness\"]]]]]},externals:{\"std.sin\":()=>O,\"std.pow\":()=>Ye}})&&e.f)({})),tf=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return Ye(W(J(__tsover_mul(t,s))),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angle\"},{type:\"i\",name:\"halfCount\"},{type:\"i\",name:\"power\"}],body:[0,[[10,[6,\"std.pow\",[[6,\"std.abs\",[[6,\"std.cos\",[[1,\"angle\",\"*\",\"halfCount\"]]]]],\"power\"]]]]]},externals:{\"std.pow\":()=>Ye,\"std.abs\":()=>W,\"std.cos\":()=>J}})&&e.f)({})),N3=y.fn([u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=bt(t.y,t.x);return v(s,__tsover_sub(s,__tsover_mul(Et,K(__tsover_div(s,Et)))),ce(-.15,.15,t.x))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"delta\"}],body:[0,[[13,\"angle\",[6,\"std.atan2\",[[7,\"delta\",\"y\"],[7,\"delta\",\"x\"]]]],[13,\"angleWrapped\",[1,\"angle\",\"-\",[1,\"TAU\",\"*\",[6,\"std.floor\",[[1,\"angle\",\"/\",\"TAU\"]]]]]],[13,\"blend\",[6,\"std.smoothstep\",[[4,\"-\",[5,\"0.15\"]],[5,\"0.15\"],[7,\"delta\",\"x\"]]]],[10,[6,\"d.vec3f\",[\"angle\",\"angleWrapped\",\"blend\"]]]]]},externals:{\"std.atan2\":()=>bt,TAU:()=>Et,\"std.floor\":()=>K,\"std.smoothstep\":()=>ce,\"d.vec3f\":()=>v}})&&e.f)({})),bp=y.fn([a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=w(o,1e-4);return v(__tsover_sub(1,ce(0,n,W(__tsover_sub(t,__tsover_add(s,r))))),__tsover_sub(1,ce(0,n,W(__tsover_sub(t,s)))),__tsover_sub(1,ce(0,n,W(__tsover_sub(t,__tsover_sub(s,r))))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"spread\"},{type:\"i\",name:\"width\"}],body:[0,[[13,\"w\",[6,\"std.max\",[\"width\",[5,\"0.0001\"]]]],[13,\"r\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],\"w\",[6,\"std.abs\",[[1,\"dist\",\"-\",[1,\"center\",\"+\",\"spread\"]]]]]]]],[13,\"g\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],\"w\",[6,\"std.abs\",[[1,\"dist\",\"-\",\"center\"]]]]]]],[13,\"b\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],\"w\",[6,\"std.abs\",[[1,\"dist\",\"-\",[1,\"center\",\"-\",\"spread\"]]]]]]]],[10,[6,\"d.vec3f\",[\"r\",\"g\",\"b\"]]]]]},externals:{\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"std.abs\":()=>W,\"d.vec3f\":()=>v}})&&e.f)({})),q3=y.fn([u,u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=u(__tsover_sub(r.x,s.x),__tsover_sub(r.y,s.y)),n=u(__tsover_sub(t.x,s.x),__tsover_sub(t.y,s.y)),i=__tsover_add(__tsover_mul(n.x,o.x),__tsover_mul(n.y,o.y)),d=__tsover_add(__tsover_mul(o.x,o.x),__tsover_mul(o.y,o.y)),l=z(__tsover_div(i,w(d,1e-4)),0,1),c=u(__tsover_add(s.x,__tsover_mul(o.x,l)),__tsover_add(s.y,__tsover_mul(o.y,l))),_=u(__tsover_sub(t.x,c.x),__tsover_sub(t.y,c.y));return u(l,$e(__tsover_add(__tsover_mul(_.x,_.x),__tsover_mul(_.y,_.y))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"}],body:[0,[[13,\"lineVec\",[6,\"d.vec2f\",[[1,[7,\"b\",\"x\"],\"-\",[7,\"a\",\"x\"]],[1,[7,\"b\",\"y\"],\"-\",[7,\"a\",\"y\"]]]]],[13,\"toPoint\",[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"-\",[7,\"a\",\"x\"]],[1,[7,\"p\",\"y\"],\"-\",[7,\"a\",\"y\"]]]]],[13,\"dotProduct\",[1,[1,[7,\"toPoint\",\"x\"],\"*\",[7,\"lineVec\",\"x\"]],\"+\",[1,[7,\"toPoint\",\"y\"],\"*\",[7,\"lineVec\",\"y\"]]]],[13,\"lineLengthSq\",[1,[1,[7,\"lineVec\",\"x\"],\"*\",[7,\"lineVec\",\"x\"]],\"+\",[1,[7,\"lineVec\",\"y\"],\"*\",[7,\"lineVec\",\"y\"]]]],[13,\"t\",[6,\"std.clamp\",[[1,\"dotProduct\",\"/\",[6,\"std.max\",[\"lineLengthSq\",[5,\"0.0001\"]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"closestPoint\",[6,\"d.vec2f\",[[1,[7,\"a\",\"x\"],\"+\",[1,[7,\"lineVec\",\"x\"],\"*\",\"t\"]],[1,[7,\"a\",\"y\"],\"+\",[1,[7,\"lineVec\",\"y\"],\"*\",\"t\"]]]]],[13,\"distVec\",[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"-\",[7,\"closestPoint\",\"x\"]],[1,[7,\"p\",\"y\"],\"-\",[7,\"closestPoint\",\"y\"]]]]],[10,[6,\"d.vec2f\",[\"t\",[6,\"std.sqrt\",[[1,[1,[7,\"distVec\",\"x\"],\"*\",[7,\"distVec\",\"x\"]],\"+\",[1,[7,\"distVec\",\"y\"],\"*\",[7,\"distVec\",\"y\"]]]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.clamp\":()=>z,\"std.max\":()=>w,\"std.sqrt\":()=>$e}})&&e.f)({})),X3=y.fn([a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Z(r,o,s),l=w(Z(n,i,s),1e-4),c=__tsover_div(t,w(d,1e-4)),_=__tsover_add(1,l),p=Ye(__tsover_sub(1,ce(1,_,c)),__tsover_add(1,__tsover_mul(l,1.5)));return u(ce(__tsover_sub(1,l),__tsover_add(1,l),c),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"startThickness\"},{type:\"i\",name:\"endThickness\"},{type:\"i\",name:\"startSoftness\"},{type:\"i\",name:\"endSoftness\"}],body:[0,[[13,\"thickness\",[6,\"std.mix\",[\"startThickness\",\"endThickness\",\"t\"]]],[13,\"softness\",[6,\"std.max\",[[6,\"std.mix\",[\"startSoftness\",\"endSoftness\",\"t\"]],[5,\"0.0001\"]]]],[13,\"normalizedDist\",[1,\"dist\",\"/\",[6,\"std.max\",[\"thickness\",[5,\"0.0001\"]]]]],[13,\"edgeEnd\",[1,[5,\"1\"],\"+\",\"softness\"]],[13,\"alphaBase\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"1\"],\"edgeEnd\",\"normalizedDist\"]]]],[13,\"softnessFactor\",[1,[5,\"1\"],\"+\",[1,\"softness\",\"*\",[5,\"1.5\"]]]],[13,\"alpha\",[6,\"std.pow\",[\"alphaBase\",\"softnessFactor\"]]],[13,\"colorGradientStart\",[1,[5,\"1\"],\"-\",\"softness\"]],[13,\"colorGradientEnd\",[1,[5,\"1\"],\"+\",\"softness\"]],[13,\"colorT\",[6,\"std.smoothstep\",[\"colorGradientStart\",\"colorGradientEnd\",\"normalizedDist\"]]],[10,[6,\"d.vec2f\",[\"colorT\",\"alpha\"]]]]]},externals:{\"std.mix\":()=>Z,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"std.pow\":()=>Ye,\"d.vec2f\":()=>u}})&&e.f)({})),sf=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return Mt(__tsover_div(__tsover_mul(__tsover_mul(__tsover_sub(t,s),__tsover_sub(t,s)),-1),__tsover_mul(r,r)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"u\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"width\"}],body:[0,[[10,[6,\"std.exp\",[[1,[1,[1,[1,\"u\",\"-\",\"center\"],\"*\",[1,\"u\",\"-\",\"center\"]],\"*\",[4,\"-\",[5,\"1\"]]],\"/\",[1,\"width\",\"*\",\"width\"]]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})),g_=y.fn([a,v,v,v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=ce(0,.5,t),i=ce(.55,1.15,t);return Z(Z(o,r,v(n)),s,v(i)).mul(z(t,0,1.6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"heat\"},{type:\"i\",name:\"hot\"},{type:\"i\",name:\"mid\"},{type:\"i\",name:\"fringe\"}],body:[0,[[13,\"toMid\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.5\"],\"heat\"]]],[13,\"toHot\",[6,\"std.smoothstep\",[[5,\"0.55\"],[5,\"1.15\"],\"heat\"]]],[13,\"rgb\",[6,\"std.mix\",[[6,\"std.mix\",[\"fringe\",\"mid\",[6,\"d.vec3f\",[\"toMid\"]]]],\"hot\",[6,\"d.vec3f\",[\"toHot\"]]]]],[10,[6,[7,\"rgb\",\"mul\"],[[6,\"std.clamp\",[\"heat\",[5,\"0\"],[5,\"1.6\"]]]]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.mix\":()=>Z,\"d.vec3f\":()=>v,\"std.clamp\":()=>z}})&&e.f)({})),IO=y.fn([a,v,v,v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=g_(__tsover_mul(t,1.08),s,r,o),i=g_(t,s,r,o),d=g_(__tsover_mul(t,.88),s,r,o);return v(n.x,i.y,d.z)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"heat\"},{type:\"i\",name:\"hot\"},{type:\"i\",name:\"mid\"},{type:\"i\",name:\"fringe\"}],body:[0,[[13,\"rampR\",[6,\"heatRamp3\",[[1,\"heat\",\"*\",[5,\"1.08\"]],\"hot\",\"mid\",\"fringe\"]]],[13,\"rampG\",[6,\"heatRamp3\",[\"heat\",\"hot\",\"mid\",\"fringe\"]]],[13,\"rampB\",[6,\"heatRamp3\",[[1,\"heat\",\"*\",[5,\"0.88\"]],\"hot\",\"mid\",\"fringe\"]]],[10,[6,\"d.vec3f\",[[7,\"rampR\",\"x\"],[7,\"rampG\",\"y\"],[7,\"rampB\",\"z\"]]]]]]},externals:{heatRamp3:()=>g_,\"d.vec3f\":()=>v}})&&e.f)({})),XD=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s,__tsover_sub(1,r));return __tsover_sub(1,ce(o,s,t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"feather\"}],body:[0,[[13,\"falloffStart\",[1,\"radius\",\"*\",[1,[5,\"1\"],\"-\",\"feather\"]]],[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"falloffStart\",\"radius\",\"dist\"]]]]]]},externals:{\"std.smoothstep\":()=>ce}})&&e.f)({})),HD=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return V3(t,s,r,__tsover_mul(__tsover_div(1,__tsover_add(o,.05)),.3))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angle\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"sharpness\",[1,[1,[5,\"1\"],\"/\",[1,\"softness\",\"+\",[5,\"0.05\"]]],\"*\",[5,\"0.3\"]]],[10,[6,\"angularSineLobes\",[\"angle\",\"count\",\"phase\",\"sharpness\"]]]]]},externals:{angularSineLobes:()=>V3}})&&e.f)({})),jD=y.fn([u,u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s),n=r.x,i=__tsover_sub(1,r.y),d=__tsover_sub(__tsover_mul(t.x,o),__tsover_mul(n,o)),l=__tsover_sub(t.y,i);return u($e(__tsover_add(__tsover_mul(d,d),__tsover_mul(l,l))),bt(l,d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"center\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"cx\",[7,\"center\",\"x\"]],[13,\"cy\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,\"cx\",\"*\",\"aspect\"]]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",\"cy\"]],[13,\"dist\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]]],[13,\"angle\",[6,\"std.atan2\",[\"dy\",\"dx\"]]],[10,[6,\"d.vec2f\",[\"dist\",\"angle\"]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"std.sqrt\":()=>$e,\"std.atan2\":()=>bt,\"d.vec2f\":()=>u}})&&e.f)({})),YO=y.fn([u,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s),n=__tsover_mul(__tsover_sub(t.x,.5),o),i=__tsover_sub(t.y,.5),d=__tsover_add(__tsover_mul(n,n),__tsover_mul(i,i));return z(__tsover_sub(1,__tsover_mul(d,r)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"strength\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"vigX\",[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"]],[13,\"vigY\",[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]],[13,\"vigD2\",[1,[1,\"vigX\",\"*\",\"vigX\"],\"+\",[1,\"vigY\",\"*\",\"vigY\"]]],[10,[6,\"std.clamp\",[[1,[5,\"1\"],\"-\",[1,\"vigD2\",\"*\",\"strength\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"std.clamp\":()=>z}})&&e.f)({})),WO=y.fn([b,v],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t.xyz,o=z(v(1,1,1).sub(v(1,1,1).sub(z(r,v(0),v(1))).mul(v(1,1,1).sub(z(s,v(0),v(1))))).add(s.mul(.16)),v(0),v(1)),n=z(cp(s),0,1);return b(o,z(__tsover_add(t.w,__tsover_mul(n,.85)),0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"leakRgb\"}],body:[0,[[13,\"base\",[7,\"color\",\"xyz\"]],[13,\"screened\",[6,[7,[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]],\"sub\"],[[6,[7,[6,[7,[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]],\"sub\"],[[6,\"std.clamp\",[\"base\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]]],\"mul\"],[[6,[7,[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]],\"sub\"],[[6,\"std.clamp\",[\"leakRgb\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]]]]]]]],[13,\"lifted\",[6,[7,\"screened\",\"add\"],[[6,[7,\"leakRgb\",\"mul\"],[[5,\"0.16\"]]]]]],[13,\"outRgb\",[6,\"std.clamp\",[\"lifted\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]],[13,\"leakLuma\",[6,\"std.clamp\",[[6,\"tone.luma601Dot\",[\"leakRgb\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"outA\",[6,\"std.clamp\",[[1,[7,\"color\",\"w\"],\"+\",[1,\"leakLuma\",\"*\",[5,\"0.85\"]]],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[\"outRgb\",\"outA\"]]]]]},externals:{\"d.vec3f\":()=>v,\"std.clamp\":()=>z,\"tone.luma601Dot\":()=>cp,\"d.vec4f\":()=>b}})&&e.f)({})),OO=y.fn([u,a,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=u(__tsover_mul(t.x,s),t.y),n=u(__tsover_mul(r.x,s),__tsover_sub(1,r.y)),i=u(__tsover_mul(s,.5),.5).sub(n),d=te(i),l=F(__tsover_div(i.x,w(d,.001)),a(1),d<.02),c=F(__tsover_div(i.y,w(d,.001)),a(0),d<.02),_=__tsover_sub(o.x,n.x),p=__tsover_sub(o.y,n.y);return u(__tsover_add(__tsover_mul(_,l),__tsover_mul(p,c)),__tsover_sub(__tsover_mul(p,l),__tsover_mul(_,c)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"anchorRaw\"}],body:[0,[[13,\"pA\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"anchor\",[6,\"d.vec2f\",[[1,[7,\"anchorRaw\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"anchorRaw\",\"y\"]]]]],[13,\"toCenter\",[6,[7,[6,\"d.vec2f\",[[1,\"aspect\",\"*\",[5,\"0.5\"]],[5,\"0.5\"]]],\"sub\"],[\"anchor\"]]],[13,\"cLen\",[6,\"std.length\",[\"toCenter\"]]],[13,\"dirX\",[6,\"std.select\",[[1,[7,\"toCenter\",\"x\"],\"/\",[6,\"std.max\",[\"cLen\",[5,\"0.001\"]]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"cLen\",\"<\",[5,\"0.02\"]]]]],[13,\"dirY\",[6,\"std.select\",[[1,[7,\"toCenter\",\"y\"],\"/\",[6,\"std.max\",[\"cLen\",[5,\"0.001\"]]]],[6,\"d.f32\",[[5,\"0\"]]],[1,\"cLen\",\"<\",[5,\"0.02\"]]]]],[13,\"relX\",[1,[7,\"pA\",\"x\"],\"-\",[7,\"anchor\",\"x\"]]],[13,\"relY\",[1,[7,\"pA\",\"y\"],\"-\",[7,\"anchor\",\"y\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"relX\",\"*\",\"dirX\"],\"+\",[1,\"relY\",\"*\",\"dirY\"]],[1,[1,\"relY\",\"*\",\"dirX\"],\"-\",[1,\"relX\",\"*\",\"dirY\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.select\":()=>F,\"std.max\":()=>w,\"d.f32\":()=>a}})&&e.f)({}));var Wn=1e-4,ei=1.0471975512,bn=6/29,wp=500,Tp=200,x_=bn*bn*bn,Ia=4/29,b_=1/(3*bn*bn),w_=3*bn*bn,dr=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return v(__tsover_sub(__tsover_sub(__tsover_mul(t.x,1.2249401),__tsover_mul(t.y,.2249404)),__tsover_mul(t.z,0)),__tsover_add(__tsover_add(__tsover_mul(t.x,-.0420569),__tsover_mul(t.y,1.0420571)),__tsover_mul(t.z,0)),__tsover_add(__tsover_sub(__tsover_mul(t.x,-.0196376),__tsover_mul(t.y,.0786361)),__tsover_mul(t.z,1.0982735)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p3\"}],body:[0,[[13,\"r\",[1,[1,[1,[7,\"p3\",\"x\"],\"*\",[5,\"1.2249401\"]],\"-\",[1,[7,\"p3\",\"y\"],\"*\",[5,\"0.2249404\"]]],\"-\",[1,[7,\"p3\",\"z\"],\"*\",[5,\"0\"]]]],[13,\"g\",[1,[1,[1,[7,\"p3\",\"x\"],\"*\",[4,\"-\",[5,\"0.0420569\"]]],\"+\",[1,[7,\"p3\",\"y\"],\"*\",[5,\"1.0420571\"]]],\"+\",[1,[7,\"p3\",\"z\"],\"*\",[5,\"0\"]]]],[13,\"b\",[1,[1,[1,[7,\"p3\",\"x\"],\"*\",[4,\"-\",[5,\"0.0196376\"]]],\"-\",[1,[7,\"p3\",\"y\"],\"*\",[5,\"0.0786361\"]]],\"+\",[1,[7,\"p3\",\"z\"],\"*\",[5,\"1.0982735\"]]]],[10,[6,\"d.vec3f\",[\"r\",\"g\",\"b\"]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),Ms=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return v(__tsover_add(__tsover_add(__tsover_mul(t.x,.8224621),__tsover_mul(t.y,.177538)),__tsover_mul(t.z,0)),__tsover_add(__tsover_add(__tsover_mul(t.x,.0331941),__tsover_mul(t.y,.9668058)),__tsover_mul(t.z,0)),__tsover_add(__tsover_add(__tsover_mul(t.x,.0170826),__tsover_mul(t.y,.0723974)),__tsover_mul(t.z,.9105199)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"srgb\"}],body:[0,[[13,\"r\",[1,[1,[1,[7,\"srgb\",\"x\"],\"*\",[5,\"0.8224621\"]],\"+\",[1,[7,\"srgb\",\"y\"],\"*\",[5,\"0.177538\"]]],\"+\",[1,[7,\"srgb\",\"z\"],\"*\",[5,\"0\"]]]],[13,\"g\",[1,[1,[1,[7,\"srgb\",\"x\"],\"*\",[5,\"0.0331941\"]],\"+\",[1,[7,\"srgb\",\"y\"],\"*\",[5,\"0.9668058\"]]],\"+\",[1,[7,\"srgb\",\"z\"],\"*\",[5,\"0\"]]]],[13,\"b\",[1,[1,[1,[7,\"srgb\",\"x\"],\"*\",[5,\"0.0170826\"]],\"+\",[1,[7,\"srgb\",\"y\"],\"*\",[5,\"0.0723974\"]]],\"+\",[1,[7,\"srgb\",\"z\"],\"*\",[5,\"0.9105199\"]]]],[10,[6,\"d.vec3f\",[\"r\",\"g\",\"b\"]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),rn=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_add(__tsover_add(__tsover_mul(s,.4122214708),__tsover_mul(r,.5363325363)),__tsover_mul(o,.0514459929)),i=__tsover_add(__tsover_mul(s,.2119034982),__tsover_add(__tsover_mul(r,.6806995451),__tsover_mul(o,.1073969566))),d=__tsover_add(__tsover_add(__tsover_mul(s,.0883024619),__tsover_mul(r,.2817188376)),__tsover_mul(o,.6299787005)),l=__tsover_mul(ir(n),Ye(W(n),__tsover_div(1,3))),c=__tsover_mul(ir(i),Ye(W(i),__tsover_div(1,3))),_=__tsover_mul(ir(d),Ye(W(d),__tsover_div(1,3)));return v(__tsover_sub(__tsover_add(__tsover_mul(l,.2104542553),__tsover_mul(c,.793617785)),__tsover_mul(_,.0040720468)),__tsover_add(__tsover_sub(__tsover_mul(l,1.9779984951),__tsover_mul(c,2.428592205)),__tsover_mul(_,.4505937099)),__tsover_sub(__tsover_add(__tsover_mul(l,.0259040371),__tsover_mul(c,.7827717662)),__tsover_mul(_,.808675766)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[13,\"r\",[7,\"rgb\",\"x\"]],[13,\"g\",[7,\"rgb\",\"y\"]],[13,\"b\",[7,\"rgb\",\"z\"]],[13,\"l\",[1,[1,[1,\"r\",\"*\",[5,\"0.4122214708\"]],\"+\",[1,\"g\",\"*\",[5,\"0.5363325363\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.0514459929\"]]]],[13,\"m\",[1,[1,\"r\",\"*\",[5,\"0.2119034982\"]],\"+\",[1,[1,\"g\",\"*\",[5,\"0.6806995451\"]],\"+\",[1,\"b\",\"*\",[5,\"0.1073969566\"]]]]],[13,\"s\",[1,[1,[1,\"r\",\"*\",[5,\"0.0883024619\"]],\"+\",[1,\"g\",\"*\",[5,\"0.2817188376\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.6299787005\"]]]],[13,\"l_\",[1,[6,\"std.sign\",[\"l\"]],\"*\",[6,\"std.pow\",[[6,\"std.abs\",[\"l\"]],[1,[5,\"1\"],\"/\",[5,\"3\"]]]]]],[13,\"m_\",[1,[6,\"std.sign\",[\"m\"]],\"*\",[6,\"std.pow\",[[6,\"std.abs\",[\"m\"]],[1,[5,\"1\"],\"/\",[5,\"3\"]]]]]],[13,\"s_\",[1,[6,\"std.sign\",[\"s\"]],\"*\",[6,\"std.pow\",[[6,\"std.abs\",[\"s\"]],[1,[5,\"1\"],\"/\",[5,\"3\"]]]]]],[10,[6,\"d.vec3f\",[[1,[1,[1,\"l_\",\"*\",[5,\"0.2104542553\"]],\"+\",[1,\"m_\",\"*\",[5,\"0.793617785\"]]],\"-\",[1,\"s_\",\"*\",[5,\"0.0040720468\"]]],[1,[1,[1,\"l_\",\"*\",[5,\"1.9779984951\"]],\"-\",[1,\"m_\",\"*\",[5,\"2.428592205\"]]],\"+\",[1,\"s_\",\"*\",[5,\"0.4505937099\"]]],[1,[1,[1,\"l_\",\"*\",[5,\"0.0259040371\"]],\"+\",[1,\"m_\",\"*\",[5,\"0.7827717662\"]]],\"-\",[1,\"s_\",\"*\",[5,\"0.808675766\"]]]]]]]]},externals:{\"std.sign\":()=>ir,\"std.pow\":()=>Ye,\"std.abs\":()=>W,\"d.vec3f\":()=>v}})&&e.f)({})),Ro=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_add(__tsover_add(s,__tsover_mul(r,.3963377774)),__tsover_mul(o,.2158037573)),i=__tsover_sub(__tsover_sub(s,__tsover_mul(r,.1055613458)),__tsover_mul(o,.0638541728)),d=__tsover_sub(__tsover_sub(s,__tsover_mul(r,.0894841775)),__tsover_mul(o,1.291485548)),l=Ye(n,3),c=Ye(i,3),_=Ye(d,3);return v(__tsover_add(__tsover_sub(__tsover_mul(l,4.0767416621),__tsover_mul(c,3.3077115913)),__tsover_mul(_,.2309699292)),__tsover_sub(__tsover_add(__tsover_mul(l,-1.2684380046),__tsover_mul(c,2.6097574011)),__tsover_mul(_,.3413193965)),__tsover_add(__tsover_sub(__tsover_mul(l,-.0041960863),__tsover_mul(c,.7034186147)),__tsover_mul(_,1.707614701)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lab\"}],body:[0,[[13,\"L\",[7,\"lab\",\"x\"]],[13,\"a\",[7,\"lab\",\"y\"]],[13,\"b\",[7,\"lab\",\"z\"]],[13,\"l_\",[1,[1,\"L\",\"+\",[1,\"a\",\"*\",[5,\"0.3963377774\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.2158037573\"]]]],[13,\"m_\",[1,[1,\"L\",\"-\",[1,\"a\",\"*\",[5,\"0.1055613458\"]]],\"-\",[1,\"b\",\"*\",[5,\"0.0638541728\"]]]],[13,\"s_\",[1,[1,\"L\",\"-\",[1,\"a\",\"*\",[5,\"0.0894841775\"]]],\"-\",[1,\"b\",\"*\",[5,\"1.291485548\"]]]],[13,\"l\",[6,\"std.pow\",[\"l_\",[5,\"3\"]]]],[13,\"m\",[6,\"std.pow\",[\"m_\",[5,\"3\"]]]],[13,\"s\",[6,\"std.pow\",[\"s_\",[5,\"3\"]]]],[10,[6,\"d.vec3f\",[[1,[1,[1,\"l\",\"*\",[5,\"4.0767416621\"]],\"-\",[1,\"m\",\"*\",[5,\"3.3077115913\"]]],\"+\",[1,\"s\",\"*\",[5,\"0.2309699292\"]]],[1,[1,[1,\"l\",\"*\",[4,\"-\",[5,\"1.2684380046\"]]],\"+\",[1,\"m\",\"*\",[5,\"2.6097574011\"]]],\"-\",[1,\"s\",\"*\",[5,\"0.3413193965\"]]],[1,[1,[1,\"l\",\"*\",[4,\"-\",[5,\"0.0041960863\"]]],\"-\",[1,\"m\",\"*\",[5,\"0.7034186147\"]]],\"+\",[1,\"s\",\"*\",[5,\"1.707614701\"]]]]]]]]},externals:{\"std.pow\":()=>Ye,\"d.vec3f\":()=>v}})&&e.f)({})),Ad=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z;return v(s,$e(__tsover_add(__tsover_mul(r,r),__tsover_mul(o,o))),bt(o,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lab\"}],body:[0,[[13,\"L\",[7,\"lab\",\"x\"]],[13,\"a\",[7,\"lab\",\"y\"]],[13,\"b\",[7,\"lab\",\"z\"]],[13,\"C\",[6,\"std.sqrt\",[[1,[1,\"a\",\"*\",\"a\"],\"+\",[1,\"b\",\"*\",\"b\"]]]]],[13,\"h\",[6,\"std.atan2\",[\"b\",\"a\"]]],[10,[6,\"d.vec3f\",[\"L\",\"C\",\"h\"]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.atan2\":()=>bt,\"d.vec3f\":()=>v}})&&e.f)({})),Ii=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z;return v(s,__tsover_mul(r,J(o)),__tsover_mul(r,O(o)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lch\"}],body:[0,[[13,\"L\",[7,\"lch\",\"x\"]],[13,\"C\",[7,\"lch\",\"y\"]],[13,\"h\",[7,\"lch\",\"z\"]],[10,[6,\"d.vec3f\",[\"L\",[1,\"C\",\"*\",[6,\"std.cos\",[\"h\"]]],[1,\"C\",\"*\",[6,\"std.sin\",[\"h\"]]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),Sp=y.fn([a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=a(0),n=a(0),i=a(0);return r<1?(o=t,n=s):r<2?(o=s,n=t):r<3?(n=t,i=s):r<4?(n=s,i=t):r<5?(o=s,i=t):(o=t,i=s),v(o,n,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"c\"},{type:\"i\",name:\"x\"},{type:\"i\",name:\"sector\"}],body:[0,[[12,\"r\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"g\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"b\",[6,\"d.f32\",[[5,\"0\"]]]],[11,[1,\"sector\",\"<\",[5,\"1\"]],[0,[[2,\"r\",\"=\",\"c\"],[2,\"g\",\"=\",\"x\"]]],[11,[1,\"sector\",\"<\",[5,\"2\"]],[0,[[2,\"r\",\"=\",\"x\"],[2,\"g\",\"=\",\"c\"]]],[11,[1,\"sector\",\"<\",[5,\"3\"]],[0,[[2,\"g\",\"=\",\"c\"],[2,\"b\",\"=\",\"x\"]]],[11,[1,\"sector\",\"<\",[5,\"4\"]],[0,[[2,\"g\",\"=\",\"x\"],[2,\"b\",\"=\",\"c\"]]],[11,[1,\"sector\",\"<\",[5,\"5\"]],[0,[[2,\"r\",\"=\",\"x\"],[2,\"b\",\"=\",\"c\"]]],[0,[[2,\"r\",\"=\",\"c\"],[2,\"b\",\"=\",\"x\"]]]]]]]],[10,[6,\"d.vec3f\",[\"r\",\"g\",\"b\"]]]]]},externals:{\"d.f32\":()=>a,\"d.vec3f\":()=>v}})&&e.f)({})),lc=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=w(w(s,r),o),i=ue(ue(s,r),o),d=__tsover_sub(n,i),l=__tsover_mul(__tsover_add(n,i),.5),c=w(__tsover_sub(1,W(__tsover_sub(__tsover_mul(l,2),1))),Wn),_=__tsover_div(d,c),p=n===s,f=n===r,h=__tsover_div(__tsover_sub(r,o),w(d,Wn)),g=__tsover_add(2,__tsover_div(__tsover_sub(o,s),w(d,Wn))),x=F(F(__tsover_add(4,__tsover_div(__tsover_sub(s,r),w(d,Wn))),g,f),h,p);return v(__tsover_mul(x,ei),_,l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[13,\"r\",[7,\"rgb\",\"x\"]],[13,\"g\",[7,\"rgb\",\"y\"]],[13,\"b\",[7,\"rgb\",\"z\"]],[13,\"maxVal\",[6,\"std.max\",[[6,\"std.max\",[\"r\",\"g\"]],\"b\"]]],[13,\"minVal\",[6,\"std.min\",[[6,\"std.min\",[\"r\",\"g\"]],\"b\"]]],[13,\"delta\",[1,\"maxVal\",\"-\",\"minVal\"]],[13,\"l\",[1,[1,\"maxVal\",\"+\",\"minVal\"],\"*\",[5,\"0.5\"]]],[13,\"satDenom\",[6,\"std.max\",[[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,[1,\"l\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]],\"EPSILON\"]]],[13,\"s\",[1,\"delta\",\"/\",\"satDenom\"]],[13,\"isRMax\",[1,\"maxVal\",\"===\",\"r\"]],[13,\"isGMax\",[1,\"maxVal\",\"===\",\"g\"]],[13,\"hueR\",[1,[1,\"g\",\"-\",\"b\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]],[13,\"hueG\",[1,[5,\"2\"],\"+\",[1,[1,\"b\",\"-\",\"r\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]]],[13,\"hueB\",[1,[5,\"4\"],\"+\",[1,[1,\"r\",\"-\",\"g\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]]],[13,\"hue\",[6,\"std.select\",[[6,\"std.select\",[\"hueB\",\"hueG\",\"isGMax\"]],\"hueR\",\"isRMax\"]]],[13,\"h\",[1,\"hue\",\"*\",\"PI_OVER_3\"]],[10,[6,\"d.vec3f\",[\"h\",\"s\",\"l\"]]]]]},externals:{\"std.max\":()=>w,\"std.min\":()=>ue,\"std.abs\":()=>W,EPSILON:()=>Wn,\"std.select\":()=>F,PI_OVER_3:()=>ei,\"d.vec3f\":()=>v}})&&e.f)({})),Yi=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_mul(r,__tsover_sub(1,W(__tsover_sub(__tsover_mul(o,2),1)))),i=__tsover_div(s,ei),d=__tsover_mul(n,__tsover_sub(1,W(__tsover_sub(tn(i,2),1)))),l=__tsover_sub(o,__tsover_mul(n,.5));return Sp(n,d,K(i)).add(l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"hsl\"}],body:[0,[[13,\"h\",[7,\"hsl\",\"x\"]],[13,\"s\",[7,\"hsl\",\"y\"]],[13,\"l\",[7,\"hsl\",\"z\"]],[13,\"c\",[1,\"s\",\"*\",[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,[1,\"l\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]]]],[13,\"hPrime\",[1,\"h\",\"/\",\"PI_OVER_3\"]],[13,\"x\",[1,\"c\",\"*\",[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,[6,\"std.mod\",[\"hPrime\",[5,\"2\"]]],\"-\",[5,\"1\"]]]]]]],[13,\"m\",[1,\"l\",\"-\",[1,\"c\",\"*\",[5,\"0.5\"]]]],[13,\"sector\",[6,\"std.floor\",[\"hPrime\"]]],[10,[6,[7,[6,\"selectRGBBySector\",[\"c\",\"x\",\"sector\"]],\"add\"],[\"m\"]]]]]},externals:{\"std.abs\":()=>W,PI_OVER_3:()=>ei,\"std.mod\":()=>tn,\"std.floor\":()=>K,selectRGBBySector:()=>Sp}})&&e.f)({})),rf=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=w(w(s,r),o),i=ue(ue(s,r),o),d=__tsover_sub(n,i),l=n,c=__tsover_div(d,w(n,Wn)),_=n===s,p=n===r,f=__tsover_div(__tsover_sub(r,o),w(d,Wn)),h=__tsover_add(2,__tsover_div(__tsover_sub(o,s),w(d,Wn))),g=F(F(__tsover_add(4,__tsover_div(__tsover_sub(s,r),w(d,Wn))),h,p),f,_);return v(__tsover_mul(g,ei),c,l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[13,\"r\",[7,\"rgb\",\"x\"]],[13,\"g\",[7,\"rgb\",\"y\"]],[13,\"b\",[7,\"rgb\",\"z\"]],[13,\"maxVal\",[6,\"std.max\",[[6,\"std.max\",[\"r\",\"g\"]],\"b\"]]],[13,\"minVal\",[6,\"std.min\",[[6,\"std.min\",[\"r\",\"g\"]],\"b\"]]],[13,\"delta\",[1,\"maxVal\",\"-\",\"minVal\"]],[13,\"v\",\"maxVal\"],[13,\"s\",[1,\"delta\",\"/\",[6,\"std.max\",[\"maxVal\",\"EPSILON\"]]]],[13,\"isRMax\",[1,\"maxVal\",\"===\",\"r\"]],[13,\"isGMax\",[1,\"maxVal\",\"===\",\"g\"]],[13,\"hueR\",[1,[1,\"g\",\"-\",\"b\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]],[13,\"hueG\",[1,[5,\"2\"],\"+\",[1,[1,\"b\",\"-\",\"r\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]]],[13,\"hueB\",[1,[5,\"4\"],\"+\",[1,[1,\"r\",\"-\",\"g\"],\"/\",[6,\"std.max\",[\"delta\",\"EPSILON\"]]]]],[13,\"hue\",[6,\"std.select\",[[6,\"std.select\",[\"hueB\",\"hueG\",\"isGMax\"]],\"hueR\",\"isRMax\"]]],[13,\"h\",[1,\"hue\",\"*\",\"PI_OVER_3\"]],[10,[6,\"d.vec3f\",[\"h\",\"s\",\"v\"]]]]]},externals:{\"std.max\":()=>w,\"std.min\":()=>ue,EPSILON:()=>Wn,\"std.select\":()=>F,PI_OVER_3:()=>ei,\"d.vec3f\":()=>v}})&&e.f)({})),wc=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_mul(o,r),i=__tsover_div(s,ei),d=__tsover_mul(n,__tsover_sub(1,W(__tsover_sub(tn(i,2),1)))),l=__tsover_sub(o,n);return Sp(n,d,K(i)).add(l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"hsv\"}],body:[0,[[13,\"h\",[7,\"hsv\",\"x\"]],[13,\"s\",[7,\"hsv\",\"y\"]],[13,\"v\",[7,\"hsv\",\"z\"]],[13,\"c\",[1,\"v\",\"*\",\"s\"]],[13,\"hPrime\",[1,\"h\",\"/\",\"PI_OVER_3\"]],[13,\"x\",[1,\"c\",\"*\",[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,[6,\"std.mod\",[\"hPrime\",[5,\"2\"]]],\"-\",[5,\"1\"]]]]]]],[13,\"m\",[1,\"v\",\"-\",\"c\"]],[13,\"sector\",[6,\"std.floor\",[\"hPrime\"]]],[10,[6,[7,[6,\"selectRGBBySector\",[\"c\",\"x\",\"sector\"]],\"add\"],[\"m\"]]]]]},externals:{PI_OVER_3:()=>ei,\"std.abs\":()=>W,\"std.mod\":()=>tn,\"std.floor\":()=>K,selectRGBBySector:()=>Sp}})&&e.f)({})),of=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_add(__tsover_add(__tsover_mul(s,.4124564),__tsover_mul(r,.3575761)),__tsover_mul(o,.1804375)),i=__tsover_add(__tsover_add(__tsover_mul(s,.2126729),__tsover_mul(r,.7151522)),__tsover_mul(o,.072175)),d=__tsover_add(__tsover_add(__tsover_mul(s,.0193339),__tsover_mul(r,.119192)),__tsover_mul(o,.9503041)),l=__tsover_div(n,.95047),c=__tsover_div(i,1),_=__tsover_div(d,1.08883),p=F(__tsover_add(__tsover_mul(l,b_),Ia),Ye(l,__tsover_div(1,3)),l>x_),f=F(__tsover_add(__tsover_mul(c,b_),Ia),Ye(c,__tsover_div(1,3)),c>x_),h=F(__tsover_add(__tsover_mul(_,b_),Ia),Ye(_,__tsover_div(1,3)),_>x_);return v(__tsover_sub(__tsover_mul(f,116),16),__tsover_mul(__tsover_sub(p,f),wp),__tsover_mul(__tsover_sub(f,h),Tp))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[13,\"r\",[7,\"rgb\",\"x\"]],[13,\"g\",[7,\"rgb\",\"y\"]],[13,\"b\",[7,\"rgb\",\"z\"]],[13,\"x\",[1,[1,[1,\"r\",\"*\",[5,\"0.4124564\"]],\"+\",[1,\"g\",\"*\",[5,\"0.3575761\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.1804375\"]]]],[13,\"y\",[1,[1,[1,\"r\",\"*\",[5,\"0.2126729\"]],\"+\",[1,\"g\",\"*\",[5,\"0.7151522\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.072175\"]]]],[13,\"z\",[1,[1,[1,\"r\",\"*\",[5,\"0.0193339\"]],\"+\",[1,\"g\",\"*\",[5,\"0.119192\"]]],\"+\",[1,\"b\",\"*\",[5,\"0.9503041\"]]]],[13,\"xn\",[1,\"x\",\"/\",[5,\"0.95047\"]]],[13,\"yn\",[1,\"y\",\"/\",[5,\"1\"]]],[13,\"zn\",[1,\"z\",\"/\",[5,\"1.08883\"]]],[13,\"fx\",[6,\"std.select\",[[1,[1,\"xn\",\"*\",\"LAB_FWD_SLOPE\"],\"+\",\"LAB_OFFSET\"],[6,\"std.pow\",[\"xn\",[1,[5,\"1\"],\"/\",[5,\"3\"]]]],[1,\"xn\",\">\",\"LAB_DELTA3\"]]]],[13,\"fy\",[6,\"std.select\",[[1,[1,\"yn\",\"*\",\"LAB_FWD_SLOPE\"],\"+\",\"LAB_OFFSET\"],[6,\"std.pow\",[\"yn\",[1,[5,\"1\"],\"/\",[5,\"3\"]]]],[1,\"yn\",\">\",\"LAB_DELTA3\"]]]],[13,\"fz\",[6,\"std.select\",[[1,[1,\"zn\",\"*\",\"LAB_FWD_SLOPE\"],\"+\",\"LAB_OFFSET\"],[6,\"std.pow\",[\"zn\",[1,[5,\"1\"],\"/\",[5,\"3\"]]]],[1,\"zn\",\">\",\"LAB_DELTA3\"]]]],[13,\"L\",[1,[1,\"fy\",\"*\",[5,\"116\"]],\"-\",[5,\"16\"]]],[13,\"a\",[1,[1,\"fx\",\"-\",\"fy\"],\"*\",\"LAB_KAPPA\"]],[13,\"bLab\",[1,[1,\"fy\",\"-\",\"fz\"],\"*\",\"LAB_LAMBDA\"]],[10,[6,\"d.vec3f\",[\"L\",\"a\",\"bLab\"]]]]]},externals:{\"std.select\":()=>F,LAB_FWD_SLOPE:()=>b_,LAB_OFFSET:()=>Ia,\"std.pow\":()=>Ye,LAB_DELTA3:()=>x_,LAB_KAPPA:()=>wp,LAB_LAMBDA:()=>Tp,\"d.vec3f\":()=>v}})&&e.f)({})),Tc=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z,n=__tsover_div(__tsover_add(s,16),116),i=__tsover_add(__tsover_div(r,wp),n),d=__tsover_sub(n,__tsover_div(o,Tp)),l=F(__tsover_mul(__tsover_sub(i,Ia),w_),Ye(i,3),i>bn),c=F(__tsover_mul(__tsover_sub(n,Ia),w_),Ye(n,3),n>bn),_=F(__tsover_mul(__tsover_sub(d,Ia),w_),Ye(d,3),d>bn),p=__tsover_mul(l,.95047),f=__tsover_mul(c,1),h=__tsover_mul(_,1.08883);return v(__tsover_sub(__tsover_sub(__tsover_mul(p,3.2404542),__tsover_mul(f,1.5371385)),__tsover_mul(h,.4985314)),__tsover_add(__tsover_add(__tsover_mul(p,-.969266),__tsover_mul(f,1.8760108)),__tsover_mul(h,.041556)),__tsover_add(__tsover_sub(__tsover_mul(p,.0556434),__tsover_mul(f,.2040259)),__tsover_mul(h,1.0572252)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lab\"}],body:[0,[[13,\"L\",[7,\"lab\",\"x\"]],[13,\"a\",[7,\"lab\",\"y\"]],[13,\"b\",[7,\"lab\",\"z\"]],[13,\"fy\",[1,[1,\"L\",\"+\",[5,\"16\"]],\"/\",[5,\"116\"]]],[13,\"fx\",[1,[1,\"a\",\"/\",\"LAB_KAPPA\"],\"+\",\"fy\"]],[13,\"fz\",[1,\"fy\",\"-\",[1,\"b\",\"/\",\"LAB_LAMBDA\"]]],[13,\"xn\",[6,\"std.select\",[[1,[1,\"fx\",\"-\",\"LAB_OFFSET\"],\"*\",\"LAB_INV_SLOPE\"],[6,\"std.pow\",[\"fx\",[5,\"3\"]]],[1,\"fx\",\">\",\"LAB_DELTA\"]]]],[13,\"yn\",[6,\"std.select\",[[1,[1,\"fy\",\"-\",\"LAB_OFFSET\"],\"*\",\"LAB_INV_SLOPE\"],[6,\"std.pow\",[\"fy\",[5,\"3\"]]],[1,\"fy\",\">\",\"LAB_DELTA\"]]]],[13,\"zn\",[6,\"std.select\",[[1,[1,\"fz\",\"-\",\"LAB_OFFSET\"],\"*\",\"LAB_INV_SLOPE\"],[6,\"std.pow\",[\"fz\",[5,\"3\"]]],[1,\"fz\",\">\",\"LAB_DELTA\"]]]],[13,\"x\",[1,\"xn\",\"*\",[5,\"0.95047\"]]],[13,\"y\",[1,\"yn\",\"*\",[5,\"1\"]]],[13,\"z\",[1,\"zn\",\"*\",[5,\"1.08883\"]]],[13,\"r\",[1,[1,[1,\"x\",\"*\",[5,\"3.2404542\"]],\"-\",[1,\"y\",\"*\",[5,\"1.5371385\"]]],\"-\",[1,\"z\",\"*\",[5,\"0.4985314\"]]]],[13,\"g\",[1,[1,[1,\"x\",\"*\",[4,\"-\",[5,\"0.969266\"]]],\"+\",[1,\"y\",\"*\",[5,\"1.8760108\"]]],\"+\",[1,\"z\",\"*\",[5,\"0.041556\"]]]],[13,\"bRgb\",[1,[1,[1,\"x\",\"*\",[5,\"0.0556434\"]],\"-\",[1,\"y\",\"*\",[5,\"0.2040259\"]]],\"+\",[1,\"z\",\"*\",[5,\"1.0572252\"]]]],[10,[6,\"d.vec3f\",[\"r\",\"g\",\"bRgb\"]]]]]},externals:{LAB_KAPPA:()=>wp,LAB_LAMBDA:()=>Tp,\"std.select\":()=>F,LAB_OFFSET:()=>Ia,LAB_INV_SLOPE:()=>w_,\"std.pow\":()=>Ye,LAB_DELTA:()=>bn,\"d.vec3f\":()=>v}})&&e.f)({})),nf=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z;return v(s,$e(__tsover_add(__tsover_mul(r,r),__tsover_mul(o,o))),bt(o,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lab\"}],body:[0,[[13,\"L\",[7,\"lab\",\"x\"]],[13,\"a\",[7,\"lab\",\"y\"]],[13,\"b\",[7,\"lab\",\"z\"]],[13,\"C\",[6,\"std.sqrt\",[[1,[1,\"a\",\"*\",\"a\"],\"+\",[1,\"b\",\"*\",\"b\"]]]]],[13,\"h\",[6,\"std.atan2\",[\"b\",\"a\"]]],[10,[6,\"d.vec3f\",[\"L\",\"C\",\"h\"]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.atan2\":()=>bt,\"d.vec3f\":()=>v}})&&e.f)({})),Sc=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.x,r=t.y,o=t.z;return v(s,__tsover_mul(r,J(o)),__tsover_mul(r,O(o)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lch\"}],body:[0,[[13,\"L\",[7,\"lch\",\"x\"]],[13,\"C\",[7,\"lch\",\"y\"]],[13,\"h\",[7,\"lch\",\"z\"]],[10,[6,\"d.vec3f\",[\"L\",[1,\"C\",\"*\",[6,\"std.cos\",[\"h\"]]],[1,\"C\",\"*\",[6,\"std.sin\",[\"h\"]]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),zs=y.fn([v,v,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return t.mul(r).add(s.mul(o)).div(n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"wA\"},{type:\"i\",name:\"wB\"},{type:\"i\",name:\"sw\"}],body:[0,[[10,[6,[7,[6,[7,[6,[7,\"a\",\"mul\"],[\"wA\"]],\"add\"],[[6,[7,\"b\",\"mul\"],[\"wB\"]]]],\"div\"],[\"sw\"]]]]]},externals:{}})&&e.f)({})),lr=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(zs(t.xyz,s.xyz,o,n,d),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"rgb\",[6,\"awMix\",[[7,\"colorA\",\"xyz\"],[7,\"colorB\",\"xyz\"],\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b}})&&e.f)({})),KD=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(Ms(Ro(Ii(zs(Ad(rn(dr(t.xyz))),Ad(rn(dr(s.xyz))),o,n,d)))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"oklchA\",[6,\"oklabToOklch\",[[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"colorA\",\"xyz\"]]]]]]]],[13,\"oklchB\",[6,\"oklabToOklch\",[[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"colorB\",\"xyz\"]]]]]]]],[13,\"mixed\",[6,\"awMix\",[\"oklchA\",\"oklchB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[[6,\"oklchToOklab\",[\"mixed\"]]]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,oklabToOklch:()=>Ad,rgbToOklab:()=>rn,p3ToSRGB:()=>dr,awMix:()=>zs,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro,oklchToOklab:()=>Ii,\"d.vec4f\":()=>b}})&&e.f)({})),ZD=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(Ms(Ro(zs(rn(dr(t.xyz)),rn(dr(s.xyz)),o,n,d))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"oklabA\",[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"colorA\",\"xyz\"]]]]]],[13,\"oklabB\",[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"colorB\",\"xyz\"]]]]]],[13,\"mixed\",[6,\"awMix\",[\"oklabA\",\"oklabB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[\"mixed\"]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,rgbToOklab:()=>rn,p3ToSRGB:()=>dr,awMix:()=>zs,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro,\"d.vec4f\":()=>b}})&&e.f)({})),QD=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(Ms(Yi(zs(lc(dr(t.xyz)),lc(dr(s.xyz)),o,n,d))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"hslA\",[6,\"rgbToHsl\",[[6,\"p3ToSRGB\",[[7,\"colorA\",\"xyz\"]]]]]],[13,\"hslB\",[6,\"rgbToHsl\",[[6,\"p3ToSRGB\",[[7,\"colorB\",\"xyz\"]]]]]],[13,\"mixed\",[6,\"awMix\",[\"hslA\",\"hslB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"hslToRgb\",[\"mixed\"]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,rgbToHsl:()=>lc,p3ToSRGB:()=>dr,awMix:()=>zs,sRGBToP3:()=>Ms,hslToRgb:()=>Yi,\"d.vec4f\":()=>b}})&&e.f)({})),JD=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(Ms(wc(zs(rf(dr(t.xyz)),rf(dr(s.xyz)),o,n,d))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"hsvA\",[6,\"rgbToHsv\",[[6,\"p3ToSRGB\",[[7,\"colorA\",\"xyz\"]]]]]],[13,\"hsvB\",[6,\"rgbToHsv\",[[6,\"p3ToSRGB\",[[7,\"colorB\",\"xyz\"]]]]]],[13,\"mixed\",[6,\"awMix\",[\"hsvA\",\"hsvB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"hsvToRgb\",[\"mixed\"]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,rgbToHsv:()=>rf,p3ToSRGB:()=>dr,awMix:()=>zs,sRGBToP3:()=>Ms,hsvToRgb:()=>wc,\"d.vec4f\":()=>b}})&&e.f)({})),eL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_mul(s.w,r),i=__tsover_add(o,n),d=w(i,.001);return b(Ms(Tc(Sc(zs(nf(of(dr(t.xyz))),nf(of(dr(s.xyz))),o,n,d)))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"lchA\",[6,\"labToLch\",[[6,\"rgbToLab\",[[6,\"p3ToSRGB\",[[7,\"colorA\",\"xyz\"]]]]]]]],[13,\"lchB\",[6,\"labToLch\",[[6,\"rgbToLab\",[[6,\"p3ToSRGB\",[[7,\"colorB\",\"xyz\"]]]]]]]],[13,\"mixed\",[6,\"awMix\",[\"lchA\",\"lchB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"labToRgb\",[[6,\"lchToLab\",[\"mixed\"]]]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,labToLch:()=>nf,rgbToLab:()=>of,p3ToSRGB:()=>dr,awMix:()=>zs,sRGBToP3:()=>Ms,labToRgb:()=>Tc,lchToLab:()=>Sc,\"d.vec4f\":()=>b}})&&e.f)({})),Xo={0:lr,1:KD,2:ZD,3:QD,4:JD,5:eL};var Vo=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({conv:v,alpha:a}),\"MixStep\"),ti=y.fn([v,a,v,a,a],Vo)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(s,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return Vo({conv:zs(t,r,i,d,w(l,.001)),alpha:l})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[10,[6,\"MixStep\",[[104,{conv:[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]],alpha:\"totalWeight\"}]]]]]]},externals:{\"std.max\":()=>w,MixStep:()=>Vo,awMix:()=>zs}})&&e.f)({})),Pm=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(zs(t,s,i,d,w(l,.001)),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[\"mixed\",\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b}})&&e.f)({})),tL=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(Ms(Ro(Ii(zs(t,s,i,d,w(l,.001))))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[[6,\"oklchToOklab\",[\"mixed\"]]]]]],\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro,oklchToOklab:()=>Ii}})&&e.f)({})),sL=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(Ms(Ro(zs(t,s,i,d,w(l,.001)))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[\"mixed\"]]]],\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro}})&&e.f)({})),rL=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(Ms(Yi(zs(t,s,i,d,w(l,.001)))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[[6,\"sRGBToP3\",[[6,\"hslToRgb\",[\"mixed\"]]]],\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b,sRGBToP3:()=>Ms,hslToRgb:()=>Yi}})&&e.f)({})),oL=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(Ms(wc(zs(t,s,i,d,w(l,.001)))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[[6,\"sRGBToP3\",[[6,\"hsvToRgb\",[\"mixed\"]]]],\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b,sRGBToP3:()=>Ms,hsvToRgb:()=>wc}})&&e.f)({})),nL=y.fn([v,v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,__tsover_sub(1,n)),d=__tsover_mul(o,n),l=__tsover_add(i,d);return b(Ms(Tc(Sc(zs(t,s,i,d,w(l,.001))))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"convA\"},{type:\"i\",name:\"convB\"},{type:\"i\",name:\"alphaA\"},{type:\"i\",name:\"alphaB\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"weightA\",[1,\"alphaA\",\"*\",[1,[5,\"1\"],\"-\",\"t\"]]],[13,\"weightB\",[1,\"alphaB\",\"*\",\"t\"]],[13,\"totalWeight\",[1,\"weightA\",\"+\",\"weightB\"]],[13,\"safeWeight\",[6,\"std.max\",[\"totalWeight\",[5,\"0.001\"]]]],[13,\"mixed\",[6,\"awMix\",[\"convA\",\"convB\",\"weightA\",\"weightB\",\"safeWeight\"]]],[10,[6,\"d.vec4f\",[[6,\"sRGBToP3\",[[6,\"labToRgb\",[[6,\"lchToLab\",[\"mixed\"]]]]]],\"totalWeight\"]]]]]},externals:{\"std.max\":()=>w,awMix:()=>zs,\"d.vec4f\":()=>b,sRGBToP3:()=>Ms,labToRgb:()=>Tc,lchToLab:()=>Sc}})&&e.f)({})),hy={0:Pm,1:tL,2:sL,3:rL,4:oL,5:nL};var yy=1e-4,af=6/29,aL=(e,t,s)=>[e*1.2249401-t*.2249404,e*-.0420569+t*1.0420571,e*-.0196376-t*.0786361+s*1.0982735],H3=(e,t,s)=>{let r=Math.cbrt(e*.4122214708+t*.5363325363+s*.0514459929),o=Math.cbrt(e*.2119034982+t*.6806995451+s*.1073969566),n=Math.cbrt(e*.0883024619+t*.2817188376+s*.6299787005);return[r*.2104542553+o*.793617785-n*.0040720468,r*1.9779984951-o*2.428592205+n*.4505937099,r*.0259040371+o*.7827717662-n*.808675766]},tT=(e,t,s,r,o)=>{let n=Math.max(o,yy);return(r===e?(t-s)/n:r===t?2+(s-e)/n:4+(e-t)/n)*(Math.PI/3)},iL=(e,t,s)=>{let r=Math.max(e,t,s),o=Math.min(e,t,s),n=r-o,i=(r+o)*.5,d=n/Math.max(1-Math.abs(2*i-1),yy);return[tT(e,t,s,r,n),d,i]},dL=(e,t,s)=>{let r=Math.max(e,t,s),o=r-Math.min(e,t,s),n=o/Math.max(r,yy);return[tT(e,t,s,r,o),n,r]},lL=(e,t,s)=>{let r=(e*.4124564+t*.3575761+s*.1804375)/.95047,o=e*.2126729+t*.7151522+s*.072175,n=(e*.0193339+t*.119192+s*.9503041)/1.08883,i=af**3,d=p=>p>i?Math.cbrt(p):p/(3*af*af)+4/29,l=d(r),c=d(o),_=d(n);return[c*116-16,(l-c)*500,(c-_)*200]},Mm=(e,t,s,r)=>{let[o,n,i]=aL(e,t,s);switch(r){case 1:{let[d,l,c]=H3(o,n,i);return[d,Math.sqrt(l*l+c*c),Math.atan2(c,l)]}case 2:return H3(o,n,i);case 3:return iL(o,n,i);case 4:return dL(o,n,i);case 5:{let[d,l,c]=lL(o,n,i);return[d,Math.sqrt(l*l+c*c),Math.atan2(c,l)]}default:return[e,t,s]}},cL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Z(v(t.x,t.y,t.z),v(s.x,s.y,s.z),v(r));return b(o.x,o.y,o.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"target\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]],[13,\"targetRgb\",[6,\"d.vec3f\",[[7,\"target\",\"x\"],[7,\"target\",\"y\"],[7,\"target\",\"z\"]]]],[13,\"mixed\",[6,\"std.mix\",[\"rgb\",\"targetRgb\",[6,\"d.vec3f\",[\"amount\"]]]]],[10,[6,\"d.vec4f\",[[7,\"mixed\",\"x\"],[7,\"mixed\",\"y\"],[7,\"mixed\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({}));var on=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(__tsover_add(__tsover_mul(t.x,.2126),__tsover_mul(t.y,.7152)),__tsover_mul(t.z,.0722))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[1,[1,[1,[7,\"rgb\",\"x\"],\"*\",[5,\"0.2126\"]],\"+\",[1,[7,\"rgb\",\"y\"],\"*\",[5,\"0.7152\"]]],\"+\",[1,[7,\"rgb\",\"z\"],\"*\",[5,\"0.0722\"]]]]]]},externals:{}})&&e.f)({})),Xn=y.fn([v,v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return F(v(0),v(1),Qf(s,t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"edge\"},{type:\"i\",name:\"x\"}],body:[0,[[10,[6,\"std.select\",[[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]],[6,\"std.ge\",[\"x\",\"edge\"]]]]]]]},externals:{\"std.select\":()=>F,\"d.vec3f\":()=>v,\"std.ge\":()=>Qf}})&&e.f)({})),ss=y.fn([b,v,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(t.w,__tsover_sub(1,r)),n=__tsover_add(r,o);return b(s.mul(r).add(t.xyz.mul(o)),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"blended\"},{type:\"i\",name:\"overlayAlpha\"}],body:[0,[[13,\"baseWeight\",[1,[7,\"base\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"overlayAlpha\"]]],[13,\"finalAlpha\",[1,\"overlayAlpha\",\"+\",\"baseWeight\"]],[13,\"rgb\",[6,[7,[6,[7,\"blended\",\"mul\"],[\"overlayAlpha\"]],\"add\"],[[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[\"baseWeight\"]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"finalAlpha\"]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),Hn=y.fn([b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.w;return b(F(v(0,0,0),t.xyz.div(s),s>.001),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"alpha\",[7,\"color\",\"w\"]],[13,\"straightRGB\",[6,\"std.select\",[[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],[6,[7,[7,\"color\",\"xyz\"],\"div\"],[\"alpha\"]],[1,\"alpha\",\">\",[5,\"0.001\"]]]]],[10,[6,\"d.vec4f\",[\"straightRGB\",\"alpha\"]]]]]},externals:{\"std.select\":()=>F,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),uL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,s.xyz,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[10,[6,\"overComposite\",[\"base\",[7,\"overlay\",\"xyz\"],\"overlayAlpha\"]]]]]},externals:{overComposite:()=>ss}})&&e.f)({})),_L=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=__tsover_mul(t.w,__tsover_sub(1,o)),i=__tsover_add(o,n),d=Ad(rn(dr(t.xyz)));return b(Ms(Ro(Ii(Ad(rn(dr(s.xyz))).mul(o).add(d.mul(n))))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseWeight\",[1,[7,\"base\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"overlayAlpha\"]]],[13,\"finalAlpha\",[1,\"overlayAlpha\",\"+\",\"baseWeight\"]],[13,\"baseOklch\",[6,\"oklabToOklch\",[[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"base\",\"xyz\"]]]]]]]],[13,\"overlayOklch\",[6,\"oklabToOklch\",[[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"overlay\",\"xyz\"]]]]]]]],[13,\"blendedOklch\",[6,[7,[6,[7,\"overlayOklch\",\"mul\"],[\"overlayAlpha\"]],\"add\"],[[6,[7,\"baseOklch\",\"mul\"],[\"baseWeight\"]]]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[[6,\"oklchToOklab\",[\"blendedOklch\"]]]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"finalAlpha\"]]]]]},externals:{oklabToOklch:()=>Ad,rgbToOklab:()=>rn,p3ToSRGB:()=>dr,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro,oklchToOklab:()=>Ii,\"d.vec4f\":()=>b}})&&e.f)({})),pL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=__tsover_mul(t.w,__tsover_sub(1,o)),i=__tsover_add(o,n),d=rn(dr(t.xyz));return b(Ms(Ro(rn(dr(s.xyz)).mul(o).add(d.mul(n)))),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseWeight\",[1,[7,\"base\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"overlayAlpha\"]]],[13,\"finalAlpha\",[1,\"overlayAlpha\",\"+\",\"baseWeight\"]],[13,\"baseOklab\",[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"base\",\"xyz\"]]]]]],[13,\"overlayOklab\",[6,\"rgbToOklab\",[[6,\"p3ToSRGB\",[[7,\"overlay\",\"xyz\"]]]]]],[13,\"blendedOklab\",[6,[7,[6,[7,\"overlayOklab\",\"mul\"],[\"overlayAlpha\"]],\"add\"],[[6,[7,\"baseOklab\",\"mul\"],[\"baseWeight\"]]]]],[13,\"rgb\",[6,\"sRGBToP3\",[[6,\"oklabToRgb\",[\"blendedOklab\"]]]]],[10,[6,\"d.vec4f\",[\"rgb\",\"finalAlpha\"]]]]]},externals:{rgbToOklab:()=>rn,p3ToSRGB:()=>dr,sRGBToP3:()=>Ms,oklabToRgb:()=>Ro,\"d.vec4f\":()=>b}})&&e.f)({})),mL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,t.xyz.mul(s.xyz),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"overlay\",\"xyz\"]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{overComposite:()=>ss}})&&e.f)({})),fL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,It(1,It(1,t.xyz).mul(It(1,s.xyz))),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,\"std.sub\",[[5,\"1\"],[6,[7,[6,\"std.sub\",[[5,\"1\"],[7,\"base\",\"xyz\"]]],\"mul\"],[[6,\"std.sub\",[[5,\"1\"],[7,\"overlay\",\"xyz\"]]]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.sub\":()=>It,overComposite:()=>ss}})&&e.f)({})),vL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,t.xyz.add(s.xyz),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,[7,[7,\"base\",\"xyz\"],\"add\"],[[7,\"overlay\",\"xyz\"]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{overComposite:()=>ss}})&&e.f)({})),hL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,Z(t.xyz.mul(s.xyz).mul(2),It(1,It(1,t.xyz).mul(It(1,s.xyz)).mul(2)),Xn(v(.5),t.xyz)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"mult\",[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"overlay\",\"xyz\"]]],\"mul\"],[[5,\"2\"]]]],[13,\"scr\",[6,\"std.sub\",[[5,\"1\"],[6,[7,[6,[7,[6,\"std.sub\",[[5,\"1\"],[7,\"base\",\"xyz\"]]],\"mul\"],[[6,\"std.sub\",[[5,\"1\"],[7,\"overlay\",\"xyz\"]]]]],\"mul\"],[[5,\"2\"]]]]]],[13,\"blended\",[6,\"std.mix\",[\"mult\",\"scr\",[6,\"step3\",[[6,\"d.vec3f\",[[5,\"0.5\"]]],[7,\"base\",\"xyz\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.sub\":()=>It,\"std.mix\":()=>Z,step3:()=>Xn,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),yL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,W(t.xyz.sub(s.xyz)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,\"std.abs\",[[6,[7,[7,\"base\",\"xyz\"],\"sub\"],[[7,\"overlay\",\"xyz\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.abs\":()=>W,overComposite:()=>ss}})&&e.f)({})),gL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=It(1,s.xyz);return ss(t,Z(t.xyz,ue(t.xyz.div(n),v(1)),Xn(v(.001),n)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"oneMinusOverlay\",[6,\"std.sub\",[[5,\"1\"],[7,\"overlay\",\"xyz\"]]]],[13,\"dodged\",[6,\"std.mix\",[[7,\"base\",\"xyz\"],[6,\"std.min\",[[6,[7,[7,\"base\",\"xyz\"],\"div\"],[\"oneMinusOverlay\"]],[6,\"d.vec3f\",[[5,\"1\"]]]]],[6,\"step3\",[[6,\"d.vec3f\",[[5,\"0.001\"]]],\"oneMinusOverlay\"]]]]],[10,[6,\"overComposite\",[\"base\",\"dodged\",\"overlayAlpha\"]]]]]},externals:{\"std.sub\":()=>It,\"std.mix\":()=>Z,\"std.min\":()=>ue,\"d.vec3f\":()=>v,step3:()=>Xn,overComposite:()=>ss}})&&e.f)({})),xL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,t.xyz.add(s.xyz).sub(t.xyz.mul(s.xyz).mul(2)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"add\"],[[7,\"overlay\",\"xyz\"]]],\"sub\"],[[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"overlay\",\"xyz\"]]],\"mul\"],[[5,\"2\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{overComposite:()=>ss}})&&e.f)({})),bL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=on(t.xyz),i=on(s.xyz),d=__tsover_sub(n,i);return ss(t,s.xyz.add(d),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseLum\",[6,\"luminance\",[[7,\"base\",\"xyz\"]]]],[13,\"overlayLum\",[6,\"luminance\",[[7,\"overlay\",\"xyz\"]]]],[13,\"lumDiff\",[1,\"baseLum\",\"-\",\"overlayLum\"]],[13,\"blended\",[6,[7,[7,\"overlay\",\"xyz\"],\"add\"],[\"lumDiff\"]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{luminance:()=>on,overComposite:()=>ss}})&&e.f)({})),wL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=on(t.xyz),i=on(s.xyz),d=__tsover_div(i,__tsover_add(n,1e-4));return ss(t,t.xyz.mul(d),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseLum\",[6,\"luminance\",[[7,\"base\",\"xyz\"]]]],[13,\"overlayLum\",[6,\"luminance\",[[7,\"overlay\",\"xyz\"]]]],[13,\"lumRatio\",[1,\"overlayLum\",\"/\",[1,\"baseLum\",\"+\",[5,\"0.0001\"]]]],[13,\"blended\",[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[\"lumRatio\"]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{luminance:()=>on,overComposite:()=>ss}})&&e.f)({})),TL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,ue(t.xyz,s.xyz),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,\"std.min\",[[7,\"base\",\"xyz\"],[7,\"overlay\",\"xyz\"]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.min\":()=>ue,overComposite:()=>ss}})&&e.f)({})),SL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,w(t.xyz,s.xyz),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,\"std.max\",[[7,\"base\",\"xyz\"],[7,\"overlay\",\"xyz\"]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.max\":()=>w,overComposite:()=>ss}})&&e.f)({})),AL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=w(It(1,It(1,t.xyz).div(s.xyz.add(1e-4))),v(0));return ss(t,Z(v(0),n,Xn(v(1e-4),s.xyz)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"burned\",[6,\"std.max\",[[6,\"std.sub\",[[5,\"1\"],[6,[7,[6,\"std.sub\",[[5,\"1\"],[7,\"base\",\"xyz\"]]],\"div\"],[[6,[7,[7,\"overlay\",\"xyz\"],\"add\"],[[5,\"0.0001\"]]]]]]],[6,\"d.vec3f\",[[5,\"0\"]]]]]],[13,\"blended\",[6,\"std.mix\",[[6,\"d.vec3f\",[[5,\"0\"]]],\"burned\",[6,\"step3\",[[6,\"d.vec3f\",[[5,\"0.0001\"]]],[7,\"overlay\",\"xyz\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.max\":()=>w,\"std.sub\":()=>It,\"d.vec3f\":()=>v,\"std.mix\":()=>Z,step3:()=>Xn,overComposite:()=>ss}})&&e.f)({})),EL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,w(t.xyz.add(s.xyz).add(-1),v(0)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"blended\",[6,\"std.max\",[[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"add\"],[[7,\"overlay\",\"xyz\"]]],\"add\"],[[4,\"-\",[5,\"1\"]]]],[6,\"d.vec3f\",[[5,\"0\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.max\":()=>w,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),PL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=t.xyz.mul(s.xyz).mul(2),i=t.xyz.mul(t.xyz),d=n.add(i.mul(It(1,s.xyz.mul(2)))),l=$e(t.xyz);return ss(t,Z(d,t.xyz.mul(It(1,s.xyz)).mul(2).add(l.mul(s.xyz.mul(2).sub(1))),Xn(v(.5),s.xyz)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"mult\",[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"overlay\",\"xyz\"]]],\"mul\"],[[5,\"2\"]]]],[13,\"baseSquared\",[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"base\",\"xyz\"]]]],[13,\"softDark\",[6,[7,\"mult\",\"add\"],[[6,[7,\"baseSquared\",\"mul\"],[[6,\"std.sub\",[[5,\"1\"],[6,[7,[7,\"overlay\",\"xyz\"],\"mul\"],[[5,\"2\"]]]]]]]]]],[13,\"baseSqrt\",[6,\"std.sqrt\",[[7,\"base\",\"xyz\"]]]],[13,\"softLightVal\",[6,[7,[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[6,\"std.sub\",[[5,\"1\"],[7,\"overlay\",\"xyz\"]]]]],\"mul\"],[[5,\"2\"]]],\"add\"],[[6,[7,\"baseSqrt\",\"mul\"],[[6,[7,[6,[7,[7,\"overlay\",\"xyz\"],\"mul\"],[[5,\"2\"]]],\"sub\"],[[5,\"1\"]]]]]]]],[13,\"blended\",[6,\"std.mix\",[\"softDark\",\"softLightVal\",[6,\"step3\",[[6,\"d.vec3f\",[[5,\"0.5\"]]],[7,\"overlay\",\"xyz\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.sub\":()=>It,\"std.sqrt\":()=>$e,\"std.mix\":()=>Z,step3:()=>Xn,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),ML=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r);return ss(t,Z(t.xyz.mul(s.xyz).mul(2),It(1,It(1,t.xyz).mul(It(1,s.xyz)).mul(2)),Xn(v(.5),s.xyz)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"mult\",[6,[7,[6,[7,[7,\"base\",\"xyz\"],\"mul\"],[[7,\"overlay\",\"xyz\"]]],\"mul\"],[[5,\"2\"]]]],[13,\"scr\",[6,\"std.sub\",[[5,\"1\"],[6,[7,[6,[7,[6,\"std.sub\",[[5,\"1\"],[7,\"base\",\"xyz\"]]],\"mul\"],[[6,\"std.sub\",[[5,\"1\"],[7,\"overlay\",\"xyz\"]]]]],\"mul\"],[[5,\"2\"]]]]]],[13,\"blended\",[6,\"std.mix\",[\"mult\",\"scr\",[6,\"step3\",[[6,\"d.vec3f\",[[5,\"0.5\"]]],[7,\"overlay\",\"xyz\"]]]]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{\"std.sub\":()=>It,\"std.mix\":()=>Z,step3:()=>Xn,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),kL=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=on(t.xyz),i=on(s.xyz),d=t.xyz.sub(n),l=s.xyz.sub(i),c=te(d),_=te(l);return ss(t,F(v(0),l.div(_),_>1e-4).mul(c).add(n),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseLum\",[6,\"luminance\",[[7,\"base\",\"xyz\"]]]],[13,\"overlayLum\",[6,\"luminance\",[[7,\"overlay\",\"xyz\"]]]],[13,\"baseChromaticity\",[6,[7,[7,\"base\",\"xyz\"],\"sub\"],[\"baseLum\"]]],[13,\"overlayChromaticity\",[6,[7,[7,\"overlay\",\"xyz\"],\"sub\"],[\"overlayLum\"]]],[13,\"baseChromaLength\",[6,\"std.length\",[\"baseChromaticity\"]]],[13,\"overlayChromaLength\",[6,\"std.length\",[\"overlayChromaticity\"]]],[13,\"overlayChromaDir\",[6,\"std.select\",[[6,\"d.vec3f\",[[5,\"0\"]]],[6,[7,\"overlayChromaticity\",\"div\"],[\"overlayChromaLength\"]],[1,\"overlayChromaLength\",\">\",[5,\"0.0001\"]]]]],[13,\"blended\",[6,[7,[6,[7,\"overlayChromaDir\",\"mul\"],[\"baseChromaLength\"]],\"add\"],[\"baseLum\"]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{luminance:()=>on,\"std.length\":()=>te,\"std.select\":()=>F,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),$L=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s.w,r),n=on(t.xyz),i=on(s.xyz),d=t.xyz.sub(n),l=s.xyz.sub(i),c=te(d),_=F(v(0),d.div(c),c>1e-4),p=te(l);return ss(t,_.mul(p).add(n),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"overlay\"},{type:\"i\",name:\"opacity\"}],body:[0,[[13,\"overlayAlpha\",[1,[7,\"overlay\",\"w\"],\"*\",\"opacity\"]],[13,\"baseLum\",[6,\"luminance\",[[7,\"base\",\"xyz\"]]]],[13,\"overlayLum\",[6,\"luminance\",[[7,\"overlay\",\"xyz\"]]]],[13,\"baseChromaticity\",[6,[7,[7,\"base\",\"xyz\"],\"sub\"],[\"baseLum\"]]],[13,\"overlayChromaticity\",[6,[7,[7,\"overlay\",\"xyz\"],\"sub\"],[\"overlayLum\"]]],[13,\"baseChromaLength\",[6,\"std.length\",[\"baseChromaticity\"]]],[13,\"baseChromaDir\",[6,\"std.select\",[[6,\"d.vec3f\",[[5,\"0\"]]],[6,[7,\"baseChromaticity\",\"div\"],[\"baseChromaLength\"]],[1,\"baseChromaLength\",\">\",[5,\"0.0001\"]]]]],[13,\"overlayChromaLength\",[6,\"std.length\",[\"overlayChromaticity\"]]],[13,\"blended\",[6,[7,[6,[7,\"baseChromaDir\",\"mul\"],[\"overlayChromaLength\"]],\"add\"],[\"baseLum\"]]],[10,[6,\"overComposite\",[\"base\",\"blended\",\"overlayAlpha\"]]]]]},externals:{luminance:()=>on,\"std.length\":()=>te,\"std.select\":()=>F,\"d.vec3f\":()=>v,overComposite:()=>ss}})&&e.f)({})),j3={normal:uL,\"normal-oklch\":_L,\"normal-oklab\":pL,multiply:mL,screen:fL,linearDodge:vL,overlay:hL,difference:yL,colorDodge:gL,exclusion:xL,color:bL,luminosity:wL,darken:TL,lighten:SL,colorBurn:AL,linearBurn:EL,softLight:PL,hardLight:ML,hue:kL,saturation:$L};var T_=v(.2126,.7152,.0722),K3={alpha:y.fn([b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t.xyz,__tsover_mul(t.w,s.w))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"target\"},{type:\"i\",name:\"mask\"}],body:[0,[[10,[6,\"d.vec4f\",[[7,\"target\",\"xyz\"],[1,[7,\"target\",\"w\"],\"*\",[7,\"mask\",\"w\"]]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),alphaInverted:y.fn([b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t.xyz,__tsover_mul(t.w,__tsover_sub(1,s.w)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"target\"},{type:\"i\",name:\"mask\"}],body:[0,[[10,[6,\"d.vec4f\",[[7,\"target\",\"xyz\"],[1,[7,\"target\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",[7,\"mask\",\"w\"]]]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),luminance:y.fn([b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=le(s.xyz,T_);return b(t.xyz,__tsover_mul(t.w,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"target\"},{type:\"i\",name:\"mask\"}],body:[0,[[13,\"lum\",[6,\"std.dot\",[[7,\"mask\",\"xyz\"],\"LUMINANCE_WEIGHTS\"]]],[10,[6,\"d.vec4f\",[[7,\"target\",\"xyz\"],[1,[7,\"target\",\"w\"],\"*\",\"lum\"]]]]]]},externals:{\"std.dot\":()=>le,LUMINANCE_WEIGHTS:()=>T_,\"d.vec4f\":()=>b}})&&e.f)({})),luminanceInverted:y.fn([b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=le(s.xyz,T_);return b(t.xyz,__tsover_mul(t.w,__tsover_sub(1,r)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"target\"},{type:\"i\",name:\"mask\"}],body:[0,[[13,\"lum\",[6,\"std.dot\",[[7,\"mask\",\"xyz\"],\"LUMINANCE_WEIGHTS\"]]],[10,[6,\"d.vec4f\",[[7,\"target\",\"xyz\"],[1,[7,\"target\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"lum\"]]]]]]]},externals:{\"std.dot\":()=>le,LUMINANCE_WEIGHTS:()=>T_,\"d.vec4f\":()=>b}})&&e.f)({}))},CL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return v(t.x,t.y,t.z)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[10,[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),RL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return z(t.div(t.add(1)),v(0),v(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[10,[6,\"std.clamp\",[[6,[7,\"color\",\"div\"],[[6,[7,\"color\",\"add\"],[[5,\"1\"]]]]],[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec3f\":()=>v}})&&e.f)({})),UL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=w(t.sub(.004),v(0)),r=s.mul(s.mul(6.2).add(.5)),o=s.mul(s.mul(6.2).add(1.7)).add(.06);return Ye(r.div(o),v(2.2))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"c\",[6,\"std.max\",[[6,[7,\"color\",\"sub\"],[[5,\"0.004\"]]],[6,\"d.vec3f\",[[5,\"0\"]]]]]],[13,\"a\",[6,[7,\"c\",\"mul\"],[[6,[7,[6,[7,\"c\",\"mul\"],[[5,\"6.2\"]]],\"add\"],[[5,\"0.5\"]]]]]],[13,\"b\",[6,[7,[6,[7,\"c\",\"mul\"],[[6,[7,[6,[7,\"c\",\"mul\"],[[5,\"6.2\"]]],\"add\"],[[5,\"1.7\"]]]]],\"add\"],[[5,\"0.06\"]]]],[10,[6,\"std.pow\",[[6,[7,\"a\",\"div\"],[\"b\"]],[6,\"d.vec3f\",[[5,\"2.2\"]]]]]]]]},externals:{\"std.max\":()=>w,\"d.vec3f\":()=>v,\"std.pow\":()=>Ye}})&&e.f)({})),Z3=rl(.59719,.076,.0284,.35458,.90834,.13383,.04823,.01566,.83777),Q3=rl(1.60475,-.10208,-.00327,-.53108,1.10813,-.07276,-.07367,-.00605,1.07602),J3=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.mul(t.add(.0245786)).sub(90537e-9),r=t.mul(t.add(.432951).mul(.983729)).add(.238081);return s.div(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[13,\"a\",[6,[7,[6,[7,\"v\",\"mul\"],[[6,[7,\"v\",\"add\"],[[5,\"0.0245786\"]]]]],\"sub\"],[[5,\"0.000090537\"]]]],[13,\"b\",[6,[7,[6,[7,\"v\",\"mul\"],[[6,[7,[6,[7,\"v\",\"add\"],[[5,\"0.432951\"]]],\"mul\"],[[5,\"0.983729\"]]]]],\"add\"],[[5,\"0.238081\"]]]],[10,[6,[7,\"a\",\"div\"],[\"b\"]]]]]},externals:{}})&&e.f)({})),zL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.div(.6);return s=Z3.mul(s),s=J3(s),s=Q3.mul(s),z(s,v(0),v(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[12,\"c\",[6,[7,\"color\",\"div\"],[[5,\"0.6\"]]]],[2,\"c\",\"=\",[6,\"ACES_INPUT.mul\",[\"c\"]]],[2,\"c\",\"=\",[6,\"rrtAndODTFit\",[\"c\"]]],[2,\"c\",\"=\",[6,\"ACES_OUTPUT.mul\",[\"c\"]]],[10,[6,\"std.clamp\",[\"c\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]]]]},externals:{\"ACES_INPUT.mul\":()=>Z3.mul,rrtAndODTFit:()=>J3,\"ACES_OUTPUT.mul\":()=>Q3.mul,\"std.clamp\":()=>z,\"d.vec3f\":()=>v}})&&e.f)({})),e2=rl(.6274,.0691,.0164,.3293,.9195,.088,.0433,.0113,.8956),t2=rl(1.6605,-.1246,-.0182,-.5876,1.1329,-.1006,-.0728,-.0083,1.1187),s2=rl(.856627153315983,.137318972929847,.11189821299995,.0951212405381588,.761241990602591,.0767994186031903,.0482516061458583,.101439036467562,.811302368396859),r2=rl(1.1271005818144368,-.1413297634984383,-.14132976349843826,-.11060664309660323,1.157823702216272,-.11060664309660294,-.016493938717834573,-.016493938717834257,1.2519364065950405),df=-12.47393,o2=4.026069,n2=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.mul(t),r=s.mul(s);return r.mul(s).mul(15.5).sub(r.mul(t).mul(40.14)).add(r.mul(31.96).sub(s.mul(t).mul(6.868)).add(s.mul(.4298).add(t.mul(.1191).sub(.00232))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"}],body:[0,[[13,\"x2\",[6,[7,\"x\",\"mul\"],[\"x\"]]],[13,\"x4\",[6,[7,\"x2\",\"mul\"],[\"x2\"]]],[10,[6,[7,[6,[7,[6,[7,[6,[7,\"x4\",\"mul\"],[\"x2\"]],\"mul\"],[[5,\"15.5\"]]],\"sub\"],[[6,[7,[6,[7,\"x4\",\"mul\"],[\"x\"]],\"mul\"],[[5,\"40.14\"]]]]],\"add\"],[[6,[7,[6,[7,[6,[7,\"x4\",\"mul\"],[[5,\"31.96\"]]],\"sub\"],[[6,[7,[6,[7,\"x2\",\"mul\"],[\"x\"]],\"mul\"],[[5,\"6.868\"]]]]],\"add\"],[[6,[7,[6,[7,\"x2\",\"mul\"],[[5,\"0.4298\"]]],\"add\"],[[6,[7,[6,[7,\"x\",\"mul\"],[[5,\"0.1191\"]]],\"sub\"],[[5,\"0.00232\"]]]]]]]]]]]]},externals:{}})&&e.f)({})),GL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=e2.mul(t);return s=s2.mul(s),s=w(s,v(1e-10)),s=Kf(s),s=s.sub(df).div(__tsover_sub(o2,df)),s=z(s,v(0),v(1)),s=n2(s),s=r2.mul(s),s=Ye(w(s,v(0)),v(2.2)),s=t2.mul(s),z(s,v(0),v(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[12,\"c\",[6,\"LINEAR_SRGB_TO_LINEAR_REC2020.mul\",[\"color\"]]],[2,\"c\",\"=\",[6,\"AGX_INSET.mul\",[\"c\"]]],[2,\"c\",\"=\",[6,\"std.max\",[\"c\",[6,\"d.vec3f\",[[5,\"1e-10\"]]]]]],[2,\"c\",\"=\",[6,\"std.log2\",[\"c\"]]],[2,\"c\",\"=\",[6,[7,[6,[7,\"c\",\"sub\"],[\"AGX_MIN_EV\"]],\"div\"],[[1,\"AGX_MAX_EV\",\"-\",\"AGX_MIN_EV\"]]]],[2,\"c\",\"=\",[6,\"std.clamp\",[\"c\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]],[2,\"c\",\"=\",[6,\"agxContrastApprox\",[\"c\"]]],[2,\"c\",\"=\",[6,\"AGX_OUTSET.mul\",[\"c\"]]],[2,\"c\",\"=\",[6,\"std.pow\",[[6,\"std.max\",[\"c\",[6,\"d.vec3f\",[[5,\"0\"]]]]],[6,\"d.vec3f\",[[5,\"2.2\"]]]]]],[2,\"c\",\"=\",[6,\"LINEAR_REC2020_TO_LINEAR_SRGB.mul\",[\"c\"]]],[10,[6,\"std.clamp\",[\"c\",[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]]]]},externals:{\"LINEAR_SRGB_TO_LINEAR_REC2020.mul\":()=>e2.mul,\"AGX_INSET.mul\":()=>s2.mul,\"std.max\":()=>w,\"d.vec3f\":()=>v,\"std.log2\":()=>Kf,AGX_MIN_EV:()=>df,AGX_MAX_EV:()=>o2,\"std.clamp\":()=>z,agxContrastApprox:()=>n2,\"AGX_OUTSET.mul\":()=>r2.mul,\"std.pow\":()=>Ye,\"LINEAR_REC2020_TO_LINEAR_SRGB.mul\":()=>t2.mul}})&&e.f)({})),S_=.76,a2=.15,sT=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ue(t.x,ue(t.y,t.z)),r=F(.04,__tsover_sub(s,__tsover_mul(__tsover_mul(6.25,s),s)),s<.08),o=t.sub(r),n=w(o.x,w(o.y,o.z));if(n<S_)return o;let i=__tsover_sub(1,S_),d=__tsover_sub(1,__tsover_div(__tsover_mul(i,i),__tsover_sub(__tsover_add(n,i),S_)));o=o.mul(__tsover_div(d,n));let l=__tsover_sub(1,__tsover_div(1,__tsover_add(__tsover_mul(a2,__tsover_sub(n,d)),1)));return Z(o,v(d),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"x\",[6,\"std.min\",[[7,\"color\",\"x\"],[6,\"std.min\",[[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]]]],[13,\"offset\",[6,\"std.select\",[[5,\"0.04\"],[1,\"x\",\"-\",[1,[1,[5,\"6.25\"],\"*\",\"x\"],\"*\",\"x\"]],[1,\"x\",\"<\",[5,\"0.08\"]]]]],[12,\"c\",[6,[7,\"color\",\"sub\"],[\"offset\"]]],[13,\"peak\",[6,\"std.max\",[[7,\"c\",\"x\"],[6,\"std.max\",[[7,\"c\",\"y\"],[7,\"c\",\"z\"]]]]]],[11,[1,\"peak\",\"<\",\"NEUTRAL_START_COMPRESSION\"],[0,[[10,\"c\"]]]],[13,\"dd\",[1,[5,\"1\"],\"-\",\"NEUTRAL_START_COMPRESSION\"]],[13,\"newPeak\",[1,[5,\"1\"],\"-\",[1,[1,\"dd\",\"*\",\"dd\"],\"/\",[1,[1,\"peak\",\"+\",\"dd\"],\"-\",\"NEUTRAL_START_COMPRESSION\"]]]],[2,\"c\",\"=\",[6,[7,\"c\",\"mul\"],[[1,\"newPeak\",\"/\",\"peak\"]]]],[13,\"g\",[1,[5,\"1\"],\"-\",[1,[5,\"1\"],\"/\",[1,[1,\"NEUTRAL_DESATURATION\",\"*\",[1,\"peak\",\"-\",\"newPeak\"]],\"+\",[5,\"1\"]]]]],[10,[6,\"std.mix\",[\"c\",[6,\"d.vec3f\",[\"newPeak\"]],\"g\"]]]]]},externals:{\"std.min\":()=>ue,\"std.select\":()=>F,\"std.max\":()=>w,NEUTRAL_START_COMPRESSION:()=>S_,NEUTRAL_DESATURATION:()=>a2,\"std.mix\":()=>Z,\"d.vec3f\":()=>v}})&&e.f)({})),i2={linear:CL,reinhard:RL,cineon:UL,aces:zL,agx:GL,neutral:sT,hable:y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.mul(16),r=s.mul(s.mul(.15).add(.05)).add(.004),o=s.mul(s.mul(.15).add(.5)).add(.06);return r.div(o).sub(__tsover_div(.02,.3))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"x\",[6,[7,\"color\",\"mul\"],[[5,\"16\"]]]],[13,\"num\",[6,[7,[6,[7,\"x\",\"mul\"],[[6,[7,[6,[7,\"x\",\"mul\"],[[5,\"0.15\"]]],\"add\"],[[5,\"0.05\"]]]]],\"add\"],[[5,\"0.004\"]]]],[13,\"den\",[6,[7,[6,[7,\"x\",\"mul\"],[[6,[7,[6,[7,\"x\",\"mul\"],[[5,\"0.15\"]]],\"add\"],[[5,\"0.5\"]]]]],\"add\"],[[5,\"0.06\"]]]],[10,[6,[7,[6,[7,\"num\",\"div\"],[\"den\"]],\"sub\"],[[1,[5,\"0.02\"],\"/\",[5,\"0.3\"]]]]]]]},externals:{}})&&e.f)({})),unreal:y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return t.div(t.add(.155)).mul(1.019)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[10,[6,[7,[6,[7,\"color\",\"div\"],[[6,[7,\"color\",\"add\"],[[5,\"0.155\"]]]]],\"mul\"],[[5,\"1.019\"]]]]]]},externals:{}})&&e.f)({}))},DL=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return F(Ye(t,v(.41666)).mul(1.055).sub(.055),t.mul(12.92),gc(t,v(.0031308)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"a\",[6,[7,[6,[7,[6,\"std.pow\",[\"color\",[6,\"d.vec3f\",[[5,\"0.41666\"]]]]],\"mul\"],[[5,\"1.055\"]]],\"sub\"],[[5,\"0.055\"]]]],[13,\"b\",[6,[7,\"color\",\"mul\"],[[5,\"12.92\"]]]],[13,\"factor\",[6,\"std.le\",[\"color\",[6,\"d.vec3f\",[[5,\"0.0031308\"]]]]]],[10,[6,\"std.select\",[\"a\",\"b\",\"factor\"]]]]]},externals:{\"std.pow\":()=>Ye,\"d.vec3f\":()=>v,\"std.le\":()=>gc,\"std.select\":()=>F}})&&e.f)({})),d2=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return F(Ye(t.add(v(.055)).div(v(1.055)),v(2.4)),t.div(v(12.92)),gc(t,v(.04045)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"hi\",[6,\"std.pow\",[[6,[7,[6,[7,\"color\",\"add\"],[[6,\"d.vec3f\",[[5,\"0.055\"]]]]],\"div\"],[[6,\"d.vec3f\",[[5,\"1.055\"]]]]],[6,\"d.vec3f\",[[5,\"2.4\"]]]]]],[13,\"lo\",[6,[7,\"color\",\"div\"],[[6,\"d.vec3f\",[[5,\"12.92\"]]]]]],[13,\"isLow\",[6,\"std.le\",[\"color\",[6,\"d.vec3f\",[[5,\"0.04045\"]]]]]],[10,[6,\"std.select\",[\"hi\",\"lo\",\"isLow\"]]]]]},externals:{\"std.pow\":()=>Ye,\"d.vec3f\":()=>v,\"std.le\":()=>gc,\"std.select\":()=>F}})&&e.f)({})),da=e=>e?e.offsetX!==0||e.offsetY!==0||e.rotation!==0||e.scale!==1||e.anchorX!==.5||e.anchorY!==.5:!1,LL=y.fn([u,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_div(__tsover_mul(o,Math.PI),180),_=J(c),p=O(c),f=__tsover_div(__tsover_sub(t.x,i),n),h=__tsover_div(__tsover_sub(t.y,d),n),g=__tsover_mul(f,l),x=h,T=__tsover_sub(__tsover_mul(g,_),__tsover_mul(x,p)),S=__tsover_add(__tsover_mul(g,p),__tsover_mul(x,_));return u(__tsover_add(__tsover_sub(__tsover_div(T,l),s),i),__tsover_add(__tsover_sub(S,r),d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"offsetX\"},{type:\"i\",name:\"offsetY\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"anchorX\"},{type:\"i\",name:\"anchorY\"},{type:\"i\",name:\"aspectRatio\"}],body:[0,[[13,\"rotationRad\",[1,[1,\"rotation\",\"*\",\"Math.PI\"],\"/\",[5,\"180\"]]],[13,\"cosAngle\",[6,\"std.cos\",[\"rotationRad\"]]],[13,\"sinAngle\",[6,\"std.sin\",[\"rotationRad\"]]],[13,\"centeredX\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"anchorX\"],\"/\",\"scale\"]],[13,\"centeredY\",[1,[1,[7,\"uv\",\"y\"],\"-\",\"anchorY\"],\"/\",\"scale\"]],[13,\"squareX\",[1,\"centeredX\",\"*\",\"aspectRatio\"]],[13,\"squareY\",\"centeredY\"],[13,\"rotatedSquareX\",[1,[1,\"squareX\",\"*\",\"cosAngle\"],\"-\",[1,\"squareY\",\"*\",\"sinAngle\"]]],[13,\"rotatedSquareY\",[1,[1,\"squareX\",\"*\",\"sinAngle\"],\"+\",[1,\"squareY\",\"*\",\"cosAngle\"]]],[13,\"finalX\",[1,[1,[1,\"rotatedSquareX\",\"/\",\"aspectRatio\"],\"-\",\"offsetX\"],\"+\",\"anchorX\"]],[13,\"finalY\",[1,[1,\"rotatedSquareY\",\"-\",\"offsetY\"],\"+\",\"anchorY\"]],[10,[6,\"d.vec2f\",[\"finalX\",\"finalY\"]]]]]},externals:{\"Math.PI\":()=>Math.PI,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({}));y.fn([u,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_add(__tsover_sub(t.x,i),s),_=__tsover_add(__tsover_sub(t.y,d),r),p=__tsover_mul(c,l),f=_,h=-__tsover_div(__tsover_mul(o,Math.PI),180),g=J(h),x=O(h),T=__tsover_sub(__tsover_mul(p,g),__tsover_mul(f,x)),S=__tsover_add(__tsover_mul(p,x),__tsover_mul(f,g)),A=__tsover_mul(__tsover_div(T,l),n),E=__tsover_mul(S,n);return u(__tsover_add(A,i),__tsover_add(E,d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"offsetX\"},{type:\"i\",name:\"offsetY\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"anchorX\"},{type:\"i\",name:\"anchorY\"},{type:\"i\",name:\"aspectRatio\"}],body:[0,[[13,\"centeredX\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"anchorX\"],\"+\",\"offsetX\"]],[13,\"centeredY\",[1,[1,[7,\"uv\",\"y\"],\"-\",\"anchorY\"],\"+\",\"offsetY\"]],[13,\"squareX\",[1,\"centeredX\",\"*\",\"aspectRatio\"]],[13,\"squareY\",\"centeredY\"],[13,\"rotationRad\",[4,\"-\",[1,[1,\"rotation\",\"*\",\"Math.PI\"],\"/\",[5,\"180\"]]]],[13,\"cosAngle\",[6,\"std.cos\",[\"rotationRad\"]]],[13,\"sinAngle\",[6,\"std.sin\",[\"rotationRad\"]]],[13,\"rotatedSquareX\",[1,[1,\"squareX\",\"*\",\"cosAngle\"],\"-\",[1,\"squareY\",\"*\",\"sinAngle\"]]],[13,\"rotatedSquareY\",[1,[1,\"squareX\",\"*\",\"sinAngle\"],\"+\",[1,\"squareY\",\"*\",\"cosAngle\"]]],[13,\"scaledX\",[1,[1,\"rotatedSquareX\",\"/\",\"aspectRatio\"],\"*\",\"scale\"]],[13,\"scaledY\",[1,\"rotatedSquareY\",\"*\",\"scale\"]],[10,[6,\"d.vec2f\",[[1,\"scaledX\",\"+\",\"anchorX\"],[1,\"scaledY\",\"+\",\"anchorY\"]]]]]]},externals:{\"Math.PI\":()=>Math.PI,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({}));var gy=(e,t,s)=>{let r=A=>A.unit===\"px\"?A.value/t:A.value,o=A=>A.unit===\"px\"?A.value/s:A.value,n=r(e.x),i=o(e.y),d=r(e.width),l=o(e.height),c=(A,E,M)=>M===\"end\"?1-A-E:M===\"center\"?.5+A-E/2:A,_=e.origin??\"top-left\",p=_.includes(\"left\")?\"start\":_.includes(\"right\")?\"end\":\"center\",f=_.includes(\"top\")?\"start\":_.includes(\"bottom\")?\"end\":\"center\",h=c(n,d,p),g=c(i,l,f),x=h+d/2,T=g+l/2,S=e.cornerRadius?e.cornerRadius.unit===\"px\"?e.cornerRadius.value/s:e.cornerRadius.value:0;return{centerX:x,centerY:T,halfWidthUV:d/2,halfHeightUV:l/2,cornerRadiusUV:S,rotation:e.rotation}},FL=y.fn([u,a,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c)=>{\"use gpu\";let _=__tsover_sub(t.x,s),p=__tsover_sub(t.y,r),f=-__tsover_div(__tsover_mul(d,Math.PI),180),h=J(f),g=O(f),x=__tsover_mul(_,l),T=p,S=__tsover_sub(__tsover_mul(x,h),__tsover_mul(T,g)),A=__tsover_add(__tsover_mul(x,g),__tsover_mul(T,h)),E=__tsover_mul(o,l),M=n,$=__tsover_sub(E,i),L=__tsover_sub(M,i),B=__tsover_sub(W(S),$),D=__tsover_sub(W(A),L),G=u(w(B,0),w(D,0)),I=__tsover_sub(__tsover_add(te(G),ue(w(B,D),0)),i),X=w(c,1e-7);return F(__tsover_sub(1,ce(-X,X,I)),F(a(0),a(1),I<=0),c<=0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"centerX\"},{type:\"i\",name:\"centerY\"},{type:\"i\",name:\"halfWidth\"},{type:\"i\",name:\"halfHeight\"},{type:\"i\",name:\"cornerRadius\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"aspectRatio\"},{type:\"i\",name:\"aaFeather\"}],body:[0,[[13,\"centeredX\",[1,[7,\"uv\",\"x\"],\"-\",\"centerX\"]],[13,\"centeredY\",[1,[7,\"uv\",\"y\"],\"-\",\"centerY\"]],[13,\"rotRad\",[4,\"-\",[1,[1,\"rotation\",\"*\",\"Math.PI\"],\"/\",[5,\"180\"]]]],[13,\"cosA\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"sqX\",[1,\"centeredX\",\"*\",\"aspectRatio\"]],[13,\"sqY\",\"centeredY\"],[13,\"rotatedX\",[1,[1,\"sqX\",\"*\",\"cosA\"],\"-\",[1,\"sqY\",\"*\",\"sinA\"]]],[13,\"rotatedY\",[1,[1,\"sqX\",\"*\",\"sinA\"],\"+\",[1,\"sqY\",\"*\",\"cosA\"]]],[13,\"halfWidthSq\",[1,\"halfWidth\",\"*\",\"aspectRatio\"]],[13,\"halfHeightSq\",\"halfHeight\"],[13,\"innerHalfW\",[1,\"halfWidthSq\",\"-\",\"cornerRadius\"]],[13,\"innerHalfH\",[1,\"halfHeightSq\",\"-\",\"cornerRadius\"]],[13,\"qx\",[1,[6,\"std.abs\",[\"rotatedX\"]],\"-\",\"innerHalfW\"]],[13,\"qy\",[1,[6,\"std.abs\",[\"rotatedY\"]],\"-\",\"innerHalfH\"]],[13,\"qClamped\",[6,\"d.vec2f\",[[6,\"std.max\",[\"qx\",[5,\"0\"]]],[6,\"std.max\",[\"qy\",[5,\"0\"]]]]]],[13,\"sdf\",[1,[1,[6,\"std.length\",[\"qClamped\"]],\"+\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",\"qy\"]],[5,\"0\"]]]],\"-\",\"cornerRadius\"]],[13,\"feather\",[6,\"std.max\",[\"aaFeather\",[5,\"1e-7\"]]]],[13,\"ramp\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[4,\"-\",\"feather\"],\"feather\",\"sdf\"]]]],[13,\"binary\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"sdf\",\"<=\",[5,\"0\"]]]]],[10,[6,\"std.select\",[\"ramp\",\"binary\",[1,\"aaFeather\",\"<=\",[5,\"0\"]]]]]]]},externals:{\"Math.PI\":()=>Math.PI,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.abs\":()=>W,\"d.vec2f\":()=>u,\"std.max\":()=>w,\"std.length\":()=>te,\"std.min\":()=>ue,\"std.smoothstep\":()=>ce,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})),l2=y.fn([u,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_sub(t.x,s),c=__tsover_sub(t.y,r),_=-__tsover_div(__tsover_mul(i,Math.PI),180),p=J(_),f=O(_),h=__tsover_mul(l,d),g=c,x=__tsover_sub(__tsover_mul(h,p),__tsover_mul(g,f)),T=__tsover_add(__tsover_mul(h,f),__tsover_mul(g,p)),S=w(__tsover_mul(o,d),1e-6),A=w(n,1e-6);return u(__tsover_add(__tsover_div(x,__tsover_mul(S,2)),.5),__tsover_add(__tsover_div(T,__tsover_mul(A,2)),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"centerX\"},{type:\"i\",name:\"centerY\"},{type:\"i\",name:\"halfWidth\"},{type:\"i\",name:\"halfHeight\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"aspectRatio\"}],body:[0,[[13,\"centeredX\",[1,[7,\"uv\",\"x\"],\"-\",\"centerX\"]],[13,\"centeredY\",[1,[7,\"uv\",\"y\"],\"-\",\"centerY\"]],[13,\"rotRad\",[4,\"-\",[1,[1,\"rotation\",\"*\",\"Math.PI\"],\"/\",[5,\"180\"]]]],[13,\"cosA\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"sqX\",[1,\"centeredX\",\"*\",\"aspectRatio\"]],[13,\"sqY\",\"centeredY\"],[13,\"rotatedX\",[1,[1,\"sqX\",\"*\",\"cosA\"],\"-\",[1,\"sqY\",\"*\",\"sinA\"]]],[13,\"rotatedY\",[1,[1,\"sqX\",\"*\",\"sinA\"],\"+\",[1,\"sqY\",\"*\",\"cosA\"]]],[13,\"halfWidthSq\",[6,\"std.max\",[[1,\"halfWidth\",\"*\",\"aspectRatio\"],[5,\"0.000001\"]]]],[13,\"halfHeightSq\",[6,\"std.max\",[\"halfHeight\",[5,\"0.000001\"]]]],[13,\"localX\",[1,[1,\"rotatedX\",\"/\",[1,\"halfWidthSq\",\"*\",[5,\"2\"]]],\"+\",[5,\"0.5\"]]],[13,\"localY\",[1,[1,\"rotatedY\",\"/\",[1,\"halfHeightSq\",\"*\",[5,\"2\"]]],\"+\",[5,\"0.5\"]]],[10,[6,\"d.vec2f\",[\"localX\",\"localY\"]]]]]},externals:{\"Math.PI\":()=>Math.PI,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),rT=(e,t,s)=>{let r=s.rotationDeg*Math.PI/180,o=Math.cos(r),n=Math.sin(r),i=(e-s.centerX)*s.aspectRatio,d=t-s.centerY,l=i*o+d*n,c=i*-n+d*o,_=Math.max(s.halfWidthUV*s.aspectRatio,1e-6),p=Math.max(s.halfHeightUV,1e-6);return{x:l/(2*_)+.5,y:c/(2*p)+.5}},ec={x:{value:0,unit:\"uv\"},y:{value:0,unit:\"uv\"},width:{value:1,unit:\"uv\"},height:{value:1,unit:\"uv\"},origin:\"top-left\",rotation:0};function xy(e){if(!e||typeof e!=\"object\")return;let t=(s,r)=>s&&typeof s==\"object\"?{value:s.value??r.value,unit:s.unit??r.unit}:{...r};return{x:t(e.x,ec.x),y:t(e.y,ec.y),width:t(e.width,ec.width),height:t(e.height,ec.height),origin:e.origin??\"top-left\",rotation:e.rotation??0,...e.cornerRadius?{cornerRadius:e.cornerRadius}:{},...e.lockAspect!==void 0?{lockAspect:e.lockAspect}:{}}}function km(e){if(!e||typeof e!=\"object\")return!1;let t=(s,r)=>!!s&&s.unit===\"uv\"&&s.value===r;return t(e.x,0)&&t(e.y,0)&&t(e.width,1)&&t(e.height,1)&&(e.rotation??0)===0&&(e.cornerRadius?.value??0)===0}var Ts=class W_{_emit;constructor(t){this._emit=t}member(t){return new W_(s=>`${BL(this._emit(s))}.${t}`)}mul(t){return new W_(s=>`(${this._emit(s)} * ${c2(t,s)})`)}add(t){return new W_(s=>`(${this._emit(s)} + ${c2(t,s)})`)}};function BL(e){return/^[\\w.$]+$/.test(e)?e:`(${e})`}function c2(e,t){return typeof e==\"number\"?$m(e):e._emit(t)}function $m(e){return Number.isFinite(e)?Number.isInteger(e)?`${e}.0`:`${e}`:e>0?\"3.4e38\":e<0?\"-3.4e38\":\"0.0\"}var by=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({linearClamp:{sampler:\"filtering\"},nearestClamp:{sampler:\"filtering\"},linearRepeat:{sampler:\"filtering\"},nearestRepeat:{sampler:\"filtering\"}}).$idx(2),\"SHARED_SAMPLER_LAYOUT\"),tc={uniforms:0,textures:1,samplers:2,external:3};function il(e){return new Ts(()=>e)}function nt(e){return new Ts(()=>$m(e))}function se(e,t,s){return new Ts(r=>`${r.external(e,t)}(${s.map(o=>o._emit(r)).join(\", \")})`)}function Ss(...e){return new Ts(t=>`vec4f(${e.map(s=>oT(s,t)).join(\", \")})`)}function wn(e,t,s){return new Ts(r=>`mix(${e._emit(r)}, ${t._emit(r)}, ${oT(s,r)})`)}var IL=0;function Vs(e,t){let s=IL++;return new Ts(r=>r.memo(`local:${s}`,()=>{let o=r.freshLocal(t);return r.statement(`let ${o} = ${e._emit(r)};`),o}))}var _s=il(\"vec4f(0.0, 0.0, 0.0, 0.0)\"),lf=il(\"vec4f(1.0, 1.0, 1.0, 0.0)\");function oT(e,t){return typeof e==\"number\"?$m(e):e._emit(t)}function Ua(e,t,s,r){return se(j3[s]??j3.normal,`blend_${Ap(s)}`,[e,t,r])}function YL(e,t,s){return se(K3[s]??K3.alpha,`mask_${Ap(s)}`,[e,t])}function Ap(e){return e.replace(/[^a-zA-Z0-9_]/g,\"_\")}function u2(e,t,s,r){let o={},n=new Map,i=new Set,d=[],l=new Map,c=0,_={external(x,T){let S=n.get(x);if(S)return S;let A=Ap(T);if(i.has(A)){let E=1;for(;i.has(`${A}_${E}`);)E++;A=`${A}_${E}`}return i.add(A),n.set(x,A),o[A]=x,A},statement(x){d.push(x)},freshLocal(x){return`${Ap(x)}_${c++}`},memo(x,T){let S=l.get(x);if(S!==void 0)return S;let A=T();return l.set(x,A),A}},p=s?\"vec2f(in.uv.x, 1.0 - in.uv.y)\":\"in.uv\";d.push(`var uv = ${p};`);let f=e._emit(_),h=t(f,_),g=`${d.join(`\n`)}\n${f}\n${h}`;return r&&/\\b(?:tex|samp|ext)\\.\\$\\./.test(g)&&!/\\buni\\.\\$\\./.test(g)&&(_.external(r,\"uni\"),d.unshift(\"_ = uni.$.uniforms._sys.time;\")),{body:`{\n ${d.join(`\n `)}\n return ${h};\n}`,externals:o}}function nT(e,t={}){let s={sampler:by},r=[],o=[],n=[],i=[],d=new Set,l=[],c=[],_=[],p=[],f=0,h=0,g=0,x=0,T=new Set,S=e.store.layout;S&&S.$idx(tc.uniforms),s.uniform=S;let A=N=>new Ts(xe=>(S&&xe.external(S,\"uni\"),N)),E=N=>A(`uni.$.uniforms.${N}`),M=N=>A(e.store.gpuAccessor(N,\"uni\")),$={uv:new Ts(()=>\"uv\"),time:E(\"_sys.time\"),viewportSize:E(\"_sys.viewportSize\"),logicalViewportSize:E(\"_sys.logicalViewportSize\"),aspect:E(\"_sys.aspect\"),pointer:E(\"_sys.pointer\")},L=N=>({key:N,sample:(xe,pe=\"linearClamp\")=>new Ts(_e=>`textureSample(tex.$.${N}, samp.$.${pe}, ${xe._emit(_e)})`),sampleLevel:(xe,pe=\"linearClamp\")=>new Ts(_e=>`textureSampleLevel(tex.$.${N}, samp.$.${pe}, ${xe._emit(_e)}, 0.0)`),accessor:()=>new Ts(()=>`tex.$.${N}`),dimensions:()=>new Ts(()=>`vec2f(textureDimensions(tex.$.${N}))`)}),B=N=>({key:N,sample:(xe,pe=\"linearClamp\")=>new Ts(_e=>`textureSampleBaseClampToEdge(ext.$.${N}, samp.$.${pe}, ${xe._emit(_e)})`),sampleLevel:(xe,pe=\"linearClamp\")=>new Ts(_e=>`textureSampleBaseClampToEdge(ext.$.${N}, samp.$.${pe}, ${xe._emit(_e)})`),accessor:()=>new Ts(()=>`ext.$.${N}`),dimensions:()=>new Ts(()=>`vec2f(textureDimensions(ext.$.${N}))`)}),D=N=>{let xe=`rtt_${f++}`;return r.push({key:xe,root:N}),o.push({key:xe,kind:\"rtt\"}),L(xe)},G=new Map,I=(N,xe,pe)=>{let _e=`${N.id}:${xe}`,me=G.get(_e);if(me!==void 0)return me;let Ue=pe?e.resolveCustomId(pe):null,je=Ue?D(Lt(Ue,new Set([N.id]))):null;return G.set(_e,je),je},X=new Map,H=N=>{let xe=X.get(N.id);if(xe)return xe;let pe={},_e=N.metadata.maps;if(_e){let me={},Ue=N.definition.mapSampleUVs;if(Ue){let je={};for(let[yt,wt]of Object.entries(N.handles))wt.cpu||(je[yt]=M(wt));me=Ue({uniforms:je,ctx:$})??{}}for(let[je,yt]of Object.entries(_e)){if(!(je in N.handles))continue;let wt=Ee(yt,N,je,me[je]);wt&&(pe[je]=wt)}}return X.set(N.id,pe),pe},ee=N=>{let xe=yn(N.id),pe=N.metadata.maps;if(!pe||Object.keys(pe).length===0)return E(xe);let _e=H(N);return Object.keys(_e).length===0?E(xe):new Ts(me=>me.memo(`props:${N.id}`,()=>{S&&me.external(S,\"uni\");let Ue=me.freshLocal(`p_${xe}`);me.statement(`var ${Ue} = uni.$.uniforms.${xe};`);for(let[je,yt]of Object.entries(_e))me.statement(`${Ue}.${je} = ${yt._emit(me)};`);return Ue}))},Q=N=>{let xe={};for(let[pe,_e]of Object.entries(N.handles))xe[pe]=_e.value;return xe},de=N=>{let xe={};yn(N.id);let pe=ee(N);for(let[me,Ue]of Object.entries(N.handles)){if(Ue.cpu)continue;let je=N.metadata.maps;je&&me in je?xe[me]=pe.member(me):xe[me]=M(Ue)}let _e=N.definition.extraFields;if(_e)for(let me of Object.keys(_e))xe[me]=pe.member(me);return xe},Ee=(N,xe,pe,_e)=>{let me=N,Ue=yn(xe.id);if(me.type===\"map\"){let je=I(xe,pe,me.source);return je?VL(OL(je.sample(_e??$.uv),me.channel??\"luminance\"),E(`${Ue}._map_${pe}_inputMin`),E(`${Ue}._map_${pe}_inputMax`),E(`${Ue}._map_${pe}_outputMin`),E(`${Ue}._map_${pe}_outputMax`),E(`${Ue}._map_${pe}_curve`)):null}return me.type===\"mouse-position\"||me.type===\"mouse\"||me.type===\"auto-animate\"?E(`${Ue}._smoothed_${pe}`):null},he=(N,xe,pe,_e)=>{let me=xe.metadata.mask;if(!me?.source)return N;let Ue=e.resolveCustomId(me.source);if(!Ue)return N;if(pe.has(Ue))return console.error(\"[gpu] circular dependency in shader masks.\"),N;let je=new Set(pe);je.add(xe.id);let yt=Lt(Ue,je);return _e&&(yt=D(yt).sample(_e)),YL(N,yt,me.type??\"alpha\")},Me=N=>E(`${yn(N.id)}._opacity`),Te=N=>!!N.metadata.boundingBox&&!!N.definition.boundingBoxDeclaration&&!km(N.metadata.boundingBox),Pe=N=>N.handles.cutout?.value===1,Ce=N=>!!N.definition.requiresChild,ie=N=>!!N.definition.blendWithChildren,Ne=N=>Te(N)&&!N.definition.boundingBoxDeclaration?.boxResamplesContent&&Ce(N)&&N.metadata.blendMode===\"normal\"&&!Pe(N)&&!ie(N),ye=()=>new Ts(N=>`(0.5 / max(${$.viewportSize.member(\"y\")._emit(N)}, 1.0))`),Ve=(N,xe=$.uv)=>{let pe=yn(N.id),_e=me=>E(`${pe}._bbox_${me}`);return se(FL,\"bboxClipMask\",[xe,_e(\"centerX\"),_e(\"centerY\"),_e(\"halfWidth\"),_e(\"halfHeight\"),_e(\"cornerRadius\"),_e(\"rotation\"),_e(\"aspectRatio\"),ye()])},qe=(N,xe)=>{if(!Te(xe))return N;if(xe.definition.boundingBoxDeclaration?.boxResamplesContent){let _e=yn(xe.id),me=wt=>E(`${_e}._bbox_${wt}`),Ue=D(N),je=se(l2,\"bboxGenUVContext\",[$.uv,me(\"centerX\"),me(\"centerY\"),me(\"halfWidth\"),me(\"halfHeight\"),me(\"rotation\"),me(\"aspectRatio\")]),yt=se(Hn,\"unpremultiplyAlpha\",[Ue.sample(je)]);return Ss(yt.member(\"rgb\"),yt.member(\"a\").mul(Ve(xe)))}let pe=Ve(xe);return Ss(N.member(\"rgb\"),N.member(\"a\").mul(pe))},st=(N,xe)=>{let pe=xe.metadata.transform;if(!pe||!da(pe))return N;let _e=yn(xe.id),me=D(N),Ue=je=>E(`${_e}._xform_${je}`);return Ed(se(LL,\"applyUVTransform\",[$.uv,Ue(\"offsetX\"),Ue(\"offsetY\"),Ue(\"rotation\"),Ue(\"scale\"),Ue(\"anchorX\"),Ue(\"anchorY\"),Ue(\"aspectRatio\")]),je=>me.sample(je),NL[pe.edges]??0)},We=(N,xe,pe)=>Te(pe)?xe!==void 0&&Ne(pe)?wn(xe,N,Ve(pe)):qe(N,pe):st(N,pe),Be=(N,xe)=>Ne(xe)?{transformedFragment:N,clipMaskNode:Ve(xe)}:{transformedFragment:Te(xe)?qe(N,xe):st(N,xe),clipMaskNode:void 0},rt=(N,xe,pe,_e)=>{let me=Me(pe),Ue=ie(pe)?N!==void 0?Ua(N,xe,\"normal\",me):wn(_s,xe,me):wn(N??_s,xe,me);return _e===void 0?Ue:wn(N??_s,Ue,_e)},tt=(N,xe)=>{if(N.definition.compute)try{let pe=N.definition.compute(xe);if(pe)return i.push({nodeId:N.id,getComputeNodes:pe.getComputeNodes,bindInputs:pe.bindInputs}),pe.outputs}catch(pe){yr(`[gpu] error initializing compute for node ${N.id}:`,pe)}},Ke=N=>{let xe=yn(N.id),pe=_e=>E(`${xe}._bbox_${_e}`);return{centerX:pe(\"centerX\"),centerY:pe(\"centerY\"),halfWidth:pe(\"halfWidth\"),halfHeight:pe(\"halfHeight\"),rotation:pe(\"rotation\")}},Oe=N=>{let xe=N.definition.boundingBoxDeclaration;return!!xe&&(!!xe.computeBounds||!!xe.propBindings)},gt=N=>{if(!N.definition.wantsBoundsParams)return{};let xe={};Te(N)&&(xe.ownBoundsParams=Ke(N));let pe=[...e.getChildren(N.id)].sort((_e,me)=>_e.metadata.renderOrder-me.metadata.renderOrder);for(let _e of pe)if(_e.metadata.visible!==!1){if(Te(_e)){xe.childBoundsParams=Ke(_e);break}if(Oe(_e)){let me=yn(N.id),Ue=je=>E(`${me}._childBounds_${je}`);xe.childBoundsParams={centerX:Ue(\"centerX\"),centerY:Ue(\"centerY\"),halfWidth:Ue(\"halfWidth\"),halfHeight:Ue(\"halfHeight\"),rotation:nt(0)};break}}return xe},pt=!1,Ut=(N,xe,pe={})=>({noteCustomWgsl:()=>{pt=!0},props:ee(N),uniforms:de(N),propValues:Q(N),childNode:xe,ctx:$,logicalViewportSize:$.logicalViewportSize,convertToTexture:D,declareTexture:_e=>{o.some(me=>me.key===_e.key)||o.push({key:_e.key,kind:\"media\",resource:_e._resource})},registerExternalTexture:_e=>{let me=`video_${g++}`;return n.push({key:me,getSource:_e}),B(me)},registerComputeTexture:_e=>{let me=`compute_${h++}`;o.push({key:me,kind:\"compute\",resource:{texture:_e}});let Ue=_e?.props?.format;return(Ue===\"r32float\"||Ue===\"rg32float\"||Ue===\"rgba32float\")&&T.add(me),L(me)},createMediaTexture:_e=>t.createMediaTexture?.(_e)??(()=>{throw new Error(\"[gpu] createMediaTexture unavailable (no TextureManager injected)\")})(),createDataTexture:_e=>t.createDataTexture?.(_e)??(()=>{throw new Error(\"[gpu] createDataTexture unavailable (no TextureManager injected)\")})(),registerMediaTexture:_e=>{let me=`media_${x++}`;return o.push({key:me,kind:\"media\",resource:{get texture(){return _e()}}}),L(me)},getCpuValue:_e=>{if((N.metadata.maps?.[_e]||_e.startsWith(\"_animTime\"))&&t.resolveDriverCpuValue){let me=t.resolveDriverCpuValue(N.id,_e);if(me!==void 0)return me}return N.handles[_e]?.value},getMapInfo:_e=>{let me=N.metadata.maps?.[_e];if(!me||me.type!==\"map\")return null;let Ue=I(N,_e,me.source);return Ue?{sourceTexture:Ue,channel:me.channel??\"luminance\",window:()=>t.resolveMapWindow?.(N.id,_e)??{inputMin:typeof me.inputMin==\"number\"?me.inputMin:0,inputMax:typeof me.inputMax==\"number\"?me.inputMax:1,outputMin:typeof me.outputMin==\"number\"?me.outputMin:0,outputMax:typeof me.outputMax==\"number\"?me.outputMax:1,curve:typeof me.curve==\"number\"?me.curve:0}}:null},getLayerTexture:_e=>{let me=N.handles[_e]?.value;return typeof me!=\"string\"||me===\"\"?null:I(N,_e,me)},setExtraField:(_e,me)=>t.writeExtraField?.(N.id,_e,me),onCleanup:_e=>p.push(_e),onBeforeRender:_e=>l.push(_e),onAfterRender:_e=>c.push(_e),onResize:_e=>_.push(_e),canvas:t.canvas,dimensions:t.dimensions??{width:1,height:1},gpu:t.gpu,domCanvas:N.domCanvas,...gt(N),...pe});function Lt(N,xe=new Set){let pe=e.getNode(N);if(!pe)return _s;let _e=e.getChildren(N);if(_e.length>0&&pe.definition.providesUVContextViaCompute){let wt=Go(pe,_e,xe);if(wt!==null)return wt}if(_e.length>0&&pe.definition.uvRemap){let wt=Qr(pe,_e);if(wt!==null)return wt;let mt=Cn(pe,_e,xe);if(mt!==null)return mt}if(_e.length===0){d.add(N);let wt=Ut(pe,void 0,{bboxMask:jt(pe),...vs(pe)});wt.computeOutputs=tt(pe,wt);let mt=pe.definition.fragment(wt);return he(Te(pe)?qe(mt,pe):st(mt,pe),pe,xe)}let me=[..._e].sort((wt,mt)=>wt.metadata.renderOrder-mt.metadata.renderOrder),Ue=nr(me,xe);if(Ue!==null){let wt=Ut(pe,Ue,{bboxMask:jt(pe)});wt.computeOutputs=tt(pe,wt);let mt=pe.definition.fragment(wt);return he(Te(pe)?qe(mt,pe):st(mt,pe),pe,xe)}let je=Wt(pe,me,xe);d.add(N);let yt=Ut(pe,je,{bboxMask:jt(pe)});return yt.computeOutputs=tt(pe,yt),he(We(pe.definition.fragment(yt),je,pe),pe,xe)}function Wt(N,xe,pe){let _e;for(let me=0;me<xe.length;me++){let Ue=xe[me];if(Ue.metadata.visible===!1)continue;if(_e!==void 0&&$s(Ue)){let mt=ho(xe,me,_e,pe);if(mt){_e=mt.node,me=mt.endIndex;continue}}d.add(Ue.id);let je=e.getChildren(Ue.id).length>0,yt,wt;if(je)yt=Lt(Ue.id,pe);else{let mt=_e;Ue.definition.requiresRTT&&_e!==void 0&&(mt=Ua(_s,_e,\"normal\",nt(1))),Ue.definition.acceptsOptionalChild&&(mt=void 0);let us=Ut(Ue,mt,{bboxMask:jt(Ue),...vs(Ue)});us.computeOutputs=tt(Ue,us);let ds=Be(Ue.definition.fragment(us),Ue);wt=ds.clipMaskNode,yt=he(ds.transformedFragment,Ue,pe)}if(Ue.definition.requiresChild&&Ue.metadata.blendMode===\"normal\"&&!je)_e=rt(_e,yt,Ue,wt);else{let mt=Ue.metadata.blendMode??\"normal\",us=Ue.metadata.opacity??1;_e===void 0?_e=N.definition.requiresRTT||us!==1?Ua(lf,yt,mt,Me(Ue)):yt:_e=Ua(_e,yt,mt,Me(Ue))}}return _e}function vs(N,xe=$.uv){if(!Te(N))return{};if(!N.definition.boundingBoxDeclaration?.supportsResizeFit)return{};let pe=yn(N.id),_e=me=>E(`${pe}._bbox_${me}`);return{uvContext:se(l2,\"bboxGenUVContext\",[xe,_e(\"centerX\"),_e(\"centerY\"),_e(\"halfWidth\"),_e(\"halfHeight\"),_e(\"rotation\"),_e(\"aspectRatio\")]),effectiveViewportSize:Ss(_e(\"halfWidth\").mul(2).mul($.viewportSize.member(\"x\")),_e(\"halfHeight\").mul(2).mul($.viewportSize.member(\"y\")),0,0).member(\"xy\")}}function jt(N){if(!(!Te(N)||!N.definition.requiresRTT)&&!N.definition.boundingBoxDeclaration?.supportsResizeFit)return Ve(N)}let Qt=N=>!!N.metadata.mask||N.metadata.opacity!==void 0&&N.metadata.opacity<1||(N.metadata.blendMode??\"normal\")!==\"normal\"||da(N.metadata.transform)||Te(N),$s=N=>!!N.definition.uvRemap&&e.getChildren(N.id).length===0&&!Qt(N);function Is(N,xe,pe){d.add(N.id);let _e=tt(N,Ut(N,void 0));return N.definition.uvRemap({uv:xe,mask:pe,uniforms:de(N),propValues:Q(N),props:ee(N),aspect:$.aspect,onBeforeRender:me=>l.push(me),computeOutputs:_e})}function Ys(N){let xe=$.uv,pe=nt(1);for(let _e=N.length-1;_e>=0;_e--){let me=Is(N[_e],xe,pe);xe=me.uv,pe=me.mask}return{uv:xe,mask:pe}}let hs=24,rr=nt(1),or=(N,xe)=>{if(xe.left--<=0||N.metadata.mask||da(N.metadata.transform))return!1;let pe=e.getChildren(N.id).filter(_e=>_e.metadata.visible!==!1);return pe.length===0?Te(N)&&N.definition.boundingBoxDeclaration?.boxResamplesContent?!1:!!N.definition.acceptsUVContext&&!N.definition.requiresChild:!N.definition.uvRemap||Te(N)?!1:pe.every(_e=>or(_e,xe))};function Cr(N,xe,pe){let _e=pe??rr,me=Is(N,xe,_e);return{uv:me.uv,mask:me.mask===_e?pe:me.mask}}let Zr=(N,xe)=>N===void 0?xe:xe===void 0?N:N.mul(xe);function Rr(N,xe,pe){let _e=e.getChildren(N.id).filter(mt=>mt.metadata.visible!==!1);if(_e.length>0){if(!N.definition.uvRemap)return null;let mt=Cr(N,xe,pe);return ur(_e,Vs(mt.uv,\"foldUV\"),mt.mask)}if(!N.definition.acceptsUVContext)return null;d.add(N.id);let me=vs(N,xe),Ue=Ut(N,void 0,Object.keys(me).length>0?me:{uvContext:xe});Ue.computeOutputs=tt(N,Ue);let je=N.definition.fragment(Ue),yt=Zr(pe,Te(N)?Ve(N,xe):void 0);if(yt===void 0)return je;let wt=Vs(je,\"gen\");return Ss(wt.member(\"rgb\"),wt.member(\"a\").mul(yt))}function ur(N,xe,pe){let _e=[...N].sort((je,yt)=>je.metadata.renderOrder-yt.metadata.renderOrder),me;for(let je of _e){let yt=Rr(je,xe,void 0);if(yt===null)return null;let wt=je.metadata.blendMode??\"normal\",mt=je.metadata.opacity??1;me===void 0?me=wt===\"normal\"&&mt===1?yt:Ua(lf,yt,wt,Me(je)):me=Ua(me,yt,wt,Me(je))}if(me===void 0)return null;if(pe===void 0)return me;let Ue=Vs(me,\"sibs\");return Ss(Ue.member(\"rgb\"),Ue.member(\"a\").mul(pe))}function Qr(N,xe){if(!N.definition.uvRemap||Qt(N))return null;let pe=xe.filter(je=>je.metadata.visible!==!1);if(pe.length===0)return null;let _e={left:hs};if(!pe.every(je=>or(je,_e)))return null;d.add(N.id);let{uv:me,mask:Ue}=Cr(N,$.uv,void 0);return ur(pe,Vs(me,\"foldUV\"),Ue)}function nr(N,xe){let pe=N.filter(ds=>ds.metadata.visible!==!1);if(!pe.some(ds=>!!ds.definition.uvRemap)||pe.length<2)return null;let _e=pe.length;for(let ds=pe.length-1;ds>=0&&$s(pe[ds]);ds--)_e=ds;let me=pe.slice(_e),Ue=pe.slice(0,_e);if(me.length===0||Ue.length!==1)return null;let je=Ue[0];if(!je.definition.acceptsUVContext||e.getChildren(je.id).length>0||Qt(je))return null;d.add(je.id);for(let ds of me)d.add(ds.id);let{uv:yt,mask:wt}=Ys(me),mt=Ut(je,void 0,{uvContext:yt});mt.computeOutputs=tt(je,mt);let us=je.definition.fragment(mt);return Ss(us.member(\"rgb\"),us.member(\"a\").mul(wt))}function ho(N,xe,pe,_e){if(!$s(N[xe]))return null;let me=[],Ue=xe;for(let mt=xe;mt<N.length;mt++){let us=N[mt];if(us.metadata.visible!==!1){if(!$s(us))break;me.push(us),Ue=mt}}if(me.length===0)return null;for(let mt of me)d.add(mt.id);let{uv:je,mask:yt}=Ys(me),wt=D(Ua(_s,pe,\"normal\",nt(1))).sample(je);return{node:Ss(wt.member(\"rgb\"),wt.member(\"a\").mul(yt)),endIndex:Ue}}function Cn(N,xe,pe){if(!N.definition.uvRemap||Qt(N))return null;let _e=8,me=[],Ue=N,je=xe,yt=null,wt=null;for(let hr=0;hr<_e;hr++){me.push(Ue);let Zo=je.filter(Rn=>Rn.metadata.visible!==!1);if(Zo.length!==1)return null;let oo=Zo[0],ys=e.getChildren(oo.id);if(oo.definition.acceptsUVContext&&ys.length===0&&!Qt(oo)){yt=oo;break}if(oo.definition.uvRemap&&!Qt(oo)&&ys.length===1){Ue=oo,je=ys;continue}wt=oo;break}if(!yt&&!wt)return null;for(let hr of me)d.add(hr.id);let{uv:mt,mask:us}=Ys([...me].reverse()),ds;if(yt){d.add(yt.id);let hr=Ut(yt,void 0,{uvContext:mt});hr.computeOutputs=tt(yt,hr);let Zo=yt.definition.fragment(hr);ds=Ss(Zo.member(\"rgb\"),Zo.member(\"a\").mul(us))}else{let hr=D(Ua(lf,Lt(wt.id,pe),wt.metadata.blendMode??\"normal\",Me(wt))).sample(mt);ds=Ss(hr.member(\"rgb\"),hr.member(\"a\").mul(us))}return he(Te(N)?qe(ds,N):st(ds,N),N,pe)}function Go(N,xe,pe){let _e=ys=>!!ys.metadata.mask||ys.metadata.opacity!==void 0&&ys.metadata.opacity<1||(ys.metadata.blendMode??\"normal\")!==\"normal\"||da(ys.metadata.transform)||Te(ys);if(!N.definition.providesUVContextViaCompute||_e(N))return null;let me=[],Ue=N,je=null,yt=xe,wt=8;for(let ys=0;ys<wt;ys++){me.push(Ue);let Rn=yt.filter(_i=>_i.metadata.visible!==!1);if(Rn.length!==1)return null;let yo=Rn[0];if(_e(yo))return null;let mn=e.getChildren(yo.id).length>0;if(yo.definition.acceptsUVContext&&!mn){je=yo;break}if(yo.definition.providesUVContextViaCompute){Ue=yo,yt=e.getChildren(yo.id);continue}return null}if(!je)return null;d.add(je.id);for(let ys of me)d.add(ys.id);let mt=[],us;for(let ys=0;ys<me.length;ys++){let Rn=me[ys],yo=Ut(Rn,void 0,{computeOutputs:us?{_upstreamUVMap:us}:void 0}),mn=tt(Rn,yo);if(!mn||!mn.uvMaskMap)return null;yo.computeOutputs=mn,mt.push(yo),us=mn.uvMaskMap}let ds=us.sample($.uv),hr=Ss(ds.member(\"r\"),ds.member(\"g\"),0,0).member(\"xy\"),Zo=Ut(je,void 0,{uvContext:hr});Zo.computeOutputs=tt(je,Zo);let oo=je.definition.fragment(Zo);for(let ys=me.length-1;ys>=0;ys--)mt[ys].childNode=oo,mt[ys].uvPropagationActive=!0,oo=me[ys].definition.fragment(mt[ys]);return he(Te(N)?qe(oo,N):st(oo,N),N,pe)}let ed=e.rootId?Lt(e.rootId):_s,ui=r.map(N=>{let{body:xe,externals:pe}=u2(N.root,_e=>_e,t.flipY??!0,s.uniform);return{textureKey:N.key,fragment:_2(xe,pe,`rtt_${N.key}`,s.sampler,T)}}),td=t.toneMapping??\"linear\",sd=u2(ed,(N,xe)=>WL(N,xe,td,t.premultiplyAlpha??!1),t.flipY??!0,s.uniform);return{computeSteps:i,rttPasses:ui,finalPass:_2(sd.body,sd.externals,\"final\",s.sampler,T),textures:o,externalTextures:n,layouts:{uniforms:s.uniform,samplers:s.sampler},onBeforeRender:l,onAfterRender:c,onResize:_,onCleanup:p,composedNodeIds:d,usesCustomWgsl:pt}}function WL(e,t,s,r){let o=t.external(i2[s]??i2.linear,`tone_${s}`),n=t.external(DL,\"linearToSrgb\"),i=t.freshLocal(\"composed\");t.statement(`var ${i} = ${e};`);let d=`${n}(${o}(${i}.rgb))`;return r?`vec4f(${d} * ${i}.a, ${i}.a)`:`vec4f(${d}, ${i}.a)`}function _2(e,t,s,r,o=new Set){let n=p2(e,/\\btex\\.\\$\\.(\\w+)/g),i=p2(e,/\\bext\\.\\$\\.(\\w+)/g),d=/\\bsamp\\.\\$\\./.test(e),l;if(n.length>0){let _={};for(let p of n)_[p]=o.has(p)?{texture:Hs(a),sampleType:\"unfilterable-float\"}:{texture:Hs(a)};l=(globalThis.__TYPEGPU_AUTONAME__??(p=>p))(y.bindGroupLayout(_).$idx(tc.textures),\"textureLayout\"),t.tex=l}let c;if(i.length>0){let _={};for(let h of i)_[h]={externalTexture:K6()};let p=new Set([tc.uniforms]);n.length>0&&p.add(tc.textures),d&&p.add(tc.samplers);let f=0;for(;p.has(f);)f++;c=(globalThis.__TYPEGPU_AUTONAME__??(h=>h))(y.bindGroupLayout(_).$idx(f),\"externalLayout\"),t.ext=c}return d&&(t.samp=r),{body:e,externals:t,entry:y.fragmentFn({in:{uv:u},out:b})(e).$uses(t).$name(s),reads:n,externalReads:i,usesSamplers:d,textureLayout:l,externalLayout:c}}function p2(e,t){let s=new Set;for(let r of e.matchAll(t))s.add(r[1]);return[...s]}function OL(e,t){switch(t){case\"alpha\":return e.member(\"a\");case\"alphaInverted\":return new Ts(s=>`(1.0 - ${e._emit(s)}.a)`);case\"luminanceInverted\":return new Ts(s=>`(1.0 - dot(${e._emit(s)}.rgb, vec3f(0.2126, 0.7152, 0.0722)))`);default:return new Ts(s=>`dot(${e._emit(s)}.rgb, vec3f(0.2126, 0.7152, 0.0722))`)}}function VL(e,t,s,r,o,n){return new Ts(i=>{let d=e._emit(i),l=t._emit(i),c=s._emit(i),_=r._emit(i),p=o._emit(i),f=n._emit(i);return`mix(${_}, ${p}, ${`pow(${`clamp((${d} - ${l}) / max(${c} - ${l}, 0.0001), 0.0, 1.0)`}, pow(2.0, -${f} * 2.0))`})`})}var NL={stretch:0,transparent:1,mirror:2,wrap:3};function aT(e,t={}){let s=[];s.push(`tone:${t.toneMapping??\"linear\"}`),s.push(`flipY:${t.flipY??!0}`),s.push(`premul:${t.premultiplyAlpha??!1}`);let r=o=>{let n=e.getNode(o);if(!n)return;let i=n.metadata,d=n.definition,l=da(i.transform),c=!!i.boundingBox&&!!d.boundingBoxDeclaration&&!km(i.boundingBox),_=(i.opacity??1)===0?\"zero\":\"nonzero\",p=i.mask?`${i.mask.source}:${i.mask.type}`:\"none\",f=[];for(let[h,g]of Object.entries(d.props??{}))if(g.compileTime){let x=n.handles[h];f.push(`${h}=${x?String(x.value):\"?\"}`)}s.push([`id:${n.id}`,`parent:${n.parentId??\"\"}`,`name:${n.componentName}`,`rev:${d.revision??\"\"}`,`blend:${i.blendMode??\"normal\"}`,`mask:${p}`,`order:${i.renderOrder??0}`,`visible:${i.visible!==!1}`,`opacity:${_}`,`xform:${l}${l?`:${i.transform?.edges??\"transparent\"}`:\"\"}`,`bbox:${c}:${c?d.boundingBoxDeclaration?.boxResamplesContent?\"resample\":d.boundingBoxDeclaration?.supportsResizeFit?\"resize\":\"clip\":\"\"}`,`rtt:${!!d.requiresRTT}`,`maps:${i.maps?Object.keys(i.maps).sort().join(\",\"):\"\"}`,`ct:${f.sort().join(\"|\")}`].join(\"|\"));for(let h of e.getChildren(o).sort((g,x)=>g.metadata.renderOrder-x.metadata.renderOrder))r(h.id)};return e.rootId&&r(e.rootId),s}var qL=y.fn([a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(t,s),o=__tsover_add(K(__tsover_sub(r,.5)),.5),n=__tsover_sub(r,o),i=__tsover_add(1,__tsover_mul(__tsover_mul(n,n),__tsover_add(-2.5,__tsover_mul(1.5,n)))),d=__tsover_mul(n,__tsover_add(.5,__tsover_mul(n,__tsover_sub(2,__tsover_mul(1.5,n))))),l=w(__tsover_add(i,d),1e-6),c=__tsover_div(d,l);return v(__tsover_div(__tsover_sub(o,1),s),__tsover_div(__tsover_add(o,c),s),__tsover_div(__tsover_add(o,2),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"texSize\"}],body:[0,[[13,\"samplePos\",[1,\"uv\",\"*\",\"texSize\"]],[13,\"texPos1\",[1,[6,\"std.floor\",[[1,\"samplePos\",\"-\",[5,\"0.5\"]]]],\"+\",[5,\"0.5\"]]],[13,\"f\",[1,\"samplePos\",\"-\",\"texPos1\"]],[13,\"w1\",[1,[5,\"1\"],\"+\",[1,[1,\"f\",\"*\",\"f\"],\"*\",[1,[4,\"-\",[5,\"2.5\"]],\"+\",[1,[5,\"1.5\"],\"*\",\"f\"]]]]],[13,\"w2\",[1,\"f\",\"*\",[1,[5,\"0.5\"],\"+\",[1,\"f\",\"*\",[1,[5,\"2\"],\"-\",[1,[5,\"1.5\"],\"*\",\"f\"]]]]]],[13,\"w12\",[6,\"std.max\",[[1,\"w1\",\"+\",\"w2\"],[5,\"0.000001\"]]]],[13,\"offset12\",[1,\"w2\",\"/\",\"w12\"]],[10,[6,\"d.vec3f\",[[1,[1,\"texPos1\",\"-\",[5,\"1\"]],\"/\",\"texSize\"],[1,[1,\"texPos1\",\"+\",\"offset12\"],\"/\",\"texSize\"],[1,[1,\"texPos1\",\"+\",[5,\"2\"]],\"/\",\"texSize\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.max\":()=>w,\"d.vec3f\":()=>v}})&&e.f)({})),XL=y.fn([a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(t,s),o=__tsover_add(K(__tsover_sub(r,.5)),.5),n=__tsover_sub(r,o),i=__tsover_mul(n,__tsover_add(-.5,__tsover_mul(n,__tsover_sub(1,__tsover_mul(.5,n))))),d=__tsover_add(1,__tsover_mul(__tsover_mul(n,n),__tsover_add(-2.5,__tsover_mul(1.5,n)))),l=__tsover_mul(n,__tsover_add(.5,__tsover_mul(n,__tsover_sub(2,__tsover_mul(1.5,n))))),c=__tsover_mul(__tsover_mul(n,n),__tsover_add(-.5,__tsover_mul(.5,n)));return v(i,__tsover_add(d,l),c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"texSize\"}],body:[0,[[13,\"samplePos\",[1,\"uv\",\"*\",\"texSize\"]],[13,\"texPos1\",[1,[6,\"std.floor\",[[1,\"samplePos\",\"-\",[5,\"0.5\"]]]],\"+\",[5,\"0.5\"]]],[13,\"f\",[1,\"samplePos\",\"-\",\"texPos1\"]],[13,\"w0\",[1,\"f\",\"*\",[1,[4,\"-\",[5,\"0.5\"]],\"+\",[1,\"f\",\"*\",[1,[5,\"1\"],\"-\",[1,[5,\"0.5\"],\"*\",\"f\"]]]]]],[13,\"w1\",[1,[5,\"1\"],\"+\",[1,[1,\"f\",\"*\",\"f\"],\"*\",[1,[4,\"-\",[5,\"2.5\"]],\"+\",[1,[5,\"1.5\"],\"*\",\"f\"]]]]],[13,\"w2\",[1,\"f\",\"*\",[1,[5,\"0.5\"],\"+\",[1,\"f\",\"*\",[1,[5,\"2\"],\"-\",[1,[5,\"1.5\"],\"*\",\"f\"]]]]]],[13,\"w3\",[1,[1,\"f\",\"*\",\"f\"],\"*\",[1,[4,\"-\",[5,\"0.5\"]],\"+\",[1,[5,\"0.5\"],\"*\",\"f\"]]]],[10,[6,\"d.vec3f\",[\"w0\",[1,\"w1\",\"+\",\"w2\"],\"w3\"]]]]]},externals:{\"std.floor\":()=>K,\"d.vec3f\":()=>v}})&&e.f)({}));var HL=0,jL=(e,t,s=\"linearClamp\",r=\"positive\")=>{let o=HL++;return new Ts(n=>n.memo(`catmullRom:${o}`,()=>{let i=n.freshLocal(\"crUV\"),d=n.freshLocal(\"crSize\"),l=n.freshLocal(\"crPosX\"),c=n.freshLocal(\"crPosY\"),_=n.freshLocal(\"crWx\"),p=n.freshLocal(\"crWy\"),f=n.freshLocal(\"crOut\");n.statement(`let ${i} = ${t._emit(n)};`),n.statement(`let ${d} = ${e.dimensions()._emit(n)};`);let h=n.external(qL,\"catmullRomAxisPositions\"),g=n.external(XL,\"catmullRomAxisWeights\");n.statement(`let ${l} = ${h}(${i}.x, ${d}.x);`),n.statement(`let ${c} = ${h}(${i}.y, ${d}.y);`),n.statement(`let ${_} = ${g}(${i}.x, ${d}.x);`),n.statement(`let ${p} = ${g}(${i}.y, ${d}.y);`),n.statement(`var ${f} = vec4f(0.0, 0.0, 0.0, 0.0);`);let x=[\"x\",\"y\",\"z\"];for(let T of[0,1,2])for(let S of[0,1,2]){let A=new Ts(()=>`vec2f(${l}.${x[S]}, ${c}.${x[T]})`),E=`(${_}.${x[S]} * ${p}.${x[T]})`;n.statement(`${f} += ${e.sample(A,s)._emit(n)} * ${E};`)}return n.statement(r===\"unit\"?`${f} = clamp(${f}, vec4f(0.0, 0.0, 0.0, 0.0), vec4f(1.0, 1.0, 1.0, 1.0));`:`${f} = max(${f}, vec4f(0.0, 0.0, 0.0, 0.0));`),f}))},KL=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return z(t,u(0,0),u(1,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[10,[6,\"std.clamp\",[\"uv\",[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]],[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec2f\":()=>u}})&&e.f)({})),iT=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=tn(W(t.x),2),r=tn(W(t.y),2);return u(F(s,__tsover_sub(2,s),s>=1),F(r,__tsover_sub(2,r),r>=1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"mirrorX\",[6,\"std.mod\",[[6,\"std.abs\",[[7,\"uv\",\"x\"]]],[5,\"2\"]]]],[13,\"mirrorY\",[6,\"std.mod\",[[6,\"std.abs\",[[7,\"uv\",\"y\"]]],[5,\"2\"]]]],[10,[6,\"d.vec2f\",[[6,\"std.select\",[\"mirrorX\",[1,[5,\"2\"],\"-\",\"mirrorX\"],[1,\"mirrorX\",\">=\",[5,\"1\"]]]],[6,\"std.select\",[\"mirrorY\",[1,[5,\"2\"],\"-\",\"mirrorY\"],[1,\"mirrorY\",\">=\",[5,\"1\"]]]]]]]]]},externals:{\"std.mod\":()=>tn,\"std.abs\":()=>W,\"d.vec2f\":()=>u,\"std.select\":()=>F}})&&e.f)({})),dT=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ve(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[10,[6,\"std.fract\",[\"uv\"]]]]]},externals:{\"std.fract\":()=>ve}})&&e.f)({})),lT=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=__tsover_mul(ot(0,t.x),ot(t.x,1)),r=__tsover_mul(ot(0,t.y),ot(t.y,1));return __tsover_mul(s,r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"inX\",[1,[6,\"std.step\",[[5,\"0\"],[7,\"uv\",\"x\"]]],\"*\",[6,\"std.step\",[[7,\"uv\",\"x\"],[5,\"1\"]]]]],[13,\"inY\",[1,[6,\"std.step\",[[5,\"0\"],[7,\"uv\",\"y\"]]],\"*\",[6,\"std.step\",[[7,\"uv\",\"y\"],[5,\"1\"]]]]],[10,[1,\"inX\",\"*\",\"inY\"]]]]},externals:{\"std.step\":()=>ot}})&&e.f)({})),wy=1,Ty=2,Sy=3;y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t.x,t.y,t.z,__tsover_mul(t.w,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"m\"}],body:[0,[[10,[6,\"d.vec4f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"],[1,[7,\"color\",\"w\"],\"*\",\"m\"]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({}));var ZL=(e,t)=>{switch(t){case wy:return e;case Ty:return se(iT,\"edgeMirrorUV\",[e]);case Sy:return se(dT,\"edgeWrapUV\",[e]);default:return se(KL,\"edgeClampUV\",[e])}},QL=(e,t,s)=>{if(s===wy){let r=se(lT,\"edgeTransparentMask\",[e]);return{uv:e,mask:t.mul(r)}}return{uv:ZL(e,s),mask:t}},Ed=(e,t,s)=>{if(s===wy){let r=t(e),o=se(lT,\"edgeTransparentMask\",[e]);return Ss(r.member(\"rgb\"),r.member(\"a\").mul(o))}return t(s===Ty?se(iT,\"edgeMirrorUV\",[e]):s===Sy?se(dT,\"edgeWrapUV\",[e]):e)},JL=(e,t,s)=>Ed(t,s===Ty?r=>e.sample(r):r=>jL(e,r,s===Sy?\"linearRepeat\":\"linearClamp\"),s),cf=Ct({rUV:u,gUV:u,bUV:u}).$name(\"ChromaticSplitUVs\"),eF=y.fn([u,u,a,a],cf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=s.mul(__tsover_mul(r,.1)),i=.15,d=z(n,u(-i,-i),u(i,i)),l=__tsover_mul(o,.1);return cf({rUV:t.sub(d.mul(__tsover_add(1,l))),gUV:t.sub(d),bUV:t.sub(d.mul(__tsover_sub(1,l)))})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"disp\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"chromaticSplit\"}],body:[0,[[13,\"scaled\",[6,[7,\"disp\",\"mul\"],[[1,\"strength\",\"*\",[5,\"0.1\"]]]]],[13,\"maxDisp\",[5,\"0.15\"]],[13,\"clamped\",[6,\"std.clamp\",[\"scaled\",[6,\"d.vec2f\",[[4,\"-\",\"maxDisp\"],[4,\"-\",\"maxDisp\"]]],[6,\"d.vec2f\",[\"maxDisp\",\"maxDisp\"]]]]],[13,\"chromaticScale\",[1,\"chromaticSplit\",\"*\",[5,\"0.1\"]]],[13,\"rUV\",[6,[7,\"uv\",\"sub\"],[[6,[7,\"clamped\",\"mul\"],[[1,[5,\"1\"],\"+\",\"chromaticScale\"]]]]]],[13,\"gUV\",[6,[7,\"uv\",\"sub\"],[\"clamped\"]]],[13,\"bUV\",[6,[7,\"uv\",\"sub\"],[[6,[7,\"clamped\",\"mul\"],[[1,[5,\"1\"],\"-\",\"chromaticScale\"]]]]]],[10,[6,\"ChromaticSplitUVs\",[[104,{rUV:\"rUV\",gUV:\"gUV\",bUV:\"bUV\"}]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec2f\":()=>u,ChromaticSplitUVs:()=>cf}})&&e.f)({})),m2=Et,VO=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(s,Qe),o=J(r),n=O(r),i=__tsover_div(1,3),d=__tsover_sub(1,o),l=__tsover_mul(d,i),c=__tsover_div(n,Za),_=__tsover_add(o,l),p=__tsover_sub(l,c),f=__tsover_add(l,c),h=__tsover_add(l,c),g=__tsover_add(o,l),x=__tsover_sub(l,c),T=__tsover_sub(l,c),S=__tsover_add(l,c),A=__tsover_add(o,l),E=t.x,M=t.y,$=t.z;return b(__tsover_add(__tsover_add(__tsover_mul(E,_),__tsover_mul(M,p)),__tsover_mul($,f)),__tsover_add(__tsover_add(__tsover_mul(E,h),__tsover_mul(M,g)),__tsover_mul($,x)),__tsover_add(__tsover_add(__tsover_mul(E,T),__tsover_mul(M,S)),__tsover_mul($,A)),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"shiftDeg\"}],body:[0,[[13,\"angle\",[1,\"shiftDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angle\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angle\"]]],[13,\"k\",[1,[5,\"1\"],\"/\",[5,\"3\"]]],[13,\"oneMinusCos\",[1,[5,\"1\"],\"-\",\"cosA\"]],[13,\"kOneMinusCos\",[1,\"oneMinusCos\",\"*\",\"k\"]],[13,\"sinOverSqrt3\",[1,\"sinA\",\"/\",\"SQRT3\"]],[13,\"m00\",[1,\"cosA\",\"+\",\"kOneMinusCos\"]],[13,\"m01\",[1,\"kOneMinusCos\",\"-\",\"sinOverSqrt3\"]],[13,\"m02\",[1,\"kOneMinusCos\",\"+\",\"sinOverSqrt3\"]],[13,\"m10\",[1,\"kOneMinusCos\",\"+\",\"sinOverSqrt3\"]],[13,\"m11\",[1,\"cosA\",\"+\",\"kOneMinusCos\"]],[13,\"m12\",[1,\"kOneMinusCos\",\"-\",\"sinOverSqrt3\"]],[13,\"m20\",[1,\"kOneMinusCos\",\"-\",\"sinOverSqrt3\"]],[13,\"m21\",[1,\"kOneMinusCos\",\"+\",\"sinOverSqrt3\"]],[13,\"m22\",[1,\"cosA\",\"+\",\"kOneMinusCos\"]],[13,\"r\",[7,\"color\",\"x\"]],[13,\"g\",[7,\"color\",\"y\"]],[13,\"b\",[7,\"color\",\"z\"]],[13,\"newR\",[1,[1,[1,\"r\",\"*\",\"m00\"],\"+\",[1,\"g\",\"*\",\"m01\"]],\"+\",[1,\"b\",\"*\",\"m02\"]]],[13,\"newG\",[1,[1,[1,\"r\",\"*\",\"m10\"],\"+\",[1,\"g\",\"*\",\"m11\"]],\"+\",[1,\"b\",\"*\",\"m12\"]]],[13,\"newB\",[1,[1,[1,\"r\",\"*\",\"m20\"],\"+\",[1,\"g\",\"*\",\"m21\"]],\"+\",[1,\"b\",\"*\",\"m22\"]]],[10,[6,\"d.vec4f\",[\"newR\",\"newG\",\"newB\",[7,\"color\",\"w\"]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,SQRT3:()=>Za,\"d.vec4f\":()=>b}})&&e.f)({})),NO=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=v(t.x,t.y,t.z),o=le(r,v(.2126,.7152,.0722)),n=Z(v(o,o,o),r,v(s));return b(n.x,n.y,n.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]],[13,\"luminance\",[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[13,\"gray\",[6,\"d.vec3f\",[\"luminance\",\"luminance\",\"luminance\"]]],[13,\"saturated\",[6,\"std.mix\",[\"gray\",\"rgb\",[6,\"d.vec3f\",[\"intensity\"]]]]],[10,[6,\"d.vec4f\",[[7,\"saturated\",\"x\"],[7,\"saturated\",\"y\"],[7,\"saturated\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.dot\":()=>le,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),qO=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t.x,o=t.y,n=t.z,i=__tsover_div(__tsover_add(__tsover_add(r,o),n),3),d=w(r,w(o,n)),l=__tsover_mul(__tsover_mul(__tsover_sub(d,i),s),-3),c=Z(v(r,o,n),v(d,d,d),v(l));return b(c.x,c.y,c.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"adjustment\"}],body:[0,[[13,\"r\",[7,\"color\",\"x\"]],[13,\"g\",[7,\"color\",\"y\"]],[13,\"b\",[7,\"color\",\"z\"]],[13,\"average\",[1,[1,[1,\"r\",\"+\",\"g\"],\"+\",\"b\"],\"/\",[5,\"3\"]]],[13,\"mx\",[6,\"std.max\",[\"r\",[6,\"std.max\",[\"g\",\"b\"]]]]],[13,\"amt\",[1,[1,[1,\"mx\",\"-\",\"average\"],\"*\",\"adjustment\"],\"*\",[4,\"-\",[5,\"3\"]]]],[13,\"rgb\",[6,\"d.vec3f\",[\"r\",\"g\",\"b\"]]],[13,\"vibrant\",[6,\"std.mix\",[\"rgb\",[6,\"d.vec3f\",[\"mx\",\"mx\",\"mx\"]],[6,\"d.vec3f\",[\"amt\"]]]]],[10,[6,\"d.vec4f\",[[7,\"vibrant\",\"x\"],[7,\"vibrant\",\"y\"],[7,\"vibrant\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"std.max\":()=>w,\"d.vec3f\":()=>v,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),XO=y.fn([b,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_add(r,1),n=v(.5,.5,.5);return b(t.xyz.sub(n).mul(o).add(n).add(v(s,s,s)),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"brightness\"},{type:\"i\",name:\"contrastRaw\"}],body:[0,[[13,\"contrast\",[1,\"contrastRaw\",\"+\",[5,\"1\"]]],[13,\"half\",[6,\"d.vec3f\",[[5,\"0.5\"],[5,\"0.5\"],[5,\"0.5\"]]]],[13,\"contrasted\",[6,[7,[6,[7,[6,[7,[7,\"color\",\"xyz\"],\"sub\"],[\"half\"]],\"mul\"],[\"contrast\"]],\"add\"],[\"half\"]]],[13,\"result\",[6,[7,\"contrasted\",\"add\"],[[6,\"d.vec3f\",[\"brightness\",\"brightness\",\"brightness\"]]]]],[10,[6,\"d.vec4f\",[\"result\",[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),HO=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t.xyz.mul(s),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"gain\"}],body:[0,[[13,\"rgb\",[6,[7,[7,\"color\",\"xyz\"],\"mul\"],[\"gain\"]]],[10,[6,\"d.vec4f\",[\"rgb\",[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),jO=y.fn([b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=le(t.xyz,v(.2126,.7152,.0722));return b(s,s,s,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[13,\"luminance\",[6,\"std.dot\",[[7,\"color\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[10,[6,\"d.vec4f\",[\"luminance\",\"luminance\",\"luminance\",[7,\"color\",\"w\"]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),KO=y.fn([b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return b(__tsover_sub(1,t.x),__tsover_sub(1,t.y),__tsover_sub(1,t.z),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[10,[6,\"d.vec4f\",[[1,[5,\"1\"],\"-\",[7,\"color\",\"x\"]],[1,[5,\"1\"],\"-\",[7,\"color\",\"y\"]],[1,[5,\"1\"],\"-\",[7,\"color\",\"z\"]],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),ZO=y.fn([b,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=v(t.x,t.y,t.z),n=le(o,v(.299,.587,.114)),i=Z(o,F(o,v(__tsover_sub(1,t.x),__tsover_sub(1,t.y),__tsover_sub(1,t.z)),n>s),v(r));return b(i.x,i.y,i.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"threshold\"},{type:\"i\",name:\"strength\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]],[13,\"luminance\",[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"inverted\",[6,\"d.vec3f\",[[1,[5,\"1\"],\"-\",[7,\"color\",\"x\"]],[1,[5,\"1\"],\"-\",[7,\"color\",\"y\"]],[1,[5,\"1\"],\"-\",[7,\"color\",\"z\"]]]]],[13,\"solarized\",[6,\"std.select\",[\"rgb\",\"inverted\",[1,\"luminance\",\">\",\"threshold\"]]]],[13,\"result\",[6,\"std.mix\",[\"rgb\",\"solarized\",[6,\"d.vec3f\",[\"strength\"]]]]],[10,[6,\"d.vec4f\",[[7,\"result\",\"x\"],[7,\"result\",\"y\"],[7,\"result\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.dot\":()=>le,\"std.select\":()=>F,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),QO=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=z(s,a(2),a(20));return b(__tsover_div(K(__tsover_mul(t.x,r)),r),__tsover_div(K(__tsover_mul(t.y,r)),r),__tsover_div(K(__tsover_mul(t.z,r)),r),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"steps\"}],body:[0,[[13,\"s\",[6,\"std.clamp\",[\"steps\",[6,\"d.f32\",[[5,\"2\"]]],[6,\"d.f32\",[[5,\"20\"]]]]]],[13,\"r\",[1,[6,\"std.floor\",[[1,[7,\"color\",\"x\"],\"*\",\"s\"]]],\"/\",\"s\"]],[13,\"g\",[1,[6,\"std.floor\",[[1,[7,\"color\",\"y\"],\"*\",\"s\"]]],\"/\",\"s\"]],[13,\"b\",[1,[6,\"std.floor\",[[1,[7,\"color\",\"z\"],\"*\",\"s\"]]],\"/\",\"s\"]],[10,[6,\"d.vec4f\",[\"r\",\"g\",\"b\",[7,\"color\",\"w\"]]]]]]},externals:{\"std.clamp\":()=>z,\"d.f32\":()=>a,\"std.floor\":()=>K,\"d.vec4f\":()=>b}})&&e.f)({})),JO=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Z(v(t.x,t.y,t.z),v(s.x,s.y,s.z),v(r));return b(o.x,o.y,o.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"tintColor\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]],[13,\"tinted\",[6,\"std.mix\",[\"rgb\",[6,\"d.vec3f\",[[7,\"tintColor\",\"x\"],[7,\"tintColor\",\"y\"],[7,\"tintColor\",\"z\"]]],[6,\"d.vec3f\",[\"amount\"]]]]],[10,[6,\"d.vec4f\",[[7,\"tinted\",\"x\"],[7,\"tinted\",\"y\"],[7,\"tinted\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),eV=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=v(t.x,t.y,t.z),n=Z(o,v(s.x,s.y,s.z),v(r)),i=v(.299,.587,.114),d=le(o,i),l=le(n,i),c=n.mul(__tsover_div(d,w(l,1e-4)));return b(c.x,c.y,c.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"tintColor\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]],[13,\"tinted\",[6,\"std.mix\",[\"rgb\",[6,\"d.vec3f\",[[7,\"tintColor\",\"x\"],[7,\"tintColor\",\"y\"],[7,\"tintColor\",\"z\"]]],[6,\"d.vec3f\",[\"amount\"]]]]],[13,\"luminanceWeights\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]],[13,\"originalLum\",[6,\"std.dot\",[\"rgb\",\"luminanceWeights\"]]],[13,\"tintedLum\",[6,\"std.dot\",[\"tinted\",\"luminanceWeights\"]]],[13,\"result\",[6,[7,\"tinted\",\"mul\"],[[1,\"originalLum\",\"/\",[6,\"std.max\",[\"tintedLum\",[5,\"0.0001\"]]]]]]],[10,[6,\"d.vec4f\",[[7,\"result\",\"x\"],[7,\"result\",\"y\"],[7,\"result\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.mix\":()=>Z,\"std.dot\":()=>le,\"std.max\":()=>w,\"d.vec4f\":()=>b}})&&e.f)({})),tV=y.fn([b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=le(t.xyz,v(.299,.587,.114));return ce(__tsover_sub(s,.5),__tsover_add(s,.5),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"blend\"}],body:[0,[[13,\"luminance\",[6,\"std.dot\",[[7,\"color\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[10,[6,\"std.smoothstep\",[[1,\"blend\",\"-\",[5,\"0.5\"]],[1,\"blend\",\"+\",[5,\"0.5\"]],\"luminance\"]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.smoothstep\":()=>ce}})&&e.f)({})),sV=y.fn([b,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=le(t.xyz,v(.299,.587,.114));return v(ce(__tsover_sub(s,.25),s,r),ce(s,__tsover_add(s,.25),r),ce(__tsover_sub(s,.1),__tsover_add(s,.1),r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"blendMid\"}],body:[0,[[13,\"luminance\",[6,\"std.dot\",[[7,\"color\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"shadowToMid\",[6,\"std.smoothstep\",[[1,\"blendMid\",\"-\",[5,\"0.25\"]],\"blendMid\",\"luminance\"]]],[13,\"midToHighlight\",[6,\"std.smoothstep\",[\"blendMid\",[1,\"blendMid\",\"+\",[5,\"0.25\"]],\"luminance\"]]],[13,\"finalT\",[6,\"std.smoothstep\",[[1,\"blendMid\",\"-\",[5,\"0.1\"]],[1,\"blendMid\",\"+\",[5,\"0.1\"]],\"luminance\"]]],[10,[6,\"d.vec3f\",[\"shadowToMid\",\"midToHighlight\",\"finalT\"]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.smoothstep\":()=>ce}})&&e.f)({})),rV=y.fn([b,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=le(t.xyz,v(.2126,.7152,.0722)),i=w(__tsover_sub(r,s),1e-4),d=z(__tsover_div(__tsover_sub(n,s),i),0,1);return d=z(__tsover_add(__tsover_mul(__tsover_sub(d,.5),o),.5),0,1),d}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"black\"},{type:\"i\",name:\"white\"},{type:\"i\",name:\"contrast\"}],body:[0,[[13,\"luma\",[6,\"std.dot\",[[7,\"color\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[13,\"range\",[6,\"std.max\",[[1,\"white\",\"-\",\"black\"],[5,\"0.0001\"]]]],[12,\"t\",[6,\"std.clamp\",[[1,[1,\"luma\",\"-\",\"black\"],\"/\",\"range\"],[5,\"0\"],[5,\"1\"]]]],[2,\"t\",\"=\",[6,\"std.clamp\",[[1,[1,[1,\"t\",\"-\",[5,\"0.5\"]],\"*\",\"contrast\"],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[10,\"t\"]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.max\":()=>w,\"std.clamp\":()=>z}})&&e.f)({})),oV=y.fn([a,a,v,v,v,v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=n.mul(t).add(i).add(v(s,s,s)).mul(m2);return z(r.add(o.mul(J(d))),v(0,0,0),v(1,1,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"pa\"},{type:\"i\",name:\"pb\"},{type:\"i\",name:\"pc\"},{type:\"i\",name:\"pd\"}],body:[0,[[13,\"arg\",[6,[7,[6,[7,[6,[7,[6,[7,\"pc\",\"mul\"],[\"t\"]],\"add\"],[\"pd\"]],\"add\"],[[6,\"d.vec3f\",[\"phase\",\"phase\",\"phase\"]]]],\"mul\"],[\"TWO_PI\"]]],[13,\"mapped\",[6,[7,\"pa\",\"add\"],[[6,[7,\"pb\",\"mul\"],[[6,\"std.cos\",[\"arg\"]]]]]]],[10,[6,\"std.clamp\",[\"mapped\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]]]]]]},externals:{\"d.vec3f\":()=>v,TWO_PI:()=>m2,\"std.cos\":()=>J,\"std.clamp\":()=>z}})&&e.f)({})),nV=y.fn([a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=ve(__tsover_add(t,s)),o=__tsover_mul(r,3);return u(ve(o),K(o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"phase\"}],body:[0,[[13,\"t01\",[6,\"std.fract\",[[1,\"t\",\"+\",\"phase\"]]]],[13,\"t3\",[1,\"t01\",\"*\",[5,\"3\"]]],[10,[6,\"d.vec2f\",[[6,\"std.fract\",[\"t3\"]],[6,\"std.floor\",[\"t3\"]]]]]]]},externals:{\"std.fract\":()=>ve,\"d.vec2f\":()=>u,\"std.floor\":()=>K}})&&e.f)({})),aV=y.fn([b,b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return F(F(r,s,o<2),t,o<1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"seg0\"},{type:\"i\",name:\"seg1\"},{type:\"i\",name:\"seg2\"},{type:\"i\",name:\"i\"}],body:[0,[[13,\"upper\",[6,\"std.select\",[\"seg2\",\"seg1\",[1,\"i\",\"<\",[5,\"2\"]]]]],[10,[6,\"std.select\",[\"upper\",\"seg0\",[1,\"i\",\"<\",[5,\"1\"]]]]]]]},externals:{\"std.select\":()=>F}})&&e.f)({})),iV=y.fn([b,v,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return b(Z(t.xyz,s,v(r,r,r)),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"mapped\"},{type:\"i\",name:\"strength\"}],body:[0,[[13,\"outRgb\",[6,\"std.mix\",[[7,\"color\",\"xyz\"],\"mapped\",[6,\"d.vec3f\",[\"strength\",\"strength\",\"strength\"]]]]],[10,[6,\"d.vec4f\",[\"outRgb\",[7,\"color\",\"w\"]]]]]]},externals:{\"std.mix\":()=>Z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),dV=y.fn([b,u,u,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=ms(s.mul(r).add(u(i,__tsover_mul(i,1.6180339)))),l=__tsover_sub(__tsover_mul(d,2),1),c=z(le(t.xyz,v(.2126,.7152,.0722)),0,1),_=__tsover_sub(1,c),p=Ye(__tsover_add(_,1e-6),n),f=__tsover_mul(__tsover_mul(l,p),__tsover_mul(o,.1));return b(t.xyz.add(f),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"bias\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"pixelCoord\",[6,[7,\"uv\",\"mul\"],[\"viewport\"]]],[13,\"noiseVal\",[6,\"hash12\",[[6,[7,\"pixelCoord\",\"add\"],[[6,\"d.vec2f\",[\"animTime\",[1,\"animTime\",\"*\",[5,\"1.6180339\"]]]]]]]]],[13,\"grain\",[1,[1,\"noiseVal\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]],[13,\"brightness\",[6,\"std.clamp\",[[6,\"std.dot\",[[7,\"color\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"darkness\",[1,[5,\"1\"],\"-\",\"brightness\"]],[13,\"darkFactor\",[6,\"std.pow\",[[1,\"darkness\",\"+\",[5,\"0.000001\"]],\"bias\"]]],[13,\"grainIntensity\",[1,[1,\"grain\",\"*\",\"darkFactor\"],\"*\",[1,\"strength\",\"*\",[5,\"0.1\"]]]],[13,\"grainedColor\",[6,[7,[7,\"color\",\"xyz\"],\"add\"],[\"grainIntensity\"]]],[10,[6,\"d.vec4f\",[\"grainedColor\",[7,\"color\",\"w\"]]]]]]},externals:{hash12:()=>ms,\"d.vec2f\":()=>u,\"std.clamp\":()=>z,\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.pow\":()=>Ye,\"d.vec4f\":()=>b}})&&e.f)({})),Ep=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Ye(F(t,__tsover_sub(1,t),i>.5),n),l=__tsover_add(__tsover_mul(d,s),.5),c=w(As(l),1e-4),_=W(__tsover_sub(ve(__tsover_add(l,.5)),.5)),p=__tsover_div(_,c),f=__tsover_add(__tsover_mul(o,.99),.01),h=__tsover_mul(r,__tsover_sub(1,f));return __tsover_sub(1,ce(h,r,p))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sourceValue\"},{type:\"i\",name:\"levels\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"gamma\"},{type:\"i\",name:\"invert\"}],body:[0,[[13,\"invertedValue\",[6,\"std.select\",[\"sourceValue\",[1,[5,\"1\"],\"-\",\"sourceValue\"],[1,\"invert\",\">\",[5,\"0.5\"]]]]],[13,\"sv\",[6,\"std.pow\",[\"invertedValue\",\"gamma\"]]],[13,\"scaledValue\",[1,[1,\"sv\",\"*\",\"levels\"],\"+\",[5,\"0.5\"]]],[13,\"fw\",[6,\"std.max\",[[6,\"std.fwidth\",[\"scaledValue\"]],[5,\"0.0001\"]]]],[13,\"distFromBoundary\",[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,\"scaledValue\",\"+\",[5,\"0.5\"]]]],\"-\",[5,\"0.5\"]]]]],[13,\"normalizedDist\",[1,\"distFromBoundary\",\"/\",\"fw\"]],[13,\"transitionFactor\",[1,[1,\"softness\",\"*\",[5,\"0.99\"]],\"+\",[5,\"0.01\"]]],[13,\"innerEdge\",[1,\"lineWidth\",\"*\",[1,[5,\"1\"],\"-\",\"transitionFactor\"]]],[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"innerEdge\",\"lineWidth\",\"normalizedDist\"]]]]]]},externals:{\"std.select\":()=>F,\"std.pow\":()=>Ye,\"std.max\":()=>w,\"std.fwidth\":()=>As,\"std.abs\":()=>W,\"std.fract\":()=>ve,\"std.smoothstep\":()=>ce}})&&e.f)({})),lV=y.fn([b,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Ep(E3(t.xyz),s,r,o,n,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"levels\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"gamma\"},{type:\"i\",name:\"invert\"}],body:[0,[[10,[6,\"contourLineMask\",[[6,\"luma709Dot\",[[7,\"color\",\"xyz\"]]],\"levels\",\"lineWidth\",\"softness\",\"gamma\",\"invert\"]]]]]},externals:{contourLineMask:()=>Ep,luma709Dot:()=>E3}})&&e.f)({})),cV=y.fn([b,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Ep(t.w,s,r,o,n,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"levels\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"gamma\"},{type:\"i\",name:\"invert\"}],body:[0,[[10,[6,\"contourLineMask\",[[7,\"color\",\"w\"],\"levels\",\"lineWidth\",\"softness\",\"gamma\",\"invert\"]]]]]},externals:{contourLineMask:()=>Ep}})&&e.f)({})),uV=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Z(v(t.x,t.y,t.z),v(s.x,s.y,s.z),v(r)),n=Z(t.w,s.w,r);return b(o.x,o.y,o.z,n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"bg\"},{type:\"i\",name:\"line\"},{type:\"i\",name:\"mask\"}],body:[0,[[13,\"rgb\",[6,\"std.mix\",[[6,\"d.vec3f\",[[7,\"bg\",\"x\"],[7,\"bg\",\"y\"],[7,\"bg\",\"z\"]]],[6,\"d.vec3f\",[[7,\"line\",\"x\"],[7,\"line\",\"y\"],[7,\"line\",\"z\"]]],[6,\"d.vec3f\",[\"mask\"]]]]],[13,\"alpha\",[6,\"std.mix\",[[7,\"bg\",\"w\"],[7,\"line\",\"w\"],\"mask\"]]],[10,[6,\"d.vec4f\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],\"alpha\"]]]]]},externals:{\"std.mix\":()=>Z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),Da=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(__tsover_sub(ve(__tsover_mul(O(__tsover_mul(t,12.9898)),43758.5453)),.5),2)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"}],body:[0,[[10,[1,[1,[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,\"x\",\"*\",[5,\"12.9898\"]]]],\"*\",[5,\"43758.5453\"]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]]]]},externals:{\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({})),_V=y.fn([u,a,u,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(__tsover_mul(r.x,o),r.y),i=u(__tsover_mul(t.x,o),__tsover_sub(1,t.y)),d=n.sub(i),l=__tsover_mul(s,Qe),c=u(J(l),O(l)),_=u(__tsover_mul(c.y,-1),c.x),p=le(d,_),f=d.sub(_.mul(__tsover_mul(p,2))),h=i.add(f),g=u(__tsover_div(h.x,o),h.y),x=ot(0,p);return v(g.x,g.y,x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[\"centerPos\"]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"lineDirection\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angleRad\"]],[6,\"std.sin\",[\"angleRad\"]]]]],[13,\"lineNormal\",[6,\"d.vec2f\",[[1,[7,\"lineDirection\",\"y\"],\"*\",[4,\"-\",[5,\"1\"]]],[7,\"lineDirection\",\"x\"]]]],[13,\"signedDistance\",[6,\"std.dot\",[\"delta\",\"lineNormal\"]]],[13,\"reflectedDelta\",[6,[7,\"delta\",\"sub\"],[[6,[7,\"lineNormal\",\"mul\"],[[1,\"signedDistance\",\"*\",[5,\"2\"]]]]]]],[13,\"mirroredUV\",[6,[7,\"centerPos\",\"add\"],[\"reflectedDelta\"]]],[13,\"finalMirroredUV\",[6,\"d.vec2f\",[[1,[7,\"mirroredUV\",\"x\"],\"/\",\"aspect\"],[7,\"mirroredUV\",\"y\"]]]],[13,\"shouldMirror\",[6,\"std.step\",[[5,\"0\"],\"signedDistance\"]]],[10,[6,\"d.vec3f\",[[7,\"finalMirroredUV\",\"x\"],[7,\"finalMirroredUV\",\"y\"],\"shouldMirror\"]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.step\":()=>ot,\"d.vec3f\":()=>v}})&&e.f)({})),pV=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(F(t.x,__tsover_sub(1,t.x),s>0),F(t.y,__tsover_sub(1,t.y),r>0))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"flipX\"},{type:\"i\",name:\"flipY\"}],body:[0,[[13,\"x\",[6,\"std.select\",[[7,\"uv\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"uv\",\"x\"]],[1,\"flipX\",\">\",[5,\"0\"]]]]],[13,\"y\",[6,\"std.select\",[[7,\"uv\",\"y\"],[1,[5,\"1\"],\"-\",[7,\"uv\",\"y\"]],[1,\"flipY\",\">\",[5,\"0\"]]]]],[10,[6,\"d.vec2f\",[\"x\",\"y\"]]]]]},externals:{\"std.select\":()=>F,\"d.vec2f\":()=>u}})&&e.f)({})),xi=2,f2=1.2,mV=y.fn([a,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,Qe),d=u(J(i),O(i)),l=u(__tsover_mul(d.y,-1),d.x),c=u(__tsover_mul(__tsover_sub(o.x,.5),n),__tsover_sub(o.y,.5)),_=le(c,d),p=le(c,l),f=w(__tsover_mul(__tsover_add(__tsover_mul(W(d.x),n),W(d.y)),.5),.001),h=__tsover_div(_,f),g=__tsover_mul(t,f2),x=__tsover_mul(z(s,0,1),.9),T=__tsover_sub(1,x),S=W(h),A=F(a(-1),a(1),h>=0),E=__tsover_mul(g,S),M=__tsover_add(__tsover_mul(__tsover_mul(__tsover_mul(xi,xi),T),T),__tsover_mul(__tsover_mul(__tsover_mul(4,E),xi),__tsover_sub(S,x))),$=W(E)<1e-5,L=F(__tsover_mul(E,2),a(1),$),B=F(__tsover_div(__tsover_sub($e(w(M,0)),__tsover_mul(xi,T)),L),__tsover_div(__tsover_sub(S,x),T),$),D=F(a(6),w(B,0),M>=0),G=__tsover_mul(A,__tsover_add(x,__tsover_mul(D,T))),I=S<=x,X=F(G,h,I),H=F(__tsover_mul(__tsover_mul(g,D),D),a(0),I),ee=__tsover_div(__tsover_mul(p,__tsover_sub(xi,H)),xi),Q=d.mul(__tsover_mul(X,f)).add(l.mul(ee));return u(__tsover_add(__tsover_div(Q.x,n),.5),__tsover_add(Q.y,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"strength\"},{type:\"i\",name:\"falloff\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"dir\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angleRad\"]],[6,\"std.sin\",[\"angleRad\"]]]]],[13,\"perp\",[6,\"d.vec2f\",[[1,[7,\"dir\",\"y\"],\"*\",[4,\"-\",[5,\"1\"]]],[7,\"dir\",\"x\"]]]],[13,\"p\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]],[13,\"sScreen\",[6,\"std.dot\",[\"p\",\"dir\"]]],[13,\"tScreen\",[6,\"std.dot\",[\"p\",\"perp\"]]],[13,\"sHalf\",[6,\"std.max\",[[1,[1,[1,[6,\"std.abs\",[[7,\"dir\",\"x\"]]],\"*\",\"aspect\"],\"+\",[6,\"std.abs\",[[7,\"dir\",\"y\"]]]],\"*\",[5,\"0.5\"]],[5,\"0.001\"]]]],[13,\"snScreen\",[1,\"sScreen\",\"/\",\"sHalf\"]],[13,\"b\",[1,\"strength\",\"*\",\"B_MAX\"]],[13,\"f\",[1,[6,\"std.clamp\",[\"falloff\",[5,\"0\"],[5,\"1\"]]],\"*\",[5,\"0.9\"]]],[13,\"fSpan\",[1,[5,\"1\"],\"-\",\"f\"]],[13,\"m\",[6,\"std.abs\",[\"snScreen\"]]],[13,\"sig\",[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"snScreen\",\">=\",[5,\"0\"]]]]],[13,\"a2\",[1,\"b\",\"*\",\"m\"]],[13,\"disc\",[1,[1,[1,[1,\"CAMERA_D\",\"*\",\"CAMERA_D\"],\"*\",\"fSpan\"],\"*\",\"fSpan\"],\"+\",[1,[1,[1,[5,\"4\"],\"*\",\"a2\"],\"*\",\"CAMERA_D\"],\"*\",[1,\"m\",\"-\",\"f\"]]]],[13,\"nearZero\",[1,[6,\"std.abs\",[\"a2\"]],\"<\",[5,\"0.00001\"]]],[13,\"denom\",[6,\"std.select\",[[1,\"a2\",\"*\",[5,\"2\"]],[6,\"d.f32\",[[5,\"1\"]]],\"nearZero\"]]],[13,\"uQuad\",[1,[1,[6,\"std.sqrt\",[[6,\"std.max\",[\"disc\",[5,\"0\"]]]]],\"-\",[1,\"CAMERA_D\",\"*\",\"fSpan\"]],\"/\",\"denom\"]],[13,\"uOn\",[6,\"std.select\",[\"uQuad\",[1,[1,\"m\",\"-\",\"f\"],\"/\",\"fSpan\"],\"nearZero\"]]],[13,\"u\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"6\"]]],[6,\"std.max\",[\"uOn\",[5,\"0\"]]],[1,\"disc\",\">=\",[5,\"0\"]]]]],[13,\"snBend\",[1,\"sig\",\"*\",[1,\"f\",\"+\",[1,\"u\",\"*\",\"fSpan\"]]]],[13,\"inFlat\",[1,\"m\",\"<=\",\"f\"]],[13,\"sn\",[6,\"std.select\",[\"snBend\",\"snScreen\",\"inFlat\"]]],[13,\"z\",[6,\"std.select\",[[1,[1,\"b\",\"*\",\"u\"],\"*\",\"u\"],[6,\"d.f32\",[[5,\"0\"]]],\"inFlat\"]]],[13,\"tSrc\",[1,[1,\"tScreen\",\"*\",[1,\"CAMERA_D\",\"-\",\"z\"]],\"/\",\"CAMERA_D\"]],[13,\"srcP\",[6,[7,[6,[7,\"dir\",\"mul\"],[[1,\"sn\",\"*\",\"sHalf\"]]],\"add\"],[[6,[7,\"perp\",\"mul\"],[\"tSrc\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,[7,\"srcP\",\"x\"],\"/\",\"aspect\"],\"+\",[5,\"0.5\"]],[1,[7,\"srcP\",\"y\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.max\":()=>w,\"std.abs\":()=>W,B_MAX:()=>f2,\"std.clamp\":()=>z,\"std.select\":()=>F,\"d.f32\":()=>a,CAMERA_D:()=>xi,\"std.sqrt\":()=>$e}})&&e.f)({})),fV=y.fn([u,a,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(__tsover_mul(n.x,i),n.y),l=u(__tsover_mul(t.x,i),__tsover_sub(1,t.y)),c=d.sub(l),_=te(c),p=__tsover_mul(r,.5),f=__tsover_mul(p,w(__tsover_sub(__tsover_sub(1,o),.001),0)),h=__tsover_sub(1,ce(f,p,_)),g=__tsover_div(_,p),x=__tsover_mul(g,g),T=w(0,__tsover_sub(1,x)),S=__tsover_mul(h,T),A=__tsover_mul(s,-1),E=__tsover_mul(A,S),M=__tsover_add(1,E),$=c.mul(M),L=l.add($);return u(__tsover_div(L.x,i),L.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"falloff\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[\"centerPos\"]]],[13,\"distance\",[6,\"std.length\",[\"delta\"]]],[13,\"effectRadius\",[1,\"radius\",\"*\",[5,\"0.5\"]]],[13,\"innerRadius\",[1,\"effectRadius\",\"*\",[6,\"std.max\",[[1,[1,[5,\"1\"],\"-\",\"falloff\"],\"-\",[5,\"0.001\"]],[5,\"0\"]]]]],[13,\"smoothFalloff\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"innerRadius\",\"effectRadius\",\"distance\"]]]],[13,\"normalizedDist\",[1,\"distance\",\"/\",\"effectRadius\"]],[13,\"distSq\",[1,\"normalizedDist\",\"*\",\"normalizedDist\"]],[13,\"quadraticFalloff\",[6,\"std.max\",[[5,\"0\"],[1,[5,\"1\"],\"-\",\"distSq\"]]]],[13,\"falloffTotal\",[1,\"smoothFalloff\",\"*\",\"quadraticFalloff\"]],[13,\"negStrength\",[1,\"strength\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"displacementAmount\",[1,\"negStrength\",\"*\",\"falloffTotal\"]],[13,\"scaleFactor\",[1,[5,\"1\"],\"+\",\"displacementAmount\"]],[13,\"bulgedDelta\",[6,[7,\"delta\",\"mul\"],[\"scaleFactor\"]]],[13,\"bulgedUV\",[6,[7,\"centerPos\",\"add\"],[\"bulgedDelta\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"bulgedUV\",\"x\"],\"/\",\"aspect\"],[7,\"bulgedUV\",\"y\"]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.max\":()=>w,\"std.smoothstep\":()=>ce}})&&e.f)({})),vV=y.fn([u,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(t.x,__tsover_sub(1,t.y)),i=r.sub(n),d=u(__tsover_mul(i.x,o),i.y),l=__tsover_mul(s,te(d)),c=J(l),_=O(l),p=__tsover_sub(__tsover_mul(c,d.x),__tsover_mul(_,d.y)),f=__tsover_add(__tsover_mul(_,d.x),__tsover_mul(c,d.y));return u(__tsover_add(__tsover_div(p,o),n.x),__tsover_add(f,n.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"uv\",\"sub\"],[\"centerPos\"]]],[13,\"acd\",[6,\"d.vec2f\",[[1,[7,\"delta\",\"x\"],\"*\",\"aspect\"],[7,\"delta\",\"y\"]]]],[13,\"angle\",[1,\"intensity\",\"*\",[6,\"std.length\",[\"acd\"]]]],[13,\"cosA\",[6,\"std.cos\",[\"angle\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angle\"]]],[13,\"rotatedX\",[1,[1,\"cosA\",\"*\",[7,\"acd\",\"x\"]],\"-\",[1,\"sinA\",\"*\",[7,\"acd\",\"y\"]]]],[13,\"rotatedY\",[1,[1,\"sinA\",\"*\",[7,\"acd\",\"x\"]],\"+\",[1,\"cosA\",\"*\",[7,\"acd\",\"y\"]]]],[10,[6,\"d.vec2f\",[[1,[1,\"rotatedX\",\"/\",\"aspect\"],\"+\",[7,\"centerPos\",\"x\"]],[1,\"rotatedY\",\"+\",[7,\"centerPos\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),hV=y.fn([u,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(o.x,n),o.y),d=u(__tsover_mul(t.x,n),__tsover_sub(1,t.y)),l=i.sub(d),c=te(l),_=bt(l.y,l.x),p=__tsover_add(_,__tsover_mul(r,Qe)),f=__tsover_div(Et,s),h=__tsover_mul(f,2),g=__tsover_sub(p,__tsover_mul(h,K(__tsover_div(p,h)))),x=F(g,__tsover_sub(h,g),g>f),T=__tsover_mul(J(x),c),S=__tsover_mul(O(x),c),A=d.add(u(T,S));return u(__tsover_div(A.x,n),A.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"segments\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[\"centerPos\"]]],[13,\"radius\",[6,\"std.length\",[\"delta\"]]],[13,\"currentAngle\",[6,\"std.atan2\",[[7,\"delta\",\"y\"],[7,\"delta\",\"x\"]]]],[13,\"rotatedAngle\",[1,\"currentAngle\",\"+\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]]],[13,\"segmentAngle\",[1,\"TAU\",\"/\",\"segments\"]],[13,\"segTwo\",[1,\"segmentAngle\",\"*\",[5,\"2\"]]],[13,\"wrappedAngle\",[1,\"rotatedAngle\",\"-\",[1,\"segTwo\",\"*\",[6,\"std.floor\",[[1,\"rotatedAngle\",\"/\",\"segTwo\"]]]]]],[13,\"finalAngle\",[6,\"std.select\",[\"wrappedAngle\",[1,\"segTwo\",\"-\",\"wrappedAngle\"],[1,\"wrappedAngle\",\">\",\"segmentAngle\"]]]],[13,\"kaleidoscopeX\",[1,[6,\"std.cos\",[\"finalAngle\"]],\"*\",\"radius\"]],[13,\"kaleidoscopeY\",[1,[6,\"std.sin\",[\"finalAngle\"]],\"*\",\"radius\"]],[13,\"kaleidoscopePos\",[6,[7,\"centerPos\",\"add\"],[[6,\"d.vec2f\",[\"kaleidoscopeX\",\"kaleidoscopeY\"]]]]],[10,[6,\"d.vec2f\",[[1,[7,\"kaleidoscopePos\",\"x\"],\"/\",\"aspect\"],[7,\"kaleidoscopePos\",\"y\"]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.atan2\":()=>bt,DEG_TO_RAD:()=>Qe,TAU:()=>Et,\"std.floor\":()=>K,\"std.select\":()=>F,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),yV=y.fn([u,a,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(__tsover_mul(n.x,i),n.y),l=u(__tsover_mul(t.x,i),__tsover_sub(1,t.y)),c=d.sub(l),_=__tsover_mul(r,Qe),p=u(J(_),O(_)),f=le(c,p),h=p.mul(f),g=c.sub(h),x=Z(.001,75,o),T=z(__tsover_div(f,x),0,1),S=__tsover_mul(s,100),A=__tsover_add(1,__tsover_mul(S,T)),E=__tsover_div(f,A),M=p.mul(E).add(g),$=l.add(M);return u(__tsover_div($.x,i),$.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"falloff\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[\"centerPos\"]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"directionVector\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angleRad\"]],[6,\"std.sin\",[\"angleRad\"]]]]],[13,\"projection\",[6,\"std.dot\",[\"delta\",\"directionVector\"]]],[13,\"parallel\",[6,[7,\"directionVector\",\"mul\"],[\"projection\"]]],[13,\"perpendicular\",[6,[7,\"delta\",\"sub\"],[\"parallel\"]]],[13,\"transitionWidth\",[6,\"std.mix\",[[5,\"0.001\"],[5,\"75\"],\"falloff\"]]],[13,\"effectMask\",[6,\"std.clamp\",[[1,\"projection\",\"/\",\"transitionWidth\"],[5,\"0\"],[5,\"1\"]]]],[13,\"scaledStrength\",[1,\"strength\",\"*\",[5,\"100\"]]],[13,\"stretchFactor\",[1,[5,\"1\"],\"+\",[1,\"scaledStrength\",\"*\",\"effectMask\"]]],[13,\"finalProjection\",[1,\"projection\",\"/\",\"stretchFactor\"]],[13,\"finalParallel\",[6,[7,\"directionVector\",\"mul\"],[\"finalProjection\"]]],[13,\"stretchedDelta\",[6,[7,\"finalParallel\",\"add\"],[\"perpendicular\"]]],[13,\"stretchedUV\",[6,[7,\"centerPos\",\"add\"],[\"stretchedDelta\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"stretchedUV\",\"x\"],\"/\",\"aspect\"],[7,\"stretchedUV\",\"y\"]]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.mix\":()=>Z,\"std.clamp\":()=>z}})&&e.f)({})),jn=y.fn([u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=t.sub(u(.5,.5)),d=u(__tsover_mul(i.x,s),i.y),l=__tsover_mul(r,Qe),c=J(l),_=O(l),p=__tsover_add(__tsover_mul(d.x,_),__tsover_mul(d.y,c));return __tsover_add(__tsover_mul(__tsover_mul(__tsover_add(p,.5),o),Et),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"centeredUV\",\"x\"],\"*\",\"aspect\"],[7,\"centeredUV\",\"y\"]]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rotatedY\",[1,[1,[7,\"aspectCorrectedUV\",\"x\"],\"*\",\"sinA\"],\"+\",[1,[7,\"aspectCorrectedUV\",\"y\"],\"*\",\"cosA\"]]],[10,[1,[1,[1,[1,\"rotatedY\",\"+\",[5,\"0.5\"]],\"*\",\"frequency\"],\"*\",\"TAU\"],\"+\",\"t\"]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,TAU:()=>Et}})&&e.f)({})),Kn=y.fn([u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,Qe),d=J(i),l=O(i),c=__tsover_mul(__tsover_mul(n,o),.5),_=__tsover_div(__tsover_mul(c,d),s),p=__tsover_mul(c,l);return u(__tsover_add(t.x,_),__tsover_add(t.y,p))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"wave\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"displacement\",[1,[1,\"wave\",\"*\",\"strength\"],\"*\",[5,\"0.5\"]]],[13,\"displacementX\",[1,[1,\"displacement\",\"*\",\"cosA\"],\"/\",\"aspect\"]],[13,\"displacementY\",[1,\"displacement\",\"*\",\"sinA\"]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",\"displacementX\"],[1,[7,\"uv\",\"y\"],\"+\",\"displacementY\"]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),v2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return O(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[10,[6,\"std.sin\",[\"phase\"]]]]]},externals:{\"std.sin\":()=>O}})&&e.f)({})),h2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ve(__tsover_div(t,Et));return __tsover_sub(__tsover_mul(W(__tsover_sub(__tsover_mul(s,2),1)),2),1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[13,\"normalizedPhase\",[6,\"std.fract\",[[1,\"phase\",\"/\",\"TAU\"]]]],[10,[1,[1,[6,\"std.abs\",[[1,[1,\"normalizedPhase\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]],\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]]},externals:{\"std.fract\":()=>ve,TAU:()=>Et,\"std.abs\":()=>W}})&&e.f)({})),y2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ve(__tsover_div(t,Et));return __tsover_sub(__tsover_mul(ot(.5,s),2),1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[13,\"normalizedPhase\",[6,\"std.fract\",[[1,\"phase\",\"/\",\"TAU\"]]]],[10,[1,[1,[6,\"std.step\",[[5,\"0.5\"],\"normalizedPhase\"]],\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]]},externals:{\"std.fract\":()=>ve,TAU:()=>Et,\"std.step\":()=>ot}})&&e.f)({})),g2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ve(__tsover_div(t,Et));return __tsover_sub(__tsover_mul(s,2),1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[13,\"normalizedPhase\",[6,\"std.fract\",[[1,\"phase\",\"/\",\"TAU\"]]]],[10,[1,[1,\"normalizedPhase\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]]},externals:{\"std.fract\":()=>ve,TAU:()=>Et}})&&e.f)({})),x2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return W(O(t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[10,[6,\"std.abs\",[[6,\"std.sin\",[\"phase\"]]]]]]]},externals:{\"std.abs\":()=>W,\"std.sin\":()=>O}})&&e.f)({})),gV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Kn(t,s,r,n,v2(jn(t,s,r,o,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"wave\",[6,\"waveformSine\",[[6,\"wavePhase\",[\"uv\",\"aspect\",\"angle\",\"frequency\",\"t\"]]]]],[10,[6,\"waveApply\",[\"uv\",\"aspect\",\"angle\",\"strength\",\"wave\"]]]]]},externals:{waveformSine:()=>v2,wavePhase:()=>jn,waveApply:()=>Kn}})&&e.f)({})),xV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Kn(t,s,r,n,h2(jn(t,s,r,o,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"wave\",[6,\"waveformTriangle\",[[6,\"wavePhase\",[\"uv\",\"aspect\",\"angle\",\"frequency\",\"t\"]]]]],[10,[6,\"waveApply\",[\"uv\",\"aspect\",\"angle\",\"strength\",\"wave\"]]]]]},externals:{waveformTriangle:()=>h2,wavePhase:()=>jn,waveApply:()=>Kn}})&&e.f)({})),bV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Kn(t,s,r,n,y2(jn(t,s,r,o,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"wave\",[6,\"waveformSquare\",[[6,\"wavePhase\",[\"uv\",\"aspect\",\"angle\",\"frequency\",\"t\"]]]]],[10,[6,\"waveApply\",[\"uv\",\"aspect\",\"angle\",\"strength\",\"wave\"]]]]]},externals:{waveformSquare:()=>y2,wavePhase:()=>jn,waveApply:()=>Kn}})&&e.f)({})),wV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Kn(t,s,r,n,g2(jn(t,s,r,o,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"wave\",[6,\"waveformSawtooth\",[[6,\"wavePhase\",[\"uv\",\"aspect\",\"angle\",\"frequency\",\"t\"]]]]],[10,[6,\"waveApply\",[\"uv\",\"aspect\",\"angle\",\"strength\",\"wave\"]]]]]},externals:{waveformSawtooth:()=>g2,wavePhase:()=>jn,waveApply:()=>Kn}})&&e.f)({})),TV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return Kn(t,s,r,n,x2(jn(t,s,r,o,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"wave\",[6,\"waveformBounce\",[[6,\"wavePhase\",[\"uv\",\"aspect\",\"angle\",\"frequency\",\"t\"]]]]],[10,[6,\"waveApply\",[\"uv\",\"aspect\",\"angle\",\"strength\",\"wave\"]]]]]},externals:{waveformBounce:()=>x2,wavePhase:()=>jn,waveApply:()=>Kn}})&&e.f)({})),SV=y.fn([u,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(o.x,n),o.y),d=u(__tsover_mul(t.x,n),__tsover_sub(1,t.y)),l=i.sub(d),c=bt(l.y,l.x),_=__tsover_div(__tsover_add(c,ko),Et),p=te(l);return u(__tsover_mul(_,s),__tsover_mul(p,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"wrap\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[\"centerPos\"]]],[13,\"theta\",[6,\"std.atan2\",[[7,\"delta\",\"y\"],[7,\"delta\",\"x\"]]]],[13,\"normalizedAngle\",[1,[1,\"theta\",\"+\",\"PI\"],\"/\",\"TAU\"]],[13,\"r\",[6,\"std.length\",[\"delta\"]]],[13,\"u\",[1,\"normalizedAngle\",\"*\",\"wrap\"]],[13,\"v\",[1,\"r\",\"*\",\"radius\"]],[10,[6,\"d.vec2f\",[\"u\",\"v\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.atan2\":()=>bt,PI:()=>ko,TAU:()=>Et,\"std.length\":()=>te}})&&e.f)({})),AV=y.fn([u,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_sub(__tsover_mul(r.x,Et),ko),i=__tsover_mul(r.y,s),d=__tsover_mul(i,J(n)),l=__tsover_mul(i,O(n)),c=u(t.x,__tsover_sub(1,t.y));return u(__tsover_add(__tsover_div(d,o),c.x),__tsover_add(l,c.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"theta\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"TAU\"],\"-\",\"PI\"]],[13,\"r\",[1,[7,\"uv\",\"y\"],\"*\",\"scale\"]],[13,\"rectX\",[1,\"r\",\"*\",[6,\"std.cos\",[\"theta\"]]]],[13,\"rectY\",[1,\"r\",\"*\",[6,\"std.sin\",[\"theta\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,\"rectX\",\"/\",\"aspect\"],\"+\",[7,\"centerPos\",\"x\"]],[1,\"rectY\",\"+\",[7,\"centerPos\",\"y\"]]]]]]]},externals:{TAU:()=>Et,PI:()=>ko,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),Pd=1e-8,Il=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_div(t,F(s,Pd,W(s)<Pd))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"n\"},{type:\"i\",name:\"dv\"}],body:[0,[[10,[1,\"n\",\"/\",[6,\"std.select\",[\"dv\",\"EPS\",[1,[6,\"std.abs\",[\"dv\"]],\"<\",\"EPS\"]]]]]]]},externals:{\"std.select\":()=>F,EPS:()=>Pd,\"std.abs\":()=>W}})&&e.f)({})),xd=y.fn([u,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(r.x,s.x),n=__tsover_sub(r.y,s.y),i=__tsover_sub(t.x,s.x),d=__tsover_sub(t.y,s.y);return __tsover_sub(__tsover_mul(o,d),__tsover_mul(n,i))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"}],body:[0,[[13,\"bax\",[1,[7,\"b\",\"x\"],\"-\",[7,\"a\",\"x\"]]],[13,\"bay\",[1,[7,\"b\",\"y\"],\"-\",[7,\"a\",\"y\"]]],[13,\"pax\",[1,[7,\"p\",\"x\"],\"-\",[7,\"a\",\"x\"]]],[13,\"pay\",[1,[7,\"p\",\"y\"],\"-\",[7,\"a\",\"y\"]]],[10,[1,[1,\"bax\",\"*\",\"pay\"],\"-\",[1,\"bay\",\"*\",\"pax\"]]]]]},externals:{}})&&e.f)({})),b2=y.fn([u,u,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=xd(t,s,r),i=xd(t,r,o),d=xd(t,o,s),l=__tsover_mul(__tsover_mul(ot(a(0),n),ot(a(0),i)),ot(a(0),d)),c=__tsover_mul(__tsover_mul(ot(n,a(0)),ot(i,a(0))),ot(d,a(0)));return __tsover_add(l,c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"c\"}],body:[0,[[13,\"d1\",[6,\"cornerSideOf\",[\"p\",\"a\",\"b\"]]],[13,\"d2\",[6,\"cornerSideOf\",[\"p\",\"b\",\"c\"]]],[13,\"d3\",[6,\"cornerSideOf\",[\"p\",\"c\",\"a\"]]],[13,\"allPos\",[1,[1,[6,\"std.step\",[[6,\"d.f32\",[[5,\"0\"]]],\"d1\"]],\"*\",[6,\"std.step\",[[6,\"d.f32\",[[5,\"0\"]]],\"d2\"]]],\"*\",[6,\"std.step\",[[6,\"d.f32\",[[5,\"0\"]]],\"d3\"]]]],[13,\"allNeg\",[1,[1,[6,\"std.step\",[\"d1\",[6,\"d.f32\",[[5,\"0\"]]]]],\"*\",[6,\"std.step\",[\"d2\",[6,\"d.f32\",[[5,\"0\"]]]]]],\"*\",[6,\"std.step\",[\"d3\",[6,\"d.f32\",[[5,\"0\"]]]]]]],[10,[1,\"allPos\",\"+\",\"allNeg\"]]]]},externals:{cornerSideOf:()=>xd,\"std.step\":()=>ot,\"d.f32\":()=>a}})&&e.f)({})),w2=y.fn([u,u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=r.sub(s),i=z(__tsover_div(le(t.sub(s),n),w(le(n,n),Pd)),0,1),d=s.add(n.mul(i)),l=u(__tsover_mul(n.y,-1),n.x).div(w(te(n),Pd)),c=__tsover_mul(__tsover_mul(ir(o),-1),.004);return d.add(l.mul(c))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"refSide\"}],body:[0,[[13,\"ab\",[6,[7,\"b\",\"sub\"],[\"a\"]]],[13,\"t\",[6,\"std.clamp\",[[1,[6,\"std.dot\",[[6,[7,\"p\",\"sub\"],[\"a\"]],\"ab\"]],\"/\",[6,\"std.max\",[[6,\"std.dot\",[\"ab\",\"ab\"]],\"EPS\"]]],[5,\"0\"],[5,\"1\"]]]],[13,\"foot\",[6,[7,\"a\",\"add\"],[[6,[7,\"ab\",\"mul\"],[\"t\"]]]]],[13,\"perp\",[6,[7,[6,\"d.vec2f\",[[1,[7,\"ab\",\"y\"],\"*\",[4,\"-\",[5,\"1\"]]],[7,\"ab\",\"x\"]]],\"div\"],[[6,\"std.max\",[[6,\"std.length\",[\"ab\"]],\"EPS\"]]]]],[13,\"nudge\",[1,[1,[6,\"std.sign\",[\"refSide\"]],\"*\",[4,\"-\",[5,\"1\"]]],\"*\",[5,\"0.004\"]]],[10,[6,[7,\"foot\",\"add\"],[[6,[7,\"perp\",\"mul\"],[\"nudge\"]]]]]]]},externals:{\"std.clamp\":()=>z,\"std.dot\":()=>le,\"std.max\":()=>w,EPS:()=>Pd,\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.sign\":()=>ir}})&&e.f)({})),Yl=y.fn([u,u,u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=b2(t,s,r,o)>.5;return F(t,w2(t,s,r,xd(o,s,r)),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"o\"}],body:[0,[[13,\"inside\",[1,[6,\"cornerInsideTri\",[\"p\",\"a\",\"b\",\"o\"]],\">\",[5,\"0.5\"]]],[13,\"proj\",[6,\"cornerProjectToDiagonal\",[\"p\",\"a\",\"b\",[6,\"cornerSideOf\",[\"o\",\"a\",\"b\"]]]]],[10,[6,\"std.select\",[\"p\",\"proj\",\"inside\"]]]]]},externals:{cornerInsideTri:()=>b2,cornerProjectToDiagonal:()=>w2,cornerSideOf:()=>xd,\"std.select\":()=>F}})&&e.f)({})),EV=y.fn([u,a,u,u,u,u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(s,s),l=Z(u(0,0),u(r.x,__tsover_sub(1,r.y)),d),c=Z(u(1,0),u(o.x,__tsover_sub(1,o.y)),d),_=Z(u(1,1),u(n.x,__tsover_sub(1,n.y)),d),p=Z(u(0,1),u(i.x,__tsover_sub(1,i.y)),d),f=Yl(l,c,p,_),h=Yl(c,l,_,p),g=Yl(_,c,p,l),x=Yl(p,l,_,c),T=__tsover_sub(h.x,g.x),S=__tsover_sub(x.x,g.x),A=__tsover_sub(__tsover_add(__tsover_sub(f.x,h.x),g.x),x.x),E=__tsover_sub(h.y,g.y),M=__tsover_sub(x.y,g.y),$=__tsover_sub(__tsover_add(__tsover_sub(f.y,h.y),g.y),x.y),L=__tsover_sub(__tsover_mul(T,M),__tsover_mul(S,E)),B=Il(__tsover_sub(__tsover_mul(A,M),__tsover_mul(S,$)),L),D=Il(__tsover_sub(__tsover_mul(T,$),__tsover_mul(A,E)),L),G=__tsover_add(__tsover_sub(h.x,f.x),__tsover_mul(B,h.x)),I=__tsover_add(__tsover_sub(x.x,f.x),__tsover_mul(D,x.x)),X=f.x,H=__tsover_add(__tsover_sub(h.y,f.y),__tsover_mul(B,h.y)),ee=__tsover_add(__tsover_sub(x.y,f.y),__tsover_mul(D,x.y)),Q=f.y,de=__tsover_sub(ee,__tsover_mul(Q,D)),Ee=__tsover_mul(__tsover_sub(I,__tsover_mul(X,D)),-1),he=__tsover_sub(__tsover_mul(I,Q),__tsover_mul(X,ee)),Me=__tsover_mul(__tsover_sub(H,__tsover_mul(Q,B)),-1),Te=__tsover_sub(G,__tsover_mul(X,B)),Pe=__tsover_mul(__tsover_sub(__tsover_mul(G,Q),__tsover_mul(X,H)),-1),Ce=__tsover_sub(__tsover_mul(H,D),__tsover_mul(ee,B)),ie=__tsover_mul(__tsover_sub(__tsover_mul(G,D),__tsover_mul(I,B)),-1),Ne=__tsover_sub(__tsover_mul(G,ee),__tsover_mul(I,H)),ye=t.x,Ve=t.y,qe=__tsover_add(__tsover_add(__tsover_mul(Ce,ye),__tsover_mul(ie,Ve)),Ne),st=Il(__tsover_add(__tsover_add(__tsover_mul(de,ye),__tsover_mul(Ee,Ve)),he),qe),We=Il(__tsover_add(__tsover_add(__tsover_mul(Me,ye),__tsover_mul(Te,Ve)),Pe),qe),Be=__tsover_add(__tsover_add(__tsover_mul(G,de),__tsover_mul(I,Me)),__tsover_mul(X,Ce));return v(st,We,ot(a(0),__tsover_mul(qe,Be)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"c0\"},{type:\"i\",name:\"c1\"},{type:\"i\",name:\"c2\"},{type:\"i\",name:\"c3\"}],body:[0,[[13,\"amt\",[6,\"d.vec2f\",[\"amount\",\"amount\"]]],[13,\"r0\",[6,\"std.mix\",[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]],[6,\"d.vec2f\",[[7,\"c0\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"c0\",\"y\"]]]],\"amt\"]]],[13,\"r1\",[6,\"std.mix\",[[6,\"d.vec2f\",[[5,\"1\"],[5,\"0\"]]],[6,\"d.vec2f\",[[7,\"c1\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"c1\",\"y\"]]]],\"amt\"]]],[13,\"r2\",[6,\"std.mix\",[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]],[6,\"d.vec2f\",[[7,\"c2\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"c2\",\"y\"]]]],\"amt\"]]],[13,\"r3\",[6,\"std.mix\",[[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]],[6,\"d.vec2f\",[[7,\"c3\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"c3\",\"y\"]]]],\"amt\"]]],[13,\"q0\",[6,\"cornerConvexify\",[\"r0\",\"r1\",\"r3\",\"r2\"]]],[13,\"q1\",[6,\"cornerConvexify\",[\"r1\",\"r0\",\"r2\",\"r3\"]]],[13,\"q2\",[6,\"cornerConvexify\",[\"r2\",\"r1\",\"r3\",\"r0\"]]],[13,\"q3\",[6,\"cornerConvexify\",[\"r3\",\"r0\",\"r2\",\"r1\"]]],[13,\"dx1\",[1,[7,\"q1\",\"x\"],\"-\",[7,\"q2\",\"x\"]]],[13,\"dx2\",[1,[7,\"q3\",\"x\"],\"-\",[7,\"q2\",\"x\"]]],[13,\"dx3\",[1,[1,[1,[7,\"q0\",\"x\"],\"-\",[7,\"q1\",\"x\"]],\"+\",[7,\"q2\",\"x\"]],\"-\",[7,\"q3\",\"x\"]]],[13,\"dy1\",[1,[7,\"q1\",\"y\"],\"-\",[7,\"q2\",\"y\"]]],[13,\"dy2\",[1,[7,\"q3\",\"y\"],\"-\",[7,\"q2\",\"y\"]]],[13,\"dy3\",[1,[1,[1,[7,\"q0\",\"y\"],\"-\",[7,\"q1\",\"y\"]],\"+\",[7,\"q2\",\"y\"]],\"-\",[7,\"q3\",\"y\"]]],[13,\"denA\",[1,[1,\"dx1\",\"*\",\"dy2\"],\"-\",[1,\"dx2\",\"*\",\"dy1\"]]],[13,\"a13\",[6,\"cornerPinSafeDiv\",[[1,[1,\"dx3\",\"*\",\"dy2\"],\"-\",[1,\"dx2\",\"*\",\"dy3\"]],\"denA\"]]],[13,\"a23\",[6,\"cornerPinSafeDiv\",[[1,[1,\"dx1\",\"*\",\"dy3\"],\"-\",[1,\"dx3\",\"*\",\"dy1\"]],\"denA\"]]],[13,\"a11\",[1,[1,[7,\"q1\",\"x\"],\"-\",[7,\"q0\",\"x\"]],\"+\",[1,\"a13\",\"*\",[7,\"q1\",\"x\"]]]],[13,\"a21\",[1,[1,[7,\"q3\",\"x\"],\"-\",[7,\"q0\",\"x\"]],\"+\",[1,\"a23\",\"*\",[7,\"q3\",\"x\"]]]],[13,\"a31\",[7,\"q0\",\"x\"]],[13,\"a12\",[1,[1,[7,\"q1\",\"y\"],\"-\",[7,\"q0\",\"y\"]],\"+\",[1,\"a13\",\"*\",[7,\"q1\",\"y\"]]]],[13,\"a22\",[1,[1,[7,\"q3\",\"y\"],\"-\",[7,\"q0\",\"y\"]],\"+\",[1,\"a23\",\"*\",[7,\"q3\",\"y\"]]]],[13,\"a32\",[7,\"q0\",\"y\"]],[13,\"c00\",[1,\"a22\",\"-\",[1,\"a32\",\"*\",\"a23\"]]],[13,\"c10\",[1,[1,\"a21\",\"-\",[1,\"a31\",\"*\",\"a23\"]],\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"c20\",[1,[1,\"a21\",\"*\",\"a32\"],\"-\",[1,\"a31\",\"*\",\"a22\"]]],[13,\"c01\",[1,[1,\"a12\",\"-\",[1,\"a32\",\"*\",\"a13\"]],\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"c11\",[1,\"a11\",\"-\",[1,\"a31\",\"*\",\"a13\"]]],[13,\"c21\",[1,[1,[1,\"a11\",\"*\",\"a32\"],\"-\",[1,\"a31\",\"*\",\"a12\"]],\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"c02\",[1,[1,\"a12\",\"*\",\"a23\"],\"-\",[1,\"a22\",\"*\",\"a13\"]]],[13,\"c12\",[1,[1,[1,\"a11\",\"*\",\"a23\"],\"-\",[1,\"a21\",\"*\",\"a13\"]],\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"c22\",[1,[1,\"a11\",\"*\",\"a22\"],\"-\",[1,\"a21\",\"*\",\"a12\"]]],[13,\"px\",[7,\"coord\",\"x\"]],[13,\"py\",[7,\"coord\",\"y\"]],[13,\"den\",[1,[1,[1,\"c02\",\"*\",\"px\"],\"+\",[1,\"c12\",\"*\",\"py\"]],\"+\",\"c22\"]],[13,\"su\",[6,\"cornerPinSafeDiv\",[[1,[1,[1,\"c00\",\"*\",\"px\"],\"+\",[1,\"c10\",\"*\",\"py\"]],\"+\",\"c20\"],\"den\"]]],[13,\"sv\",[6,\"cornerPinSafeDiv\",[[1,[1,[1,\"c01\",\"*\",\"px\"],\"+\",[1,\"c11\",\"*\",\"py\"]],\"+\",\"c21\"],\"den\"]]],[13,\"det\",[1,[1,[1,\"a11\",\"*\",\"c00\"],\"+\",[1,\"a21\",\"*\",\"c01\"]],\"+\",[1,\"a31\",\"*\",\"c02\"]]],[13,\"front\",[6,\"std.step\",[[6,\"d.f32\",[[5,\"0\"]]],[1,\"den\",\"*\",\"det\"]]]],[10,[6,\"d.vec3f\",[\"su\",\"sv\",\"front\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.mix\":()=>Z,cornerConvexify:()=>Yl,cornerPinSafeDiv:()=>Il,\"std.step\":()=>ot,\"d.f32\":()=>a,\"d.vec3f\":()=>v}})&&e.f)({})),PV=y.fn([u,a,a,a,a,u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=u(t.x,__tsover_sub(1,t.y)),c=__tsover_div(__tsover_sub(d.x,l.x),n),_=__tsover_div(__tsover_sub(d.y,l.y),n),p=__tsover_mul(s,Qe),f=__tsover_mul(r,Qe),h=__tsover_mul(o,Qe),g=J(p),x=O(p),T=J(f),S=O(f),A=__tsover_mul(Zf(__tsover_mul(h,.5)),2),E=w(__tsover_add(g,__tsover_mul(__tsover_mul(x,c),A)),.001),M=__tsover_div(c,E),$=__tsover_div(__tsover_mul(_,g),E),L=w(__tsover_add(T,__tsover_mul(__tsover_mul(S,$),A)),.001),B=__tsover_div(__tsover_mul(M,T),L),D=__tsover_div($,L),G=u(i.x,__tsover_sub(1,i.y));return u(B,D).add(l).sub(G).add(u(.5,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"pan\"},{type:\"i\",name:\"tilt\"},{type:\"i\",name:\"fov\"},{type:\"i\",name:\"zoom\"},{type:\"i\",name:\"offset\"},{type:\"i\",name:\"uv\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"x\",[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]],\"/\",\"zoom\"]],[13,\"y\",[1,[1,[7,\"uv\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]],\"/\",\"zoom\"]],[13,\"panRad\",[1,\"pan\",\"*\",\"DEG_TO_RAD\"]],[13,\"tiltRad\",[1,\"tilt\",\"*\",\"DEG_TO_RAD\"]],[13,\"fovRad\",[1,\"fov\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosPan\",[6,\"std.cos\",[\"panRad\"]]],[13,\"sinPan\",[6,\"std.sin\",[\"panRad\"]]],[13,\"cosTilt\",[6,\"std.cos\",[\"tiltRad\"]]],[13,\"sinTilt\",[6,\"std.sin\",[\"tiltRad\"]]],[13,\"perspectiveFactor\",[1,[6,\"std.tan\",[[1,\"fovRad\",\"*\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"panDivisor\",[1,\"cosPan\",\"+\",[1,[1,\"sinPan\",\"*\",\"x\"],\"*\",\"perspectiveFactor\"]]],[13,\"safePanDivisor\",[6,\"std.max\",[\"panDivisor\",[5,\"0.001\"]]]],[13,\"afterPanX\",[1,\"x\",\"/\",\"safePanDivisor\"]],[13,\"afterPanY\",[1,[1,\"y\",\"*\",\"cosPan\"],\"/\",\"safePanDivisor\"]],[13,\"tiltDivisor\",[1,\"cosTilt\",\"+\",[1,[1,\"sinTilt\",\"*\",\"afterPanY\"],\"*\",\"perspectiveFactor\"]]],[13,\"safeTiltDivisor\",[6,\"std.max\",[\"tiltDivisor\",[5,\"0.001\"]]]],[13,\"finalX\",[1,[1,\"afterPanX\",\"*\",\"cosTilt\"],\"/\",\"safeTiltDivisor\"]],[13,\"finalY\",[1,\"afterPanY\",\"/\",\"safeTiltDivisor\"]],[13,\"offsetPos\",[6,\"d.vec2f\",[[7,\"offset\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"offset\",\"y\"]]]]],[10,[6,[7,[6,[7,[6,[7,[6,\"d.vec2f\",[\"finalX\",\"finalY\"]],\"add\"],[\"centerPos\"]],\"sub\"],[\"offsetPos\"]],\"add\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.tan\":()=>Zf,\"std.max\":()=>w}})&&e.f)({})),T2=y.fn([u,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(r.x,__tsover_sub(1,r.y)),i=__tsover_mul(__tsover_sub(t.x,n.x),s),d=__tsover_sub(t.y,n.y),l=J(o),c=O(o),_=__tsover_sub(__tsover_mul(i,l),__tsover_mul(d,c)),p=__tsover_add(__tsover_mul(i,c),__tsover_mul(d,l));return u(__tsover_add(__tsover_div(_,s),n.x),__tsover_add(p,n.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"angle\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]],\"*\",\"aspect\"]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"cosA\",[6,\"std.cos\",[\"angle\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angle\"]]],[13,\"rotX\",[1,[1,\"dx\",\"*\",\"cosA\"],\"-\",[1,\"dy\",\"*\",\"sinA\"]]],[13,\"rotY\",[1,[1,\"dx\",\"*\",\"sinA\"],\"+\",[1,\"dy\",\"*\",\"cosA\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"rotX\",\"/\",\"aspect\"],\"+\",[7,\"centerPos\",\"x\"]],[1,\"rotY\",\"+\",[7,\"centerPos\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),MV=y.fn([u,a,a,a,a,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c)=>{\"use gpu\";let _=u(t.x,__tsover_sub(1,t.y)),p=te(u(__tsover_mul(__tsover_sub(l.x,_.x),c),__tsover_sub(l.y,_.y))),f=__tsover_mul(p,r),h=K(f),g=ve(f),x=__tsover_mul(s,Qe),T=__tsover_mul(n,.137),S=__tsover_mul(Da(__tsover_add(h,T)),x),A=__tsover_mul(Da(__tsover_add(__tsover_add(h,1),T)),x),E=Z(1,Da(__tsover_add(h,42.7)),i),M=Z(1,Da(__tsover_add(__tsover_add(h,1),42.7)),i),$=__tsover_mul(__tsover_mul(d,.25),E),L=__tsover_mul(__tsover_mul(d,.25),M),B=__tsover_add(S,$),D=__tsover_add(A,L),G=__tsover_add(__tsover_sub(D,B),ko),I=__tsover_sub(__tsover_sub(G,__tsover_mul(Et,K(__tsover_div(G,Et)))),ko),X=__tsover_add(__tsover_mul(o,.5),.001),H=ce(__tsover_sub(.5,X),__tsover_add(.5,X),g);return T2(l,c,t,__tsover_add(B,__tsover_mul(I,H)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"rings\"},{type:\"i\",name:\"smoothness\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"speedRandomness\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]],\"*\",\"aspect\"]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"dist\",[6,\"std.length\",[[6,\"d.vec2f\",[\"dx\",\"dy\"]]]]],[13,\"ringCoord\",[1,\"dist\",\"*\",\"rings\"]],[13,\"ringIndex\",[6,\"std.floor\",[\"ringCoord\"]]],[13,\"ringFrac\",[6,\"std.fract\",[\"ringCoord\"]]],[13,\"maxAngle\",[1,\"intensity\",\"*\",\"DEG_TO_RAD\"]],[13,\"seedOffset\",[1,\"seed\",\"*\",[5,\"0.137\"]]],[13,\"staticA\",[1,[6,\"legacySinHash11\",[[1,\"ringIndex\",\"+\",\"seedOffset\"]]],\"*\",\"maxAngle\"]],[13,\"staticB\",[1,[6,\"legacySinHash11\",[[1,[1,\"ringIndex\",\"+\",[5,\"1\"]],\"+\",\"seedOffset\"]]],\"*\",\"maxAngle\"]],[13,\"ringSpeedA\",[6,\"std.mix\",[[5,\"1\"],[6,\"legacySinHash11\",[[1,\"ringIndex\",\"+\",[5,\"42.7\"]]]],\"speedRandomness\"]]],[13,\"ringSpeedB\",[6,\"std.mix\",[[5,\"1\"],[6,\"legacySinHash11\",[[1,[1,\"ringIndex\",\"+\",[5,\"1\"]],\"+\",[5,\"42.7\"]]]],\"speedRandomness\"]]],[13,\"animA\",[1,[1,\"animTime\",\"*\",[5,\"0.25\"]],\"*\",\"ringSpeedA\"]],[13,\"animB\",[1,[1,\"animTime\",\"*\",[5,\"0.25\"]],\"*\",\"ringSpeedB\"]],[13,\"totalA\",[1,\"staticA\",\"+\",\"animA\"]],[13,\"totalB\",[1,\"staticB\",\"+\",\"animB\"]],[13,\"wrapArg\",[1,[1,\"totalB\",\"-\",\"totalA\"],\"+\",\"PI\"]],[13,\"diff\",[1,[1,\"wrapArg\",\"-\",[1,\"TAU\",\"*\",[6,\"std.floor\",[[1,\"wrapArg\",\"/\",\"TAU\"]]]]],\"-\",\"PI\"]],[13,\"halfEdge\",[1,[1,\"smoothness\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.001\"]]],[13,\"blend\",[6,\"std.smoothstep\",[[1,[5,\"0.5\"],\"-\",\"halfEdge\"],[1,[5,\"0.5\"],\"+\",\"halfEdge\"],\"ringFrac\"]]],[13,\"angle\",[1,\"totalA\",\"+\",[1,\"diff\",\"*\",\"blend\"]]],[10,[6,\"csRotateUV\",[\"uv\",\"aspect\",\"center\",\"angle\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.floor\":()=>K,\"std.fract\":()=>ve,DEG_TO_RAD:()=>Qe,legacySinHash11:()=>Da,\"std.mix\":()=>Z,PI:()=>ko,TAU:()=>Et,\"std.smoothstep\":()=>ce,csRotateUV:()=>T2}})&&e.f)({})),kV=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(__tsover_mul(t.x,s),t.y),l=__tsover_mul(n,.7),c=__tsover_mul(i,.2),_=__tsover_mul(Po(v(__tsover_add(__tsover_mul(d.x,r),__tsover_mul(l,.3)),__tsover_add(__tsover_mul(d.y,r),__tsover_mul(l,.5)),c)),_o),p=u(J(_),O(_)),f=__tsover_mul(n,.5),h=__tsover_mul(i,.15),g=__tsover_mul(Po(v(__tsover_add(__tsover_add(__tsover_mul(d.x,__tsover_mul(r,2.3)),__tsover_mul(f,-.4)),173.5),__tsover_add(__tsover_add(__tsover_mul(d.y,__tsover_mul(r,2.3)),__tsover_mul(f,.3)),291.7),__tsover_add(h,50))),_o),x=u(J(g),O(g)),T=__tsover_mul(n,.3),S=__tsover_mul(i,.1),A=__tsover_mul(Po(v(__tsover_add(__tsover_add(__tsover_mul(d.x,__tsover_mul(r,4.7)),__tsover_mul(T,.2)),527.3),__tsover_add(__tsover_add(__tsover_mul(d.y,__tsover_mul(r,4.7)),__tsover_mul(T,-.6)),839.1),__tsover_add(S,100))),_o),E=u(J(A),O(A)),M=p.add(x.mul(.5)).add(E.mul(.25)),$=w(te(M),.001),L=M.div($),B=u(__tsover_div(__tsover_mul(L.x,o),s),__tsover_mul(L.y,o));return u(__tsover_add(t.x,B.x),__tsover_add(t.y,B.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"evolutionTime\"}],body:[0,[[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"drift1\",[1,\"time\",\"*\",[5,\"0.7\"]]],[13,\"evolve1\",[1,\"evolutionTime\",\"*\",[5,\"0.2\"]]],[13,\"angle1\",[1,[6,\"mxNoiseFloat3\",[[6,\"d.vec3f\",[[1,[1,[7,\"aspectCorrectedUV\",\"x\"],\"*\",\"scale\"],\"+\",[1,\"drift1\",\"*\",[5,\"0.3\"]]],[1,[1,[7,\"aspectCorrectedUV\",\"y\"],\"*\",\"scale\"],\"+\",[1,\"drift1\",\"*\",[5,\"0.5\"]]],\"evolve1\"]]]],\"*\",\"TWO_PI\"]],[13,\"flow1\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angle1\"]],[6,\"std.sin\",[\"angle1\"]]]]],[13,\"drift2\",[1,\"time\",\"*\",[5,\"0.5\"]]],[13,\"evolve2\",[1,\"evolutionTime\",\"*\",[5,\"0.15\"]]],[13,\"angle2\",[1,[6,\"mxNoiseFloat3\",[[6,\"d.vec3f\",[[1,[1,[1,[7,\"aspectCorrectedUV\",\"x\"],\"*\",[1,\"scale\",\"*\",[5,\"2.3\"]]],\"+\",[1,\"drift2\",\"*\",[4,\"-\",[5,\"0.4\"]]]],\"+\",[5,\"173.5\"]],[1,[1,[1,[7,\"aspectCorrectedUV\",\"y\"],\"*\",[1,\"scale\",\"*\",[5,\"2.3\"]]],\"+\",[1,\"drift2\",\"*\",[5,\"0.3\"]]],\"+\",[5,\"291.7\"]],[1,\"evolve2\",\"+\",[5,\"50\"]]]]]],\"*\",\"TWO_PI\"]],[13,\"flow2\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angle2\"]],[6,\"std.sin\",[\"angle2\"]]]]],[13,\"drift3\",[1,\"time\",\"*\",[5,\"0.3\"]]],[13,\"evolve3\",[1,\"evolutionTime\",\"*\",[5,\"0.1\"]]],[13,\"angle3\",[1,[6,\"mxNoiseFloat3\",[[6,\"d.vec3f\",[[1,[1,[1,[7,\"aspectCorrectedUV\",\"x\"],\"*\",[1,\"scale\",\"*\",[5,\"4.7\"]]],\"+\",[1,\"drift3\",\"*\",[5,\"0.2\"]]],\"+\",[5,\"527.3\"]],[1,[1,[1,[7,\"aspectCorrectedUV\",\"y\"],\"*\",[1,\"scale\",\"*\",[5,\"4.7\"]]],\"+\",[1,\"drift3\",\"*\",[4,\"-\",[5,\"0.6\"]]]],\"+\",[5,\"839.1\"]],[1,\"evolve3\",\"+\",[5,\"100\"]]]]]],\"*\",\"TWO_PI\"]],[13,\"flow3\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"angle3\"]],[6,\"std.sin\",[\"angle3\"]]]]],[13,\"combinedFlow\",[6,[7,[6,[7,\"flow1\",\"add\"],[[6,[7,\"flow2\",\"mul\"],[[5,\"0.5\"]]]]],\"add\"],[[6,[7,\"flow3\",\"mul\"],[[5,\"0.25\"]]]]]],[13,\"flowLength\",[6,\"std.max\",[[6,\"std.length\",[\"combinedFlow\"]],[5,\"0.001\"]]]],[13,\"normalizedFlow\",[6,[7,\"combinedFlow\",\"div\"],[\"flowLength\"]]],[13,\"finalFlow\",[6,\"d.vec2f\",[[1,[1,[7,\"normalizedFlow\",\"x\"],\"*\",\"strength\"],\"/\",\"aspect\"],[1,[7,\"normalizedFlow\",\"y\"],\"*\",\"strength\"]]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[7,\"finalFlow\",\"x\"]],[1,[7,\"uv\",\"y\"],\"+\",[7,\"finalFlow\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u,mxNoiseFloat3:()=>Po,\"d.vec3f\":()=>v,TWO_PI:()=>_o,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.max\":()=>w,\"std.length\":()=>te}})&&e.f)({})),$V=y.fn([u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,Qe),d=u(J(i),O(i)),l=u(__tsover_mul(__tsover_sub(t.x,.5),s),__tsover_sub(t.y,.5)),c=le(l,d),_=__tsover_mul(.5,__tsover_add(__tsover_mul(s,W(d.x)),W(d.y))),p=__tsover_add(__tsover_div(c,__tsover_mul(2,_)),.5),f=K(__tsover_mul(p,w(o,1))),h=__tsover_sub(__tsover_mul(ve(__tsover_mul(f,.5)),4),1),g=u(-d.y,d.x),x=__tsover_mul(.5,__tsover_add(__tsover_mul(s,W(d.y)),W(d.x))),T=__tsover_mul(__tsover_mul(n,__tsover_mul(2.02,x)),h),S=l.add(g.mul(T));return u(__tsover_add(__tsover_div(S.x,s),.5),__tsover_add(S.y,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"sliceCount\"},{type:\"i\",name:\"progress\"}],body:[0,[[13,\"a\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"dir\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"a\"]],[6,\"std.sin\",[\"a\"]]]]],[13,\"p\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]],[13,\"grad\",[6,\"std.dot\",[\"p\",\"dir\"]]],[13,\"ext\",[1,[5,\"0.5\"],\"*\",[1,[1,\"aspect\",\"*\",[6,\"std.abs\",[[7,\"dir\",\"x\"]]]],\"+\",[6,\"std.abs\",[[7,\"dir\",\"y\"]]]]]],[13,\"t\",[1,[1,\"grad\",\"/\",[1,[5,\"2\"],\"*\",\"ext\"]],\"+\",[5,\"0.5\"]]],[13,\"idx\",[6,\"std.floor\",[[1,\"t\",\"*\",[6,\"std.max\",[\"sliceCount\",[5,\"1\"]]]]]]],[13,\"sign\",[1,[1,[6,\"std.fract\",[[1,\"idx\",\"*\",[5,\"0.5\"]]]],\"*\",[5,\"4\"]],\"-\",[5,\"1\"]]],[13,\"perp\",[6,\"d.vec2f\",[[4,\"-\",[7,\"dir\",\"y\"]],[7,\"dir\",\"x\"]]]],[13,\"extPerp\",[1,[5,\"0.5\"],\"*\",[1,[1,\"aspect\",\"*\",[6,\"std.abs\",[[7,\"dir\",\"y\"]]]],\"+\",[6,\"std.abs\",[[7,\"dir\",\"x\"]]]]]],[13,\"slide\",[1,[1,\"progress\",\"*\",[1,[5,\"2.02\"],\"*\",\"extPerp\"]],\"*\",\"sign\"]],[13,\"q\",[6,[7,\"p\",\"add\"],[[6,[7,\"perp\",\"mul\"],[\"slide\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,[7,\"q\",\"x\"],\"/\",\"aspect\"],\"+\",[5,\"0.5\"]],[1,[7,\"q\",\"y\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.abs\":()=>W,\"std.floor\":()=>K,\"std.max\":()=>w,\"std.fract\":()=>ve}})&&e.f)({})),S2=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(r,Qe),i=J(n),d=O(n),l=__tsover_mul(t.x,s),c=t.y,_=__tsover_sub(l,__tsover_mul(s,.5)),p=__tsover_sub(c,.5),f=__tsover_add(__tsover_mul(_,i),__tsover_mul(p,d)),h=__tsover_add(__tsover_mul(__tsover_mul(_,d),-1),__tsover_mul(p,i)),g=__tsover_add(h,o),x=__tsover_sub(__tsover_mul(f,i),__tsover_mul(g,d)),T=__tsover_add(__tsover_mul(f,d),__tsover_mul(g,i));return u(__tsover_add(__tsover_div(x,s),.5),__tsover_add(T,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"offset\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"au\",[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"]],[13,\"av\",[7,\"uv\",\"y\"]],[13,\"cu\",[1,\"au\",\"-\",[1,\"aspect\",\"*\",[5,\"0.5\"]]]],[13,\"cv\",[1,\"av\",\"-\",[5,\"0.5\"]]],[13,\"projectedU\",[1,[1,\"cu\",\"*\",\"cosA\"],\"+\",[1,\"cv\",\"*\",\"sinA\"]]],[13,\"projectedV\",[1,[1,[1,\"cu\",\"*\",\"sinA\"],\"*\",[4,\"-\",[5,\"1\"]]],\"+\",[1,\"cv\",\"*\",\"cosA\"]]],[13,\"distPV\",[1,\"projectedV\",\"+\",\"offset\"]],[13,\"dcu\",[1,[1,\"projectedU\",\"*\",\"cosA\"],\"-\",[1,\"distPV\",\"*\",\"sinA\"]]],[13,\"dcv\",[1,[1,\"projectedU\",\"*\",\"sinA\"],\"+\",[1,\"distPV\",\"*\",\"cosA\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"dcu\",\"/\",\"aspect\"],\"+\",[5,\"0.5\"]],[1,\"dcv\",\"+\",[5,\"0.5\"]]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),CV=y.fn([a,a,a,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_mul(s,Qe),c=J(l),_=O(l),p=w(d,1),f=__tsover_mul(i.x,d),h=i.y,g=__tsover_sub(f,__tsover_mul(d,.5)),x=__tsover_sub(h,.5),T=__tsover_add(__tsover_mul(g,c),__tsover_mul(x,_)),S=K(__tsover_div(__tsover_mul(T,t),p)),A=__tsover_mul(o,.137),E=Da(__tsover_add(S,A)),M=Da(__tsover_add(__tsover_add(S,A),42.7)),$=__tsover_mul(__tsover_mul(n,M),.2);return S2(i,d,s,__tsover_mul(__tsover_add(E,$),r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"count\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"longestAxis\",[6,\"std.max\",[\"aspect\",[5,\"1\"]]]],[13,\"au\",[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"]],[13,\"av\",[7,\"uv\",\"y\"]],[13,\"cu\",[1,\"au\",\"-\",[1,\"aspect\",\"*\",[5,\"0.5\"]]]],[13,\"cv\",[1,\"av\",\"-\",[5,\"0.5\"]]],[13,\"projectedU\",[1,[1,\"cu\",\"*\",\"cosA\"],\"+\",[1,\"cv\",\"*\",\"sinA\"]]],[13,\"barCoord\",[1,[1,\"projectedU\",\"*\",\"count\"],\"/\",\"longestAxis\"]],[13,\"barIndex\",[6,\"std.floor\",[\"barCoord\"]]],[13,\"seedOffset\",[1,\"seed\",\"*\",[5,\"0.137\"]]],[13,\"staticOffset\",[6,\"legacySinHash11\",[[1,\"barIndex\",\"+\",\"seedOffset\"]]]],[13,\"barSpeed\",[6,\"legacySinHash11\",[[1,[1,\"barIndex\",\"+\",\"seedOffset\"],\"+\",[5,\"42.7\"]]]]],[13,\"animOffset\",[1,[1,\"animTime\",\"*\",\"barSpeed\"],\"*\",[5,\"0.2\"]]],[13,\"offset\",[1,[1,\"staticOffset\",\"+\",\"animOffset\"],\"*\",\"intensity\"]],[10,[6,\"barSampleUV\",[\"uv\",\"aspect\",\"angle\",\"offset\"]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.max\":()=>w,\"std.floor\":()=>K,legacySinHash11:()=>Da,barSampleUV:()=>S2}})&&e.f)({})),RV=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=r>1,n=w(F(__tsover_mul(s,r),s,o),1),i=w(F(s,__tsover_div(s,r),o),1),d=K(__tsover_mul(t.x,n)),l=K(__tsover_mul(t.y,i));return u(__tsover_div(__tsover_add(d,.5),n),__tsover_div(__tsover_add(l,.5),i))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"gridSize\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"isWide\",[1,\"aspect\",\">\",[5,\"1\"]]],[13,\"cellsX\",[6,\"std.max\",[[6,\"std.select\",[[1,\"gridSize\",\"*\",\"aspect\"],\"gridSize\",\"isWide\"]],[5,\"1\"]]]],[13,\"cellsY\",[6,\"std.max\",[[6,\"std.select\",[\"gridSize\",[1,\"gridSize\",\"/\",\"aspect\"],\"isWide\"]],[5,\"1\"]]]],[13,\"cellIndexX\",[6,\"std.floor\",[[1,[7,\"uv\",\"x\"],\"*\",\"cellsX\"]]]],[13,\"cellIndexY\",[6,\"std.floor\",[[1,[7,\"uv\",\"y\"],\"*\",\"cellsY\"]]]],[10,[6,\"d.vec2f\",[[1,[1,\"cellIndexX\",\"+\",[5,\"0.5\"]],\"/\",\"cellsX\"],[1,[1,\"cellIndexY\",\"+\",[5,\"0.5\"]],\"/\",\"cellsY\"]]]]]]},externals:{\"std.max\":()=>w,\"std.select\":()=>F,\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),UV=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let o=z(s,u(-.1,-.1),u(.1,.1));return t.sub(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"disp\"}],body:[0,[[13,\"maxDisp\",[5,\"0.1\"]],[13,\"clamped\",[6,\"std.clamp\",[\"disp\",[6,\"d.vec2f\",[[4,\"-\",\"maxDisp\"],[4,\"-\",\"maxDisp\"]]],[6,\"d.vec2f\",[\"maxDisp\",\"maxDisp\"]]]]],[10,[6,[7,\"uv\",\"sub\"],[\"clamped\"]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec2f\":()=>u}})&&e.f)({})),zV=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=s.mul(__tsover_mul(r,.1)),n=.15,i=z(o,u(-n,-n),u(n,n));return t.sub(i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"disp\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"scaled\",[6,[7,\"disp\",\"mul\"],[[1,\"intensity\",\"*\",[5,\"0.1\"]]]]],[13,\"maxDisp\",[5,\"0.15\"]],[13,\"clamped\",[6,\"std.clamp\",[\"scaled\",[6,\"d.vec2f\",[[4,\"-\",\"maxDisp\"],[4,\"-\",\"maxDisp\"]]],[6,\"d.vec2f\",[\"maxDisp\",\"maxDisp\"]]]]],[10,[6,[7,\"uv\",\"sub\"],[\"clamped\"]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec2f\":()=>u}})&&e.f)({})),GV=y.fn([u,b,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=w(s.w,1e-4),i=__tsover_div(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(__tsover_div(s.x,n),.5),2),s.w),o),r),d=__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(__tsover_div(s.y,n),.5),2),s.w),o);return u(__tsover_add(t.x,i),__tsover_add(t.y,d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"src\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"a\",[6,\"std.max\",[[7,\"src\",\"w\"],[5,\"0.0001\"]]]],[13,\"dx\",[1,[1,[1,[1,[1,[1,[7,\"src\",\"x\"],\"/\",\"a\"],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]],\"*\",[7,\"src\",\"w\"]],\"*\",\"amount\"],\"/\",\"aspect\"]],[13,\"dy\",[1,[1,[1,[1,[1,[7,\"src\",\"y\"],\"/\",\"a\"],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]],\"*\",[7,\"src\",\"w\"]],\"*\",\"amount\"]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",\"dx\"],[1,[7,\"uv\",\"y\"],\"+\",\"dy\"]]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),DV=y.fn([u,b,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=w(s.w,1e-4),d=le(v(__tsover_div(s.x,i),__tsover_div(s.y,i),__tsover_div(s.z,i)),v(.2126,.7152,.0722)),l=__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(d,.5),2),s.w),o),c=__tsover_mul(n,Qe),_=__tsover_div(__tsover_mul(l,J(c)),r),p=__tsover_mul(l,O(c));return u(__tsover_add(t.x,_),__tsover_add(t.y,p))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"src\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"angleDeg\"}],body:[0,[[13,\"a\",[6,\"std.max\",[[7,\"src\",\"w\"],[5,\"0.0001\"]]]],[13,\"lum\",[6,\"std.dot\",[[6,\"d.vec3f\",[[1,[7,\"src\",\"x\"],\"/\",\"a\"],[1,[7,\"src\",\"y\"],\"/\",\"a\"],[1,[7,\"src\",\"z\"],\"/\",\"a\"]]],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[13,\"scalar\",[1,[1,[1,[1,\"lum\",\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]],\"*\",[7,\"src\",\"w\"]],\"*\",\"amount\"]],[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"dx\",[1,[1,\"scalar\",\"*\",[6,\"std.cos\",[\"angleRad\"]]],\"/\",\"aspect\"]],[13,\"dy\",[1,\"scalar\",\"*\",[6,\"std.sin\",[\"angleRad\"]]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",\"dx\"],[1,[7,\"uv\",\"y\"],\"+\",\"dy\"]]]]]]},externals:{\"std.max\":()=>w,\"std.dot\":()=>le,\"d.vec3f\":()=>v,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),uf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({refractedUV:u,chrOff:u,slope:a}),\"FlutedGeom\"),LV=y.fn([u,a,a,a,a,a,a,a,a,a,v],uf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=p.x,h=p.y,g=p.z,x=__tsover_div(__tsover_mul(o,ko),180),T=J(x),S=O(x),A=u(__tsover_mul(__tsover_sub(t.x,.5),s),__tsover_sub(t.y,.5)),E=__tsover_add(__tsover_mul(A.x,T),__tsover_mul(A.y,S)),M=__tsover_add(__tsover_mul(-A.x,S),__tsover_mul(A.y,T)),$=__tsover_mul(O(__tsover_add(__tsover_mul(__tsover_mul(M,l),__tsover_mul(ko,2)),__tsover_mul(r,2))),d),L=__tsover_add(E,__tsover_mul(g,$)),B=__tsover_add(__tsover_mul(L,n),r),D=__tsover_mul(__tsover_sub(ve(B),.5),2),G=w(W(D),1e-4),I=Z(f,h,i),X=__tsover_mul(ir(D),Ye(G,I)),H=__tsover_div(.5,w(n,.001)),ee=-__tsover_mul(__tsover_mul(X,c),H),Q=u(__tsover_add(t.x,__tsover_div(__tsover_mul(ee,T),s)),__tsover_add(t.y,__tsover_mul(ee,S))),de=__tsover_mul(__tsover_mul(ee,_),.5);return uf({refractedUV:Q,chrOff:u(__tsover_div(__tsover_mul(de,T),s),__tsover_mul(de,S)),slope:X})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"waveAmp\"},{type:\"i\",name:\"waveFreq\"},{type:\"i\",name:\"refraction\"},{type:\"i\",name:\"aberration\"},{type:\"i\",name:\"shapeParams\"}],body:[0,[[13,\"expHi\",[7,\"shapeParams\",\"x\"]],[13,\"expLo\",[7,\"shapeParams\",\"y\"]],[13,\"wavesFlag\",[7,\"shapeParams\",\"z\"]],[13,\"r\",[1,[1,\"angleDeg\",\"*\",\"PI\"],\"/\",[5,\"180\"]]],[13,\"cosA\",[6,\"std.cos\",[\"r\"]]],[13,\"sinA\",[6,\"std.sin\",[\"r\"]]],[13,\"aspCorr\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]],[13,\"u\",[1,[1,[7,\"aspCorr\",\"x\"],\"*\",\"cosA\"],\"+\",[1,[7,\"aspCorr\",\"y\"],\"*\",\"sinA\"]]],[13,\"v\",[1,[1,[4,\"-\",[7,\"aspCorr\",\"x\"]],\"*\",\"sinA\"],\"+\",[1,[7,\"aspCorr\",\"y\"],\"*\",\"cosA\"]]],[13,\"waveTerm\",[1,[6,\"std.sin\",[[1,[1,[1,\"v\",\"*\",\"waveFreq\"],\"*\",[1,\"PI\",\"*\",[5,\"2\"]]],\"+\",[1,\"t\",\"*\",[5,\"2\"]]]]],\"*\",\"waveAmp\"]],[13,\"fluteU\",[1,\"u\",\"+\",[1,\"wavesFlag\",\"*\",\"waveTerm\"]]],[13,\"flutePos\",[1,[1,\"fluteU\",\"*\",\"frequency\"],\"+\",\"t\"]],[13,\"cellPos\",[1,[1,[6,\"std.fract\",[\"flutePos\"]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[13,\"absCell\",[6,\"std.max\",[[6,\"std.abs\",[\"cellPos\"]],[5,\"0.0001\"]]]],[13,\"exponent\",[6,\"std.mix\",[\"expHi\",\"expLo\",\"softness\"]]],[13,\"slope\",[1,[6,\"std.sign\",[\"cellPos\"]],\"*\",[6,\"std.pow\",[\"absCell\",\"exponent\"]]]],[13,\"halfCell\",[1,[5,\"0.5\"],\"/\",[6,\"std.max\",[\"frequency\",[5,\"0.001\"]]]]],[13,\"refrU\",[4,\"-\",[1,[1,\"slope\",\"*\",\"refraction\"],\"*\",\"halfCell\"]]],[13,\"refractedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,[1,\"refrU\",\"*\",\"cosA\"],\"/\",\"aspect\"]],[1,[7,\"uv\",\"y\"],\"+\",[1,\"refrU\",\"*\",\"sinA\"]]]]],[13,\"chrU\",[1,[1,\"refrU\",\"*\",\"aberration\"],\"*\",[5,\"0.5\"]]],[13,\"chrOff\",[6,\"d.vec2f\",[[1,[1,\"chrU\",\"*\",\"cosA\"],\"/\",\"aspect\"],[1,\"chrU\",\"*\",\"sinA\"]]]],[10,[6,\"FlutedGeom\",[[104,{refractedUV:\"refractedUV\",chrOff:\"chrOff\",slope:\"slope\"}]]]]]]},externals:{PI:()=>ko,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.max\":()=>w,\"std.abs\":()=>W,\"std.mix\":()=>Z,\"std.sign\":()=>ir,\"std.pow\":()=>Ye,FlutedGeom:()=>uf}})&&e.f)({})),FV=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=ue(__tsover_mul(t,t),1),i=$e(__tsover_sub(1,n)),d=__tsover_div(__tsover_mul(s,ko),360),l=O(d),c=J(d),_=w(__tsover_add(__tsover_mul(t,l),__tsover_mul(i,c)),0),p=rp(__tsover_sub(8,__tsover_mul(o,7))),f=Ye(__tsover_sub(1,i),5),h=__tsover_add(.04,__tsover_mul(.96,f));return __tsover_mul(__tsover_mul(Ye(_,p),h),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"slope\"},{type:\"i\",name:\"lightAngleDeg\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"slopeSq\",[6,\"std.min\",[[1,\"slope\",\"*\",\"slope\"],[5,\"1\"]]]],[13,\"nz\",[6,\"std.sqrt\",[[1,[5,\"1\"],\"-\",\"slopeSq\"]]]],[13,\"half\",[1,[1,\"lightAngleDeg\",\"*\",\"PI\"],\"/\",[5,\"360\"]]],[13,\"hx\",[6,\"std.sin\",[\"half\"]]],[13,\"hy\",[6,\"std.cos\",[\"half\"]]],[13,\"nDotH\",[6,\"std.max\",[[1,[1,\"slope\",\"*\",\"hx\"],\"+\",[1,\"nz\",\"*\",\"hy\"]],[5,\"0\"]]]],[13,\"shininess\",[6,\"std.exp2\",[[1,[5,\"8\"],\"-\",[1,\"softness\",\"*\",[5,\"7\"]]]]]],[13,\"fresnel\",[6,\"std.pow\",[[1,[5,\"1\"],\"-\",\"nz\"],[5,\"5\"]]]],[13,\"fresnelMix\",[1,[5,\"0.04\"],\"+\",[1,[5,\"0.96\"],\"*\",\"fresnel\"]]],[10,[1,[1,[6,\"std.pow\",[\"nDotH\",\"shininess\"]],\"*\",\"fresnelMix\"],\"*\",\"intensity\"]]]]},externals:{\"std.min\":()=>ue,\"std.sqrt\":()=>$e,PI:()=>ko,\"std.sin\":()=>O,\"std.cos\":()=>J,\"std.max\":()=>w,\"std.exp2\":()=>rp,\"std.pow\":()=>Ye}})&&e.f)({})),_f=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({curlUV:u,theta:a,distPastCrease:a,distIntoPeel:a,flatReach:a,peelReach:a,foldBlend:a,showCurl:a}),\"PagePeelGeom\"),BV=y.fn([u,a,a,a,a,a,a,a],_f)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=u(__tsover_mul(t.x,s),t.y),_=u(__tsover_mul(r,s),o),p=u(__tsover_mul(n,s),i).sub(_),f=te(p),h=p.mul(__tsover_div(1,f)),g=le(c.sub(_),h),x=__tsover_mul(d,f),T=x,S=w(__tsover_mul(l,f),1e-4),A=__tsover_div(x,S),E=__tsover_div(__tsover_sub(g,T),S),M=jf(z(E,0,1)),$=__tsover_mul(ot(0,E),ot(E,1)),L=ot(M,A),B=__tsover_sub(x,__tsover_mul(S,M)),D=c.add(h.mul(__tsover_sub(B,g))),G=u(__tsover_div(D.x,s),D.y),I=__tsover_mul(__tsover_mul(__tsover_mul(ot(0,G.x),ot(G.x,1)),ot(0,G.y)),ot(G.y,1)),X=__tsover_sub(1,J(z(A,0,dp))),H=__tsover_mul(S,X),ee=w(__tsover_add(S,__tsover_mul(H,.5)),1e-4),Q=__tsover_sub(g,T),de=w(__tsover_mul(H,2.5),1e-4);return _f({curlUV:G,theta:M,distPastCrease:Q,distIntoPeel:__tsover_sub(T,g),flatReach:ee,peelReach:de,foldBlend:ce(__tsover_sub(T,.0015),__tsover_add(T,.0015),g),showCurl:__tsover_mul(__tsover_mul($,L),I)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"cornerX\"},{type:\"i\",name:\"cornerY\"},{type:\"i\",name:\"oppX\"},{type:\"i\",name:\"oppY\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"radius\"}],body:[0,[[13,\"pA\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"cornerA\",[6,\"d.vec2f\",[[1,\"cornerX\",\"*\",\"aspect\"],\"cornerY\"]]],[13,\"oppA\",[6,\"d.vec2f\",[[1,\"oppX\",\"*\",\"aspect\"],\"oppY\"]]],[13,\"axisVec\",[6,[7,\"oppA\",\"sub\"],[\"cornerA\"]]],[13,\"L\",[6,\"std.length\",[\"axisVec\"]]],[13,\"axis\",[6,[7,\"axisVec\",\"mul\"],[[1,[5,\"1\"],\"/\",\"L\"]]]],[13,\"t\",[6,\"std.dot\",[[6,[7,\"pA\",\"sub\"],[\"cornerA\"]],\"axis\"]]],[13,\"peel\",[1,\"amount\",\"*\",\"L\"]],[13,\"cFold\",\"peel\"],[13,\"R\",[6,\"std.max\",[[1,\"radius\",\"*\",\"L\"],[5,\"0.0001\"]]]],[13,\"thetaMax\",[1,\"peel\",\"/\",\"R\"]],[13,\"X\",[1,[1,\"t\",\"-\",\"cFold\"],\"/\",\"R\"]],[13,\"Xc\",[6,\"std.clamp\",[\"X\",[5,\"0\"],[5,\"1\"]]]],[13,\"theta\",[6,\"std.asin\",[\"Xc\"]]],[13,\"inBand\",[1,[6,\"std.step\",[[5,\"0\"],\"X\"]],\"*\",[6,\"std.step\",[\"X\",[5,\"1\"]]]]],[13,\"paper\",[6,\"std.step\",[\"theta\",\"thetaMax\"]]],[13,\"cCurl\",[1,\"peel\",\"-\",[1,\"R\",\"*\",\"theta\"]]],[13,\"sourceA\",[6,[7,\"pA\",\"add\"],[[6,[7,\"axis\",\"mul\"],[[1,\"cCurl\",\"-\",\"t\"]]]]]],[13,\"curlUV\",[6,\"d.vec2f\",[[1,[7,\"sourceA\",\"x\"],\"/\",\"aspect\"],[7,\"sourceA\",\"y\"]]]],[13,\"curlInBounds\",[1,[1,[1,[6,\"std.step\",[[5,\"0\"],[7,\"curlUV\",\"x\"]]],\"*\",[6,\"std.step\",[[7,\"curlUV\",\"x\"],[5,\"1\"]]]],\"*\",[6,\"std.step\",[[5,\"0\"],[7,\"curlUV\",\"y\"]]]],\"*\",[6,\"std.step\",[[7,\"curlUV\",\"y\"],[5,\"1\"]]]]],[13,\"liftFrac\",[1,[5,\"1\"],\"-\",[6,\"std.cos\",[[6,\"std.clamp\",[\"thetaMax\",[5,\"0\"],\"HALF_PI\"]]]]]],[13,\"lipHeight\",[1,\"R\",\"*\",\"liftFrac\"]],[13,\"flatReach\",[6,\"std.max\",[[1,\"R\",\"+\",[1,\"lipHeight\",\"*\",[5,\"0.5\"]]],[5,\"0.0001\"]]]],[13,\"distPastCrease\",[1,\"t\",\"-\",\"cFold\"]],[13,\"peelReach\",[6,\"std.max\",[[1,\"lipHeight\",\"*\",[5,\"2.5\"]],[5,\"0.0001\"]]]],[13,\"distIntoPeel\",[1,\"cFold\",\"-\",\"t\"]],[13,\"foldBlend\",[6,\"std.smoothstep\",[[1,\"cFold\",\"-\",[5,\"0.0015\"]],[1,\"cFold\",\"+\",[5,\"0.0015\"]],\"t\"]]],[13,\"showCurl\",[1,[1,\"inBand\",\"*\",\"paper\"],\"*\",\"curlInBounds\"]],[10,[6,\"PagePeelGeom\",[[104,{curlUV:\"curlUV\",theta:\"theta\",distPastCrease:\"distPastCrease\",distIntoPeel:\"distIntoPeel\",flatReach:\"flatReach\",peelReach:\"peelReach\",foldBlend:\"foldBlend\",showCurl:\"showCurl\"}]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.dot\":()=>le,\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.asin\":()=>jf,\"std.step\":()=>ot,\"std.cos\":()=>J,HALF_PI:()=>dp,\"std.smoothstep\":()=>ce,PagePeelGeom:()=>_f}})&&e.f)({})),IV=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=J(t);return __tsover_sub(1,__tsover_mul(s,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"theta\"},{type:\"i\",name:\"shading\"}],body:[0,[[13,\"facing\",[6,\"std.cos\",[\"theta\"]]],[10,[1,[5,\"1\"],\"-\",[1,\"shading\",\"*\",\"facing\"]]]]]},externals:{\"std.cos\":()=>J}})&&e.f)({})),YV=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(t,dp),n=Z(.05,.4,r),i=__tsover_div(__tsover_sub(o,.65),n);return __tsover_mul(Mt(__tsover_mul(__tsover_mul(i,i),-.5)),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"theta\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"thetaN\",[1,\"theta\",\"/\",\"HALF_PI\"]],[13,\"specSigma\",[6,\"std.mix\",[[5,\"0.05\"],[5,\"0.4\"],\"softness\"]]],[13,\"specDelta\",[1,[1,\"thetaN\",\"-\",[5,\"0.65\"]],\"/\",\"specSigma\"]],[10,[1,[6,\"std.exp\",[[1,[1,\"specDelta\",\"*\",\"specDelta\"],\"*\",[4,\"-\",[5,\"0.5\"]]]]],\"*\",\"intensity\"]]]]},externals:{HALF_PI:()=>dp,\"std.mix\":()=>Z,\"std.exp\":()=>Mt}})&&e.f)({})),Pp=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(ce(0,.04,t),Ye(__tsover_sub(1,t),.7))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"amount\"}],body:[0,[[10,[1,[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.04\"],\"amount\"]],\"*\",[6,\"std.pow\",[[1,[5,\"1\"],\"-\",\"amount\"],[5,\"0.7\"]]]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.pow\":()=>Ye}})&&e.f)({})),Mp=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_mul(Ye(__tsover_sub(1,ce(0,s,t)),r),ot(0,t))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"reach\"},{type:\"i\",name:\"exponent\"}],body:[0,[[10,[1,[6,\"std.pow\",[[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],\"reach\",\"dist\"]]],\"exponent\"]],\"*\",[6,\"std.step\",[[5,\"0\"],\"dist\"]]]]]]},externals:{\"std.pow\":()=>Ye,\"std.smoothstep\":()=>ce,\"std.step\":()=>ot}})&&e.f)({})),WV=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(Mp(t,s,2),Pp(r));return __tsover_sub(1,__tsover_mul(__tsover_mul(o,n),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"reach\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"shadow\"}],body:[0,[[13,\"fall\",[1,[6,\"shadowFalloff\",[\"dist\",\"reach\",[5,\"2\"]]],\"*\",[6,\"liftShadowStrength\",[\"amount\"]]]],[10,[1,[5,\"1\"],\"-\",[1,[1,\"shadow\",\"*\",\"fall\"],\"*\",[5,\"0.5\"]]]]]]},externals:{shadowFalloff:()=>Mp,liftShadowStrength:()=>Pp}})&&e.f)({})),OV=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(__tsover_mul(Mp(t,s,1.5),Pp(r)),o);return __tsover_mul(n,.6)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"reach\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"shadow\"}],body:[0,[[13,\"fall\",[1,[1,[6,\"shadowFalloff\",[\"dist\",\"reach\",[5,\"1.5\"]]],\"*\",[6,\"liftShadowStrength\",[\"amount\"]]],\"*\",\"shadow\"]],[10,[1,\"fall\",\"*\",[5,\"0.6\"]]]]]},externals:{shadowFalloff:()=>Mp,liftShadowStrength:()=>Pp}})&&e.f)({})),VV=y.fn([b,b,a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=b(t.xyz.mul(r).add(__tsover_mul(o,t.w)),t.w),_=b(s.xyz.mul(n),s.w);return F(Z(b(0,0,0,i),_,b(d)),c,l>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"curlSample\"},{type:\"i\",name:\"flatSample\"},{type:\"i\",name:\"curlBright\"},{type:\"i\",name:\"spec\"},{type:\"i\",name:\"flatShade\"},{type:\"i\",name:\"peelAlpha\"},{type:\"i\",name:\"foldBlend\"},{type:\"i\",name:\"showCurl\"}],body:[0,[[13,\"litRgb\",[6,[7,[6,[7,[7,\"curlSample\",\"xyz\"],\"mul\"],[\"curlBright\"]],\"add\"],[[1,\"spec\",\"*\",[7,\"curlSample\",\"w\"]]]]],[13,\"curlColor\",[6,\"d.vec4f\",[\"litRgb\",[7,\"curlSample\",\"w\"]]]],[13,\"flatColor\",[6,\"d.vec4f\",[[6,[7,[7,\"flatSample\",\"xyz\"],\"mul\"],[\"flatShade\"]],[7,\"flatSample\",\"w\"]]]],[13,\"peeledColor\",[6,\"d.vec4f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"],\"peelAlpha\"]]],[13,\"base\",[6,\"std.mix\",[\"peeledColor\",\"flatColor\",[6,\"d.vec4f\",[\"foldBlend\"]]]]],[10,[6,\"std.select\",[\"base\",\"curlColor\",[1,\"showCurl\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"d.vec4f\":()=>b,\"std.mix\":()=>Z,\"std.select\":()=>F}})&&e.f)({})),pf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({uv:u,coverage:a,normal:v}),\"SphereBulge\"),NV=y.fn([u,u,u,a,a],pf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_div(s.x,s.y),d=r.x,l=__tsover_sub(1,r.y),c=__tsover_mul(__tsover_sub(t.x,d),i),_=__tsover_sub(t.y,l),p=__tsover_div(__tsover_mul(c,2),o),f=__tsover_div(__tsover_mul(_,2),o),h=__tsover_add(__tsover_mul(p,p),__tsover_mul(f,f)),g=__tsover_sub(1,ce(.98,1,h)),x=$e(w(a(0),__tsover_sub(1,h))),T=__tsover_add(1,__tsover_mul(x,n)),S=__tsover_div(__tsover_mul(__tsover_div(p,T),o),2),A=__tsover_div(__tsover_mul(__tsover_div(f,T),o),2),E=__tsover_add(__tsover_div(S,i),d),M=__tsover_add(A,l),$=Rs(v(p,f,x));return pf({uv:u(E,M),coverage:g,normal:$})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"depth\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"centerX\",[7,\"center\",\"x\"]],[13,\"centerY\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]],[13,\"cuX\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"centerX\"],\"*\",\"aspect\"]],[13,\"cuY\",[1,[7,\"uv\",\"y\"],\"-\",\"centerY\"]],[13,\"sphereX\",[1,[1,\"cuX\",\"*\",[5,\"2\"]],\"/\",\"radius\"]],[13,\"sphereY\",[1,[1,\"cuY\",\"*\",[5,\"2\"]],\"/\",\"radius\"]],[13,\"radiusSq\",[1,[1,\"sphereX\",\"*\",\"sphereX\"],\"+\",[1,\"sphereY\",\"*\",\"sphereY\"]]],[13,\"sphereAlpha\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0.98\"],[5,\"1\"],\"radiusSq\"]]]],[13,\"z\",[6,\"std.sqrt\",[[6,\"std.max\",[[6,\"d.f32\",[[5,\"0\"]]],[1,[5,\"1\"],\"-\",\"radiusSq\"]]]]]],[13,\"depthFactor\",[1,[5,\"1\"],\"+\",[1,\"z\",\"*\",\"depth\"]]],[13,\"finalX\",[1,[1,[1,\"sphereX\",\"/\",\"depthFactor\"],\"*\",\"radius\"],\"/\",[5,\"2\"]]],[13,\"finalY\",[1,[1,[1,\"sphereY\",\"/\",\"depthFactor\"],\"*\",\"radius\"],\"/\",[5,\"2\"]]],[13,\"transformedX\",[1,[1,\"finalX\",\"/\",\"aspect\"],\"+\",\"centerX\"]],[13,\"transformedY\",[1,\"finalY\",\"+\",\"centerY\"]],[13,\"normal\",[6,\"std.normalize\",[[6,\"d.vec3f\",[\"sphereX\",\"sphereY\",\"z\"]]]]],[10,[6,\"SphereBulge\",[[104,{uv:[6,\"d.vec2f\",[\"transformedX\",\"transformedY\"]],coverage:\"sphereAlpha\",normal:\"normal\"}]]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.sqrt\":()=>$e,\"std.max\":()=>w,\"d.f32\":()=>a,\"std.normalize\":()=>Rs,\"d.vec3f\":()=>v,SphereBulge:()=>pf,\"d.vec2f\":()=>u}})&&e.f)({})),qV=y.fn([v,u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=v(0,0,1),i=__tsover_add(1,__tsover_mul(4,__tsover_sub(1,o))),d=Ye(__tsover_sub(1,w(le(t,n),a(0))),i),l=__tsover_mul(__tsover_sub(s.x,.5),2),c=__tsover_mul(__tsover_sub(__tsover_sub(1,s.y),.5),2),_=Rs(u(__tsover_add(t.x,1e-4),__tsover_add(t.y,1e-4))),p=Rs(u(__tsover_add(l,1e-4),__tsover_add(c,1e-4))),f=Ye(w(a(0),le(_,p)),a(2));return __tsover_mul(__tsover_mul(__tsover_mul(d,f),r),2)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"normal\"},{type:\"i\",name:\"lightPos\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"viewDir\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"1\"]]]],[13,\"fresnelPower\",[1,[5,\"1\"],\"+\",[1,[5,\"4\"],\"*\",[1,[5,\"1\"],\"-\",\"softness\"]]]],[13,\"fresnel\",[6,\"std.pow\",[[1,[5,\"1\"],\"-\",[6,\"std.max\",[[6,\"std.dot\",[\"normal\",\"viewDir\"]],[6,\"d.f32\",[[5,\"0\"]]]]]],\"fresnelPower\"]]],[13,\"lightDir2Dx\",[1,[1,[7,\"lightPos\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[13,\"lightDir2Dy\",[1,[1,[1,[5,\"1\"],\"-\",[7,\"lightPos\",\"y\"]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[13,\"normalDir\",[6,\"std.normalize\",[[6,\"d.vec2f\",[[1,[7,\"normal\",\"x\"],\"+\",[5,\"0.0001\"]],[1,[7,\"normal\",\"y\"],\"+\",[5,\"0.0001\"]]]]]]],[13,\"lightDirNorm\",[6,\"std.normalize\",[[6,\"d.vec2f\",[[1,\"lightDir2Dx\",\"+\",[5,\"0.0001\"]],[1,\"lightDir2Dy\",\"+\",[5,\"0.0001\"]]]]]]],[13,\"directionality\",[6,\"std.max\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"std.dot\",[\"normalDir\",\"lightDirNorm\"]]]]],[13,\"directionalBias\",[6,\"std.pow\",[\"directionality\",[6,\"d.f32\",[[5,\"2\"]]]]]],[10,[1,[1,[1,\"fresnel\",\"*\",\"directionalBias\"],\"*\",\"intensity\"],\"*\",[5,\"2\"]]]]]},externals:{\"d.vec3f\":()=>v,\"std.pow\":()=>Ye,\"std.max\":()=>w,\"std.dot\":()=>le,\"d.f32\":()=>a,\"std.normalize\":()=>Rs,\"d.vec2f\":()=>u}})&&e.f)({})),XV=y.fn([b,v,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return b(__tsover_add(t.x,__tsover_mul(s.x,r)),__tsover_add(t.y,__tsover_mul(s.y,r)),__tsover_add(t.z,__tsover_mul(s.z,r)),__tsover_mul(t.w,o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"straight\"},{type:\"i\",name:\"lightColor\"},{type:\"i\",name:\"rim\"},{type:\"i\",name:\"coverage\"}],body:[0,[[13,\"r\",[1,[7,\"straight\",\"x\"],\"+\",[1,[7,\"lightColor\",\"x\"],\"*\",\"rim\"]]],[13,\"g\",[1,[7,\"straight\",\"y\"],\"+\",[1,[7,\"lightColor\",\"y\"],\"*\",\"rim\"]]],[13,\"b\",[1,[7,\"straight\",\"z\"],\"+\",[1,[7,\"lightColor\",\"z\"],\"*\",\"rim\"]]],[13,\"a\",[1,[7,\"straight\",\"w\"],\"*\",\"coverage\"]],[10,[6,\"d.vec4f\",[\"r\",\"g\",\"b\",\"a\"]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({}));var A2=1/360,tF=y.fn([u,u,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=j1(t),d=j1(s),l=d.sub(i),c=te(l),_=Rs(l),p=w(n.y,1e-6),f=__tsover_div(n.x,p),h=__tsover_mul(__tsover_mul(r,Qe),-1),g=J(h),x=O(h),T=i.add(d).mul(.5),S=o.sub(T),A=ln(u(__tsover_mul(S.x,f),S.y),g,x),E=le(u(__tsover_div(A.x,f),A.y).add(T).sub(i),_);return __tsover_div(E,w(c,1e-6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"start\"},{type:\"i\",name:\"end\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"startPos\",[6,\"unflipPosition\",[\"start\"]]],[13,\"endPos\",[6,\"unflipPosition\",[\"end\"]]],[13,\"gradientVector\",[6,[7,\"endPos\",\"sub\"],[\"startPos\"]]],[13,\"gradientLength\",[6,\"std.length\",[\"gradientVector\"]]],[13,\"gradientDir\",[6,\"std.normalize\",[\"gradientVector\"]]],[13,\"safeViewportY\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]],[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",\"safeViewportY\"]],[13,\"angleRad\",[1,[1,\"angle\",\"*\",\"DEG_TO_RAD\"],\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"cosAngle\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinAngle\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"midpoint\",[6,[7,[6,[7,\"startPos\",\"add\"],[\"endPos\"]],\"mul\"],[[5,\"0.5\"]]]],[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[\"midpoint\"]]],[13,\"rotated\",[6,\"geom.rotate2\",[[6,\"d.vec2f\",[[1,[7,\"centeredUV\",\"x\"],\"*\",\"aspect\"],[7,\"centeredUV\",\"y\"]]],\"cosAngle\",\"sinAngle\"]]],[13,\"rotatedUV\",[6,[7,[6,\"d.vec2f\",[[1,[7,\"rotated\",\"x\"],\"/\",\"aspect\"],[7,\"rotated\",\"y\"]]],\"add\"],[\"midpoint\"]]],[13,\"relativePos\",[6,[7,\"rotatedUV\",\"sub\"],[\"startPos\"]]],[13,\"projection\",[6,\"std.dot\",[\"relativePos\",\"gradientDir\"]]],[10,[1,\"projection\",\"/\",[6,\"std.max\",[\"gradientLength\",[5,\"0.000001\"]]]]]]]},externals:{unflipPosition:()=>j1,\"std.length\":()=>te,\"std.normalize\":()=>Rs,\"std.max\":()=>w,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"geom.rotate2\":()=>ln,\"d.vec2f\":()=>u,\"std.dot\":()=>le}})&&e.f)({})),cT=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=tn(W(t),2);return F(s,__tsover_sub(2,s),s>1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[13,\"m\",[6,\"std.mod\",[[6,\"std.abs\",[\"t\"]],[5,\"2\"]]]],[10,[6,\"std.select\",[\"m\",[1,[5,\"2\"],\"-\",\"m\"],[1,\"m\",\">\",[5,\"1\"]]]]]]]},externals:{\"std.mod\":()=>tn,\"std.abs\":()=>W,\"std.select\":()=>F}})&&e.f)({})),sF=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ve(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[6,\"std.fract\",[\"t\"]]]]]},externals:{\"std.fract\":()=>ve}})&&e.f)({})),E2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return z(t,0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[6,\"std.clamp\",[\"t\",[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({})),rF=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=F(a(0),a(1),t>=0),r=F(a(0),a(1),t<=1);return __tsover_mul(s,r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[13,\"inLow\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"t\",\">=\",[5,\"0\"]]]]],[13,\"inHigh\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"t\",\"<=\",[5,\"1\"]]]]],[10,[1,\"inLow\",\"*\",\"inHigh\"]]]]},externals:{\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})),oF=y.fn([u,a,a,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Qa(n,t,i),l=__tsover_mul(s,Qe),c=ln(d,J(l),-O(l)),_=te(u(__tsover_mul(c.x,r),c.y)),p=w(o,1e-6);return __tsover_div(_,p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"skewAngle\"},{type:\"i\",name:\"ellipseAspect\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"delta\",[6,\"aspectCenteredDelta\",[\"uv\",\"center\",\"viewport\"]]],[13,\"skewRad\",[1,\"skewAngle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosS\",[6,\"std.cos\",[\"skewRad\"]]],[13,\"sinS\",[6,\"std.sin\",[\"skewRad\"]]],[13,\"rotated\",[6,\"geom.rotate2\",[\"delta\",\"cosS\",[4,\"-\",\"sinS\"]]]],[13,\"stretched\",[6,\"d.vec2f\",[[1,[7,\"rotated\",\"x\"],\"*\",\"ellipseAspect\"],[7,\"rotated\",\"y\"]]]],[13,\"dist\",[6,\"std.length\",[\"stretched\"]]],[13,\"safeRadius\",[6,\"std.max\",[\"radius\",[5,\"0.000001\"]]]],[10,[1,\"dist\",\"/\",\"safeRadius\"]]]]},externals:{aspectCenteredDelta:()=>Qa,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"geom.rotate2\":()=>ln,\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.max\":()=>w}})&&e.f)({})),nF=y.fn([u,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Qa(r,t,o),i=bt(n.y,n.x),d=__tsover_sub(.5,__tsover_div(i,Et)),l=__tsover_mul(s,A2);return __tsover_add(d,l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"delta\",[6,\"aspectCenteredDelta\",[\"uv\",\"center\",\"viewport\"]]],[13,\"angle\",[6,\"std.atan2\",[[7,\"delta\",\"y\"],[7,\"delta\",\"x\"]]]],[13,\"normalized\",[1,[5,\"0.5\"],\"-\",[1,\"angle\",\"/\",\"TAU\"]]],[13,\"rotationFraction\",[1,\"rotation\",\"*\",\"INV_360\"]],[10,[1,\"normalized\",\"+\",\"rotationFraction\"]]]]},externals:{aspectCenteredDelta:()=>Qa,\"std.atan2\":()=>bt,TAU:()=>Et,INV_360:()=>A2}})&&e.f)({})),aF=y.fn([u,a,a,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Qa(n,t,i),l=__tsover_mul(r,Qe),c=ln(d,J(l),-O(l)),_=W(c.x),p=W(c.y),f=Z(__tsover_add(_,p),w(_,p),o);return __tsover_div(f,s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"size\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"roundness\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"delta\",[6,\"aspectCenteredDelta\",[\"uv\",\"center\",\"viewport\"]]],[13,\"rotRad\",[1,\"rotation\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rotated\",[6,\"geom.rotate2\",[\"delta\",\"cosR\",[4,\"-\",\"sinR\"]]]],[13,\"absDx\",[6,\"std.abs\",[[7,\"rotated\",\"x\"]]]],[13,\"absDy\",[6,\"std.abs\",[[7,\"rotated\",\"y\"]]]],[13,\"l1\",[1,\"absDx\",\"+\",\"absDy\"]],[13,\"linf\",[6,\"std.max\",[\"absDx\",\"absDy\"]]],[13,\"dist\",[6,\"std.mix\",[\"l1\",\"linf\",\"roundness\"]]],[10,[1,\"dist\",\"/\",\"size\"]]]]},externals:{aspectCenteredDelta:()=>Qa,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"geom.rotate2\":()=>ln,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.mix\":()=>Z}})&&e.f)({})),HV=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(t,s);return F(z(r,0,1),ve(r),s>1.0001)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"repeat\"}],body:[0,[[13,\"s\",[1,\"t\",\"*\",\"repeat\"]],[10,[6,\"std.select\",[[6,\"std.clamp\",[\"s\",[5,\"0\"],[5,\"1\"]]],[6,\"std.fract\",[\"s\"]],[1,\"repeat\",\">\",[5,\"1.0001\"]]]]]]]},externals:{\"std.select\":()=>F,\"std.clamp\":()=>z,\"std.fract\":()=>ve}})&&e.f)({})),jV=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return ve(__tsover_mul(t,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"repeat\"}],body:[0,[[10,[6,\"std.fract\",[[1,\"t\",\"*\",\"repeat\"]]]]]]},externals:{\"std.fract\":()=>ve}})&&e.f)({})),iF=y.fn([u,u,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,Qe),d=Vt(s),l=__tsover_add(_p(Ja(t,d),J(i),O(i)),__tsover_mul(d,.5));return ve(__tsover_add(__tsover_mul(__tsover_mul(l,o),.2),n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"projectedCoord\",[1,[6,\"directionalProjection\",[[6,\"canvasCentredDelta\",[\"uv\",\"aspect\"]],[6,\"std.cos\",[\"angleRad\"]],[6,\"std.sin\",[\"angleRad\"]]]],\"+\",[1,\"aspect\",\"*\",[5,\"0.5\"]]]],[10,[6,\"std.fract\",[[1,[1,[1,\"projectedCoord\",\"*\",\"scale\"],\"*\",[5,\"0.2\"]],\"+\",\"animTime\"]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"geom.aspectOf\":()=>Vt,directionalProjection:()=>_p,canvasCentredDelta:()=>Ja,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.fract\":()=>ve}})&&e.f)({})),dF=y.fn([a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=__tsover_mul(t,6);return b(z(__tsover_sub(W(__tsover_sub(s,3)),1),0,1),z(__tsover_sub(2,W(__tsover_sub(s,2))),0,1),z(__tsover_sub(2,W(__tsover_sub(s,4))),0,1),1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[13,\"h6\",[1,\"t\",\"*\",[5,\"6\"]]],[13,\"r\",[6,\"std.clamp\",[[1,[6,\"std.abs\",[[1,\"h6\",\"-\",[5,\"3\"]]]],\"-\",[5,\"1\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"g\",[6,\"std.clamp\",[[1,[5,\"2\"],\"-\",[6,\"std.abs\",[[1,\"h6\",\"-\",[5,\"2\"]]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"b\",[6,\"std.clamp\",[[1,[5,\"2\"],\"-\",[6,\"std.abs\",[[1,\"h6\",\"-\",[5,\"4\"]]]]],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[\"r\",\"g\",\"b\",[5,\"1\"]]]]]]},externals:{\"std.clamp\":()=>z,\"std.abs\":()=>W,\"d.vec4f\":()=>b}})&&e.f)({})),lF=y.fn([a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=__tsover_mul(t,3);return u(ve(s),K(s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[13,\"t3\",[1,\"t\",\"*\",[5,\"3\"]]],[10,[6,\"d.vec2f\",[[6,\"std.fract\",[\"t3\"]],[6,\"std.floor\",[\"t3\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.floor\":()=>K}})&&e.f)({})),cF=y.fn([b,b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return Z(Z(r,s,ot(o,1.5)),t,ot(o,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"c01\"},{type:\"i\",name:\"c12\"},{type:\"i\",name:\"c20\"},{type:\"i\",name:\"floorT3\"}],body:[0,[[13,\"seg1\",[6,\"std.mix\",[\"c20\",\"c12\",[6,\"std.step\",[\"floorT3\",[5,\"1.5\"]]]]]],[10,[6,\"std.mix\",[\"seg1\",\"c01\",[6,\"std.step\",[\"floorT3\",[5,\"0.5\"]]]]]]]]},externals:{\"std.mix\":()=>Z,\"std.step\":()=>ot}})&&e.f)({})),P2=y.fn([u,a,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_div(n.x,n.y),d=__tsover_sub(__tsover_mul(o.x,i),__tsover_mul(t.x,i)),l=__tsover_sub(o.y,__tsover_sub(1,t.y)),c=te(u(d,l)),_=__tsover_sub(bt(l,d),r);return __tsover_add(__tsover_mul(c,s),__tsover_div(_,_o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,[7,\"center\",\"x\"],\"*\",\"aspect\"]]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]],[13,\"l\",[6,\"std.length\",[[6,\"d.vec2f\",[\"dx\",\"dy\"]]]]],[13,\"angle\",[1,[6,\"std.atan2\",[\"dy\",\"dx\"]],\"-\",\"animTime\"]],[10,[1,[1,\"l\",\"*\",\"scale\"],\"+\",[1,\"angle\",\"/\",\"TWO_PI\"]]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.atan2\":()=>bt,TWO_PI:()=>_o}})&&e.f)({})),uF=y.fn([u,a,a,a,a,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_div(l.x,l.y),_=te(u(__tsover_sub(__tsover_mul(d.x,c),__tsover_mul(t.x,c)),__tsover_sub(d.y,__tsover_sub(1,t.y)))),p=P2(t,s,i,d,l),f=ve(p),h=__tsover_mul(W(__tsover_sub(f,.5)),2),g=z(r,__tsover_mul(o,.005),1),x=__tsover_sub(1,__tsover_mul(z(o,0,1),_)),T=__tsover_mul(g,x),S=As(p),A=__tsover_sub(4,__tsover_mul(__tsover_mul(ce(.05,.4,__tsover_mul(r,2)),ce(.05,.4,__tsover_mul(__tsover_sub(1,r),2))),3)),E=Z(__tsover_mul(A,S),As(h),z(S,0,1));return ce(__tsover_sub(__tsover_sub(T,E),n),__tsover_add(__tsover_add(T,E),n),h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"strokeWidth\"},{type:\"i\",name:\"strokeFalloff\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,[7,\"center\",\"x\"],\"*\",\"aspect\"]]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]],[13,\"l\",[6,\"std.length\",[[6,\"d.vec2f\",[\"dx\",\"dy\"]]]]],[13,\"offset\",[6,\"spiralOffset\",[\"center\",\"scale\",\"animTime\",\"uv\",\"viewport\"]]],[13,\"stripe\",[6,\"std.fract\",[\"offset\"]]],[13,\"shape\",[1,[6,\"std.abs\",[[1,\"stripe\",\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"baseWidth\",[6,\"std.clamp\",[\"strokeWidth\",[1,\"strokeFalloff\",\"*\",[5,\"0.005\"]],[5,\"1\"]]]],[13,\"falloffAmount\",[1,[5,\"1\"],\"-\",[1,[6,\"std.clamp\",[\"strokeFalloff\",[5,\"0\"],[5,\"1\"]]],\"*\",\"l\"]]],[13,\"width\",[1,\"baseWidth\",\"*\",\"falloffAmount\"]],[13,\"fw\",[6,\"std.fwidth\",[\"offset\"]]],[13,\"fwMult\",[1,[5,\"4\"],\"-\",[1,[1,[6,\"std.smoothstep\",[[5,\"0.05\"],[5,\"0.4\"],[1,\"strokeWidth\",\"*\",[5,\"2\"]]]],\"*\",[6,\"std.smoothstep\",[[5,\"0.05\"],[5,\"0.4\"],[1,[1,[5,\"1\"],\"-\",\"strokeWidth\"],\"*\",[5,\"2\"]]]]],\"*\",[5,\"3\"]]]],[13,\"pixelSize\",[6,\"std.mix\",[[1,\"fwMult\",\"*\",\"fw\"],[6,\"std.fwidth\",[\"shape\"]],[6,\"std.clamp\",[\"fw\",[5,\"0\"],[5,\"1\"]]]]]],[10,[6,\"std.smoothstep\",[[1,[1,\"width\",\"-\",\"pixelSize\"],\"-\",\"softness\"],[1,[1,\"width\",\"+\",\"pixelSize\"],\"+\",\"softness\"],\"shape\"]]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,spiralOffset:()=>P2,\"std.fract\":()=>ve,\"std.abs\":()=>W,\"std.clamp\":()=>z,\"std.fwidth\":()=>As,\"std.smoothstep\":()=>ce,\"std.mix\":()=>Z}})&&e.f)({})),fd=y.fn([u,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(t.x,s.x),n=__tsover_sub(t.y,s.y),i=__tsover_add($e(__tsover_add(__tsover_mul(o,o),__tsover_mul(n,n))),.001);return __tsover_div(1,Ye(i,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvAspect\"},{type:\"i\",name:\"pos\"},{type:\"i\",name:\"effPower\"}],body:[0,[[13,\"dx\",[1,[7,\"uvAspect\",\"x\"],\"-\",[7,\"pos\",\"x\"]]],[13,\"dy\",[1,[7,\"uvAspect\",\"y\"],\"-\",[7,\"pos\",\"y\"]]],[13,\"dist\",[1,[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]],\"+\",[5,\"0.001\"]]],[10,[1,[5,\"1\"],\"/\",[6,\"std.pow\",[\"dist\",\"effPower\"]]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.pow\":()=>Ye}})&&e.f)({})),KV=y.fn([u,u,u,u,u,u,u,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=Vt(s),_=u(__tsover_mul(t.x,c),t.y),p=aa(r,c),f=aa(o,c),h=aa(n,c),g=aa(i,c),x=aa(d,c),T=ue(__tsover_div(8,__tsover_add(l,.5)),8),S=fd(_,p,T),A=fd(_,f,T),E=fd(_,h,T),M=fd(_,g,T),$=fd(_,x,T),L=S,B=__tsover_div(A,__tsover_add(L,A)),D=__tsover_add(L,A),G=__tsover_div(E,__tsover_add(D,E)),I=__tsover_add(D,E),X=__tsover_div(M,__tsover_add(I,M)),H=__tsover_add(I,M);return b(B,G,X,__tsover_div($,__tsover_add(H,$)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"vp\"},{type:\"i\",name:\"posA\"},{type:\"i\",name:\"posB\"},{type:\"i\",name:\"posC\"},{type:\"i\",name:\"posD\"},{type:\"i\",name:\"posE\"},{type:\"i\",name:\"smoothness\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"vp\"]]],[13,\"uvAspect\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"pA\",[6,\"aspectCentrePosition\",[\"posA\",\"aspect\"]]],[13,\"pB\",[6,\"aspectCentrePosition\",[\"posB\",\"aspect\"]]],[13,\"pC\",[6,\"aspectCentrePosition\",[\"posC\",\"aspect\"]]],[13,\"pD\",[6,\"aspectCentrePosition\",[\"posD\",\"aspect\"]]],[13,\"pE\",[6,\"aspectCentrePosition\",[\"posE\",\"aspect\"]]],[13,\"effPower\",[6,\"std.min\",[[1,[5,\"8\"],\"/\",[1,\"smoothness\",\"+\",[5,\"0.5\"]]],[5,\"8\"]]]],[13,\"wA\",[6,\"mpgWeight\",[\"uvAspect\",\"pA\",\"effPower\"]]],[13,\"wB\",[6,\"mpgWeight\",[\"uvAspect\",\"pB\",\"effPower\"]]],[13,\"wC\",[6,\"mpgWeight\",[\"uvAspect\",\"pC\",\"effPower\"]]],[13,\"wD\",[6,\"mpgWeight\",[\"uvAspect\",\"pD\",\"effPower\"]]],[13,\"wE\",[6,\"mpgWeight\",[\"uvAspect\",\"pE\",\"effPower\"]]],[13,\"accW1\",\"wA\"],[13,\"t1\",[1,\"wB\",\"/\",[1,\"accW1\",\"+\",\"wB\"]]],[13,\"accW2\",[1,\"accW1\",\"+\",\"wB\"]],[13,\"t2\",[1,\"wC\",\"/\",[1,\"accW2\",\"+\",\"wC\"]]],[13,\"accW3\",[1,\"accW2\",\"+\",\"wC\"]],[13,\"t3\",[1,\"wD\",\"/\",[1,\"accW3\",\"+\",\"wD\"]]],[13,\"accW4\",[1,\"accW3\",\"+\",\"wD\"]],[13,\"t4\",[1,\"wE\",\"/\",[1,\"accW4\",\"+\",\"wE\"]]],[10,[6,\"d.vec4f\",[\"t1\",\"t2\",\"t3\",\"t4\"]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec2f\":()=>u,aspectCentrePosition:()=>aa,\"std.min\":()=>ue,mpgWeight:()=>fd,\"d.vec4f\":()=>b}})&&e.f)({})),ZV=y.fn([u,u,u,u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=Vt(s),_=u(r.x,__tsover_sub(1,r.y)),p=u(o.x,__tsover_sub(1,o.y)),f=u(__tsover_mul(_.x,c),_.y),h=u(__tsover_mul(p.x,c),p.y),g=q3(u(__tsover_mul(t.x,c),t.y),f,h),x=X3(g.y,g.x,__tsover_mul(n,.25),__tsover_mul(i,.25),d,l),T=x.x,S=x.y;return u(T,S)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"vp\"},{type:\"i\",name:\"start\"},{type:\"i\",name:\"end\"},{type:\"i\",name:\"startThickness\"},{type:\"i\",name:\"endThickness\"},{type:\"i\",name:\"startSoftness\"},{type:\"i\",name:\"endSoftness\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"vp\"]]],[13,\"startPos\",[6,\"d.vec2f\",[[7,\"start\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"start\",\"y\"]]]]],[13,\"endPos\",[6,\"d.vec2f\",[[7,\"end\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"end\",\"y\"]]]]],[13,\"acStart\",[6,\"d.vec2f\",[[1,[7,\"startPos\",\"x\"],\"*\",\"aspect\"],[7,\"startPos\",\"y\"]]]],[13,\"acEnd\",[6,\"d.vec2f\",[[1,[7,\"endPos\",\"x\"],\"*\",\"aspect\"],[7,\"endPos\",\"y\"]]]],[13,\"acUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"proj\",[6,\"lightfields.pointToSegment\",[\"acUV\",\"acStart\",\"acEnd\"]]],[13,\"field\",[6,\"lightfields.taperedSegmentGlow\",[[7,\"proj\",\"y\"],[7,\"proj\",\"x\"],[1,\"startThickness\",\"*\",[5,\"0.25\"]],[1,\"endThickness\",\"*\",[5,\"0.25\"]],\"startSoftness\",\"endSoftness\"]]],[13,\"colorT\",[7,\"field\",\"x\"]],[13,\"alpha\",[7,\"field\",\"y\"]],[10,[6,\"d.vec2f\",[\"colorT\",\"alpha\"]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec2f\":()=>u,\"lightfields.pointToSegment\":()=>q3,\"lightfields.taperedSegmentGlow\":()=>X3}})&&e.f)({})),_F=K7({domain:\"unit\",contrastMode:\"multiplicative\",invert:!0,glowGamma:!0,balance:\"percentCentred\"}),pF=y.fn([u,u,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s);return v(__tsover_mul(t.x,o),t.y,0).mul(Mt(__tsover_sub(r,1)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"scale\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"base\",[6,\"d.vec3f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"],[5,\"0\"]]]],[10,[6,[7,\"base\",\"mul\"],[[6,\"std.exp\",[[1,\"scale\",\"-\",[5,\"1\"]]]]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec3f\":()=>v,\"std.exp\":()=>Mt}})&&e.f)({})),mF=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(__tsover_mul(Po(t),.5),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"}],body:[0,[[10,[1,[1,[6,\"noise.mxNoiseFloat3\",[\"pos\"]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]]},externals:{\"noise.mxNoiseFloat3\":()=>Po}})&&e.f)({})),fF=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=r,n=s,i=u(__tsover_add(t.x,__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(t.y,__tsover_mul(n,1.7)),__tsover_mul(o,.8))),.12),__tsover_mul(J(__tsover_sub(__tsover_mul(t.x,__tsover_mul(n,.9)),__tsover_mul(o,.5))),.05))),__tsover_add(t.y,__tsover_add(__tsover_mul(J(__tsover_sub(__tsover_mul(t.x,__tsover_mul(n,1.3)),__tsover_mul(o,.6))),.12),__tsover_mul(O(__tsover_add(__tsover_mul(t.y,__tsover_mul(n,1.1)),__tsover_mul(o,.7))),.05)))),d=O(__tsover_add(__tsover_add(__tsover_mul(i.x,__tsover_mul(n,2.1)),__tsover_mul(i.y,__tsover_mul(n,1.8))),__tsover_mul(o,.4))),l=__tsover_mul(s,2.1),c=u(__tsover_add(i.x,__tsover_add(__tsover_mul(J(__tsover_sub(__tsover_mul(i.y,__tsover_mul(l,2.7)),__tsover_mul(o,.45))),.07),__tsover_mul(O(__tsover_add(__tsover_mul(i.x,__tsover_mul(l,1.9)),__tsover_mul(o,.6))),.04))),__tsover_add(i.y,__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(i.x,__tsover_mul(l,2.3)),__tsover_mul(o,.65))),.07),__tsover_mul(J(__tsover_sub(__tsover_mul(i.y,__tsover_mul(l,1.6)),__tsover_mul(o,.4))),.04)))),_=J(__tsover_add(__tsover_sub(__tsover_mul(c.x,__tsover_mul(l,1.4)),__tsover_mul(c.y,__tsover_mul(l,1.9))),__tsover_mul(o,.35))),p=__tsover_mul(s,3.7),f=u(__tsover_add(c.x,__tsover_add(__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(c.y,__tsover_mul(p,1.8)),__tsover_mul(o,.85))),.04),__tsover_mul(J(__tsover_sub(__tsover_mul(c.x,__tsover_mul(p,1.3)),__tsover_mul(o,.55))),.025)),__tsover_mul(O(__tsover_add(__tsover_mul(__tsover_add(c.x,c.y),__tsover_mul(p,.7)),__tsover_mul(o,.9))),.02))),__tsover_add(c.y,__tsover_add(__tsover_add(__tsover_mul(J(__tsover_sub(__tsover_mul(c.x,__tsover_mul(p,1.6)),__tsover_mul(o,.75))),.04),__tsover_mul(O(__tsover_add(__tsover_mul(c.y,__tsover_mul(p,1.1)),__tsover_mul(o,.5))),.025)),__tsover_mul(J(__tsover_sub(__tsover_mul(__tsover_add(c.x,c.y),__tsover_mul(p,.8)),__tsover_mul(o,.95))),.02)))),h=O(__tsover_sub(__tsover_add(__tsover_mul(f.x,__tsover_mul(p,1.1)),__tsover_mul(f.y,__tsover_mul(p,1.5))),__tsover_mul(o,.55)));return __tsover_add(__tsover_add(__tsover_mul(d,.45),__tsover_mul(_,.35)),__tsover_mul(h,.2))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"detail\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"t\",\"animTime\"],[13,\"freq1\",\"detail\"],[13,\"d1\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"uv\",\"y\"],\"*\",[1,\"freq1\",\"*\",[5,\"1.7\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.8\"]]]]],\"*\",[5,\"0.12\"]],\"+\",[1,[6,\"std.cos\",[[1,[1,[7,\"uv\",\"x\"],\"*\",[1,\"freq1\",\"*\",[5,\"0.9\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.5\"]]]]],\"*\",[5,\"0.05\"]]]],[1,[7,\"uv\",\"y\"],\"+\",[1,[1,[6,\"std.cos\",[[1,[1,[7,\"uv\",\"x\"],\"*\",[1,\"freq1\",\"*\",[5,\"1.3\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.6\"]]]]],\"*\",[5,\"0.12\"]],\"+\",[1,[6,\"std.sin\",[[1,[1,[7,\"uv\",\"y\"],\"*\",[1,\"freq1\",\"*\",[5,\"1.1\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.7\"]]]]],\"*\",[5,\"0.05\"]]]]]]],[13,\"pattern1\",[6,\"std.sin\",[[1,[1,[1,[7,\"d1\",\"x\"],\"*\",[1,\"freq1\",\"*\",[5,\"2.1\"]]],\"+\",[1,[7,\"d1\",\"y\"],\"*\",[1,\"freq1\",\"*\",[5,\"1.8\"]]]],\"+\",[1,\"t\",\"*\",[5,\"0.4\"]]]]]],[13,\"freq2\",[1,\"detail\",\"*\",[5,\"2.1\"]]],[13,\"d2\",[6,\"d.vec2f\",[[1,[7,\"d1\",\"x\"],\"+\",[1,[1,[6,\"std.cos\",[[1,[1,[7,\"d1\",\"y\"],\"*\",[1,\"freq2\",\"*\",[5,\"2.7\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.45\"]]]]],\"*\",[5,\"0.07\"]],\"+\",[1,[6,\"std.sin\",[[1,[1,[7,\"d1\",\"x\"],\"*\",[1,\"freq2\",\"*\",[5,\"1.9\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.6\"]]]]],\"*\",[5,\"0.04\"]]]],[1,[7,\"d1\",\"y\"],\"+\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"d1\",\"x\"],\"*\",[1,\"freq2\",\"*\",[5,\"2.3\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.65\"]]]]],\"*\",[5,\"0.07\"]],\"+\",[1,[6,\"std.cos\",[[1,[1,[7,\"d1\",\"y\"],\"*\",[1,\"freq2\",\"*\",[5,\"1.6\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.4\"]]]]],\"*\",[5,\"0.04\"]]]]]]],[13,\"pattern2\",[6,\"std.cos\",[[1,[1,[1,[7,\"d2\",\"x\"],\"*\",[1,\"freq2\",\"*\",[5,\"1.4\"]]],\"-\",[1,[7,\"d2\",\"y\"],\"*\",[1,\"freq2\",\"*\",[5,\"1.9\"]]]],\"+\",[1,\"t\",\"*\",[5,\"0.35\"]]]]]],[13,\"freq3\",[1,\"detail\",\"*\",[5,\"3.7\"]]],[13,\"d3\",[6,\"d.vec2f\",[[1,[7,\"d2\",\"x\"],\"+\",[1,[1,[1,[6,\"std.sin\",[[1,[1,[7,\"d2\",\"y\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.8\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.85\"]]]]],\"*\",[5,\"0.04\"]],\"+\",[1,[6,\"std.cos\",[[1,[1,[7,\"d2\",\"x\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.3\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.55\"]]]]],\"*\",[5,\"0.025\"]]],\"+\",[1,[6,\"std.sin\",[[1,[1,[1,[7,\"d2\",\"x\"],\"+\",[7,\"d2\",\"y\"]],\"*\",[1,\"freq3\",\"*\",[5,\"0.7\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.9\"]]]]],\"*\",[5,\"0.02\"]]]],[1,[7,\"d2\",\"y\"],\"+\",[1,[1,[1,[6,\"std.cos\",[[1,[1,[7,\"d2\",\"x\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.6\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.75\"]]]]],\"*\",[5,\"0.04\"]],\"+\",[1,[6,\"std.sin\",[[1,[1,[7,\"d2\",\"y\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.1\"]]],\"+\",[1,\"t\",\"*\",[5,\"0.5\"]]]]],\"*\",[5,\"0.025\"]]],\"+\",[1,[6,\"std.cos\",[[1,[1,[1,[7,\"d2\",\"x\"],\"+\",[7,\"d2\",\"y\"]],\"*\",[1,\"freq3\",\"*\",[5,\"0.8\"]]],\"-\",[1,\"t\",\"*\",[5,\"0.95\"]]]]],\"*\",[5,\"0.02\"]]]]]]],[13,\"pattern3\",[6,\"std.sin\",[[1,[1,[1,[7,\"d3\",\"x\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.1\"]]],\"+\",[1,[7,\"d3\",\"y\"],\"*\",[1,\"freq3\",\"*\",[5,\"1.5\"]]]],\"-\",[1,\"t\",\"*\",[5,\"0.55\"]]]]]],[10,[1,[1,[1,\"pattern1\",\"*\",[5,\"0.45\"]],\"+\",[1,\"pattern2\",\"*\",[5,\"0.35\"]]],\"+\",[1,\"pattern3\",\"*\",[5,\"0.2\"]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.sin\":()=>O,\"std.cos\":()=>J}})&&e.f)({})),vF=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return ce(r,o,__tsover_add(__tsover_add(__tsover_mul(t,.5),.5),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pattern\"},{type:\"i\",name:\"bias\"},{type:\"i\",name:\"low\"},{type:\"i\",name:\"high\"}],body:[0,[[13,\"normalized\",[1,[1,[1,\"pattern\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],\"+\",\"bias\"]],[10,[6,\"std.smoothstep\",[\"low\",\"high\",\"normalized\"]]]]]},externals:{\"std.smoothstep\":()=>ce}})&&e.f)({})),hF=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return __tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(s,r),__tsover_mul(t,o))),n),1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pattern\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"speed\"},{type:\"i\",name:\"span\"},{type:\"i\",name:\"depth\"}],body:[0,[[10,[1,[1,[6,\"std.sin\",[[1,[1,\"animTime\",\"*\",\"speed\"],\"+\",[1,\"pattern\",\"*\",\"span\"]]]],\"*\",\"depth\"],\"+\",[5,\"1\"]]]]]},externals:{\"std.sin\":()=>O}})&&e.f)({})),Wl=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ms(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"noise.hash12\",[\"p\"]]]]]},externals:{\"noise.hash12\":()=>ms}})&&e.f)({})),mf=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=ve(t),o=Wl(s),n=Wl(u(__tsover_add(s.x,1),s.y)),i=Wl(u(s.x,__tsover_add(s.y,1))),d=Wl(u(__tsover_add(s.x,1),__tsover_add(s.y,1))),l=r.mul(r).mul(r.mul(-2).add(3));return Z(Z(o,n,l.x),Z(i,d,l.x),l.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"st\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"st\"]]],[13,\"f\",[6,\"std.fract\",[\"st\"]]],[13,\"a\",[6,\"godraysHash\",[\"i\"]]],[13,\"b\",[6,\"godraysHash\",[[6,\"d.vec2f\",[[1,[7,\"i\",\"x\"],\"+\",[5,\"1\"]],[7,\"i\",\"y\"]]]]]],[13,\"c\",[6,\"godraysHash\",[[6,\"d.vec2f\",[[7,\"i\",\"x\"],[1,[7,\"i\",\"y\"],\"+\",[5,\"1\"]]]]]]],[13,\"e\",[6,\"godraysHash\",[[6,\"d.vec2f\",[[1,[7,\"i\",\"x\"],\"+\",[5,\"1\"]],[1,[7,\"i\",\"y\"],\"+\",[5,\"1\"]]]]]]],[13,\"u\",[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[4,\"-\",[5,\"2\"]]]],\"add\"],[[5,\"3\"]]]]]],[13,\"x1\",[6,\"std.mix\",[\"a\",\"b\",[7,\"u\",\"x\"]]]],[13,\"x2\",[6,\"std.mix\",[\"c\",\"e\",[7,\"u\",\"x\"]]]],[10,[6,\"std.mix\",[\"x1\",\"x2\",[7,\"u\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,godraysHash:()=>Wl,\"d.vec2f\":()=>u,\"std.mix\":()=>Z}})&&e.f)({})),ff=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Ye(mf(u(__tsover_mul(t,n),o)),i);return Z(Ye(mf(u(__tsover_mul(s,n),o)),i),d,r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"a\"},{type:\"i\",name:\"aWrapped\"},{type:\"i\",name:\"blend\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"freq\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"nLeft\",[6,\"std.pow\",[[6,\"godraysValueNoise\",[[6,\"d.vec2f\",[[1,\"a\",\"*\",\"freq\"],\"r\"]]]],\"intensity\"]]],[13,\"nRight\",[6,\"std.pow\",[[6,\"godraysValueNoise\",[[6,\"d.vec2f\",[[1,\"aWrapped\",\"*\",\"freq\"],\"r\"]]]],\"intensity\"]]],[10,[6,\"std.mix\",[\"nRight\",\"nLeft\",\"blend\"]]]]]},externals:{\"std.pow\":()=>Ye,godraysValueNoise:()=>mf,\"d.vec2f\":()=>u,\"std.mix\":()=>Z}})&&e.f)({})),yF=y.fn([u,u,u],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s),n=u(r.x,__tsover_sub(1,r.y)),i=t.sub(n),d=u(__tsover_mul(i.x,o),i.y),l=N3(d);return b(l.x,l.y,l.z,te(d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"center\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"delta\",[6,[7,\"uv\",\"sub\"],[\"centerPos\"]]],[13,\"shapeUV\",[6,\"d.vec2f\",[[1,[7,\"delta\",\"x\"],\"*\",\"aspect\"],[7,\"delta\",\"y\"]]]],[13,\"ang\",[6,\"lightfields.seamlessAngularField\",[\"shapeUV\"]]],[10,[6,\"d.vec4f\",[[7,\"ang\",\"x\"],[7,\"ang\",\"y\"],[7,\"ang\",\"z\"],[6,\"std.length\",[\"shapeUV\"]]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec2f\":()=>u,\"lightfields.seamlessAngularField\":()=>N3,\"d.vec4f\":()=>b,\"std.length\":()=>te}})&&e.f)({})),vf=y.fn([b,a,a,a,a,b,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_sub(__tsover_mul(t.w,i.x),__tsover_mul(s,i.y)),c=__tsover_sub(__tsover_mul(__tsover_mul(t.w,i.z),__tsover_add(1,r)),__tsover_mul(s,i.w)),_=__tsover_mul(n,d.x),p=ff(t.x,t.y,t.z,l,_,o),f=ff(t.x,t.y,t.z,c,__tsover_mul(_,d.y),o);return __tsover_mul(p,f)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"frame\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"spots\"},{type:\"i\",name:\"intensityCalc\"},{type:\"i\",name:\"dens\"},{type:\"i\",name:\"sched\"},{type:\"i\",name:\"freqs\"}],body:[0,[[13,\"rA\",[1,[1,[7,\"frame\",\"w\"],\"*\",[7,\"sched\",\"x\"]],\"-\",[1,\"animTime\",\"*\",[7,\"sched\",\"y\"]]]],[13,\"rB\",[1,[1,[1,[7,\"frame\",\"w\"],\"*\",[7,\"sched\",\"z\"]],\"*\",[1,[5,\"1\"],\"+\",\"spots\"]],\"-\",[1,\"animTime\",\"*\",[7,\"sched\",\"w\"]]]],[13,\"f\",[1,\"dens\",\"*\",[7,\"freqs\",\"x\"]]],[13,\"shapeA\",[6,\"godraysRaysShape\",[[7,\"frame\",\"x\"],[7,\"frame\",\"y\"],[7,\"frame\",\"z\"],\"rA\",\"f\",\"intensityCalc\"]]],[13,\"shapeB\",[6,\"godraysRaysShape\",[[7,\"frame\",\"x\"],[7,\"frame\",\"y\"],[7,\"frame\",\"z\"],\"rB\",[1,\"f\",\"*\",[7,\"freqs\",\"y\"]],\"intensityCalc\"]]],[10,[1,\"shapeA\",\"*\",\"shapeB\"]]]]},externals:{godraysRaysShape:()=>ff}})&&e.f)({})),gF=y.fn([b,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(s,.2),d=__tsover_mul(6.5,W(n)),l=__tsover_sub(4,__tsover_mul(3,z(o,0,1))),c=__tsover_mul(6,r),_=vf(t,i,d,l,c,b(1,3,.5,2),u(5,4)),p=vf(t,i,d,l,c,b(1.4,2.5,.7,1.8),u(4.5,3.5));return z(__tsover_add(_,__tsover_mul(p,.7)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"frame\"},{type:\"i\",name:\"animTimeRaw\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"spotty\"}],body:[0,[[13,\"animTime\",[1,\"animTimeRaw\",\"*\",[5,\"0.2\"]]],[13,\"spots\",[1,[5,\"6.5\"],\"*\",[6,\"std.abs\",[\"spotty\"]]]],[13,\"intensityCalc\",[1,[5,\"4\"],\"-\",[1,[5,\"3\"],\"*\",[6,\"std.clamp\",[\"intensity\",[5,\"0\"],[5,\"1\"]]]]]],[13,\"dens\",[1,[5,\"6\"],\"*\",\"density\"]],[13,\"layer1\",[6,\"godraysRayLayer\",[\"frame\",\"animTime\",\"spots\",\"intensityCalc\",\"dens\",[6,\"d.vec4f\",[[5,\"1\"],[5,\"3\"],[5,\"0.5\"],[5,\"2\"]]],[6,\"d.vec2f\",[[5,\"5\"],[5,\"4\"]]]]]],[13,\"layer2\",[6,\"godraysRayLayer\",[\"frame\",\"animTime\",\"spots\",\"intensityCalc\",\"dens\",[6,\"d.vec4f\",[[5,\"1.4\"],[5,\"2.5\"],[5,\"0.7\"],[5,\"1.8\"]]],[6,\"d.vec2f\",[[5,\"4.5\"],[5,\"3.5\"]]]]]],[10,[6,\"std.clamp\",[[1,\"layer1\",\"+\",[1,\"layer2\",\"*\",[5,\"0.7\"]]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.abs\":()=>W,\"std.clamp\":()=>z,godraysRayLayer:()=>vf,\"d.vec4f\":()=>b,\"d.vec2f\":()=>u}})&&e.f)({})),xF=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(r,t.w),n=__tsover_add(o,__tsover_mul(s.w,__tsover_sub(1,o))),i=z(n,.001,1),d=t.xyz.mul(o),l=s.xyz.mul(s.w).mul(__tsover_sub(1,o));return b(d.add(l).div(i),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rayColor\"},{type:\"i\",name:\"bgColor\"},{type:\"i\",name:\"coverage\"}],body:[0,[[13,\"rayA\",[1,\"coverage\",\"*\",[7,\"rayColor\",\"w\"]]],[13,\"finalAlpha\",[1,\"rayA\",\"+\",[1,[7,\"bgColor\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"rayA\"]]]],[13,\"safeAlpha\",[6,\"std.clamp\",[\"finalAlpha\",[5,\"0.001\"],[5,\"1\"]]]],[13,\"rayContribution\",[6,[7,[7,\"rayColor\",\"xyz\"],\"mul\"],[\"rayA\"]]],[13,\"bgContribution\",[6,[7,[6,[7,[7,\"bgColor\",\"xyz\"],\"mul\"],[[7,\"bgColor\",\"w\"]]],\"mul\"],[[1,[5,\"1\"],\"-\",\"rayA\"]]]],[13,\"finalColor\",[6,[7,[6,[7,\"rayContribution\",\"add\"],[\"bgContribution\"]],\"div\"],[\"safeAlpha\"]]],[10,[6,\"d.vec4f\",[\"finalColor\",\"finalAlpha\"]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({})),QV=y.fn([a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=uo(u(__tsover_mul(t,.9),__tsover_add(__tsover_mul(s,.53),11.7))),n=uo(u(__tsover_add(__tsover_mul(t,2.7),41.3),__tsover_add(__tsover_mul(s,.29),5.1))),i=__tsover_add(__tsover_mul(o,.65),__tsover_mul(n,.35));return b(Z(1,__tsover_add(.25,__tsover_mul(1.5,i)),r),uo(u(__tsover_add(__tsover_mul(t,.13),3.1),__tsover_add(__tsover_mul(s,.41),27))),uo(u(__tsover_add(__tsover_mul(t,.09),17.7),__tsover_add(__tsover_mul(s,.61),8.4))),uo(u(__tsover_add(__tsover_mul(t,.17),51.2),__tsover_add(__tsover_mul(s,.23),2.9))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"flicker\"}],body:[0,[[13,\"nA\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,\"t\",\"*\",[5,\"0.9\"]],[1,[1,\"seed\",\"*\",[5,\"0.53\"]],\"+\",[5,\"11.7\"]]]]]]],[13,\"nB\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,\"t\",\"*\",[5,\"2.7\"]],\"+\",[5,\"41.3\"]],[1,[1,\"seed\",\"*\",[5,\"0.29\"]],\"+\",[5,\"5.1\"]]]]]]],[13,\"breathe\",[1,[1,\"nA\",\"*\",[5,\"0.65\"]],\"+\",[1,\"nB\",\"*\",[5,\"0.35\"]]]],[13,\"flickerMod\",[6,\"std.mix\",[[5,\"1\"],[1,[5,\"0.25\"],\"+\",[1,[5,\"1.5\"],\"*\",\"breathe\"]],\"flicker\"]]],[13,\"evo1\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,\"t\",\"*\",[5,\"0.13\"]],\"+\",[5,\"3.1\"]],[1,[1,\"seed\",\"*\",[5,\"0.41\"]],\"+\",[5,\"27\"]]]]]]],[13,\"evo2\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,\"t\",\"*\",[5,\"0.09\"]],\"+\",[5,\"17.7\"]],[1,[1,\"seed\",\"*\",[5,\"0.61\"]],\"+\",[5,\"8.4\"]]]]]]],[13,\"evo3\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,\"t\",\"*\",[5,\"0.17\"]],\"+\",[5,\"51.2\"]],[1,[1,\"seed\",\"*\",[5,\"0.23\"]],\"+\",[5,\"2.9\"]]]]]]],[10,[6,\"d.vec4f\",[\"flickerMod\",\"evo1\",\"evo2\",\"evo3\"]]]]]},externals:{\"noise.value12\":()=>uo,\"d.vec2f\":()=>u,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),JV=y.fn([a,a,a,b],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=o.z,i=w(r,.05),d=__tsover_mul(i,__tsover_add(1.5,__tsover_mul(.7,n))),l=__tsover_div(t,i),c=__tsover_div(s,d);return u(ef(l,c,1.9),__tsover_mul(ef(l,c,.45),.22))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"u\"},{type:\"i\",name:\"v\"},{type:\"i\",name:\"spread\"},{type:\"i\",name:\"drift\"}],body:[0,[[13,\"evo2\",[7,\"drift\",\"z\"]],[13,\"sp\",[6,\"std.max\",[\"spread\",[5,\"0.05\"]]]],[13,\"elong\",[1,\"sp\",\"*\",[1,[5,\"1.5\"],\"+\",[1,[5,\"0.7\"],\"*\",\"evo2\"]]]],[13,\"du\",[1,\"u\",\"/\",\"sp\"]],[13,\"dv\",[1,\"v\",\"/\",\"elong\"]],[13,\"main\",[6,\"lightfields.anisotropicGaussianSpot\",[\"du\",\"dv\",[5,\"1.9\"]]]],[13,\"shoulder\",[1,[6,\"lightfields.anisotropicGaussianSpot\",[\"du\",\"dv\",[5,\"0.45\"]]],\"*\",[5,\"0.22\"]]],[10,[6,\"d.vec2f\",[\"main\",\"shoulder\"]]]]]},externals:{\"std.max\":()=>w,\"lightfields.anisotropicGaussianSpot\":()=>ef,\"d.vec2f\":()=>u}})&&e.f)({})),e9=y.fn([a,a,a,a,b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=n.y,d=n.z,l=n.w,c=w(r,.05),_=__tsover_mul(c,__tsover_add(1.5,__tsover_mul(.7,d))),p=__tsover_div(s,_),f=Mt(__tsover_mul(__tsover_mul(p,p),-.55)),h=__tsover_mul(c,__tsover_add(.42,__tsover_mul(.22,i))),g=w(__tsover_mul(c,__tsover_add(.07,__tsover_mul(.07,l))),.008),x=__tsover_mul(sf(t,h,g),f),T=__tsover_mul(c,__tsover_add(.8,__tsover_mul(.3,i))),S=w(__tsover_mul(c,__tsover_add(.16,__tsover_mul(.12,l))),.015),A=__tsover_mul(__tsover_mul(sf(t,T,S),f),.45);return __tsover_mul(__tsover_add(x,A),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"u\"},{type:\"i\",name:\"v\"},{type:\"i\",name:\"spread\"},{type:\"i\",name:\"streaks\"},{type:\"i\",name:\"drift\"}],body:[0,[[13,\"evo1\",[7,\"drift\",\"y\"]],[13,\"evo2\",[7,\"drift\",\"z\"]],[13,\"evo3\",[7,\"drift\",\"w\"]],[13,\"sp\",[6,\"std.max\",[\"spread\",[5,\"0.05\"]]]],[13,\"elong\",[1,\"sp\",\"*\",[1,[5,\"1.5\"],\"+\",[1,[5,\"0.7\"],\"*\",\"evo2\"]]]],[13,\"dv\",[1,\"v\",\"/\",\"elong\"]],[13,\"alongFade\",[6,\"std.exp\",[[1,[1,\"dv\",\"*\",\"dv\"],\"*\",[4,\"-\",[5,\"0.55\"]]]]]],[13,\"s1c\",[1,\"sp\",\"*\",[1,[5,\"0.42\"],\"+\",[1,[5,\"0.22\"],\"*\",\"evo1\"]]]],[13,\"s1w\",[6,\"std.max\",[[1,\"sp\",\"*\",[1,[5,\"0.07\"],\"+\",[1,[5,\"0.07\"],\"*\",\"evo3\"]]],[5,\"0.008\"]]]],[13,\"streak1\",[1,[6,\"lightfields.streakBand\",[\"u\",\"s1c\",\"s1w\"]],\"*\",\"alongFade\"]],[13,\"s2c\",[1,\"sp\",\"*\",[1,[5,\"0.8\"],\"+\",[1,[5,\"0.3\"],\"*\",\"evo1\"]]]],[13,\"s2w\",[6,\"std.max\",[[1,\"sp\",\"*\",[1,[5,\"0.16\"],\"+\",[1,[5,\"0.12\"],\"*\",\"evo3\"]]],[5,\"0.015\"]]]],[13,\"streak2\",[1,[1,[6,\"lightfields.streakBand\",[\"u\",\"s2c\",\"s2w\"]],\"*\",\"alongFade\"],\"*\",[5,\"0.45\"]]],[10,[1,[1,\"streak1\",\"+\",\"streak2\"],\"*\",\"streaks\"]]]]},externals:{\"std.max\":()=>w,\"std.exp\":()=>Mt,\"lightfields.streakBand\":()=>sf}})&&e.f)({})),t9=y.fn([a,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return w(__tsover_add(t,__tsover_mul(__tsover_sub(ms(s.mul(1024).add(u(r,__tsover_mul(r,1.7)))),.5),.012)),0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"heat\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"dithered\",[1,\"heat\",\"+\",[1,[1,[6,\"noise.hash12\",[[6,[7,[6,[7,\"uv\",\"mul\"],[[5,\"1024\"]]],\"add\"],[[6,\"d.vec2f\",[\"t\",[1,\"t\",\"*\",[5,\"1.7\"]]]]]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"0.012\"]]]],[10,[6,\"std.max\",[\"dithered\",[5,\"0\"]]]]]]},externals:{\"noise.hash12\":()=>ms,\"d.vec2f\":()=>u,\"std.max\":()=>w}})&&e.f)({})),bF=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(t,s),o=__tsover_mul(ve(__tsover_mul(r,.5)),2);return Z(__tsover_sub(1,W(__tsover_sub(o,1))),.5,ce(.5,1.5,__tsover_mul(hp(t,0),s)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"cycles\"}],body:[0,[[13,\"s\",[1,\"t\",\"*\",\"cycles\"]],[13,\"m\",[1,[6,\"std.fract\",[[1,\"s\",\"*\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"band\",[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,\"m\",\"-\",[5,\"1\"]]]]]],[13,\"fp\",[1,[6,\"footprint1\",[\"t\",[5,\"0\"]]],\"*\",\"cycles\"]],[10,[6,\"std.mix\",[\"band\",[5,\"0.5\"],[6,\"std.smoothstep\",[[5,\"0.5\"],[5,\"1.5\"],\"fp\"]]]]]]]},externals:{\"std.fract\":()=>ve,\"std.abs\":()=>W,footprint1:()=>hp,\"std.mix\":()=>Z,\"std.smoothstep\":()=>ce}})&&e.f)({}));function uT(e,t){return{guarded:e,with(s){return uT(e.with(s),t)},dispatch(){if(!t)throw new Error(\"[gpu] KitComputePipeline.dispatch(): no pre-bound size \\u2014 pass opts.size to createGuardedCompute or call dispatchThreads(...) directly\");e.dispatchThreads(...t)},dispatchThreads(...s){e.dispatchThreads(...s)}}}function wv(e,t,s={}){let r=(globalThis.__TYPEGPU_AUTONAME__??(o=>o))(e.createGuardedComputePipeline(t),\"guarded\");return s.bindGroup&&(r=r.with(s.bindGroup)),uT(r,s.size)}function _T(e){return{dispatch(t){for(let s of t)typeof s==\"function\"?s():s.dispatch()}}}function wF(e,t){let s=!1;return{a:e,b:t,orientation:()=>s?1:0,readSource:()=>s?t:e,writeTarget:()=>s?e:t,swap(){s=!s},reset(){s=!1},groups(n){let i=n(e,t),d=n(t,e);return()=>s?d:i},perSide(n){let i=n(e),d=n(t);return{read:()=>s?d:i,written:()=>s?i:d}}}}function M2(e,t,s){return(globalThis.__TYPEGPU_AUTONAME__??(r=>r))(e.createBuffer(zt(t,s)),\"buffer\").$usage(\"storage\")}var kp=Qe;function TF(e,t){let s=Number((t*t).toPrecision(15)),r=e-1,o=Array.from({length:e},(i,d)=>{let l=(d/r-.5)*2;return Math.exp(-.5*l*l/s)}),n=o.reduce((i,d)=>i+d);return o.map(i=>i/n)}var s9=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=w(__tsover_sub(r,s),1e-4);return Z(o,n,Ye(z(__tsover_div(__tsover_sub(t,s),d),0,1),Ye(2,__tsover_mul(-i,2))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"raw\"},{type:\"i\",name:\"inputMin\"},{type:\"i\",name:\"inputMax\"},{type:\"i\",name:\"outputMin\"},{type:\"i\",name:\"outputMax\"},{type:\"i\",name:\"curve\"}],body:[0,[[13,\"inputRange\",[6,\"std.max\",[[1,\"inputMax\",\"-\",\"inputMin\"],[5,\"0.0001\"]]]],[13,\"normalised\",[6,\"std.clamp\",[[1,[1,\"raw\",\"-\",\"inputMin\"],\"/\",\"inputRange\"],[5,\"0\"],[5,\"1\"]]]],[13,\"exponent\",[6,\"std.pow\",[[5,\"2\"],[1,[4,\"-\",\"curve\"],\"*\",[5,\"2\"]]]]],[13,\"eased\",[6,\"std.pow\",[\"normalised\",\"exponent\"]]],[10,[6,\"std.mix\",[\"outputMin\",\"outputMax\",\"eased\"]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.pow\":()=>Ye,\"std.mix\":()=>Z}})&&e.f)({})).$name(\"applyRemapWindow\");var r9=y.fn([Hs(a),Y,Y,u,u,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=o.x,l=o.y,c=oe(__tsover_sub(d,1)),_=oe(__tsover_sub(l,1)),p=b(0,0,0,0);for(let S=0;S<4;S++)for(let A=0;A<4;A++){let E=__tsover_div(__tsover_add(a(s),__tsover_div(__tsover_add(a(A),.5),4)),n.x),M=__tsover_div(__tsover_add(a(r),__tsover_div(__tsover_add(a(S),.5),4)),n.y),$=z(oe(__tsover_mul(E,d)),0,c),L=z(oe(__tsover_mul(M,l)),0,_);p=p.add(at(t,He(Y($),Y(L)),0))}p=p.mul(.0625);let f=__tsover_add(__tsover_mul(i,.5),1e-4),h=le(p.xyz,v(.2126,.7152,.0722)),g=z(__tsover_add(__tsover_sub(h,i),f),0,__tsover_mul(f,2)),x=__tsover_div(__tsover_mul(g,g),__tsover_mul(f,4)),T=__tsover_div(w(x,__tsover_sub(h,i)),w(h,1e-4));return b(p.xyz.mul(T),__tsover_mul(p.w,T))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"childTexture\"},{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"},{type:\"i\",name:\"inputSize\"},{type:\"i\",name:\"computeSize\"},{type:\"i\",name:\"threshold\"}],body:[0,[[13,\"iw\",[7,\"inputSize\",\"x\"]],[13,\"ih\",[7,\"inputSize\",\"y\"]],[13,\"inputWm1\",[6,\"d.i32\",[[1,\"iw\",\"-\",[5,\"1\"]]]]],[13,\"inputHm1\",[6,\"d.i32\",[[1,\"ih\",\"-\",[5,\"1\"]]]]],[12,\"sample\",[6,\"d.vec4f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"],[5,\"0\"]]]],[14,[12,\"ty\",[5,\"0\"]],[1,\"ty\",\"<\",[5,\"4\"]],[102,\"++\",\"ty\"],[0,[[14,[12,\"tx\",[5,\"0\"]],[1,\"tx\",\"<\",[5,\"4\"]],[102,\"++\",\"tx\"],[0,[[13,\"su\",[1,[1,[6,\"d.f32\",[\"cx\"]],\"+\",[1,[1,[6,\"d.f32\",[\"tx\"]],\"+\",[5,\"0.5\"]],\"/\",[5,\"4\"]]],\"/\",[7,\"computeSize\",\"x\"]]],[13,\"sv\",[1,[1,[6,\"d.f32\",[\"cy\"]],\"+\",[1,[1,[6,\"d.f32\",[\"ty\"]],\"+\",[5,\"0.5\"]],\"/\",[5,\"4\"]]],\"/\",[7,\"computeSize\",\"y\"]]],[13,\"sx\",[6,\"std.clamp\",[[6,\"d.i32\",[[1,\"su\",\"*\",\"iw\"]]],[5,\"0\"],\"inputWm1\"]]],[13,\"sy\",[6,\"std.clamp\",[[6,\"d.i32\",[[1,\"sv\",\"*\",\"ih\"]]],[5,\"0\"],\"inputHm1\"]]],[2,\"sample\",\"=\",[6,[7,\"sample\",\"add\"],[[6,\"std.textureLoad\",[\"childTexture\",[6,\"d.vec2u\",[[6,\"d.u32\",[\"sx\"]],[6,\"d.u32\",[\"sy\"]]]],[5,\"0\"]]]]]]]]]]]],[2,\"sample\",\"=\",[6,[7,\"sample\",\"mul\"],[[5,\"0.0625\"]]]],[13,\"knee\",[1,[1,\"threshold\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.0001\"]]],[13,\"lum\",[6,\"std.dot\",[[7,\"sample\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[13,\"soft\",[6,\"std.clamp\",[[1,[1,\"lum\",\"-\",\"threshold\"],\"+\",\"knee\"],[5,\"0\"],[1,\"knee\",\"*\",[5,\"2\"]]]]],[13,\"softCurve\",[1,[1,\"soft\",\"*\",\"soft\"],\"/\",[1,\"knee\",\"*\",[5,\"4\"]]]],[13,\"mask\",[1,[6,\"std.max\",[\"softCurve\",[1,\"lum\",\"-\",\"threshold\"]]],\"/\",[6,\"std.max\",[\"lum\",[5,\"0.0001\"]]]]],[10,[6,\"d.vec4f\",[[6,[7,[7,\"sample\",\"xyz\"],\"mul\"],[\"mask\"]],[1,[7,\"sample\",\"w\"],\"*\",\"mask\"]]]]]]},externals:{\"d.i32\":()=>oe,\"d.vec4f\":()=>b,\"d.f32\":()=>a,\"std.clamp\":()=>z,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"d.u32\":()=>Y,\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.max\":()=>w}})&&e.f)({})).$name(\"bloomExtractSoftKnee\");var o9=y.fn([b,b,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,.1),d=__tsover_mul(o,.1),l=__tsover_mul(n,.1),c=w(w(w(i,d),l),.01),_=__tsover_div(i,c),p=__tsover_div(d,c),f=__tsover_div(l,c);return b(Z(t.x,s.x,_),Z(t.y,s.y,p),Z(t.z,s.z,f),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sharp\"},{type:\"i\",name:\"blurred\"},{type:\"i\",name:\"redIntensity\"},{type:\"i\",name:\"greenIntensity\"},{type:\"i\",name:\"blueIntensity\"}],body:[0,[[13,\"redRadius\",[1,\"redIntensity\",\"*\",[5,\"0.1\"]]],[13,\"greenRadius\",[1,\"greenIntensity\",\"*\",[5,\"0.1\"]]],[13,\"blueRadius\",[1,\"blueIntensity\",\"*\",[5,\"0.1\"]]],[13,\"maxRadius\",[6,\"std.max\",[[6,\"std.max\",[[6,\"std.max\",[\"redRadius\",\"greenRadius\"]],\"blueRadius\"]],[5,\"0.01\"]]]],[13,\"rMix\",[1,\"redRadius\",\"/\",\"maxRadius\"]],[13,\"gMix\",[1,\"greenRadius\",\"/\",\"maxRadius\"]],[13,\"bMix\",[1,\"blueRadius\",\"/\",\"maxRadius\"]],[13,\"finalR\",[6,\"std.mix\",[[7,\"sharp\",\"x\"],[7,\"blurred\",\"x\"],\"rMix\"]]],[13,\"finalG\",[6,\"std.mix\",[[7,\"sharp\",\"y\"],[7,\"blurred\",\"y\"],\"gMix\"]]],[13,\"finalB\",[6,\"std.mix\",[[7,\"sharp\",\"z\"],[7,\"blurred\",\"z\"],\"bMix\"]]],[10,[6,\"d.vec4f\",[\"finalR\",\"finalG\",\"finalB\",[7,\"sharp\",\"w\"]]]]]]},externals:{\"std.max\":()=>w,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"channelBlurCompose\"),n9=y.fn([a,a,a,a,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_mul(t,kp),l=u(__tsover_div(J(d),i),O(d)),c=u(s,__tsover_sub(1,r));return ce(0,o,w(0,le(n.sub(c),l)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"centerX\"},{type:\"i\",name:\"centerY\"},{type:\"i\",name:\"falloff\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"direction\",[6,\"d.vec2f\",[[1,[6,\"std.cos\",[\"angleRad\"]],\"/\",\"aspect\"],[6,\"std.sin\",[\"angleRad\"]]]]],[13,\"centerPos\",[6,\"d.vec2f\",[\"centerX\",[1,[5,\"1\"],\"-\",\"centerY\"]]]],[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[\"centerPos\"]]],[13,\"directionalDist\",[6,\"std.max\",[[5,\"0\"],[6,\"std.dot\",[\"centeredUV\",\"direction\"]]]]],[10,[6,\"std.smoothstep\",[[5,\"0\"],\"falloff\",\"directionalDist\"]]]]]},externals:{DEG_TO_RAD:()=>kp,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.max\":()=>w,\"std.dot\":()=>le,\"std.smoothstep\":()=>ce}})&&e.f)({})).$name(\"progressiveBlurAmount\");var a9=y.fn([a,u,a,a,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_mul(t,kp),l=u(__tsover_mul(O(d),-1),J(d)),c=u(s.x,__tsover_sub(1,s.y)),_=n.sub(c),p=W(le(u(__tsover_mul(_.x,i),_.y),l)),f=__tsover_mul(r,.5);return ce(f,__tsover_add(f,o),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"width\"},{type:\"i\",name:\"falloff\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"perpVector\",[6,\"d.vec2f\",[[1,[6,\"std.sin\",[\"angleRad\"]],\"*\",[4,\"-\",[5,\"1\"]]],[6,\"std.cos\",[\"angleRad\"]]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[\"centerPos\"]]],[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"centeredUV\",\"x\"],\"*\",\"aspect\"],[7,\"centeredUV\",\"y\"]]]],[13,\"distFromLine\",[6,\"std.abs\",[[6,\"std.dot\",[\"aspectCorrectedUV\",\"perpVector\"]]]]],[13,\"focusWidth\",[1,\"width\",\"*\",[5,\"0.5\"]]],[10,[6,\"std.smoothstep\",[\"focusWidth\",[1,\"focusWidth\",\"+\",\"falloff\"],\"distFromLine\"]]]]]},externals:{DEG_TO_RAD:()=>kp,\"d.vec2f\":()=>u,\"std.sin\":()=>O,\"std.cos\":()=>J,\"std.abs\":()=>W,\"std.dot\":()=>le,\"std.smoothstep\":()=>ce}})&&e.f)({})).$name(\"tiltShiftBlurAmount\");var i9=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=t.xyz.add(s.xyz.mul(r)),n=z(__tsover_mul(s.w,r),0,1);return b(o,__tsover_add(t.w,__tsover_mul(n,__tsover_sub(1,t.w))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"original\"},{type:\"i\",name:\"bloom\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"finalColor\",[6,[7,[7,\"original\",\"xyz\"],\"add\"],[[6,[7,[7,\"bloom\",\"xyz\"],\"mul\"],[\"intensity\"]]]]],[13,\"glowAlpha\",[6,\"std.clamp\",[[1,[7,\"bloom\",\"w\"],\"*\",\"intensity\"],[5,\"0\"],[5,\"1\"]]]],[13,\"finalAlpha\",[1,[7,\"original\",\"w\"],\"+\",[1,\"glowAlpha\",\"*\",[1,[5,\"1\"],\"-\",[7,\"original\",\"w\"]]]]],[10,[6,\"d.vec4f\",[\"finalColor\",\"finalAlpha\"]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"glowCompose\");var d9=Math.PI*(3-Math.sqrt(5)),l9=Math.PI*2;var k2=.35;var c9=Math.SQRT2/4;var u9=y.fn([b,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=le(t.xyz,v(.2126,.7152,.0722)),i=ce(s,__tsover_add(s,k2),n);return __tsover_mul(__tsover_add(1,__tsover_mul(__tsover_mul(r,i),i)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"threshold\"},{type:\"i\",name:\"gain\"},{type:\"i\",name:\"rim\"}],body:[0,[[13,\"lum\",[6,\"std.dot\",[[7,\"base\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.2126\"],[5,\"0.7152\"],[5,\"0.0722\"]]]]]],[13,\"hi\",[6,\"std.smoothstep\",[\"threshold\",[1,\"threshold\",\"+\",\"HIGHLIGHT_KNEE\"],\"lum\"]]],[10,[1,[1,[5,\"1\"],\"+\",[1,[1,\"gain\",\"*\",\"hi\"],\"*\",\"hi\"]],\"*\",\"rim\"]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.smoothstep\":()=>ce,HIGHLIGHT_KNEE:()=>k2}})&&e.f)({})).$name(\"bokehHighlightWeight\");var Nd=Qe,_9=TF(32,.8),p9=y.fn([u,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(s,Nd),d=__tsover_div(o.x,o.y),l=__tsover_div(J(i),d),c=O(i),_=__tsover_mul(__tsover_div(__tsover_mul(l,r),o.x),2),p=__tsover_mul(__tsover_div(__tsover_mul(c,r),o.y),2);return u(__tsover_add(t.x,__tsover_mul(_,n)),__tsover_add(t.y,__tsover_mul(p,n)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"tapT\"}],body:[0,[[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"dirX\",[1,[6,\"std.cos\",[\"angleRad\"]],\"/\",\"aspect\"]],[13,\"dirY\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"bvX\",[1,[1,[1,\"dirX\",\"*\",\"intensity\"],\"/\",[7,\"viewport\",\"x\"]],\"*\",[5,\"2\"]]],[13,\"bvY\",[1,[1,[1,\"dirY\",\"*\",\"intensity\"],\"/\",[7,\"viewport\",\"y\"]],\"*\",[5,\"2\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,\"bvX\",\"*\",\"tapT\"]],[1,[7,\"uv\",\"y\"],\"+\",[1,\"bvY\",\"*\",\"tapT\"]]]]]]]},externals:{DEG_TO_RAD:()=>Nd,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),m9=y.fn([u,a,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(t.x,__tsover_sub(1,t.y)),d=__tsover_div(__tsover_mul(s,.005),31),l=__tsover_mul(__tsover_sub(n,15.5),d),c=J(l),_=O(l),p=__tsover_sub(r.x,i.x),f=__tsover_sub(r.y,i.y),h=__tsover_mul(p,o),g=f,x=__tsover_sub(__tsover_mul(h,c),__tsover_mul(g,_)),T=__tsover_add(__tsover_mul(h,_),__tsover_mul(g,c));return u(__tsover_add(__tsover_div(x,o),i.x),__tsover_add(T,i.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"tapIndex\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"angleStep\",[1,[1,\"intensity\",\"*\",[5,\"0.005\"]],\"/\",[5,\"31\"]]],[13,\"angle\",[1,[1,\"tapIndex\",\"-\",[5,\"15.5\"]],\"*\",\"angleStep\"]],[13,\"cosA\",[6,\"std.cos\",[\"angle\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angle\"]]],[13,\"initX\",[1,[7,\"uv\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]]],[13,\"initY\",[1,[7,\"uv\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"acX\",[1,\"initX\",\"*\",\"aspect\"]],[13,\"acY\",\"initY\"],[13,\"rotX\",[1,[1,\"acX\",\"*\",\"cosA\"],\"-\",[1,\"acY\",\"*\",\"sinA\"]]],[13,\"rotY\",[1,[1,\"acX\",\"*\",\"sinA\"],\"+\",[1,\"acY\",\"*\",\"cosA\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"rotX\",\"/\",\"aspect\"],\"+\",[7,\"centerPos\",\"x\"]],[1,\"rotY\",\"+\",[7,\"centerPos\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),f9=y.fn([u,a,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(t.x,__tsover_sub(1,t.y)),d=__tsover_mul(s,.01),l=__tsover_add(1,__tsover_mul(d,__tsover_div(n,31))),c=__tsover_sub(r.x,i.x),_=__tsover_sub(r.y,i.y),p=__tsover_mul(c,o),f=_,h=__tsover_div(p,l),g=__tsover_div(f,l);return u(__tsover_add(__tsover_div(h,o),i.x),__tsover_add(g,i.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"tapIndex\"}],body:[0,[[13,\"centerPos\",[6,\"d.vec2f\",[[7,\"center\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"radius\",[1,\"intensity\",\"*\",[5,\"0.01\"]]],[13,\"scale\",[1,[5,\"1\"],\"+\",[1,\"radius\",\"*\",[1,\"tapIndex\",\"/\",[5,\"31\"]]]]],[13,\"deltaX\",[1,[7,\"uv\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]]],[13,\"deltaY\",[1,[7,\"uv\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"acdX\",[1,\"deltaX\",\"*\",\"aspect\"]],[13,\"acdY\",\"deltaY\"],[13,\"scaledDeltaX\",[1,\"acdX\",\"/\",\"scale\"]],[13,\"scaledDeltaY\",[1,\"acdY\",\"/\",\"scale\"]],[10,[6,\"d.vec2f\",[[1,[1,\"scaledDeltaX\",\"/\",\"aspect\"],\"+\",[7,\"centerPos\",\"x\"]],[1,\"scaledDeltaY\",\"+\",[7,\"centerPos\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({}));var v9=y.fn([u,a,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Dr(t.mul(1e3)).mul(2).sub(u(1,1)).mul(s).div(r);return t.add(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"seed\",[6,[7,\"uv\",\"mul\"],[[5,\"1000\"]]]],[13,\"randVec\",[6,\"noise.hash22\",[\"seed\"]]],[13,\"offset\",[6,[7,[6,[7,[6,[7,[6,[7,\"randVec\",\"mul\"],[[5,\"2\"]]],\"sub\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]],\"mul\"],[\"intensity\"]],\"div\"],[\"viewport\"]]],[10,[6,[7,\"uv\",\"add\"],[\"offset\"]]]]]},externals:{\"noise.hash22\":()=>Dr,\"d.vec2f\":()=>u}})&&e.f)({}));var SF=[.056,.135,.278,.487,.726,.923,1,.923,.726,.487,.278,.135,.056],AF=6.214,h9=SF.map(e=>e/AF);var y9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(r,Nd),i=__tsover_mul(o,.2),d=__tsover_div(s.x,s.y),l=__tsover_div(__tsover_mul(O(n),i),d),c=__tsover_mul(__tsover_mul(J(n),-1),i);return u(__tsover_sub(t.x,l),__tsover_sub(t.y,c))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"distance\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"dist\",[1,\"distance\",\"*\",[5,\"0.2\"]]],[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"ox\",[1,[1,[6,\"std.sin\",[\"angleRad\"]],\"*\",\"dist\"],\"/\",\"aspect\"]],[13,\"oy\",[1,[1,[6,\"std.cos\",[\"angleRad\"]],\"*\",[4,\"-\",[5,\"1\"]]],\"*\",\"dist\"]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"ox\"],[1,[7,\"uv\",\"y\"],\"-\",\"oy\"]]]]]]},externals:{DEG_TO_RAD:()=>Nd,\"std.sin\":()=>O,\"std.cos\":()=>J,\"d.vec2f\":()=>u}})&&e.f)({})),g9=y.fn([u,u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return u(__tsover_add(t.x,__tsover_div(__tsover_mul(o,r),s.x)),__tsover_add(t.y,__tsover_div(__tsover_mul(n,r),s.y)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"blurRadius\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,[1,\"ox\",\"*\",\"blurRadius\"],\"/\",[7,\"viewport\",\"x\"]]],[1,[7,\"uv\",\"y\"],\"+\",[1,[1,\"oy\",\"*\",\"blurRadius\"],\"/\",[7,\"viewport\",\"y\"]]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),x9=y.fn([b,b,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=v(s.x,s.y,s.z),i=__tsover_mul(s.w,r),d=z(__tsover_sub(i,t.w),0,1),l=n.mul(s.w).mul(d),c=n.mul(s.w).mul(r),_=__tsover_sub(1,t.w),p=v(t.x,t.y,t.z).add(c.mul(_)),f=w(__tsover_add(t.w,__tsover_mul(i,_)),t.w),h=o>.5,g=F(p,l,h),x=F(f,d,h);return b(g.x,g.y,g.z,x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"originalColor\"},{type:\"i\",name:\"shadowColor\"},{type:\"i\",name:\"shadowAlpha\"},{type:\"i\",name:\"cutout\"}],body:[0,[[13,\"shadowRgb\",[6,\"d.vec3f\",[[7,\"shadowColor\",\"x\"],[7,\"shadowColor\",\"y\"],[7,\"shadowColor\",\"z\"]]]],[13,\"shadowA\",[1,[7,\"shadowColor\",\"w\"],\"*\",\"shadowAlpha\"]],[13,\"cutoutA\",[6,\"std.clamp\",[[1,\"shadowA\",\"-\",[7,\"originalColor\",\"w\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"cutoutRgb\",[6,[7,[6,[7,\"shadowRgb\",\"mul\"],[[7,\"shadowColor\",\"w\"]]],\"mul\"],[\"cutoutA\"]]],[13,\"shadowPremulRgb\",[6,[7,[6,[7,\"shadowRgb\",\"mul\"],[[7,\"shadowColor\",\"w\"]]],\"mul\"],[\"shadowAlpha\"]]],[13,\"oneMinusOrigA\",[1,[5,\"1\"],\"-\",[7,\"originalColor\",\"w\"]]],[13,\"normalRgb\",[6,[7,[6,\"d.vec3f\",[[7,\"originalColor\",\"x\"],[7,\"originalColor\",\"y\"],[7,\"originalColor\",\"z\"]]],\"add\"],[[6,[7,\"shadowPremulRgb\",\"mul\"],[\"oneMinusOrigA\"]]]]],[13,\"normalA\",[6,\"std.max\",[[1,[7,\"originalColor\",\"w\"],\"+\",[1,\"shadowA\",\"*\",\"oneMinusOrigA\"]],[7,\"originalColor\",\"w\"]]]],[13,\"useCut\",[1,\"cutout\",\">\",[5,\"0.5\"]]],[13,\"rgb\",[6,\"std.select\",[\"normalRgb\",\"cutoutRgb\",\"useCut\"]]],[13,\"a\",[6,\"std.select\",[\"normalA\",\"cutoutA\",\"useCut\"]]],[10,[6,\"d.vec4f\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],\"a\"]]]]]},externals:{\"d.vec3f\":()=>v,\"std.clamp\":()=>z,\"std.max\":()=>w,\"std.select\":()=>F,\"d.vec4f\":()=>b}})&&e.f)({}));var b9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return u(__tsover_add(t.x,__tsover_div(r,s.x)),__tsover_add(t.y,__tsover_div(o,s.y)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"dirX\"},{type:\"i\",name:\"dirY\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,\"dirX\",\"/\",[7,\"viewport\",\"x\"]]],[1,[7,\"uv\",\"y\"],\"+\",[1,\"dirY\",\"/\",[7,\"viewport\",\"y\"]]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),w9=y.fn([b,b,b,b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_add(1,__tsover_mul(i,4)),l=__tsover_mul(i,-1),c=z(t.xyz.mul(d).add(s.xyz.mul(l)).add(r.xyz.mul(l)).add(o.xyz.mul(l)).add(n.xyz.mul(l)),v(0,0,0),v(1,1,1));return b(c.x,c.y,c.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"top\"},{type:\"i\",name:\"bottom\"},{type:\"i\",name:\"left\"},{type:\"i\",name:\"right\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"centerWeight\",[1,[5,\"1\"],\"+\",[1,\"amount\",\"*\",[5,\"4\"]]]],[13,\"neighborWeight\",[1,\"amount\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"rgb\",[6,[7,[6,[7,[6,[7,[6,[7,[6,[7,[7,\"center\",\"xyz\"],\"mul\"],[\"centerWeight\"]],\"add\"],[[6,[7,[7,\"top\",\"xyz\"],\"mul\"],[\"neighborWeight\"]]]],\"add\"],[[6,[7,[7,\"bottom\",\"xyz\"],\"mul\"],[\"neighborWeight\"]]]],\"add\"],[[6,[7,[7,\"left\",\"xyz\"],\"mul\"],[\"neighborWeight\"]]]],\"add\"],[[6,[7,[7,\"right\",\"xyz\"],\"mul\"],[\"neighborWeight\"]]]]],[13,\"clamped\",[6,\"std.clamp\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]]]],[10,[6,\"d.vec4f\",[[7,\"clamped\",\"x\"],[7,\"clamped\",\"y\"],[7,\"clamped\",\"z\"],[7,\"center\",\"w\"]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({}));var T9=y.fn([u,a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=s>1,d=w(F(__tsover_mul(r,s),r,i),1),l=w(F(r,__tsover_div(r,s),i),1),c=u(__tsover_div(K(__tsover_mul(t.x,d)),d),__tsover_div(K(__tsover_mul(t.y,l)),l)),_=u(__tsover_sub(ve(__tsover_mul(t.x,d)),.5),__tsover_sub(ve(__tsover_mul(t.y,l)),.5)),p=__tsover_sub(.5,__tsover_mul(o,.5)),f=__tsover_mul(n,p),h=w(__tsover_add(__tsover_sub(W(_.x),p),f),0),g=w(__tsover_add(__tsover_sub(W(_.y),p),f),0),x=__tsover_sub(te(u(h,g)),f),T=F(a(0),a(1),x<=0);return v(c.x,c.y,T)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"gap\"},{type:\"i\",name:\"roundness\"}],body:[0,[[13,\"isWide\",[1,\"aspect\",\">\",[5,\"1\"]]],[13,\"pixelCountX\",[6,\"std.max\",[[6,\"std.select\",[[1,\"scale\",\"*\",\"aspect\"],\"scale\",\"isWide\"]],[5,\"1\"]]]],[13,\"pixelCountY\",[6,\"std.max\",[[6,\"std.select\",[\"scale\",[1,\"scale\",\"/\",\"aspect\"],\"isWide\"]],[5,\"1\"]]]],[13,\"sampleUV\",[6,\"d.vec2f\",[[1,[6,\"std.floor\",[[1,[7,\"uv\",\"x\"],\"*\",\"pixelCountX\"]]],\"/\",\"pixelCountX\"],[1,[6,\"std.floor\",[[1,[7,\"uv\",\"y\"],\"*\",\"pixelCountY\"]]],\"/\",\"pixelCountY\"]]]],[13,\"localUV\",[6,\"d.vec2f\",[[1,[6,\"std.fract\",[[1,[7,\"uv\",\"x\"],\"*\",\"pixelCountX\"]]],\"-\",[5,\"0.5\"]],[1,[6,\"std.fract\",[[1,[7,\"uv\",\"y\"],\"*\",\"pixelCountY\"]]],\"-\",[5,\"0.5\"]]]]],[13,\"halfSize\",[1,[5,\"0.5\"],\"-\",[1,\"gap\",\"*\",[5,\"0.5\"]]]],[13,\"cornerRadius\",[1,\"roundness\",\"*\",\"halfSize\"]],[13,\"qx\",[6,\"std.max\",[[1,[1,[6,\"std.abs\",[[7,\"localUV\",\"x\"]]],\"-\",\"halfSize\"],\"+\",\"cornerRadius\"],[5,\"0\"]]]],[13,\"qy\",[6,\"std.max\",[[1,[1,[6,\"std.abs\",[[7,\"localUV\",\"y\"]]],\"-\",\"halfSize\"],\"+\",\"cornerRadius\"],[5,\"0\"]]]],[13,\"sdf\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"qx\",\"qy\"]]]],\"-\",\"cornerRadius\"]],[13,\"mask\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"sdf\",\"<=\",[5,\"0\"]]]]],[10,[6,\"d.vec3f\",[[7,\"sampleUV\",\"x\"],[7,\"sampleUV\",\"y\"],\"mask\"]]]]]},externals:{\"std.max\":()=>w,\"std.select\":()=>F,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"std.fract\":()=>ve,\"std.abs\":()=>W,\"std.length\":()=>te,\"d.f32\":()=>a,\"d.vec3f\":()=>v}})&&e.f)({}));var S9=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=s>1,l=u(F(__tsover_mul(o,s),o,d),F(o,__tsover_div(o,s),d)),c=u(__tsover_mul(t.x,s),t.y),_=__tsover_mul(n,Nd),p=J(_),f=O(_),h=c.sub(u(__tsover_mul(.5,s),.5)),g=u(__tsover_sub(__tsover_mul(h.x,p),__tsover_mul(h.y,f)),__tsover_add(__tsover_mul(h.x,f),__tsover_mul(h.y,p))).add(u(__tsover_mul(.5,s),.5)),x=u(__tsover_div(g.x,s),g.y),T=K(x.mul(l)).div(l),S=x.sub(T),A=u(1,1).div(l),E=S.div(A).sub(u(.5,.5)),M=__tsover_add(__tsover_mul(E.x,E.x),__tsover_mul(E.y,E.y)),$=w(__tsover_sub(1,__tsover_mul(M,__tsover_mul(i,4))),0),L=__tsover_mul(r,.025),B=__tsover_mul(L,$),D=u(__tsover_div(__tsover_mul(E.x,B),s),__tsover_mul(E.y,B));return t.add(D)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"baseTileCount\"},{type:\"i\",name:\"rotationDegrees\"},{type:\"i\",name:\"roundnessAmount\"}],body:[0,[[13,\"isWide\",[1,\"aspect\",\">\",[5,\"1\"]]],[13,\"tileCount\",[6,\"d.vec2f\",[[6,\"std.select\",[[1,\"baseTileCount\",\"*\",\"aspect\"],\"baseTileCount\",\"isWide\"]],[6,\"std.select\",[\"baseTileCount\",[1,\"baseTileCount\",\"/\",\"aspect\"],\"isWide\"]]]]],[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"rotationRadians\",[1,\"rotationDegrees\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"rotationRadians\"]]],[13,\"sinA\",[6,\"std.sin\",[\"rotationRadians\"]]],[13,\"centered\",[6,[7,\"aspectCorrectedUV\",\"sub\"],[[6,\"d.vec2f\",[[1,[5,\"0.5\"],\"*\",\"aspect\"],[5,\"0.5\"]]]]]],[13,\"rotatedX\",[1,[1,[7,\"centered\",\"x\"],\"*\",\"cosA\"],\"-\",[1,[7,\"centered\",\"y\"],\"*\",\"sinA\"]]],[13,\"rotatedY\",[1,[1,[7,\"centered\",\"x\"],\"*\",\"sinA\"],\"+\",[1,[7,\"centered\",\"y\"],\"*\",\"cosA\"]]],[13,\"rotatedUV\",[6,[7,[6,\"d.vec2f\",[\"rotatedX\",\"rotatedY\"]],\"add\"],[[6,\"d.vec2f\",[[1,[5,\"0.5\"],\"*\",\"aspect\"],[5,\"0.5\"]]]]]],[13,\"gridUV\",[6,\"d.vec2f\",[[1,[7,\"rotatedUV\",\"x\"],\"/\",\"aspect\"],[7,\"rotatedUV\",\"y\"]]]],[13,\"cellCoord\",[6,[7,[6,\"std.floor\",[[6,[7,\"gridUV\",\"mul\"],[\"tileCount\"]]]],\"div\"],[\"tileCount\"]]],[13,\"localUV\",[6,[7,\"gridUV\",\"sub\"],[\"cellCoord\"]]],[13,\"oneOverTile\",[6,[7,[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]],\"div\"],[\"tileCount\"]]],[13,\"normalizedLocalUV\",[6,[7,\"localUV\",\"div\"],[\"oneOverTile\"]]],[13,\"fromCenter\",[6,[7,\"normalizedLocalUV\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"distFromCenter\",[1,[1,[7,\"fromCenter\",\"x\"],\"*\",[7,\"fromCenter\",\"x\"]],\"+\",[1,[7,\"fromCenter\",\"y\"],\"*\",[7,\"fromCenter\",\"y\"]]]],[13,\"roundnessFactor\",[1,[5,\"1\"],\"-\",[1,\"distFromCenter\",\"*\",[1,\"roundnessAmount\",\"*\",[5,\"4\"]]]]],[13,\"clampedRoundness\",[6,\"std.max\",[\"roundnessFactor\",[5,\"0\"]]]],[13,\"distortionFactor\",[1,\"intensity\",\"*\",[5,\"0.025\"]]],[13,\"scaleFactor\",[1,\"distortionFactor\",\"*\",\"clampedRoundness\"]],[13,\"distortion\",[6,\"d.vec2f\",[[1,[1,[7,\"fromCenter\",\"x\"],\"*\",\"scaleFactor\"],\"/\",\"aspect\"],[1,[7,\"fromCenter\",\"y\"],\"*\",\"scaleFactor\"]]]],[10,[6,[7,\"uv\",\"add\"],[\"distortion\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.select\":()=>F,DEG_TO_RAD:()=>Nd,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.floor\":()=>K,\"std.max\":()=>w}})&&e.f)({}));var A9=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s,.002);return u(__tsover_add(t.x,__tsover_mul(o,r)),t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"colorShift\"},{type:\"i\",name:\"dir\"}],body:[0,[[13,\"scaledColorShift\",[1,\"colorShift\",\"*\",[5,\"0.002\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,\"scaledColorShift\",\"*\",\"dir\"]],[7,\"uv\",\"y\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),E9=y.fn([b,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return v(t.x,s.y,r.z)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"redSample\"},{type:\"i\",name:\"greenSample\"},{type:\"i\",name:\"blueSample\"}],body:[0,[[10,[6,\"d.vec3f\",[[7,\"redSample\",\"x\"],[7,\"greenSample\",\"y\"],[7,\"blueSample\",\"z\"]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),P9=y.fn([v,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return t.sub(v(.5)).mul(s).add(v(.5)).mul(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"brightness\"}],body:[0,[[10,[6,[7,[6,[7,[6,[7,[6,[7,\"color\",\"sub\"],[[6,\"d.vec3f\",[[5,\"0.5\"]]]]],\"mul\"],[\"contrast\"]],\"add\"],[[6,\"d.vec3f\",[[5,\"0.5\"]]]]],\"mul\"],[\"brightness\"]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})),M9=y.fn([v,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(s,r),i=O(__tsover_mul(n,__tsover_mul(3.14159,2))),d=__tsover_sub(1,__tsover_mul(o,__tsover_add(__tsover_mul(i,.5),.5)));return t.mul(d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"scanlineFrequency\"},{type:\"i\",name:\"scanlineIntensity\"}],body:[0,[[13,\"scanlinePosition\",[1,\"uvY\",\"*\",\"scanlineFrequency\"]],[13,\"scanlineWave\",[6,\"std.sin\",[[1,\"scanlinePosition\",\"*\",[1,[5,\"3.14159\"],\"*\",[5,\"2\"]]]]]],[13,\"scanlineEffect\",[1,[5,\"1\"],\"-\",[1,\"scanlineIntensity\",\"*\",[1,[1,\"scanlineWave\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]],[10,[6,[7,\"color\",\"mul\"],[\"scanlineEffect\"]]]]]},externals:{\"std.sin\":()=>O}})&&e.f)({})),k9=y.fn([v,u,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(r,.5),n=ve(s.mul(o)),i=__tsover_add(__tsover_mul(O(__tsover_mul(n.x,6.28318)),.1),.95),d=__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(n.x,6.28318),2.09)),.1),.95),l=__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(n.x,6.28318),4.18)),.1),.95);return v(__tsover_mul(t.x,i),__tsover_mul(t.y,d),__tsover_mul(t.z,l))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"pixelSize\"}],body:[0,[[13,\"phosphorScale\",[1,\"pixelSize\",\"*\",[5,\"0.5\"]]],[13,\"pixelPhase\",[6,\"std.fract\",[[6,[7,\"uv\",\"mul\"],[\"phosphorScale\"]]]]],[13,\"redMask\",[1,[1,[6,\"std.sin\",[[1,[7,\"pixelPhase\",\"x\"],\"*\",[5,\"6.28318\"]]]],\"*\",[5,\"0.1\"]],\"+\",[5,\"0.95\"]]],[13,\"greenMask\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"pixelPhase\",\"x\"],\"*\",[5,\"6.28318\"]],\"+\",[5,\"2.09\"]]]],\"*\",[5,\"0.1\"]],\"+\",[5,\"0.95\"]]],[13,\"blueMask\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"pixelPhase\",\"x\"],\"*\",[5,\"6.28318\"]],\"+\",[5,\"4.18\"]]]],\"*\",[5,\"0.1\"]],\"+\",[5,\"0.95\"]]],[10,[6,\"d.vec3f\",[[1,[7,\"color\",\"x\"],\"*\",\"redMask\"],[1,[7,\"color\",\"y\"],\"*\",\"greenMask\"],[1,[7,\"color\",\"z\"],\"*\",\"blueMask\"]]]]]]},externals:{\"std.fract\":()=>ve,\"std.sin\":()=>O,\"d.vec3f\":()=>v}})&&e.f)({})),$9=y.fn([v,u,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=s.sub(u(.5,.5)),d=te(u(__tsover_mul(i.x,r),i.y)),l=__tsover_sub(1,__tsover_mul(o,.9)),c=__tsover_add(l,.5),_=Z(1,__tsover_sub(1,ce(l,c,d)),n);return t.mul(_)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"vignetteRadius\"},{type:\"i\",name:\"vignetteIntensity\"}],body:[0,[[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"aspectCorrectedUV\",[6,\"d.vec2f\",[[1,[7,\"centeredUV\",\"x\"],\"*\",\"aspect\"],[7,\"centeredUV\",\"y\"]]]],[13,\"vignetteDistance\",[6,\"std.length\",[\"aspectCorrectedUV\"]]],[13,\"innerEdge\",[1,[5,\"1\"],\"-\",[1,\"vignetteRadius\",\"*\",[5,\"0.9\"]]]],[13,\"outerEdge\",[1,\"innerEdge\",\"+\",[5,\"0.5\"]]],[13,\"vignetteValue\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"innerEdge\",\"outerEdge\",\"vignetteDistance\"]]]],[13,\"vignette\",[6,\"std.mix\",[[5,\"1\"],\"vignetteValue\",\"vignetteIntensity\"]]],[10,[6,[7,\"color\",\"mul\"],[\"vignette\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.smoothstep\":()=>ce,\"std.mix\":()=>Z}})&&e.f)({})),$2=487,Ol=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ms(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"noise.hash12\",[\"p\"]]]]]},externals:{\"noise.hash12\":()=>ms}})&&e.f)({})),_a=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=ve(t),o=r.mul(r).mul(u(3,3).sub(r.mul(2))),n=Ol(s),i=Ol(s.add(u(1,0))),d=Ol(s.add(u(0,1))),l=Ol(s.add(u(1,1)));return Z(Z(n,i,o.x),Z(d,l,o.x),o.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f\",[6,\"std.fract\",[\"p\"]]],[13,\"u\",[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,\"d.vec2f\",[[5,\"3\"],[5,\"3\"]]],\"sub\"],[[6,[7,\"f\",\"mul\"],[[5,\"2\"]]]]]]]],[13,\"a\",[6,\"hash2D\",[\"i\"]]],[13,\"b\",[6,\"hash2D\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"0\"]]]]]]]],[13,\"c\",[6,\"hash2D\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]]]]]]],[13,\"dd\",[6,\"hash2D\",[[6,[7,\"i\",\"add\"],[[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[\"a\",\"b\",[7,\"u\",\"x\"]]],[6,\"std.mix\",[\"c\",\"dd\",[7,\"u\",\"x\"]]],[7,\"u\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,\"d.vec2f\":()=>u,hash2D:()=>Ol,\"std.mix\":()=>Z}})&&e.f)({})),C2=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ce(.45,.8,_a(u(__tsover_mul(t,.4),0)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[6,\"std.smoothstep\",[[5,\"0.45\"],[5,\"0.8\"],[6,\"smoothNoise2D\",[[6,\"d.vec2f\",[[1,\"t\",\"*\",[5,\"0.4\"]],[5,\"0\"]]]]]]]]]]},externals:{\"std.smoothstep\":()=>ce,smoothNoise2D:()=>_a,\"d.vec2f\":()=>u}})&&e.f)({})),R2=y.fn([a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=K(__tsover_mul(t,$2)),i=__tsover_mul(__tsover_sub(ms(u(n,s)),.5),2),d=__tsover_mul(__tsover_sub(ms(u(n,__tsover_add(s,69.42))),.5),2),l=__tsover_add(.25,__tsover_mul(o,.75)),c=__tsover_mul(__tsover_mul(__tsover_mul(i,r),.008),l);return u(__tsover_mul(__tsover_mul(__tsover_mul(d,r),.004),l),c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"scanlineNoise\"},{type:\"i\",name:\"burst\"}],body:[0,[[13,\"rowInt\",[6,\"std.floor\",[[1,\"uvY\",\"*\",\"FIELD_LINES\"]]]],[13,\"h0\",[1,[1,[6,\"noise.hash12\",[[6,\"d.vec2f\",[\"rowInt\",\"t\"]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[13,\"h1\",[1,[1,[6,\"noise.hash12\",[[6,\"d.vec2f\",[\"rowInt\",[1,\"t\",\"+\",[5,\"69.42\"]]]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[13,\"fineGate\",[1,[5,\"0.25\"],\"+\",[1,\"burst\",\"*\",[5,\"0.75\"]]]],[13,\"chromaRowOffset\",[1,[1,[1,\"h0\",\"*\",\"scanlineNoise\"],\"*\",[5,\"0.008\"]],\"*\",\"fineGate\"]],[13,\"lumaRowOffset\",[1,[1,[1,\"h1\",\"*\",\"scanlineNoise\"],\"*\",[5,\"0.004\"]],\"*\",\"fineGate\"]],[10,[6,\"d.vec2f\",[\"lumaRowOffset\",\"chromaRowOffset\"]]]]]},externals:{\"std.floor\":()=>K,FIELD_LINES:()=>$2,\"noise.hash12\":()=>ms,\"d.vec2f\":()=>u}})&&e.f)({})),U2=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(_a(u(__tsover_mul(t,3),__tsover_mul(s,.8))),.5),n=__tsover_sub(_a(u(__tsover_mul(t,30),__tsover_mul(s,6))),.5);return __tsover_mul(__tsover_add(__tsover_mul(o,.008),__tsover_mul(n,.002)),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"wobble\"}],body:[0,[[13,\"wave1\",[1,[6,\"smoothNoise2D\",[[6,\"d.vec2f\",[[1,\"uvY\",\"*\",[5,\"3\"]],[1,\"t\",\"*\",[5,\"0.8\"]]]]]],\"-\",[5,\"0.5\"]]],[13,\"wave2\",[1,[6,\"smoothNoise2D\",[[6,\"d.vec2f\",[[1,\"uvY\",\"*\",[5,\"30\"]],[1,\"t\",\"*\",[5,\"6\"]]]]]],\"-\",[5,\"0.5\"]]],[10,[1,[1,[1,\"wave1\",\"*\",[5,\"0.008\"]],\"+\",[1,\"wave2\",\"*\",[5,\"0.002\"]]],\"*\",\"wobble\"]]]]},externals:{smoothNoise2D:()=>_a,\"d.vec2f\":()=>u}})&&e.f)({})),z2=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=ce(.92,.99,O(__tsover_sub(__tsover_mul(t,8),__tsover_mul(s,3.77)))),n=ce(.3,1,_a(u(__tsover_mul(t,4.77),s)));return __tsover_mul(__tsover_mul(__tsover_mul(o,n),r),-.018)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"wobble\"}],body:[0,[[13,\"creasePhase\",[6,\"std.smoothstep\",[[5,\"0.92\"],[5,\"0.99\"],[6,\"std.sin\",[[1,[1,\"uvY\",\"*\",[5,\"8\"]],\"-\",[1,\"t\",\"*\",[5,\"3.77\"]]]]]]]],[13,\"creaseNoise\",[6,\"std.smoothstep\",[[5,\"0.3\"],[5,\"1\"],[6,\"smoothNoise2D\",[[6,\"d.vec2f\",[[1,\"uvY\",\"*\",[5,\"4.77\"]],\"t\"]]]]]]],[10,[1,[1,[1,\"creasePhase\",\"*\",\"creaseNoise\"],\"*\",\"wobble\"],\"*\",[4,\"-\",[5,\"0.018\"]]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.sin\":()=>O,smoothNoise2D:()=>_a,\"d.vec2f\":()=>u}})&&e.f)({})),G2=y.fn([a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_sub(1,ce(0,.06,t)),i=__tsover_sub(_a(u(__tsover_mul(t,60),__tsover_mul(s,14))),.5);return u(__tsover_mul(__tsover_mul(__tsover_mul(n,i),r),.09),__tsover_mul(__tsover_mul(__tsover_mul(n,r),o),.02))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"wobble\"},{type:\"i\",name:\"burst\"}],body:[0,[[13,\"switchPhase\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.06\"],\"uvY\"]]]],[13,\"switchNoise\",[1,[6,\"smoothNoise2D\",[[6,\"d.vec2f\",[[1,\"uvY\",\"*\",[5,\"60\"]],[1,\"t\",\"*\",[5,\"14\"]]]]]],\"-\",[5,\"0.5\"]]],[13,\"switchX\",[1,[1,[1,\"switchPhase\",\"*\",\"switchNoise\"],\"*\",\"wobble\"],\"*\",[5,\"0.09\"]]],[13,\"switchY\",[1,[1,[1,\"switchPhase\",\"*\",\"wobble\"],\"*\",\"burst\"],\"*\",[5,\"0.02\"]]],[10,[6,\"d.vec2f\",[\"switchX\",\"switchY\"]]]]]},externals:{\"std.smoothstep\":()=>ce,smoothNoise2D:()=>_a,\"d.vec2f\":()=>u}})&&e.f)({})),C9=y.fn([u,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(s,r),d=C2(i),l=R2(t.y,i,n,d),c=G2(t.y,i,o,d),_=__tsover_add(__tsover_add(U2(t.y,i,o),z2(t.y,i,o)),c.x),p=__tsover_add(t.y,c.y);return b(__tsover_add(__tsover_add(t.x,_),l.x),p,__tsover_add(__tsover_add(t.x,_),l.y),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"speed\"},{type:\"i\",name:\"wobble\"},{type:\"i\",name:\"scanlineNoise\"}],body:[0,[[13,\"t\",[1,\"time\",\"*\",\"speed\"]],[13,\"burst\",[6,\"burstGate\",[\"t\"]]],[13,\"jitter\",[6,\"rowJitter\",[[7,\"uv\",\"y\"],\"t\",\"scanlineNoise\",\"burst\"]]],[13,\"sw\",[6,\"headSwitch\",[[7,\"uv\",\"y\"],\"t\",\"wobble\",\"burst\"]]],[13,\"globalX\",[1,[1,[6,\"tapeWave\",[[7,\"uv\",\"y\"],\"t\",\"wobble\"]],\"+\",[6,\"creaseShift\",[[7,\"uv\",\"y\"],\"t\",\"wobble\"]]],\"+\",[7,\"sw\",\"x\"]]],[13,\"sy\",[1,[7,\"uv\",\"y\"],\"+\",[7,\"sw\",\"y\"]]],[10,[6,\"d.vec4f\",[[1,[1,[7,\"uv\",\"x\"],\"+\",\"globalX\"],\"+\",[7,\"jitter\",\"x\"]],\"sy\",[1,[1,[7,\"uv\",\"x\"],\"+\",\"globalX\"],\"+\",[7,\"jitter\",\"y\"]],\"sy\"]]]]]},externals:{burstGate:()=>C2,rowJitter:()=>R2,headSwitch:()=>G2,tapeWave:()=>U2,creaseShift:()=>z2,\"d.vec4f\":()=>b}})&&e.f)({})),R9=y.fn([u,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(s,r);return __tsover_add(1,__tsover_mul(__tsover_mul(J(__tsover_add(__tsover_mul(tn(n,6.2831853),2),__tsover_mul(t.y,.5))),.015),o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"speed\"},{type:\"i\",name:\"wobble\"}],body:[0,[[13,\"t\",[1,\"time\",\"*\",\"speed\"]],[10,[1,[5,\"1\"],\"+\",[1,[1,[6,\"std.cos\",[[1,[1,[6,\"std.mod\",[\"t\",[5,\"6.2831853\"]]],\"*\",[5,\"2\"]],\"+\",[1,[7,\"uv\",\"y\"],\"*\",[5,\"0.5\"]]]]],\"*\",[5,\"0.015\"]],\"*\",\"wobble\"]]]]]},externals:{\"std.cos\":()=>J,\"std.mod\":()=>tn}})&&e.f)({})),U9=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(__tsover_add(t.x,__tsover_mul(__tsover_mul(r,-1),s)),t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"chromaUV\"},{type:\"i\",name:\"smearScale\"},{type:\"i\",name:\"i\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"chromaUV\",\"x\"],\"+\",[1,[1,\"i\",\"*\",[4,\"-\",[5,\"1\"]]],\"*\",\"smearScale\"]],[7,\"chromaUV\",\"y\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),z9=y.fn([b,b,b,b,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=le(t.xyz,v(.299,.587,.114)),l=v(.596,-.274,-.322),c=v(.211,-.523,.312),_=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(le(s.xyz,l),.06666666666666667),__tsover_mul(le(r.xyz,l),.13333333333333333)),__tsover_mul(le(o.xyz,l),.2)),__tsover_mul(le(n.xyz,l),.26666666666666666)),__tsover_mul(le(i.xyz,l),.3333333333333333)),p=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(le(s.xyz,c),.06666666666666667),__tsover_mul(le(r.xyz,c),.13333333333333333)),__tsover_mul(le(o.xyz,c),.2)),__tsover_mul(le(n.xyz,c),.26666666666666666)),__tsover_mul(le(i.xyz,c),.3333333333333333));return v(__tsover_add(__tsover_add(d,__tsover_mul(_,.956)),__tsover_mul(p,.621)),__tsover_sub(__tsover_sub(d,__tsover_mul(_,.272)),__tsover_mul(p,.647)),__tsover_add(__tsover_sub(d,__tsover_mul(_,1.106)),__tsover_mul(p,1.703)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"luma\"},{type:\"i\",name:\"c1\"},{type:\"i\",name:\"c2\"},{type:\"i\",name:\"c3\"},{type:\"i\",name:\"c4\"},{type:\"i\",name:\"c5\"}],body:[0,[[13,\"sharpY\",[6,\"std.dot\",[[7,\"luma\",\"xyz\"],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"iAxis\",[6,\"d.vec3f\",[[5,\"0.596\"],[4,\"-\",[5,\"0.274\"]],[4,\"-\",[5,\"0.322\"]]]]],[13,\"qAxis\",[6,\"d.vec3f\",[[5,\"0.211\"],[4,\"-\",[5,\"0.523\"]],[5,\"0.312\"]]]],[13,\"accI\",[1,[1,[1,[1,[1,[6,\"std.dot\",[[7,\"c1\",\"xyz\"],\"iAxis\"]],\"*\",[5,\"0.06666666666666667\"]],\"+\",[1,[6,\"std.dot\",[[7,\"c2\",\"xyz\"],\"iAxis\"]],\"*\",[5,\"0.13333333333333333\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c3\",\"xyz\"],\"iAxis\"]],\"*\",[5,\"0.2\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c4\",\"xyz\"],\"iAxis\"]],\"*\",[5,\"0.26666666666666666\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c5\",\"xyz\"],\"iAxis\"]],\"*\",[5,\"0.3333333333333333\"]]]],[13,\"accQ\",[1,[1,[1,[1,[1,[6,\"std.dot\",[[7,\"c1\",\"xyz\"],\"qAxis\"]],\"*\",[5,\"0.06666666666666667\"]],\"+\",[1,[6,\"std.dot\",[[7,\"c2\",\"xyz\"],\"qAxis\"]],\"*\",[5,\"0.13333333333333333\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c3\",\"xyz\"],\"qAxis\"]],\"*\",[5,\"0.2\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c4\",\"xyz\"],\"qAxis\"]],\"*\",[5,\"0.26666666666666666\"]]],\"+\",[1,[6,\"std.dot\",[[7,\"c5\",\"xyz\"],\"qAxis\"]],\"*\",[5,\"0.3333333333333333\"]]]],[10,[6,\"d.vec3f\",[[1,[1,\"sharpY\",\"+\",[1,\"accI\",\"*\",[5,\"0.956\"]]],\"+\",[1,\"accQ\",\"*\",[5,\"0.621\"]]],[1,[1,\"sharpY\",\"-\",[1,\"accI\",\"*\",[5,\"0.272\"]]],\"-\",[1,\"accQ\",\"*\",[5,\"0.647\"]]],[1,[1,\"sharpY\",\"-\",[1,\"accI\",\"*\",[5,\"1.106\"]]],\"+\",[1,\"accQ\",\"*\",[5,\"1.703\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),G9=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=z(t.xyz.mul(s),v(0,0,0),v(1,1,1));return b(r.x,r.y,r.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"acBeat\"}],body:[0,[[13,\"clamped\",[6,\"std.clamp\",[[6,[7,[7,\"color\",\"xyz\"],\"mul\"],[\"acBeat\"]],[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]]]],[10,[6,\"d.vec4f\",[[7,\"clamped\",\"x\"],[7,\"clamped\",\"y\"],[7,\"clamped\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),Lr=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return fr(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"noise.hash11\",[\"p\"]]]]]},externals:{\"noise.hash11\":()=>fr}})&&e.f)({})),D2=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Lr(t),n=__tsover_mul(__tsover_mul(o,o),o),i=Lr(__tsover_add(s,73)),d=__tsover_mul(i,i),l=__tsover_sub(1,r),c=ot(l,n),_=ot(__tsover_add(l,.15),d);return __tsover_mul(z(__tsover_add(__tsover_mul(c,.8),__tsover_mul(_,.4)),0,1),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"slowFrame\"},{type:\"i\",name:\"fastFrame\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"slowHash\",[6,\"hash11\",[\"slowFrame\"]]],[13,\"slowPulse\",[1,[1,\"slowHash\",\"*\",\"slowHash\"],\"*\",\"slowHash\"]],[13,\"fastHash\",[6,\"hash11\",[[1,\"fastFrame\",\"+\",[5,\"73\"]]]]],[13,\"fastPulse\",[1,\"fastHash\",\"*\",\"fastHash\"]],[13,\"threshold\",[1,[5,\"1\"],\"-\",\"intensity\"]],[13,\"majorBurst\",[6,\"std.step\",[\"threshold\",\"slowPulse\"]]],[13,\"minorFlicker\",[6,\"std.step\",[[1,\"threshold\",\"+\",[5,\"0.15\"]],\"fastPulse\"]]],[10,[1,[6,\"std.clamp\",[[1,[1,\"majorBurst\",\"*\",[5,\"0.8\"]],\"+\",[1,\"minorFlicker\",\"*\",[5,\"0.4\"]]],[5,\"0\"],[5,\"1\"]]],\"*\",\"intensity\"]]]]},externals:{hash11:()=>Lr,\"std.step\":()=>ot,\"std.clamp\":()=>z}})&&e.f)({})),A_=y.fn([a,a,a,a,a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_add(__tsover_mul(t,r),__tsover_mul(s,o)),_=Lr(c),p=ot(__tsover_sub(1,__tsover_mul(l,n)),_);return v(__tsover_mul(__tsover_mul(__tsover_sub(Lr(__tsover_add(c,i)),.5),d),p),p,c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"bandY\"},{type:\"i\",name:\"frame\"},{type:\"i\",name:\"seedScale\"},{type:\"i\",name:\"frameScale\"},{type:\"i\",name:\"gateFactor\"},{type:\"i\",name:\"hashOffset\"},{type:\"i\",name:\"amplitude\"},{type:\"i\",name:\"glitchStrength\"}],body:[0,[[13,\"seed\",[1,[1,\"bandY\",\"*\",\"seedScale\"],\"+\",[1,\"frame\",\"*\",\"frameScale\"]]],[13,\"bandHash\",[6,\"hash11\",[\"seed\"]]],[13,\"active\",[6,\"std.step\",[[1,[5,\"1\"],\"-\",[1,\"glitchStrength\",\"*\",\"gateFactor\"]],\"bandHash\"]]],[13,\"displace\",[1,[1,[1,[6,\"hash11\",[[1,\"seed\",\"+\",\"hashOffset\"]]],\"-\",[5,\"0.5\"]],\"*\",\"amplitude\"],\"*\",\"active\"]],[10,[6,\"d.vec3f\",[\"displace\",\"active\",\"seed\"]]]]]},externals:{hash11:()=>Lr,\"std.step\":()=>ot,\"d.vec3f\":()=>v}})&&e.f)({})),L2=y.fn([a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_add(__tsover_add(__tsover_mul(t,.41),__tsover_mul(s,.67)),__tsover_mul(r,2.31)),i=Lr(n),d=ot(__tsover_sub(1,__tsover_mul(o,.35)),i);return u(__tsover_mul(__tsover_mul(__tsover_sub(Lr(__tsover_add(n,77)),.5),.18),d),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colX\"},{type:\"i\",name:\"bandY1\"},{type:\"i\",name:\"slowFrame\"},{type:\"i\",name:\"glitchStrength\"}],body:[0,[[13,\"blockSeed\",[1,[1,[1,\"colX\",\"*\",[5,\"0.41\"]],\"+\",[1,\"bandY1\",\"*\",[5,\"0.67\"]]],\"+\",[1,\"slowFrame\",\"*\",[5,\"2.31\"]]]],[13,\"blockHash\",[6,\"hash11\",[\"blockSeed\"]]],[13,\"blockActive\",[6,\"std.step\",[[1,[5,\"1\"],\"-\",[1,\"glitchStrength\",\"*\",[5,\"0.35\"]]],\"blockHash\"]]],[13,\"displace\",[1,[1,[1,[6,\"hash11\",[[1,\"blockSeed\",\"+\",[5,\"77\"]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"0.18\"]],\"*\",\"blockActive\"]],[10,[6,\"d.vec2f\",[\"displace\",\"blockActive\"]]]]]},externals:{hash11:()=>Lr,\"std.step\":()=>ot,\"d.vec2f\":()=>u}})&&e.f)({})),F2=y.fn([u,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_add(__tsover_add(__tsover_mul(s,.83),__tsover_mul(r,1.17)),__tsover_mul(o,4.57)),c=Lr(l),_=Lr(__tsover_add(l,500)),p=__tsover_mul(ot(__tsover_sub(1,__tsover_mul(i,d)),c),n),f=__tsover_mul(ot(__tsover_sub(1,__tsover_mul(__tsover_mul(i,d),.4)),_),n);return u(Z(t.x,__tsover_sub(1,t.x),p),Z(t.y,__tsover_sub(1,t.y),f))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"displacedUV\"},{type:\"i\",name:\"colX\"},{type:\"i\",name:\"bandY1\"},{type:\"i\",name:\"slowFrame\"},{type:\"i\",name:\"bandActive1\"},{type:\"i\",name:\"mirrorChance\"},{type:\"i\",name:\"glitchStrength\"}],body:[0,[[13,\"mirrorSeed\",[1,[1,[1,\"colX\",\"*\",[5,\"0.83\"]],\"+\",[1,\"bandY1\",\"*\",[5,\"1.17\"]]],\"+\",[1,\"slowFrame\",\"*\",[5,\"4.57\"]]]],[13,\"hMirrorHash\",[6,\"hash11\",[\"mirrorSeed\"]]],[13,\"vMirrorHash\",[6,\"hash11\",[[1,\"mirrorSeed\",\"+\",[5,\"500\"]]]]],[13,\"hMirrorActive\",[1,[6,\"std.step\",[[1,[5,\"1\"],\"-\",[1,\"mirrorChance\",\"*\",\"glitchStrength\"]],\"hMirrorHash\"]],\"*\",\"bandActive1\"]],[13,\"vMirrorActive\",[1,[6,\"std.step\",[[1,[5,\"1\"],\"-\",[1,[1,\"mirrorChance\",\"*\",\"glitchStrength\"],\"*\",[5,\"0.4\"]]],\"vMirrorHash\"]],\"*\",\"bandActive1\"]],[10,[6,\"d.vec2f\",[[6,\"std.mix\",[[7,\"displacedUV\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"displacedUV\",\"x\"]],\"hMirrorActive\"]],[6,\"std.mix\",[[7,\"displacedUV\",\"y\"],[1,[5,\"1\"],\"-\",[7,\"displacedUV\",\"y\"]],\"vMirrorActive\"]]]]]]]},externals:{hash11:()=>Lr,\"std.step\":()=>ot,\"d.vec2f\":()=>u,\"std.mix\":()=>Z}})&&e.f)({})),hf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({mirroredUV:u,spread:a,strength:a,bandY1:a,slowFrame:a,bandGate:a,blockGate:a,distortion:a}),\"GlitchGeom\"),D9=y.fn([u,a,a,a,a,a],hf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_mul(s,o),l=K(__tsover_mul(d,2.5)),c=K(__tsover_mul(d,10)),_=D2(l,c,r),p=K(__tsover_mul(t.y,n)),f=A_(p,l,.37,7.13,.5,42,.25,_),h=A_(K(__tsover_mul(t.y,__tsover_mul(n,2))),c,.53,3.37,.7,99,.12,_),g=A_(K(__tsover_mul(t.y,__tsover_mul(n,4))),c,.71,11.71,.9,173,.05,_),x=K(__tsover_mul(t.x,4)),T=L2(x,p,l,_),S=__tsover_add(__tsover_add(__tsover_add(f.x,h.x),g.x),T.x),A=__tsover_mul(__tsover_mul(f.y,__tsover_sub(Lr(__tsover_add(f.z,200)),.5)),.012),E=F2(u(z(__tsover_add(t.x,__tsover_mul(S,_)),0,1),z(__tsover_add(t.y,__tsover_mul(A,_)),0,1)),x,p,l,f.y,i,_),M=__tsover_add(_,__tsover_mul(W(S),2)),$=z(__tsover_add(__tsover_add(f.y,h.y),g.y),0,1);return hf({mirroredUV:E,spread:M,strength:_,bandY1:p,slowFrame:l,bandGate:f.y,blockGate:T.y,distortion:$})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"time\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"speed\"},{type:\"i\",name:\"blockDensity\"},{type:\"i\",name:\"mirrorChance\"}],body:[0,[[13,\"t\",[1,\"time\",\"*\",\"speed\"]],[13,\"slowFrame\",[6,\"std.floor\",[[1,\"t\",\"*\",[5,\"2.5\"]]]]],[13,\"fastFrame\",[6,\"std.floor\",[[1,\"t\",\"*\",[5,\"10\"]]]]],[13,\"glitchStrength\",[6,\"burstPulse\",[\"slowFrame\",\"fastFrame\",\"intensity\"]]],[13,\"bandY1\",[6,\"std.floor\",[[1,[7,\"uv\",\"y\"],\"*\",\"blockDensity\"]]]],[13,\"band1\",[6,\"bandJitter\",[\"bandY1\",\"slowFrame\",[5,\"0.37\"],[5,\"7.13\"],[5,\"0.5\"],[5,\"42\"],[5,\"0.25\"],\"glitchStrength\"]]],[13,\"bandY2\",[6,\"std.floor\",[[1,[7,\"uv\",\"y\"],\"*\",[1,\"blockDensity\",\"*\",[5,\"2\"]]]]]],[13,\"band2\",[6,\"bandJitter\",[\"bandY2\",\"fastFrame\",[5,\"0.53\"],[5,\"3.37\"],[5,\"0.7\"],[5,\"99\"],[5,\"0.12\"],\"glitchStrength\"]]],[13,\"bandY3\",[6,\"std.floor\",[[1,[7,\"uv\",\"y\"],\"*\",[1,\"blockDensity\",\"*\",[5,\"4\"]]]]]],[13,\"band3\",[6,\"bandJitter\",[\"bandY3\",\"fastFrame\",[5,\"0.71\"],[5,\"11.71\"],[5,\"0.9\"],[5,\"173\"],[5,\"0.05\"],\"glitchStrength\"]]],[13,\"colX\",[6,\"std.floor\",[[1,[7,\"uv\",\"x\"],\"*\",[5,\"4\"]]]]],[13,\"block\",[6,\"blockShift\",[\"colX\",\"bandY1\",\"slowFrame\",\"glitchStrength\"]]],[13,\"totalDisplaceX\",[1,[1,[1,[7,\"band1\",\"x\"],\"+\",[7,\"band2\",\"x\"]],\"+\",[7,\"band3\",\"x\"]],\"+\",[7,\"block\",\"x\"]]],[13,\"vertJitter\",[1,[1,[7,\"band1\",\"y\"],\"*\",[1,[6,\"hash11\",[[1,[7,\"band1\",\"z\"],\"+\",[5,\"200\"]]]],\"-\",[5,\"0.5\"]]],\"*\",[5,\"0.012\"]]],[13,\"displacedUV\",[6,\"d.vec2f\",[[6,\"std.clamp\",[[1,[7,\"uv\",\"x\"],\"+\",[1,\"totalDisplaceX\",\"*\",\"glitchStrength\"]],[5,\"0\"],[5,\"1\"]]],[6,\"std.clamp\",[[1,[7,\"uv\",\"y\"],\"+\",[1,\"vertJitter\",\"*\",\"glitchStrength\"]],[5,\"0\"],[5,\"1\"]]]]]],[13,\"mirroredUV\",[6,\"mirrorFlips\",[\"displacedUV\",\"colX\",\"bandY1\",\"slowFrame\",[7,\"band1\",\"y\"],\"mirrorChance\",\"glitchStrength\"]]],[13,\"spread\",[1,\"glitchStrength\",\"+\",[1,[6,\"std.abs\",[\"totalDisplaceX\"]],\"*\",[5,\"2\"]]]],[13,\"anyDistortion\",[6,\"std.clamp\",[[1,[1,[7,\"band1\",\"y\"],\"+\",[7,\"band2\",\"y\"]],\"+\",[7,\"band3\",\"y\"]],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"GlitchGeom\",[[104,{mirroredUV:\"mirroredUV\",spread:\"spread\",strength:\"glitchStrength\",bandY1:\"bandY1\",slowFrame:\"slowFrame\",bandGate:[7,\"band1\",\"y\"],blockGate:[7,\"block\",\"y\"],distortion:\"anyDistortion\"}]]]]]]},externals:{\"std.floor\":()=>K,burstPulse:()=>D2,bandJitter:()=>A_,blockShift:()=>L2,hash11:()=>Lr,\"d.vec2f\":()=>u,\"std.clamp\":()=>z,mirrorFlips:()=>F2,\"std.abs\":()=>W,GlitchGeom:()=>hf}})&&e.f)({})),L9=y.fn([u,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(__tsover_mul(s,.003),r),n=z(__tsover_add(t.x,o),0,1),i=z(__tsover_sub(t.x,o),0,1);return b(n,t.y,i,t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"mirroredUV\"},{type:\"i\",name:\"rgbShift\"},{type:\"i\",name:\"spread\"}],body:[0,[[13,\"rgbOffset\",[1,[1,\"rgbShift\",\"*\",[5,\"0.003\"]],\"*\",\"spread\"]],[13,\"redX\",[6,\"std.clamp\",[[1,[7,\"mirroredUV\",\"x\"],\"+\",\"rgbOffset\"],[5,\"0\"],[5,\"1\"]]]],[13,\"blueX\",[6,\"std.clamp\",[[1,[7,\"mirroredUV\",\"x\"],\"-\",\"rgbOffset\"],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[\"redX\",[7,\"mirroredUV\",\"y\"],\"blueX\",[7,\"mirroredUV\",\"y\"]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({})),F9=y.fn([b,u,a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=K(__tsover_mul(s.x,4)),_=__tsover_add(__tsover_add(__tsover_mul(c,.41),__tsover_mul(r,.67)),__tsover_mul(o,2.31)),p=Lr(__tsover_add(_,555)),f=Lr(__tsover_add(__tsover_add(r,__tsover_mul(o,3.33)),333)),h=ve(__tsover_add(__tsover_mul(s.x,3),__tsover_mul(f,7))),g=K(__tsover_mul(h,7)),x=v(__tsover_add(__tsover_sub(1,ot(2,g)),__tsover_mul(ot(4,g),__tsover_sub(1,ot(6,g)))),__tsover_sub(1,ot(4,g)),__tsover_sub(1,ot(.5,ve(__tsover_mul(g,.5))))),T=ve(__tsover_add(__tsover_mul(Lr(__tsover_add(r,13)),.8),__tsover_mul(o,.07))),S=__tsover_mul(T,6),A=Z(v(z(__tsover_sub(W(__tsover_sub(S,3)),1),0,1),z(__tsover_sub(2,W(__tsover_sub(S,2))),0,1),z(__tsover_sub(2,W(__tsover_sub(S,4))),0,1)).mul(1.3),x,v(ot(.5,p))),E=__tsover_mul(__tsover_mul(__tsover_mul(d,l),n),i),M=Z(t.xyz,A.mul(t.w),v(E));return b(M.x,M.y,M.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"bandY1\"},{type:\"i\",name:\"slowFrame\"},{type:\"i\",name:\"colorBarMix\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"bandGate\"},{type:\"i\",name:\"blockGate\"}],body:[0,[[13,\"colX\",[6,\"std.floor\",[[1,[7,\"uv\",\"x\"],\"*\",[5,\"4\"]]]]],[13,\"blockSeed\",[1,[1,[1,\"colX\",\"*\",[5,\"0.41\"]],\"+\",[1,\"bandY1\",\"*\",[5,\"0.67\"]]],\"+\",[1,\"slowFrame\",\"*\",[5,\"2.31\"]]]],[13,\"fillStyleHash\",[6,\"hash11\",[[1,\"blockSeed\",\"+\",[5,\"555\"]]]]],[13,\"barOffset\",[6,\"hash11\",[[1,[1,\"bandY1\",\"+\",[1,\"slowFrame\",\"*\",[5,\"3.33\"]]],\"+\",[5,\"333\"]]]]],[13,\"barX\",[6,\"std.fract\",[[1,[1,[7,\"uv\",\"x\"],\"*\",[5,\"3\"]],\"+\",[1,\"barOffset\",\"*\",[5,\"7\"]]]]]],[13,\"barIndex\",[6,\"std.floor\",[[1,\"barX\",\"*\",[5,\"7\"]]]]],[13,\"barR\",[1,[1,[5,\"1\"],\"-\",[6,\"std.step\",[[5,\"2\"],\"barIndex\"]]],\"+\",[1,[6,\"std.step\",[[5,\"4\"],\"barIndex\"]],\"*\",[1,[5,\"1\"],\"-\",[6,\"std.step\",[[5,\"6\"],\"barIndex\"]]]]]],[13,\"barG\",[1,[5,\"1\"],\"-\",[6,\"std.step\",[[5,\"4\"],\"barIndex\"]]]],[13,\"barB\",[1,[5,\"1\"],\"-\",[6,\"std.step\",[[5,\"0.5\"],[6,\"std.fract\",[[1,\"barIndex\",\"*\",[5,\"0.5\"]]]]]]]],[13,\"smpteColor\",[6,\"d.vec3f\",[\"barR\",\"barG\",\"barB\"]]],[13,\"solidHue\",[6,\"std.fract\",[[1,[1,[6,\"hash11\",[[1,\"bandY1\",\"+\",[5,\"13\"]]]],\"*\",[5,\"0.8\"]],\"+\",[1,\"slowFrame\",\"*\",[5,\"0.07\"]]]]]],[13,\"sh6\",[1,\"solidHue\",\"*\",[5,\"6\"]]],[13,\"solidColor\",[6,[7,[6,\"d.vec3f\",[[6,\"std.clamp\",[[1,[6,\"std.abs\",[[1,\"sh6\",\"-\",[5,\"3\"]]]],\"-\",[5,\"1\"]],[5,\"0\"],[5,\"1\"]]],[6,\"std.clamp\",[[1,[5,\"2\"],\"-\",[6,\"std.abs\",[[1,\"sh6\",\"-\",[5,\"2\"]]]]],[5,\"0\"],[5,\"1\"]]],[6,\"std.clamp\",[[1,[5,\"2\"],\"-\",[6,\"std.abs\",[[1,\"sh6\",\"-\",[5,\"4\"]]]]],[5,\"0\"],[5,\"1\"]]]]],\"mul\"],[[5,\"1.3\"]]]],[13,\"fillColor\",[6,\"std.mix\",[\"solidColor\",\"smpteColor\",[6,\"d.vec3f\",[[6,\"std.step\",[[5,\"0.5\"],\"fillStyleHash\"]]]]]]],[13,\"colorBarStrength\",[1,[1,[1,\"bandGate\",\"*\",\"blockGate\"],\"*\",\"colorBarMix\"],\"*\",\"strength\"]],[13,\"withBars\",[6,\"std.mix\",[[7,\"color\",\"xyz\"],[6,[7,\"fillColor\",\"mul\"],[[7,\"color\",\"w\"]]],[6,\"d.vec3f\",[\"colorBarStrength\"]]]]],[10,[6,\"d.vec4f\",[[7,\"withBars\",\"x\"],[7,\"withBars\",\"y\"],[7,\"withBars\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"std.floor\":()=>K,hash11:()=>Lr,\"std.fract\":()=>ve,\"std.step\":()=>ot,\"d.vec3f\":()=>v,\"std.clamp\":()=>z,\"std.abs\":()=>W,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})),B9=y.fn([b,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(s,r),d=__tsover_add(__tsover_mul(O(__tsover_mul(i,3.14159265)),.5),.5),l=__tsover_sub(1,__tsover_mul(__tsover_mul(__tsover_mul(o,d),.3),n)),c=t.xyz.mul(l);return b(c.x,c.y,c.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"viewportY\"},{type:\"i\",name:\"scanlines\"},{type:\"i\",name:\"distortion\"}],body:[0,[[13,\"pixelY\",[1,\"uvY\",\"*\",\"viewportY\"]],[13,\"scanlineWave\",[1,[1,[6,\"std.sin\",[[1,\"pixelY\",\"*\",[5,\"3.14159265\"]]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]],[13,\"scanlineEffect\",[1,[5,\"1\"],\"-\",[1,[1,[1,\"scanlines\",\"*\",\"scanlineWave\"],\"*\",[5,\"0.3\"]],\"*\",\"distortion\"]]],[13,\"shaded\",[6,[7,[7,\"color\",\"xyz\"],\"mul\"],[\"scanlineEffect\"]]],[10,[6,\"d.vec4f\",[[7,\"shaded\",\"x\"],[7,\"shaded\",\"y\"],[7,\"shaded\",\"z\"],[7,\"color\",\"w\"]]]]]]},externals:{\"std.sin\":()=>O,\"d.vec4f\":()=>b}})&&e.f)({})),B2=2/Math.sqrt(3),bd=Math.sqrt(3)/2,I9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vt(s),i=u(__tsover_mul(t.x,n),__tsover_sub(1,t.y)),d=__tsover_mul(o,Qe);return Od(i,n,J(d),O(d)).mul(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"rotationDeg\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"correctedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"uv\",\"y\"]]]]],[13,\"rotRad\",[1,\"rotationDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[10,[6,[7,[6,\"rotateAboutCanvasCentre\",[\"correctedUV\",\"aspect\",\"cosR\",\"sinR\"]],\"mul\"],[\"cells\"]]]]]},externals:{aspectOf:()=>Vt,\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,rotateAboutCanvasCentre:()=>Od}})&&e.f)({})),Y9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vt(s),i=u(__tsover_mul(t.x,n),t.y),d=-__tsover_mul(o,Qe);return Od(i,n,J(d),O(d)).mul(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"rotationDeg\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"correctedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"ang\",[4,\"-\",[1,\"rotationDeg\",\"*\",\"DEG_TO_RAD\"]]],[13,\"cosR\",[6,\"std.cos\",[\"ang\"]]],[13,\"sinR\",[6,\"std.sin\",[\"ang\"]]],[10,[6,[7,[6,\"rotateAboutCanvasCentre\",[\"correctedUV\",\"aspect\",\"cosR\",\"sinR\"]],\"mul\"],[\"cells\"]]]]]},externals:{aspectOf:()=>Vt,\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,rotateAboutCanvasCentre:()=>Od}})&&e.f)({})),W9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vt(s),i=u(__tsover_mul(t.x,n),t.y),d=__tsover_mul(o,Qe);return Od(i,n,J(d),O(d)).mul(r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"rotationDeg\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"correctedUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"rotRad\",[1,\"rotationDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[10,[6,[7,[6,\"rotateAboutCanvasCentre\",[\"correctedUV\",\"aspect\",\"cosR\",\"sinR\"]],\"mul\"],[\"cells\"]]]]]},externals:{aspectOf:()=>Vt,\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,rotateAboutCanvasCentre:()=>Od}})&&e.f)({})),si=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return C3(mp(t),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cellId\"},{type:\"i\",name:\"variation\"}],body:[0,[[10,[6,\"variationFactor\",[[6,\"cellHash\",[\"cellId\"]],\"variation\"]]]]]},externals:{variationFactor:()=>C3,cellHash:()=>mp}})&&e.f)({})),$p=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(o,.5);return yp(t,s,w(__tsover_sub(s,n),0),__tsover_add(__tsover_add(s,r),n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"field\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"pixel\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"soft\",[1,\"softness\",\"*\",[5,\"0.5\"]]],[13,\"lo\",[6,\"std.max\",[[1,\"lineWidth\",\"-\",\"soft\"],[5,\"0\"]]]],[13,\"hi\",[1,[1,\"lineWidth\",\"+\",\"pixel\"],\"+\",\"soft\"]],[10,[6,\"lineMaskFromField\",[\"field\",\"lineWidth\",\"lo\",\"hi\"]]]]]},externals:{\"std.max\":()=>w,lineMaskFromField:()=>yp}})&&e.f)({})),Cp=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return yp(t,s,__tsover_sub(s,r),__tsover_add(s,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"field\"},{type:\"i\",name:\"lineWidth\"},{type:\"i\",name:\"aaWidth\"}],body:[0,[[10,[6,\"lineMaskFromField\",[\"field\",\"lineWidth\",[1,\"lineWidth\",\"-\",\"aaWidth\"],[1,\"lineWidth\",\"+\",\"aaWidth\"]]]]]]},externals:{lineMaskFromField:()=>yp}})&&e.f)({})),O9=y.fn([u,u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=up(t,s).mul(r);return z3(n,R3(n,o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"p\",[6,[7,[6,\"aspectCorrectedUVFlipY\",[\"uv\",\"viewport\"]],\"mul\"],[\"cells\"]]],[10,[6,\"quilezCheckerFilter\",[\"p\",[6,\"footprint2\",[\"p\",\"softness\"]]]]]]]},externals:{aspectCorrectedUVFlipY:()=>up,quilezCheckerFilter:()=>z3,footprint2:()=>R3}})&&e.f)({})),I2=y.fn([u,u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_mul(r,Qe),l=Vt(s),c=__tsover_add(_p(Ja(t,l),J(d),O(d)),__tsover_mul(l,.5));return __tsover_add(__tsover_add(__tsover_mul(c,o),n),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"offset\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"rotatedCoord\",[1,[6,\"directionalProjection\",[[6,\"canvasCentredDelta\",[\"uv\",\"aspect\"]],[6,\"std.cos\",[\"angleRad\"]],[6,\"std.sin\",[\"angleRad\"]]]],\"+\",[1,\"aspect\",\"*\",[5,\"0.5\"]]]],[10,[1,[1,[1,\"rotatedCoord\",\"*\",\"density\"],\"+\",\"animTime\"],\"+\",\"offset\"]]]]},externals:{DEG_TO_RAD:()=>Qe,aspectOf:()=>Vt,directionalProjection:()=>_p,canvasCentredDelta:()=>Ja,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),EF=y.fn([u,u,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=I2(t,s,r,o,n,i);return U3(c,hp(c,l),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"offset\"},{type:\"i\",name:\"balance\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"p\",[6,\"stripeCoordP\",[\"uv\",\"viewport\",\"angle\",\"density\",\"animTime\",\"offset\"]]],[10,[6,\"quilezStepFilter\",[\"p\",[6,\"footprint1\",[\"p\",\"softness\"]],\"balance\"]]]]]},externals:{stripeCoordP:()=>I2,quilezStepFilter:()=>U3,footprint1:()=>hp}})&&e.f)({})),V9=y.fn([u,u,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_mul(o,Qe),_=J(c),p=O(c),f=ln(Ja(t,Vt(s)),_,-p),h=__tsover_mul(W(__tsover_sub(ve(__tsover_mul(f.y,r)),.5)),2),g=__tsover_add(__tsover_add(__tsover_add(__tsover_mul(f.x,r),__tsover_mul(h,.5)),l),d),x=ve(g),T=As(g);return ce(__tsover_sub(__tsover_sub(n,i),T),__tsover_add(__tsover_add(n,i),T),x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"count\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"balance\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"offset\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rot\",[6,\"rotate2\",[[6,\"canvasCentredDelta\",[\"uv\",[6,\"aspectOf\",[\"viewport\"]]]],\"cosA\",[4,\"-\",\"sinA\"]]]],[13,\"zigzag\",[1,[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,[7,\"rot\",\"y\"],\"*\",\"count\"]]],\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"stripeCoord\",[1,[1,[1,[1,[7,\"rot\",\"x\"],\"*\",\"count\"],\"+\",[1,\"zigzag\",\"*\",[5,\"0.5\"]]],\"+\",\"animTime\"],\"+\",\"offset\"]],[13,\"pattern\",[6,\"std.fract\",[\"stripeCoord\"]]],[13,\"fw\",[6,\"std.fwidth\",[\"stripeCoord\"]]],[10,[6,\"std.smoothstep\",[[1,[1,\"balance\",\"-\",\"softness\"],\"-\",\"fw\"],[1,[1,\"balance\",\"+\",\"softness\"],\"+\",\"fw\"],\"pattern\"]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,rotate2:()=>ln,canvasCentredDelta:()=>Ja,aspectOf:()=>Vt,\"std.abs\":()=>W,\"std.fract\":()=>ve,\"std.fwidth\":()=>As,\"std.smoothstep\":()=>ce}})&&e.f)({})),PF=y.fn([u,a,a,a,a,a,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_div(l.x,l.y),_=te(u(__tsover_sub(__tsover_mul(d.x,c),__tsover_mul(t.x,c)),__tsover_sub(d.y,__tsover_sub(1,t.y)))),p=O(__tsover_add(__tsover_sub(__tsover_mul(_,s),i),n)),f=__tsover_sub(__tsover_mul(o,2),1),h=ce(__tsover_sub(f,r),__tsover_add(f,r),p);return __tsover_sub(1,h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"phase\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"dx\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,[7,\"center\",\"x\"],\"*\",\"aspect\"]]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]],[13,\"dist\",[6,\"std.length\",[[6,\"d.vec2f\",[\"dx\",\"dy\"]]]]],[13,\"waveInput\",[1,[1,[1,\"dist\",\"*\",\"frequency\"],\"-\",\"animTime\"],\"+\",\"phase\"]],[13,\"baseWave\",[6,\"std.sin\",[\"waveInput\"]]],[13,\"thicknessThreshold\",[1,[1,\"thickness\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]],[13,\"banded\",[6,\"std.smoothstep\",[[1,\"thicknessThreshold\",\"-\",\"softness\"],[1,\"thicknessThreshold\",\"+\",\"softness\"],\"baseWave\"]]],[10,[1,[5,\"1\"],\"-\",\"banded\"]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.sin\":()=>O,\"std.smoothstep\":()=>ce}})&&e.f)({})),Y2=y.fn([a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return u(ve(__tsover_mul(O(__tsover_mul(t,127.1)),43758.5453123)),ve(__tsover_mul(O(__tsover_mul(t,311.7)),38291.3421)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"idx\"}],body:[0,[[10,[6,\"d.vec2f\",[[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,\"idx\",\"*\",[5,\"127.1\"]]]],\"*\",[5,\"43758.5453123\"]]]],[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,\"idx\",\"*\",[5,\"311.7\"]]]],\"*\",[5,\"38291.3421\"]]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({})),W2=y.fn([a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_mul(o,n),c=__tsover_mul(w(__tsover_sub(t,s),0),r),_=z(__tsover_div(c,w(l,1e-4)),0,1),p=__tsover_mul(o,$e(w(__tsover_sub(1,__tsover_mul(_,_)),0)));return __tsover_mul(__tsover_sub(1,ce(w(__tsover_sub(p,i),0),w(__tsover_add(p,i),.001),d)),ce(0,i,p))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"vPeriodic\"},{type:\"i\",name:\"trailLen\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"hw\"},{type:\"i\",name:\"rounding\"},{type:\"i\",name:\"fwU\"},{type:\"i\",name:\"distFromCenter\"}],body:[0,[[13,\"maxDepth\",[1,\"hw\",\"*\",\"rounding\"]],[13,\"gapDist\",[1,[6,\"std.max\",[[1,\"vPeriodic\",\"-\",\"trailLen\"],[5,\"0\"]]],\"*\",\"density\"]],[13,\"tcap\",[6,\"std.clamp\",[[1,\"gapDist\",\"/\",[6,\"std.max\",[\"maxDepth\",[5,\"0.0001\"]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"capHW\",[1,\"hw\",\"*\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[5,\"1\"],\"-\",[1,\"tcap\",\"*\",\"tcap\"]],[5,\"0\"]]]]]]],[10,[1,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[6,\"std.max\",[[1,\"capHW\",\"-\",\"fwU\"],[5,\"0\"]]],[6,\"std.max\",[[1,\"capHW\",\"+\",\"fwU\"],[5,\"0.001\"]]],\"distFromCenter\"]]],\"*\",[6,\"std.smoothstep\",[[5,\"0\"],\"fwU\",\"capHW\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.sqrt\":()=>$e,\"std.smoothstep\":()=>ce}})&&e.f)({})),O2=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_sub(__tsover_mul(2,s),1),o=w(__tsover_mul(2,__tsover_sub(1,s)),.001);return z(__tsover_div(__tsover_add(t,r),o),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"withinStreak\"},{type:\"i\",name:\"balance\"}],body:[0,[[13,\"balanceNum\",[1,[1,[5,\"2\"],\"*\",\"balance\"],\"-\",[5,\"1\"]]],[13,\"balanceDen\",[6,\"std.max\",[[1,[5,\"2\"],\"*\",[1,[5,\"1\"],\"-\",\"balance\"]],[5,\"0.001\"]]]],[10,[6,\"std.clamp\",[[1,[1,\"withinStreak\",\"+\",\"balanceNum\"],\"/\",\"balanceDen\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z}})&&e.f)({})),MF=y.fn([u,u,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=Vt(s),f=u(__tsover_mul(t.x,p),t.y).sub(u(__tsover_mul(p,.5),.5)),h=__tsover_mul(r,Qe),g=J(h),x=O(h),T=__tsover_sub(__tsover_mul(f.y,g),__tsover_mul(f.x,x)),S=__tsover_add(__tsover_mul(f.x,g),__tsover_mul(f.y,x)),A=__tsover_mul(T,o),E=K(A),M=ve(A),$=Y2(E),L=__tsover_add(1,__tsover_mul(__tsover_mul(__tsover_sub($.x,.5),n),2)),B=$.y,D=ve(__tsover_mul(_,L)),G=ve(__tsover_sub(__tsover_sub(S,D),B)),I=i,X=z(__tsover_div(G,I),0,1),H=z(As(S),.001,.1),ee=z(__tsover_mul(As(T),o),.001,.1),Q=__tsover_sub(1,ce(__tsover_sub(I,H),__tsover_add(I,H),G)),de=__tsover_mul(d,.5),Ee=W(__tsover_sub(M,.5)),he=__tsover_sub(1,ce(__tsover_sub(de,ee),__tsover_add(de,ee),Ee));return u(w(__tsover_mul(Q,he),W2(G,I,o,de,l,ee,Ee)),O2(X,c))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"vp\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"speedVariance\"},{type:\"i\",name:\"trailLength\"},{type:\"i\",name:\"strokeWidth\"},{type:\"i\",name:\"rounding\"},{type:\"i\",name:\"balance\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"vp\"]]],[13,\"corrUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centeredUV\",[6,[7,\"corrUV\",\"sub\"],[[6,\"d.vec2f\",[[1,\"aspect\",\"*\",[5,\"0.5\"]],[5,\"0.5\"]]]]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"u\",[1,[1,[7,\"centeredUV\",\"y\"],\"*\",\"cosA\"],\"-\",[1,[7,\"centeredUV\",\"x\"],\"*\",\"sinA\"]]],[13,\"v\",[1,[1,[7,\"centeredUV\",\"x\"],\"*\",\"cosA\"],\"+\",[1,[7,\"centeredUV\",\"y\"],\"*\",\"sinA\"]]],[13,\"colF\",[1,\"u\",\"*\",\"density\"]],[13,\"colIdx\",[6,\"std.floor\",[\"colF\"]]],[13,\"colLocalU\",[6,\"std.fract\",[\"colF\"]]],[13,\"h\",[6,\"colHash\",[\"colIdx\"]]],[13,\"speedMod\",[1,[5,\"1\"],\"+\",[1,[1,[1,[7,\"h\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"speedVariance\"],\"*\",[5,\"2\"]]]],[13,\"phase\",[7,\"h\",\"y\"]],[13,\"animOffset\",[6,\"std.fract\",[[1,\"animTime\",\"*\",\"speedMod\"]]]],[13,\"vPeriodic\",[6,\"std.fract\",[[1,[1,\"v\",\"-\",\"animOffset\"],\"-\",\"phase\"]]]],[13,\"trailLen\",\"trailLength\"],[13,\"withinStreak\",[6,\"std.clamp\",[[1,\"vPeriodic\",\"/\",\"trailLen\"],[5,\"0\"],[5,\"1\"]]]],[13,\"fwV\",[6,\"std.clamp\",[[6,\"std.fwidth\",[\"v\"]],[5,\"0.001\"],[5,\"0.1\"]]]],[13,\"fwU\",[6,\"std.clamp\",[[1,[6,\"std.fwidth\",[\"u\"]],\"*\",\"density\"],[5,\"0.001\"],[5,\"0.1\"]]]],[13,\"streakMask\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"trailLen\",\"-\",\"fwV\"],[1,\"trailLen\",\"+\",\"fwV\"],\"vPeriodic\"]]]],[13,\"hw\",[1,\"strokeWidth\",\"*\",[5,\"0.5\"]]],[13,\"distFromCenter\",[6,\"std.abs\",[[1,\"colLocalU\",\"-\",[5,\"0.5\"]]]]],[13,\"widthMask\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"hw\",\"-\",\"fwU\"],[1,\"hw\",\"+\",\"fwU\"],\"distFromCenter\"]]]],[13,\"rectMask\",[1,\"streakMask\",\"*\",\"widthMask\"]],[13,\"capAlpha\",[6,\"fallingCapAlpha\",[\"vPeriodic\",\"trailLen\",\"density\",\"hw\",\"rounding\",\"fwU\",\"distFromCenter\"]]],[13,\"finalMask\",[6,\"std.max\",[\"rectMask\",\"capAlpha\"]]],[10,[6,\"d.vec2f\",[\"finalMask\",[6,\"fallingBalanceRemap\",[\"withinStreak\",\"balance\"]]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.floor\":()=>K,\"std.fract\":()=>ve,colHash:()=>Y2,\"std.clamp\":()=>z,\"std.fwidth\":()=>As,\"std.smoothstep\":()=>ce,\"std.abs\":()=>W,fallingCapAlpha:()=>W2,\"std.max\":()=>w,fallingBalanceRemap:()=>O2}})&&e.f)({})),N9=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return $3(t,s,r,__tsover_mul(o,Qe))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cells\"},{type:\"i\",name:\"rotation\"}],body:[0,[[10,[6,\"cellCentreUVRotated\",[\"uv\",\"viewport\",\"cells\",[1,\"rotation\",\"*\",\"DEG_TO_RAD\"]]]]]]},externals:{cellCentreUVRotated:()=>$3,DEG_TO_RAD:()=>Qe}})&&e.f)({})),q9=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(s,.01),i=w(n,1e-4),d=__tsover_mul(i,2),l=__tsover_div(1,d),c=t.add(i),_=Dd(c),p=Ld(c),f=__tsover_add(w(w(W(_.x),W(p.x)),1e-5),r),h=__tsover_add(w(w(W(_.y),W(p.y)),1e-5),r),g=Q1(c.x,f,l),x=Q1(c.y,h,l),T=__tsover_mul(__tsover_sub(1,g),__tsover_sub(1,x));return u(__tsover_mul(__tsover_sub(1,T),ot(1e-4,n)),si(K(t),o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"gridUV\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"variation\"}],body:[0,[[13,\"lineWidth\",[1,\"thickness\",\"*\",[5,\"0.01\"]]],[13,\"safeLine\",[6,\"std.max\",[\"lineWidth\",[5,\"0.0001\"]]]],[13,\"lineFraction\",[1,\"safeLine\",\"*\",[5,\"2\"]]],[13,\"N\",[1,[5,\"1\"],\"/\",\"lineFraction\"]],[13,\"p\",[6,[7,\"gridUV\",\"add\"],[\"safeLine\"]]],[13,\"dpx\",[6,\"std.dpdx\",[\"p\"]]],[13,\"dpy\",[6,\"std.dpdy\",[\"p\"]]],[13,\"wx\",[1,[6,\"std.max\",[[6,\"std.max\",[[6,\"std.abs\",[[7,\"dpx\",\"x\"]]],[6,\"std.abs\",[[7,\"dpy\",\"x\"]]]]],[5,\"0.00001\"]]],\"+\",\"softness\"]],[13,\"wy\",[1,[6,\"std.max\",[[6,\"std.max\",[[6,\"std.abs\",[[7,\"dpx\",\"y\"]]],[6,\"std.abs\",[[7,\"dpy\",\"y\"]]]]],[5,\"0.00001\"]]],\"+\",\"softness\"]],[13,\"iX\",[6,\"quilezLineFilterAxis\",[[7,\"p\",\"x\"],\"wx\",\"N\"]]],[13,\"iY\",[6,\"quilezLineFilterAxis\",[[7,\"p\",\"y\"],\"wy\",\"N\"]]],[13,\"gapBoth\",[1,[1,[5,\"1\"],\"-\",\"iX\"],\"*\",[1,[5,\"1\"],\"-\",\"iY\"]]],[13,\"gridMask\",[1,[1,[5,\"1\"],\"-\",\"gapBoth\"],\"*\",[6,\"std.step\",[[5,\"0.0001\"],\"lineWidth\"]]]],[13,\"variedFactor\",[6,\"cellVariation\",[[6,\"std.floor\",[\"gridUV\"]],\"variation\"]]],[10,[6,\"d.vec2f\",[\"gridMask\",\"variedFactor\"]]]]]},externals:{\"std.max\":()=>w,\"std.dpdx\":()=>Dd,\"std.dpdy\":()=>Ld,\"std.abs\":()=>W,quilezLineFilterAxis:()=>Q1,\"std.step\":()=>ot,cellVariation:()=>si,\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),X9=y.fn([u,u,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c)=>{\"use gpu\";let _=up(t,s),p=_.mul(r),f=K(p.y),h=vp(fp(f),i),g=__tsover_mul(l,h),x=__tsover_mul(n,Wd(f,2)),T=Vd(u(__tsover_sub(__tsover_sub(p.x,x),g),p.y)),S=te(T.local.sub(.5)),A=te(As(_.mul(r))),E=G3(S,__tsover_mul(o,.5),A),M=ve(__tsover_mul(O(__tsover_add(__tsover_mul(T.cell.x,12.9898),__tsover_mul(T.cell.y,78.233))),43758.5453)),$=__tsover_add(__tsover_mul(c,2),__tsover_mul(M,Et)),L=Z(1,__tsover_add(__tsover_mul(O($),.5),.5),d);return __tsover_mul(E,L)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"density\"},{type:\"i\",name:\"dotSize\"},{type:\"i\",name:\"offset\"},{type:\"i\",name:\"speedVariance\"},{type:\"i\",name:\"twinkle\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"time\"}],body:[0,[[13,\"correctedUV\",[6,\"aspectCorrectedUVFlipY\",[\"uv\",\"viewport\"]]],[13,\"gridUV\",[6,[7,\"correctedUV\",\"mul\"],[\"density\"]]],[13,\"rowIndex\",[6,\"std.floor\",[[7,\"gridUV\",\"y\"]]]],[13,\"speedMod\",[6,\"rowSpeedMultiplier\",[[6,\"rowSpeedHash\",[\"rowIndex\"]],\"speedVariance\"]]],[13,\"drift\",[1,\"animTime\",\"*\",\"speedMod\"]],[13,\"staticStagger\",[1,\"offset\",\"*\",[6,\"flooredMod1\",[\"rowIndex\",[5,\"2\"]]]]],[13,\"shiftedGrid\",[6,\"d.vec2f\",[[1,[1,[7,\"gridUV\",\"x\"],\"-\",\"staticStagger\"],\"-\",\"drift\"],[7,\"gridUV\",\"y\"]]]],[13,\"tile\",[6,\"squareTiling\",[\"shiftedGrid\"]]],[13,\"centerDistance\",[6,\"std.length\",[[6,[7,[7,\"tile\",\"local\"],\"sub\"],[[5,\"0.5\"]]]]]],[13,\"pixelSize\",[6,\"std.length\",[[6,\"std.fwidth\",[[6,[7,\"correctedUV\",\"mul\"],[\"density\"]]]]]]],[13,\"coverage\",[6,\"discCoverage\",[\"centerDistance\",[1,\"dotSize\",\"*\",[5,\"0.5\"]],\"pixelSize\"]]],[13,\"dotPhase\",[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,[1,[7,[7,\"tile\",\"cell\"],\"x\"],\"*\",[5,\"12.9898\"]],\"+\",[1,[7,[7,\"tile\",\"cell\"],\"y\"],\"*\",[5,\"78.233\"]]]]],\"*\",[5,\"43758.5453\"]]]]],[13,\"twinkleTime\",[1,[1,\"time\",\"*\",[5,\"2\"]],\"+\",[1,\"dotPhase\",\"*\",\"TAU\"]]],[13,\"twinkleValue\",[1,[1,[6,\"std.sin\",[\"twinkleTime\"]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]],[13,\"twinkleModifier\",[6,\"std.mix\",[[5,\"1\"],\"twinkleValue\",\"twinkle\"]]],[10,[1,\"coverage\",\"*\",\"twinkleModifier\"]]]]},externals:{aspectCorrectedUVFlipY:()=>up,\"std.floor\":()=>K,rowSpeedMultiplier:()=>vp,rowSpeedHash:()=>fp,flooredMod1:()=>Wd,\"d.vec2f\":()=>u,squareTiling:()=>Vd,\"std.length\":()=>te,\"std.fwidth\":()=>As,discCoverage:()=>G3,\"std.fract\":()=>ve,\"std.sin\":()=>O,TAU:()=>Et,\"std.mix\":()=>Z}})&&e.f)({})),H9=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=pp(t,u(Za,1)),i=si(u(Wa(__tsover_mul(n.id.x,B2)),Wa(__tsover_mul(n.id.y,2))),o),d=u(W(n.gv.x),W(n.gv.y)),l=w(le(d,u(bd,.5)),d.y);return u($p(__tsover_sub(.5,l),__tsover_mul(s,.01),__tsover_mul(As(t.x),.5),r),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"variation\"}],body:[0,[[13,\"hex\",[6,\"hexTiling\",[\"scaledUV\",[6,\"d.vec2f\",[\"SQRT3\",[5,\"1\"]]]]]],[13,\"ix\",[6,\"std.round\",[[1,[7,[7,\"hex\",\"id\"],\"x\"],\"*\",\"INV_SQRT3_2\"]]]],[13,\"iy\",[6,\"std.round\",[[1,[7,[7,\"hex\",\"id\"],\"y\"],\"*\",[5,\"2\"]]]]],[13,\"variedFactor\",[6,\"cellVariation\",[[6,\"d.vec2f\",[\"ix\",\"iy\"]],\"variation\"]]],[13,\"pAbs\",[6,\"d.vec2f\",[[6,\"std.abs\",[[7,[7,\"hex\",\"gv\"],\"x\"]]],[6,\"std.abs\",[[7,[7,\"hex\",\"gv\"],\"y\"]]]]]],[13,\"hexDist\",[6,\"std.max\",[[6,\"std.dot\",[\"pAbs\",[6,\"d.vec2f\",[\"SQRT3_2\",[5,\"0.5\"]]]]],[7,\"pAbs\",\"y\"]]]],[13,\"edgeDist\",[1,[5,\"0.5\"],\"-\",\"hexDist\"]],[13,\"lineWidth\",[1,\"thickness\",\"*\",[5,\"0.01\"]]],[13,\"pixel\",[1,[6,\"std.fwidth\",[[7,\"scaledUV\",\"x\"]]],\"*\",[5,\"0.5\"]]],[13,\"lineMask\",[6,\"strokeBandFloored\",[\"edgeDist\",\"lineWidth\",\"pixel\",\"softness\"]]],[10,[6,\"d.vec2f\",[\"lineMask\",\"variedFactor\"]]]]]},externals:{hexTiling:()=>pp,\"d.vec2f\":()=>u,SQRT3:()=>Za,\"std.round\":()=>Wa,INV_SQRT3_2:()=>B2,cellVariation:()=>si,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.dot\":()=>le,SQRT3_2:()=>bd,\"std.fwidth\":()=>As,strokeBandFloored:()=>$p}})&&e.f)({})),j9=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=k3(t),l=vp(fp(K(d.y)),n),c=__tsover_mul(i,l),_=u(__tsover_sub(d.x,c),d.y),p=K(_),f=ve(_),h=ot(1,__tsover_add(f.x,f.y)),g=si(u(__tsover_add(__tsover_mul(p.x,2),h),p.y),o);return u(Cp(ue(ue(ue(f.x,__tsover_sub(1,f.x)),ue(f.y,__tsover_sub(1,f.y))),W(__tsover_sub(__tsover_add(f.x,f.y),1))),__tsover_mul(s,.02),__tsover_add(w(As(d.x),As(d.y)),__tsover_mul(r,.5))),g)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"variation\"},{type:\"i\",name:\"speedVariance\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"ps\",[6,\"triLattice\",[\"p\"]]],[13,\"rowIndex\",[6,\"std.floor\",[[7,\"ps\",\"y\"]]]],[13,\"speedMod\",[6,\"rowSpeedMultiplier\",[[6,\"rowSpeedHash\",[\"rowIndex\"]],\"speedVariance\"]]],[13,\"drift\",[1,\"animTime\",\"*\",\"speedMod\"]],[13,\"psShifted\",[6,\"d.vec2f\",[[1,[7,\"ps\",\"x\"],\"-\",\"drift\"],[7,\"ps\",\"y\"]]]],[13,\"cell\",[6,\"std.floor\",[\"psShifted\"]]],[13,\"f\",[6,\"std.fract\",[\"psShifted\"]]],[13,\"upper\",[6,\"std.step\",[[5,\"1\"],[1,[7,\"f\",\"x\"],\"+\",[7,\"f\",\"y\"]]]]],[13,\"triId\",[6,\"d.vec2f\",[[1,[1,[7,\"cell\",\"x\"],\"*\",[5,\"2\"]],\"+\",\"upper\"],[7,\"cell\",\"y\"]]]],[13,\"variedFactor\",[6,\"cellVariation\",[\"triId\",\"variation\"]]],[13,\"dEdge\",[6,\"std.min\",[[6,\"std.min\",[[6,\"std.min\",[[7,\"f\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"f\",\"x\"]]]],[6,\"std.min\",[[7,\"f\",\"y\"],[1,[5,\"1\"],\"-\",[7,\"f\",\"y\"]]]]]],[6,\"std.abs\",[[1,[1,[7,\"f\",\"x\"],\"+\",[7,\"f\",\"y\"]],\"-\",[5,\"1\"]]]]]]],[13,\"lineWidth\",[1,\"thickness\",\"*\",[5,\"0.02\"]]],[13,\"aaWidth\",[1,[6,\"std.max\",[[6,\"std.fwidth\",[[7,\"ps\",\"x\"]]],[6,\"std.fwidth\",[[7,\"ps\",\"y\"]]]]],\"+\",[1,\"softness\",\"*\",[5,\"0.5\"]]]],[13,\"lineMask\",[6,\"strokeBandSymmetric\",[\"dEdge\",\"lineWidth\",\"aaWidth\"]]],[10,[6,\"d.vec2f\",[\"lineMask\",\"variedFactor\"]]]]]},externals:{triLattice:()=>k3,\"std.floor\":()=>K,rowSpeedMultiplier:()=>vp,rowSpeedHash:()=>fp,\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.step\":()=>ot,cellVariation:()=>si,\"std.min\":()=>ue,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.fwidth\":()=>As,strokeBandSymmetric:()=>Cp}})&&e.f)({})),V2=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s),n=Ja(t,o),i=__tsover_mul(r,Qe),d=ln(n,J(i),-O(i));return u(__tsover_add(__tsover_div(d.x,o),.5),__tsover_add(d.y,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"rotation\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"centred\",[6,\"canvasCentredDelta\",[\"uv\",\"aspect\"]]],[13,\"rotRad\",[1,\"rotation\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rot\",[6,\"rotate2\",[\"centred\",\"cosR\",[4,\"-\",\"sinR\"]]]],[10,[6,\"d.vec2f\",[[1,[1,[7,\"rot\",\"x\"],\"/\",\"aspect\"],\"+\",[5,\"0.5\"]],[1,[7,\"rot\",\"y\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{aspectOf:()=>Vt,canvasCentredDelta:()=>Ja,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,rotate2:()=>ln,\"d.vec2f\":()=>u}})&&e.f)({})),N2=y.fn([a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Wd(t,2);return u(__tsover_mul(o,.5),Z(__tsover_sub(__tsover_mul(o,2),1),__tsover_mul(__tsover_sub(ve(__tsover_mul(O(__tsover_add(t,__tsover_mul(s,.137))),43758.5453)),.5),2),r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"row\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"speedVariance\"}],body:[0,[[13,\"rowMod2\",[6,\"flooredMod1\",[\"row\",[5,\"2\"]]]],[13,\"rowOffset\",[1,\"rowMod2\",\"*\",[5,\"0.5\"]]],[13,\"rowDir\",[1,[1,\"rowMod2\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]],[13,\"rowHash\",[1,[1,[6,\"std.fract\",[[1,[6,\"std.sin\",[[1,\"row\",\"+\",[1,\"seed\",\"*\",[5,\"0.137\"]]]]],\"*\",[5,\"43758.5453\"]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"2\"]]],[10,[6,\"d.vec2f\",[\"rowOffset\",[6,\"std.mix\",[\"rowDir\",\"rowHash\",\"speedVariance\"]]]]]]]},externals:{flooredMod1:()=>Wd,\"std.fract\":()=>ve,\"std.sin\":()=>O,\"d.vec2f\":()=>u,\"std.mix\":()=>Z}})&&e.f)({})),q2=y.fn([u,u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Sd(t.x,__tsover_sub(s.x,r.x),__tsover_add(s.x,r.x)),n=Sd(t.y,__tsover_sub(s.y,r.y),__tsover_add(s.y,r.y));return __tsover_mul(o,n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cellUV\"},{type:\"i\",name:\"mortarUV\"},{type:\"i\",name:\"aaUV\"}],body:[0,[[13,\"brickU\",[6,\"bandMask\",[[7,\"cellUV\",\"x\"],[1,[7,\"mortarUV\",\"x\"],\"-\",[7,\"aaUV\",\"x\"]],[1,[7,\"mortarUV\",\"x\"],\"+\",[7,\"aaUV\",\"x\"]]]]],[13,\"brickV\",[6,\"bandMask\",[[7,\"cellUV\",\"y\"],[1,[7,\"mortarUV\",\"y\"],\"-\",[7,\"aaUV\",\"y\"]],[1,[7,\"mortarUV\",\"y\"],\"+\",[7,\"aaUV\",\"y\"]]]]],[10,[1,\"brickU\",\"*\",\"brickV\"]]]]},externals:{bandMask:()=>Sd}})&&e.f)({})),K9=y.fn([u,u,a,a,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f)=>{\"use gpu\";let h=Vt(s),g=V2(t,s,l),x=g.x,T=g.y,S=__tsover_mul(n,.3),A=__tsover_div(__tsover_mul(__tsover_mul(S,h),o),r),E=K(__tsover_mul(T,o)),M=N2(E,p,_),$=__tsover_add(__tsover_add(__tsover_add(__tsover_mul(x,r),M.x),__tsover_mul(f,M.y)),c),L=__tsover_mul(T,o),B=ve($),D=ve(L),G=__tsover_mul(i,.5),I=__tsover_add(As($),G),X=__tsover_add(As(L),G);return u(q2(u(B,D),u(S,A),u(I,X)),si(u(K($),E),d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cellsX\"},{type:\"i\",name:\"cellsY\"},{type:\"i\",name:\"mortar\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"variation\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"offset\"},{type:\"i\",name:\"speedVariance\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"frame\",[6,\"brickFrame\",[\"uv\",\"viewport\",\"rotation\"]]],[13,\"u\",[7,\"frame\",\"x\"]],[13,\"v\",[7,\"frame\",\"y\"]],[13,\"mortarU\",[1,\"mortar\",\"*\",[5,\"0.3\"]]],[13,\"mortarV\",[1,[1,[1,\"mortarU\",\"*\",\"aspect\"],\"*\",\"cellsY\"],\"/\",\"cellsX\"]],[13,\"row\",[6,\"std.floor\",[[1,\"v\",\"*\",\"cellsY\"]]]],[13,\"stagger\",[6,\"brickRowStagger\",[\"row\",\"seed\",\"speedVariance\"]]],[13,\"brickArg\",[1,[1,[1,[1,\"u\",\"*\",\"cellsX\"],\"+\",[7,\"stagger\",\"x\"]],\"+\",[1,\"animTime\",\"*\",[7,\"stagger\",\"y\"]]],\"+\",\"offset\"]],[13,\"vScaled\",[1,\"v\",\"*\",\"cellsY\"]],[13,\"cellU\",[6,\"std.fract\",[\"brickArg\"]]],[13,\"cellV\",[6,\"std.fract\",[\"vScaled\"]]],[13,\"soft\",[1,\"softness\",\"*\",[5,\"0.5\"]]],[13,\"aaU\",[1,[6,\"std.fwidth\",[\"brickArg\"]],\"+\",\"soft\"]],[13,\"aaV\",[1,[6,\"std.fwidth\",[\"vScaled\"]],\"+\",\"soft\"]],[13,\"brickMask\",[6,\"brickMortarMask\",[[6,\"d.vec2f\",[\"cellU\",\"cellV\"]],[6,\"d.vec2f\",[\"mortarU\",\"mortarV\"]],[6,\"d.vec2f\",[\"aaU\",\"aaV\"]]]]],[13,\"brickId\",[6,\"d.vec2f\",[[6,\"std.floor\",[\"brickArg\"]],\"row\"]]],[13,\"variedFactor\",[6,\"cellVariation\",[\"brickId\",\"variation\"]]],[10,[6,\"d.vec2f\",[\"brickMask\",\"variedFactor\"]]]]]},externals:{aspectOf:()=>Vt,brickFrame:()=>V2,\"std.floor\":()=>K,brickRowStagger:()=>N2,\"std.fract\":()=>ve,\"std.fwidth\":()=>As,brickMortarMask:()=>q2,\"d.vec2f\":()=>u,cellVariation:()=>si}})&&e.f)({})),X2=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=le(t,u(127.1,311.7));return ve(__tsover_mul(O(s),43758.5453))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"h\",[6,\"std.dot\",[\"p\",[6,\"d.vec2f\",[[5,\"127.1\"],[5,\"311.7\"]]]]]],[10,[6,\"std.fract\",[[1,[6,\"std.sin\",[\"h\"]],\"*\",[5,\"43758.5453\"]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec2f\":()=>u,\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({})),Z9=y.fn([u,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vd(t),i=X2(u(__tsover_add(n.cell.x,o),__tsover_add(n.cell.y,o)))>.5,d=F(a(0),a(1),i),l=F(a(1),a(0),i);return $p(ue(W(__tsover_sub(te(u(__tsover_sub(n.local.x,d),n.local.y)),.5)),W(__tsover_sub(te(u(__tsover_sub(n.local.x,l),__tsover_sub(n.local.y,1))),.5))),__tsover_mul(s,.005),__tsover_mul(As(t.x),.5),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"tile\",[6,\"squareTiling\",[\"scaledUV\"]]],[13,\"h\",[6,\"truchetHash\",[[6,\"d.vec2f\",[[1,[7,[7,\"tile\",\"cell\"],\"x\"],\"+\",\"seed\"],[1,[7,[7,\"tile\",\"cell\"],\"y\"],\"+\",\"seed\"]]]]]],[13,\"flip\",[1,\"h\",\">\",[5,\"0.5\"]]],[13,\"c1x\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],\"flip\"]]],[13,\"c2x\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"d.f32\",[[5,\"0\"]]],\"flip\"]]],[13,\"d1\",[6,\"std.abs\",[[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,[7,\"tile\",\"local\"],\"x\"],\"-\",\"c1x\"],[7,[7,\"tile\",\"local\"],\"y\"]]]]],\"-\",[5,\"0.5\"]]]]],[13,\"d2\",[6,\"std.abs\",[[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,[7,\"tile\",\"local\"],\"x\"],\"-\",\"c2x\"],[1,[7,[7,\"tile\",\"local\"],\"y\"],\"-\",[5,\"1\"]]]]]],\"-\",[5,\"0.5\"]]]]],[13,\"arcDist\",[6,\"std.min\",[\"d1\",\"d2\"]]],[13,\"lineWidth\",[1,\"thickness\",\"*\",[5,\"0.005\"]]],[13,\"pixel\",[1,[6,\"std.fwidth\",[[7,\"scaledUV\",\"x\"]]],\"*\",[5,\"0.5\"]]],[10,[6,\"strokeBandFloored\",[\"arcDist\",\"lineWidth\",\"pixel\",\"softness\"]]]]]},externals:{squareTiling:()=>Vd,truchetHash:()=>X2,\"d.vec2f\":()=>u,\"std.select\":()=>F,\"d.f32\":()=>a,\"std.abs\":()=>W,\"std.length\":()=>te,\"std.min\":()=>ue,\"std.fwidth\":()=>As,strokeBandFloored:()=>$p}})&&e.f)({})),Q9=y.fn([u,a,b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Vd(t),i=__tsover_mul(As(t.x),.5),d=Sd(n.local.y,s,__tsover_add(s,i)),l=Sd(n.local.x,s,__tsover_add(s,i)),c=Wd(__tsover_add(n.cell.x,n.cell.y),2),_=__tsover_mul(d,l),p=z(__tsover_sub(d,__tsover_mul(_,c)),0,1),f=z(__tsover_sub(l,__tsover_mul(_,__tsover_sub(1,c))),0,1),h=__tsover_mul(r.w,p),g=__tsover_mul(o.w,f),x=z(__tsover_add(h,g),0,1),T=w(__tsover_add(h,g),.001);return b(__tsover_div(__tsover_add(__tsover_mul(r.x,h),__tsover_mul(o.x,g)),T),__tsover_div(__tsover_add(__tsover_mul(r.y,h),__tsover_mul(o.y,g)),T),__tsover_div(__tsover_add(__tsover_mul(r.z,h),__tsover_mul(o.z,g)),T),x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"gap\"},{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"}],body:[0,[[13,\"tile\",[6,\"squareTiling\",[\"scaledUV\"]]],[13,\"pixel\",[1,[6,\"std.fwidth\",[[7,\"scaledUV\",\"x\"]]],\"*\",[5,\"0.5\"]]],[13,\"hBand\",[6,\"bandMask\",[[7,[7,\"tile\",\"local\"],\"y\"],\"gap\",[1,\"gap\",\"+\",\"pixel\"]]]],[13,\"vBand\",[6,\"bandMask\",[[7,[7,\"tile\",\"local\"],\"x\"],\"gap\",[1,\"gap\",\"+\",\"pixel\"]]]],[13,\"isHTopFloat\",[6,\"flooredMod1\",[[1,[7,[7,\"tile\",\"cell\"],\"x\"],\"+\",[7,[7,\"tile\",\"cell\"],\"y\"]],[5,\"2\"]]]],[13,\"intersection\",[1,\"hBand\",\"*\",\"vBand\"]],[13,\"hVis\",[6,\"std.clamp\",[[1,\"hBand\",\"-\",[1,\"intersection\",\"*\",\"isHTopFloat\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"vVis\",[6,\"std.clamp\",[[1,\"vBand\",\"-\",[1,\"intersection\",\"*\",[1,[5,\"1\"],\"-\",\"isHTopFloat\"]]],[5,\"0\"],[5,\"1\"]]]],[13,\"weightA\",[1,[7,\"colorA\",\"w\"],\"*\",\"hVis\"]],[13,\"weightB\",[1,[7,\"colorB\",\"w\"],\"*\",\"vVis\"]],[13,\"totalAlpha\",[6,\"std.clamp\",[[1,\"weightA\",\"+\",\"weightB\"],[5,\"0\"],[5,\"1\"]]]],[13,\"safeWeight\",[6,\"std.max\",[[1,\"weightA\",\"+\",\"weightB\"],[5,\"0.001\"]]]],[13,\"r\",[1,[1,[1,[7,\"colorA\",\"x\"],\"*\",\"weightA\"],\"+\",[1,[7,\"colorB\",\"x\"],\"*\",\"weightB\"]],\"/\",\"safeWeight\"]],[13,\"g\",[1,[1,[1,[7,\"colorA\",\"y\"],\"*\",\"weightA\"],\"+\",[1,[7,\"colorB\",\"y\"],\"*\",\"weightB\"]],\"/\",\"safeWeight\"]],[13,\"b\",[1,[1,[1,[7,\"colorA\",\"z\"],\"*\",\"weightA\"],\"+\",[1,[7,\"colorB\",\"z\"],\"*\",\"weightB\"]],\"/\",\"safeWeight\"]],[10,[6,\"d.vec4f\",[\"r\",\"g\",\"b\",\"totalAlpha\"]]]]]},externals:{squareTiling:()=>Vd,\"std.fwidth\":()=>As,bandMask:()=>Sd,flooredMod1:()=>Wd,\"std.clamp\":()=>z,\"std.max\":()=>w,\"d.vec4f\":()=>b}})&&e.f)({})),H2=2/Math.sqrt(3),J9=y.fn([u,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=pp(t,u(1,Za)),n=le(o.gv,u(0,1)),i=le(o.gv,u(-bd,-.5)),d=le(o.gv,u(bd,-.5)),l=n>=w(i,d),c=F(F(.74,.5,i>=d),1,l),_=mp(u(Wa(__tsover_mul(o.id.x,2)),Wa(__tsover_mul(o.id.y,H2)))),p=w(n,w(i,d)),f=ue(n,ue(i,d)),h=__tsover_sub(__tsover_sub(__tsover_add(__tsover_add(n,i),d),p),f),g=__tsover_sub(p,h),x=u(W(o.gv.x),W(o.gv.y)),T=w(le(x,u(.5,bd)),x.x);return v(_,c,Cp(ue(g,__tsover_sub(.5,T)),__tsover_mul(s,.02),__tsover_add(__tsover_mul(As(t.x),.5),__tsover_mul(r,.5))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"scaledUV\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"}],body:[0,[[13,\"hex\",[6,\"hexTiling\",[\"scaledUV\",[6,\"d.vec2f\",[[5,\"1\"],\"SQRT3\"]]]]],[13,\"s0\",[6,\"std.dot\",[[7,\"hex\",\"gv\"],[6,\"d.vec2f\",[[5,\"0\"],[5,\"1\"]]]]]],[13,\"s1\",[6,\"std.dot\",[[7,\"hex\",\"gv\"],[6,\"d.vec2f\",[[4,\"-\",\"SQRT3_2\"],[4,\"-\",[5,\"0.5\"]]]]]]],[13,\"s2\",[6,\"std.dot\",[[7,\"hex\",\"gv\"],[6,\"d.vec2f\",[\"SQRT3_2\",[4,\"-\",[5,\"0.5\"]]]]]]],[13,\"isTop\",[1,\"s0\",\">=\",[6,\"std.max\",[\"s1\",\"s2\"]]]],[13,\"isLeft\",[1,\"s1\",\">=\",\"s2\"]],[13,\"tone\",[6,\"std.select\",[[6,\"std.select\",[[5,\"0.74\"],[5,\"0.5\"],\"isLeft\"]],[5,\"1\"],\"isTop\"]]],[13,\"ix\",[6,\"std.round\",[[1,[7,[7,\"hex\",\"id\"],\"x\"],\"*\",[5,\"2\"]]]]],[13,\"iy\",[6,\"std.round\",[[1,[7,[7,\"hex\",\"id\"],\"y\"],\"*\",\"INV_2_SQRT3\"]]]],[13,\"rand\",[6,\"cellHash\",[[6,\"d.vec2f\",[\"ix\",\"iy\"]]]]],[13,\"mx\",[6,\"std.max\",[\"s0\",[6,\"std.max\",[\"s1\",\"s2\"]]]]],[13,\"mn\",[6,\"std.min\",[\"s0\",[6,\"std.min\",[\"s1\",\"s2\"]]]]],[13,\"midScore\",[1,[1,[1,[1,\"s0\",\"+\",\"s1\"],\"+\",\"s2\"],\"-\",\"mx\"],\"-\",\"mn\"]],[13,\"internal\",[1,\"mx\",\"-\",\"midScore\"]],[13,\"pAbs\",[6,\"d.vec2f\",[[6,\"std.abs\",[[7,[7,\"hex\",\"gv\"],\"x\"]]],[6,\"std.abs\",[[7,[7,\"hex\",\"gv\"],\"y\"]]]]]],[13,\"hexDist\",[6,\"std.max\",[[6,\"std.dot\",[\"pAbs\",[6,\"d.vec2f\",[[5,\"0.5\"],\"SQRT3_2\"]]]],[7,\"pAbs\",\"x\"]]]],[13,\"rimDist\",[1,[5,\"0.5\"],\"-\",\"hexDist\"]],[13,\"edgeField\",[6,\"std.min\",[\"internal\",\"rimDist\"]]],[13,\"lineWidth\",[1,\"thickness\",\"*\",[5,\"0.02\"]]],[13,\"aaWidth\",[1,[1,[6,\"std.fwidth\",[[7,\"scaledUV\",\"x\"]]],\"*\",[5,\"0.5\"]],\"+\",[1,\"softness\",\"*\",[5,\"0.5\"]]]],[13,\"wire\",[6,\"strokeBandSymmetric\",[\"edgeField\",\"lineWidth\",\"aaWidth\"]]],[10,[6,\"d.vec3f\",[\"rand\",\"tone\",\"wire\"]]]]]},externals:{hexTiling:()=>pp,\"d.vec2f\":()=>u,SQRT3:()=>Za,\"std.dot\":()=>le,SQRT3_2:()=>bd,\"std.max\":()=>w,\"std.select\":()=>F,\"std.round\":()=>Wa,INV_2_SQRT3:()=>H2,cellHash:()=>mp,\"std.min\":()=>ue,\"std.abs\":()=>W,\"std.fwidth\":()=>As,strokeBandSymmetric:()=>Cp,\"d.vec3f\":()=>v}})&&e.f)({})),Ci=.1,eN=y.fn([b,u,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(s.x,r),s.y),d=__tsover_mul(o,Qe),l=J(d),c=O(d),_=ve(u(le(i,u(l,__tsover_mul(c,-1))),le(i,u(c,l))).mul(n)).sub(u(.5,.5)),p=le(v(t.x,t.y,t.z),v(.299,.587,.114)),f=__tsover_add(__tsover_mul(p,.7),.15),h=te(_),g=__tsover_sub(1,ce(__tsover_sub(f,Ci),__tsover_add(f,Ci),h));return b(__tsover_mul(t.x,g),__tsover_mul(t.y,g),__tsover_mul(t.z,g),__tsover_mul(t.w,g))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"childColor\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"frequency\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"c\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"s\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rotatedUV\",[6,\"d.vec2f\",[[6,\"std.dot\",[\"aspectUV\",[6,\"d.vec2f\",[\"c\",[1,\"s\",\"*\",[4,\"-\",[5,\"1\"]]]]]]],[6,\"std.dot\",[\"aspectUV\",[6,\"d.vec2f\",[\"s\",\"c\"]]]]]]],[13,\"gridUV\",[6,[7,[6,\"std.fract\",[[6,[7,\"rotatedUV\",\"mul\"],[\"frequency\"]]]],\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"brightness\",[6,\"std.dot\",[[6,\"d.vec3f\",[[7,\"childColor\",\"x\"],[7,\"childColor\",\"y\"],[7,\"childColor\",\"z\"]]],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"dotSize\",[1,[1,\"brightness\",\"*\",[5,\"0.7\"]],\"+\",[5,\"0.15\"]]],[13,\"dist\",[6,\"std.length\",[\"gridUV\"]]],[13,\"dotPattern\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"dotSize\",\"-\",\"SMOOTHNESS\"],[1,\"dotSize\",\"+\",\"SMOOTHNESS\"],\"dist\"]]]],[10,[6,\"d.vec4f\",[[1,[7,\"childColor\",\"x\"],\"*\",\"dotPattern\"],[1,[7,\"childColor\",\"y\"],\"*\",\"dotPattern\"],[1,[7,\"childColor\",\"z\"],\"*\",\"dotPattern\"],[1,[7,\"childColor\",\"w\"],\"*\",\"dotPattern\"]]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.fract\":()=>ve,\"d.vec3f\":()=>v,\"std.length\":()=>te,\"std.smoothstep\":()=>ce,SMOOTHNESS:()=>Ci,\"d.vec4f\":()=>b}})&&e.f)({})),tN=y.fn([u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(__tsover_add(s,r),Qe);return u(__tsover_add(t.x,__tsover_mul(J(i),o)),__tsover_add(t.y,__tsover_div(__tsover_mul(O(i),o),n)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"misprintAngleDeg\"},{type:\"i\",name:\"plateIndexDeg\"},{type:\"i\",name:\"misprint\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"angleRad\",[1,[1,\"misprintAngleDeg\",\"+\",\"plateIndexDeg\"],\"*\",\"DEG_TO_RAD\"]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,[6,\"std.cos\",[\"angleRad\"]],\"*\",\"misprint\"]],[1,[7,\"uv\",\"y\"],\"+\",[1,[1,[6,\"std.sin\",[\"angleRad\"]],\"*\",\"misprint\"],\"/\",\"aspect\"]]]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),qd=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_sub(1,w(w(t.x,t.y),t.z))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.max\",[[6,\"std.max\",[[7,\"s\",\"x\"],[7,\"s\",\"y\"]]],[7,\"s\",\"z\"]]]]]]]},externals:{\"std.max\":()=>w}})&&e.f)({})),sN=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=qd(t),r=w(__tsover_sub(1,s),1e-4);return __tsover_div(__tsover_sub(__tsover_sub(1,t.x),s),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[13,\"k\",[6,\"halftoneChannelK\",[\"s\"]]],[13,\"invK\",[6,\"std.max\",[[1,[5,\"1\"],\"-\",\"k\"],[5,\"0.0001\"]]]],[10,[1,[1,[1,[5,\"1\"],\"-\",[7,\"s\",\"x\"]],\"-\",\"k\"],\"/\",\"invK\"]]]]},externals:{halftoneChannelK:()=>qd,\"std.max\":()=>w}})&&e.f)({})),rN=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=qd(t),r=w(__tsover_sub(1,s),1e-4);return __tsover_div(__tsover_sub(__tsover_sub(1,t.y),s),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[13,\"k\",[6,\"halftoneChannelK\",[\"s\"]]],[13,\"invK\",[6,\"std.max\",[[1,[5,\"1\"],\"-\",\"k\"],[5,\"0.0001\"]]]],[10,[1,[1,[1,[5,\"1\"],\"-\",[7,\"s\",\"y\"]],\"-\",\"k\"],\"/\",\"invK\"]]]]},externals:{halftoneChannelK:()=>qd,\"std.max\":()=>w}})&&e.f)({})),oN=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=qd(t),r=w(__tsover_sub(1,s),1e-4);return __tsover_div(__tsover_sub(__tsover_sub(1,t.z),s),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[13,\"k\",[6,\"halftoneChannelK\",[\"s\"]]],[13,\"invK\",[6,\"std.max\",[[1,[5,\"1\"],\"-\",\"k\"],[5,\"0.0001\"]]]],[10,[1,[1,[1,[5,\"1\"],\"-\",[7,\"s\",\"z\"]],\"-\",\"k\"],\"/\",\"invK\"]]]]},externals:{halftoneChannelK:()=>qd,\"std.max\":()=>w}})&&e.f)({})),nN=y.fn([u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(t.x,s),t.y),d=__tsover_mul(r,Qe),l=J(d),c=O(d),_=te(ve(u(le(i,u(l,__tsover_mul(c,-1))),le(i,u(c,l))).mul(n)).sub(u(.5,.5))),p=__tsover_sub(__tsover_mul(o,.75),Ci);return __tsover_sub(1,ce(__tsover_sub(p,Ci),__tsover_add(p,Ci),_))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"frequency\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"c\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"s\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rotatedUV\",[6,\"d.vec2f\",[[6,\"std.dot\",[\"aspectUV\",[6,\"d.vec2f\",[\"c\",[1,\"s\",\"*\",[4,\"-\",[5,\"1\"]]]]]]],[6,\"std.dot\",[\"aspectUV\",[6,\"d.vec2f\",[\"s\",\"c\"]]]]]]],[13,\"grid\",[6,[7,[6,\"std.fract\",[[6,[7,\"rotatedUV\",\"mul\"],[\"frequency\"]]]],\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"dist\",[6,\"std.length\",[\"grid\"]]],[13,\"size\",[1,[1,\"intensity\",\"*\",[5,\"0.75\"]],\"-\",\"SMOOTHNESS\"]],[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"size\",\"-\",\"SMOOTHNESS\"],[1,\"size\",\"+\",\"SMOOTHNESS\"],\"dist\"]]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.fract\":()=>ve,\"std.length\":()=>te,SMOOTHNESS:()=>Ci,\"std.smoothstep\":()=>ce}})&&e.f)({})),aN=y.fn([b,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return Z(v(1,1,1),v(t.x,t.y,t.z),v(__tsover_mul(s,t.w)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"inkColor\"},{type:\"i\",name:\"inkMask\"}],body:[0,[[10,[6,\"std.mix\",[[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]],[6,\"d.vec3f\",[[7,\"inkColor\",\"x\"],[7,\"inkColor\",\"y\"],[7,\"inkColor\",\"z\"]]],[6,\"d.vec3f\",[[1,\"inkMask\",\"*\",[7,\"inkColor\",\"w\"]]]]]]]]]},externals:{\"std.mix\":()=>Z,\"d.vec3f\":()=>v}})&&e.f)({})),iN=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return K(u(__tsover_div(__tsover_mul(t.x,s.x),r),__tsover_div(__tsover_mul(t.y,s.y),r)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"gridRes\"},{type:\"i\",name:\"pixelSize\"}],body:[0,[[10,[6,\"std.floor\",[[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"*\",[7,\"gridRes\",\"x\"]],\"/\",\"pixelSize\"],[1,[1,[7,\"uv\",\"y\"],\"*\",[7,\"gridRes\",\"y\"]],\"/\",\"pixelSize\"]]]]]]]]},externals:{\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),dN=y.fn([u,a,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(__tsover_div(__tsover_mul(__tsover_add(t.x,.5),s),r.x),__tsover_div(__tsover_mul(__tsover_add(t.y,.5),s),r.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"},{type:\"i\",name:\"pixelSize\"},{type:\"i\",name:\"gridRes\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[1,[1,[7,\"coord\",\"x\"],\"+\",[5,\"0.5\"]],\"*\",\"pixelSize\"],\"/\",[7,\"gridRes\",\"x\"]],[1,[1,[1,[7,\"coord\",\"y\"],\"+\",[5,\"0.5\"]],\"*\",\"pixelSize\"],\"/\",[7,\"gridRes\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),lN=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(le(v(t.x,t.y,t.z),v(.299,.587,.114)),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"c\"}],body:[0,[[10,[1,[6,\"std.dot\",[[6,\"d.vec3f\",[[7,\"c\",\"x\"],[7,\"c\",\"y\"],[7,\"c\",\"z\"]]],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]],\"*\",[7,\"c\",\"w\"]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),E_=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_sub(__tsover_add(__tsover_mul(s,3),__tsover_mul(t,2)),__tsover_mul(__tsover_mul(t,s),4))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"}],body:[0,[[10,[1,[1,[1,\"b\",\"*\",[5,\"3\"]],\"+\",[1,\"a\",\"*\",[5,\"2\"]]],\"-\",[1,[1,\"a\",\"*\",\"b\"],\"*\",[5,\"4\"]]]]]]},externals:{}})&&e.f)({})),cN=y.fn([u],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=__tsover_sub(t.x,__tsover_mul(8,K(__tsover_div(t.x,8)))),r=__tsover_sub(t.y,__tsover_mul(8,K(__tsover_div(t.y,8)))),o=__tsover_sub(s,__tsover_mul(2,K(__tsover_div(s,2)))),n=__tsover_sub(r,__tsover_mul(2,K(__tsover_div(r,2)))),i=__tsover_sub(s,__tsover_mul(4,K(__tsover_div(s,4)))),d=__tsover_sub(r,__tsover_mul(4,K(__tsover_div(r,4)))),l=K(__tsover_div(i,2)),c=K(__tsover_div(d,2)),_=K(__tsover_div(s,4)),p=K(__tsover_div(r,4)),f=E_(o,n),h=E_(l,c),g=E_(_,p),x=__tsover_div(f,4),T=__tsover_div(__tsover_add(__tsover_mul(f,4),h),16),S=__tsover_div(__tsover_add(__tsover_add(__tsover_mul(f,16),__tsover_mul(h,4)),g),64),A=__tsover_add(__tsover_mul(oe(d),4),oe(i)),E=.75;return E=F(E,.3125,A===1),E=F(E,.375,A===2),E=F(E,.8125,A===3),E=F(E,.25,A===4),E=F(E,a(0),A===5),E=F(E,.0625,A===6),E=F(E,.4375,A===7),E=F(E,.6875,A===8),E=F(E,.1875,A===9),E=F(E,.125,A===10),E=F(E,.5,A===11),E=F(E,.9375,A===12),E=F(E,.625,A===13),E=F(E,.5625,A===14),E=F(E,.875,A===15),b(x,T,S,E)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"}],body:[0,[[13,\"tx\",[1,[7,\"coord\",\"x\"],\"-\",[1,[5,\"8\"],\"*\",[6,\"std.floor\",[[1,[7,\"coord\",\"x\"],\"/\",[5,\"8\"]]]]]]],[13,\"ty\",[1,[7,\"coord\",\"y\"],\"-\",[1,[5,\"8\"],\"*\",[6,\"std.floor\",[[1,[7,\"coord\",\"y\"],\"/\",[5,\"8\"]]]]]]],[13,\"x2\",[1,\"tx\",\"-\",[1,[5,\"2\"],\"*\",[6,\"std.floor\",[[1,\"tx\",\"/\",[5,\"2\"]]]]]]],[13,\"y2\",[1,\"ty\",\"-\",[1,[5,\"2\"],\"*\",[6,\"std.floor\",[[1,\"ty\",\"/\",[5,\"2\"]]]]]]],[13,\"x4\",[1,\"tx\",\"-\",[1,[5,\"4\"],\"*\",[6,\"std.floor\",[[1,\"tx\",\"/\",[5,\"4\"]]]]]]],[13,\"y4\",[1,\"ty\",\"-\",[1,[5,\"4\"],\"*\",[6,\"std.floor\",[[1,\"ty\",\"/\",[5,\"4\"]]]]]]],[13,\"x4h\",[6,\"std.floor\",[[1,\"x4\",\"/\",[5,\"2\"]]]]],[13,\"y4h\",[6,\"std.floor\",[[1,\"y4\",\"/\",[5,\"2\"]]]]],[13,\"x8h\",[6,\"std.floor\",[[1,\"tx\",\"/\",[5,\"4\"]]]]],[13,\"y8h\",[6,\"std.floor\",[[1,\"ty\",\"/\",[5,\"4\"]]]]],[13,\"b00\",[6,\"ditherBayerQuad\",[\"x2\",\"y2\"]]],[13,\"b11\",[6,\"ditherBayerQuad\",[\"x4h\",\"y4h\"]]],[13,\"b22\",[6,\"ditherBayerQuad\",[\"x8h\",\"y8h\"]]],[13,\"bayer2\",[1,\"b00\",\"/\",[5,\"4\"]]],[13,\"bayer4\",[1,[1,[1,\"b00\",\"*\",[5,\"4\"]],\"+\",\"b11\"],\"/\",[5,\"16\"]]],[13,\"bayer8\",[1,[1,[1,[1,\"b00\",\"*\",[5,\"16\"]],\"+\",[1,\"b11\",\"*\",[5,\"4\"]]],\"+\",\"b22\"],\"/\",[5,\"64\"]]],[13,\"idx\",[1,[1,[6,\"d.i32\",[\"y4\"]],\"*\",[5,\"4\"]],\"+\",[6,\"d.i32\",[\"x4\"]]]],[12,\"cd\",[5,\"0.75\"]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.3125\"],[1,\"idx\",\"===\",[5,\"1\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.375\"],[1,\"idx\",\"===\",[5,\"2\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.8125\"],[1,\"idx\",\"===\",[5,\"3\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.25\"],[1,\"idx\",\"===\",[5,\"4\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[6,\"d.f32\",[[5,\"0\"]]],[1,\"idx\",\"===\",[5,\"5\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.0625\"],[1,\"idx\",\"===\",[5,\"6\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.4375\"],[1,\"idx\",\"===\",[5,\"7\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.6875\"],[1,\"idx\",\"===\",[5,\"8\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.1875\"],[1,\"idx\",\"===\",[5,\"9\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.125\"],[1,\"idx\",\"===\",[5,\"10\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.5\"],[1,\"idx\",\"===\",[5,\"11\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.9375\"],[1,\"idx\",\"===\",[5,\"12\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.625\"],[1,\"idx\",\"===\",[5,\"13\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.5625\"],[1,\"idx\",\"===\",[5,\"14\"]]]]],[2,\"cd\",\"=\",[6,\"std.select\",[\"cd\",[5,\"0.875\"],[1,\"idx\",\"===\",[5,\"15\"]]]]],[10,[6,\"d.vec4f\",[\"bayer2\",\"bayer4\",\"bayer8\",\"cd\"]]]]]},externals:{\"std.floor\":()=>K,ditherBayerQuad:()=>E_,\"d.i32\":()=>oe,\"std.select\":()=>F,\"d.f32\":()=>a,\"d.vec4f\":()=>b}})&&e.f)({})),uN=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=t.add(u(.5,.5));return ve(__tsover_mul(52.9829189,ve(__tsover_add(__tsover_mul(s.x,.06711056),__tsover_mul(s.y,.00583715)))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"}],body:[0,[[13,\"c\",[6,[7,\"coord\",\"add\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[10,[6,\"std.fract\",[[1,[5,\"52.9829189\"],\"*\",[6,\"std.fract\",[[1,[1,[7,\"c\",\"x\"],\"*\",[5,\"0.06711056\"]],\"+\",[1,[7,\"c\",\"y\"],\"*\",[5,\"0.00583715\"]]]]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.fract\":()=>ve}})&&e.f)({})),_N=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ms(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"}],body:[0,[[10,[6,\"noise.hash12\",[\"coord\"]]]]]},externals:{\"noise.hash12\":()=>ms}})&&e.f)({})),pN=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return ot(__tsover_add(.5,__tsover_mul(__tsover_sub(t,.5),o)),__tsover_add(s,__tsover_sub(r,.5)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"ditherValue\"},{type:\"i\",name:\"luminance\"},{type:\"i\",name:\"threshold\"},{type:\"i\",name:\"spread\"}],body:[0,[[13,\"adjustedDither\",[1,[5,\"0.5\"],\"+\",[1,[1,\"ditherValue\",\"-\",[5,\"0.5\"]],\"*\",\"spread\"]]],[10,[6,\"std.step\",[\"adjustedDither\",[1,\"luminance\",\"+\",[1,\"threshold\",\"-\",[5,\"0.5\"]]]]]]]]},externals:{\"std.step\":()=>ot}})&&e.f)({})),mN=y.fn([u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return K(t.div(u(8,8))).mul(u(8,8))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"}],body:[0,[[10,[6,[7,[6,\"std.floor\",[[6,[7,\"coord\",\"div\"],[[6,\"d.vec2f\",[[5,\"8\"],[5,\"8\"]]]]]]],\"mul\"],[[6,\"d.vec2f\",[[5,\"8\"],[5,\"8\"]]]]]]]]},externals:{\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})),fN=y.fn([u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_add(__tsover_mul(__tsover_sub(t.y,s.y),8),__tsover_sub(t.x,s.x))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"},{type:\"i\",name:\"blockOrigin\"}],body:[0,[[10,[1,[1,[1,[7,\"coord\",\"y\"],\"-\",[7,\"blockOrigin\",\"y\"]],\"*\",[5,\"8\"]],\"+\",[1,[7,\"coord\",\"x\"],\"-\",[7,\"blockOrigin\",\"x\"]]]]]]},externals:{}})&&e.f)({})),vN=y.fn([u,a,a,a,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return u(__tsover_div(__tsover_mul(__tsover_add(__tsover_add(t.x,s),.5),o),n.x),__tsover_div(__tsover_mul(__tsover_add(__tsover_add(t.y,r),.5),o),n.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"blockOrigin\"},{type:\"i\",name:\"lx\"},{type:\"i\",name:\"ly\"},{type:\"i\",name:\"pixelSize\"},{type:\"i\",name:\"gridRes\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[1,[1,[1,[7,\"blockOrigin\",\"x\"],\"+\",\"lx\"],\"+\",[5,\"0.5\"]],\"*\",\"pixelSize\"],\"/\",[7,\"gridRes\",\"x\"]],[1,[1,[1,[1,[7,\"blockOrigin\",\"y\"],\"+\",\"ly\"],\"+\",[5,\"0.5\"]],\"*\",\"pixelSize\"],\"/\",[7,\"gridRes\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),hN=y.fn([zt(a,64),a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_sub(.5,__tsover_sub(r,.5)),i=zt(a,8)(),d=zt(a,8)(),l=oe(s),c=a(0);for(let _=0;_<8;_++){let p=(_&1)===0;for(let f=0;f<8;f++){let h=F(__tsover_sub(7,f),f,p),g=__tsover_add(__tsover_mul(_,8),h),x=__tsover_add(t[g],i[h]),T=ot(n,x);c=F(c,T,g===l);let S=__tsover_mul(__tsover_sub(x,T),o),A=F(-1,1,p),E=__tsover_add(h,A);if(E>=0&&E<8&&(i[E]=__tsover_add(i[E],__tsover_mul(S,.4375))),_<7){let M=__tsover_sub(h,A),$=__tsover_add(h,A);M>=0&&M<8&&(d[M]=__tsover_add(d[M],__tsover_mul(S,.1875))),d[h]=__tsover_add(d[h],__tsover_mul(S,.3125)),$>=0&&$<8&&(d[$]=__tsover_add(d[$],__tsover_mul(S,.0625)))}}for(let f=0;f<8;f++)i[f]=d[f],d[f]=a(0)}return c}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lum\"},{type:\"i\",name:\"lic\"},{type:\"i\",name:\"threshold\"},{type:\"i\",name:\"spread\"}],body:[0,[[13,\"thr\",[1,[5,\"0.5\"],\"-\",[1,\"threshold\",\"-\",[5,\"0.5\"]]]],[13,\"ecur\",[6,[6,\"d.arrayOf\",[\"d.f32\",[5,\"8\"]]],[]]],[13,\"enext\",[6,[6,\"d.arrayOf\",[\"d.f32\",[5,\"8\"]]],[]]],[13,\"licInt\",[6,\"d.i32\",[\"lic\"]]],[12,\"result\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"y\",[5,\"0\"]],[1,\"y\",\"<\",[5,\"8\"]],[102,\"++\",\"y\"],[0,[[13,\"ltr\",[1,[1,\"y\",\"&\",[5,\"1\"]],\"===\",[5,\"0\"]]],[14,[12,\"xi\",[5,\"0\"]],[1,\"xi\",\"<\",[5,\"8\"]],[102,\"++\",\"xi\"],[0,[[13,\"x\",[6,\"std.select\",[[1,[5,\"7\"],\"-\",\"xi\"],\"xi\",\"ltr\"]]],[13,\"idx\",[1,[1,\"y\",\"*\",[5,\"8\"]],\"+\",\"x\"]],[13,\"val\",[1,[8,\"lum\",\"idx\"],\"+\",[8,\"ecur\",\"x\"]]],[13,\"qv\",[6,\"std.step\",[\"thr\",\"val\"]]],[2,\"result\",\"=\",[6,\"std.select\",[\"result\",\"qv\",[1,\"idx\",\"===\",\"licInt\"]]]],[13,\"e\",[1,[1,\"val\",\"-\",\"qv\"],\"*\",\"spread\"]],[13,\"dir\",[6,\"std.select\",[[4,\"-\",[5,\"1\"]],[5,\"1\"],\"ltr\"]]],[13,\"xr\",[1,\"x\",\"+\",\"dir\"]],[11,[1,\"xr\",\">=\",[5,\"0\"]],[0,[[11,[1,\"xr\",\"<\",[5,\"8\"]],[0,[[2,[8,\"ecur\",\"xr\"],\"=\",[1,[8,\"ecur\",\"xr\"],\"+\",[1,\"e\",\"*\",[5,\"0.4375\"]]]]]]]]]],[11,[1,\"y\",\"<\",[5,\"7\"]],[0,[[13,\"xbl\",[1,\"x\",\"-\",\"dir\"]],[13,\"xbr\",[1,\"x\",\"+\",\"dir\"]],[11,[1,\"xbl\",\">=\",[5,\"0\"]],[0,[[11,[1,\"xbl\",\"<\",[5,\"8\"]],[0,[[2,[8,\"enext\",\"xbl\"],\"=\",[1,[8,\"enext\",\"xbl\"],\"+\",[1,\"e\",\"*\",[5,\"0.1875\"]]]]]]]]]],[2,[8,\"enext\",\"x\"],\"=\",[1,[8,\"enext\",\"x\"],\"+\",[1,\"e\",\"*\",[5,\"0.3125\"]]]],[11,[1,\"xbr\",\">=\",[5,\"0\"]],[0,[[11,[1,\"xbr\",\"<\",[5,\"8\"]],[0,[[2,[8,\"enext\",\"xbr\"],\"=\",[1,[8,\"enext\",\"xbr\"],\"+\",[1,\"e\",\"*\",[5,\"0.0625\"]]]]]]]]]]]]]]]],[14,[12,\"k\",[5,\"0\"]],[1,\"k\",\"<\",[5,\"8\"]],[102,\"++\",\"k\"],[0,[[2,[8,\"ecur\",\"k\"],\"=\",[8,\"enext\",\"k\"]],[2,[8,\"enext\",\"k\"],\"=\",[6,\"d.f32\",[[5,\"0\"]]]]]]]]]],[10,\"result\"]]]},externals:{\"d.arrayOf\":()=>zt,\"d.f32\":()=>a,\"d.i32\":()=>oe,\"std.select\":()=>F,\"std.step\":()=>ot}})&&e.f)({})),yN=y.fn([b,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Z(v(t.x,t.y,t.z),v(s.x,s.y,s.z),v(r)),n=Z(t.w,s.w,r);return b(o.x,o.y,o.z,n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colorA\"},{type:\"i\",name:\"colorB\"},{type:\"i\",name:\"ditherResult\"}],body:[0,[[13,\"rgb\",[6,\"std.mix\",[[6,\"d.vec3f\",[[7,\"colorA\",\"x\"],[7,\"colorA\",\"y\"],[7,\"colorA\",\"z\"]]],[6,\"d.vec3f\",[[7,\"colorB\",\"x\"],[7,\"colorB\",\"y\"],[7,\"colorB\",\"z\"]]],[6,\"d.vec3f\",[\"ditherResult\"]]]]],[13,\"a\",[6,\"std.mix\",[[7,\"colorA\",\"w\"],[7,\"colorB\",\"w\"],\"ditherResult\"]]],[10,[6,\"d.vec4f\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],\"a\"]]]]]},externals:{\"std.mix\":()=>Z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),gN=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=v(t.x,t.y,t.z),o=Z(r.mul(.3),ue(r.mul(1.3),v(1,1,1)),v(s));return b(o.x,o.y,o.z,t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sourceColor\"},{type:\"i\",name:\"ditherResult\"}],body:[0,[[13,\"rgb\",[6,\"d.vec3f\",[[7,\"sourceColor\",\"x\"],[7,\"sourceColor\",\"y\"],[7,\"sourceColor\",\"z\"]]]],[13,\"dark\",[6,[7,\"rgb\",\"mul\"],[[5,\"0.3\"]]]],[13,\"bright\",[6,\"std.min\",[[6,[7,\"rgb\",\"mul\"],[[5,\"1.3\"]]],[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]]]],[13,\"out\",[6,\"std.mix\",[\"dark\",\"bright\",[6,\"d.vec3f\",[\"ditherResult\"]]]]],[10,[6,\"d.vec4f\",[[7,\"out\",\"x\"],[7,\"out\",\"y\"],[7,\"out\",\"z\"],[7,\"sourceColor\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.min\":()=>ue,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({}));function kF(e){return e.map((t,s)=>({stop:t,index:s})).sort((t,s)=>t.stop.position-s.stop.position||t.index-s.index).map(({stop:t})=>t)}function Ay(e,t){let s=new Array(32).fill(0),r=new Array(8).fill(0),o=Array.isArray(e)&&e.length>0?kF(e):[],n=Math.min(o.length,8);for(let i=0;i<n;i++){let d=t(o[i].color);s[i*4]=d[0],s[i*4+1]=d[1],s[i*4+2]=d[2],s[i*4+3]=d[3],r[i]=o[i].position}return{colors:s,positions:r,stopCount:n}}function Ey(e,t,s){let r=new Array(24).fill(0);for(let o=0;o<t;o++){let n=Mm(e[o*4],e[o*4+1],e[o*4+2],s);r[o*3]=n[0],r[o*3+1]=n[1],r[o*3+2]=n[2]}return r}y.fn([v,a],Vo)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return Vo({conv:t,alpha:s})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"conv\"},{type:\"i\",name:\"alpha\"}],body:[0,[[10,[6,\"MixStep\",[[104,{conv:\"conv\",alpha:\"alpha\"}]]]]]]},externals:{MixStep:()=>Vo}})&&e.f)({}));y.fn([Vo,v,a,a,a,a],Vo)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=z(__tsover_div(__tsover_sub(o,n),w(__tsover_sub(i,n),1e-6)),0,1);return ti(t.conv,t.alpha,s,r,d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"running\"},{type:\"i\",name:\"convI\"},{type:\"i\",name:\"alphaI\"},{type:\"i\",name:\"tClamped\"},{type:\"i\",name:\"posA\"},{type:\"i\",name:\"posB\"}],body:[0,[[13,\"seg\",[6,\"std.clamp\",[[1,[1,\"tClamped\",\"-\",\"posA\"],\"/\",[6,\"std.max\",[[1,\"posB\",\"-\",\"posA\"],[5,\"0.000001\"]]]],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"mixPreconvertedInSpace\",[[7,\"running\",\"conv\"],[7,\"running\",\"alpha\"],\"convI\",\"alphaI\",\"seg\"]]]]]},externals:{\"std.clamp\":()=>z,\"std.max\":()=>w,mixPreconvertedInSpace:()=>ti}})&&e.f)({}));y.fn([Vo],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return t.conv}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[10,[7,\"s\",\"conv\"]]]]},externals:{}})&&e.f)({}));y.fn([Vo],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return t.alpha}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s\"}],body:[0,[[10,[7,\"s\",\"alpha\"]]]]},externals:{}})&&e.f)({}));y.fn([v,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t,s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"a\"}],body:[0,[[10,[6,\"d.vec4f\",[\"rgb\",\"a\"]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({}));var Tv=y.fn([a,zt(b,8),zt(b,8/4),zt(v,8),a],Vo)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=z(t,0,1),d=oe(n),l=o[0],c=v(l.x,l.y,l.z),_=s[0].w;for(let p=1;p<d;p++){let f=r[__tsover_sub(p,1)>>2],h=r[p>>2],g=f[__tsover_sub(p,1)&3],x=h[p&3],T=z(__tsover_div(__tsover_sub(i,g),w(__tsover_sub(x,g),1e-6)),0,1),S=ti(c,_,o[p],s[p].w,T);c=v(S.conv.x,S.conv.y,S.conv.z),_=S.alpha}return Vo({conv:c,alpha:_})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"colors\"},{type:\"i\",name:\"positions\"},{type:\"i\",name:\"converted\"},{type:\"i\",name:\"stopCount\"}],body:[0,[[13,\"clampedT\",[6,\"std.clamp\",[\"t\",[5,\"0\"],[5,\"1\"]]]],[13,\"n\",[6,\"d.i32\",[\"stopCount\"]]],[13,\"c0\",[8,\"converted\",[5,\"0\"]]],[12,\"conv\",[6,\"d.vec3f\",[[7,\"c0\",\"x\"],[7,\"c0\",\"y\"],[7,\"c0\",\"z\"]]]],[12,\"alpha\",[7,[8,\"colors\",[5,\"0\"]],\"w\"]],[14,[12,\"i\",[5,\"1\"]],[1,\"i\",\"<\",\"n\"],[102,\"++\",\"i\"],[0,[[13,\"va\",[8,\"positions\",[1,[1,\"i\",\"-\",[5,\"1\"]],\">>\",[5,\"2\"]]]],[13,\"vb\",[8,\"positions\",[1,\"i\",\">>\",[5,\"2\"]]]],[13,\"posA\",[8,\"va\",[1,[1,\"i\",\"-\",[5,\"1\"]],\"&\",[5,\"3\"]]]],[13,\"posB\",[8,\"vb\",[1,\"i\",\"&\",[5,\"3\"]]]],[13,\"seg\",[6,\"std.clamp\",[[1,[1,\"clampedT\",\"-\",\"posA\"],\"/\",[6,\"std.max\",[[1,\"posB\",\"-\",\"posA\"],[5,\"0.000001\"]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"step\",[6,\"mixPreconvertedInSpace\",[\"conv\",\"alpha\",[8,\"converted\",\"i\"],[7,[8,\"colors\",\"i\"],\"w\"],\"seg\"]]],[2,\"conv\",\"=\",[6,\"d.vec3f\",[[7,[7,\"step\",\"conv\"],\"x\"],[7,[7,\"step\",\"conv\"],\"y\"],[7,[7,\"step\",\"conv\"],\"z\"]]]],[2,\"alpha\",\"=\",[7,\"step\",\"alpha\"]]]]],[10,[6,\"MixStep\",[[104,{conv:\"conv\",alpha:\"alpha\"}]]]]]]},externals:{\"std.clamp\":()=>z,\"d.i32\":()=>oe,\"d.vec3f\":()=>v,\"std.max\":()=>w,mixPreconvertedInSpace:()=>ti,MixStep:()=>Vo}})&&e.f)({}));function pT(e,t){switch(t){case 1:return se(Ms,\"sRGBToP3\",[se(Ro,\"oklabToRgb\",[se(Ii,\"oklchToOklab\",[e])])]);case 2:return se(Ms,\"sRGBToP3\",[se(Ro,\"oklabToRgb\",[e])]);case 3:return se(Ms,\"sRGBToP3\",[se(Yi,\"hslToRgb\",[e])]);case 4:return se(Ms,\"sRGBToP3\",[se(wc,\"hsvToRgb\",[e])]);case 5:return se(Ms,\"sRGBToP3\",[se(Tc,\"labToRgb\",[se(Sc,\"lchToLab\",[e])])]);default:return e}}function dl(e,t,s){let r=Vs(se(Tv,\"gradientStopsInSpace\",[e,t.colorsArray,t.positionsArray,t.convertedColorsArray,t.stopCount]),\"stopMix\");return Ss(pT(r.member(\"conv\"),s),r.member(\"alpha\"))}var mT=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Vt(s);return u(__tsover_mul(t.x,r),t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]]]]},externals:{aspectOf:()=>Vt,\"d.vec2f\":()=>u}})&&e.f)({})),xN=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_div(s.x,s.y);return u(__tsover_mul(t.x,n),t.y).mul(Mt(r)).add(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"aspect\",[1,[7,\"viewport\",\"x\"],\"/\",[7,\"viewport\",\"y\"]]],[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[10,[6,[7,[6,[7,\"aspectUV\",\"mul\"],[[6,\"std.exp\",[\"scale\"]]]],\"add\"],[\"seed\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.exp\":()=>Mt}})&&e.f)({})),$F=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Vt(s),n=__tsover_mul(r,Qe),i=J(n),d=O(n),l=__tsover_sub(__tsover_mul(t.x,o),__tsover_mul(o,.5)),c=__tsover_sub(t.y,.5);return u(__tsover_add(__tsover_mul(l,i),__tsover_mul(c,d)),__tsover_add(__tsover_mul(l,-d),__tsover_mul(c,i)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"}],body:[0,[[13,\"aspect\",[6,\"aspectOf\",[\"viewport\"]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"au\",[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",[1,\"aspect\",\"*\",[5,\"0.5\"]]]],[13,\"av\",[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]],[13,\"ru\",[1,[1,\"au\",\"*\",\"cosA\"],\"+\",[1,\"av\",\"*\",\"sinA\"]]],[13,\"rv\",[1,[1,\"au\",\"*\",[4,\"-\",\"sinA\"]],\"+\",[1,\"av\",\"*\",\"cosA\"]]],[10,[6,\"d.vec2f\",[\"ru\",\"rv\"]]]]]},externals:{aspectOf:()=>Vt,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),bN=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_div(te(h3(t,s)),1.414)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"z\"}],body:[0,[[10,[1,[6,\"std.length\",[[6,\"curl22z\",[\"pos\",\"z\"]]]],\"/\",[5,\"1.414\"]]]]]},externals:{\"std.length\":()=>te,curl22z:()=>h3}})&&e.f)({})),j2=Z7($i,{maxOctaves:8,drift:\"goldenAngle\",name:\"fractalOctaveSum\"}),CF=y.fn([u,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";return j2(t,2,s,r,o,u(n,__tsover_mul(n,.7)),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"detail\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"octaveCount\"}],body:[0,[[10,[6,\"fractalOctaveSum\",[\"pos\",[5,\"2\"],\"detail\",\"contrast\",\"animTime\",[6,\"d.vec2f\",[\"seed\",[1,\"seed\",\"*\",[5,\"0.7\"]]]],\"octaveCount\"]]]]]},externals:{fractalOctaveSum:()=>j2,\"d.vec2f\":()=>u}})&&e.f)({})),RF=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return z(__tsover_add(__tsover_mul(__tsover_div(t.x,t.y),.5),.5),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sum\"}],body:[0,[[10,[6,\"std.clamp\",[[1,[1,[1,[7,\"sum\",\"x\"],\"/\",[7,\"sum\",\"y\"]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({}));var K2=eT({distance:\"selectableSquared\",jitter:\"mix\",name:\"worleyNearest2\"}),Z2=Z7(y.fn([u,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=K2(t,s,r,o,n);return I3(d.x,d.y,n,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"oUV\"},{type:\"i\",name:\"animT\"},{type:\"i\",name:\"seedOff\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"distNum\"},{type:\"i\",name:\"modeNum\"}],body:[0,[[13,\"dd\",[6,\"worleyNearest2\",[\"oUV\",\"animT\",\"seedOff\",\"jitter\",\"distNum\"]]],[10,[6,\"cellReduceSelectable\",[[7,\"dd\",\"x\"],[7,\"dd\",\"y\"],\"distNum\",\"modeNum\"]]]]]},externals:{worleyNearest2:()=>K2,cellReduceSelectable:()=>I3}})&&e.f)({})),{maxOctaves:4,drift:\"timeSeed\",name:\"worleyOctaveSum\"}),UF=y.fn([u,a,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";return Z2(t,s,n,i,d,r,v(o,c,_),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"jitter\"},{type:\"i\",name:\"lacunarity\"},{type:\"i\",name:\"persistence\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"octaves\"},{type:\"i\",name:\"distNum\"},{type:\"i\",name:\"modeNum\"}],body:[0,[[10,[6,\"worleyOctaveSum\",[\"pos\",\"scale\",\"lacunarity\",\"persistence\",\"animTime\",\"seed\",[6,\"d.vec3f\",[\"jitter\",\"distNum\",\"modeNum\"]],\"octaves\"]]]]]},externals:{worleyOctaveSum:()=>Z2,\"d.vec3f\":()=>v}})&&e.f)({})),zF=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_mul(__tsover_div(t.x,w(t.y,1e-4)),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sum\"},{type:\"i\",name:\"modeScale\"}],body:[0,[[10,[1,[1,[7,\"sum\",\"x\"],\"/\",[6,\"std.max\",[[7,\"sum\",\"y\"],[5,\"0.0001\"]]]],\"*\",\"modeScale\"]]]]},externals:{\"std.max\":()=>w}})&&e.f)({})),GF=K7({domain:\"unit\",contrastMode:\"multiplicative\",invert:!1}),fT=e=>ND[e]??0,vT=e=>qD[e]??0;function DF(e){return typeof e==\"number\"?e:fT(e)}function LF(e){return typeof e==\"number\"?e:vT(e)}function FF(e,t){let s=1.5;return e===1?s=1:e===2?s=2.5:e===3?s=.6:e===4&&(s=2),t===1?s*=.7:t===2&&(s*=1.4),s}var BF=eT({distance:\"length\",jitter:\"none\",name:\"voronoiNearest2\"}),IF=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_sub(4,__tsover_mul(s,3));return Y3(t.x,t.y,r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dd\"},{type:\"i\",name:\"edgeIntensity\"}],body:[0,[[13,\"gradientPower\",[1,[5,\"4\"],\"-\",[1,\"edgeIntensity\",\"*\",[5,\"3\"]]]],[10,[6,\"cellRatio\",[[7,\"dd\",\"x\"],[7,\"dd\",\"y\"],\"gradientPower\"]]]]]},externals:{cellRatio:()=>Y3}})&&e.f)({})),YF=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(__tsover_mul(s,r),6);return W3(t.x,t.y,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dd\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"scale\"}],body:[0,[[13,\"scaledEdgeSoftness\",[1,[1,\"softness\",\"*\",\"scale\"],\"/\",[5,\"6\"]]],[10,[6,\"cellEdgeMask\",[[7,\"dd\",\"x\"],[7,\"dd\",\"y\"],\"scaledEdgeSoftness\"]]]]]},externals:{cellEdgeMask:()=>W3}})&&e.f)({})),WF=y.fn([v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return Ye(t,v(.85,.85,.85))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"}],body:[0,[[10,[6,\"std.pow\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.85\"],[5,\"0.85\"],[5,\"0.85\"]]]]]]]]},externals:{\"std.pow\":()=>Ye,\"d.vec3f\":()=>v}})&&e.f)({})),cc=8;if(cc!==8)throw new Error(`noisePaints: MAX (${cc}) out of sync with MAX_COLOR_STOPS (8)`);var Q2=y.fn([u,u,u,u,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_div(s.x,w(s.y,1e-6)),d=u(__tsover_mul(r.x,i),__tsover_sub(1,r.y)),l=u(__tsover_mul(o.x,i),__tsover_sub(1,o.y)),c=u(__tsover_mul(t.x,i),t.y),_=u(__tsover_sub(l.x,d.x),__tsover_sub(l.y,d.y)),p=w(te(_),1e-6),f=u(__tsover_div(_.x,p),__tsover_div(_.y,p)),h=u(-f.y,f.x),g=u(__tsover_sub(c.x,d.x),__tsover_sub(c.y,d.y)),x=__tsover_div(le(g,f),p),T=le(g,h),S=n>0,A=z(x,0,1),E=F(a(1),O(__tsover_mul(A,ko)),S),M=__tsover_mul(ce(0,.06,x),__tsover_sub(1,ce(.94,1,x)));return b(x,T,E,F(a(1),M,S))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"start\"},{type:\"i\",name:\"end\"},{type:\"i\",name:\"pinFlag\"}],body:[0,[[13,\"aspectRatio\",[1,[7,\"viewport\",\"x\"],\"/\",[6,\"std.max\",[[7,\"viewport\",\"y\"],[5,\"0.000001\"]]]]],[13,\"startPos\",[6,\"d.vec2f\",[[1,[7,\"start\",\"x\"],\"*\",\"aspectRatio\"],[1,[5,\"1\"],\"-\",[7,\"start\",\"y\"]]]]],[13,\"endPos\",[6,\"d.vec2f\",[[1,[7,\"end\",\"x\"],\"*\",\"aspectRatio\"],[1,[5,\"1\"],\"-\",[7,\"end\",\"y\"]]]]],[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspectRatio\"],[7,\"uv\",\"y\"]]]],[13,\"direction\",[6,\"d.vec2f\",[[1,[7,\"endPos\",\"x\"],\"-\",[7,\"startPos\",\"x\"]],[1,[7,\"endPos\",\"y\"],\"-\",[7,\"startPos\",\"y\"]]]]],[13,\"len\",[6,\"std.max\",[[6,\"std.length\",[\"direction\"]],[5,\"0.000001\"]]]],[13,\"normalizedDir\",[6,\"d.vec2f\",[[1,[7,\"direction\",\"x\"],\"/\",\"len\"],[1,[7,\"direction\",\"y\"],\"/\",\"len\"]]]],[13,\"perpDir\",[6,\"d.vec2f\",[[4,\"-\",[7,\"normalizedDir\",\"y\"]],[7,\"normalizedDir\",\"x\"]]]],[13,\"relativePos\",[6,\"d.vec2f\",[[1,[7,\"aspectUV\",\"x\"],\"-\",[7,\"startPos\",\"x\"]],[1,[7,\"aspectUV\",\"y\"],\"-\",[7,\"startPos\",\"y\"]]]]],[13,\"progress\",[1,[6,\"std.dot\",[\"relativePos\",\"normalizedDir\"]],\"/\",\"len\"]],[13,\"perpDist\",[6,\"std.dot\",[\"relativePos\",\"perpDir\"]]],[13,\"pinOn\",[1,\"pinFlag\",\">\",[5,\"0\"]]],[13,\"clampedProg\",[6,\"std.clamp\",[\"progress\",[5,\"0\"],[5,\"1\"]]]],[13,\"pinch\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"std.sin\",[[1,\"clampedProg\",\"*\",\"PI\"]]],\"pinOn\"]]],[13,\"fade\",[1,[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.06\"],\"progress\"]],\"*\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0.94\"],[5,\"1\"],\"progress\"]]]]],[13,\"edgeFade\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],\"fade\",\"pinOn\"]]],[10,[6,\"d.vec4f\",[\"progress\",\"perpDist\",\"pinch\",\"edgeFade\"]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.dot\":()=>le,\"std.clamp\":()=>z,\"std.select\":()=>F,\"d.f32\":()=>a,\"std.sin\":()=>O,PI:()=>ko,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b}})&&e.f)({})),OF=y.fn([u,u,u,u,b,b,b,zt(b,cc),zt(b,cc/4),zt(v,cc)],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=n.x,f=n.y,h=n.z,g=n.w,x=i.x,T=i.y,S=i.z,A=i.w,E=d.y,M=d.z,$=d.w,L=Q2(t,s,r,o,d.x),B=L.x,D=L.y,G=L.z,I=L.w,X=__tsover_mul(g,.07),H=__tsover_add(__tsover_mul(x,.08),8e-4),ee=w(__tsover_sub(h,1),1),Q=v(0,0,0),de=a(0),Ee=__tsover_mul(__tsover_mul(B,Et),f),he=__tsover_add(__tsover_mul(B,8),__tsover_mul(E,2)),Me=__tsover_add(__tsover_mul(B,S),M),Te=oe(Wa(h));for(let Pe=0;Pe<Te;Pe++){let Ce=a(Pe),ie=__tsover_div(Ce,ee),Ne=__tsover_mul(Ce,.9),ye=__tsover_mul(E,__tsover_add(__tsover_mul(ie,.6),.7)),Ve=__tsover_add(O(__tsover_add(__tsover_add(Ee,ye),Ne)),__tsover_mul(O(__tsover_add(__tsover_sub(__tsover_mul(Ee,2.1),__tsover_mul(ye,.7)),Ne)),.5)),qe=__tsover_mul(__tsover_mul(Ve,p),.06),st=__tsover_mul(__tsover_sub(ie,.5),T),We=__tsover_mul(__tsover_add(st,qe),G),Be=W(__tsover_sub(D,We)),rt=__tsover_sub(1,ce(X,__tsover_add(X,H),Be)),tt=__tsover_add(__tsover_mul(O(__tsover_add(he,Ce)),.15),.85),Ke=__tsover_add(Me,__tsover_mul(ie,A)),Oe=Tv(__tsover_sub(1,W(__tsover_sub(__tsover_mul(ve(__tsover_mul(Ke,.5)),2),1))),l,c,_,$).conv,gt=__tsover_mul(rt,tt);Q=Q.add(Oe.mul(gt)),de=__tsover_add(de,gt)}return b(Q.div(w(de,1e-4)),z(__tsover_mul(de,I),0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"start\"},{type:\"i\",name:\"end\"},{type:\"i\",name:\"packed1\"},{type:\"i\",name:\"packed2\"},{type:\"i\",name:\"packed3\"},{type:\"i\",name:\"colors\"},{type:\"i\",name:\"positions\"},{type:\"i\",name:\"converted\"}],body:[0,[[13,\"amplitude\",[7,\"packed1\",\"x\"]],[13,\"frequency\",[7,\"packed1\",\"y\"]],[13,\"lineCount\",[7,\"packed1\",\"z\"]],[13,\"lineWidth\",[7,\"packed1\",\"w\"]],[13,\"softnessP\",[7,\"packed2\",\"x\"]],[13,\"spread\",[7,\"packed2\",\"y\"]],[13,\"colorScale\",[7,\"packed2\",\"z\"]],[13,\"colorVariance\",[7,\"packed2\",\"w\"]],[13,\"waveT\",[7,\"packed3\",\"y\"]],[13,\"colorT\",[7,\"packed3\",\"z\"]],[13,\"stopCount\",[7,\"packed3\",\"w\"]],[13,\"frame\",[6,\"ribbonPathFrame\",[\"uv\",\"viewport\",\"start\",\"end\",[7,\"packed3\",\"x\"]]]],[13,\"progress\",[7,\"frame\",\"x\"]],[13,\"perpDist\",[7,\"frame\",\"y\"]],[13,\"pinch\",[7,\"frame\",\"z\"]],[13,\"edgeFade\",[7,\"frame\",\"w\"]],[13,\"thickness\",[1,\"lineWidth\",\"*\",[5,\"0.07\"]]],[13,\"softness\",[1,[1,\"softnessP\",\"*\",[5,\"0.08\"]],\"+\",[5,\"0.0008\"]]],[13,\"denom\",[6,\"std.max\",[[1,\"lineCount\",\"-\",[5,\"1\"]],[5,\"1\"]]]],[12,\"accumColor\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]]],[12,\"accumWeight\",[6,\"d.f32\",[[5,\"0\"]]]],[13,\"waveBase\",[1,[1,\"progress\",\"*\",\"TAU\"],\"*\",\"frequency\"]],[13,\"shimmerBase\",[1,[1,\"progress\",\"*\",[5,\"8\"]],\"+\",[1,\"waveT\",\"*\",[5,\"2\"]]]],[13,\"colorBase\",[1,[1,\"progress\",\"*\",\"colorScale\"],\"+\",\"colorT\"]],[13,\"n\",[6,\"d.i32\",[[6,\"std.round\",[\"lineCount\"]]]]],[14,[12,\"idx\",[5,\"0\"]],[1,\"idx\",\"<\",\"n\"],[102,\"++\",\"idx\"],[0,[[13,\"fi\",[6,\"d.f32\",[\"idx\"]]],[13,\"norm\",[1,\"fi\",\"/\",\"denom\"]],[13,\"phase\",[1,\"fi\",\"*\",[5,\"0.9\"]]],[13,\"strandT\",[1,\"waveT\",\"*\",[1,[1,\"norm\",\"*\",[5,\"0.6\"]],\"+\",[5,\"0.7\"]]]],[13,\"wave\",[1,[6,\"std.sin\",[[1,[1,\"waveBase\",\"+\",\"strandT\"],\"+\",\"phase\"]]],\"+\",[1,[6,\"std.sin\",[[1,[1,[1,\"waveBase\",\"*\",[5,\"2.1\"]],\"-\",[1,\"strandT\",\"*\",[5,\"0.7\"]]],\"+\",\"phase\"]]],\"*\",[5,\"0.5\"]]]],[13,\"displacement\",[1,[1,\"wave\",\"*\",\"amplitude\"],\"*\",[5,\"0.06\"]]],[13,\"baseline\",[1,[1,\"norm\",\"-\",[5,\"0.5\"]],\"*\",\"spread\"]],[13,\"centre\",[1,[1,\"baseline\",\"+\",\"displacement\"],\"*\",\"pinch\"]],[13,\"dd\",[6,\"std.abs\",[[1,\"perpDist\",\"-\",\"centre\"]]]],[13,\"line\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"thickness\",[1,\"thickness\",\"+\",\"softness\"],\"dd\"]]]],[13,\"shimmer\",[1,[1,[6,\"std.sin\",[[1,\"shimmerBase\",\"+\",\"fi\"]]],\"*\",[5,\"0.15\"]],\"+\",[5,\"0.85\"]]],[13,\"cc\",[1,\"colorBase\",\"+\",[1,\"norm\",\"*\",\"colorVariance\"]]],[13,\"colorCoord\",[1,[5,\"1\"],\"-\",[6,\"std.abs\",[[1,[1,[6,\"std.fract\",[[1,\"cc\",\"*\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]]],[13,\"stepRes\",[6,\"gradientStopsInSpace\",[\"colorCoord\",\"colors\",\"positions\",\"converted\",\"stopCount\"]]],[13,\"strandColor\",[7,\"stepRes\",\"conv\"]],[13,\"weight\",[1,\"line\",\"*\",\"shimmer\"]],[2,\"accumColor\",\"=\",[6,[7,\"accumColor\",\"add\"],[[6,[7,\"strandColor\",\"mul\"],[\"weight\"]]]]],[2,\"accumWeight\",\"=\",[1,\"accumWeight\",\"+\",\"weight\"]]]]],[13,\"workingColor\",[6,[7,\"accumColor\",\"div\"],[[6,\"std.max\",[\"accumWeight\",[5,\"0.0001\"]]]]]],[13,\"alpha\",[6,\"std.clamp\",[[1,\"accumWeight\",\"*\",\"edgeFade\"],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[\"workingColor\",\"alpha\"]]]]]},externals:{ribbonPathFrame:()=>Q2,\"std.max\":()=>w,\"d.vec3f\":()=>v,\"d.f32\":()=>a,TAU:()=>Et,\"d.i32\":()=>oe,\"std.round\":()=>Wa,\"std.sin\":()=>O,\"std.abs\":()=>W,\"std.smoothstep\":()=>ce,\"std.fract\":()=>ve,gradientStopsInSpace:()=>Tv,\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({})),wN=y.fn([u,a,a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(__tsover_mul(t.x,s),t.y),l=__tsover_mul(r,6),c=d.mul(l).add(o),_=Yd(c).mul(n).mul(.0025),p=t.add(_),f=A3(c,oe(6)),h=z(__tsover_add(1,__tsover_mul(__tsover_sub(f,.7),__tsover_mul(i,1.2))),0,1.5);return v(p.x,p.y,h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"grainScale\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"displacement\"},{type:\"i\",name:\"roughness\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"grainFreq\",[1,\"grainScale\",\"*\",[5,\"6\"]]],[13,\"grainUV\",[6,[7,[6,[7,\"aspectUV\",\"mul\"],[\"grainFreq\"]],\"add\"],[\"seed\"]]],[13,\"disp\",[6,[7,[6,[7,[6,\"curl22\",[\"grainUV\"]],\"mul\"],[\"displacement\"]],\"mul\"],[[5,\"0.0025\"]]]],[13,\"displacedUV\",[6,[7,\"uv\",\"add\"],[\"disp\"]]],[13,\"grain\",[6,\"paper12\",[\"grainUV\",[6,\"d.i32\",[[5,\"6\"]]]]]],[13,\"brightness\",[6,\"std.clamp\",[[1,[5,\"1\"],\"+\",[1,[1,\"grain\",\"-\",[5,\"0.7\"]],\"*\",[1,\"roughness\",\"*\",[5,\"1.2\"]]]],[5,\"0\"],[5,\"1.5\"]]]],[10,[6,\"d.vec3f\",[[7,\"displacedUV\",\"x\"],[7,\"displacedUV\",\"y\"],\"brightness\"]]]]]},externals:{\"d.vec2f\":()=>u,curl22:()=>Yd,paper12:()=>A3,\"d.i32\":()=>oe,\"std.clamp\":()=>z,\"d.vec3f\":()=>v}})&&e.f)({})),wd=1e-5,J2=y.fn([u,u,u],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(t.x,s.x),n=__tsover_sub(t.y,s.y),i=__tsover_sub(r.x,s.x),d=__tsover_sub(r.y,s.y),l=w(te(u(i,d)),a(wd)),c=__tsover_div(__tsover_add(__tsover_mul(o,i),__tsover_mul(n,d)),l),_=w(w(-c,__tsover_sub(c,l)),a(0)),p=z(__tsover_div(c,l),a(0),a(1)),f=te(u(__tsover_sub(o,__tsover_mul(i,p)),__tsover_sub(n,__tsover_mul(d,p))));return v(c,$e(w(__tsover_sub(__tsover_mul(f,f),__tsover_mul(_,_)),a(0))),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"}],body:[0,[[13,\"pax\",[1,[7,\"p\",\"x\"],\"-\",[7,\"a\",\"x\"]]],[13,\"pay\",[1,[7,\"p\",\"y\"],\"-\",[7,\"a\",\"y\"]]],[13,\"bax\",[1,[7,\"b\",\"x\"],\"-\",[7,\"a\",\"x\"]]],[13,\"bay\",[1,[7,\"b\",\"y\"],\"-\",[7,\"a\",\"y\"]]],[13,\"len\",[6,\"std.max\",[[6,\"std.length\",[[6,\"d.vec2f\",[\"bax\",\"bay\"]]]],[6,\"d.f32\",[\"EPS\"]]]]],[13,\"t\",[1,[1,[1,\"pax\",\"*\",\"bax\"],\"+\",[1,\"pay\",\"*\",\"bay\"]],\"/\",\"len\"]],[13,\"overshoot\",[6,\"std.max\",[[6,\"std.max\",[[4,\"-\",\"t\"],[1,\"t\",\"-\",\"len\"]]],[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"h\",[6,\"std.clamp\",[[1,\"t\",\"/\",\"len\"],[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]]]]],[13,\"dSeg\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,\"pax\",\"-\",[1,\"bax\",\"*\",\"h\"]],[1,\"pay\",\"-\",[1,\"bay\",\"*\",\"h\"]]]]]]],[13,\"perp\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[1,\"dSeg\",\"*\",\"dSeg\"],\"-\",[1,\"overshoot\",\"*\",\"overshoot\"]],[6,\"d.f32\",[[5,\"0\"]]]]]]]],[10,[6,\"d.vec3f\",[\"t\",\"perp\",\"len\"]]]]]},externals:{\"std.max\":()=>w,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"d.f32\":()=>a,EPS:()=>wd,\"std.clamp\":()=>z,\"std.sqrt\":()=>$e,\"d.vec3f\":()=>v}})&&e.f)({})),TN=y.fn([u,u,u,u,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=Vt(s),f=J2(P3(t,s),aa(r,p),aa(o,p)),h=f.x,g=f.y,x=f.z,T=__tsover_mul(n,.5),S=__tsover_sub(h,__tsover_mul(x,.5)),A=__tsover_mul(x,.5),E=w(d,a(wd)),M=__tsover_add(E,l),$=w(K(__tsover_add(__tsover_div(__tsover_add(x,l),M),.5)),a(1)),L=__tsover_div(x,w(__tsover_add(__tsover_mul($,E),__tsover_mul(__tsover_sub($,1),l)),a(wd))),B=__tsover_mul(E,L),D=__tsover_mul(M,L),G=z(K(__tsover_div(h,D)),a(0),__tsover_sub($,1)),I=__tsover_sub(h,__tsover_add(__tsover_mul(G,D),__tsover_mul(B,.5))),X=w(__tsover_sub(__tsover_mul(B,.5),T),a(0)),H=__tsover_mul(B,.5),ee=w(__tsover_add(n,l),a(wd)),Q=w(K(__tsover_add(__tsover_div(x,ee),.5)),a(1)),de=__tsover_div(x,Q),Ee=z(K(__tsover_add(__tsover_div(h,de),.5)),a(0),Q),he=__tsover_sub(h,__tsover_mul(Ee,de)),Me=i>=.5,Te=i>=1.5,Pe=F(S,F(I,he,Te),Me),Ce=F(A,F(X,a(0),Te),Me),ie=F(A,F(H,T,Te),Me),Ne=F(c,_,Pe>0),ye=__tsover_sub(te(u(w(__tsover_sub(W(Pe),Ce),a(0)),g)),T),Ve=__tsover_sub(W(Pe),ie),qe=__tsover_sub(g,T),st=F(__tsover_add(te(u(w(Ve,a(0)),w(qe,a(0)))),ue(w(Ve,qe),a(0))),ye,Ne>=.5),We=__tsover_div(1,s.y);return __tsover_sub(1,ce(-We,We,st))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"pointA\"},{type:\"i\",name:\"pointB\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"style\"},{type:\"i\",name:\"dashLength\"},{type:\"i\",name:\"gapLength\"},{type:\"i\",name:\"capStart\"},{type:\"i\",name:\"capEnd\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"p\",[6,\"geom.aspectCorrectedUV\",[\"uv\",\"viewport\"]]],[13,\"a\",[6,\"geom.aspectCentrePosition\",[\"pointA\",\"aspect\"]]],[13,\"b\",[6,\"geom.aspectCentrePosition\",[\"pointB\",\"aspect\"]]],[13,\"seg\",[6,\"segmentArcPerp\",[\"p\",\"a\",\"b\"]]],[13,\"t\",[7,\"seg\",\"x\"]],[13,\"perp\",[7,\"seg\",\"y\"]],[13,\"len\",[7,\"seg\",\"z\"]],[13,\"halfT\",[1,\"thickness\",\"*\",[5,\"0.5\"]]],[13,\"cSolid\",[1,\"t\",\"-\",[1,\"len\",\"*\",[5,\"0.5\"]]]],[13,\"axSolid\",[1,\"len\",\"*\",[5,\"0.5\"]]],[13,\"rawDash\",[6,\"std.max\",[\"dashLength\",[6,\"d.f32\",[\"EPS\"]]]]],[13,\"rawPeriod\",[1,\"rawDash\",\"+\",\"gapLength\"]],[13,\"nDash\",[6,\"std.max\",[[6,\"std.floor\",[[1,[1,[1,\"len\",\"+\",\"gapLength\"],\"/\",\"rawPeriod\"],\"+\",[5,\"0.5\"]]]],[6,\"d.f32\",[[5,\"1\"]]]]]],[13,\"scale\",[1,\"len\",\"/\",[6,\"std.max\",[[1,[1,\"nDash\",\"*\",\"rawDash\"],\"+\",[1,[1,\"nDash\",\"-\",[5,\"1\"]],\"*\",\"gapLength\"]],[6,\"d.f32\",[\"EPS\"]]]]]],[13,\"dashL\",[1,\"rawDash\",\"*\",\"scale\"]],[13,\"period\",[1,\"rawPeriod\",\"*\",\"scale\"]],[13,\"kDash\",[6,\"std.clamp\",[[6,\"std.floor\",[[1,\"t\",\"/\",\"period\"]]],[6,\"d.f32\",[[5,\"0\"]]],[1,\"nDash\",\"-\",[5,\"1\"]]]]],[13,\"cDash\",[1,\"t\",\"-\",[1,[1,\"kDash\",\"*\",\"period\"],\"+\",[1,\"dashL\",\"*\",[5,\"0.5\"]]]]],[13,\"axDashRound\",[6,\"std.max\",[[1,[1,\"dashL\",\"*\",[5,\"0.5\"]],\"-\",\"halfT\"],[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"axDashSquare\",[1,\"dashL\",\"*\",[5,\"0.5\"]]],[13,\"rawDotPeriod\",[6,\"std.max\",[[1,\"thickness\",\"+\",\"gapLength\"],[6,\"d.f32\",[\"EPS\"]]]]],[13,\"nDot\",[6,\"std.max\",[[6,\"std.floor\",[[1,[1,\"len\",\"/\",\"rawDotPeriod\"],\"+\",[5,\"0.5\"]]]],[6,\"d.f32\",[[5,\"1\"]]]]]],[13,\"dotPeriod\",[1,\"len\",\"/\",\"nDot\"]],[13,\"kDot\",[6,\"std.clamp\",[[6,\"std.floor\",[[1,[1,\"t\",\"/\",\"dotPeriod\"],\"+\",[5,\"0.5\"]]]],[6,\"d.f32\",[[5,\"0\"]]],\"nDot\"]]],[13,\"cDot\",[1,\"t\",\"-\",[1,\"kDot\",\"*\",\"dotPeriod\"]]],[13,\"isPattern\",[1,\"style\",\">=\",[5,\"0.5\"]]],[13,\"isDotted\",[1,\"style\",\">=\",[5,\"1.5\"]]],[13,\"c\",[6,\"std.select\",[\"cSolid\",[6,\"std.select\",[\"cDash\",\"cDot\",\"isDotted\"]],\"isPattern\"]]],[13,\"axRound\",[6,\"std.select\",[\"axSolid\",[6,\"std.select\",[\"axDashRound\",[6,\"d.f32\",[[5,\"0\"]]],\"isDotted\"]],\"isPattern\"]]],[13,\"axSquare\",[6,\"std.select\",[\"axSolid\",[6,\"std.select\",[\"axDashSquare\",\"halfT\",\"isDotted\"]],\"isPattern\"]]],[13,\"capHere\",[6,\"std.select\",[\"capStart\",\"capEnd\",[1,\"c\",\">\",[5,\"0\"]]]]],[13,\"sdRound\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[[1,[6,\"std.abs\",[\"c\"]],\"-\",\"axRound\"],[6,\"d.f32\",[[5,\"0\"]]]]],\"perp\"]]]],\"-\",\"halfT\"]],[13,\"qx\",[1,[6,\"std.abs\",[\"c\"]],\"-\",\"axSquare\"]],[13,\"qy\",[1,\"perp\",\"-\",\"halfT\"]],[13,\"sdSquare\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"qx\",[6,\"d.f32\",[[5,\"0\"]]]]],[6,\"std.max\",[\"qy\",[6,\"d.f32\",[[5,\"0\"]]]]]]]]],\"+\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",\"qy\"]],[6,\"d.f32\",[[5,\"0\"]]]]]]],[13,\"sd\",[6,\"std.select\",[\"sdSquare\",\"sdRound\",[1,\"capHere\",\">=\",[5,\"0.5\"]]]]],[13,\"feather\",[1,[5,\"1\"],\"/\",[7,\"viewport\",\"y\"]]],[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[4,\"-\",\"feather\"],\"feather\",\"sd\"]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"geom.aspectCorrectedUV\":()=>P3,\"geom.aspectCentrePosition\":()=>aa,segmentArcPerp:()=>J2,\"std.max\":()=>w,\"d.f32\":()=>a,EPS:()=>wd,\"std.floor\":()=>K,\"std.clamp\":()=>z,\"std.select\":()=>F,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.smoothstep\":()=>ce}})&&e.f)({})),VF=y.fn([u,u,a,u,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c)=>{\"use gpu\";let _=Qa(t,o,s),p=__tsover_mul(r,Qe),f=ln(_,J(p),O(p)),h=__tsover_add(__tsover_mul(__tsover_mul(f.x,n),Et),c),g=__tsover_mul(O(h),i),x=W(__tsover_sub(f.y,g)),T=__tsover_mul(d,.5),S=__tsover_mul(l,.5);return __tsover_sub(1,ce(__tsover_sub(T,S),__tsover_add(T,S),x))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"position\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"amplitude\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"centered\",[6,\"geom.aspectCenteredDelta\",[\"uv\",\"position\",\"viewport\"]]],[13,\"angleRad\",[1,\"angle\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosAngle\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinAngle\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rotated\",[6,\"geom.rotate2\",[\"centered\",\"cosAngle\",\"sinAngle\"]]],[13,\"waveInput\",[1,[1,[1,[7,\"rotated\",\"x\"],\"*\",\"frequency\"],\"*\",\"TAU\"],\"+\",\"animTime\"]],[13,\"sineWave\",[1,[6,\"std.sin\",[\"waveInput\"]],\"*\",\"amplitude\"]],[13,\"distanceFromWave\",[6,\"std.abs\",[[1,[7,\"rotated\",\"y\"],\"-\",\"sineWave\"]]]],[13,\"halfThickness\",[1,\"thickness\",\"*\",[5,\"0.5\"]]],[13,\"halfSoftness\",[1,\"softness\",\"*\",[5,\"0.5\"]]],[10,[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"halfThickness\",\"-\",\"halfSoftness\"],[1,\"halfThickness\",\"+\",\"halfSoftness\"],\"distanceFromWave\"]]]]]]},externals:{\"geom.aspectCenteredDelta\":()=>Qa,DEG_TO_RAD:()=>Qe,\"std.cos\":()=>J,\"std.sin\":()=>O,\"geom.rotate2\":()=>ln,TAU:()=>Et,\"std.abs\":()=>W,\"std.smoothstep\":()=>ce}})&&e.f)({})),e5=y.fn([a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return v(__tsover_add(__tsover_mul(J(__tsover_mul(Et,t)),.5),.5),__tsover_add(__tsover_mul(J(__tsover_mul(Et,__tsover_sub(t,.333))),.5),.5),__tsover_add(__tsover_mul(J(__tsover_mul(Et,__tsover_sub(t,.666))),.5),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[6,\"d.vec3f\",[[1,[1,[6,\"std.cos\",[[1,\"TAU_FULL\",\"*\",\"t\"]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[1,[1,[6,\"std.cos\",[[1,\"TAU_FULL\",\"*\",[1,\"t\",\"-\",[5,\"0.333\"]]]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[1,[1,[6,\"std.cos\",[[1,\"TAU_FULL\",\"*\",[1,\"t\",\"-\",[5,\"0.666\"]]]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.cos\":()=>J,TAU_FULL:()=>Et}})&&e.f)({})),yf=Ct({aspect:a,lightPos:u,flareAxis:u,masterFade:a,lightDist:a,lightAngle:a}).$name(\"FlareFrame\"),NF=y.fn([u,u,a,u,a,a],yf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Vt(s),l=u(o.x,__tsover_sub(1,o.y)),c=u(__tsover_sub(.5,l.x),__tsover_sub(.5,l.y)),_=__tsover_add(__tsover_add(__tsover_add(__tsover_mul(O(__tsover_mul(r,3.7)),.04),__tsover_mul(O(__tsover_mul(r,7.3)),.03)),__tsover_mul(O(__tsover_mul(r,13.1)),.02)),.97),p=w(__tsover_mul(W(__tsover_sub(l.x,.5)),2),__tsover_mul(W(__tsover_sub(l.y,.5)),2)),f=__tsover_sub(1,__tsover_mul(i,.5)),h=Z(1,__tsover_sub(1,ce(f,1,p)),i),g=__tsover_mul(__tsover_mul(n,h),_),x=u(__tsover_mul(__tsover_sub(t.x,l.x),d),__tsover_sub(t.y,l.y));return yf({aspect:d,lightPos:l,flareAxis:c,masterFade:g,lightDist:te(x),lightAngle:bt(x.y,x.x)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"lightPosRaw\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"edgeFade\"}],body:[0,[[13,\"aspect\",[6,\"geom.aspectOf\",[\"viewport\"]]],[13,\"lightPos\",[6,\"d.vec2f\",[[7,\"lightPosRaw\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"lightPosRaw\",\"y\"]]]]],[13,\"flareAxis\",[6,\"d.vec2f\",[[1,[5,\"0.5\"],\"-\",[7,\"lightPos\",\"x\"]],[1,[5,\"0.5\"],\"-\",[7,\"lightPos\",\"y\"]]]]],[13,\"shimmer\",[1,[1,[1,[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"3.7\"]]]],\"*\",[5,\"0.04\"]],\"+\",[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"7.3\"]]]],\"*\",[5,\"0.03\"]]],\"+\",[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"13.1\"]]]],\"*\",[5,\"0.02\"]]],\"+\",[5,\"0.97\"]]],[13,\"edgeDist\",[6,\"std.max\",[[1,[6,\"std.abs\",[[1,[7,\"lightPos\",\"x\"],\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]],[1,[6,\"std.abs\",[[1,[7,\"lightPos\",\"y\"],\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]]]],[13,\"fadeStart\",[1,[5,\"1\"],\"-\",[1,\"edgeFade\",\"*\",[5,\"0.5\"]]]],[13,\"edgeFadeV\",[6,\"std.mix\",[[5,\"1\"],[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"fadeStart\",[5,\"1\"],\"edgeDist\"]]],\"edgeFade\"]]],[13,\"masterFade\",[1,[1,\"intensity\",\"*\",\"edgeFadeV\"],\"*\",\"shimmer\"]],[13,\"toLightAR\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"lightPos\",\"x\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[7,\"lightPos\",\"y\"]]]]],[13,\"lightDist\",[6,\"std.length\",[\"toLightAR\"]]],[13,\"lightAngle\",[6,\"std.atan2\",[[7,\"toLightAR\",\"y\"],[7,\"toLightAR\",\"x\"]]]],[10,[6,\"FlareFrame\",[[104,{aspect:\"aspect\",lightPos:\"lightPos\",flareAxis:\"flareAxis\",masterFade:\"masterFade\",lightDist:\"lightDist\",lightAngle:\"lightAngle\"}]]]]]]},externals:{\"geom.aspectOf\":()=>Vt,\"d.vec2f\":()=>u,\"std.sin\":()=>O,\"std.max\":()=>w,\"std.abs\":()=>W,\"std.mix\":()=>Z,\"std.smoothstep\":()=>ce,\"std.length\":()=>te,\"std.atan2\":()=>bt,FlareFrame:()=>yf}})&&e.f)({})),qF=y.fn([u,a,u,u,a,a,a,a,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=c.x,f=c.y,h=c.z,g=c.w,x=_.x,T=_.y,S=_.z,A=_.w,E=r.add(o.mul(__tsover_mul(__tsover_mul(p,i),2))),M=te(u(__tsover_mul(__tsover_sub(t.x,E.x),s),__tsover_sub(t.y,E.y))),$=f,L=__tsover_sub(1,ce(__tsover_mul($,.12),$,M)),B=__tsover_sub(1,ce(__tsover_mul($,.05),__tsover_mul($,.45),M)),D=__tsover_mul(L,__tsover_sub(1,__tsover_mul(B,g))),G=__tsover_add(__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(n,4.3),A)),.08),__tsover_mul(O(__tsover_add(__tsover_mul(n,9.1),__tsover_mul(A,1.7))),.05)),.95),I=bp(M,__tsover_mul($,.78),__tsover_mul(__tsover_mul($,d),.14),__tsover_mul($,.1)),X=I.x,H=I.y,ee=I.z,Q=__tsover_mul(__tsover_mul(h,l),G);return v(__tsover_mul(__tsover_add(__tsover_mul(D,x),__tsover_mul(X,d)),Q),__tsover_mul(__tsover_add(__tsover_mul(D,T),__tsover_mul(H,d)),Q),__tsover_mul(__tsover_add(__tsover_mul(D,S),__tsover_mul(ee,d)),Q))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"lightPos\"},{type:\"i\",name:\"flareAxis\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"ghostSpread\"},{type:\"i\",name:\"ghostChroma\"},{type:\"i\",name:\"ghostInt\"},{type:\"i\",name:\"disc\"},{type:\"i\",name:\"tint\"}],body:[0,[[13,\"offset\",[7,\"disc\",\"x\"]],[13,\"size\",[7,\"disc\",\"y\"]],[13,\"bright\",[7,\"disc\",\"z\"]],[13,\"hollow\",[7,\"disc\",\"w\"]],[13,\"r\",[7,\"tint\",\"x\"]],[13,\"g\",[7,\"tint\",\"y\"]],[13,\"b\",[7,\"tint\",\"z\"]],[13,\"gPhase\",[7,\"tint\",\"w\"]],[13,\"ghostPos\",[6,[7,\"lightPos\",\"add\"],[[6,[7,\"flareAxis\",\"mul\"],[[1,[1,\"offset\",\"*\",\"ghostSpread\"],\"*\",[5,\"2\"]]]]]]],[13,\"toGhost\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"ghostPos\",\"x\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[7,\"ghostPos\",\"y\"]]]]],[13,\"dist\",[6,\"std.length\",[\"toGhost\"]]],[13,\"sz\",\"size\"],[13,\"discShape\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"sz\",\"*\",[5,\"0.12\"]],\"sz\",\"dist\"]]]],[13,\"innerFade\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"sz\",\"*\",[5,\"0.05\"]],[1,\"sz\",\"*\",[5,\"0.45\"]],\"dist\"]]]],[13,\"shape\",[1,\"discShape\",\"*\",[1,[5,\"1\"],\"-\",[1,\"innerFade\",\"*\",\"hollow\"]]]],[13,\"gShimmer\",[1,[1,[1,[6,\"std.sin\",[[1,[1,\"t\",\"*\",[5,\"4.3\"]],\"+\",\"gPhase\"]]],\"*\",[5,\"0.08\"]],\"+\",[1,[6,\"std.sin\",[[1,[1,\"t\",\"*\",[5,\"9.1\"]],\"+\",[1,\"gPhase\",\"*\",[5,\"1.7\"]]]]],\"*\",[5,\"0.05\"]]],\"+\",[5,\"0.95\"]]],[13,\"ringCenter\",[1,\"sz\",\"*\",[5,\"0.78\"]]],[13,\"chromaSpread\",[1,[1,\"sz\",\"*\",\"ghostChroma\"],\"*\",[5,\"0.14\"]]],[13,\"ringWidth\",[1,\"sz\",\"*\",[5,\"0.1\"]]],[13,\"ring\",[6,\"lightfields.chromaticRingBand\",[\"dist\",\"ringCenter\",\"chromaSpread\",\"ringWidth\"]]],[13,\"rRing\",[7,\"ring\",\"x\"]],[13,\"gRing\",[7,\"ring\",\"y\"]],[13,\"bRing\",[7,\"ring\",\"z\"]],[13,\"brightness\",[1,[1,\"bright\",\"*\",\"ghostInt\"],\"*\",\"gShimmer\"]],[10,[6,\"d.vec3f\",[[1,[1,[1,\"shape\",\"*\",\"r\"],\"+\",[1,\"rRing\",\"*\",\"ghostChroma\"]],\"*\",\"brightness\"],[1,[1,[1,\"shape\",\"*\",\"g\"],\"+\",[1,\"gRing\",\"*\",\"ghostChroma\"]],\"*\",\"brightness\"],[1,[1,[1,\"shape\",\"*\",\"b\"],\"+\",[1,\"bRing\",\"*\",\"ghostChroma\"]],\"*\",\"brightness\"]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.smoothstep\":()=>ce,\"std.sin\":()=>O,\"lightfields.chromaticRingBand\":()=>bp,\"d.vec3f\":()=>v}})&&e.f)({})),XF=y.fn([u,a,u,a,a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=u(__tsover_sub(1,r.x),__tsover_sub(1,r.y)),_=u(__tsover_mul(__tsover_sub(t.x,c.x),s),__tsover_sub(t.y,c.y)),p=bp(te(_),i,__tsover_mul(__tsover_mul(i,d),.06),__tsover_add(__tsover_mul(l,.12),.005)),f=bt(_.y,_.x),h=__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(f,3),__tsover_mul(o,.5))),.12),.88);return p.mul(n).mul(h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"lightPos\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"haloInt\"},{type:\"i\",name:\"haloRad\"},{type:\"i\",name:\"haloChroma\"},{type:\"i\",name:\"haloSoft\"}],body:[0,[[13,\"antiLight\",[6,\"d.vec2f\",[[1,[5,\"1\"],\"-\",[7,\"lightPos\",\"x\"]],[1,[5,\"1\"],\"-\",[7,\"lightPos\",\"y\"]]]]],[13,\"toAntiLight\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"antiLight\",\"x\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[7,\"antiLight\",\"y\"]]]]],[13,\"antiLightDist\",[6,\"std.length\",[\"toAntiLight\"]]],[13,\"haloChromaSpread\",[1,[1,\"haloRad\",\"*\",\"haloChroma\"],\"*\",[5,\"0.06\"]]],[13,\"haloWidth\",[1,[1,\"haloSoft\",\"*\",[5,\"0.12\"]],\"+\",[5,\"0.005\"]]],[13,\"halo\",[6,\"lightfields.chromaticRingBand\",[\"antiLightDist\",\"haloRad\",\"haloChromaSpread\",\"haloWidth\"]]],[13,\"haloAngle\",[6,\"std.atan2\",[[7,\"toAntiLight\",\"y\"],[7,\"toAntiLight\",\"x\"]]]],[13,\"haloAngVar\",[1,[1,[6,\"std.sin\",[[1,[1,\"haloAngle\",\"*\",[5,\"3\"]],\"+\",[1,\"t\",\"*\",[5,\"0.5\"]]]]],\"*\",[5,\"0.12\"]],\"+\",[5,\"0.88\"]]],[10,[6,[7,[6,[7,\"halo\",\"mul\"],[\"haloInt\"]],\"mul\"],[\"haloAngVar\"]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"lightfields.chromaticRingBand\":()=>bp,\"std.atan2\":()=>bt,\"std.sin\":()=>O}})&&e.f)({})),HF=y.fn([a,u,a,a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=bt(s.y,__tsover_mul(s.x,r)),c=__tsover_add(__tsover_mul(l,.5),__tsover_mul(o,.06)),_=__tsover_add(t,c),p=tf(_,__tsover_div(i,2),3.5),f=__tsover_mul(tf(__tsover_add(_,.25),__tsover_div(i,2),7),.4),h=__tsover_div(1,__tsover_add(1,__tsover_mul(__tsover_mul(n,n),60))),g=e5(__tsover_add(__tsover_div(_,Et),.5));return Z(v(1,.97,.92),g,.12).mul(__tsover_mul(__tsover_mul(__tsover_add(p,f),h),d))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lightAngle\"},{type:\"i\",name:\"flareAxis\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"t\"},{type:\"i\",name:\"lightDist\"},{type:\"i\",name:\"starburstPts\"},{type:\"i\",name:\"starburstInt\"}],body:[0,[[13,\"axisAng\",[6,\"std.atan2\",[[7,\"flareAxis\",\"y\"],[1,[7,\"flareAxis\",\"x\"],\"*\",\"aspect\"]]]],[13,\"rotation\",[1,[1,\"axisAng\",\"*\",[5,\"0.5\"]],\"+\",[1,\"t\",\"*\",[5,\"0.06\"]]]],[13,\"spikeAngle\",[1,\"lightAngle\",\"+\",\"rotation\"]],[13,\"primarySpikes\",[6,\"lightfields.angularCosineSpikes\",[\"spikeAngle\",[1,\"starburstPts\",\"/\",[5,\"2\"]],[5,\"3.5\"]]]],[13,\"secondarySpikes\",[1,[6,\"lightfields.angularCosineSpikes\",[[1,\"spikeAngle\",\"+\",[5,\"0.25\"]],[1,\"starburstPts\",\"/\",[5,\"2\"]],[5,\"7\"]]],\"*\",[5,\"0.4\"]]],[13,\"radialFall\",[1,[5,\"1\"],\"/\",[1,[5,\"1\"],\"+\",[1,[1,\"lightDist\",\"*\",\"lightDist\"],\"*\",[5,\"60\"]]]]],[13,\"starSpectral\",[6,\"lensFlareSpectral\",[[1,[1,\"spikeAngle\",\"/\",\"TAU_FULL\"],\"+\",[5,\"0.5\"]]]]],[13,\"starTint\",[6,\"std.mix\",[[6,\"d.vec3f\",[[5,\"1\"],[5,\"0.97\"],[5,\"0.92\"]]],\"starSpectral\",[5,\"0.12\"]]]],[10,[6,[7,\"starTint\",\"mul\"],[[1,[1,[1,\"primarySpikes\",\"+\",\"secondarySpikes\"],\"*\",\"radialFall\"],\"*\",\"starburstInt\"]]]]]]},externals:{\"std.atan2\":()=>bt,\"lightfields.angularCosineSpikes\":()=>tf,lensFlareSpectral:()=>e5,TAU_FULL:()=>Et,\"std.mix\":()=>Z,\"d.vec3f\":()=>v}})&&e.f)({})),jF=y.fn([u,u,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=W(__tsover_sub(t.y,s.y)),i=W(__tsover_sub(t.x,s.x)),d=Mt(__tsover_mul(__tsover_mul(-800,n),n)),l=__tsover_add(__tsover_mul(__tsover_mul(r,r),.25),.001),c=Mt(__tsover_div(__tsover_mul(__tsover_mul(-1,i),i),__tsover_mul(l,.7))),_=Mt(__tsover_div(__tsover_mul(__tsover_mul(-1,i),i),l)),p=Mt(__tsover_div(__tsover_mul(__tsover_mul(-1,i),i),__tsover_mul(l,1.4)));return v(__tsover_mul(__tsover_mul(d,c),.5),__tsover_mul(__tsover_mul(d,_),.65),__tsover_mul(__tsover_mul(d,p),.9)).mul(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"lightPos\"},{type:\"i\",name:\"streakLen\"},{type:\"i\",name:\"streakInt\"}],body:[0,[[13,\"dy\",[6,\"std.abs\",[[1,[7,\"uv\",\"y\"],\"-\",[7,\"lightPos\",\"y\"]]]]],[13,\"dx\",[6,\"std.abs\",[[1,[7,\"uv\",\"x\"],\"-\",[7,\"lightPos\",\"x\"]]]]],[13,\"vertFall\",[6,\"std.exp\",[[1,[1,[4,\"-\",[5,\"800\"]],\"*\",\"dy\"],\"*\",\"dy\"]]]],[13,\"lenSq\",[1,[1,[1,\"streakLen\",\"*\",\"streakLen\"],\"*\",[5,\"0.25\"]],\"+\",[5,\"0.001\"]]],[13,\"rStreak\",[6,\"std.exp\",[[1,[1,[1,[4,\"-\",[5,\"1\"]],\"*\",\"dx\"],\"*\",\"dx\"],\"/\",[1,\"lenSq\",\"*\",[5,\"0.7\"]]]]]],[13,\"gStreak\",[6,\"std.exp\",[[1,[1,[1,[4,\"-\",[5,\"1\"]],\"*\",\"dx\"],\"*\",\"dx\"],\"/\",\"lenSq\"]]]],[13,\"bStreak\",[6,\"std.exp\",[[1,[1,[1,[4,\"-\",[5,\"1\"]],\"*\",\"dx\"],\"*\",\"dx\"],\"/\",[1,\"lenSq\",\"*\",[5,\"1.4\"]]]]]],[10,[6,[7,[6,\"d.vec3f\",[[1,[1,\"vertFall\",\"*\",\"rStreak\"],\"*\",[5,\"0.5\"]],[1,[1,\"vertFall\",\"*\",\"gStreak\"],\"*\",[5,\"0.65\"]],[1,[1,\"vertFall\",\"*\",\"bStreak\"],\"*\",[5,\"0.9\"]]]],\"mul\"],[\"streakInt\"]]]]]},externals:{\"std.abs\":()=>W,\"std.exp\":()=>Mt,\"d.vec3f\":()=>v}})&&e.f)({})),KF=y.fn([a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=O3(t,__tsover_div(1,__tsover_add(__tsover_mul(s,s),.01)));return v(1,.98,.95).mul(__tsover_mul(o,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lightDist\"},{type:\"i\",name:\"glareSz\"},{type:\"i\",name:\"glareInt\"}],body:[0,[[13,\"glareSharpness\",[1,[5,\"1\"],\"/\",[1,[1,\"glareSz\",\"*\",\"glareSz\"],\"+\",[5,\"0.01\"]]]],[13,\"glareFalloff\",[6,\"lightfields.radialGaussianFalloff\",[\"lightDist\",\"glareSharpness\"]]],[10,[6,[7,[6,\"d.vec3f\",[[5,\"1\"],[5,\"0.98\"],[5,\"0.95\"]]],\"mul\"],[[1,\"glareFalloff\",\"*\",\"glareInt\"]]]]]]},externals:{\"lightfields.radialGaussianFalloff\":()=>O3,\"d.vec3f\":()=>v}})&&e.f)({})),ZF=y.fn([a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Mt(__tsover_mul(__tsover_mul(-500,t),t)),o=__tsover_sub(1,ce(0,.025,t));return v(1,.98,.96).mul(__tsover_mul(__tsover_add(r,__tsover_mul(o,1.5)),s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lightDist\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"coreSoft\",[6,\"std.exp\",[[1,[1,[4,\"-\",[5,\"500\"]],\"*\",\"lightDist\"],\"*\",\"lightDist\"]]]],[13,\"coreSharp\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.025\"],\"lightDist\"]]]],[10,[6,[7,[6,\"d.vec3f\",[[5,\"1\"],[5,\"0.98\"],[5,\"0.96\"]]],\"mul\"],[[1,[1,\"coreSoft\",\"+\",[1,\"coreSharp\",\"*\",[5,\"1.5\"]]],\"*\",\"intensity\"]]]]]]},externals:{\"std.exp\":()=>Mt,\"std.smoothstep\":()=>ce,\"d.vec3f\":()=>v}})&&e.f)({})),QF=y.fn([v,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t.mul(s);return b(r,z(__tsover_mul(cp(r),2),0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"flareTotal\"},{type:\"i\",name:\"masterFade\"}],body:[0,[[13,\"finalColor\",[6,[7,\"flareTotal\",\"mul\"],[\"masterFade\"]]],[13,\"flareAlpha\",[6,\"std.clamp\",[[1,[6,\"tone.luma601Dot\",[\"finalColor\"]],\"*\",[5,\"2\"]],[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[\"finalColor\",\"flareAlpha\"]]]]]},externals:{\"std.clamp\":()=>z,\"tone.luma601Dot\":()=>cp,\"d.vec4f\":()=>b}})&&e.f)({})),SN=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(o,.03),i=u(uo(t.mul(5).add(u(n,n))),uo(t.mul(5).add(u(31.4,31.4)).add(u(n,n)))).sub(u(.5,.5)),d=u(__tsover_div(1,s.x),__tsover_div(1,s.y));return t.add(i.mul(r).mul(d).mul(8))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"bleed\"},{type:\"i\",name:\"time\"}],body:[0,[[13,\"t\",[1,\"time\",\"*\",[5,\"0.03\"]]],[13,\"wob\",[6,[7,[6,\"d.vec2f\",[[6,\"noise.value12\",[[6,[7,[6,[7,\"uv\",\"mul\"],[[5,\"5\"]]],\"add\"],[[6,\"d.vec2f\",[\"t\",\"t\"]]]]]],[6,\"noise.value12\",[[6,[7,[6,[7,[6,[7,\"uv\",\"mul\"],[[5,\"5\"]]],\"add\"],[[6,\"d.vec2f\",[[5,\"31.4\"],[5,\"31.4\"]]]]],\"add\"],[[6,\"d.vec2f\",[\"t\",\"t\"]]]]]]]],\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"texel\",[6,\"d.vec2f\",[[1,[5,\"1\"],\"/\",[7,\"viewport\",\"x\"]],[1,[5,\"1\"],\"/\",[7,\"viewport\",\"y\"]]]]],[10,[6,[7,\"uv\",\"add\"],[[6,[7,[6,[7,[6,[7,\"wob\",\"mul\"],[\"bleed\"]],\"mul\"],[\"texel\"]],\"mul\"],[[5,\"8\"]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"noise.value12\":()=>uo}})&&e.f)({})),AN=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return u(__tsover_add(t.x,__tsover_div(r,s.x)),__tsover_add(t.y,__tsover_div(o,s.y)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uvBase\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"uvBase\",\"x\"],\"+\",[1,\"ox\",\"/\",[7,\"viewport\",\"x\"]]],[1,[7,\"uvBase\",\"y\"],\"+\",[1,\"oy\",\"/\",[7,\"viewport\",\"y\"]]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),EN=y.fn([u,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return uo(t.mul(s).mul(.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"}],body:[0,[[10,[6,\"noise.value12\",[[6,[7,[6,[7,\"uv\",\"mul\"],[\"viewport\"]],\"mul\"],[[5,\"0.5\"]]]]]]]]},externals:{\"noise.value12\":()=>uo}})&&e.f)({})),PN=y.fn([b,b,b,b,v,v,v,v,a,b,b,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f,h,g)=>{\"use gpu\";let x=t.mul(c),T=s.mul(c),S=r.mul(c),A=o.mul(c),E=v(x.x,x.y,x.z),M=v(T.x,T.y,T.z),$=v(S.x,S.y,S.z),L=v(A.x,A.y,A.z),B=n.mul(c).sub(E.mul(E)),D=i.mul(c).sub(M.mul(M)),G=d.mul(c).sub($.mul($)),I=l.mul(c).sub(L.mul(L)),X=__tsover_add(__tsover_add(B.x,B.y),B.z),H=__tsover_add(__tsover_add(D.x,D.y),D.z),ee=__tsover_add(__tsover_add(G.x,G.y),G.z),Q=__tsover_add(__tsover_add(I.x,I.y),I.z),de=b(x.x,x.y,x.z,x.w),Ee=X;de=F(de,T,H<Ee),Ee=ue(Ee,H),de=F(de,S,ee<Ee),Ee=ue(Ee,ee),de=F(de,A,Q<Ee),Ee=ue(Ee,Q);let he=Hn(de),Me=v(he.x,he.y,he.z),Te=Z(1,g,f),Pe=v(p.x,p.y,p.z);return Me=Z(Me.mul(Te),Me.mul(Pe),v(__tsover_mul(f,.4))),Z(v(_.x,_.y,_.z),Me,v(h))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sum0\"},{type:\"i\",name:\"sum1\"},{type:\"i\",name:\"sum2\"},{type:\"i\",name:\"sum3\"},{type:\"i\",name:\"sq0\"},{type:\"i\",name:\"sq1\"},{type:\"i\",name:\"sq2\"},{type:\"i\",name:\"sq3\"},{type:\"i\",name:\"invN\"},{type:\"i\",name:\"originalBleed\"},{type:\"i\",name:\"paperColor\"},{type:\"i\",name:\"paper\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"grain\"}],body:[0,[[13,\"mean0\",[6,[7,\"sum0\",\"mul\"],[\"invN\"]]],[13,\"mean1\",[6,[7,\"sum1\",\"mul\"],[\"invN\"]]],[13,\"mean2\",[6,[7,\"sum2\",\"mul\"],[\"invN\"]]],[13,\"mean3\",[6,[7,\"sum3\",\"mul\"],[\"invN\"]]],[13,\"rgb0\",[6,\"d.vec3f\",[[7,\"mean0\",\"x\"],[7,\"mean0\",\"y\"],[7,\"mean0\",\"z\"]]]],[13,\"rgb1\",[6,\"d.vec3f\",[[7,\"mean1\",\"x\"],[7,\"mean1\",\"y\"],[7,\"mean1\",\"z\"]]]],[13,\"rgb2\",[6,\"d.vec3f\",[[7,\"mean2\",\"x\"],[7,\"mean2\",\"y\"],[7,\"mean2\",\"z\"]]]],[13,\"rgb3\",[6,\"d.vec3f\",[[7,\"mean3\",\"x\"],[7,\"mean3\",\"y\"],[7,\"mean3\",\"z\"]]]],[13,\"var0\",[6,[7,[6,[7,\"sq0\",\"mul\"],[\"invN\"]],\"sub\"],[[6,[7,\"rgb0\",\"mul\"],[\"rgb0\"]]]]],[13,\"var1\",[6,[7,[6,[7,\"sq1\",\"mul\"],[\"invN\"]],\"sub\"],[[6,[7,\"rgb1\",\"mul\"],[\"rgb1\"]]]]],[13,\"var2\",[6,[7,[6,[7,\"sq2\",\"mul\"],[\"invN\"]],\"sub\"],[[6,[7,\"rgb2\",\"mul\"],[\"rgb2\"]]]]],[13,\"var3\",[6,[7,[6,[7,\"sq3\",\"mul\"],[\"invN\"]],\"sub\"],[[6,[7,\"rgb3\",\"mul\"],[\"rgb3\"]]]]],[13,\"sigma0\",[1,[1,[7,\"var0\",\"x\"],\"+\",[7,\"var0\",\"y\"]],\"+\",[7,\"var0\",\"z\"]]],[13,\"sigma1\",[1,[1,[7,\"var1\",\"x\"],\"+\",[7,\"var1\",\"y\"]],\"+\",[7,\"var1\",\"z\"]]],[13,\"sigma2\",[1,[1,[7,\"var2\",\"x\"],\"+\",[7,\"var2\",\"y\"]],\"+\",[7,\"var2\",\"z\"]]],[13,\"sigma3\",[1,[1,[7,\"var3\",\"x\"],\"+\",[7,\"var3\",\"y\"]],\"+\",[7,\"var3\",\"z\"]]],[12,\"picked\",[6,\"d.vec4f\",[[7,\"mean0\",\"x\"],[7,\"mean0\",\"y\"],[7,\"mean0\",\"z\"],[7,\"mean0\",\"w\"]]]],[12,\"best\",\"sigma0\"],[2,\"picked\",\"=\",[6,\"std.select\",[\"picked\",\"mean1\",[1,\"sigma1\",\"<\",\"best\"]]]],[2,\"best\",\"=\",[6,\"std.min\",[\"best\",\"sigma1\"]]],[2,\"picked\",\"=\",[6,\"std.select\",[\"picked\",\"mean2\",[1,\"sigma2\",\"<\",\"best\"]]]],[2,\"best\",\"=\",[6,\"std.min\",[\"best\",\"sigma2\"]]],[2,\"picked\",\"=\",[6,\"std.select\",[\"picked\",\"mean3\",[1,\"sigma3\",\"<\",\"best\"]]]],[2,\"best\",\"=\",[6,\"std.min\",[\"best\",\"sigma3\"]]],[13,\"straight\",[6,\"blend.unpremultiplyAlpha\",[\"picked\"]]],[12,\"result\",[6,\"d.vec3f\",[[7,\"straight\",\"x\"],[7,\"straight\",\"y\"],[7,\"straight\",\"z\"]]]],[13,\"paperMul\",[6,\"std.mix\",[[5,\"1\"],\"grain\",\"paper\"]]],[13,\"paperTint\",[6,\"d.vec3f\",[[7,\"paperColor\",\"x\"],[7,\"paperColor\",\"y\"],[7,\"paperColor\",\"z\"]]]],[2,\"result\",\"=\",[6,\"std.mix\",[[6,[7,\"result\",\"mul\"],[\"paperMul\"]],[6,[7,\"result\",\"mul\"],[\"paperTint\"]],[6,\"d.vec3f\",[[1,\"paper\",\"*\",[5,\"0.4\"]]]]]]],[13,\"origRgb\",[6,\"d.vec3f\",[[7,\"originalBleed\",\"x\"],[7,\"originalBleed\",\"y\"],[7,\"originalBleed\",\"z\"]]]],[13,\"finalRGB\",[6,\"std.mix\",[\"origRgb\",\"result\",[6,\"d.vec3f\",[\"strength\"]]]]],[10,\"finalRGB\"]]]},externals:{\"d.vec3f\":()=>v,\"d.vec4f\":()=>b,\"std.select\":()=>F,\"std.min\":()=>ue,\"blend.unpremultiplyAlpha\":()=>Hn,\"std.mix\":()=>Z}})&&e.f)({})),t5=Math.sin(.785),s5=Math.cos(.785),r5=Math.sin(-.785),o5=Math.cos(-.785),Vl=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ms(t)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[10,[6,\"noise.hash12\",[\"p\"]]]]]},externals:{\"noise.hash12\":()=>ms}})&&e.f)({})),gf=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=K(t),r=ve(t),o=r.mul(r).mul(r.mul(-2).add(3)),n=Vl(s),i=Vl(u(__tsover_add(s.x,1),s.y)),d=Vl(u(s.x,__tsover_add(s.y,1))),l=Vl(u(__tsover_add(s.x,1),__tsover_add(s.y,1)));return Z(Z(n,i,o.x),Z(d,l,o.x),o.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"i\",[6,\"std.floor\",[\"p\"]]],[13,\"f\",[6,\"std.fract\",[\"p\"]]],[13,\"u\",[6,[7,[6,[7,\"f\",\"mul\"],[\"f\"]],\"mul\"],[[6,[7,[6,[7,\"f\",\"mul\"],[[4,\"-\",[5,\"2\"]]]],\"add\"],[[5,\"3\"]]]]]],[13,\"a\",[6,\"chalkHash21\",[\"i\"]]],[13,\"b\",[6,\"chalkHash21\",[[6,\"d.vec2f\",[[1,[7,\"i\",\"x\"],\"+\",[5,\"1\"]],[7,\"i\",\"y\"]]]]]],[13,\"c\",[6,\"chalkHash21\",[[6,\"d.vec2f\",[[7,\"i\",\"x\"],[1,[7,\"i\",\"y\"],\"+\",[5,\"1\"]]]]]]],[13,\"dd\",[6,\"chalkHash21\",[[6,\"d.vec2f\",[[1,[7,\"i\",\"x\"],\"+\",[5,\"1\"]],[1,[7,\"i\",\"y\"],\"+\",[5,\"1\"]]]]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[\"a\",\"b\",[7,\"u\",\"x\"]]],[6,\"std.mix\",[\"c\",\"dd\",[7,\"u\",\"x\"]]],[7,\"u\",\"y\"]]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,chalkHash21:()=>Vl,\"d.vec2f\":()=>u,\"std.mix\":()=>Z}})&&e.f)({})),MN=y.fn([b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return le(v(t.x,t.y,t.z),v(.299,.587,.114))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"}],body:[0,[[10,[6,\"std.dot\",[[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]],[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),kN=y.fn([u,u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_div(1,s.x),d=__tsover_div(1,s.y);return u(__tsover_add(t.x,__tsover_mul(__tsover_mul(i,r),o)),__tsover_add(t.y,__tsover_mul(__tsover_mul(d,r),n)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"edgeThickness\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[13,\"texelX\",[1,[5,\"1\"],\"/\",[7,\"viewport\",\"x\"]]],[13,\"texelY\",[1,[5,\"1\"],\"/\",[7,\"viewport\",\"y\"]]],[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",[1,[1,\"texelX\",\"*\",\"edgeThickness\"],\"*\",\"ox\"]],[1,[7,\"uv\",\"y\"],\"+\",[1,[1,\"texelY\",\"*\",\"edgeThickness\"],\"*\",\"oy\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),P_=y.fn([u,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_add(__tsover_mul(t.x,o),__tsover_mul(t.y,n)),l=__tsover_mul(W(__tsover_sub(ve(__tsover_div(d,s)),.5)),2),c=__tsover_sub(1,ce(0,.35,l));return __tsover_mul(c,ot(i,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"P\"},{type:\"i\",name:\"hatchScale\"},{type:\"i\",name:\"shade\"},{type:\"i\",name:\"sa\"},{type:\"i\",name:\"ca\"},{type:\"i\",name:\"thr\"}],body:[0,[[13,\"ry\",[1,[1,[7,\"P\",\"x\"],\"*\",\"sa\"],\"+\",[1,[7,\"P\",\"y\"],\"*\",\"ca\"]]],[13,\"hl\",[1,[6,\"std.abs\",[[1,[6,\"std.fract\",[[1,\"ry\",\"/\",\"hatchScale\"]]],\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"line\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.35\"],\"hl\"]]]],[10,[1,\"line\",\"*\",[6,\"std.step\",[\"thr\",\"shade\"]]]]]]},externals:{\"std.abs\":()=>W,\"std.fract\":()=>ve,\"std.smoothstep\":()=>ce,\"std.step\":()=>ot}})&&e.f)({})),$N=y.fn([b,b,u,u,b,b,b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=t.x,_=t.y,p=t.z,f=t.w,h=s.x,g=s.y,x=s.z,T=s.w,S=n.x,A=n.y,E=i.x,M=i.y,$=i.z,L=i.w,B=__tsover_add(__tsover_add(__tsover_add(__tsover_sub(__tsover_sub(-c,__tsover_mul(f,2)),g),p),__tsover_mul(h,2)),T),D=__tsover_add(__tsover_add(__tsover_add(__tsover_sub(__tsover_sub(-c,__tsover_mul(_,2)),p),g),__tsover_mul(x,2)),T),G=$e(__tsover_add(__tsover_mul(B,B),__tsover_mul(D,D))),I=Z(a(1),.08,E),X=ce(__tsover_mul(I,.4),I,G),H=__tsover_sub(1,S),ee=r.mul(o),Q=__tsover_mul(w(w(P_(ee,M,H,t5,s5,.22),P_(ee,M,H,r5,o5,.5)),P_(ee,M,H,0,1,.78)),$),de=Z(__tsover_sub(1,L),a(1),gf(ee.mul(.5))),Ee=z(__tsover_mul(w(X,Q),de),0,1),he=__tsover_mul(__tsover_sub(gf(ee.mul(.9)),.5),.04);return b(Z(d.xyz.add(he),l.xyz,v(Ee)),A)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sobelA\"},{type:\"i\",name:\"sobelB\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"misc\"},{type:\"i\",name:\"params\"},{type:\"i\",name:\"boardColor\"},{type:\"i\",name:\"chalkColor\"}],body:[0,[[13,\"tl\",[7,\"sobelA\",\"x\"]],[13,\"t\",[7,\"sobelA\",\"y\"]],[13,\"tr\",[7,\"sobelA\",\"z\"]],[13,\"l\",[7,\"sobelA\",\"w\"]],[13,\"r\",[7,\"sobelB\",\"x\"]],[13,\"bl\",[7,\"sobelB\",\"y\"]],[13,\"bo\",[7,\"sobelB\",\"z\"]],[13,\"br\",[7,\"sobelB\",\"w\"]],[13,\"centerLum\",[7,\"misc\",\"x\"]],[13,\"centerAlpha\",[7,\"misc\",\"y\"]],[13,\"edgeSensitivity\",[7,\"params\",\"x\"]],[13,\"hatchScale\",[7,\"params\",\"y\"]],[13,\"shading\",[7,\"params\",\"z\"]],[13,\"grain\",[7,\"params\",\"w\"]],[13,\"gx\",[1,[1,[1,[1,[1,[4,\"-\",\"tl\"],\"-\",[1,\"l\",\"*\",[5,\"2\"]]],\"-\",\"bl\"],\"+\",\"tr\"],\"+\",[1,\"r\",\"*\",[5,\"2\"]]],\"+\",\"br\"]],[13,\"gy\",[1,[1,[1,[1,[1,[4,\"-\",\"tl\"],\"-\",[1,\"t\",\"*\",[5,\"2\"]]],\"-\",\"tr\"],\"+\",\"bl\"],\"+\",[1,\"bo\",\"*\",[5,\"2\"]]],\"+\",\"br\"]],[13,\"edgeMag\",[6,\"std.sqrt\",[[1,[1,\"gx\",\"*\",\"gx\"],\"+\",[1,\"gy\",\"*\",\"gy\"]]]]],[13,\"edgeHigh\",[6,\"std.mix\",[[6,\"d.f32\",[[5,\"1\"]]],[5,\"0.08\"],\"edgeSensitivity\"]]],[13,\"edge\",[6,\"std.smoothstep\",[[1,\"edgeHigh\",\"*\",[5,\"0.4\"]],\"edgeHigh\",\"edgeMag\"]]],[13,\"shade\",[1,[5,\"1\"],\"-\",\"centerLum\"]],[13,\"P\",[6,[7,\"uv\",\"mul\"],[\"viewport\"]]],[13,\"hatch\",[1,[6,\"std.max\",[[6,\"std.max\",[[6,\"chalkHatchLine\",[\"P\",\"hatchScale\",\"shade\",\"SIN_045\",\"COS_045\",[5,\"0.22\"]]],[6,\"chalkHatchLine\",[\"P\",\"hatchScale\",\"shade\",\"SIN_N45\",\"COS_N45\",[5,\"0.5\"]]]]],[6,\"chalkHatchLine\",[\"P\",\"hatchScale\",\"shade\",[5,\"0\"],[5,\"1\"],[5,\"0.78\"]]]]],\"*\",\"shading\"]],[13,\"dust\",[6,\"std.mix\",[[1,[5,\"1\"],\"-\",\"grain\"],[6,\"d.f32\",[[5,\"1\"]]],[6,\"chalkVnoise\",[[6,[7,\"P\",\"mul\"],[[5,\"0.5\"]]]]]]]],[13,\"chalkMask\",[6,\"std.clamp\",[[1,[6,\"std.max\",[\"edge\",\"hatch\"]],\"*\",\"dust\"],[5,\"0\"],[5,\"1\"]]]],[13,\"boardGrain\",[1,[1,[6,\"chalkVnoise\",[[6,[7,\"P\",\"mul\"],[[5,\"0.9\"]]]]],\"-\",[5,\"0.5\"]],\"*\",[5,\"0.04\"]]],[13,\"boardRGB\",[6,[7,[7,\"boardColor\",\"xyz\"],\"add\"],[\"boardGrain\"]]],[13,\"col\",[6,\"std.mix\",[\"boardRGB\",[7,\"chalkColor\",\"xyz\"],[6,\"d.vec3f\",[\"chalkMask\"]]]]],[10,[6,\"d.vec4f\",[\"col\",\"centerAlpha\"]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.mix\":()=>Z,\"d.f32\":()=>a,\"std.smoothstep\":()=>ce,\"std.max\":()=>w,chalkHatchLine:()=>P_,SIN_045:()=>t5,COS_045:()=>s5,SIN_N45:()=>r5,COS_N45:()=>o5,chalkVnoise:()=>gf,\"std.clamp\":()=>z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})),n5=1080,xf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cellCenter:u,cellUV:u,isOutside:a}),\"AsciiGrid\"),CN=y.fn([u,u,a,a],xf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_div(s.y,n5),i=__tsover_mul(r,n),d=u(__tsover_div(s.x,i),__tsover_div(s.y,i)),l=u(__tsover_mul(t.x,d.x),__tsover_mul(t.y,d.y)),c=K(l),_=ve(l),p=__tsover_sub(_.x,.5),f=__tsover_sub(_.y,.5),h=u(__tsover_add(__tsover_div(p,o),.5),__tsover_add(__tsover_div(f,o),.5)),g=__tsover_mul(o,.5),x=F(a(0),a(1),W(p)>g||W(f)>g);return xf({cellCenter:u(__tsover_div(__tsover_add(c.x,.5),d.x),__tsover_div(__tsover_add(c.y,.5),d.y)),cellUV:h,isOutside:x})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"cellSize\"},{type:\"i\",name:\"spacing\"}],body:[0,[[13,\"scaleFactor\",[1,[7,\"viewport\",\"y\"],\"/\",\"REFERENCE_HEIGHT\"]],[13,\"effectiveCellSize\",[1,\"cellSize\",\"*\",\"scaleFactor\"]],[13,\"mainGridSize\",[6,\"d.vec2f\",[[1,[7,\"viewport\",\"x\"],\"/\",\"effectiveCellSize\"],[1,[7,\"viewport\",\"y\"],\"/\",\"effectiveCellSize\"]]]],[13,\"gridCoords\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",[7,\"mainGridSize\",\"x\"]],[1,[7,\"uv\",\"y\"],\"*\",[7,\"mainGridSize\",\"y\"]]]]],[13,\"cellCoords\",[6,\"std.floor\",[\"gridCoords\"]]],[13,\"rawCellUV\",[6,\"std.fract\",[\"gridCoords\"]]],[13,\"centeredU\",[1,[7,\"rawCellUV\",\"x\"],\"-\",[5,\"0.5\"]]],[13,\"centeredV\",[1,[7,\"rawCellUV\",\"y\"],\"-\",[5,\"0.5\"]]],[13,\"cellUV\",[6,\"d.vec2f\",[[1,[1,\"centeredU\",\"/\",\"spacing\"],\"+\",[5,\"0.5\"]],[1,[1,\"centeredV\",\"/\",\"spacing\"],\"+\",[5,\"0.5\"]]]]],[13,\"half\",[1,\"spacing\",\"*\",[5,\"0.5\"]]],[13,\"isOutside\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[3,[1,[6,\"std.abs\",[\"centeredU\"]],\">\",\"half\"],\"||\",[1,[6,\"std.abs\",[\"centeredV\"]],\">\",\"half\"]]]]],[13,\"cellCenter\",[6,\"d.vec2f\",[[1,[1,[7,\"cellCoords\",\"x\"],\"+\",[5,\"0.5\"]],\"/\",[7,\"mainGridSize\",\"x\"]],[1,[1,[7,\"cellCoords\",\"y\"],\"+\",[5,\"0.5\"]],\"/\",[7,\"mainGridSize\",\"y\"]]]]],[10,[6,\"AsciiGrid\",[[104,{cellCenter:\"cellCenter\",cellUV:\"cellUV\",isOutside:\"isOutside\"}]]]]]]},externals:{REFERENCE_HEIGHT:()=>n5,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"std.fract\":()=>ve,\"std.select\":()=>F,\"d.f32\":()=>a,\"std.abs\":()=>W,AsciiGrid:()=>xf}})&&e.f)({})).$name(\"asciiGrid\"),RN=y.fn([v,a,a,a,a,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Ye(le(t,v(.299,.587,.114)),s),l=__tsover_sub(1,d),c=z(K(__tsover_mul(l,r)),0,__tsover_sub(r,1)),_=__tsover_sub(c,__tsover_mul(o,K(__tsover_div(c,o)))),p=K(__tsover_div(c,o)),f=__tsover_mul(__tsover_div(1,o),n),h=__tsover_mul(_,f),g=__tsover_mul(p,f);return u(__tsover_add(h,__tsover_mul(i.x,f)),__tsover_add(g,__tsover_mul(i.y,f)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cellRgb\"},{type:\"i\",name:\"gamma\"},{type:\"i\",name:\"charCount\"},{type:\"i\",name:\"atlasSize\"},{type:\"i\",name:\"atlasScale\"},{type:\"i\",name:\"cellUV\"}],body:[0,[[13,\"rawBrightness\",[6,\"std.dot\",[\"cellRgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"adjustedBrightness\",[6,\"std.pow\",[\"rawBrightness\",\"gamma\"]]],[13,\"invertedBrightness\",[1,[5,\"1\"],\"-\",\"adjustedBrightness\"]],[13,\"scaledBrightness\",[1,\"invertedBrightness\",\"*\",\"charCount\"]],[13,\"charIndex\",[6,\"std.clamp\",[[6,\"std.floor\",[\"scaledBrightness\"]],[5,\"0\"],[1,\"charCount\",\"-\",[5,\"1\"]]]]],[13,\"atlasCol\",[1,\"charIndex\",\"-\",[1,\"atlasSize\",\"*\",[6,\"std.floor\",[[1,\"charIndex\",\"/\",\"atlasSize\"]]]]]],[13,\"atlasRow\",[6,\"std.floor\",[[1,\"charIndex\",\"/\",\"atlasSize\"]]]],[13,\"atlasCellSize\",[1,[1,[5,\"1\"],\"/\",\"atlasSize\"],\"*\",\"atlasScale\"]],[13,\"baseU\",[1,\"atlasCol\",\"*\",\"atlasCellSize\"]],[13,\"baseV\",[1,\"atlasRow\",\"*\",\"atlasCellSize\"]],[10,[6,\"d.vec2f\",[[1,\"baseU\",\"+\",[1,[7,\"cellUV\",\"x\"],\"*\",\"atlasCellSize\"]],[1,\"baseV\",\"+\",[1,[7,\"cellUV\",\"y\"],\"*\",\"atlasCellSize\"]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.pow\":()=>Ye,\"std.clamp\":()=>z,\"std.floor\":()=>K,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"asciiAtlasUV\"),UN=y.fn([v,b,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=le(t,v(.299,.587,.114))<.1,d=s.w,l=d<o,c=F(a(1),d,n>.5),_=i||r>.5||l,p=F(c,a(0),_);return b(__tsover_mul(t.x,s.x),__tsover_mul(t.y,s.y),__tsover_mul(t.z,s.z),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"asciiRgb\"},{type:\"i\",name:\"cellColor\"},{type:\"i\",name:\"isOutside\"},{type:\"i\",name:\"alphaThreshold\"},{type:\"i\",name:\"preserveAlpha\"}],body:[0,[[13,\"charBrightness\",[6,\"std.dot\",[\"asciiRgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]],[13,\"isBackground\",[1,\"charBrightness\",\"<\",[5,\"0.1\"]]],[13,\"sourceAlpha\",[7,\"cellColor\",\"w\"]],[13,\"isBelowThreshold\",[1,\"sourceAlpha\",\"<\",\"alphaThreshold\"]],[13,\"outputAlpha\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],\"sourceAlpha\",[1,\"preserveAlpha\",\">\",[5,\"0.5\"]]]]],[13,\"hide\",[3,[3,\"isBackground\",\"||\",[1,\"isOutside\",\">\",[5,\"0.5\"]]],\"||\",\"isBelowThreshold\"]],[13,\"finalAlpha\",[6,\"std.select\",[\"outputAlpha\",[6,\"d.f32\",[[5,\"0\"]]],\"hide\"]]],[10,[6,\"d.vec4f\",[[1,[7,\"asciiRgb\",\"x\"],\"*\",[7,\"cellColor\",\"x\"]],[1,[7,\"asciiRgb\",\"y\"],\"*\",[7,\"cellColor\",\"y\"]],[1,[7,\"asciiRgb\",\"z\"],\"*\",[7,\"cellColor\",\"z\"]],\"finalAlpha\"]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.select\":()=>F,\"d.f32\":()=>a,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"asciiCompose\"),hT=Pn({TangentFrame:()=>O_,WardSpecularInput:()=>wT,bevelledFlatNormal:()=>yT,cosinePalette:()=>Vc,fieldGradient:()=>Py,insideMask:()=>Sv,orthonormalTangentFrame:()=>Av,outsideShape:()=>xT,patternCoords:()=>gT,perspectiveViewRay:()=>bT,volumetricNormal:()=>My,wardAnisotropicSpecular:()=>JF}),Py=y.fn([b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return u(__tsover_div(__tsover_sub(s.x,t.x),o),__tsover_div(__tsover_sub(r.x,t.x),o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"surf0\"},{type:\"i\",name:\"surfX\"},{type:\"i\",name:\"surfY\"},{type:\"i\",name:\"eps\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[1,[7,\"surfX\",\"x\"],\"-\",[7,\"surf0\",\"x\"]],\"/\",\"eps\"],[1,[1,[7,\"surfY\",\"x\"],\"-\",[7,\"surf0\",\"x\"]],\"/\",\"eps\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),My=y.fn([b,b,b,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return Rs(v(z(__tsover_div(__tsover_sub(s.w,t.w),o),__tsover_mul(n,-1),n),z(__tsover_div(__tsover_sub(r.w,t.w),o),__tsover_mul(n,-1),n),-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"surf0\"},{type:\"i\",name:\"surfX\"},{type:\"i\",name:\"surfY\"},{type:\"i\",name:\"eps\"},{type:\"i\",name:\"gradClamp\"}],body:[0,[[13,\"ddx\",[6,\"std.clamp\",[[1,[1,[7,\"surfX\",\"w\"],\"-\",[7,\"surf0\",\"w\"]],\"/\",\"eps\"],[1,\"gradClamp\",\"*\",[4,\"-\",[5,\"1\"]]],\"gradClamp\"]]],[13,\"ddy\",[6,\"std.clamp\",[[1,[1,[7,\"surfY\",\"w\"],\"-\",[7,\"surf0\",\"w\"]],\"/\",\"eps\"],[1,\"gradClamp\",\"*\",[4,\"-\",[5,\"1\"]]],\"gradClamp\"]]],[10,[6,\"std.normalize\",[[6,\"d.vec3f\",[\"ddx\",\"ddy\",[4,\"-\",[5,\"1\"]]]]]]]]]},externals:{\"std.clamp\":()=>z,\"std.normalize\":()=>Rs,\"d.vec3f\":()=>v}})&&e.f)({})),yT=y.fn([u,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=w(te(t),1e-4),o=ue(s,.9995);return v(__tsover_mul(__tsover_div(t.x,r),o),__tsover_mul(__tsover_div(t.y,r),o),__tsover_mul($e(__tsover_sub(1,__tsover_mul(o,o))),-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"grad\"},{type:\"i\",name:\"sinTilt\"}],body:[0,[[13,\"glen\",[6,\"std.max\",[[6,\"std.length\",[\"grad\"]],[5,\"0.0001\"]]]],[13,\"sB\",[6,\"std.min\",[\"sinTilt\",[5,\"0.9995\"]]]],[10,[6,\"d.vec3f\",[[1,[1,[7,\"grad\",\"x\"],\"/\",\"glen\"],\"*\",\"sB\"],[1,[1,[7,\"grad\",\"y\"],\"/\",\"glen\"],\"*\",\"sB\"],[1,[6,\"std.sqrt\",[[1,[5,\"1\"],\"-\",[1,\"sB\",\"*\",\"sB\"]]]],\"*\",[4,\"-\",[5,\"1\"]]]]]]]]},externals:{\"std.max\":()=>w,\"std.length\":()=>te,\"std.min\":()=>ue,\"d.vec3f\":()=>v,\"std.sqrt\":()=>$e}})&&e.f)({})),gT=y.fn([u,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(F(__tsover_sub(t.x,.5),s.y,r>.5),F(__tsover_sub(t.y,.5),s.z,r>.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdfUV\"},{type:\"i\",name:\"surf0\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[10,[6,\"d.vec2f\",[[6,\"std.select\",[[1,[7,\"sdfUV\",\"x\"],\"-\",[5,\"0.5\"]],[7,\"surf0\",\"y\"],[1,\"volumetric\",\">\",[5,\"0.5\"]]]],[6,\"std.select\",[[1,[7,\"sdfUV\",\"y\"],\"-\",[5,\"0.5\"]],[7,\"surf0\",\"z\"],[1,\"volumetric\",\">\",[5,\"0.5\"]]]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.select\":()=>F}})&&e.f)({})),xT=y.fn([a,a],Ft)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return t>__tsover_mul(s,2)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"pxH\"}],body:[0,[[10,[1,\"sdf\",\">\",[1,\"pxH\",\"*\",[5,\"2\"]]]]]]},externals:{}})&&e.f)({})),Sv=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=w(__tsover_mul(s,.03125),__tsover_mul(r,o));return z(__tsover_div(__tsover_mul(t,-1),n),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"sharpEdge\"},{type:\"i\",name:\"pxH\"},{type:\"i\",name:\"minPixels\"}],body:[0,[[13,\"w\",[6,\"std.max\",[[1,\"sharpEdge\",\"*\",[5,\"0.03125\"]],[1,\"pxH\",\"*\",\"minPixels\"]]]],[10,[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"w\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z}})&&e.f)({})),bT=y.fn([u,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return Rs(v(__tsover_mul(__tsover_mul(__tsover_sub(t.x,.5),s),r),__tsover_mul(__tsover_sub(t.y,.5),r),1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"fov\"}],body:[0,[[10,[6,\"std.normalize\",[[6,\"d.vec3f\",[[1,[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"],\"*\",\"fov\"],[1,[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]],\"*\",\"fov\"],[5,\"1\"]]]]]]]]},externals:{\"std.normalize\":()=>Rs,\"d.vec3f\":()=>v}})&&e.f)({})),O_=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({tangent:v,bitangent:v}),\"TangentFrame\"),Av=y.fn([v,v],O_)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Rs(s.sub(t.mul(le(t,s))));return O_({tangent:r,bitangent:v(__tsover_sub(__tsover_mul(t.y,r.z),__tsover_mul(t.z,r.y)),__tsover_sub(__tsover_mul(t.z,r.x),__tsover_mul(t.x,r.z)),__tsover_sub(__tsover_mul(t.x,r.y),__tsover_mul(t.y,r.x)))})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"normal\"},{type:\"i\",name:\"dir\"}],body:[0,[[13,\"T3\",[6,\"std.normalize\",[[6,[7,\"dir\",\"sub\"],[[6,[7,\"normal\",\"mul\"],[[6,\"std.dot\",[\"normal\",\"dir\"]]]]]]]]],[13,\"B3\",[6,\"d.vec3f\",[[1,[1,[7,\"normal\",\"y\"],\"*\",[7,\"T3\",\"z\"]],\"-\",[1,[7,\"normal\",\"z\"],\"*\",[7,\"T3\",\"y\"]]],[1,[1,[7,\"normal\",\"z\"],\"*\",[7,\"T3\",\"x\"]],\"-\",[1,[7,\"normal\",\"x\"],\"*\",[7,\"T3\",\"z\"]]],[1,[1,[7,\"normal\",\"x\"],\"*\",[7,\"T3\",\"y\"]],\"-\",[1,[7,\"normal\",\"y\"],\"*\",[7,\"T3\",\"x\"]]]]]],[10,[6,\"TangentFrame\",[[104,{tangent:\"T3\",bitangent:\"B3\"}]]]]]]},externals:{\"std.normalize\":()=>Rs,\"std.dot\":()=>le,\"d.vec3f\":()=>v,TangentFrame:()=>O_}})&&e.f)({})),wT=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({normal:v,tangent:v,light:v,view:v,alphaAlong:a,alphaAcross:a}),\"WardSpecularInput\"),JF=y.fn([wT],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=Av(t.normal,t.tangent),r=Rs(t.light.sub(t.view)),o=le(r,s.tangent),n=le(r,s.bitangent),i=z(W(le(r,t.normal)),1e-4,1),d=w(t.alphaAlong,1e-4),l=w(t.alphaAcross,1e-4),c=__tsover_div(__tsover_add(__tsover_mul(__tsover_div(o,d),__tsover_div(o,d)),__tsover_mul(__tsover_div(n,l),__tsover_div(n,l))),__tsover_mul(__tsover_add(i,1),.5));return Mt(__tsover_mul(c,-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"frame\",[6,\"orthonormalTangentFrame\",[[7,\"p\",\"normal\"],[7,\"p\",\"tangent\"]]]],[13,\"H\",[6,\"std.normalize\",[[6,[7,[7,\"p\",\"light\"],\"sub\"],[[7,\"p\",\"view\"]]]]]],[13,\"hT\",[6,\"std.dot\",[\"H\",[7,\"frame\",\"tangent\"]]]],[13,\"hB\",[6,\"std.dot\",[\"H\",[7,\"frame\",\"bitangent\"]]]],[13,\"hN\",[6,\"std.clamp\",[[6,\"std.abs\",[[6,\"std.dot\",[\"H\",[7,\"p\",\"normal\"]]]]],[5,\"0.0001\"],[5,\"1\"]]]],[13,\"aT\",[6,\"std.max\",[[7,\"p\",\"alphaAlong\"],[5,\"0.0001\"]]]],[13,\"aB\",[6,\"std.max\",[[7,\"p\",\"alphaAcross\"],[5,\"0.0001\"]]]],[13,\"expo\",[1,[1,[1,[1,\"hT\",\"/\",\"aT\"],\"*\",[1,\"hT\",\"/\",\"aT\"]],\"+\",[1,[1,\"hB\",\"/\",\"aB\"],\"*\",[1,\"hB\",\"/\",\"aB\"]]],\"/\",[1,[1,\"hN\",\"+\",[5,\"1\"]],\"*\",[5,\"0.5\"]]]],[10,[6,\"std.exp\",[[1,\"expo\",\"*\",[4,\"-\",[5,\"1\"]]]]]]]]},externals:{orthonormalTangentFrame:()=>Av,\"std.normalize\":()=>Rs,\"std.dot\":()=>le,\"std.clamp\":()=>z,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.exp\":()=>Mt}})&&e.f)({})),Vc=y.fn([a,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return v(__tsover_add(__tsover_mul(J(__tsover_mul(__tsover_add(t,s),_o)),.5),.5),__tsover_add(__tsover_mul(J(__tsover_mul(__tsover_add(t,r),_o)),.5),.5),__tsover_add(__tsover_mul(J(__tsover_mul(__tsover_add(t,o),_o)),.5),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"phaseR\"},{type:\"i\",name:\"phaseG\"},{type:\"i\",name:\"phaseB\"}],body:[0,[[10,[6,\"d.vec3f\",[[1,[1,[6,\"std.cos\",[[1,[1,\"t\",\"+\",\"phaseR\"],\"*\",\"TWO_PI\"]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[1,[1,[6,\"std.cos\",[[1,[1,\"t\",\"+\",\"phaseG\"],\"*\",\"TWO_PI\"]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[1,[1,[6,\"std.cos\",[[1,[1,\"t\",\"+\",\"phaseB\"],\"*\",\"TWO_PI\"]]],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.cos\":()=>J,TWO_PI:()=>_o}})&&e.f)({})),eB=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return ce(0,1,Sv(t,w(__tsover_mul(s,.5),.001),r,1.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"edgeSoftness\"},{type:\"i\",name:\"pxH\"}],body:[0,[[13,\"sharpEdge\",[6,\"std.max\",[[1,\"edgeSoftness\",\"*\",[5,\"0.5\"]],[5,\"0.001\"]]]],[10,[6,\"std.smoothstep\",[[5,\"0\"],[5,\"1\"],[6,\"insideMask\",[\"sdf\",\"sharpEdge\",\"pxH\",[5,\"1.5\"]]]]]]]]},externals:{\"std.max\":()=>w,\"std.smoothstep\":()=>ce,insideMask:()=>Sv}})&&e.f)({})),bf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({L:v,H:v}),\"KeyLight\"),tB=y.fn([a,a,a],bf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Rs(v(t,s,r));return bf({L:o,H:Rs(o.add(v(0,0,-1)))})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"lx\"},{type:\"i\",name:\"ly\"},{type:\"i\",name:\"lz\"}],body:[0,[[13,\"L\",[6,\"std.normalize\",[[6,\"d.vec3f\",[\"lx\",\"ly\",\"lz\"]]]]],[13,\"H\",[6,\"std.normalize\",[[6,[7,\"L\",\"add\"],[[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[4,\"-\",[5,\"1\"]]]]]]]]],[10,[6,\"KeyLight\",[[104,{L:\"L\",H:\"H\"}]]]]]]},externals:{\"std.normalize\":()=>Rs,\"d.vec3f\":()=>v,KeyLight:()=>bf}})&&e.f)({})),sB=y.fn([v],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_sub(1,z(__tsover_mul(t.z,-1),0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"n\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.clamp\",[[1,[7,\"n\",\"z\"],\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0\"],[5,\"1\"]]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({})),rB=y.fn([a,a,b],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_mul(Ye(t,Z(r.x,r.y,s)),Z(r.z,r.w,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"ndh\"},{type:\"i\",name:\"sharp\"},{type:\"i\",name:\"cfg\"}],body:[0,[[10,[1,[6,\"std.pow\",[\"ndh\",[6,\"std.mix\",[[7,\"cfg\",\"x\"],[7,\"cfg\",\"y\"],\"sharp\"]]]],\"*\",[6,\"std.mix\",[[7,\"cfg\",\"z\"],[7,\"cfg\",\"w\"],\"sharp\"]]]]]]},externals:{\"std.pow\":()=>Ye,\"std.mix\":()=>Z}})&&e.f)({})),oB=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=a(4),o=qn(t);return u(z(__tsover_mul(o.y,s),__tsover_mul(r,-1),r),z(__tsover_mul(o.z,s),__tsover_mul(r,-1),r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"q\"},{type:\"i\",name:\"gain\"}],body:[0,[[13,\"gMax\",[6,\"d.f32\",[[5,\"4\"]]]],[13,\"nd\",[6,\"perlin12d\",[\"q\"]]],[10,[6,\"d.vec2f\",[[6,\"std.clamp\",[[1,[7,\"nd\",\"y\"],\"*\",\"gain\"],[1,\"gMax\",\"*\",[4,\"-\",[5,\"1\"]]],\"gMax\"]],[6,\"std.clamp\",[[1,[7,\"nd\",\"z\"],\"*\",\"gain\"],[1,\"gMax\",\"*\",[4,\"-\",[5,\"1\"]]],\"gMax\"]]]]]]]},externals:{\"d.f32\":()=>a,perlin12d:()=>qn,\"d.vec2f\":()=>u,\"std.clamp\":()=>z}})&&e.f)({})),nB=y.fn([v,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return Rs(v(__tsover_add(t.x,s),__tsover_add(t.y,r),t.z))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"n\"},{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"}],body:[0,[[10,[6,\"std.normalize\",[[6,\"d.vec3f\",[[1,[7,\"n\",\"x\"],\"+\",\"dx\"],[1,[7,\"n\",\"y\"],\"+\",\"dy\"],[7,\"n\",\"z\"]]]]]]]]},externals:{\"std.normalize\":()=>Rs,\"d.vec3f\":()=>v}})&&e.f)({})),aB=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=z(__tsover_mul(__tsover_mul(t,-1),2),0,1.2);return F(__tsover_mul(z(__tsover_mul(t,-1),0,.5),2),r,s>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"thickVol\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"*\",[5,\"2\"]],[5,\"0\"],[5,\"1.2\"]]]],[13,\"thickFlat\",[1,[6,\"std.clamp\",[[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0\"],[5,\"0.5\"]]],\"*\",[5,\"2\"]]],[10,[6,\"std.select\",[\"thickFlat\",\"thickVol\",[1,\"volumetric\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.clamp\":()=>z,\"std.select\":()=>F}})&&e.f)({})),iB=y.fn([a,v],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return v(Mt(__tsover_mul(__tsover_mul(t,s.x),-1)),Mt(__tsover_mul(__tsover_mul(t,s.y),-1)),Mt(__tsover_mul(__tsover_mul(t,s.z),-1)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"absorb\"}],body:[0,[[10,[6,\"d.vec3f\",[[6,\"std.exp\",[[1,[1,\"thickness\",\"*\",[7,\"absorb\",\"x\"]],\"*\",[4,\"-\",[5,\"1\"]]]]],[6,\"std.exp\",[[1,[1,\"thickness\",\"*\",[7,\"absorb\",\"y\"]],\"*\",[4,\"-\",[5,\"1\"]]]]],[6,\"std.exp\",[[1,[1,\"thickness\",\"*\",[7,\"absorb\",\"z\"]],\"*\",[4,\"-\",[5,\"1\"]]]]]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.exp\":()=>Mt}})&&e.f)({})),dB=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(__tsover_mul(O(__tsover_add(__tsover_add(__tsover_mul(t.x,1.7),__tsover_mul(s,.7)),1.7)),J(__tsover_add(__tsover_add(__tsover_mul(t.y,1.3),__tsover_mul(s,.5)),2.3))),__tsover_mul(J(__tsover_add(__tsover_add(__tsover_mul(t.x,1.4),__tsover_mul(s,.9)),8.7)),O(__tsover_add(__tsover_add(__tsover_mul(t.y,1.6),__tsover_mul(s,.6)),5.1))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"warpInput\"},{type:\"i\",name:\"flowT\"}],body:[0,[[13,\"wx\",[1,[6,\"std.sin\",[[1,[1,[1,[7,\"warpInput\",\"x\"],\"*\",[5,\"1.7\"]],\"+\",[1,\"flowT\",\"*\",[5,\"0.7\"]]],\"+\",[5,\"1.7\"]]]],\"*\",[6,\"std.cos\",[[1,[1,[1,[7,\"warpInput\",\"y\"],\"*\",[5,\"1.3\"]],\"+\",[1,\"flowT\",\"*\",[5,\"0.5\"]]],\"+\",[5,\"2.3\"]]]]]],[13,\"wy\",[1,[6,\"std.cos\",[[1,[1,[1,[7,\"warpInput\",\"x\"],\"*\",[5,\"1.4\"]],\"+\",[1,\"flowT\",\"*\",[5,\"0.9\"]]],\"+\",[5,\"8.7\"]]]],\"*\",[6,\"std.sin\",[[1,[1,[1,[7,\"warpInput\",\"y\"],\"*\",[5,\"1.6\"]],\"+\",[1,\"flowT\",\"*\",[5,\"0.6\"]]],\"+\",[5,\"5.1\"]]]]]],[10,[6,\"d.vec2f\",[\"wx\",\"wy\"]]]]]},externals:{\"std.sin\":()=>O,\"std.cos\":()=>J,\"d.vec2f\":()=>u}})&&e.f)({})),lB=y.fn([a,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=__tsover_sub(__tsover_mul(t,r),__tsover_mul(s,o)),_=__tsover_add(__tsover_mul(t,o),__tsover_mul(s,r)),p=u(c,_),f=ce(-.7,.85,_),h=__tsover_mul(__tsover_mul(f,f),l),g=__tsover_mul(n,1);h=__tsover_add(h,__tsover_mul(__tsover_mul(ce(g,__tsover_mul(g,.2),te(p.sub(u(__tsover_add(0,i),.55)))),1.7),d));let x=__tsover_mul(n,1.15);h=__tsover_add(h,__tsover_mul(__tsover_mul(ce(x,__tsover_mul(x,.2),te(p.sub(u(__tsover_add(-.55,i),.18)))),1.05),d));let T=__tsover_mul(n,1);h=__tsover_add(h,__tsover_mul(__tsover_mul(ce(T,__tsover_mul(T,.2),te(p.sub(u(__tsover_add(.55,i),.1)))),1),d));let S=__tsover_mul(n,1.3);h=__tsover_add(h,__tsover_mul(__tsover_mul(ce(S,__tsover_mul(S,.2),te(p.sub(u(__tsover_add(.2,i),-.5)))),.7),d));let A=__tsover_mul(n,1.1);return h=__tsover_add(h,__tsover_mul(__tsover_mul(ce(A,__tsover_mul(A,.2),te(p.sub(u(__tsover_add(-.35,i),-.25)))),.85),d)),h}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rx\"},{type:\"i\",name:\"ry\"},{type:\"i\",name:\"envC\"},{type:\"i\",name:\"envS\"},{type:\"i\",name:\"keyRad\"},{type:\"i\",name:\"drift\"},{type:\"i\",name:\"envStr\"},{type:\"i\",name:\"skyGain\"}],body:[0,[[13,\"ex\",[1,[1,\"rx\",\"*\",\"envC\"],\"-\",[1,\"ry\",\"*\",\"envS\"]]],[13,\"ey\",[1,[1,\"rx\",\"*\",\"envS\"],\"+\",[1,\"ry\",\"*\",\"envC\"]]],[13,\"p\",[6,\"d.vec2f\",[\"ex\",\"ey\"]]],[13,\"sky\",[6,\"std.smoothstep\",[[4,\"-\",[5,\"0.7\"]],[5,\"0.85\"],\"ey\"]]],[12,\"lum\",[1,[1,\"sky\",\"*\",\"sky\"],\"*\",\"skyGain\"]],[13,\"r0\",[1,\"keyRad\",\"*\",[5,\"1\"]]],[2,\"lum\",\"=\",[1,\"lum\",\"+\",[1,[1,[6,\"std.smoothstep\",[\"r0\",[1,\"r0\",\"*\",[5,\"0.2\"]],[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[1,[5,\"0\"],\"+\",\"drift\"],[5,\"0.55\"]]]]]]]]],\"*\",[5,\"1.7\"]],\"*\",\"envStr\"]]],[13,\"r1\",[1,\"keyRad\",\"*\",[5,\"1.15\"]]],[2,\"lum\",\"=\",[1,\"lum\",\"+\",[1,[1,[6,\"std.smoothstep\",[\"r1\",[1,\"r1\",\"*\",[5,\"0.2\"]],[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[1,[4,\"-\",[5,\"0.55\"]],\"+\",\"drift\"],[5,\"0.18\"]]]]]]]]],\"*\",[5,\"1.05\"]],\"*\",\"envStr\"]]],[13,\"r2\",[1,\"keyRad\",\"*\",[5,\"1\"]]],[2,\"lum\",\"=\",[1,\"lum\",\"+\",[1,[1,[6,\"std.smoothstep\",[\"r2\",[1,\"r2\",\"*\",[5,\"0.2\"]],[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[1,[5,\"0.55\"],\"+\",\"drift\"],[5,\"0.1\"]]]]]]]]],\"*\",[5,\"1\"]],\"*\",\"envStr\"]]],[13,\"r3\",[1,\"keyRad\",\"*\",[5,\"1.3\"]]],[2,\"lum\",\"=\",[1,\"lum\",\"+\",[1,[1,[6,\"std.smoothstep\",[\"r3\",[1,\"r3\",\"*\",[5,\"0.2\"]],[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[1,[5,\"0.2\"],\"+\",\"drift\"],[4,\"-\",[5,\"0.5\"]]]]]]]]]],\"*\",[5,\"0.7\"]],\"*\",\"envStr\"]]],[13,\"r4\",[1,\"keyRad\",\"*\",[5,\"1.1\"]]],[2,\"lum\",\"=\",[1,\"lum\",\"+\",[1,[1,[6,\"std.smoothstep\",[\"r4\",[1,\"r4\",\"*\",[5,\"0.2\"]],[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[6,\"d.vec2f\",[[1,[4,\"-\",[5,\"0.35\"]],\"+\",\"drift\"],[4,\"-\",[5,\"0.25\"]]]]]]]]]],\"*\",[5,\"0.85\"]],\"*\",\"envStr\"]]],[10,\"lum\"]]]},externals:{\"d.vec2f\":()=>u,\"std.smoothstep\":()=>ce,\"std.length\":()=>te}})&&e.f)({})),cB=new Map,a5=new Set;function TT(e){return cB.get(e)??null}function ST(e){return a5.add(e),()=>{a5.delete(e)}}var uB=16,_B=64;var zN=uB*_B;var pB=Pn({accumulateInstances:()=>bB,formatFloat:()=>$m,gridPlacement:()=>vB,instanceHueShift:()=>xB,instanceVariation:()=>gB,linePlacement:()=>yB,placementField:()=>fB,radialPlacement:()=>hB,sourceRect:()=>mB}),uc=Math.PI;function mB(e,t,s){let{p:r,L:o}=e;return[`let ${r}_cropL = ${s.left};`,`let ${r}_cropR = ${s.right};`,`let ${r}_cropT = ${s.top};`,`let ${r}_cropB = ${s.bottom};`,`let ${r}_srcCx = (${t.cx}) + (${r}_cropL - ${r}_cropR) * (${t.hw});`,`let ${r}_srcCy = (${t.cy}) + (${r}_cropT - ${r}_cropB) * (${t.hh});`,`let ${r}_srcHw = max((${t.hw}) * (1.0 - ${r}_cropL - ${r}_cropR), ${o(1e-6)});`,`let ${r}_srcHh = max((${t.hh}) * (1.0 - ${r}_cropT - ${r}_cropB), ${o(1e-6)});`,`let ${r}_srcHwSq = ${r}_srcHw * ${r}_aspect;`,`let ${r}_srcHhSq = ${r}_srcHh;`]}function fB(e,t){let{p:s,L:r}=e;return[`let ${s}_fieldCenterSq = vec2f((${t.cx}) * ${s}_aspect, ${t.cy});`,`let ${s}_fieldHwSq = max((${t.hw}) * ${s}_aspect, ${r(1e-6)});`,`let ${s}_fieldHh = max(${t.hh}, ${r(1e-6)});`]}function vB(e,t){return{requested:()=>`(${e.columns} * ${e.rows})`,body:s=>{let{p:r,L:o}=s,n=[`let ${r}_cols = ${e.columns};`,`let ${r}_rows = ${e.rows};`,`let ${r}_col = ${r}_j - ${r}_cols * floor(${r}_j / ${r}_cols);`,`let ${r}_row = floor(${r}_j / ${r}_cols);`,`let ${r}_gapXSq = ${e.gapX} * ${r}_aspect;`,`let ${r}_gapY = ${e.gapY};`,`let ${r}_fieldW = ${r}_fieldHwSq * 2.0;`,`let ${r}_fieldH = ${r}_fieldHh * 2.0;`,`let ${r}_pitchX = (${r}_fieldW - ${r}_gapXSq * (${r}_cols - 1.0)) / ${r}_cols;`,`let ${r}_pitchY = (${r}_fieldH - ${r}_gapY * (${r}_rows - 1.0)) / ${r}_rows;`,`let ${r}_periodX = ${r}_pitchX + ${r}_gapXSq;`,`let ${r}_periodY = ${r}_pitchY + ${r}_gapY;`,`${r}_cellFitInv = max(${r}_srcHwSq * 2.0 / max(${r}_pitchX, ${o(1e-5)}), ${r}_srcHhSq * 2.0 / max(${r}_pitchY, ${o(1e-5)}));`,`let ${r}_rowMod2 = ${r}_row - 2.0 * floor(${r}_row / 2.0);`,`let ${r}_staggerOff = ${r}_rowMod2 * ${e.stagger} * ${r}_periodX;`,`let ${r}_cxArg = ${r}_col * ${r}_periodX + ${r}_staggerOff + ${r}_phase * ${r}_periodX;`,`let ${r}_cxMod = ${r}_periodX * ${r}_cols;`,`let ${r}_cellX = ${r}_cxArg - ${r}_cxMod * floor(${r}_cxArg / ${r}_cxMod);`,`let ${r}_cyArg = ${r}_row * ${r}_periodY + ${r}_phase * ${r}_periodY;`,`let ${r}_cyMod = ${r}_periodY * ${r}_rows;`,`let ${r}_cellY = ${r}_cyArg - ${r}_cyMod * floor(${r}_cyArg / ${r}_cyMod);`,`${r}_pos = vec2f(${r}_fieldCenterSq.x - ${r}_fieldW * 0.5 + ${r}_pitchX * 0.5 + ${r}_cellX, ${r}_fieldCenterSq.y - ${r}_fieldH * 0.5 + ${r}_pitchY * 0.5 + ${r}_cellY);`];return(t===1||t===3)&&n.push(`${r}_flipX = 1.0 - (${r}_col - 2.0 * floor(${r}_col / 2.0)) * 2.0;`),(t===2||t===3)&&n.push(`${r}_flipY = 1.0 - (${r}_row - 2.0 * floor(${r}_row / 2.0)) * 2.0;`),n}}}function hB(e,t){return{requested:()=>t.count,body:s=>{let{p:r,L:o}=s;return[`let ${r}_cSq = ${e};`,`let ${r}_sweep = ${t.sweep} * ${o(uc/180)};`,`let ${r}_start = ${t.startAngle} * ${o(uc/180)};`,`let ${r}_ang = ${r}_start + ${r}_sweep * (${r}_j / ${r}_totalN) + ${r}_phase * ${r}_sweep;`,`${r}_pos = ${r}_cSq + vec2f(cos(${r}_ang), sin(${r}_ang)) * ${t.radius};`,`${r}_layoutRot = select(0.0, ${r}_ang + ${o(uc/2)}, ${t.faceCenter} > 0.0);`]}}}function yB(e,t){return{requested:()=>t.count,body:s=>{let{p:r,L:o}=s;return[`let ${r}_cSq = ${e};`,`let ${r}_dirRad = ${t.direction} * ${o(uc/180)};`,`let ${r}_dir = vec2f(cos(${r}_dirRad), sin(${r}_dirRad));`,`let ${r}_tArg = ${r}_j + ${r}_phase;`,`let ${r}_t = ${r}_tArg - ${r}_totalN * floor(${r}_tArg / ${r}_totalN);`,`${r}_pos = ${r}_cSq + ${r}_dir * ${t.spacing} * ${r}_t;`]}}}function gB(e,t){let{p:s,L:r}=e,o=n=>`fract(sin((${s}_hashBase + ${r(n)}) * 78.233) * 43758.5453)`;return[`let ${s}_hashBase = ${s}_j + ${s}_seed * 7.0;`,`let ${s}_h1 = ${o(.123)};`,`let ${s}_h2 = ${o(5.456)};`,`let ${s}_h3 = ${o(9.789)};`,`let ${s}_h4 = ${o(13.21)};`,`let ${s}_h5 = ${o(17.65)};`,`let ${s}_scale = max(pow(${t.scale}, ${s}_j) * (1.0 + ${t.jitterScale} * (${s}_h3 - 0.5)), ${r(1e-4)});`,`let ${s}_rot = ${s}_layoutRot + ${t.rotation} * ${s}_j + ${t.jitterRotation} * (${s}_h4 - 0.5) * ${r(uc*2)};`,`let ${s}_instOpacity = pow(${t.opacity}, ${s}_j) * (1.0 - ${t.jitterOpacity} * ${s}_h5);`,`${s}_pos = ${s}_pos + vec2f((${s}_h1 - 0.5) * ${s}_fieldHwSq, (${s}_h2 - 0.5) * ${s}_fieldHh) * ${t.jitterPosition};`]}function xB(e,t){let{p:s,L:r}=e;return[`let ${s}_hueAngle = ${t} * ${s}_j;`,`let ${s}_cosH = cos(${s}_hueAngle);`,`let ${s}_sinH = sin(${s}_hueAngle);`,`let ${s}_kOMC = (1.0 - ${s}_cosH) * ${r(1/3)};`,`let ${s}_sOS3 = ${s}_sinH / 1.7320508075688772;`,`let ${s}_mA = ${s}_cosH + ${s}_kOMC;`,`let ${s}_mB = ${s}_kOMC - ${s}_sOS3;`,`let ${s}_mC = ${s}_kOMC + ${s}_sOS3;`,`${s}_rgb = vec3f(${s}_src.r * ${s}_mA + ${s}_src.g * ${s}_mB + ${s}_src.b * ${s}_mC, ${s}_src.r * ${s}_mC + ${s}_src.g * ${s}_mA + ${s}_src.b * ${s}_mB, ${s}_src.r * ${s}_mB + ${s}_src.g * ${s}_mC + ${s}_src.b * ${s}_mA);`]}function bB(e,t){let{p:s}=e,r=[];r.push(`let ${s}_totalN = min(max(${t.placement.requested()}, 1.0), 64.0);`),r.push(`var ${s}_accum = vec4f(0.0, 0.0, 0.0, 0.0);`),r.push(`var ${s}_cellFitInv = 1.0;`);let o=[];o.push(`let ${s}_fi = f32(${s}_i);`),o.push(t.zBack?`let ${s}_j = ${s}_totalN - 1.0 - ${s}_fi;`:`let ${s}_j = ${s}_fi;`),o.push(`var ${s}_pos = vec2f(0.0, 0.0);`),o.push(`var ${s}_layoutRot = 0.0;`),o.push(`var ${s}_flipX = 1.0;`),o.push(`var ${s}_flipY = 1.0;`),o.push(...t.placement.body(e)),o.push(...t.variation),o.push(`let ${s}_negRot = -${s}_rot;`),o.push(`let ${s}_cosA = cos(${s}_negRot);`),o.push(`let ${s}_sinA = sin(${s}_negRot);`),o.push(`let ${s}_d0 = ${s}_pix - ${s}_pos;`),o.push(`let ${s}_dr = vec2f(${s}_d0.x * ${s}_cosA - ${s}_d0.y * ${s}_sinA, ${s}_d0.x * ${s}_sinA + ${s}_d0.y * ${s}_cosA);`),o.push(`let ${s}_dl = ${s}_dr / ${s}_scale;`),o.push(`let ${s}_localU = ${s}_dl.x * ${s}_flipX * ${s}_cellFitInv / (${s}_srcHwSq * 2.0) + 0.5;`),o.push(`let ${s}_localV = ${s}_dl.y * ${s}_flipY * ${s}_cellFitInv / (${s}_srcHhSq * 2.0) + 0.5;`);let n=[];n.push(`let ${s}_sampleUV = vec2f(${s}_srcCx - ${s}_srcHw + ${s}_localU * ${s}_srcHw * 2.0, ${s}_srcCy - ${s}_srcHh + ${s}_localV * ${s}_srcHh * 2.0);`),n.push(`let ${s}_src = textureSampleLevel(tex.$.${t.texKey}, samp.$.linearClamp, ${s}_sampleUV, 0.0);`),n.push(`var ${s}_rgb = ${s}_src.rgb;`),n.push(...t.hue),n.push(`let ${s}_a = ${s}_src.a * ${s}_instOpacity;`),n.push(`let ${s}_premul = ${s}_rgb * ${s}_a;`),n.push(`${s}_accum = vec4f(${s}_premul + ${s}_accum.rgb * (1.0 - ${s}_a), ${s}_a + ${s}_accum.a * (1.0 - ${s}_a));`),o.push(`if (${s}_localU >= 0.0 && ${s}_localU <= 1.0 && ${s}_localV >= 0.0 && ${s}_localV <= 1.0) {`);for(let i of n)o.push(` ${i}`);o.push(\"}\"),r.push(`for (var ${s}_i = 0u; ${s}_i < u32(${s}_totalN); ${s}_i++) {`);for(let i of o)r.push(` ${i}`);return r.push(\"}\"),r}function No(){if(typeof window>\"u\")return!1;let e=!!(window.matchMedia&&window.matchMedia(\"(pointer: coarse)\").matches),t=Math.max(window.innerWidth||0,window.innerHeight||0);return e&&t>0&&t<=1366}function AT(){return No()?1.5:2}var GN=No()?24:50;var wB=14,DN=wB+1,Ev=\"rgba32float\";var ET=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({dt:a,trackersF:a,agility:a,threshold:a,variance:a,lifespan:a}),\"TrackParams\"),LN=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({src:{texture:Hs(a)},grid:{storageTexture:an(Ev,\"write-only\")},params:{uniform:ET}}),\"featureLayout\"),FN=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({src:{texture:Hs(a)},featGrid:{texture:Hs(a),sampleType:\"unfilterable-float\"},prev:{texture:Hs(a),sampleType:\"unfilterable-float\"},next:{storageTexture:an(Ev,\"write-only\")},present:{storageTexture:an(Ev,\"write-only\")},params:{uniform:ET}}),\"trackLayout\"),BN=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return ve(__tsover_mul(O(t),43758.5453123))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"}],body:[0,[[10,[6,\"std.fract\",[[1,[6,\"std.sin\",[\"x\"]],\"*\",[5,\"43758.5453123\"]]]]]]]},externals:{\"std.fract\":()=>ve,\"std.sin\":()=>O}})&&e.f)({})),\"trackHash\");function TB(e={}){let t=e.smoothing??.2,s=e.teleportGuard??.25,r=e.minDrag??6e-4,o=e.initialX??.5,n=e.initialY??.5,i=0,d=0,l=!1,c=!1;return{update(_,p){let f=_?.seen===!1;f?l=!0:_?.x!==void 0&&l&&!c&&(c=!0,o=_.x,n=_.y??n);let h=o,g=n,x=f?o:_?.x??o,T=f?n:_?.y??n,S=x-h,A=T-g,E=Math.sqrt(S*S+A*A),M=E>=s;o=x,n=T;let $=M?0:S,L=M?0:A,B=1/Math.max(p,.001),D=$*B,G=L*B;return i=i*(1-t)+D*t,d=d*(1-t)+G*t,{x,y:T,prevX:h,prevY:g,dx:$,dy:L,dragDist:E,velX:D,velY:G,smoothVelX:i,smoothVelY:d,smoothSpeed:Math.sqrt(i*i+d*d),teleport:M,moving:!M&&E>r}}}}var i5=3,Pv=Math.exp(-(i5*i5)),d5=1/(1-Pv),Mv=.004,PT=\"rgba16float\";function SB(e){return y.bindGroupLayout({readBuf:{storage:zt(a,e),access:\"readonly\"},writeBuf:{storage:zt(a,e),access:\"mutable\"},params:{uniform:(globalThis.__TYPEGPU_AUTONAME__??(t=>t))(Ct({cursorX:a,cursorY:a,cursorSpeed:a,dt:a,damping:a,radius:a,aspect:a}),\"uniform\")}})}function AB(e){return y.bindGroupLayout({srcBuf:{storage:zt(a,e),access:\"readonly\"},dispTex:{storageTexture:an(PT,\"write-only\")}})}var l5=new Map;function EB(e){let t=l5.get(e);if(t)return t;let s=e*e,r=e-1,o=SB(s),n=AB(s),i={resolution:e,propagateLayout:o,gradientLayout:n,propagateKernel:y.fn([Y,Y])((d=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(d.f=((l,c)=>{\"use gpu\";if(l>Y(0)&&l<Y(r)&&c>Y(0)&&c<Y(r)){let _=o.$.params,p=Y(e),f=__tsover_add(__tsover_mul(c,p),l),h=o.$.readBuf[__tsover_sub(f,Y(1))],g=o.$.readBuf[__tsover_add(f,Y(1))],x=o.$.readBuf[__tsover_sub(f,p)],T=o.$.readBuf[__tsover_add(f,p)],S=__tsover_mul(__tsover_add(__tsover_add(__tsover_add(h,g),x),T),.5),A=o.$.writeBuf[f],E=__tsover_sub(1,__tsover_mul(_.damping,Mv)),M=__tsover_mul(__tsover_sub(S,A),E),$=__tsover_div(__tsover_add(a(l),.5),a(e)),L=__tsover_div(__tsover_add(a(c),.5),a(e)),B=F(__tsover_sub($,_.cursorX),__tsover_mul(__tsover_sub($,_.cursorX),_.aspect),_.aspect>=1),D=F(__tsover_div(__tsover_sub(L,_.cursorY),_.aspect),__tsover_sub(L,_.cursorY),_.aspect>=1),G=__tsover_add(__tsover_mul(B,B),__tsover_mul(D,D)),I=__tsover_mul(_.radius,3);if(G<__tsover_mul(I,I)&&_.cursorSpeed>.01){let X=__tsover_mul(__tsover_sub(Mt(__tsover_mul(__tsover_div(G,__tsover_mul(_.radius,_.radius)),-1)),Pv),d5);M=__tsover_sub(M,__tsover_mul(__tsover_mul(__tsover_mul(X,_.cursorSpeed),_.dt),3))}o.$.writeBuf[f]=M}}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[11,[3,[3,[3,[1,\"cx\",\">\",[6,\"d.u32\",[[5,\"0\"]]]],\"&&\",[1,\"cx\",\"<\",[6,\"d.u32\",[\"gridMax\"]]]],\"&&\",[1,\"cy\",\">\",[6,\"d.u32\",[[5,\"0\"]]]]],\"&&\",[1,\"cy\",\"<\",[6,\"d.u32\",[\"gridMax\"]]]],[0,[[13,\"p\",[7,[7,\"propagateLayout\",\"$\"],\"params\"]],[13,\"gs\",[6,\"d.u32\",[\"resolution\"]]],[13,\"idx\",[1,[1,\"cy\",\"*\",\"gs\"],\"+\",\"cx\"]],[13,\"left\",[8,[7,[7,\"propagateLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"-\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"right\",[8,[7,[7,\"propagateLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"+\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"up\",[8,[7,[7,\"propagateLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"-\",\"gs\"]]],[13,\"down\",[8,[7,[7,\"propagateLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"+\",\"gs\"]]],[13,\"avg\",[1,[1,[1,[1,\"left\",\"+\",\"right\"],\"+\",\"up\"],\"+\",\"down\"],\"*\",[5,\"0.5\"]]],[13,\"prev\",[8,[7,[7,\"propagateLayout\",\"$\"],\"writeBuf\"],\"idx\"]],[13,\"dampFactor\",[1,[5,\"1\"],\"-\",[1,[7,\"p\",\"damping\"],\"*\",\"DAMPING_SCALE\"]]],[12,\"next\",[1,[1,\"avg\",\"-\",\"prev\"],\"*\",\"dampFactor\"]],[13,\"cellX\",[1,[1,[6,\"d.f32\",[\"cx\"]],\"+\",[5,\"0.5\"]],\"/\",[6,\"d.f32\",[\"resolution\"]]]],[13,\"cellY\",[1,[1,[6,\"d.f32\",[\"cy\"]],\"+\",[5,\"0.5\"]],\"/\",[6,\"d.f32\",[\"resolution\"]]]],[13,\"ddx\",[6,\"std.select\",[[1,\"cellX\",\"-\",[7,\"p\",\"cursorX\"]],[1,[1,\"cellX\",\"-\",[7,\"p\",\"cursorX\"]],\"*\",[7,\"p\",\"aspect\"]],[1,[7,\"p\",\"aspect\"],\">=\",[5,\"1\"]]]]],[13,\"ddy\",[6,\"std.select\",[[1,[1,\"cellY\",\"-\",[7,\"p\",\"cursorY\"]],\"/\",[7,\"p\",\"aspect\"]],[1,\"cellY\",\"-\",[7,\"p\",\"cursorY\"]],[1,[7,\"p\",\"aspect\"],\">=\",[5,\"1\"]]]]],[13,\"distSq\",[1,[1,\"ddx\",\"*\",\"ddx\"],\"+\",[1,\"ddy\",\"*\",\"ddy\"]]],[13,\"influenceRadius\",[1,[7,\"p\",\"radius\"],\"*\",[5,\"3\"]]],[11,[3,[1,\"distSq\",\"<\",[1,\"influenceRadius\",\"*\",\"influenceRadius\"]],\"&&\",[1,[7,\"p\",\"cursorSpeed\"],\">\",[5,\"0.01\"]]],[0,[[13,\"influence\",[1,[1,[6,\"std.exp\",[[1,[1,\"distSq\",\"/\",[1,[7,\"p\",\"radius\"],\"*\",[7,\"p\",\"radius\"]]],\"*\",[4,\"-\",[5,\"1\"]]]]],\"-\",\"BRUSH_EDGE\"],\"*\",\"BRUSH_EDGE_GAIN\"]],[2,\"next\",\"=\",[1,\"next\",\"-\",[1,[1,[1,\"influence\",\"*\",[7,\"p\",\"cursorSpeed\"]],\"*\",[7,\"p\",\"dt\"]],\"*\",[5,\"3\"]]]]]]],[2,[8,[7,[7,\"propagateLayout\",\"$\"],\"writeBuf\"],\"idx\"],\"=\",\"next\"]]]]]]},externals:{\"d.u32\":()=>Y,gridMax:()=>r,propagateLayout:()=>o,resolution:()=>e,DAMPING_SCALE:()=>Mv,\"d.f32\":()=>a,\"std.select\":()=>F,\"std.exp\":()=>Mt,BRUSH_EDGE:()=>Pv,BRUSH_EDGE_GAIN:()=>d5}})&&d.f)({})).$name(`waveFieldPropagate_${e}`),gradientKernel:y.fn([Y,Y])((d=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(d.f=((l,c)=>{\"use gpu\";if(l>Y(0)&&l<Y(r)&&c>Y(0)&&c<Y(r)){let _=Y(e),p=__tsover_add(__tsover_mul(c,_),l),f=n.$.srcBuf[__tsover_add(p,Y(1))],h=n.$.srcBuf[__tsover_sub(p,Y(1))],g=n.$.srcBuf[__tsover_add(p,_)],x=n.$.srcBuf[__tsover_sub(p,_)],T=__tsover_mul(__tsover_sub(f,h),.5),S=__tsover_mul(__tsover_sub(g,x),.5);Co(n.$.dispTex,He(l,c),b(T,S,0,1))}}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[11,[3,[3,[3,[1,\"cx\",\">\",[6,\"d.u32\",[[5,\"0\"]]]],\"&&\",[1,\"cx\",\"<\",[6,\"d.u32\",[\"gridMax\"]]]],\"&&\",[1,\"cy\",\">\",[6,\"d.u32\",[[5,\"0\"]]]]],\"&&\",[1,\"cy\",\"<\",[6,\"d.u32\",[\"gridMax\"]]]],[0,[[13,\"gs\",[6,\"d.u32\",[\"resolution\"]]],[13,\"idx\",[1,[1,\"cy\",\"*\",\"gs\"],\"+\",\"cx\"]],[13,\"right\",[8,[7,[7,\"gradientLayout\",\"$\"],\"srcBuf\"],[1,\"idx\",\"+\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"left\",[8,[7,[7,\"gradientLayout\",\"$\"],\"srcBuf\"],[1,\"idx\",\"-\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"down\",[8,[7,[7,\"gradientLayout\",\"$\"],\"srcBuf\"],[1,\"idx\",\"+\",\"gs\"]]],[13,\"up\",[8,[7,[7,\"gradientLayout\",\"$\"],\"srcBuf\"],[1,\"idx\",\"-\",\"gs\"]]],[13,\"dx\",[1,[1,\"right\",\"-\",\"left\"],\"*\",[5,\"0.5\"]]],[13,\"dy\",[1,[1,\"down\",\"-\",\"up\"],\"*\",[5,\"0.5\"]]],[6,\"std.textureStore\",[[7,[7,\"gradientLayout\",\"$\"],\"dispTex\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],[6,\"d.vec4f\",[\"dx\",\"dy\",[5,\"0\"],[5,\"1\"]]]]]]]]]]},externals:{\"d.u32\":()=>Y,gridMax:()=>r,resolution:()=>e,gradientLayout:()=>n,\"std.textureStore\":()=>Co,\"d.vec2u\":()=>He,\"d.vec4f\":()=>b}})&&d.f)({})).$name(`waveFieldGradient_${e}`)};return l5.set(e,i),i}function PB(e,t){let{gpu:s,registerComputeTexture:r,getCpuValue:o,onCleanup:n,onResize:i,dimensions:d}=e,l=s?.root;if(!l)return null;let{resolution:c,dampingProp:_,radiusProp:p,radiusScale:f,speedMax:h,teleportGuard:g=\"on\"}=t,{propagateLayout:x,gradientLayout:T,propagateKernel:S,gradientKernel:A}=EB(c),E=c*c,M=M2(l,a,E),$=M2(l,a,E),L=(globalThis.__TYPEGPU_AUTONAME__??(Te=>Te))(l.createTexture({size:[c,c],format:PT}).$usage(\"storage\",\"sampled\"),\"dispTex\");n(()=>L.destroy());let B=r(L),D=(globalThis.__TYPEGPU_AUTONAME__??(Te=>Te))(l.createUniform(Ct({cursorX:a,cursorY:a,cursorSpeed:a,dt:a,damping:a,radius:a,aspect:a})),\"propParams\"),G=Math.max(1,Math.round(d.width)),I=Math.max(1,Math.round(d.height));i(({width:Te,height:Pe})=>{G=Math.max(1,Math.round(Te)),I=Math.max(1,Math.round(Pe))});let X=[c,c],H=wF(M,$),ee=H.groups((Te,Pe)=>l.createBindGroup(x,{readBuf:Te,writeBuf:Pe,params:D.buffer})),Q=H.perSide(Te=>l.createBindGroup(T,{srcBuf:Te,dispTex:L})),de=wv(l,(Te=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(Te.f=((Pe,Ce)=>{\"use gpu\";S(Pe,Ce)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[6,\"propagateKernel\",[\"cx\",\"cy\"]]]]},externals:{propagateKernel:()=>S}})&&Te.f)({}),{size:X}),Ee=wv(l,(Te=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(Te.f=((Pe,Ce)=>{\"use gpu\";A(Pe,Ce)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[6,\"gradientKernel\",[\"cx\",\"cy\"]]]]},externals:{gradientKernel:()=>A}})&&Te.f)({}),{size:X}),he=TB(g===\"off\"?{teleportGuard:Number.POSITIVE_INFINITY}:{}),Me=Date.now();return{displacement:B,getComputeNodes:Te=>{let Pe=Te,Ce=Date.now(),ie=Math.min(Pe.deltaTime??0,.016),Ne=Math.max(1,Pe.dimensions?.width??G)/Math.max(1,Pe.dimensions?.height??I),ye=o(_)??10,Ve=(o(p)??.5)*f,qe=he.update(Pe.pointer,ie),st=Math.min(Math.sqrt(qe.velX*qe.velX+qe.velY*qe.velY),h);st>.01&&(Me=Ce);let We=1-ye*Mv,Be=We>=1?1/0:Math.min(3e4,Math.log(1e-6)/Math.log(Math.max(We,.001))*16.67);if(Ce-Me>Be)return null;D.write({cursorX:qe.x,cursorY:qe.y,cursorSpeed:st,dt:ie,damping:ye,radius:Ve,aspect:Ne});let rt=[de.with(ee()),Ee.with(Q.written())];return H.swap(),rt}}}var MB=j7;function kB(e,t,s={}){let{uniforms:r,propValues:o}=e,n=o.colorSpace??0;return(o.stopCount??0)>1?dl(t,{colorsArray:r.colorsArray,positionsArray:r.positionsArray,convertedColorsArray:r.convertedColorsArray,stopCount:r.stopCount},n):se(Xo[n]??lr,\"mixColors\",[r[s.colorA??\"colorA\"],r[s.colorB??\"colorB\"],t])}var IN=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(__tsover_mul(t.x,s),t.y),i=__tsover_mul(r,4);return n.mul(i).add(o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"freq\",[1,\"scale\",\"*\",[5,\"4\"]]],[10,[6,[7,[6,[7,\"aspectUV\",\"mul\"],[\"freq\"]],\"add\"],[\"seed\"]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),YN=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=qn(s),n=u(o.y,o.z).mul(r).mul(.012);return t.add(n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"pos\"},{type:\"i\",name:\"distortion\"}],body:[0,[[13,\"grad\",[6,\"perlin12d\",[\"pos\"]]],[13,\"disp\",[6,[7,[6,[7,[6,\"d.vec2f\",[[7,\"grad\",\"y\"],[7,\"grad\",\"z\"]]],\"mul\"],[\"distortion\"]],\"mul\"],[[5,\"0.012\"]]]],[10,[6,[7,\"uv\",\"add\"],[\"disp\"]]]]]},externals:{perlin12d:()=>qn,\"d.vec2f\":()=>u}})&&e.f)({})),WN=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_add(__tsover_mul(__tsover_sub(t,.5),__tsover_add(s,1)),.5);return z(__tsover_add(1,__tsover_mul(__tsover_sub(o,.5),__tsover_mul(r,1.1))),0,1.6)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"contrast\"},{type:\"i\",name:\"intensity\"}],body:[0,[[13,\"hAdj\",[1,[1,[1,\"h\",\"-\",[5,\"0.5\"]],\"*\",[1,\"contrast\",\"+\",[5,\"1\"]]],\"+\",[5,\"0.5\"]]],[10,[6,\"std.clamp\",[[1,[5,\"1\"],\"+\",[1,[1,\"hAdj\",\"-\",[5,\"0.5\"]],\"*\",[1,\"intensity\",\"*\",[5,\"1.1\"]]]],[5,\"0\"],[5,\"1.6\"]]]]]]},externals:{\"std.clamp\":()=>z}})&&e.f)({}));var ON=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=F(t,__tsover_sub(1,t),o>0),i=w(r,1e-4),d=__tsover_sub(__tsover_mul(s,__tsover_add(1,__tsover_mul(2,i))),i);return ce(__tsover_sub(d,i),__tsover_add(d,i),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"coord\"},{type:\"i\",name:\"progress\"},{type:\"i\",name:\"feather\"},{type:\"i\",name:\"invert\"}],body:[0,[[13,\"c\",[6,\"std.select\",[\"coord\",[1,[5,\"1\"],\"-\",\"coord\"],[1,\"invert\",\">\",[5,\"0\"]]]]],[13,\"f\",[6,\"std.max\",[\"feather\",[5,\"0.0001\"]]]],[13,\"front\",[1,[1,\"progress\",\"*\",[1,[5,\"1\"],\"+\",[1,[5,\"2\"],\"*\",\"f\"]]],\"-\",\"f\"]],[10,[6,\"std.smoothstep\",[[1,\"front\",\"-\",\"f\"],[1,\"front\",\"+\",\"f\"],\"c\"]]]]]},externals:{\"std.select\":()=>F,\"std.max\":()=>w,\"std.smoothstep\":()=>ce}})&&e.f)({})),VN=y.fn([b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return b(t.x,t.y,t.z,__tsover_mul(t.w,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"reveal\"}],body:[0,[[10,[6,\"d.vec4f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"],[1,[7,\"color\",\"w\"],\"*\",\"reveal\"]]]]]]},externals:{\"d.vec4f\":()=>b}})&&e.f)({})),NN=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(r,Qe),n=u(J(o),O(o)),i=le(u(__tsover_mul(__tsover_sub(t.x,.5),s),__tsover_sub(t.y,.5)),n),d=__tsover_mul(.5,__tsover_add(__tsover_mul(s,W(n.x)),W(n.y)));return __tsover_add(__tsover_div(i,__tsover_mul(2,d)),.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"angleDeg\"}],body:[0,[[13,\"a\",[1,\"angleDeg\",\"*\",\"DEG_TO_RAD\"]],[13,\"dir\",[6,\"d.vec2f\",[[6,\"std.cos\",[\"a\"]],[6,\"std.sin\",[\"a\"]]]]],[13,\"p\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]],[13,\"grad\",[6,\"std.dot\",[\"p\",\"dir\"]]],[13,\"ext\",[1,[5,\"0.5\"],\"*\",[1,[1,\"aspect\",\"*\",[6,\"std.abs\",[[7,\"dir\",\"x\"]]]],\"+\",[6,\"std.abs\",[[7,\"dir\",\"y\"]]]]]],[10,[1,[1,\"grad\",\"/\",[1,[5,\"2\"],\"*\",\"ext\"]],\"+\",[5,\"0.5\"]]]]]},externals:{DEG_TO_RAD:()=>Qe,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.abs\":()=>W}})&&e.f)({})),qN=y.fn([u,a,u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(r.x,s),n=__tsover_sub(1,r.y),i=te(u(__tsover_sub(__tsover_mul(t.x,s),o),__tsover_sub(t.y,n))),d=te(u(w(o,__tsover_sub(s,o)),w(n,__tsover_sub(1,n))));return __tsover_div(i,w(d,1e-4))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"center\"}],body:[0,[[13,\"cx\",[1,[7,\"center\",\"x\"],\"*\",\"aspect\"]],[13,\"cy\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]],[13,\"rel\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"-\",\"cx\"],[1,[7,\"uv\",\"y\"],\"-\",\"cy\"]]]],[13,\"dist\",[6,\"std.length\",[\"rel\"]]],[13,\"dx\",[6,\"std.max\",[\"cx\",[1,\"aspect\",\"-\",\"cx\"]]]],[13,\"dy\",[6,\"std.max\",[\"cy\",[1,[5,\"1\"],\"-\",\"cy\"]]]],[13,\"maxDist\",[6,\"std.length\",[[6,\"d.vec2f\",[\"dx\",\"dy\"]]]]],[10,[1,\"dist\",\"/\",[6,\"std.max\",[\"maxDist\",[5,\"0.0001\"]]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.max\":()=>w}})&&e.f)({})),XN=y.fn([u,a,u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=u(__tsover_mul(__tsover_sub(t.x,r.x),s),__tsover_sub(t.y,__tsover_sub(1,r.y))),d=bt(i.y,i.x),l=__tsover_mul(o,Qe),c=__tsover_div(__tsover_sub(d,l),_o);c=__tsover_sub(c,K(c));let _=__tsover_sub(1,c),p=__tsover_mul(ue(c,__tsover_sub(1,c)),2),f=F(c,_,n>.5);return f=F(f,p,n>1.5),f}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"startDeg\"},{type:\"i\",name:\"mode\"}],body:[0,[[13,\"rel\",[6,\"d.vec2f\",[[1,[1,[7,\"uv\",\"x\"],\"-\",[7,\"center\",\"x\"]],\"*\",\"aspect\"],[1,[7,\"uv\",\"y\"],\"-\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]]],[13,\"ang\",[6,\"std.atan2\",[[7,\"rel\",\"y\"],[7,\"rel\",\"x\"]]]],[13,\"start\",[1,\"startDeg\",\"*\",\"DEG_TO_RAD\"]],[12,\"frac\",[1,[1,\"ang\",\"-\",\"start\"],\"/\",\"TWO_PI\"]],[2,\"frac\",\"=\",[1,\"frac\",\"-\",[6,\"std.floor\",[\"frac\"]]]],[13,\"ccwCoord\",[1,[5,\"1\"],\"-\",\"frac\"]],[13,\"bothCoord\",[1,[6,\"std.min\",[\"frac\",[1,[5,\"1\"],\"-\",\"frac\"]]],\"*\",[5,\"2\"]]],[12,\"coord\",[6,\"std.select\",[\"frac\",\"ccwCoord\",[1,\"mode\",\">\",[5,\"0.5\"]]]]],[2,\"coord\",\"=\",[6,\"std.select\",[\"coord\",\"bothCoord\",[1,\"mode\",\">\",[5,\"1.5\"]]]]],[10,\"coord\"]]]},externals:{\"d.vec2f\":()=>u,\"std.atan2\":()=>bt,DEG_TO_RAD:()=>Qe,TWO_PI:()=>_o,\"std.floor\":()=>K,\"std.min\":()=>ue,\"std.select\":()=>F}})&&e.f)({})),wf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cell:u,local:u,grid:u}),\"CellGrid\"),Xd=y.fn([u,a,a],wf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(1,w(r,.001)),n=w(__tsover_div(o,s),1),i=__tsover_mul(t.x,o),d=__tsover_mul(t.y,n);return wf({cell:u(K(i),K(d)),local:u(ve(i),ve(d)),grid:u(o,n)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"size\"}],body:[0,[[13,\"gridX\",[1,[5,\"1\"],\"/\",[6,\"std.max\",[\"size\",[5,\"0.001\"]]]]],[13,\"gridY\",[6,\"std.max\",[[1,\"gridX\",\"/\",\"aspect\"],[5,\"1\"]]]],[13,\"sx\",[1,[7,\"uv\",\"x\"],\"*\",\"gridX\"]],[13,\"sy\",[1,[7,\"uv\",\"y\"],\"*\",\"gridY\"]],[10,[6,\"CellGrid\",[[104,{cell:[6,\"d.vec2f\",[[6,\"std.floor\",[\"sx\"]],[6,\"std.floor\",[\"sy\"]]]],local:[6,\"d.vec2f\",[[6,\"std.fract\",[\"sx\"]],[6,\"std.fract\",[\"sy\"]]]],grid:[6,\"d.vec2f\",[\"gridX\",\"gridY\"]]}]]]]]]},externals:{\"std.max\":()=>w,CellGrid:()=>wf,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"std.fract\":()=>ve}})&&e.f)({})),HN=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_mul(W(__tsover_sub(t,.5)),2)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"}],body:[0,[[10,[1,[6,\"std.abs\",[[1,\"t\",\"-\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]]]]},externals:{\"std.abs\":()=>W}})&&e.f)({})),jN=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return ve(__tsover_mul(t,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"count\"}],body:[0,[[10,[6,\"std.fract\",[[1,\"t\",\"*\",\"count\"]]]]]]},externals:{\"std.fract\":()=>ve}})&&e.f)({})),KN=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=w(s,1);return z(__tsover_div(__tsover_add(K(__tsover_mul(t,r)),.5),r),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"count\"}],body:[0,[[13,\"n\",[6,\"std.max\",[\"count\",[5,\"1\"]]]],[10,[6,\"std.clamp\",[[1,[1,[6,\"std.floor\",[[1,\"t\",\"*\",\"n\"]]],\"+\",[5,\"0.5\"]],\"/\",\"n\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.floor\":()=>K}})&&e.f)({})),ZN=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=K(__tsover_mul(t,w(s,1)));return fr(__tsover_add(r,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"count\"}],body:[0,[[13,\"idx\",[6,\"std.floor\",[[1,\"t\",\"*\",[6,\"std.max\",[\"count\",[5,\"1\"]]]]]]],[10,[6,\"hash11\",[[1,\"idx\",\"+\",[5,\"0.5\"]]]]]]]},externals:{\"std.floor\":()=>K,\"std.max\":()=>w,hash11:()=>fr}})&&e.f)({})),QN=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Xd(t,s,r);return __tsover_add(W(__tsover_sub(o.local.x,.5)),W(__tsover_sub(o.local.y,.5)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"size\"}],body:[0,[[13,\"g\",[6,\"cellGrid\",[\"uv\",\"aspect\",\"size\"]]],[10,[1,[6,\"std.abs\",[[1,[7,[7,\"g\",\"local\"],\"x\"],\"-\",[5,\"0.5\"]]]],\"+\",[6,\"std.abs\",[[1,[7,[7,\"g\",\"local\"],\"y\"],\"-\",[5,\"0.5\"]]]]]]]]},externals:{cellGrid:()=>Xd,\"std.abs\":()=>W}})&&e.f)({})),JN=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=Xd(t,s,r),n=__tsover_mul(ve(__tsover_mul(__tsover_add(o.cell.x,o.cell.y),.5)),2),i=__tsover_mul(__tsover_add(__tsover_div(o.cell.x,o.grid.x),__tsover_div(o.cell.y,o.grid.y)),.5);return z(__tsover_add(__tsover_mul(.5,n),__tsover_mul(.5,i)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"size\"}],body:[0,[[13,\"g\",[6,\"cellGrid\",[\"uv\",\"aspect\",\"size\"]]],[13,\"parity\",[1,[6,\"std.fract\",[[1,[1,[7,[7,\"g\",\"cell\"],\"x\"],\"+\",[7,[7,\"g\",\"cell\"],\"y\"]],\"*\",[5,\"0.5\"]]]],\"*\",[5,\"2\"]]],[13,\"diag\",[1,[1,[1,[7,[7,\"g\",\"cell\"],\"x\"],\"/\",[7,[7,\"g\",\"grid\"],\"x\"]],\"+\",[1,[7,[7,\"g\",\"cell\"],\"y\"],\"/\",[7,[7,\"g\",\"grid\"],\"y\"]]],\"*\",[5,\"0.5\"]]],[10,[6,\"std.clamp\",[[1,[1,[5,\"0.5\"],\"*\",\"parity\"],\"+\",[1,[5,\"0.5\"],\"*\",\"diag\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{cellGrid:()=>Xd,\"std.fract\":()=>ve,\"std.clamp\":()=>z}})&&e.f)({})),eq=y.fn([u,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return ms(Xd(t,s,r).cell)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"size\"}],body:[0,[[10,[6,\"hash12\",[[7,[6,\"cellGrid\",[\"uv\",\"aspect\",\"size\"]],\"cell\"]]]]]]},externals:{hash12:()=>ms,cellGrid:()=>Xd}})&&e.f)({})),tq=y.fn([u,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(__tsover_add(__tsover_mul(__tsover_mul(t.x,s),r),__tsover_mul(o,13.7)),__tsover_add(__tsover_mul(t.y,r),__tsover_mul(o,7.9))),i=$i(n),d=__tsover_mul($i(u(__tsover_add(__tsover_add(__tsover_mul(n.x,2),17.3),__tsover_mul(o,3.1)),__tsover_add(__tsover_mul(n.y,2),9.1))),.5),l=__tsover_mul($i(u(__tsover_add(__tsover_mul(n.x,4),41.7),__tsover_add(__tsover_add(__tsover_mul(n.y,4),27.9),__tsover_mul(o,5.3)))),.25),c=__tsover_div(__tsover_add(__tsover_add(i,d),l),1.75);return z(__tsover_add(.5,__tsover_mul(c,.9)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"seed\"}],body:[0,[[13,\"p\",[6,\"d.vec2f\",[[1,[1,[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],\"*\",\"scale\"],\"+\",[1,\"seed\",\"*\",[5,\"13.7\"]]],[1,[1,[7,\"uv\",\"y\"],\"*\",\"scale\"],\"+\",[1,\"seed\",\"*\",[5,\"7.9\"]]]]]],[13,\"n1\",[6,\"mxNoiseFloat2\",[\"p\"]]],[13,\"n2\",[1,[6,\"mxNoiseFloat2\",[[6,\"d.vec2f\",[[1,[1,[1,[7,\"p\",\"x\"],\"*\",[5,\"2\"]],\"+\",[5,\"17.3\"]],\"+\",[1,\"seed\",\"*\",[5,\"3.1\"]]],[1,[1,[7,\"p\",\"y\"],\"*\",[5,\"2\"]],\"+\",[5,\"9.1\"]]]]]],\"*\",[5,\"0.5\"]]],[13,\"n3\",[1,[6,\"mxNoiseFloat2\",[[6,\"d.vec2f\",[[1,[1,[7,\"p\",\"x\"],\"*\",[5,\"4\"]],\"+\",[5,\"41.7\"]],[1,[1,[1,[7,\"p\",\"y\"],\"*\",[5,\"4\"]],\"+\",[5,\"27.9\"]],\"+\",[1,\"seed\",\"*\",[5,\"5.3\"]]]]]]],\"*\",[5,\"0.25\"]]],[13,\"n\",[1,[1,[1,\"n1\",\"+\",\"n2\"],\"+\",\"n3\"],\"/\",[5,\"1.75\"]]],[10,[6,\"std.clamp\",[[1,[5,\"0.5\"],\"+\",[1,\"n\",\"*\",[5,\"0.9\"]]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"d.vec2f\":()=>u,mxNoiseFloat2:()=>$i,\"std.clamp\":()=>z}})&&e.f)({})),MT=new Float32Array(1),$B=new Int32Array(MT.buffer);function Ai(e){MT[0]=Math.max(-65504,Math.min(65504,e));let t=$B[0],s=t>>16&32768,r=t>>12&2047,o=t>>23&255;return o<103?s:o>142?(s|=31744,s|=(o===255?0:1)&&t&8388607,s):o<113?(r|=2048,s|=(r>>114-o)+(r>>113-o&1),s):(s|=o-112<<10|r>>1,s+=r&1,s)}var Cm=Pn({ANALYTIC_SDF_EXTRA_FIELDS:()=>RB,APERTURE_TO_HALFANGLE:()=>CB,SVG_SDF_SIZE:()=>512,ShapeMask:()=>V_,analyticSubPropValues:()=>Xp,arcSdf:()=>Vp,buildAnalyticSdfFn:()=>Cy,circleSdf:()=>_c,createAnalyticSdfSampler:()=>zT,createSdfDataTexture:()=>$y,createSvgSdfSampler:()=>RT,createSvgSdfSamplerWithGradients:()=>UT,crescentSdf:()=>Yp,crossSdf:()=>Lp,driveAnalyticSubProps:()=>DT,ellipseSdf:()=>Bp,fillStrokeColor:()=>CT,flowerSdf:()=>zp,heartSdf:()=>Op,loadSdfFromUrl:()=>ky,parallelogramSdf:()=>qp,parseShapeConfigValue:()=>GT,polygonSdf:()=>Up,ringSdf:()=>Dp,roundedRectSdf:()=>Fp,shapeLocalCoords:()=>kT,starSdf:()=>Gp,strokeMaskFromSdf:()=>$T,teardropSdf:()=>Np,trapezoidSdf:()=>Wp,vesicaSdf:()=>Ip}),c5=3.141592653589793,Hd=6.283185307179586,u5=.35355339059327373,Rp=.017453292519943295,_c=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_sub($e(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s))),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"}],body:[0,[[10,[1,[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]],\"-\",\"radius\"]]]]},externals:{\"std.sqrt\":()=>$e}})&&e.f)({})),Up=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=$e(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s))),i=bt(s,t),d=__tsover_div(Hd,o),l=K(__tsover_add(__tsover_div(i,d),.5)),c=__tsover_sub(i,__tsover_mul(l,d));return __tsover_sub(__tsover_mul(n,J(c)),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"sides\"}],body:[0,[[13,\"len\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]]],[13,\"angle\",[6,\"std.atan2\",[\"dy\",\"dx\"]]],[13,\"sectorAngle\",[1,\"TWO_PI\",\"/\",\"sides\"]],[13,\"sectorIdx\",[6,\"std.floor\",[[1,[1,\"angle\",\"/\",\"sectorAngle\"],\"+\",[5,\"0.5\"]]]]],[13,\"canonicalAngle\",[1,\"angle\",\"-\",[1,\"sectorIdx\",\"*\",\"sectorAngle\"]]],[10,[1,[1,\"len\",\"*\",[6,\"std.cos\",[\"canonicalAngle\"]]],\"-\",\"radius\"]]]]},externals:{\"std.sqrt\":()=>$e,\"std.atan2\":()=>bt,TWO_PI:()=>Hd,\"std.floor\":()=>K,\"std.cos\":()=>J}})&&e.f)({})),zp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=bt(s,t),d=$e(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s))),l=__tsover_mul(r,n),c=__tsover_div(__tsover_mul(i,o),Hd),_=__tsover_sub(c,K(c)),p=W(__tsover_sub(__tsover_mul(_,2),1)),f=__tsover_add(l,__tsover_mul(__tsover_sub(r,l),p));return __tsover_sub(d,f)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"outerRadius\"},{type:\"i\",name:\"sides\"},{type:\"i\",name:\"innerRatio\"}],body:[0,[[13,\"angle\",[6,\"std.atan2\",[\"dy\",\"dx\"]]],[13,\"len\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]]],[13,\"innerRadius\",[1,\"outerRadius\",\"*\",\"innerRatio\"]],[13,\"tAngle\",[1,[1,\"angle\",\"*\",\"sides\"],\"/\",\"TWO_PI\"]],[13,\"tFrac\",[1,\"tAngle\",\"-\",[6,\"std.floor\",[\"tAngle\"]]]],[13,\"t\",[6,\"std.abs\",[[1,[1,\"tFrac\",\"*\",[5,\"2\"]],\"-\",[5,\"1\"]]]]],[13,\"boundaryR\",[1,\"innerRadius\",\"+\",[1,[1,\"outerRadius\",\"-\",\"innerRadius\"],\"*\",\"t\"]]],[10,[1,\"len\",\"-\",\"boundaryR\"]]]]},externals:{\"std.atan2\":()=>bt,\"std.sqrt\":()=>$e,TWO_PI:()=>Hd,\"std.floor\":()=>K,\"std.abs\":()=>W}})&&e.f)({})),Gp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_mul(r,n),d=$e(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s))),l=bt(s,t),c=__tsover_div(Hd,o),_=K(__tsover_add(__tsover_div(l,c),.5)),p=__tsover_sub(l,__tsover_mul(_,c)),f=W(__tsover_mul(d,O(p))),h=__tsover_mul(d,J(p)),g=__tsover_div(c5,o),x=O(g),T=J(g),S=__tsover_mul(i,x),A=__tsover_sub(__tsover_mul(i,T),r),E=f,M=__tsover_sub(h,r),$=__tsover_add(__tsover_mul(E,S),__tsover_mul(M,A)),L=__tsover_add(__tsover_mul(S,S),__tsover_mul(A,A)),B=z(__tsover_div($,L),0,1),D=__tsover_sub(f,__tsover_mul(S,B)),G=__tsover_sub(h,__tsover_add(r,__tsover_mul(A,B))),I=$e(__tsover_add(__tsover_mul(D,D),__tsover_mul(G,G))),X=__tsover_sub(__tsover_mul(S,M),__tsover_mul(A,E));return __tsover_mul(I,ir(X))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"outerRadius\"},{type:\"i\",name:\"sides\"},{type:\"i\",name:\"innerRatio\"}],body:[0,[[13,\"innerRadius\",[1,\"outerRadius\",\"*\",\"innerRatio\"]],[13,\"len\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]]],[13,\"angle\",[6,\"std.atan2\",[\"dy\",\"dx\"]]],[13,\"sectorAngle\",[1,\"TWO_PI\",\"/\",\"sides\"]],[13,\"sectorIdx\",[6,\"std.floor\",[[1,[1,\"angle\",\"/\",\"sectorAngle\"],\"+\",[5,\"0.5\"]]]]],[13,\"bn\",[1,\"angle\",\"-\",[1,\"sectorIdx\",\"*\",\"sectorAngle\"]]],[13,\"fpx\",[6,\"std.abs\",[[1,\"len\",\"*\",[6,\"std.sin\",[\"bn\"]]]]]],[13,\"fpy\",[1,\"len\",\"*\",[6,\"std.cos\",[\"bn\"]]]],[13,\"an\",[1,\"PI\",\"/\",\"sides\"]],[13,\"sinAn\",[6,\"std.sin\",[\"an\"]]],[13,\"cosAn\",[6,\"std.cos\",[\"an\"]]],[13,\"ex\",[1,\"innerRadius\",\"*\",\"sinAn\"]],[13,\"ey\",[1,[1,\"innerRadius\",\"*\",\"cosAn\"],\"-\",\"outerRadius\"]],[13,\"qx\",\"fpx\"],[13,\"qy\",[1,\"fpy\",\"-\",\"outerRadius\"]],[13,\"dotQE\",[1,[1,\"qx\",\"*\",\"ex\"],\"+\",[1,\"qy\",\"*\",\"ey\"]]],[13,\"dotEE\",[1,[1,\"ex\",\"*\",\"ex\"],\"+\",[1,\"ey\",\"*\",\"ey\"]]],[13,\"t\",[6,\"std.clamp\",[[1,\"dotQE\",\"/\",\"dotEE\"],[5,\"0\"],[5,\"1\"]]]],[13,\"nx\",[1,\"fpx\",\"-\",[1,\"ex\",\"*\",\"t\"]]],[13,\"ny\",[1,\"fpy\",\"-\",[1,\"outerRadius\",\"+\",[1,\"ey\",\"*\",\"t\"]]]],[13,\"dist\",[6,\"std.sqrt\",[[1,[1,\"nx\",\"*\",\"nx\"],\"+\",[1,\"ny\",\"*\",\"ny\"]]]]],[13,\"cross\",[1,[1,\"ex\",\"*\",\"qy\"],\"-\",[1,\"ey\",\"*\",\"qx\"]]],[10,[1,\"dist\",\"*\",[6,\"std.sign\",[\"cross\"]]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.atan2\":()=>bt,TWO_PI:()=>Hd,\"std.floor\":()=>K,\"std.abs\":()=>W,\"std.sin\":()=>O,\"std.cos\":()=>J,PI:()=>c5,\"std.clamp\":()=>z,\"std.sign\":()=>ir}})&&e.f)({})),Dp=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=$e(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s)));return __tsover_sub(W(__tsover_sub(n,r)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"thickness\"}],body:[0,[[13,\"len\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]]],[10,[1,[6,\"std.abs\",[[1,\"len\",\"-\",\"radius\"]]],\"-\",\"thickness\"]]]]},externals:{\"std.sqrt\":()=>$e,\"std.abs\":()=>W}})&&e.f)({})),Lp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=W(t),d=W(s),l=w(__tsover_sub(i,r),__tsover_sub(d,o)),c=w(__tsover_sub(d,r),__tsover_sub(i,o));return __tsover_sub(ue(l,c),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"size\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"rounding\"}],body:[0,[[13,\"px\",[6,\"std.abs\",[\"dx\"]]],[13,\"py\",[6,\"std.abs\",[\"dy\"]]],[13,\"dHoriz\",[6,\"std.max\",[[1,\"px\",\"-\",\"size\"],[1,\"py\",\"-\",\"thickness\"]]]],[13,\"dVert\",[6,\"std.max\",[[1,\"py\",\"-\",\"size\"],[1,\"px\",\"-\",\"thickness\"]]]],[10,[1,[6,\"std.min\",[\"dHoriz\",\"dVert\"]],\"-\",\"rounding\"]]]]},externals:{\"std.abs\":()=>W,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})),Fp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_add(__tsover_sub(W(t),r),n),d=__tsover_add(__tsover_sub(W(s),o),n),l=w(i,0),c=w(d,0),_=$e(__tsover_add(__tsover_mul(l,l),__tsover_mul(c,c))),p=ue(w(i,d),0);return __tsover_sub(__tsover_add(_,p),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"width\"},{type:\"i\",name:\"height\"},{type:\"i\",name:\"rounding\"}],body:[0,[[13,\"qx\",[1,[1,[6,\"std.abs\",[\"dx\"]],\"-\",\"width\"],\"+\",\"rounding\"]],[13,\"qy\",[1,[1,[6,\"std.abs\",[\"dy\"]],\"-\",\"height\"],\"+\",\"rounding\"]],[13,\"mqx\",[6,\"std.max\",[\"qx\",[5,\"0\"]]]],[13,\"mqy\",[6,\"std.max\",[\"qy\",[5,\"0\"]]]],[13,\"outerDist\",[6,\"std.sqrt\",[[1,[1,\"mqx\",\"*\",\"mqx\"],\"+\",[1,\"mqy\",\"*\",\"mqy\"]]]]],[13,\"innerDist\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",\"qy\"]],[5,\"0\"]]]],[10,[1,[1,\"outerDist\",\"+\",\"innerDist\"],\"-\",\"rounding\"]]]]},externals:{\"std.abs\":()=>W,\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.min\":()=>ue}})&&e.f)({})),Bp=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_div(t,r),i=__tsover_div(s,o),d=$e(__tsover_add(__tsover_mul(n,n),__tsover_mul(i,i)));return __tsover_mul(__tsover_sub(d,1),ue(r,o))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radiusX\"},{type:\"i\",name:\"radiusY\"}],body:[0,[[13,\"nx\",[1,\"dx\",\"/\",\"radiusX\"]],[13,\"ny\",[1,\"dy\",\"/\",\"radiusY\"]],[13,\"k\",[6,\"std.sqrt\",[[1,[1,\"nx\",\"*\",\"nx\"],\"+\",[1,\"ny\",\"*\",\"ny\"]]]]],[10,[1,[1,\"k\",\"-\",[5,\"1\"]],\"*\",[6,\"std.min\",[\"radiusX\",\"radiusY\"]]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.min\":()=>ue}})&&e.f)({})),Ip=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=W(t),i=W(s),d=__tsover_mul(r,o),l=$e(w(__tsover_sub(__tsover_mul(r,r),__tsover_mul(d,d)),0)),c=__tsover_mul(__tsover_sub(i,l),d)>__tsover_mul(n,l),_=$e(__tsover_add(__tsover_mul(n,n),__tsover_mul(__tsover_sub(i,l),__tsover_sub(i,l))));return F(__tsover_sub($e(__tsover_add(__tsover_mul(__tsover_add(n,d),__tsover_add(n,d)),__tsover_mul(i,i))),r),_,c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"spread\"}],body:[0,[[13,\"px\",[6,\"std.abs\",[\"dx\"]]],[13,\"py\",[6,\"std.abs\",[\"dy\"]]],[13,\"dd\",[1,\"radius\",\"*\",\"spread\"]],[13,\"b\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[1,\"radius\",\"*\",\"radius\"],\"-\",[1,\"dd\",\"*\",\"dd\"]],[5,\"0\"]]]]]],[13,\"cond\",[1,[1,[1,\"py\",\"-\",\"b\"],\"*\",\"dd\"],\">\",[1,\"px\",\"*\",\"b\"]]],[13,\"dist1\",[6,\"std.sqrt\",[[1,[1,\"px\",\"*\",\"px\"],\"+\",[1,[1,\"py\",\"-\",\"b\"],\"*\",[1,\"py\",\"-\",\"b\"]]]]]],[13,\"dist2\",[1,[6,\"std.sqrt\",[[1,[1,[1,\"px\",\"+\",\"dd\"],\"*\",[1,\"px\",\"+\",\"dd\"]],\"+\",[1,\"py\",\"*\",\"py\"]]]],\"-\",\"radius\"]],[10,[6,\"std.select\",[\"dist2\",\"dist1\",\"cond\"]]]]]},externals:{\"std.abs\":()=>W,\"std.sqrt\":()=>$e,\"std.max\":()=>w,\"std.select\":()=>F}})&&e.f)({})),Yp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=W(s),d=r,l=__tsover_mul(r,o),c=n,_=__tsover_div(__tsover_add(__tsover_sub(__tsover_mul(d,d),__tsover_mul(l,l)),__tsover_mul(c,c)),w(__tsover_mul(c,2),.001)),p=$e(w(__tsover_sub(__tsover_mul(d,d),__tsover_mul(_,_)),0)),f=__tsover_mul(c,__tsover_sub(__tsover_mul(t,p),__tsover_mul(i,_))),h=__tsover_mul(__tsover_mul(c,c),w(__tsover_sub(p,i),0)),g=__tsover_sub(t,_),x=__tsover_sub(i,p),T=$e(__tsover_add(__tsover_mul(g,g),__tsover_mul(x,x))),S=$e(__tsover_add(__tsover_mul(t,t),__tsover_mul(i,i))),A=__tsover_sub(t,c),E=$e(__tsover_add(__tsover_mul(A,A),__tsover_mul(i,i)));return F(w(__tsover_sub(S,d),__tsover_mul(__tsover_sub(E,l),-1)),T,f>h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"outerRadius\"},{type:\"i\",name:\"innerRatio\"},{type:\"i\",name:\"offset\"}],body:[0,[[13,\"py\",[6,\"std.abs\",[\"dy\"]]],[13,\"ra\",\"outerRadius\"],[13,\"rb\",[1,\"outerRadius\",\"*\",\"innerRatio\"]],[13,\"off\",\"offset\"],[13,\"a\",[1,[1,[1,[1,\"ra\",\"*\",\"ra\"],\"-\",[1,\"rb\",\"*\",\"rb\"]],\"+\",[1,\"off\",\"*\",\"off\"]],\"/\",[6,\"std.max\",[[1,\"off\",\"*\",[5,\"2\"]],[5,\"0.001\"]]]]],[13,\"bSq\",[6,\"std.max\",[[1,[1,\"ra\",\"*\",\"ra\"],\"-\",[1,\"a\",\"*\",\"a\"]],[5,\"0\"]]]],[13,\"b\",[6,\"std.sqrt\",[\"bSq\"]]],[13,\"lhs\",[1,\"off\",\"*\",[1,[1,\"dx\",\"*\",\"b\"],\"-\",[1,\"py\",\"*\",\"a\"]]]],[13,\"rhs\",[1,[1,\"off\",\"*\",\"off\"],\"*\",[6,\"std.max\",[[1,\"b\",\"-\",\"py\"],[5,\"0\"]]]]],[13,\"d1x\",[1,\"dx\",\"-\",\"a\"]],[13,\"d1y\",[1,\"py\",\"-\",\"b\"]],[13,\"dist1\",[6,\"std.sqrt\",[[1,[1,\"d1x\",\"*\",\"d1x\"],\"+\",[1,\"d1y\",\"*\",\"d1y\"]]]]],[13,\"lenP\",[6,\"std.sqrt\",[[1,[1,\"dx\",\"*\",\"dx\"],\"+\",[1,\"py\",\"*\",\"py\"]]]]],[13,\"innerX\",[1,\"dx\",\"-\",\"off\"]],[13,\"lenInner\",[6,\"std.sqrt\",[[1,[1,\"innerX\",\"*\",\"innerX\"],\"+\",[1,\"py\",\"*\",\"py\"]]]]],[13,\"dist2\",[6,\"std.max\",[[1,\"lenP\",\"-\",\"ra\"],[1,[1,\"lenInner\",\"-\",\"rb\"],\"*\",[4,\"-\",[5,\"1\"]]]]]],[10,[6,\"std.select\",[\"dist2\",\"dist1\",[1,\"lhs\",\">\",\"rhs\"]]]]]]},externals:{\"std.abs\":()=>W,\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.select\":()=>F}})&&e.f)({})),Wp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=W(t),d=o,l=n,c=__tsover_sub(o,r),_=__tsover_mul(n,2),p=F(o,r,s<0),f=__tsover_sub(i,ue(i,p)),h=__tsover_sub(W(s),n),g=__tsover_sub(d,i),x=__tsover_sub(l,s),T=__tsover_add(__tsover_mul(g,c),__tsover_mul(x,_)),S=w(__tsover_add(__tsover_mul(c,c),__tsover_mul(_,_)),1e-4),A=z(__tsover_div(T,S),0,1),E=__tsover_add(__tsover_sub(i,d),__tsover_mul(c,A)),M=__tsover_add(__tsover_sub(s,l),__tsover_mul(_,A)),$=F(a(1),a(-1),h<0),L=F(a(1),$,E<0),B=__tsover_add(__tsover_mul(f,f),__tsover_mul(h,h)),D=__tsover_add(__tsover_mul(E,E),__tsover_mul(M,M));return __tsover_mul(L,$e(ue(B,D)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"r1\"},{type:\"i\",name:\"r2\"},{type:\"i\",name:\"he\"}],body:[0,[[13,\"px\",[6,\"std.abs\",[\"dx\"]]],[13,\"k1x\",\"r2\"],[13,\"k1y\",\"he\"],[13,\"k2x\",[1,\"r2\",\"-\",\"r1\"]],[13,\"k2y\",[1,\"he\",\"*\",[5,\"2\"]]],[13,\"clampWidth\",[6,\"std.select\",[\"r2\",\"r1\",[1,\"dy\",\"<\",[5,\"0\"]]]]],[13,\"cax\",[1,\"px\",\"-\",[6,\"std.min\",[\"px\",\"clampWidth\"]]]],[13,\"cay\",[1,[6,\"std.abs\",[\"dy\"]],\"-\",\"he\"]],[13,\"diffX\",[1,\"k1x\",\"-\",\"px\"]],[13,\"diffY\",[1,\"k1y\",\"-\",\"dy\"]],[13,\"dotNum\",[1,[1,\"diffX\",\"*\",\"k2x\"],\"+\",[1,\"diffY\",\"*\",\"k2y\"]]],[13,\"dotDen\",[6,\"std.max\",[[1,[1,\"k2x\",\"*\",\"k2x\"],\"+\",[1,\"k2y\",\"*\",\"k2y\"]],[5,\"0.0001\"]]]],[13,\"t\",[6,\"std.clamp\",[[1,\"dotNum\",\"/\",\"dotDen\"],[5,\"0\"],[5,\"1\"]]]],[13,\"cbx\",[1,[1,\"px\",\"-\",\"k1x\"],\"+\",[1,\"k2x\",\"*\",\"t\"]]],[13,\"cby\",[1,[1,\"dy\",\"-\",\"k1y\"],\"+\",[1,\"k2y\",\"*\",\"t\"]]],[13,\"sInner\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[1,\"cay\",\"<\",[5,\"0\"]]]]],[13,\"s\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],\"sInner\",[1,\"cbx\",\"<\",[5,\"0\"]]]]],[13,\"dca\",[1,[1,\"cax\",\"*\",\"cax\"],\"+\",[1,\"cay\",\"*\",\"cay\"]]],[13,\"dcb\",[1,[1,\"cbx\",\"*\",\"cbx\"],\"+\",[1,\"cby\",\"*\",\"cby\"]]],[10,[1,\"s\",\"*\",[6,\"std.sqrt\",[[6,\"std.min\",[\"dca\",\"dcb\"]]]]]]]]},externals:{\"std.abs\":()=>W,\"std.select\":()=>F,\"std.min\":()=>ue,\"std.max\":()=>w,\"std.clamp\":()=>z,\"d.f32\":()=>a,\"std.sqrt\":()=>$e}})&&e.f)({})),Op=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_div(r,.75),n=__tsover_div(W(t),o),i=__tsover_add(__tsover_div(__tsover_mul(s,-1),o),.6),d=__tsover_sub(n,.25),l=__tsover_sub(i,.75),c=__tsover_sub($e(__tsover_add(__tsover_mul(d,d),__tsover_mul(l,l))),u5),_=__tsover_sub(i,1),p=__tsover_add(__tsover_mul(n,n),__tsover_mul(_,_)),f=__tsover_mul(w(__tsover_add(n,i),0),.5),h=__tsover_sub(n,f),g=__tsover_sub(i,f),x=__tsover_add(__tsover_mul(h,h),__tsover_mul(g,g)),T=__tsover_mul($e(ue(p,x)),ir(__tsover_sub(n,i)));return __tsover_mul(F(T,c,__tsover_add(n,i)>1),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"}],body:[0,[[13,\"S\",[1,\"radius\",\"/\",[5,\"0.75\"]]],[13,\"px\",[1,[6,\"std.abs\",[\"dx\"]],\"/\",\"S\"]],[13,\"py\",[1,[1,[1,\"dy\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"S\"],\"+\",[5,\"0.6\"]]],[13,\"ax\",[1,\"px\",\"-\",[5,\"0.25\"]]],[13,\"ay\",[1,\"py\",\"-\",[5,\"0.75\"]]],[13,\"distA\",[1,[6,\"std.sqrt\",[[1,[1,\"ax\",\"*\",\"ax\"],\"+\",[1,\"ay\",\"*\",\"ay\"]]]],\"-\",\"SQRT2_OVER_4\"]],[13,\"b1y\",[1,\"py\",\"-\",[5,\"1\"]]],[13,\"dot1\",[1,[1,\"px\",\"*\",\"px\"],\"+\",[1,\"b1y\",\"*\",\"b1y\"]]],[13,\"m\",[1,[6,\"std.max\",[[1,\"px\",\"+\",\"py\"],[5,\"0\"]]],\"*\",[5,\"0.5\"]]],[13,\"b2x\",[1,\"px\",\"-\",\"m\"]],[13,\"b2y\",[1,\"py\",\"-\",\"m\"]],[13,\"dot2v\",[1,[1,\"b2x\",\"*\",\"b2x\"],\"+\",[1,\"b2y\",\"*\",\"b2y\"]]],[13,\"distB\",[1,[6,\"std.sqrt\",[[6,\"std.min\",[\"dot1\",\"dot2v\"]]]],\"*\",[6,\"std.sign\",[[1,\"px\",\"-\",\"py\"]]]]],[10,[1,[6,\"std.select\",[\"distB\",\"distA\",[1,[1,\"px\",\"+\",\"py\"],\">\",[5,\"1\"]]]],\"*\",\"S\"]]]]},externals:{\"std.abs\":()=>W,\"std.sqrt\":()=>$e,SQRT2_OVER_4:()=>u5,\"std.max\":()=>w,\"std.min\":()=>ue,\"std.sign\":()=>ir,\"std.select\":()=>F}})&&e.f)({})),Vp=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=W(t),i=O(o),d=J(o),l=__tsover_sub($e(__tsover_add(__tsover_mul(n,n),__tsover_mul(s,s))),r),c=z(__tsover_add(__tsover_mul(n,i),__tsover_mul(s,d)),0,r),_=__tsover_sub(n,__tsover_mul(i,c)),p=__tsover_sub(s,__tsover_mul(d,c)),f=$e(__tsover_add(__tsover_mul(_,_),__tsover_mul(p,p)));return w(l,__tsover_mul(f,ir(__tsover_sub(__tsover_mul(d,n),__tsover_mul(i,s)))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"halfAngle\"}],body:[0,[[13,\"px\",[6,\"std.abs\",[\"dx\"]]],[13,\"cx\",[6,\"std.sin\",[\"halfAngle\"]]],[13,\"cy\",[6,\"std.cos\",[\"halfAngle\"]]],[13,\"l\",[1,[6,\"std.sqrt\",[[1,[1,\"px\",\"*\",\"px\"],\"+\",[1,\"dy\",\"*\",\"dy\"]]]],\"-\",\"radius\"]],[13,\"clamped\",[6,\"std.clamp\",[[1,[1,\"px\",\"*\",\"cx\"],\"+\",[1,\"dy\",\"*\",\"cy\"]],[5,\"0\"],\"radius\"]]],[13,\"mx\",[1,\"px\",\"-\",[1,\"cx\",\"*\",\"clamped\"]]],[13,\"my\",[1,\"dy\",\"-\",[1,\"cy\",\"*\",\"clamped\"]]],[13,\"m\",[6,\"std.sqrt\",[[1,[1,\"mx\",\"*\",\"mx\"],\"+\",[1,\"my\",\"*\",\"my\"]]]]],[10,[6,\"std.max\",[\"l\",[1,\"m\",\"*\",[6,\"std.sign\",[[1,[1,\"cy\",\"*\",\"px\"],\"-\",[1,\"cx\",\"*\",\"dy\"]]]]]]]]]]},externals:{\"std.abs\":()=>W,\"std.sin\":()=>O,\"std.cos\":()=>J,\"std.sqrt\":()=>$e,\"std.clamp\":()=>z,\"std.max\":()=>w,\"std.sign\":()=>ir}})&&e.f)({})),Np=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(__tsover_sub(o,r),.5),i=W(t),d=__tsover_add(__tsover_mul(s,-1),n),l=w(o,1e-4),c=__tsover_div(r,l),_=$e(w(__tsover_sub(1,__tsover_mul(c,c)),0)),p=__tsover_add(__tsover_mul(i,__tsover_mul(c,-1)),__tsover_mul(d,_)),f=__tsover_sub($e(__tsover_add(__tsover_mul(i,i),__tsover_mul(d,d))),r),h=__tsover_sub(d,o),g=$e(__tsover_add(__tsover_mul(i,i),__tsover_mul(h,h)));return F(F(__tsover_sub(__tsover_add(__tsover_mul(i,_),__tsover_mul(d,c)),r),g,p>__tsover_mul(_,o)),f,p<0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"mid\",[1,[1,\"h\",\"-\",\"radius\"],\"*\",[5,\"0.5\"]]],[13,\"qx\",[6,\"std.abs\",[\"dx\"]]],[13,\"qy\",[1,[1,\"dy\",\"*\",[4,\"-\",[5,\"1\"]]],\"+\",\"mid\"]],[13,\"hSafe\",[6,\"std.max\",[\"h\",[5,\"0.0001\"]]]],[13,\"b\",[1,\"radius\",\"/\",\"hSafe\"]],[13,\"a\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[5,\"1\"],\"-\",[1,\"b\",\"*\",\"b\"]],[5,\"0\"]]]]]],[13,\"k\",[1,[1,\"qx\",\"*\",[1,\"b\",\"*\",[4,\"-\",[5,\"1\"]]]],\"+\",[1,\"qy\",\"*\",\"a\"]]],[13,\"cap0\",[1,[6,\"std.sqrt\",[[1,[1,\"qx\",\"*\",\"qx\"],\"+\",[1,\"qy\",\"*\",\"qy\"]]]],\"-\",\"radius\"]],[13,\"qyTip\",[1,\"qy\",\"-\",\"h\"]],[13,\"cap1\",[6,\"std.sqrt\",[[1,[1,\"qx\",\"*\",\"qx\"],\"+\",[1,\"qyTip\",\"*\",\"qyTip\"]]]]],[13,\"body\",[1,[1,[1,\"qx\",\"*\",\"a\"],\"+\",[1,\"qy\",\"*\",\"b\"]],\"-\",\"radius\"]],[10,[6,\"std.select\",[[6,\"std.select\",[\"body\",\"cap1\",[1,\"k\",\">\",[1,\"a\",\"*\",\"h\"]]]],\"cap0\",[1,\"k\",\"<\",[5,\"0\"]]]]]]]},externals:{\"std.abs\":()=>W,\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.select\":()=>F}})&&e.f)({})),qp=y.fn([a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=n,d=o,l=s<0,c=F(t,__tsover_mul(t,-1),l),_=F(s,__tsover_mul(s,-1),l),p=__tsover_sub(c,i),f=__tsover_sub(_,d),h=__tsover_sub(p,z(p,__tsover_mul(r,-1),r)),g=__tsover_add(__tsover_mul(h,h),__tsover_mul(f,f)),x=__tsover_mul(f,-1),T=__tsover_sub(__tsover_mul(c,d),__tsover_mul(_,i)),S=T<0,A=F(c,__tsover_mul(c,-1),S),E=F(_,__tsover_mul(_,-1),S),M=__tsover_sub(A,r),$=__tsover_add(__tsover_mul(M,i),__tsover_mul(E,d)),L=w(__tsover_add(__tsover_mul(i,i),__tsover_mul(d,d)),1e-4),B=z(__tsover_div($,L),-1,1),D=__tsover_sub(M,__tsover_mul(i,B)),G=__tsover_sub(E,__tsover_mul(d,B)),I=ue(g,__tsover_add(__tsover_mul(D,D),__tsover_mul(G,G))),X=ue(x,__tsover_sub(__tsover_mul(r,o),W(T)));return __tsover_mul($e(I),ir(__tsover_mul(X,-1)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dx\"},{type:\"i\",name:\"dy\"},{type:\"i\",name:\"wi\"},{type:\"i\",name:\"he\"},{type:\"i\",name:\"sk\"}],body:[0,[[13,\"ex\",\"sk\"],[13,\"ey\",\"he\"],[13,\"flip1\",[1,\"dy\",\"<\",[5,\"0\"]]],[13,\"px0\",[6,\"std.select\",[\"dx\",[1,\"dx\",\"*\",[4,\"-\",[5,\"1\"]]],\"flip1\"]]],[13,\"py0\",[6,\"std.select\",[\"dy\",[1,\"dy\",\"*\",[4,\"-\",[5,\"1\"]]],\"flip1\"]]],[13,\"wx0\",[1,\"px0\",\"-\",\"ex\"]],[13,\"wy\",[1,\"py0\",\"-\",\"ey\"]],[13,\"wx\",[1,\"wx0\",\"-\",[6,\"std.clamp\",[\"wx0\",[1,\"wi\",\"*\",[4,\"-\",[5,\"1\"]]],\"wi\"]]]],[13,\"dX\",[1,[1,\"wx\",\"*\",\"wx\"],\"+\",[1,\"wy\",\"*\",\"wy\"]]],[13,\"dY\",[1,\"wy\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"s\",[1,[1,\"px0\",\"*\",\"ey\"],\"-\",[1,\"py0\",\"*\",\"ex\"]]],[13,\"flip2\",[1,\"s\",\"<\",[5,\"0\"]]],[13,\"px\",[6,\"std.select\",[\"px0\",[1,\"px0\",\"*\",[4,\"-\",[5,\"1\"]]],\"flip2\"]]],[13,\"py\",[6,\"std.select\",[\"py0\",[1,\"py0\",\"*\",[4,\"-\",[5,\"1\"]]],\"flip2\"]]],[13,\"vx0\",[1,\"px\",\"-\",\"wi\"]],[13,\"dotve\",[1,[1,\"vx0\",\"*\",\"ex\"],\"+\",[1,\"py\",\"*\",\"ey\"]]],[13,\"dotee\",[6,\"std.max\",[[1,[1,\"ex\",\"*\",\"ex\"],\"+\",[1,\"ey\",\"*\",\"ey\"]],[5,\"0.0001\"]]]],[13,\"tt\",[6,\"std.clamp\",[[1,\"dotve\",\"/\",\"dotee\"],[4,\"-\",[5,\"1\"]],[5,\"1\"]]]],[13,\"vx\",[1,\"vx0\",\"-\",[1,\"ex\",\"*\",\"tt\"]]],[13,\"vy\",[1,\"py\",\"-\",[1,\"ey\",\"*\",\"tt\"]]],[13,\"finalX\",[6,\"std.min\",[\"dX\",[1,[1,\"vx\",\"*\",\"vx\"],\"+\",[1,\"vy\",\"*\",\"vy\"]]]]],[13,\"finalY\",[6,\"std.min\",[\"dY\",[1,[1,\"wi\",\"*\",\"he\"],\"-\",[6,\"std.abs\",[\"s\"]]]]]],[10,[1,[6,\"std.sqrt\",[\"finalX\"]],\"*\",[6,\"std.sign\",[[1,\"finalY\",\"*\",[4,\"-\",[5,\"1\"]]]]]]]]]},externals:{\"std.select\":()=>F,\"std.clamp\":()=>z,\"std.max\":()=>w,\"std.min\":()=>ue,\"std.abs\":()=>W,\"std.sqrt\":()=>$e,\"std.sign\":()=>ir}})&&e.f)({})),kT=y.fn([u,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=u(__tsover_mul(r.x,o),r.y),i=u(__tsover_mul(t.x,o),__tsover_sub(1,t.y)),d=__tsover_sub(n.x,i.x),l=__tsover_sub(n.y,i.y),c=__tsover_mul(s,Rp),_=J(c),p=O(c);return u(__tsover_add(__tsover_mul(d,_),__tsover_mul(l,p)),__tsover_sub(__tsover_mul(l,_),__tsover_mul(d,p)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"dx\",[1,[7,\"aspectUV\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]]],[13,\"dy\",[1,[7,\"aspectUV\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"rotRad\",[1,\"rotation\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rdx\",[1,[1,\"dx\",\"*\",\"cosR\"],\"+\",[1,\"dy\",\"*\",\"sinR\"]]],[13,\"rdy\",[1,[1,\"dy\",\"*\",\"cosR\"],\"-\",[1,\"dx\",\"*\",\"sinR\"]]],[10,[6,\"d.vec2f\",[\"rdx\",\"rdy\"]]]]]},externals:{\"d.vec2f\":()=>u,DEG_TO_RAD:()=>Rp,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({})),V_=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({overallMask:a,strokeBlend:a}),\"ShapeMask\"),$T=y.fn([a,a,a,a],V_)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=r>0,i=o>=1.5,d=o>=.5,l=__tsover_mul(r,.5),c=__tsover_mul(r,-1),_=__tsover_mul(l,-1),p=F(F(a(0),_,d),c,i),f=F(F(r,l,d),a(0),i),h=__tsover_sub(1,ce(__tsover_sub(f,s),f,t)),g=ce(__tsover_sub(p,s),p,t);return V_({overallMask:h,strokeBlend:F(a(0),g,n)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dist\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"strokeThickness\"},{type:\"i\",name:\"strokePosition\"}],body:[0,[[13,\"hasStroke\",[1,\"strokeThickness\",\">\",[5,\"0\"]]],[13,\"isInside\",[1,\"strokePosition\",\">=\",[5,\"1.5\"]]],[13,\"isCenterOrAbove\",[1,\"strokePosition\",\">=\",[5,\"0.5\"]]],[13,\"halfThickness\",[1,\"strokeThickness\",\"*\",[5,\"0.5\"]]],[13,\"negThickness\",[1,\"strokeThickness\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"negHalf\",[1,\"halfThickness\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"strokeInner\",[6,\"std.select\",[[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],\"negHalf\",\"isCenterOrAbove\"]],\"negThickness\",\"isInside\"]]],[13,\"strokeOuter\",[6,\"std.select\",[[6,\"std.select\",[\"strokeThickness\",\"halfThickness\",\"isCenterOrAbove\"]],[6,\"d.f32\",[[5,\"0\"]]],\"isInside\"]]],[13,\"overallMask\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"strokeOuter\",\"-\",\"softness\"],\"strokeOuter\",\"dist\"]]]],[13,\"blend\",[6,\"std.smoothstep\",[[1,\"strokeInner\",\"-\",\"softness\"],\"strokeInner\",\"dist\"]]],[13,\"strokeBlend\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],\"blend\",\"hasStroke\"]]],[10,[6,\"ShapeMask\",[[104,{overallMask:\"overallMask\",strokeBlend:\"strokeBlend\"}]]]]]]},externals:{\"std.select\":()=>F,\"d.f32\":()=>a,\"std.smoothstep\":()=>ce,ShapeMask:()=>V_}})&&e.f)({}));function CT(e,t,s,r){let o=se(Xo[r]??lr,\"mixColors\",[t,s,e.member(\"strokeBlend\")]);return Ss(o.member(\"rgb\"),o.member(\"a\").mul(e.member(\"overallMask\")))}async function ky(e,t){let s=await fetch(e,{mode:\"cors\"});if(!s.ok)throw new Error(`SDF fetch failed: HTTP ${s.status}`);let r=await s.arrayBuffer(),o=512*512;if(r.byteLength===o*2){let n=new Uint16Array(r),i=Math.min(n.length,t.length);for(let d=0;d<i;d++)t[d]=n[d]/32767.5-1}else if(r.byteLength===o*4){let n=new Float32Array(r),i=Math.min(n.length,t.length);for(let d=0;d<i;d++)t[d]=n[d]}else throw new Error(`SDF binary has unexpected size (${r.byteLength} bytes); expected ${o*2} (compact) or ${o*4} (legacy). The URL may point to a non-SDF file (e.g. the raw SVG).`)}function $y(e,t){let r=new Float32Array(262144).fill(.5),o=new Uint16Array(262144),n=Ai(.5);for(let c=0;c<262144;c++)o[c]=n;let i=e.createDataTexture({width:512,height:512,format:\"r16float\",data:o,label:\"svg-sdf\"});e.onCleanup(()=>i.destroy());let d=!1,l=0;return t&&ky(t,r).then(()=>{for(let c=0;c<262144;c++)o[c]=Ai(r[c]);d=!0}).catch(c=>vi(\"[SDF] Failed to load SDF texture:\",c)),e.onBeforeRender(()=>{d&&(d=!1,i.write(o),l++)}),{kitTexture:e.registerMediaTexture(()=>i.texture),texture:i,getVersion:()=>l}}function RT(e,t){let{kitTexture:s}=$y(e,t);return r=>s.sampleLevel(r)}function UT(e,t){let o=new Float32Array(262144).fill(.5),n=new Uint16Array(262144*4),i=Ai(.5),d=Ai(1);for(let x=0;x<262144;x++)n[x*4]=i,n[x*4+3]=d;let l=e.createMediaTexture({width:512,height:512,format:\"rgba16float\",label:\"svg-sdf-grad\"});e.onCleanup(()=>l.destroy());let c=(x,T)=>{let S=Math.floor(x),A=Math.floor(T),E=x-S,M=T-A,$=I=>Math.min(Math.max(I,0),511),L=$(S),B=$(S+1),D=$(A),G=$(A+1);return o[D*512+L]*(1-E)*(1-M)+o[D*512+B]*E*(1-M)+o[G*512+L]*(1-E)*M+o[G*512+B]*E*M},_=.01,p=_*512,f=()=>{for(let x=0;x<512;x++)for(let T=0;T<512;T++){let S=x*512+T,A=o[S],E=(c(T+p,x)-A)/_,M=(c(T,x+p)-A)/_;n[S*4]=Ai(A),n[S*4+1]=Ai(E),n[S*4+2]=Ai(M)}},h=!1;t&&ky(t,o).then(()=>{f(),h=!0}).catch(x=>vi(\"[SDF] Failed to load SDF texture:\",x)),e.onBeforeRender(()=>{h&&(h=!1,l.write(n))});let g=e.registerMediaTexture(()=>l.texture);return x=>g.sampleLevel(x)}var CB=.008726646259971648;function Cy(e){return y.fn([u,a,a,a,a,a,a,a,a],b)((t=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(t.f=((s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=__tsover_sub(s.x,.5),f=__tsover_sub(s.y,.5),h=__tsover_mul(d,Rp),g=J(h),x=O(h),T=__tsover_add(__tsover_mul(p,g),__tsover_mul(f,x)),S=__tsover_sub(__tsover_mul(f,g),__tsover_mul(p,x)),A=a(0);return e===\"polygonSDF\"?A=Z(Up(T,S,r,o),_c(T,S,r),n):e===\"flowerSDF\"?A=zp(T,S,r,o,i):e===\"ringSDF\"?A=Dp(T,S,r,i):e===\"crossSDF\"?A=Lp(T,S,r,i,n):e===\"starSDF\"?A=Gp(T,S,r,o,i):e===\"roundedRectSDF\"?A=Fp(T,S,r,l,n):e===\"ellipseSDF\"?A=Bp(T,S,r,l):e===\"vesicaSDF\"?A=Ip(T,S,r,i):e===\"crescentSDF\"?A=Yp(T,S,r,i,c):e===\"trapezoidSDF\"?A=Wp(T,S,i,r,l):e===\"heartSDF\"?A=Op(T,S,r):e===\"arcSDF\"?A=Vp(T,S,r,__tsover_mul(_,.008726646259971648)):e===\"teardropSDF\"?A=Np(T,S,r,l):e===\"parallelogramSDF\"?A=qp(T,S,r,l,c):A=_c(T,S,r),b(A,0,0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"n\"},{type:\"i\",name:\"round\"},{type:\"i\",name:\"inner\"},{type:\"i\",name:\"rot\"},{type:\"i\",name:\"h\"},{type:\"i\",name:\"off\"},{type:\"i\",name:\"ap\"}],body:[0,[[13,\"dx\",[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]],[13,\"rotRad\",[1,\"rot\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rdx\",[1,[1,\"dx\",\"*\",\"cosR\"],\"+\",[1,\"dy\",\"*\",\"sinR\"]]],[13,\"rdy\",[1,[1,\"dy\",\"*\",\"cosR\"],\"-\",[1,\"dx\",\"*\",\"sinR\"]]],[12,\"dist\",[6,\"d.f32\",[[5,\"0\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"polygonSDF\"]],[2,\"dist\",\"=\",[6,\"std.mix\",[[6,\"polygonSdf\",[\"rdx\",\"rdy\",\"r\",\"n\"]],[6,\"circleSdf\",[\"rdx\",\"rdy\",\"r\"]],\"round\"]]],[11,[1,\"shapeType\",\"===\",[103,\"flowerSDF\"]],[2,\"dist\",\"=\",[6,\"flowerSdf\",[\"rdx\",\"rdy\",\"r\",\"n\",\"inner\"]]],[11,[1,\"shapeType\",\"===\",[103,\"ringSDF\"]],[2,\"dist\",\"=\",[6,\"ringSdf\",[\"rdx\",\"rdy\",\"r\",\"inner\"]]],[11,[1,\"shapeType\",\"===\",[103,\"crossSDF\"]],[2,\"dist\",\"=\",[6,\"crossSdf\",[\"rdx\",\"rdy\",\"r\",\"inner\",\"round\"]]],[11,[1,\"shapeType\",\"===\",[103,\"starSDF\"]],[2,\"dist\",\"=\",[6,\"starSdf\",[\"rdx\",\"rdy\",\"r\",\"n\",\"inner\"]]],[11,[1,\"shapeType\",\"===\",[103,\"roundedRectSDF\"]],[2,\"dist\",\"=\",[6,\"roundedRectSdf\",[\"rdx\",\"rdy\",\"r\",\"h\",\"round\"]]],[11,[1,\"shapeType\",\"===\",[103,\"ellipseSDF\"]],[2,\"dist\",\"=\",[6,\"ellipseSdf\",[\"rdx\",\"rdy\",\"r\",\"h\"]]],[11,[1,\"shapeType\",\"===\",[103,\"vesicaSDF\"]],[2,\"dist\",\"=\",[6,\"vesicaSdf\",[\"rdx\",\"rdy\",\"r\",\"inner\"]]],[11,[1,\"shapeType\",\"===\",[103,\"crescentSDF\"]],[2,\"dist\",\"=\",[6,\"crescentSdf\",[\"rdx\",\"rdy\",\"r\",\"inner\",\"off\"]]],[11,[1,\"shapeType\",\"===\",[103,\"trapezoidSDF\"]],[2,\"dist\",\"=\",[6,\"trapezoidSdf\",[\"rdx\",\"rdy\",\"inner\",\"r\",\"h\"]]],[11,[1,\"shapeType\",\"===\",[103,\"heartSDF\"]],[2,\"dist\",\"=\",[6,\"heartSdf\",[\"rdx\",\"rdy\",\"r\"]]],[11,[1,\"shapeType\",\"===\",[103,\"arcSDF\"]],[2,\"dist\",\"=\",[6,\"arcSdf\",[\"rdx\",\"rdy\",\"r\",[1,\"ap\",\"*\",\"APERTURE_TO_HALFANGLE\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"teardropSDF\"]],[2,\"dist\",\"=\",[6,\"teardropSdf\",[\"rdx\",\"rdy\",\"r\",\"h\"]]],[11,[1,\"shapeType\",\"===\",[103,\"parallelogramSDF\"]],[2,\"dist\",\"=\",[6,\"parallelogramSdf\",[\"rdx\",\"rdy\",\"r\",\"h\",\"off\"]]],[2,\"dist\",\"=\",[6,\"circleSdf\",[\"rdx\",\"rdy\",\"r\"]]]]]]]]]]]]]]]]],[10,[6,\"d.vec4f\",[\"dist\",[5,\"0\"],[5,\"0\"],[5,\"1\"]]]]]]},externals:{DEG_TO_RAD:()=>Rp,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.f32\":()=>a,shapeType:()=>e,\"std.mix\":()=>Z,polygonSdf:()=>Up,circleSdf:()=>_c,flowerSdf:()=>zp,ringSdf:()=>Dp,crossSdf:()=>Lp,starSdf:()=>Gp,roundedRectSdf:()=>Fp,ellipseSdf:()=>Bp,vesicaSdf:()=>Ip,crescentSdf:()=>Yp,trapezoidSdf:()=>Wp,heartSdf:()=>Op,arcSdf:()=>Vp,APERTURE_TO_HALFANGLE:()=>.008726646259971648,teardropSdf:()=>Np,parallelogramSdf:()=>qp,\"d.vec4f\":()=>b}})&&t.f)({})).$name(`analyticSdf_${e}`)}function zT(e,t,s=\"none\"){let r=t.radius??nt(0),o=t.sides??nt(0),n=t.rounding??nt(0),i=t.innerRatio??nt(0),d=t.rotation??nt(0),l=t.height??nt(0),c=t.offset??nt(0),_=t.aperture??nt(0),p=Cy(e);return f=>se(p,`analyticSdf_${e}`,[f,r,o,n,i,d,l,c,_])}var RB={_saRadius:{schema:a,initial:.35},_saSides:{schema:a,initial:6},_saRounding:{schema:a,initial:0},_saInnerRatio:{schema:a,initial:.4},_saRotation:{schema:a,initial:0},_saHeight:{schema:a,initial:.25},_saOffset:{schema:a,initial:.2},_saAperture:{schema:a,initial:270}};function Xp(e){let t=(s,r)=>typeof s==\"number\"?s:r;return{radius:t(e.radius,t(e.width,t(e.bottomWidth,.35))),sides:t(e.sides,6),rounding:t(e.rounding,0),innerRatio:t(e.innerRatio,t(e.thickness,t(e.spread,t(e.topWidth,t(e.topRatio,.4))))),rotation:t(e.rotation,0),height:t(e.height,.25),offset:t(e.offset,t(e.skew,.2)),aperture:t(e.aperture,270)}}function GT(e){if(e&&typeof e==\"object\")return e;if(typeof e==\"string\")try{return JSON.parse(e)}catch{return{}}return{}}function DT(e,t){let s=\"\",r=GT(t()),o=()=>{let i=Xp(r);e.setExtraField(\"_saRadius\",i.radius),e.setExtraField(\"_saSides\",i.sides),e.setExtraField(\"_saRounding\",i.rounding),e.setExtraField(\"_saInnerRatio\",i.innerRatio),e.setExtraField(\"_saRotation\",i.rotation),e.setExtraField(\"_saHeight\",i.height),e.setExtraField(\"_saOffset\",i.offset),e.setExtraField(\"_saAperture\",i.aperture)};e.onBeforeRender(()=>{let i=t();if(i&&typeof i==\"object\")r=i;else if(typeof i==\"string\"&&i!==s){s=i;try{r=JSON.parse(i)}catch{return}}o()});let n=e.uniforms;return{radius:n._saRadius,sides:n._saSides,rounding:n._saRounding,innerRatio:n._saInnerRatio,rotation:n._saRotation,height:n._saHeight,offset:n._saOffset,aperture:n._saAperture}}var oa=512,Ri={},kv=new Set,$v={};function Rm(e,t){return e?e in Ri?Ri[e]:(t&&($v[e]??=[]).push(t),kv.has(e)||(kv.add(e),UB(e)),null):null}async function UB(e){try{let t=await fetch(e,{mode:\"cors\"});if(!t.ok){Ri[e]=null;return}let s=await t.arrayBuffer(),r=oa*oa;if(s.byteLength!==r*2&&s.byteLength!==r*4){Ri[e]=null;return}let o=s.byteLength===r*2?(()=>{let c=new Uint16Array(s);return _=>c[_]/32767.5-1})():(()=>{let c=new Float32Array(s);return _=>c[_]})(),n=oa,i=oa,d=-1,l=-1;for(let c=0;c<oa;c++){let _=c*oa;for(let p=0;p<oa;p++)o(_+p)<0&&(p<n&&(n=p),p>d&&(d=p),c<i&&(i=c),c>l&&(l=c))}Ri[e]=d<0?null:{hwf:(d-n+1)/oa/2,hhf:(l-i+1)/oa/2}}catch{Ri[e]=null}finally{kv.delete(e);let t=$v[e];if(t){delete $v[e];for(let s of t)s()}}}function LT(e){return!!e&&e in Ri}var _5=1/60;function Nc(e,t,s,r,o,n){if(r===0&&o===0)return[s,0];let i=200*Math.pow(.01,r),d=2*Math.sqrt(i)*(1-o*.85),l=n>_5?Math.ceil(n/_5):1,c=n/l,_=e,p=t;for(let f=0;f<l;f++){let h=i*(s-_);p+=(h-d*p)*c,_+=p*c}return[_,p]}function zB(e){return e<1/2.75?7.5625*e*e:e<2/2.75?(e-=1.5/2.75,7.5625*e*e+.75):e<2.5/2.75?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375)}function Ry(e,t){switch(t){case\"linear\":return e;case\"quad\":return e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2;case\"expo\":return e===0?0:e===1?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2;case\"bounce\":return zB(e);default:return(1-Math.cos(Math.PI*e))/2}}function FT(e,t,s){let r=s.pixelRatio||1,o=Math.max(1,Math.floor(s.maxTextureDim/r)-1),n=Math.min(e,s.viewportWidth,o),i=Math.min(t,s.viewportHeight,o),d=Math.min(n/e,i/t,1);return{width:Math.max(1,Math.round(e*d)),height:Math.max(1,Math.round(t*d))}}function BT(e,t,s,r){return e!=null?(r-e)/1e3:t+s}function IT(e,t){let{lastRenderTime:s,isVisible:r,forceFullFrameRate:o,minInterval:n=0}=t,i=s>0?(e-s)/1e3:.016;if(s>0){let d=e-s;if(!r&&!o&&d<1e3)return{render:!1,deltaTime:i};if((r||o)&&d<Math.max(15.666666666666668,n))return{render:!1,deltaTime:i}}return{render:!0,deltaTime:Math.min(i,.1)}}async function Uy(e){try{let t=e.device?.queue;if(t&&typeof t.onSubmittedWorkDone==\"function\"){await t.onSubmittedWorkDone();return}}catch{}await new Promise(t=>setTimeout(t,16))}function YT(e){e.updateDrivers(),e.ensureComposition()&&(e.beforeRender(),e.flush(),e.render()!==!1&&e.markReady(),e.afterRender())}function WT(e){let t=null,s=n=>typeof requestAnimationFrame==\"function\"?requestAnimationFrame(n):setTimeout(()=>n(performance.now()),16),r=n=>{typeof cancelAnimationFrame==\"function\"?cancelAnimationFrame(n):clearTimeout(n)},o=()=>{e(),t!==null&&(t=s(o))};return{start(){t===null&&(t=s(o))},stop(){t!==null&&(r(t),t=null)},get running(){return t!==null}}}var OT=[\"sphere3D\",\"cube3D\",\"torus3D\",\"octahedron3D\",\"cylinder3D\",\"capsule3D\",\"cone3D\",\"pyramid3D\",\"prism3D\",\"ellipsoid3D\",\"diamond3D\",\"link3D\",\"gem3D\",\"helix3D\",\"metaballs3D\",\"dodecahedron3D\",\"hemisphere3D\",\"ribbon3D\",\"blob3D\",\"gyroscope3D\"];function VT(e){return OT.includes(e)}function NT(e){return e===\"svgExtrude3D\"}var qT={depth:.12,bevel:.02,rotX:15,rotY:30,rotZ:0};function XT(e,t){if(typeof e==\"number\")return e;if(e&&typeof e==\"object\"&&(e.type===\"auto-animate\"||e.type===\"mouse\")){let s=typeof e.outputMin==\"number\"?e.outputMin:t,r=typeof e.outputMax==\"number\"?e.outputMax:t;return Math.max(s,r)}return t}var HT={sphere3D:{radius:.35,rotX:0,rotY:0,rotZ:0},cube3D:{sizeX:.27,sizeY:.27,sizeZ:.27,rounding:.02,rotX:25,rotY:35,rotZ:0},torus3D:{radius:.3,tube:.12,rotX:55,rotY:0,rotZ:0},octahedron3D:{radius:.42,rotX:10,rotY:25,rotZ:0},cylinder3D:{radius:.22,height:.26,rounding:.02,rotX:60,rotY:0,rotZ:30},capsule3D:{radius:.16,height:.2,rotX:0,rotY:0,rotZ:35},cone3D:{radius:.3,topRadius:.02,height:.3,rotX:25,rotY:0,rotZ:15},pyramid3D:{size:.3,height:.45,rotX:-10,rotY:30,rotZ:0},prism3D:{radius:.28,height:.14,rotX:25,rotY:30,rotZ:0},ellipsoid3D:{radiusX:.38,radiusY:.22,radiusZ:.3,rotX:0,rotY:0,rotZ:20},diamond3D:{radius:.3,height:.42,rotX:15,rotY:0,rotZ:0},link3D:{radius:.18,length:.15,tube:.08,rotX:20,rotY:30,rotZ:0},gem3D:{radius:.3,height:.32,facets:8,rotX:15,rotY:0,rotZ:0},helix3D:{radius:.22,tube:.06,pitch:.16,rotX:20,rotY:0,rotZ:0},metaballs3D:{balls:4,ballRadius:.16,spread:.2,blend:.12,speed:1,rotX:0,rotY:0,rotZ:0},dodecahedron3D:{radius:.34,rotX:20,rotY:10,rotZ:0},hemisphere3D:{radius:.4,cut:0,rotX:30,rotY:0,rotZ:0},ribbon3D:{width:.15,thickness:.03,length:.38,wave:.1,waveFrequency:7,twist:140,speed:1,rotX:12,rotY:18,rotZ:0},blob3D:{radius:.3,wobble:.07,wobbliness:5,speed:1,rotX:0,rotY:0,rotZ:0},gyroscope3D:{radius:.34,width:.1,thickness:.028,rounding:.006,core:.14,speed:1,rotX:15,rotY:0,rotZ:0}};function jT(e){let t=HT[e.type]??{},s=(r,o=.3)=>XT(e[r],t[r]??o);switch(e.type){case\"cube3D\":return Math.hypot(s(\"sizeX\"),s(\"sizeY\"),s(\"sizeZ\"))+s(\"rounding\",0);case\"torus3D\":return s(\"radius\")+s(\"tube\");case\"cylinder3D\":return Math.hypot(s(\"radius\"),s(\"height\"))+s(\"rounding\",0);case\"capsule3D\":return s(\"height\")+s(\"radius\");case\"cone3D\":return Math.hypot(Math.max(s(\"radius\"),s(\"topRadius\")),s(\"height\"));case\"pyramid3D\":return Math.hypot(s(\"size\")*Math.SQRT2,s(\"height\")*.5);case\"prism3D\":return Math.hypot(s(\"radius\")*1.1548,s(\"height\"));case\"ellipsoid3D\":return Math.max(s(\"radiusX\"),s(\"radiusY\"),s(\"radiusZ\"));case\"diamond3D\":return Math.max(s(\"radius\"),s(\"height\"));case\"link3D\":return s(\"length\")+s(\"radius\")+s(\"tube\");case\"gem3D\":return Math.max(s(\"radius\"),s(\"height\"));case\"helix3D\":return Math.hypot(s(\"radius\")+s(\"tube\"),s(\"pitch\")*3*.5+s(\"tube\"));case\"metaballs3D\":return s(\"spread\")+s(\"ballRadius\",.16)+s(\"blend\",.12);case\"dodecahedron3D\":return s(\"radius\")*1.32;case\"hemisphere3D\":return s(\"radius\");case\"ribbon3D\":return Math.hypot(s(\"length\",.38),s(\"wave\",.1)*1.2+Math.hypot(s(\"width\",.15),s(\"thickness\",.03)))+.01;case\"blob3D\":return s(\"radius\",.3)+s(\"wobble\",.07)+.02;case\"gyroscope3D\":return s(\"radius\",.34)+s(\"thickness\",.028)*.5+s(\"width\",.1)*.5+s(\"rounding\",.006);default:return s(\"radius\",.35)}}var Ds={propBindings:{x:{prop:\"center\",as:\"position-x\"},y:{prop:\"center\",as:\"position-y\"},rotation:{prop:\"rotation\",as:\"degrees\"}},computeBounds(e,t,s){let r=e.scale??1,o=typeof e.center?.x==\"number\"?e.center.x:.5,n=typeof e.center?.y==\"number\"?e.center.y:.5,{hwf:i,hhf:d}=Cv(e),l=r*s;return{centerXPx:o*t,centerYPx:n*s,widthPx:2*i*l,heightPx:2*d*l,rotationDeg:e.rotation??0}},writeBounds(e,t,s,r){let o={...t.center??{x:.5,y:.5},x:e.centerXPx/s,y:e.centerYPx/r},n=t.scale??1,i=GB(t)?Hp(t.shape):null;if(i&&n>0)return{center:o,rotation:e.rotationDeg,shape:JSON.stringify({...i,radius:Math.max(.001,e.widthPx/(2*n*r)),height:Math.max(.001,e.heightPx/(2*n*r))})};let{hwf:d}=Cv(t);return{center:o,scale:d>0?Math.max(.01,e.widthPx/(2*d*r)):.01,rotation:e.rotationDeg}}},Nl=new Map;function Hp(e){if(typeof e!=\"string\")return e??null;if(Nl.has(e))return Nl.get(e);let t=null;try{t=JSON.parse(e)}catch{t=null}return Nl.size>=64&&Nl.clear(),Nl.set(e,t),t}function GB(e){if(e.shapeSdfUrl)return!1;let t=Hp(e.shape)?.type;return t===\"roundedRectSDF\"||t===\"ellipseSDF\"}function Cv(e){if(e.shapeSdfUrl){let r=e._shapeBounds??Rm(e.shapeSdfUrl),o=r&&typeof r.hwf==\"number\"&&typeof r.hhf==\"number\"?{hwf:r.hwf,hhf:r.hhf}:{hwf:.5,hhf:.5},n=e.shapeType;if(typeof n==\"string\"&&NT(n)){let i=Hp(e.shape)??{},d=c=>XT(i[c],qT[c]??0),l=Math.hypot(o.hwf,o.hhf,d(\"depth\")*.5)+d(\"bevel\")+.02;return{hwf:l,hhf:l}}return o}let t=Hp(e.shape);if(!t||typeof t!=\"object\")return{hwf:.5,hhf:.5};if(typeof t.type==\"string\"&&VT(t.type)){let r=jT(t);return{hwf:r,hhf:r}}let s=typeof t.radius==\"number\"?t.radius:.35;switch(t.type){case\"roundedRectSDF\":case\"ellipseSDF\":return{hwf:s,hhf:typeof t.height==\"number\"?t.height:s};case\"ringSDF\":{let r=typeof t.thickness==\"number\"?t.thickness:0;return{hwf:s+r,hhf:s+r}}case\"trapezoidSDF\":{let r=typeof t.bottomWidth==\"number\"?t.bottomWidth:.3,o=typeof t.topWidth==\"number\"?t.topWidth:.2,n=typeof t.height==\"number\"?t.height:.25;return{hwf:Math.max(r,o),hhf:n}}case\"vesicaSDF\":{let r=typeof t.spread==\"number\"?Math.min(1,Math.max(0,t.spread)):.4;return{hwf:s*(1-r),hhf:s*Math.sqrt(Math.max(0,1-r*r))}}case\"teardropSDF\":return{hwf:s,hhf:((typeof t.height==\"number\"?t.height:.4)+s)/2};case\"parallelogramSDF\":{let r=typeof t.width==\"number\"?t.width:.32,o=typeof t.height==\"number\"?t.height:.22,n=typeof t.skew==\"number\"?t.skew:0;return{hwf:r+Math.abs(n),hhf:o}}default:return{hwf:s,hhf:s}}}function DB(e,t){if(e)return e;let s=t;if(typeof t==\"string\")try{s=JSON.parse(t)}catch{return\"circleSDF\"}if(s&&typeof s==\"object\"){let r=s.type;if(typeof r==\"string\"&&r)return r}return\"circleSDF\"}var ni=Pn({HELIX_TURNS:()=>3,MAX_METABALLS:()=>8,MarchParams:()=>va,RotStruct:()=>qc,SHAPE3D_DEFAULTS:()=>jp,SHAPE3D_TYPES:()=>KT,SVG3D_DEFAULTS:()=>QT,SVG3D_TYPES:()=>LB,SampleParams:()=>Qv,VOLUMETRIC_FIELD_EXTRA_FIELDS:()=>OB,VOLUMETRIC_FIELD_FORMAT:()=>zm,VOLUMETRIC_FIELD_RES:()=>tS,VOLUMETRIC_FIELD_RES_MOBILE:()=>768,boxFaceUV:()=>QB,buildFieldSampleGraph:()=>WB,buildFieldSampleGraphArgs:()=>Fy,buildRaymarchedField:()=>IB,buildRaymarchedFieldFn:()=>Dy,buildVolumetricFieldKernel:()=>rS,buildVolumetricFieldSampler:()=>aS,capsuleSurfaceUV:()=>e8,createAnalytic2dExtrudeSetup:()=>NB,createAnalytic3dSdfSetup:()=>iS,createSvg3dSdfSetup:()=>dS,createVolumetricFieldCompute:()=>oS,createVolumetricFieldComputeNode:()=>qB,eulerRotatePacked:()=>Js,is3dShapeType:()=>Um,isMobileGpuViewport:()=>No,isSvg3dShapeType:()=>zy,isVolumetricShapeType:()=>ZT,makeVolumetricFieldLayout:()=>Ly,makeVolumetricSvgFieldLayout:()=>nS,mobiusSurfaceUV:()=>s8,packedParamExtraFields:()=>n8,paramBoxSdf:()=>ZB,paramCapsuleSdf:()=>JB,paramMobiusSdf:()=>t8,paramSphereSdf:()=>XB,paramTorusSdf:()=>jB,paramTwistedRibbonSdf:()=>r8,resolveActiveFieldRes:()=>sS,resolveShapeFieldSampler:()=>VB,resolveShapeSubProp:()=>Gy,resolveVolumetricFieldRes:()=>Xc,rotateVec3:()=>N_,rotateVecCpu:()=>Rv,sdBicone:()=>Ec,sdCappedCone:()=>Fv,sdCapsule:()=>Lv,sdCutSphere:()=>Hv,sdDodecahedron:()=>Xv,sdEllipsoid:()=>Yv,sdFlatBand:()=>sc,sdGem:()=>Vv,sdGyroscope:()=>Zv,sdHelix:()=>Nv,sdHexPrism:()=>Iv,sdLink:()=>Wv,sdMetaballs:()=>qv,sdOctahedron:()=>Gv,sdPyramid:()=>Bv,sdRibbon:()=>jv,sdRoundBox:()=>Ac,sdRoundCylinder:()=>Dv,sdSphere:()=>Uv,sdTorus:()=>zv,sdWobbleBlob:()=>Kv,shape3dBoundingRadius:()=>eS,shapeSubPropMax:()=>JT,smin:()=>Ov,sphereSurfaceUV:()=>HB,torusSurfaceUV:()=>KB,twistedRibbonSurfaceUV:()=>o8}),p5=3.141592653589793,Ui=6.283185307179586,KT=[\"sphere3D\",\"cube3D\",\"torus3D\",\"octahedron3D\",\"cylinder3D\",\"capsule3D\",\"cone3D\",\"pyramid3D\",\"prism3D\",\"ellipsoid3D\",\"diamond3D\",\"link3D\",\"gem3D\",\"helix3D\",\"metaballs3D\",\"dodecahedron3D\",\"hemisphere3D\",\"ribbon3D\",\"blob3D\",\"gyroscope3D\"];function Um(e){return KT.includes(e)}var LB=[\"svgExtrude3D\"];function zy(e){return e===\"svgExtrude3D\"}function ZT(e){return Um(e)||zy(e)}var QT={depth:.12,bevel:.02,rotX:15,rotY:30,rotZ:0},FB=e=>e<1/2.75?7.5625*e*e:e<2/2.75?(e-=1.5/2.75,7.5625*e*e+.75):e<2.5/2.75?(e-=2.25/2.75,7.5625*e*e+.9375):(e-=2.625/2.75,7.5625*e*e+.984375),BB=(e,t)=>{switch(t){case\"linear\":return e;case\"quad\":return e<.5?2*e*e:1-Math.pow(-2*e+2,2)/2;case\"expo\":return e===0?0:e===1?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2;case\"bounce\":return FB(e);default:return(1-Math.cos(Math.PI*e))/2}};function Gy(e,t,s,r){if(typeof e==\"number\")return e;if(e&&typeof e==\"object\"){if(e.type===\"auto-animate\"){let o=(s.elapsed*(e.speed??1)*.2%1+1)%1,n=BB(e.mode===\"loop\"?o:o<.5?o*2:(1-o)*2,e.easing??e.waveform??\"sine\"),i=typeof e.outputMin==\"number\"?e.outputMin:t;return i+n*((typeof e.outputMax==\"number\"?e.outputMax:t)-i)}if(e.type===\"mouse\"){let o=e.axis===\"y\"?s.pointerY:s.pointerX,n=s.springs.get(r);n||(n={current:o,velocity:0},s.springs.set(r,n));let[i,d]=Nc(n.current,n.velocity,o,e.smoothing??0,e.momentum??0,s.deltaTime);n.current=i,n.velocity=d;let l=Math.max(.001,i),c=typeof e.outputMin==\"number\"?e.outputMin:t,_=typeof e.outputMax==\"number\"?e.outputMax:t,p=Math.pow(2,-(e.curve??0)*2);return c+Math.pow(l,p)*(_-c)}}return t}function JT(e,t){if(typeof e==\"number\")return e;if(e&&typeof e==\"object\"&&(e.type===\"auto-animate\"||e.type===\"mouse\")){let s=typeof e.outputMin==\"number\"?e.outputMin:t,r=typeof e.outputMax==\"number\"?e.outputMax:t;return Math.max(s,r)}return t}var jp={sphere3D:{radius:.35,rotX:0,rotY:0,rotZ:0},cube3D:{sizeX:.27,sizeY:.27,sizeZ:.27,rounding:.02,rotX:25,rotY:35,rotZ:0},torus3D:{radius:.3,tube:.12,rotX:55,rotY:0,rotZ:0},octahedron3D:{radius:.42,rotX:10,rotY:25,rotZ:0},cylinder3D:{radius:.22,height:.26,rounding:.02,rotX:60,rotY:0,rotZ:30},capsule3D:{radius:.16,height:.2,rotX:0,rotY:0,rotZ:35},cone3D:{radius:.3,topRadius:.02,height:.3,rotX:25,rotY:0,rotZ:15},pyramid3D:{size:.3,height:.45,rotX:-10,rotY:30,rotZ:0},prism3D:{radius:.28,height:.14,rotX:25,rotY:30,rotZ:0},ellipsoid3D:{radiusX:.38,radiusY:.22,radiusZ:.3,rotX:0,rotY:0,rotZ:20},diamond3D:{radius:.3,height:.42,rotX:15,rotY:0,rotZ:0},link3D:{radius:.18,length:.15,tube:.08,rotX:20,rotY:30,rotZ:0},gem3D:{radius:.3,height:.32,facets:8,rotX:15,rotY:0,rotZ:0},helix3D:{radius:.22,tube:.06,pitch:.16,rotX:20,rotY:0,rotZ:0},metaballs3D:{balls:4,ballRadius:.16,spread:.2,blend:.12,speed:1,rotX:0,rotY:0,rotZ:0},dodecahedron3D:{radius:.34,rotX:20,rotY:10,rotZ:0},hemisphere3D:{radius:.4,cut:0,rotX:30,rotY:0,rotZ:0},ribbon3D:{width:.15,thickness:.03,length:.38,wave:.1,waveFrequency:7,twist:140,speed:1,rotX:12,rotY:18,rotZ:0},blob3D:{radius:.3,wobble:.07,wobbliness:5,speed:1,rotX:0,rotY:0,rotZ:0},gyroscope3D:{radius:.34,width:.1,thickness:.028,rounding:.006,core:.14,speed:1,rotX:15,rotY:0,rotZ:0}};function eS(e){let t=jp[e.type]??{},s=(r,o=.3)=>JT(e[r],t[r]??o);switch(e.type){case\"cube3D\":return Math.hypot(s(\"sizeX\"),s(\"sizeY\"),s(\"sizeZ\"))+s(\"rounding\",0);case\"torus3D\":return s(\"radius\")+s(\"tube\");case\"cylinder3D\":return Math.hypot(s(\"radius\"),s(\"height\"))+s(\"rounding\",0);case\"capsule3D\":return s(\"height\")+s(\"radius\");case\"cone3D\":return Math.hypot(Math.max(s(\"radius\"),s(\"topRadius\")),s(\"height\"));case\"pyramid3D\":return Math.hypot(s(\"size\")*Math.SQRT2,s(\"height\")*.5);case\"prism3D\":return Math.hypot(s(\"radius\")*1.1548,s(\"height\"));case\"ellipsoid3D\":return Math.max(s(\"radiusX\"),s(\"radiusY\"),s(\"radiusZ\"));case\"diamond3D\":return Math.max(s(\"radius\"),s(\"height\"));case\"link3D\":return s(\"length\")+s(\"radius\")+s(\"tube\");case\"gem3D\":return Math.max(s(\"radius\"),s(\"height\"));case\"helix3D\":return Math.hypot(s(\"radius\")+s(\"tube\"),s(\"pitch\")*3*.5+s(\"tube\"));case\"metaballs3D\":return s(\"spread\")+s(\"ballRadius\",.16)+s(\"blend\",.12);case\"dodecahedron3D\":return s(\"radius\")*1.32;case\"hemisphere3D\":return s(\"radius\");case\"ribbon3D\":return Math.hypot(s(\"length\",.38),s(\"wave\",.1)*1.2+Math.hypot(s(\"width\",.15),s(\"thickness\",.03)))+.01;case\"blob3D\":return s(\"radius\",.3)+s(\"wobble\",.07)+.02;case\"gyroscope3D\":return s(\"radius\",.34)+s(\"thickness\",.028)*.5+s(\"width\",.1)*.5+s(\"rounding\",.006);default:return s(\"radius\",.35)}}function Rv(e,t,s,r){let o=e*r.cy+s*r.sy,n=-e*r.sy+s*r.cy,i=t*r.cx-n*r.sx,d=t*r.sx+n*r.cx;return{x:o*r.cz-i*r.sz,y:o*r.sz+i*r.cz,z:d}}var Uv=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_sub(te(t),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"}],body:[0,[[10,[1,[6,\"std.length\",[\"p\"]],\"-\",\"r\"]]]]},externals:{\"std.length\":()=>te}})&&e.f)({})),Ac=y.fn([v,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=__tsover_add(__tsover_sub(W(t.x),s),n),d=__tsover_add(__tsover_sub(W(t.y),r),n),l=__tsover_add(__tsover_sub(W(t.z),o),n),c=te(v(w(i,0),w(d,0),w(l,0))),_=ue(w(i,w(d,l)),0);return __tsover_sub(__tsover_add(c,_),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"hx\"},{type:\"i\",name:\"hy\"},{type:\"i\",name:\"hz\"},{type:\"i\",name:\"rounding\"}],body:[0,[[13,\"qx\",[1,[1,[6,\"std.abs\",[[7,\"p\",\"x\"]]],\"-\",\"hx\"],\"+\",\"rounding\"]],[13,\"qy\",[1,[1,[6,\"std.abs\",[[7,\"p\",\"y\"]]],\"-\",\"hy\"],\"+\",\"rounding\"]],[13,\"qz\",[1,[1,[6,\"std.abs\",[[7,\"p\",\"z\"]]],\"-\",\"hz\"],\"+\",\"rounding\"]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec3f\",[[6,\"std.max\",[\"qx\",[5,\"0\"]]],[6,\"std.max\",[\"qy\",[5,\"0\"]]],[6,\"std.max\",[\"qz\",[5,\"0\"]]]]]]]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",[6,\"std.max\",[\"qy\",\"qz\"]]]],[5,\"0\"]]]],[10,[1,[1,\"outer\",\"+\",\"inner\"],\"-\",\"rounding\"]]]]},externals:{\"std.abs\":()=>W,\"std.length\":()=>te,\"d.vec3f\":()=>v,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})),zv=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_sub(te(u(t.x,t.z)),s);return __tsover_sub(te(u(o,t.y)),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"ringR\"},{type:\"i\",name:\"tubeR\"}],body:[0,[[13,\"qx\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]],\"-\",\"ringR\"]],[10,[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"qx\",[7,\"p\",\"y\"]]]]],\"-\",\"tubeR\"]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})),Gv=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_mul(__tsover_sub(__tsover_add(__tsover_add(W(t.x),W(t.y)),W(t.z)),s),.57735027)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"s\"}],body:[0,[[10,[1,[1,[1,[1,[6,\"std.abs\",[[7,\"p\",\"x\"]]],\"+\",[6,\"std.abs\",[[7,\"p\",\"y\"]]]],\"+\",[6,\"std.abs\",[[7,\"p\",\"z\"]]]],\"-\",\"s\"],\"*\",[5,\"0.57735027\"]]]]]},externals:{\"std.abs\":()=>W}})&&e.f)({})),Dv=y.fn([v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_add(__tsover_sub(te(u(t.x,t.z)),s),o),i=__tsover_add(__tsover_sub(W(t.y),r),o),d=ue(w(n,i),0),l=te(u(w(n,0),w(i,0)));return __tsover_sub(__tsover_add(d,l),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"h\"},{type:\"i\",name:\"rounding\"}],body:[0,[[13,\"dx\",[1,[1,[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]],\"-\",\"r\"],\"+\",\"rounding\"]],[13,\"dy\",[1,[1,[6,\"std.abs\",[[7,\"p\",\"y\"]]],\"-\",\"h\"],\"+\",\"rounding\"]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"dx\",\"dy\"]],[5,\"0\"]]]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"dx\",[5,\"0\"]]],[6,\"std.max\",[\"dy\",[5,\"0\"]]]]]]]],[10,[1,[1,\"inner\",\"+\",\"outer\"],\"-\",\"rounding\"]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.max\":()=>w}})&&e.f)({})),Lv=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=z(t.y,__tsover_mul(r,-1),r);return __tsover_sub(te(v(t.x,__tsover_sub(t.y,o),t.z)),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"cyc\",[6,\"std.clamp\",[[7,\"p\",\"y\"],[1,\"h\",\"*\",[4,\"-\",[5,\"1\"]]],\"h\"]]],[10,[1,[6,\"std.length\",[[6,\"d.vec3f\",[[7,\"p\",\"x\"],[1,[7,\"p\",\"y\"],\"-\",\"cyc\"],[7,\"p\",\"z\"]]]]],\"-\",\"r\"]]]]},externals:{\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec3f\":()=>v}})&&e.f)({})),Fv=y.fn([v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=te(u(t.x,t.z)),i=t.y,d=__tsover_sub(r,s),l=__tsover_mul(o,2),c=__tsover_sub(n,ue(n,F(r,s,i<0))),_=__tsover_sub(W(i),o),p=__tsover_add(__tsover_mul(__tsover_sub(r,n),d),__tsover_mul(__tsover_sub(o,i),l)),f=w(__tsover_add(__tsover_mul(d,d),__tsover_mul(l,l)),1e-6),h=z(__tsover_div(p,f),0,1),g=__tsover_add(__tsover_sub(n,r),__tsover_mul(d,h)),x=__tsover_add(__tsover_sub(i,o),__tsover_mul(l,h)),T=F(a(1),a(-1),_<0),S=F(a(1),T,g<0),A=__tsover_add(__tsover_mul(c,c),__tsover_mul(_,_)),E=__tsover_add(__tsover_mul(g,g),__tsover_mul(x,x));return __tsover_mul(S,$e(ue(A,E)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r1\"},{type:\"i\",name:\"r2\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"qx\",[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]]],[13,\"qy\",[7,\"p\",\"y\"]],[13,\"k2x\",[1,\"r2\",\"-\",\"r1\"]],[13,\"k2y\",[1,\"h\",\"*\",[5,\"2\"]]],[13,\"cax\",[1,\"qx\",\"-\",[6,\"std.min\",[\"qx\",[6,\"std.select\",[\"r2\",\"r1\",[1,\"qy\",\"<\",[5,\"0\"]]]]]]]],[13,\"cay\",[1,[6,\"std.abs\",[\"qy\"]],\"-\",\"h\"]],[13,\"dotNum\",[1,[1,[1,\"r2\",\"-\",\"qx\"],\"*\",\"k2x\"],\"+\",[1,[1,\"h\",\"-\",\"qy\"],\"*\",\"k2y\"]]],[13,\"dotDen\",[6,\"std.max\",[[1,[1,\"k2x\",\"*\",\"k2x\"],\"+\",[1,\"k2y\",\"*\",\"k2y\"]],[5,\"0.000001\"]]]],[13,\"t\",[6,\"std.clamp\",[[1,\"dotNum\",\"/\",\"dotDen\"],[5,\"0\"],[5,\"1\"]]]],[13,\"cbx\",[1,[1,\"qx\",\"-\",\"r2\"],\"+\",[1,\"k2x\",\"*\",\"t\"]]],[13,\"cby\",[1,[1,\"qy\",\"-\",\"h\"],\"+\",[1,\"k2y\",\"*\",\"t\"]]],[13,\"sInner\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[1,\"cay\",\"<\",[5,\"0\"]]]]],[13,\"s\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],\"sInner\",[1,\"cbx\",\"<\",[5,\"0\"]]]]],[13,\"dca\",[1,[1,\"cax\",\"*\",\"cax\"],\"+\",[1,\"cay\",\"*\",\"cay\"]]],[13,\"dcb\",[1,[1,\"cbx\",\"*\",\"cbx\"],\"+\",[1,\"cby\",\"*\",\"cby\"]]],[10,[1,\"s\",\"*\",[6,\"std.sqrt\",[[6,\"std.min\",[\"dca\",\"dcb\"]]]]]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.min\":()=>ue,\"std.select\":()=>F,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.clamp\":()=>z,\"d.f32\":()=>a,\"std.sqrt\":()=>$e}})&&e.f)({})),Bv=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(r,.5),n=$e(__tsover_add(__tsover_mul(r,r),__tsover_mul(s,s))),i=__tsover_div(__tsover_add(__tsover_mul(r,W(t.x)),__tsover_mul(s,__tsover_sub(t.y,o))),n),d=__tsover_div(__tsover_add(__tsover_mul(r,W(t.z)),__tsover_mul(s,__tsover_sub(t.y,o))),n),l=__tsover_sub(__tsover_mul(t.y,-1),o);return w(w(i,d),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"ht\"}],body:[0,[[13,\"h2\",[1,\"ht\",\"*\",[5,\"0.5\"]]],[13,\"denom\",[6,\"std.sqrt\",[[1,[1,\"ht\",\"*\",\"ht\"],\"+\",[1,\"b\",\"*\",\"b\"]]]]],[13,\"dx\",[1,[1,[1,\"ht\",\"*\",[6,\"std.abs\",[[7,\"p\",\"x\"]]]],\"+\",[1,\"b\",\"*\",[1,[7,\"p\",\"y\"],\"-\",\"h2\"]]],\"/\",\"denom\"]],[13,\"dz\",[1,[1,[1,\"ht\",\"*\",[6,\"std.abs\",[[7,\"p\",\"z\"]]]],\"+\",[1,\"b\",\"*\",[1,[7,\"p\",\"y\"],\"-\",\"h2\"]]],\"/\",\"denom\"]],[13,\"dBase\",[1,[1,[7,\"p\",\"y\"],\"*\",[4,\"-\",[5,\"1\"]]],\"-\",\"h2\"]],[10,[6,\"std.max\",[[6,\"std.max\",[\"dx\",\"dz\"]],\"dBase\"]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.abs\":()=>W,\"std.max\":()=>w}})&&e.f)({})),Iv=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=-.8660254,n=.5,i=.57735,d=W(t.x),l=W(t.y),c=W(t.z),_=__tsover_mul(ue(__tsover_add(__tsover_mul(o,d),__tsover_mul(n,l)),0),2),p=__tsover_sub(d,__tsover_mul(_,o)),f=__tsover_sub(l,__tsover_mul(_,n)),h=z(p,__tsover_mul(__tsover_mul(i,s),-1),__tsover_mul(i,s)),g=__tsover_sub(p,h),x=__tsover_sub(f,s),T=__tsover_mul($e(__tsover_add(__tsover_mul(g,g),__tsover_mul(x,x))),ir(__tsover_sub(f,s))),S=__tsover_sub(c,r),A=ue(w(T,S),0),E=te(u(w(T,0),w(S,0)));return __tsover_add(A,E)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"he\"}],body:[0,[[13,\"kx\",[4,\"-\",[5,\"0.8660254\"]]],[13,\"ky\",[5,\"0.5\"]],[13,\"kz\",[5,\"0.57735\"]],[13,\"ax\",[6,\"std.abs\",[[7,\"p\",\"x\"]]]],[13,\"ay\",[6,\"std.abs\",[[7,\"p\",\"y\"]]]],[13,\"az\",[6,\"std.abs\",[[7,\"p\",\"z\"]]]],[13,\"dk\",[1,[6,\"std.min\",[[1,[1,\"kx\",\"*\",\"ax\"],\"+\",[1,\"ky\",\"*\",\"ay\"]],[5,\"0\"]]],\"*\",[5,\"2\"]]],[13,\"px\",[1,\"ax\",\"-\",[1,\"dk\",\"*\",\"kx\"]]],[13,\"py\",[1,\"ay\",\"-\",[1,\"dk\",\"*\",\"ky\"]]],[13,\"cx\",[6,\"std.clamp\",[\"px\",[1,[1,\"kz\",\"*\",\"r\"],\"*\",[4,\"-\",[5,\"1\"]]],[1,\"kz\",\"*\",\"r\"]]]],[13,\"ex\",[1,\"px\",\"-\",\"cx\"]],[13,\"ey\",[1,\"py\",\"-\",\"r\"]],[13,\"dHex\",[1,[6,\"std.sqrt\",[[1,[1,\"ex\",\"*\",\"ex\"],\"+\",[1,\"ey\",\"*\",\"ey\"]]]],\"*\",[6,\"std.sign\",[[1,\"py\",\"-\",\"r\"]]]]],[13,\"dZ\",[1,\"az\",\"-\",\"he\"]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"dHex\",\"dZ\"]],[5,\"0\"]]]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"dHex\",[5,\"0\"]]],[6,\"std.max\",[\"dZ\",[5,\"0\"]]]]]]]],[10,[1,\"inner\",\"+\",\"outer\"]]]]},externals:{\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.clamp\":()=>z,\"std.sqrt\":()=>$e,\"std.sign\":()=>ir,\"std.max\":()=>w,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})),Yv=y.fn([v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=te(v(__tsover_div(t.x,s),__tsover_div(t.y,r),__tsover_div(t.z,o))),i=te(v(__tsover_div(t.x,__tsover_mul(s,s)),__tsover_div(t.y,__tsover_mul(r,r)),__tsover_div(t.z,__tsover_mul(o,o))));return __tsover_div(__tsover_mul(n,__tsover_sub(n,1)),w(i,1e-6))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rx\"},{type:\"i\",name:\"ry\"},{type:\"i\",name:\"rz\"}],body:[0,[[13,\"k0\",[6,\"std.length\",[[6,\"d.vec3f\",[[1,[7,\"p\",\"x\"],\"/\",\"rx\"],[1,[7,\"p\",\"y\"],\"/\",\"ry\"],[1,[7,\"p\",\"z\"],\"/\",\"rz\"]]]]]],[13,\"k1\",[6,\"std.length\",[[6,\"d.vec3f\",[[1,[7,\"p\",\"x\"],\"/\",[1,\"rx\",\"*\",\"rx\"]],[1,[7,\"p\",\"y\"],\"/\",[1,\"ry\",\"*\",\"ry\"]],[1,[7,\"p\",\"z\"],\"/\",[1,\"rz\",\"*\",\"rz\"]]]]]]],[10,[1,[1,\"k0\",\"*\",[1,\"k0\",\"-\",[5,\"1\"]]],\"/\",[6,\"std.max\",[\"k1\",[5,\"0.000001\"]]]]]]]},externals:{\"std.length\":()=>te,\"d.vec3f\":()=>v,\"std.max\":()=>w}})&&e.f)({})),Ec=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=te(u(t.x,t.z)),n=W(t.y),i=__tsover_mul(s,-1),d=r,l=__tsover_sub(o,s),c=n,_=w(__tsover_add(__tsover_mul(i,i),__tsover_mul(d,d)),1e-6),p=z(__tsover_div(__tsover_add(__tsover_mul(l,i),__tsover_mul(c,d)),_),0,1),f=__tsover_sub(l,__tsover_mul(i,p)),h=__tsover_sub(c,__tsover_mul(d,p)),g=$e(__tsover_add(__tsover_mul(f,f),__tsover_mul(h,h)));return __tsover_mul(g,ir(__tsover_sub(__tsover_add(__tsover_mul(r,o),__tsover_mul(s,n)),__tsover_mul(s,r))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"qx\",[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]]],[13,\"qy\",[6,\"std.abs\",[[7,\"p\",\"y\"]]]],[13,\"abx\",[1,\"r\",\"*\",[4,\"-\",[5,\"1\"]]]],[13,\"aby\",\"h\"],[13,\"apx\",[1,\"qx\",\"-\",\"r\"]],[13,\"apy\",\"qy\"],[13,\"den\",[6,\"std.max\",[[1,[1,\"abx\",\"*\",\"abx\"],\"+\",[1,\"aby\",\"*\",\"aby\"]],[5,\"0.000001\"]]]],[13,\"t\",[6,\"std.clamp\",[[1,[1,[1,\"apx\",\"*\",\"abx\"],\"+\",[1,\"apy\",\"*\",\"aby\"]],\"/\",\"den\"],[5,\"0\"],[5,\"1\"]]]],[13,\"dxx\",[1,\"apx\",\"-\",[1,\"abx\",\"*\",\"t\"]]],[13,\"dyy\",[1,\"apy\",\"-\",[1,\"aby\",\"*\",\"t\"]]],[13,\"dist\",[6,\"std.sqrt\",[[1,[1,\"dxx\",\"*\",\"dxx\"],\"+\",[1,\"dyy\",\"*\",\"dyy\"]]]]],[10,[1,\"dist\",\"*\",[6,\"std.sign\",[[1,[1,[1,\"h\",\"*\",\"qx\"],\"+\",[1,\"r\",\"*\",\"qy\"]],\"-\",[1,\"r\",\"*\",\"h\"]]]]]]]]},externals:{\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.abs\":()=>W,\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.sqrt\":()=>$e,\"std.sign\":()=>ir}})&&e.f)({})),Wv=y.fn([v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=w(__tsover_sub(W(t.y),s),0),i=__tsover_sub(te(u(t.x,n)),r);return __tsover_sub(te(u(i,t.z)),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"le\"},{type:\"i\",name:\"r1\"},{type:\"i\",name:\"r2\"}],body:[0,[[13,\"qy\",[6,\"std.max\",[[1,[6,\"std.abs\",[[7,\"p\",\"y\"]]],\"-\",\"le\"],[5,\"0\"]]]],[13,\"ring\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],\"qy\"]]]],\"-\",\"r1\"]],[10,[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"ring\",[7,\"p\",\"z\"]]]]],\"-\",\"r2\"]]]]},externals:{\"std.max\":()=>w,\"std.abs\":()=>W,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})),Ov=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=z(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(s,t),r),.5),.5),0,1);return __tsover_sub(Z(s,t,o),__tsover_mul(__tsover_mul(r,o),__tsover_sub(1,o)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"a\"},{type:\"i\",name:\"b\"},{type:\"i\",name:\"k\"}],body:[0,[[13,\"h\",[6,\"std.clamp\",[[1,[1,[1,[1,\"b\",\"-\",\"a\"],\"/\",\"k\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[10,[1,[6,\"std.mix\",[\"b\",\"a\",\"h\"]],\"-\",[1,[1,\"k\",\"*\",\"h\"],\"*\",[1,[5,\"1\"],\"-\",\"h\"]]]]]]},externals:{\"std.clamp\":()=>z,\"std.mix\":()=>Z}})&&e.f)({})),Vv=y.fn([v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Ec(t,s,r),i=te(u(t.x,t.z)),d=bt(t.z,t.x),l=__tsover_div(Ui,o),c=K(__tsover_add(__tsover_div(d,l),.5)),_=__tsover_sub(d,__tsover_mul(c,l)),p=__tsover_mul(s,J(__tsover_div(p5,o)));return w(w(n,__tsover_sub(__tsover_mul(i,J(_)),p)),__tsover_sub(t.y,__tsover_mul(r,.45)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"h\"},{type:\"i\",name:\"sides\"}],body:[0,[[13,\"base\",[6,\"sdBicone\",[\"p\",\"r\",\"h\"]]],[13,\"lenXZ\",[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]]],[13,\"ang\",[6,\"std.atan2\",[[7,\"p\",\"z\"],[7,\"p\",\"x\"]]]],[13,\"sector\",[1,\"TWO_PI\",\"/\",\"sides\"]],[13,\"idx\",[6,\"std.floor\",[[1,[1,\"ang\",\"/\",\"sector\"],\"+\",[5,\"0.5\"]]]]],[13,\"ca\",[1,\"ang\",\"-\",[1,\"idx\",\"*\",\"sector\"]]],[13,\"ri\",[1,\"r\",\"*\",[6,\"std.cos\",[[1,\"PI\",\"/\",\"sides\"]]]]],[13,\"facet\",[1,[1,\"lenXZ\",\"*\",[6,\"std.cos\",[\"ca\"]]],\"-\",\"ri\"]],[13,\"dd\",[6,\"std.max\",[\"base\",\"facet\"]]],[13,\"table\",[1,[7,\"p\",\"y\"],\"-\",[1,\"h\",\"*\",[5,\"0.45\"]]]],[10,[6,\"std.max\",[\"dd\",\"table\"]]]]]},externals:{sdBicone:()=>Ec,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.atan2\":()=>bt,TWO_PI:()=>Ui,\"std.floor\":()=>K,\"std.cos\":()=>J,PI:()=>p5,\"std.max\":()=>w}})&&e.f)({})),Nv=y.fn([v,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=bt(t.z,t.x),d=K(__tsover_add(__tsover_sub(__tsover_div(t.y,o),__tsover_div(i,Ui)),.5)),l=__tsover_add(i,__tsover_mul(Ui,d)),c=__tsover_mul(s,J(l)),_=__tsover_div(__tsover_mul(o,l),Ui),p=__tsover_mul(s,O(l));return w(__tsover_sub(te(v(__tsover_sub(t.x,c),__tsover_sub(t.y,_),__tsover_sub(t.z,p))),r),__tsover_sub(W(t.y),__tsover_mul(__tsover_mul(o,n),.5)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"R\"},{type:\"i\",name:\"tube\"},{type:\"i\",name:\"pitch\"},{type:\"i\",name:\"turns\"}],body:[0,[[13,\"psi\",[6,\"std.atan2\",[[7,\"p\",\"z\"],[7,\"p\",\"x\"]]]],[13,\"k\",[6,\"std.floor\",[[1,[1,[1,[7,\"p\",\"y\"],\"/\",\"pitch\"],\"-\",[1,\"psi\",\"/\",\"TWO_PI\"]],\"+\",[5,\"0.5\"]]]]],[13,\"theta\",[1,\"psi\",\"+\",[1,\"TWO_PI\",\"*\",\"k\"]]],[13,\"ccx\",[1,\"R\",\"*\",[6,\"std.cos\",[\"theta\"]]]],[13,\"ccy\",[1,[1,\"pitch\",\"*\",\"theta\"],\"/\",\"TWO_PI\"]],[13,\"ccz\",[1,\"R\",\"*\",[6,\"std.sin\",[\"theta\"]]]],[13,\"dStrand\",[1,[6,\"std.length\",[[6,\"d.vec3f\",[[1,[7,\"p\",\"x\"],\"-\",\"ccx\"],[1,[7,\"p\",\"y\"],\"-\",\"ccy\"],[1,[7,\"p\",\"z\"],\"-\",\"ccz\"]]]]],\"-\",\"tube\"]],[13,\"slab\",[1,[6,\"std.abs\",[[7,\"p\",\"y\"]]],\"-\",[1,[1,\"pitch\",\"*\",\"turns\"],\"*\",[5,\"0.5\"]]]],[10,[6,\"std.max\",[\"dStrand\",\"slab\"]]]]]},externals:{\"std.atan2\":()=>bt,\"std.floor\":()=>K,TWO_PI:()=>Ui,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.length\":()=>te,\"d.vec3f\":()=>v,\"std.abs\":()=>W,\"std.max\":()=>w}})&&e.f)({})),m5=zt(v,8),f5=8,qv=y.fn([v,v,v,v,v,v,v,v,v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=m5();f[0]=v(s),f[1]=v(r),f[2]=v(o),f[3]=v(n),f[4]=v(i),f[5]=v(d),f[6]=v(l),f[7]=v(c);let h=__tsover_sub(te(t.sub(f[0])),_);for(let g=1;g<f5;g++)h=Ov(h,__tsover_sub(te(t.sub(f[g])),_),p);return h}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"b0\"},{type:\"i\",name:\"b1\"},{type:\"i\",name:\"b2\"},{type:\"i\",name:\"b3\"},{type:\"i\",name:\"b4\"},{type:\"i\",name:\"b5\"},{type:\"i\",name:\"b6\"},{type:\"i\",name:\"b7\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"k\"}],body:[0,[[13,\"balls\",[6,\"MetaballArray\",[]]],[2,[8,\"balls\",[5,\"0\"]],\"=\",[6,\"d.vec3f\",[\"b0\"]]],[2,[8,\"balls\",[5,\"1\"]],\"=\",[6,\"d.vec3f\",[\"b1\"]]],[2,[8,\"balls\",[5,\"2\"]],\"=\",[6,\"d.vec3f\",[\"b2\"]]],[2,[8,\"balls\",[5,\"3\"]],\"=\",[6,\"d.vec3f\",[\"b3\"]]],[2,[8,\"balls\",[5,\"4\"]],\"=\",[6,\"d.vec3f\",[\"b4\"]]],[2,[8,\"balls\",[5,\"5\"]],\"=\",[6,\"d.vec3f\",[\"b5\"]]],[2,[8,\"balls\",[5,\"6\"]],\"=\",[6,\"d.vec3f\",[\"b6\"]]],[2,[8,\"balls\",[5,\"7\"]],\"=\",[6,\"d.vec3f\",[\"b7\"]]],[12,\"dd\",[1,[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[8,\"balls\",[5,\"0\"]]]]]],\"-\",\"r\"]],[14,[12,\"i\",[5,\"1\"]],[1,\"i\",\"<\",\"METABALL_COUNT\"],[102,\"++\",\"i\"],[0,[[2,\"dd\",\"=\",[6,\"smin\",[\"dd\",[1,[6,\"std.length\",[[6,[7,\"p\",\"sub\"],[[8,\"balls\",\"i\"]]]]],\"-\",\"r\"],\"k\"]]]]]],[10,\"dd\"]]]},externals:{MetaballArray:()=>m5,\"d.vec3f\":()=>v,\"std.length\":()=>te,METABALL_COUNT:()=>f5,smin:()=>Ov}})&&e.f)({})),Xv=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=v(W(t.x),W(t.y),W(t.z)),o=le(r,v(0,.5257311,.8506508)),n=le(r,v(.8506508,0,.5257311)),i=le(r,v(.5257311,.8506508,0));return __tsover_sub(w(w(o,n),i),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"}],body:[0,[[13,\"q\",[6,\"d.vec3f\",[[6,\"std.abs\",[[7,\"p\",\"x\"]]],[6,\"std.abs\",[[7,\"p\",\"y\"]]],[6,\"std.abs\",[[7,\"p\",\"z\"]]]]]],[13,\"a\",[6,\"std.dot\",[\"q\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0.5257311\"],[5,\"0.8506508\"]]]]]],[13,\"b\",[6,\"std.dot\",[\"q\",[6,\"d.vec3f\",[[5,\"0.8506508\"],[5,\"0\"],[5,\"0.5257311\"]]]]]],[13,\"c\",[6,\"std.dot\",[\"q\",[6,\"d.vec3f\",[[5,\"0.5257311\"],[5,\"0.8506508\"],[5,\"0\"]]]]]],[10,[1,[6,\"std.max\",[[6,\"std.max\",[\"a\",\"b\"]],\"c\"]],\"-\",\"r\"]]]]},externals:{\"d.vec3f\":()=>v,\"std.abs\":()=>W,\"std.dot\":()=>le,\"std.max\":()=>w}})&&e.f)({})),Hv=y.fn([v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=$e(w(__tsover_sub(__tsover_mul(s,s),__tsover_mul(r,r)),0)),n=te(u(t.x,t.z)),i=t.y,d=w(__tsover_add(__tsover_mul(__tsover_mul(__tsover_sub(r,s),n),n),__tsover_mul(__tsover_mul(o,o),__tsover_sub(__tsover_add(r,s),__tsover_mul(i,2)))),__tsover_sub(__tsover_mul(r,n),__tsover_mul(o,i))),l=__tsover_sub(te(u(n,i)),s),c=__tsover_sub(r,i);return F(F(te(u(__tsover_sub(n,o),__tsover_sub(i,r))),c,n<o),l,d<0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"w\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[1,\"r\",\"*\",\"r\"],\"-\",[1,\"h\",\"*\",\"h\"]],[5,\"0\"]]]]]],[13,\"qx\",[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],[7,\"p\",\"z\"]]]]]],[13,\"qy\",[7,\"p\",\"y\"]],[13,\"s\",[6,\"std.max\",[[1,[1,[1,[1,\"h\",\"-\",\"r\"],\"*\",\"qx\"],\"*\",\"qx\"],\"+\",[1,[1,\"w\",\"*\",\"w\"],\"*\",[1,[1,\"h\",\"+\",\"r\"],\"-\",[1,\"qy\",\"*\",[5,\"2\"]]]]],[1,[1,\"h\",\"*\",\"qx\"],\"-\",[1,\"w\",\"*\",\"qy\"]]]]],[13,\"case0\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"qx\",\"qy\"]]]],\"-\",\"r\"]],[13,\"case1\",[1,\"h\",\"-\",\"qy\"]],[13,\"case2\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,\"qx\",\"-\",\"w\"],[1,\"qy\",\"-\",\"h\"]]]]]],[13,\"inner\",[6,\"std.select\",[\"case2\",\"case1\",[1,\"qx\",\"<\",\"w\"]]]],[10,[6,\"std.select\",[\"inner\",\"case0\",[1,\"s\",\"<\",[5,\"0\"]]]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.max\":()=>w,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.select\":()=>F}})&&e.f)({})),jv=y.fn([v,a,a,a,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=__tsover_mul(n,O(__tsover_add(__tsover_mul(i,t.x),d))),h=__tsover_mul(__tsover_mul(n,.6),O(__tsover_add(__tsover_mul(__tsover_mul(i,.8),t.x),l))),g=__tsover_sub(t.y,f),x=__tsover_sub(t.z,h),T=__tsover_add(__tsover_mul(c,t.x),_),S=J(T),A=O(T),E=__tsover_add(__tsover_mul(g,S),__tsover_mul(x,A)),M=__tsover_sub(__tsover_mul(x,S),__tsover_mul(g,A)),$=__tsover_mul(r,.4),L=__tsover_add(__tsover_sub(W(E),s),$),B=__tsover_add(__tsover_sub(W(M),r),$),D=__tsover_sub(__tsover_add(te(u(w(L,0),w(B,0))),ue(w(L,B),0)),$),G=__tsover_sub(W(t.x),o),I=__tsover_add(te(u(w(D,0),w(G,0))),ue(w(D,G),0));return __tsover_mul(I,p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"w\"},{type:\"i\",name:\"th\"},{type:\"i\",name:\"len\"},{type:\"i\",name:\"amp\"},{type:\"i\",name:\"freq\"},{type:\"i\",name:\"ph1\"},{type:\"i\",name:\"ph2\"},{type:\"i\",name:\"twRate\"},{type:\"i\",name:\"twPh\"},{type:\"i\",name:\"lip\"}],body:[0,[[13,\"yc\",[1,\"amp\",\"*\",[6,\"std.sin\",[[1,[1,\"freq\",\"*\",[7,\"p\",\"x\"]],\"+\",\"ph1\"]]]]],[13,\"zc\",[1,[1,\"amp\",\"*\",[5,\"0.6\"]],\"*\",[6,\"std.sin\",[[1,[1,[1,\"freq\",\"*\",[5,\"0.8\"]],\"*\",[7,\"p\",\"x\"]],\"+\",\"ph2\"]]]]],[13,\"qy\",[1,[7,\"p\",\"y\"],\"-\",\"yc\"]],[13,\"qz\",[1,[7,\"p\",\"z\"],\"-\",\"zc\"]],[13,\"ang\",[1,[1,\"twRate\",\"*\",[7,\"p\",\"x\"]],\"+\",\"twPh\"]],[13,\"c\",[6,\"std.cos\",[\"ang\"]]],[13,\"s\",[6,\"std.sin\",[\"ang\"]]],[13,\"ry\",[1,[1,\"qy\",\"*\",\"c\"],\"+\",[1,\"qz\",\"*\",\"s\"]]],[13,\"rz\",[1,[1,\"qz\",\"*\",\"c\"],\"-\",[1,\"qy\",\"*\",\"s\"]]],[13,\"round\",[1,\"th\",\"*\",[5,\"0.4\"]]],[13,\"bx\",[1,[1,[6,\"std.abs\",[\"ry\"]],\"-\",\"w\"],\"+\",\"round\"]],[13,\"by\",[1,[1,[6,\"std.abs\",[\"rz\"]],\"-\",\"th\"],\"+\",\"round\"]],[13,\"d2\",[1,[1,[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"bx\",[5,\"0\"]]],[6,\"std.max\",[\"by\",[5,\"0\"]]]]]]],\"+\",[6,\"std.min\",[[6,\"std.max\",[\"bx\",\"by\"]],[5,\"0\"]]]],\"-\",\"round\"]],[13,\"dx\",[1,[6,\"std.abs\",[[7,\"p\",\"x\"]]],\"-\",\"len\"]],[13,\"dd\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"d2\",[5,\"0\"]]],[6,\"std.max\",[\"dx\",[5,\"0\"]]]]]]],\"+\",[6,\"std.min\",[[6,\"std.max\",[\"d2\",\"dx\"]],[5,\"0\"]]]]],[10,[1,\"dd\",\"*\",\"lip\"]]]]},externals:{\"std.sin\":()=>O,\"std.cos\":()=>J,\"std.abs\":()=>W,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})),Kv=y.fn([v,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(t.x,o),n)),O(__tsover_add(__tsover_mul(__tsover_mul(t.y,o),1.3),i))),__tsover_mul(O(__tsover_add(__tsover_mul(__tsover_mul(t.y,o),.8),__tsover_mul(i,1.1))),O(__tsover_add(__tsover_mul(__tsover_mul(t.z,o),1.1),__tsover_mul(n,.9))))),c=__tsover_sub(__tsover_sub(te(t),s),__tsover_mul(__tsover_mul(r,l),.5));return __tsover_mul(c,d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"r\"},{type:\"i\",name:\"amp\"},{type:\"i\",name:\"freq\"},{type:\"i\",name:\"ph1\"},{type:\"i\",name:\"ph2\"},{type:\"i\",name:\"lip\"}],body:[0,[[13,\"w\",[1,[1,[6,\"std.sin\",[[1,[1,[7,\"p\",\"x\"],\"*\",\"freq\"],\"+\",\"ph1\"]]],\"*\",[6,\"std.sin\",[[1,[1,[1,[7,\"p\",\"y\"],\"*\",\"freq\"],\"*\",[5,\"1.3\"]],\"+\",\"ph2\"]]]],\"+\",[1,[6,\"std.sin\",[[1,[1,[1,[7,\"p\",\"y\"],\"*\",\"freq\"],\"*\",[5,\"0.8\"]],\"+\",[1,\"ph2\",\"*\",[5,\"1.1\"]]]]],\"*\",[6,\"std.sin\",[[1,[1,[1,[7,\"p\",\"z\"],\"*\",\"freq\"],\"*\",[5,\"1.1\"]],\"+\",[1,\"ph1\",\"*\",[5,\"0.9\"]]]]]]]],[13,\"dd\",[1,[1,[6,\"std.length\",[\"p\"]],\"-\",\"r\"],\"-\",[1,[1,\"amp\",\"*\",\"w\"],\"*\",[5,\"0.5\"]]]],[10,[1,\"dd\",\"*\",\"lip\"]]]]},externals:{\"std.sin\":()=>O,\"std.length\":()=>te}})&&e.f)({})),sc=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_add(__tsover_sub(W(__tsover_sub(t,r)),o),i),l=__tsover_add(__tsover_sub(W(s),n),i),c=te(u(w(d,0),w(l,0))),_=ue(w(d,l),0);return __tsover_sub(__tsover_add(c,_),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"radialDist\"},{type:\"i\",name:\"axialDist\"},{type:\"i\",name:\"R\"},{type:\"i\",name:\"ht\"},{type:\"i\",name:\"hw\"},{type:\"i\",name:\"rnd\"}],body:[0,[[13,\"bx\",[1,[1,[6,\"std.abs\",[[1,\"radialDist\",\"-\",\"R\"]]],\"-\",\"ht\"],\"+\",\"rnd\"]],[13,\"by\",[1,[1,[6,\"std.abs\",[\"axialDist\"]],\"-\",\"hw\"],\"+\",\"rnd\"]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"bx\",[5,\"0\"]]],[6,\"std.max\",[\"by\",[5,\"0\"]]]]]]]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"bx\",\"by\"]],[5,\"0\"]]]],[10,[1,[1,\"outer\",\"+\",\"inner\"],\"-\",\"rnd\"]]]]},externals:{\"std.abs\":()=>W,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})),Zv=y.fn([v,a,a,a,a,a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f)=>{\"use gpu\";let h=__tsover_mul(r,.5),g=__tsover_mul(o,.5),x=__tsover_sub(te(t),i),T=__tsover_add(__tsover_mul(t.y,d),__tsover_mul(t.z,l)),S=__tsover_sub(__tsover_mul(t.z,d),__tsover_mul(t.y,l)),A=sc(te(u(t.x,S)),T,s,g,h,n),E=__tsover_sub(__tsover_mul(t.x,c),__tsover_mul(t.z,_)),M=__tsover_add(__tsover_mul(t.z,c),__tsover_mul(t.x,_)),$=sc(te(u(E,t.y)),M,__tsover_mul(s,.78),g,h,n),L=__tsover_add(__tsover_mul(t.x,p),__tsover_mul(t.y,f)),B=sc(te(u(__tsover_sub(__tsover_mul(t.y,p),__tsover_mul(t.x,f)),t.z)),L,__tsover_mul(s,.56),g,h,n);return ue(ue(x,A),ue($,B))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"radius\"},{type:\"i\",name:\"width\"},{type:\"i\",name:\"thick\"},{type:\"i\",name:\"rnd\"},{type:\"i\",name:\"core\"},{type:\"i\",name:\"c1\"},{type:\"i\",name:\"s1\"},{type:\"i\",name:\"c2\"},{type:\"i\",name:\"s2\"},{type:\"i\",name:\"c3\"},{type:\"i\",name:\"s3\"}],body:[0,[[13,\"hw\",[1,\"width\",\"*\",[5,\"0.5\"]]],[13,\"ht\",[1,\"thick\",\"*\",[5,\"0.5\"]]],[13,\"dCore\",[1,[6,\"std.length\",[\"p\"]],\"-\",\"core\"]],[13,\"p1y\",[1,[1,[7,\"p\",\"y\"],\"*\",\"c1\"],\"+\",[1,[7,\"p\",\"z\"],\"*\",\"s1\"]]],[13,\"p1z\",[1,[1,[7,\"p\",\"z\"],\"*\",\"c1\"],\"-\",[1,[7,\"p\",\"y\"],\"*\",\"s1\"]]],[13,\"d1\",[6,\"sdFlatBand\",[[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"p\",\"x\"],\"p1z\"]]]],\"p1y\",\"radius\",\"ht\",\"hw\",\"rnd\"]]],[13,\"p2x\",[1,[1,[7,\"p\",\"x\"],\"*\",\"c2\"],\"-\",[1,[7,\"p\",\"z\"],\"*\",\"s2\"]]],[13,\"p2z\",[1,[1,[7,\"p\",\"z\"],\"*\",\"c2\"],\"+\",[1,[7,\"p\",\"x\"],\"*\",\"s2\"]]],[13,\"d2\",[6,\"sdFlatBand\",[[6,\"std.length\",[[6,\"d.vec2f\",[\"p2x\",[7,\"p\",\"y\"]]]]],\"p2z\",[1,\"radius\",\"*\",[5,\"0.78\"]],\"ht\",\"hw\",\"rnd\"]]],[13,\"p3x\",[1,[1,[7,\"p\",\"x\"],\"*\",\"c3\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"s3\"]]],[13,\"p3y\",[1,[1,[7,\"p\",\"y\"],\"*\",\"c3\"],\"-\",[1,[7,\"p\",\"x\"],\"*\",\"s3\"]]],[13,\"d3\",[6,\"sdFlatBand\",[[6,\"std.length\",[[6,\"d.vec2f\",[\"p3y\",[7,\"p\",\"z\"]]]]],\"p3x\",[1,\"radius\",\"*\",[5,\"0.56\"]],\"ht\",\"hw\",\"rnd\"]]],[10,[6,\"std.min\",[[6,\"std.min\",[\"dCore\",\"d1\"]],[6,\"std.min\",[\"d2\",\"d3\"]]]]]]]},externals:{\"std.length\":()=>te,sdFlatBand:()=>sc,\"d.vec2f\":()=>u,\"std.min\":()=>ue}})&&e.f)({})),qc=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cx:a,sx:a,cy:a,sy:a,cz:a,sz:a}),\"RotStruct\"),N_=y.fn([v,qc],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_add(__tsover_mul(t.x,s.cy),__tsover_mul(t.z,s.sy)),o=__tsover_sub(__tsover_mul(t.z,s.cy),__tsover_mul(t.x,s.sy)),n=__tsover_sub(__tsover_mul(t.y,s.cx),__tsover_mul(o,s.sx)),i=__tsover_add(__tsover_mul(t.y,s.sx),__tsover_mul(o,s.cx));return v(__tsover_sub(__tsover_mul(r,s.cz),__tsover_mul(n,s.sz)),__tsover_add(__tsover_mul(r,s.sz),__tsover_mul(n,s.cz)),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"},{type:\"i\",name:\"rot\"}],body:[0,[[13,\"x1\",[1,[1,[7,\"v\",\"x\"],\"*\",[7,\"rot\",\"cy\"]],\"+\",[1,[7,\"v\",\"z\"],\"*\",[7,\"rot\",\"sy\"]]]],[13,\"z1\",[1,[1,[7,\"v\",\"z\"],\"*\",[7,\"rot\",\"cy\"]],\"-\",[1,[7,\"v\",\"x\"],\"*\",[7,\"rot\",\"sy\"]]]],[13,\"y2\",[1,[1,[7,\"v\",\"y\"],\"*\",[7,\"rot\",\"cx\"]],\"-\",[1,\"z1\",\"*\",[7,\"rot\",\"sx\"]]]],[13,\"z2\",[1,[1,[7,\"v\",\"y\"],\"*\",[7,\"rot\",\"sx\"]],\"+\",[1,\"z1\",\"*\",[7,\"rot\",\"cx\"]]]],[13,\"x3\",[1,[1,\"x1\",\"*\",[7,\"rot\",\"cz\"]],\"-\",[1,\"y2\",\"*\",[7,\"rot\",\"sz\"]]]],[13,\"y3\",[1,[1,\"x1\",\"*\",[7,\"rot\",\"sz\"]],\"+\",[1,\"y2\",\"*\",[7,\"rot\",\"cz\"]]]],[10,[6,\"d.vec3f\",[\"x3\",\"y3\",\"z2\"]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({}));function Dy(e,t=\"none\",s=\"span\"){let r=No()?64:96,o=No()?224:384,n=No()?140:220;return y.fn([u,qc,a],b)((i=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(i.f=((d,l,c)=>{\"use gpu\";let _=v(__tsover_sub(d.x,.5),__tsover_sub(.5,d.y),-1.2),p=v(0,0,1),f=N_(_,l),h=N_(p,l),g=oe(z(__tsover_mul(c,a(n)),a(r),a(o))),x=le(f,h),T=$e(w(__tsover_sub(le(f,f),__tsover_mul(x,x)),0)),S=$e(w(__tsover_sub(__tsover_mul(c,c),__tsover_mul(T,T)),0)),A=w(__tsover_sub(__tsover_mul(x,-1),S),0),E=__tsover_add(__tsover_add(__tsover_mul(x,-1),S),.01),M=A,$=A,L=a(10),B=a(0);for(let H=0;H<g;H++){let ee=e(f.add(h.mul(M)));if(L=ue(L,ee),ee<0){B=a(1);break}if(M>E)break;$=M,M=__tsover_add(M,w(ee,.002))}let D=L,G=a(0),I=a(0),X=__tsover_add(E,.4);if(B>.5){let H=$,ee=M;for(let he=0;he<10;he++){let Me=__tsover_mul(__tsover_add(H,ee),.5);e(f.add(h.mul(Me)))>0?H=Me:ee=Me}let Q=__tsover_mul(__tsover_add(H,ee),.5),de=Q;if(s===\"firstLobe\"){let he=ee,Me=__tsover_add(ee,.002);for(let Ce=0;Ce<g;Ce++){let ie=e(f.add(h.mul(Me)));if(ie>=0||(he=Me,Me=__tsover_add(Me,w(__tsover_mul(ie,-1),.002)),Me>E))break}let Te=he,Pe=Me;for(let Ce=0;Ce<10;Ce++){let ie=__tsover_mul(__tsover_add(Te,Pe),.5);e(f.add(h.mul(ie)))<0?Te=ie:Pe=ie}de=__tsover_mul(__tsover_add(Te,Pe),.5)}if(s===\"span\"){let he=f.add(h.mul(E)),Me=__tsover_add(__tsover_sub(E,A),.01),Te=a(0),Pe=a(0);for(let Ne=0;Ne<g;Ne++){let ye=e(he.sub(h.mul(Te)));if(ye<0||Te>Me)break;Pe=Te,Te=__tsover_add(Te,w(ye,.002))}let Ce=Pe,ie=Te;for(let Ne=0;Ne<10;Ne++){let ye=__tsover_mul(__tsover_add(Ce,ie),.5);e(he.sub(h.mul(ye)))>0?Ce=ye:ie=ye}de=__tsover_sub(E,__tsover_mul(__tsover_add(Ce,ie),.5))}let Ee=__tsover_mul(w(__tsover_sub(de,Q),0),.5);if(D=__tsover_mul(Ee,-1),X=Q,t===\"raw\"){let he=f.add(h.mul(Q));G=__tsover_add(he.x,__tsover_mul(he.z,.7)),I=__tsover_add(he.y,__tsover_mul(he.z,.5))}if(t===\"triplanar\"){let he=f.add(h.mul(Q)),Me=.004,Te=__tsover_sub(e(v(__tsover_add(he.x,Me),he.y,he.z)),e(v(__tsover_sub(he.x,Me),he.y,he.z))),Pe=__tsover_sub(e(v(he.x,__tsover_add(he.y,Me),he.z)),e(v(he.x,__tsover_sub(he.y,Me),he.z))),Ce=__tsover_sub(e(v(he.x,he.y,__tsover_add(he.z,Me))),e(v(he.x,he.y,__tsover_sub(he.z,Me)))),ie=W(Te),Ne=W(Pe),ye=W(Ce),Ve=u(__tsover_add(he.y,2.17),__tsover_add(he.z,5.31)),qe=u(__tsover_add(he.z,7.73),__tsover_add(he.x,1.13)),st=F(u(he.x,he.y),qe,Ne>=ye),We=F(st,F(st,Ve,ie>=ye),ie>=Ne);G=We.x,I=We.y}}return b(D,G,I,X)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fuv\"},{type:\"i\",name:\"rot\"},{type:\"i\",name:\"rBound\"}],body:[0,[[13,\"ro0\",[6,\"d.vec3f\",[[1,[7,\"fuv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[5,\"0.5\"],\"-\",[7,\"fuv\",\"y\"]],[4,\"-\",[5,\"1.2\"]]]]],[13,\"rd0\",[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"1\"]]]],[13,\"ro\",[6,\"rotateVec3\",[\"ro0\",\"rot\"]]],[13,\"rd\",[6,\"rotateVec3\",[\"rd0\",\"rot\"]]],[13,\"steps\",[6,\"d.i32\",[[6,\"std.clamp\",[[1,\"rBound\",\"*\",[6,\"d.f32\",[\"STEP_SCALE\"]]],[6,\"d.f32\",[\"STEP_MIN\"]],[6,\"d.f32\",[\"STEP_MAX\"]]]]]]],[13,\"b\",[6,\"std.dot\",[\"ro\",\"rd\"]]],[13,\"perp\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[6,\"std.dot\",[\"ro\",\"ro\"]],\"-\",[1,\"b\",\"*\",\"b\"]],[5,\"0\"]]]]]],[13,\"halfSpan\",[6,\"std.sqrt\",[[6,\"std.max\",[[1,[1,\"rBound\",\"*\",\"rBound\"],\"-\",[1,\"perp\",\"*\",\"perp\"]],[5,\"0\"]]]]]],[13,\"tStart\",[6,\"std.max\",[[1,[1,\"b\",\"*\",[4,\"-\",[5,\"1\"]]],\"-\",\"halfSpan\"],[5,\"0\"]]]],[13,\"tEnd\",[1,[1,[1,\"b\",\"*\",[4,\"-\",[5,\"1\"]]],\"+\",\"halfSpan\"],\"+\",[5,\"0.01\"]]],[12,\"t\",\"tStart\"],[12,\"tPrev\",\"tStart\"],[12,\"minD\",[6,\"d.f32\",[[5,\"10\"]]]],[12,\"hit\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"steps\"],[102,\"++\",\"i\"],[0,[[13,\"p\",[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"t\"]]]]],[13,\"dd\",[6,\"sdfFn\",[\"p\"]]],[2,\"minD\",\"=\",[6,\"std.min\",[\"minD\",\"dd\"]]],[11,[1,\"dd\",\"<\",[5,\"0\"]],[0,[[2,\"hit\",\"=\",[6,\"d.f32\",[[5,\"1\"]]]],[17]]]],[11,[1,\"t\",\">\",\"tEnd\"],[0,[[17]]]],[2,\"tPrev\",\"=\",\"t\"],[2,\"t\",\"=\",[1,\"t\",\"+\",[6,\"std.max\",[\"dd\",[5,\"0.002\"]]]]]]]],[12,\"fieldVal\",\"minD\"],[12,\"patternU\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"patternV\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"viewDepth\",[1,\"tEnd\",\"+\",[5,\"0.4\"]]],[11,[1,\"hit\",\">\",[5,\"0.5\"]],[0,[[12,\"eLo\",\"tPrev\"],[12,\"eHi\",\"t\"],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"10\"]],[102,\"++\",\"i\"],[0,[[13,\"mid\",[1,[1,\"eLo\",\"+\",\"eHi\"],\"*\",[5,\"0.5\"]]],[13,\"dm\",[6,\"sdfFn\",[[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"mid\"]]]]]]],[11,[1,\"dm\",\">\",[5,\"0\"]],[0,[[2,\"eLo\",\"=\",\"mid\"]]],[0,[[2,\"eHi\",\"=\",\"mid\"]]]]]]],[13,\"tEnter\",[1,[1,\"eLo\",\"+\",\"eHi\"],\"*\",[5,\"0.5\"]]],[12,\"tExit\",\"tEnter\"],[11,[1,\"chordMode\",\"===\",[103,\"firstLobe\"]],[0,[[12,\"sInPrev\",\"eHi\"],[12,\"sIn\",[1,\"eHi\",\"+\",[5,\"0.002\"]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"steps\"],[102,\"++\",\"i\"],[0,[[13,\"dd\",[6,\"sdfFn\",[[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"sIn\"]]]]]]],[11,[1,\"dd\",\">=\",[5,\"0\"]],[0,[[17]]]],[2,\"sInPrev\",\"=\",\"sIn\"],[2,\"sIn\",\"=\",[1,\"sIn\",\"+\",[6,\"std.max\",[[1,\"dd\",\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0.002\"]]]]],[11,[1,\"sIn\",\">\",\"tEnd\"],[0,[[17]]]]]]],[12,\"fLo\",\"sInPrev\"],[12,\"fHi\",\"sIn\"],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"10\"]],[102,\"++\",\"i\"],[0,[[13,\"mid\",[1,[1,\"fLo\",\"+\",\"fHi\"],\"*\",[5,\"0.5\"]]],[13,\"dm\",[6,\"sdfFn\",[[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"mid\"]]]]]]],[11,[1,\"dm\",\"<\",[5,\"0\"]],[0,[[2,\"fLo\",\"=\",\"mid\"]]],[0,[[2,\"fHi\",\"=\",\"mid\"]]]]]]],[2,\"tExit\",\"=\",[1,[1,\"fLo\",\"+\",\"fHi\"],\"*\",[5,\"0.5\"]]]]]],[11,[1,\"chordMode\",\"===\",[103,\"span\"]],[0,[[13,\"roB\",[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"tEnd\"]]]]],[13,\"span\",[1,[1,\"tEnd\",\"-\",\"tStart\"],\"+\",[5,\"0.01\"]]],[12,\"s\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"sPrev\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",\"steps\"],[102,\"++\",\"i\"],[0,[[13,\"p\",[6,[7,\"roB\",\"sub\"],[[6,[7,\"rd\",\"mul\"],[\"s\"]]]]],[13,\"dd\",[6,\"sdfFn\",[\"p\"]]],[11,[1,\"dd\",\"<\",[5,\"0\"]],[0,[[17]]]],[11,[1,\"s\",\">\",\"span\"],[0,[[17]]]],[2,\"sPrev\",\"=\",\"s\"],[2,\"s\",\"=\",[1,\"s\",\"+\",[6,\"std.max\",[\"dd\",[5,\"0.002\"]]]]]]]],[12,\"xLo\",\"sPrev\"],[12,\"xHi\",\"s\"],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"10\"]],[102,\"++\",\"i\"],[0,[[13,\"mid\",[1,[1,\"xLo\",\"+\",\"xHi\"],\"*\",[5,\"0.5\"]]],[13,\"dm\",[6,\"sdfFn\",[[6,[7,\"roB\",\"sub\"],[[6,[7,\"rd\",\"mul\"],[\"mid\"]]]]]]],[11,[1,\"dm\",\">\",[5,\"0\"]],[0,[[2,\"xLo\",\"=\",\"mid\"]]],[0,[[2,\"xHi\",\"=\",\"mid\"]]]]]]],[2,\"tExit\",\"=\",[1,\"tEnd\",\"-\",[1,[1,\"xLo\",\"+\",\"xHi\"],\"*\",[5,\"0.5\"]]]]]]],[13,\"halfChord\",[1,[6,\"std.max\",[[1,\"tExit\",\"-\",\"tEnter\"],[5,\"0\"]]],\"*\",[5,\"0.5\"]]],[2,\"fieldVal\",\"=\",[1,\"halfChord\",\"*\",[4,\"-\",[5,\"1\"]]]],[2,\"viewDepth\",\"=\",\"tEnter\"],[11,[1,\"patternMode\",\"===\",[103,\"raw\"]],[0,[[13,\"hp\",[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"tEnter\"]]]]],[2,\"patternU\",\"=\",[1,[7,\"hp\",\"x\"],\"+\",[1,[7,\"hp\",\"z\"],\"*\",[5,\"0.7\"]]]],[2,\"patternV\",\"=\",[1,[7,\"hp\",\"y\"],\"+\",[1,[7,\"hp\",\"z\"],\"*\",[5,\"0.5\"]]]]]]],[11,[1,\"patternMode\",\"===\",[103,\"triplanar\"]],[0,[[13,\"hp\",[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"tEnter\"]]]]],[13,\"e2\",[5,\"0.004\"]],[13,\"nlx\",[1,[6,\"sdfFn\",[[6,\"d.vec3f\",[[1,[7,\"hp\",\"x\"],\"+\",\"e2\"],[7,\"hp\",\"y\"],[7,\"hp\",\"z\"]]]]],\"-\",[6,\"sdfFn\",[[6,\"d.vec3f\",[[1,[7,\"hp\",\"x\"],\"-\",\"e2\"],[7,\"hp\",\"y\"],[7,\"hp\",\"z\"]]]]]]],[13,\"nly\",[1,[6,\"sdfFn\",[[6,\"d.vec3f\",[[7,\"hp\",\"x\"],[1,[7,\"hp\",\"y\"],\"+\",\"e2\"],[7,\"hp\",\"z\"]]]]],\"-\",[6,\"sdfFn\",[[6,\"d.vec3f\",[[7,\"hp\",\"x\"],[1,[7,\"hp\",\"y\"],\"-\",\"e2\"],[7,\"hp\",\"z\"]]]]]]],[13,\"nlz\",[1,[6,\"sdfFn\",[[6,\"d.vec3f\",[[7,\"hp\",\"x\"],[7,\"hp\",\"y\"],[1,[7,\"hp\",\"z\"],\"+\",\"e2\"]]]]],\"-\",[6,\"sdfFn\",[[6,\"d.vec3f\",[[7,\"hp\",\"x\"],[7,\"hp\",\"y\"],[1,[7,\"hp\",\"z\"],\"-\",\"e2\"]]]]]]],[13,\"anx\",[6,\"std.abs\",[\"nlx\"]]],[13,\"anyv\",[6,\"std.abs\",[\"nly\"]]],[13,\"anz\",[6,\"std.abs\",[\"nlz\"]]],[13,\"branch1\",[6,\"d.vec2f\",[[1,[7,\"hp\",\"y\"],\"+\",[5,\"2.17\"]],[1,[7,\"hp\",\"z\"],\"+\",[5,\"5.31\"]]]]],[13,\"branch2\",[6,\"d.vec2f\",[[1,[7,\"hp\",\"z\"],\"+\",[5,\"7.73\"]],[1,[7,\"hp\",\"x\"],\"+\",[5,\"1.13\"]]]]],[13,\"branch3\",[6,\"d.vec2f\",[[7,\"hp\",\"x\"],[7,\"hp\",\"y\"]]]],[13,\"branch23\",[6,\"std.select\",[\"branch3\",\"branch2\",[1,\"anyv\",\">=\",\"anz\"]]]],[13,\"innerPick\",[6,\"std.select\",[\"branch23\",\"branch1\",[1,\"anx\",\">=\",\"anz\"]]]],[13,\"pattern\",[6,\"std.select\",[\"branch23\",\"innerPick\",[1,\"anx\",\">=\",\"anyv\"]]]],[2,\"patternU\",\"=\",[7,\"pattern\",\"x\"]],[2,\"patternV\",\"=\",[7,\"pattern\",\"y\"]]]]]]]],[10,[6,\"d.vec4f\",[\"fieldVal\",\"patternU\",\"patternV\",\"viewDepth\"]]]]]},externals:{\"d.vec3f\":()=>v,rotateVec3:()=>N_,\"d.i32\":()=>oe,\"std.clamp\":()=>z,\"d.f32\":()=>a,STEP_SCALE:()=>n,STEP_MIN:()=>r,STEP_MAX:()=>o,\"std.dot\":()=>le,\"std.sqrt\":()=>$e,\"std.max\":()=>w,sdfFn:()=>e,\"std.min\":()=>ue,chordMode:()=>s,patternMode:()=>t,\"std.abs\":()=>W,\"d.vec2f\":()=>u,\"std.select\":()=>F,\"d.vec4f\":()=>b}})&&i.f)({})).$name(\"raymarchedField\")}function IB(e,t=\"none\",s=\"span\"){return Dy(e,t,s)}var zm=\"rgba32float\",tS=1536;function Xc(){return No()?768:tS}var YB=[256,320,384,512,640,768,896,1024,1280,1536];function sS(e,t,s,r,o,n){if(!(r>0)||!(s>0))return o;let i=No()?.5:1,d=Math.max(e,t)*s*r*i,l=o;for(let c of YB){if(c>o)break;if(c>=d){l=c;break}}return n>0&&l<n&&d>n*.78&&(l=Math.min(n,o)),l}var va=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({rot:J6(16,ew(32,qc)),rBound:a,spanX:a,spanY:a,originX:a,originY:a,activeRes:Y,pA:a,pB:a,pC:a,pD:a,mb0:v,mb1:v,mb2:v,mb3:v,mb4:v,mb5:v,mb6:v,mb7:v}),\"MarchParams\");function Ly(){return{layout:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({field:{storageTexture:an(zm,\"write-only\")},params:{uniform:va}}),\"layout\"),MarchParams:va}}function rS(e,t){return y.fn([Y,Y])((s=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(s.f=((r,o)=>{\"use gpu\";let n=e.$.params,i=a(n.activeRes),d=t(u(__tsover_add(n.originX,__tsover_mul(__tsover_div(__tsover_add(a(r),.5),i),n.spanX)),__tsover_add(n.originY,__tsover_mul(__tsover_div(__tsover_add(a(o),.5),i),n.spanY))),n.rot,n.rBound);Co(e.$.field,He(r,o),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"p\",[7,[7,\"layout\",\"$\"],\"params\"]],[13,\"activeResF\",[6,\"d.f32\",[[7,\"p\",\"activeRes\"]]]],[13,\"uv\",[6,\"d.vec2f\",[[1,[7,\"p\",\"originX\"],\"+\",[1,[1,[1,[6,\"d.f32\",[\"cx\"]],\"+\",[5,\"0.5\"]],\"/\",\"activeResF\"],\"*\",[7,\"p\",\"spanX\"]]],[1,[7,\"p\",\"originY\"],\"+\",[1,[1,[1,[6,\"d.f32\",[\"cy\"]],\"+\",[5,\"0.5\"]],\"/\",\"activeResF\"],\"*\",[7,\"p\",\"spanY\"]]]]]],[13,\"field\",[6,\"marchFn\",[\"uv\",[7,\"p\",\"rot\"],[7,\"p\",\"rBound\"]]]],[6,\"std.textureStore\",[[7,[7,\"layout\",\"$\"],\"field\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],\"field\"]]]]},externals:{layout:()=>e,\"d.f32\":()=>a,\"d.vec2f\":()=>u,marchFn:()=>t,\"std.textureStore\":()=>Co,\"d.vec2u\":()=>He}})&&s.f)({})).$name(\"volumetricFieldMarch\")}var Qv=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({originX:a,originY:a,spanX:a,spanY:a,activeResF:a,rBound:a}),\"SampleParams\");function WB(){let e=(globalThis.__TYPEGPU_AUTONAME__??(s=>s))(y.bindGroupLayout({field:{texture:Hs(a),sampleType:\"unfilterable-float\"},params:{uniform:Qv}}),\"sampleLayout\"),t=y.fn([a,a],b)((s=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(s.f=((r,o)=>{\"use gpu\";let n=__tsover_sub(e.$.params.activeResF,1),i=Y(z(r,a(0),n)),d=Y(z(o,a(0),n));return at(e.$.field,He(i,d),0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"xi\"},{type:\"i\",name:\"yi\"}],body:[0,[[13,\"maxT\",[1,[7,[7,[7,\"sampleLayout\",\"$\"],\"params\"],\"activeResF\"],\"-\",[5,\"1\"]]],[13,\"tx\",[6,\"d.u32\",[[6,\"std.clamp\",[\"xi\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"ty\",[6,\"d.u32\",[[6,\"std.clamp\",[\"yi\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[10,[6,\"std.textureLoad\",[[7,[7,\"sampleLayout\",\"$\"],\"field\"],[6,\"d.vec2u\",[\"tx\",\"ty\"]],[5,\"0\"]]]]]]},externals:{sampleLayout:()=>e,\"d.u32\":()=>Y,\"std.clamp\":()=>z,\"d.f32\":()=>a,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He}})&&s.f)({})).$name(\"fieldFetchTexel\");return{sampleLayout:e,fieldSample:y.fn([u],b)((s=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(s.f=(r=>{\"use gpu\";let o=e.$.params,n=z(r.x,o.originX,__tsover_add(o.originX,o.spanX)),i=z(r.y,o.originY,__tsover_add(o.originY,o.spanY)),d=te(u(__tsover_sub(r.x,n),__tsover_sub(r.y,i))),l=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(n,o.originX),o.spanX),o.activeResF),.5),c=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(i,o.originY),o.spanY),o.activeResF),.5),_=K(l),p=K(c),f=__tsover_sub(l,_),h=__tsover_sub(c,p),g=__tsover_mul(f,f),x=__tsover_mul(g,f),T=__tsover_sub(__tsover_add(__tsover_mul(x,-.5),g),__tsover_mul(f,.5)),S=__tsover_add(__tsover_sub(__tsover_mul(x,1.5),__tsover_mul(g,2.5)),1),A=__tsover_add(__tsover_add(__tsover_mul(x,-1.5),__tsover_mul(g,2)),__tsover_mul(f,.5)),E=__tsover_sub(__tsover_mul(x,.5),__tsover_mul(g,.5)),M=__tsover_mul(h,h),$=__tsover_mul(M,h),L=__tsover_sub(__tsover_add(__tsover_mul($,-.5),M),__tsover_mul(h,.5)),B=__tsover_add(__tsover_sub(__tsover_mul($,1.5),__tsover_mul(M,2.5)),1),D=__tsover_add(__tsover_add(__tsover_mul($,-1.5),__tsover_mul(M,2)),__tsover_mul(h,.5)),G=__tsover_sub(__tsover_mul($,.5),__tsover_mul(M,.5)),I=t(__tsover_sub(_,1),__tsover_sub(p,1)),X=t(_,__tsover_sub(p,1)),H=t(__tsover_add(_,1),__tsover_sub(p,1)),ee=t(__tsover_add(_,2),__tsover_sub(p,1)),Q=t(__tsover_sub(_,1),p),de=t(_,p),Ee=t(__tsover_add(_,1),p),he=t(__tsover_add(_,2),p),Me=t(__tsover_sub(_,1),__tsover_add(p,1)),Te=t(_,__tsover_add(p,1)),Pe=t(__tsover_add(_,1),__tsover_add(p,1)),Ce=t(__tsover_add(_,2),__tsover_add(p,1)),ie=t(__tsover_sub(_,1),__tsover_add(p,2)),Ne=t(_,__tsover_add(p,2)),ye=t(__tsover_add(_,1),__tsover_add(p,2)),Ve=t(__tsover_add(_,2),__tsover_add(p,2)),qe=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(I.r,T),L),__tsover_mul(__tsover_mul(X.r,S),L)),__tsover_mul(__tsover_mul(H.r,A),L)),__tsover_mul(__tsover_mul(ee.r,E),L)),__tsover_mul(__tsover_mul(Q.r,T),B)),__tsover_mul(__tsover_mul(de.r,S),B)),__tsover_mul(__tsover_mul(Ee.r,A),B)),__tsover_mul(__tsover_mul(he.r,E),B)),__tsover_mul(__tsover_mul(Me.r,T),D)),__tsover_mul(__tsover_mul(Te.r,S),D)),__tsover_mul(__tsover_mul(Pe.r,A),D)),__tsover_mul(__tsover_mul(Ce.r,E),D)),__tsover_mul(__tsover_mul(ie.r,T),G)),__tsover_mul(__tsover_mul(Ne.r,S),G)),__tsover_mul(__tsover_mul(ye.r,A),G)),__tsover_mul(__tsover_mul(Ve.r,E),G)),st=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(I.a,T),L),__tsover_mul(__tsover_mul(X.a,S),L)),__tsover_mul(__tsover_mul(H.a,A),L)),__tsover_mul(__tsover_mul(ee.a,E),L)),__tsover_mul(__tsover_mul(Q.a,T),B)),__tsover_mul(__tsover_mul(de.a,S),B)),__tsover_mul(__tsover_mul(Ee.a,A),B)),__tsover_mul(__tsover_mul(he.a,E),B)),__tsover_mul(__tsover_mul(Me.a,T),D)),__tsover_mul(__tsover_mul(Te.a,S),D)),__tsover_mul(__tsover_mul(Pe.a,A),D)),__tsover_mul(__tsover_mul(Ce.a,E),D)),__tsover_mul(__tsover_mul(ie.a,T),G)),__tsover_mul(__tsover_mul(Ne.a,S),G)),__tsover_mul(__tsover_mul(ye.a,A),G)),__tsover_mul(__tsover_mul(Ve.a,E),G)),We=Z(Z(de,Ee,f),Z(Te,Pe,f),h),Be=ue(ue(de.r,Ee.r),ue(Te.r,Pe.r)),rt=w(w(de.r,Ee.r),w(Te.r,Pe.r)),tt=z(st,ue(ue(de.a,Ee.a),ue(Te.a,Pe.a)),w(w(de.a,Ee.a),w(Te.a,Pe.a))),Ke=__tsover_add(z(qe,Be,rt),d);return b(Z(Ke,w(__tsover_sub(te(u(__tsover_sub(r.x,.5),__tsover_sub(r.y,.5))),o.rBound),Ke),ce(a(0),.25,d)),We.g,We.b,tt)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"p\",[7,[7,\"sampleLayout\",\"$\"],\"params\"]],[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],[7,\"p\",\"originX\"],[1,[7,\"p\",\"originX\"],\"+\",[7,\"p\",\"spanX\"]]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],[7,\"p\",\"originY\"],[1,[7,\"p\",\"originY\"],\"+\",[7,\"p\",\"spanY\"]]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"px\",[1,[1,[1,[1,\"uxc\",\"-\",[7,\"p\",\"originX\"]],\"/\",[7,\"p\",\"spanX\"]],\"*\",[7,\"p\",\"activeResF\"]],\"-\",[5,\"0.5\"]]],[13,\"py\",[1,[1,[1,[1,\"uyc\",\"-\",[7,\"p\",\"originY\"]],\"/\",[7,\"p\",\"spanY\"]],\"*\",[7,\"p\",\"activeResF\"]],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"px\"]]],[13,\"y0\",[6,\"std.floor\",[\"py\"]]],[13,\"fx\",[1,\"px\",\"-\",\"x0\"]],[13,\"fy\",[1,\"py\",\"-\",\"y0\"]],[13,\"tx2\",[1,\"fx\",\"*\",\"fx\"]],[13,\"tx3\",[1,\"tx2\",\"*\",\"fx\"]],[13,\"wx0\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"tx2\"],\"-\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx1\",[1,[1,[1,\"tx3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wx2\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"tx2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx3\",[1,[1,\"tx3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"0.5\"]]]],[13,\"ty2\",[1,\"fy\",\"*\",\"fy\"]],[13,\"ty3\",[1,\"ty2\",\"*\",\"fy\"]],[13,\"wy0\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"ty2\"],\"-\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy1\",[1,[1,[1,\"ty3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wy2\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"ty2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy3\",[1,[1,\"ty3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"0.5\"]]]],[13,\"k00\",[6,\"fetchTexel\",[[1,\"x0\",\"-\",[5,\"1\"]],[1,\"y0\",\"-\",[5,\"1\"]]]]],[13,\"k01\",[6,\"fetchTexel\",[\"x0\",[1,\"y0\",\"-\",[5,\"1\"]]]]],[13,\"k02\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],[1,\"y0\",\"-\",[5,\"1\"]]]]],[13,\"k03\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"2\"]],[1,\"y0\",\"-\",[5,\"1\"]]]]],[13,\"k10\",[6,\"fetchTexel\",[[1,\"x0\",\"-\",[5,\"1\"]],\"y0\"]]],[13,\"k11\",[6,\"fetchTexel\",[\"x0\",\"y0\"]]],[13,\"k12\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],\"y0\"]]],[13,\"k13\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"2\"]],\"y0\"]]],[13,\"k20\",[6,\"fetchTexel\",[[1,\"x0\",\"-\",[5,\"1\"]],[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"k21\",[6,\"fetchTexel\",[\"x0\",[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"k22\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"k23\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"2\"]],[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"k30\",[6,\"fetchTexel\",[[1,\"x0\",\"-\",[5,\"1\"]],[1,\"y0\",\"+\",[5,\"2\"]]]]],[13,\"k31\",[6,\"fetchTexel\",[\"x0\",[1,\"y0\",\"+\",[5,\"2\"]]]]],[13,\"k32\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],[1,\"y0\",\"+\",[5,\"2\"]]]]],[13,\"k33\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"2\"]],[1,\"y0\",\"+\",[5,\"2\"]]]]],[13,\"rAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"aAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"bl\",[6,\"std.mix\",[[6,\"std.mix\",[\"k11\",\"k12\",\"fx\"]],[6,\"std.mix\",[\"k21\",\"k22\",\"fx\"]],\"fy\"]]],[13,\"rMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.min\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"rMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.max\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"aMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.min\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.max\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aOut\",[6,\"std.clamp\",[\"aAcc\",\"aMin\",\"aMax\"]]],[13,\"rNear\",[1,[6,\"std.clamp\",[\"rAcc\",\"rMin\",\"rMax\"]],\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",[7,\"p\",\"rBound\"]]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[10,[6,\"d.vec4f\",[\"rOut\",[7,\"bl\",\"g\"],[7,\"bl\",\"b\"],\"aOut\"]]]]]},externals:{sampleLayout:()=>e,\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,fetchTexel:()=>t,\"std.mix\":()=>Z,\"std.min\":()=>ue,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.f32\":()=>a,\"d.vec4f\":()=>b}})&&s.f)({})).$name(\"fieldSample\"),fieldSampleFast:y.fn([u],b)((s=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(s.f=(r=>{\"use gpu\";let o=e.$.params,n=z(r.x,o.originX,__tsover_add(o.originX,o.spanX)),i=z(r.y,o.originY,__tsover_add(o.originY,o.spanY)),d=te(u(__tsover_sub(r.x,n),__tsover_sub(r.y,i))),l=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(n,o.originX),o.spanX),o.activeResF),.5),c=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(i,o.originY),o.spanY),o.activeResF),.5),_=K(l),p=K(c),f=__tsover_sub(l,_),h=__tsover_sub(c,p),g=t(_,p),x=t(__tsover_add(_,1),p),T=t(_,__tsover_add(p,1)),S=t(__tsover_add(_,1),__tsover_add(p,1)),A=Z(Z(g,x,f),Z(T,S,f),h),E=__tsover_add(A.r,d);return b(Z(E,w(__tsover_sub(te(u(__tsover_sub(r.x,.5),__tsover_sub(r.y,.5))),o.rBound),E),ce(a(0),.25,d)),A.g,A.b,A.a)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"p\",[7,[7,\"sampleLayout\",\"$\"],\"params\"]],[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],[7,\"p\",\"originX\"],[1,[7,\"p\",\"originX\"],\"+\",[7,\"p\",\"spanX\"]]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],[7,\"p\",\"originY\"],[1,[7,\"p\",\"originY\"],\"+\",[7,\"p\",\"spanY\"]]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"px\",[1,[1,[1,[1,\"uxc\",\"-\",[7,\"p\",\"originX\"]],\"/\",[7,\"p\",\"spanX\"]],\"*\",[7,\"p\",\"activeResF\"]],\"-\",[5,\"0.5\"]]],[13,\"py\",[1,[1,[1,[1,\"uyc\",\"-\",[7,\"p\",\"originY\"]],\"/\",[7,\"p\",\"spanY\"]],\"*\",[7,\"p\",\"activeResF\"]],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"px\"]]],[13,\"y0\",[6,\"std.floor\",[\"py\"]]],[13,\"fx\",[1,\"px\",\"-\",\"x0\"]],[13,\"fy\",[1,\"py\",\"-\",\"y0\"]],[13,\"t00\",[6,\"fetchTexel\",[\"x0\",\"y0\"]]],[13,\"t10\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],\"y0\"]]],[13,\"t01\",[6,\"fetchTexel\",[\"x0\",[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"t11\",[6,\"fetchTexel\",[[1,\"x0\",\"+\",[5,\"1\"]],[1,\"y0\",\"+\",[5,\"1\"]]]]],[13,\"bl\",[6,\"std.mix\",[[6,\"std.mix\",[\"t00\",\"t10\",\"fx\"]],[6,\"std.mix\",[\"t01\",\"t11\",\"fx\"]],\"fy\"]]],[13,\"rNear\",[1,[7,\"bl\",\"r\"],\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",[7,\"p\",\"rBound\"]]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[10,[6,\"d.vec4f\",[\"rOut\",[7,\"bl\",\"g\"],[7,\"bl\",\"b\"],[7,\"bl\",\"a\"]]]]]]},externals:{sampleLayout:()=>e,\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,fetchTexel:()=>t,\"std.mix\":()=>Z,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.f32\":()=>a,\"d.vec4f\":()=>b}})&&s.f)({})).$name(\"fieldSampleFast\"),SampleParams:Qv}}function oS(e,t,s,r,o={}){let n=Xc(),i=(globalThis.__TYPEGPU_AUTONAME__??(p=>p))(e.createTexture({size:[n,n],format:zm}).$usage(\"storage\",\"sampled\"),\"fieldTexture\"),d=o.paramsUniform??e.createUniform(va);r(()=>i.destroy());let l=e.createBindGroup(t,{field:i,params:d.buffer,...o.sdfSourceTexture?{sdfSource:o.sdfSourceTexture}:{}}),c=wv(e,(p=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(p.f=((f,h)=>{\"use gpu\";s(f,h)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[6,\"kernel\",[\"cx\",\"cy\"]]]]},externals:{kernel:()=>s}})&&p.f)({}),{bindGroup:l});for(let p of o.extraBindGroups??[])c=c.with(p);let _=n;return{computeStep:c,fieldTexture:i,maxRes:n,get activeRes(){return _},writeParams(p){d.write(p)},dispatch(p){_=p,c.dispatchThreads(p,p)}}}function nS(){return{layout:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({field:{storageTexture:an(zm,\"write-only\")},params:{uniform:va},sdfSource:{texture:Hs(a)}}),\"layout\"),MarchParams:va}}function Fy(){return{fieldSampleArg:y.fn([u,Hs(a),a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=z(t.x,r,__tsover_add(r,n)),_=z(t.y,o,__tsover_add(o,i)),p=te(u(__tsover_sub(t.x,c),__tsover_sub(t.y,_))),f=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(c,r),n),d),.5),h=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(_,o),i),d),.5),g=K(f),x=K(h),T=__tsover_sub(f,g),S=__tsover_sub(h,x),A=__tsover_mul(T,T),E=__tsover_mul(A,T),M=__tsover_sub(__tsover_add(__tsover_mul(E,-.5),A),__tsover_mul(T,.5)),$=__tsover_add(__tsover_sub(__tsover_mul(E,1.5),__tsover_mul(A,2.5)),1),L=__tsover_add(__tsover_add(__tsover_mul(E,-1.5),__tsover_mul(A,2)),__tsover_mul(T,.5)),B=__tsover_sub(__tsover_mul(E,.5),__tsover_mul(A,.5)),D=__tsover_mul(S,S),G=__tsover_mul(D,S),I=__tsover_sub(__tsover_add(__tsover_mul(G,-.5),D),__tsover_mul(S,.5)),X=__tsover_add(__tsover_sub(__tsover_mul(G,1.5),__tsover_mul(D,2.5)),1),H=__tsover_add(__tsover_add(__tsover_mul(G,-1.5),__tsover_mul(D,2)),__tsover_mul(S,.5)),ee=__tsover_sub(__tsover_mul(G,.5),__tsover_mul(D,.5)),Q=__tsover_sub(d,1),de=Y(z(__tsover_sub(g,1),a(0),Q)),Ee=Y(z(g,a(0),Q)),he=Y(z(__tsover_add(g,1),a(0),Q)),Me=Y(z(__tsover_add(g,2),a(0),Q)),Te=Y(z(__tsover_sub(x,1),a(0),Q)),Pe=Y(z(x,a(0),Q)),Ce=Y(z(__tsover_add(x,1),a(0),Q)),ie=Y(z(__tsover_add(x,2),a(0),Q)),Ne=at(s,He(de,Te),0),ye=at(s,He(Ee,Te),0),Ve=at(s,He(he,Te),0),qe=at(s,He(Me,Te),0),st=at(s,He(de,Pe),0),We=at(s,He(Ee,Pe),0),Be=at(s,He(he,Pe),0),rt=at(s,He(Me,Pe),0),tt=at(s,He(de,Ce),0),Ke=at(s,He(Ee,Ce),0),Oe=at(s,He(he,Ce),0),gt=at(s,He(Me,Ce),0),pt=at(s,He(de,ie),0),Ut=at(s,He(Ee,ie),0),Lt=at(s,He(he,ie),0),Wt=at(s,He(Me,ie),0),vs=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Ne.r,M),I),__tsover_mul(__tsover_mul(ye.r,$),I)),__tsover_mul(__tsover_mul(Ve.r,L),I)),__tsover_mul(__tsover_mul(qe.r,B),I)),__tsover_mul(__tsover_mul(st.r,M),X)),__tsover_mul(__tsover_mul(We.r,$),X)),__tsover_mul(__tsover_mul(Be.r,L),X)),__tsover_mul(__tsover_mul(rt.r,B),X)),__tsover_mul(__tsover_mul(tt.r,M),H)),__tsover_mul(__tsover_mul(Ke.r,$),H)),__tsover_mul(__tsover_mul(Oe.r,L),H)),__tsover_mul(__tsover_mul(gt.r,B),H)),__tsover_mul(__tsover_mul(pt.r,M),ee)),__tsover_mul(__tsover_mul(Ut.r,$),ee)),__tsover_mul(__tsover_mul(Lt.r,L),ee)),__tsover_mul(__tsover_mul(Wt.r,B),ee)),jt=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Ne.a,M),I),__tsover_mul(__tsover_mul(ye.a,$),I)),__tsover_mul(__tsover_mul(Ve.a,L),I)),__tsover_mul(__tsover_mul(qe.a,B),I)),__tsover_mul(__tsover_mul(st.a,M),X)),__tsover_mul(__tsover_mul(We.a,$),X)),__tsover_mul(__tsover_mul(Be.a,L),X)),__tsover_mul(__tsover_mul(rt.a,B),X)),__tsover_mul(__tsover_mul(tt.a,M),H)),__tsover_mul(__tsover_mul(Ke.a,$),H)),__tsover_mul(__tsover_mul(Oe.a,L),H)),__tsover_mul(__tsover_mul(gt.a,B),H)),__tsover_mul(__tsover_mul(pt.a,M),ee)),__tsover_mul(__tsover_mul(Ut.a,$),ee)),__tsover_mul(__tsover_mul(Lt.a,L),ee)),__tsover_mul(__tsover_mul(Wt.a,B),ee)),Qt=Z(Z(We,Be,T),Z(Ke,Oe,T),S),$s=ue(ue(We.r,Be.r),ue(Ke.r,Oe.r)),Is=w(w(We.r,Be.r),w(Ke.r,Oe.r)),Ys=z(jt,ue(ue(We.a,Be.a),ue(Ke.a,Oe.a)),w(w(We.a,Be.a),w(Ke.a,Oe.a))),hs=__tsover_add(z(vs,$s,Is),p);return b(Z(hs,w(__tsover_sub(te(u(__tsover_sub(t.x,.5),__tsover_sub(t.y,.5))),l),hs),ce(a(0),.25,p)),Qt.g,Qt.b,Ys)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"field\"},{type:\"i\",name:\"originX\"},{type:\"i\",name:\"originY\"},{type:\"i\",name:\"spanX\"},{type:\"i\",name:\"spanY\"},{type:\"i\",name:\"activeResF\"},{type:\"i\",name:\"rBound\"}],body:[0,[[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],\"originX\",[1,\"originX\",\"+\",\"spanX\"]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],\"originY\",[1,\"originY\",\"+\",\"spanY\"]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"px\",[1,[1,[1,[1,\"uxc\",\"-\",\"originX\"],\"/\",\"spanX\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"py\",[1,[1,[1,[1,\"uyc\",\"-\",\"originY\"],\"/\",\"spanY\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"px\"]]],[13,\"y0\",[6,\"std.floor\",[\"py\"]]],[13,\"fx\",[1,\"px\",\"-\",\"x0\"]],[13,\"fy\",[1,\"py\",\"-\",\"y0\"]],[13,\"tx2\",[1,\"fx\",\"*\",\"fx\"]],[13,\"tx3\",[1,\"tx2\",\"*\",\"fx\"]],[13,\"wx0\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"tx2\"],\"-\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx1\",[1,[1,[1,\"tx3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wx2\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"tx2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx3\",[1,[1,\"tx3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"0.5\"]]]],[13,\"ty2\",[1,\"fy\",\"*\",\"fy\"]],[13,\"ty3\",[1,\"ty2\",\"*\",\"fy\"]],[13,\"wy0\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"ty2\"],\"-\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy1\",[1,[1,[1,\"ty3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wy2\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"ty2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy3\",[1,[1,\"ty3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"0.5\"]]]],[13,\"maxT\",[1,\"activeResF\",\"-\",[5,\"1\"]]],[13,\"cxm\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"-\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"x0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx2\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"2\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cym\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"-\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"y0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy2\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"2\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"k00\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cym\"]],[5,\"0\"]]]],[13,\"k01\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cym\"]],[5,\"0\"]]]],[13,\"k02\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cym\"]],[5,\"0\"]]]],[13,\"k03\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cym\"]],[5,\"0\"]]]],[13,\"k10\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy0\"]],[5,\"0\"]]]],[13,\"k11\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy0\"]],[5,\"0\"]]]],[13,\"k12\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy0\"]],[5,\"0\"]]]],[13,\"k13\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy0\"]],[5,\"0\"]]]],[13,\"k20\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy1\"]],[5,\"0\"]]]],[13,\"k21\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy1\"]],[5,\"0\"]]]],[13,\"k22\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy1\"]],[5,\"0\"]]]],[13,\"k23\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy1\"]],[5,\"0\"]]]],[13,\"k30\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy2\"]],[5,\"0\"]]]],[13,\"k31\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy2\"]],[5,\"0\"]]]],[13,\"k32\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy2\"]],[5,\"0\"]]]],[13,\"k33\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy2\"]],[5,\"0\"]]]],[13,\"rAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"aAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"bl\",[6,\"std.mix\",[[6,\"std.mix\",[\"k11\",\"k12\",\"fx\"]],[6,\"std.mix\",[\"k21\",\"k22\",\"fx\"]],\"fy\"]]],[13,\"rMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.min\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"rMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.max\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"aMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.min\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.max\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aOut\",[6,\"std.clamp\",[\"aAcc\",\"aMin\",\"aMax\"]]],[13,\"rNear\",[1,[6,\"std.clamp\",[\"rAcc\",\"rMin\",\"rMax\"]],\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",\"rBound\"]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[10,[6,\"d.vec4f\",[\"rOut\",[7,\"bl\",\"g\"],[7,\"bl\",\"b\"],\"aOut\"]]]]]},externals:{\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"d.u32\":()=>Y,\"d.f32\":()=>a,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"std.mix\":()=>Z,\"std.min\":()=>ue,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"fieldSampleArg\"),fieldSampleGradArg:y.fn([u,Hs(a),a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=z(t.x,r,__tsover_add(r,n)),_=z(t.y,o,__tsover_add(o,i)),p=te(u(__tsover_sub(t.x,c),__tsover_sub(t.y,_))),f=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(c,r),n),d),.5),h=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(_,o),i),d),.5),g=K(f),x=K(h),T=__tsover_sub(f,g),S=__tsover_sub(h,x),A=__tsover_mul(T,T),E=__tsover_mul(A,T),M=__tsover_sub(__tsover_add(__tsover_mul(E,-.5),A),__tsover_mul(T,.5)),$=__tsover_add(__tsover_sub(__tsover_mul(E,1.5),__tsover_mul(A,2.5)),1),L=__tsover_add(__tsover_add(__tsover_mul(E,-1.5),__tsover_mul(A,2)),__tsover_mul(T,.5)),B=__tsover_sub(__tsover_mul(E,.5),__tsover_mul(A,.5)),D=__tsover_mul(S,S),G=__tsover_mul(D,S),I=__tsover_sub(__tsover_add(__tsover_mul(G,-.5),D),__tsover_mul(S,.5)),X=__tsover_add(__tsover_sub(__tsover_mul(G,1.5),__tsover_mul(D,2.5)),1),H=__tsover_add(__tsover_add(__tsover_mul(G,-1.5),__tsover_mul(D,2)),__tsover_mul(S,.5)),ee=__tsover_sub(__tsover_mul(G,.5),__tsover_mul(D,.5)),Q=__tsover_sub(1,T),de=__tsover_mul(__tsover_mul(__tsover_mul(Q,Q),Q),.16666667),Ee=__tsover_add(__tsover_sub(__tsover_mul(E,.5),A),.66666667),he=__tsover_add(__tsover_add(__tsover_add(__tsover_mul(E,-.5),__tsover_mul(A,.5)),__tsover_mul(T,.5)),.16666667),Me=__tsover_mul(E,.16666667),Te=__tsover_mul(__tsover_mul(Q,Q),-.5),Pe=__tsover_sub(__tsover_mul(A,1.5),__tsover_mul(T,2)),Ce=__tsover_add(__tsover_add(__tsover_mul(A,-1.5),T),.5),ie=__tsover_mul(A,.5),Ne=__tsover_sub(1,S),ye=__tsover_mul(__tsover_mul(__tsover_mul(Ne,Ne),Ne),.16666667),Ve=__tsover_add(__tsover_sub(__tsover_mul(G,.5),D),.66666667),qe=__tsover_add(__tsover_add(__tsover_add(__tsover_mul(G,-.5),__tsover_mul(D,.5)),__tsover_mul(S,.5)),.16666667),st=__tsover_mul(G,.16666667),We=__tsover_mul(__tsover_mul(Ne,Ne),-.5),Be=__tsover_sub(__tsover_mul(D,1.5),__tsover_mul(S,2)),rt=__tsover_add(__tsover_add(__tsover_mul(D,-1.5),S),.5),tt=__tsover_mul(D,.5),Ke=__tsover_sub(d,1),Oe=Y(z(__tsover_sub(g,1),a(0),Ke)),gt=Y(z(g,a(0),Ke)),pt=Y(z(__tsover_add(g,1),a(0),Ke)),Ut=Y(z(__tsover_add(g,2),a(0),Ke)),Lt=Y(z(__tsover_sub(x,1),a(0),Ke)),Wt=Y(z(x,a(0),Ke)),vs=Y(z(__tsover_add(x,1),a(0),Ke)),jt=Y(z(__tsover_add(x,2),a(0),Ke)),Qt=at(s,He(Oe,Lt),0),$s=at(s,He(gt,Lt),0),Is=at(s,He(pt,Lt),0),Ys=at(s,He(Ut,Lt),0),hs=at(s,He(Oe,Wt),0),rr=at(s,He(gt,Wt),0),or=at(s,He(pt,Wt),0),Cr=at(s,He(Ut,Wt),0),Zr=at(s,He(Oe,vs),0),Rr=at(s,He(gt,vs),0),ur=at(s,He(pt,vs),0),Qr=at(s,He(Ut,vs),0),nr=at(s,He(Oe,jt),0),ho=at(s,He(gt,jt),0),Cn=at(s,He(pt,jt),0),Go=at(s,He(Ut,jt),0),ed=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Qt.r,M),I),__tsover_mul(__tsover_mul($s.r,$),I)),__tsover_mul(__tsover_mul(Is.r,L),I)),__tsover_mul(__tsover_mul(Ys.r,B),I)),__tsover_mul(__tsover_mul(hs.r,M),X)),__tsover_mul(__tsover_mul(rr.r,$),X)),__tsover_mul(__tsover_mul(or.r,L),X)),__tsover_mul(__tsover_mul(Cr.r,B),X)),__tsover_mul(__tsover_mul(Zr.r,M),H)),__tsover_mul(__tsover_mul(Rr.r,$),H)),__tsover_mul(__tsover_mul(ur.r,L),H)),__tsover_mul(__tsover_mul(Qr.r,B),H)),__tsover_mul(__tsover_mul(nr.r,M),ee)),__tsover_mul(__tsover_mul(ho.r,$),ee)),__tsover_mul(__tsover_mul(Cn.r,L),ee)),__tsover_mul(__tsover_mul(Go.r,B),ee)),ui=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Qt.a,M),I),__tsover_mul(__tsover_mul($s.a,$),I)),__tsover_mul(__tsover_mul(Is.a,L),I)),__tsover_mul(__tsover_mul(Ys.a,B),I)),__tsover_mul(__tsover_mul(hs.a,M),X)),__tsover_mul(__tsover_mul(rr.a,$),X)),__tsover_mul(__tsover_mul(or.a,L),X)),__tsover_mul(__tsover_mul(Cr.a,B),X)),__tsover_mul(__tsover_mul(Zr.a,M),H)),__tsover_mul(__tsover_mul(Rr.a,$),H)),__tsover_mul(__tsover_mul(ur.a,L),H)),__tsover_mul(__tsover_mul(Qr.a,B),H)),__tsover_mul(__tsover_mul(nr.a,M),ee)),__tsover_mul(__tsover_mul(ho.a,$),ee)),__tsover_mul(__tsover_mul(Cn.a,L),ee)),__tsover_mul(__tsover_mul(Go.a,B),ee)),td=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Qt.r,Te),ye),__tsover_mul(__tsover_mul($s.r,Pe),ye)),__tsover_mul(__tsover_mul(Is.r,Ce),ye)),__tsover_mul(__tsover_mul(Ys.r,ie),ye)),__tsover_mul(__tsover_mul(hs.r,Te),Ve)),__tsover_mul(__tsover_mul(rr.r,Pe),Ve)),__tsover_mul(__tsover_mul(or.r,Ce),Ve)),__tsover_mul(__tsover_mul(Cr.r,ie),Ve)),__tsover_mul(__tsover_mul(Zr.r,Te),qe)),__tsover_mul(__tsover_mul(Rr.r,Pe),qe)),__tsover_mul(__tsover_mul(ur.r,Ce),qe)),__tsover_mul(__tsover_mul(Qr.r,ie),qe)),__tsover_mul(__tsover_mul(nr.r,Te),st)),__tsover_mul(__tsover_mul(ho.r,Pe),st)),__tsover_mul(__tsover_mul(Cn.r,Ce),st)),__tsover_mul(__tsover_mul(Go.r,ie),st)),sd=__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_add(__tsover_mul(__tsover_mul(Qt.r,de),We),__tsover_mul(__tsover_mul($s.r,Ee),We)),__tsover_mul(__tsover_mul(Is.r,he),We)),__tsover_mul(__tsover_mul(Ys.r,Me),We)),__tsover_mul(__tsover_mul(hs.r,de),Be)),__tsover_mul(__tsover_mul(rr.r,Ee),Be)),__tsover_mul(__tsover_mul(or.r,he),Be)),__tsover_mul(__tsover_mul(Cr.r,Me),Be)),__tsover_mul(__tsover_mul(Zr.r,de),rt)),__tsover_mul(__tsover_mul(Rr.r,Ee),rt)),__tsover_mul(__tsover_mul(ur.r,he),rt)),__tsover_mul(__tsover_mul(Qr.r,Me),rt)),__tsover_mul(__tsover_mul(nr.r,de),tt)),__tsover_mul(__tsover_mul(ho.r,Ee),tt)),__tsover_mul(__tsover_mul(Cn.r,he),tt)),__tsover_mul(__tsover_mul(Go.r,Me),tt)),N=ue(ue(rr.r,or.r),ue(Rr.r,ur.r)),xe=w(w(rr.r,or.r),w(Rr.r,ur.r)),pe=z(ui,ue(ue(rr.a,or.a),ue(Rr.a,ur.a)),w(w(rr.a,or.a),w(Rr.a,ur.a))),_e=__tsover_add(__tsover_mul(__tsover_sub(xe,N),.3),1e-6),me=z(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(xe,ed),_e),.5),.5),0,1),Ue=__tsover_sub(Z(xe,ed,me),__tsover_mul(__tsover_mul(_e,me),__tsover_sub(1,me))),je=z(__tsover_add(__tsover_mul(__tsover_div(__tsover_sub(Ue,N),_e),.5),.5),0,1),yt=__tsover_add(Z(N,Ue,je),__tsover_mul(__tsover_mul(_e,je),__tsover_sub(1,je))),wt=__tsover_add(yt,p),mt=Z(wt,w(__tsover_sub(te(u(__tsover_sub(t.x,.5),__tsover_sub(t.y,.5))),l),wt),ce(a(0),.25,p)),us=F(a(0),a(1),W(__tsover_sub(t.x,c))<1e-7),ds=F(a(0),a(1),W(__tsover_sub(t.y,_))<1e-7),hr=__tsover_div(1,w(p,1e-5));return b(mt,__tsover_add(__tsover_mul(__tsover_mul(td,__tsover_div(d,n)),us),__tsover_mul(__tsover_sub(t.x,c),hr)),__tsover_add(__tsover_mul(__tsover_mul(sd,__tsover_div(d,i)),ds),__tsover_mul(__tsover_sub(t.y,_),hr)),pe)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"field\"},{type:\"i\",name:\"originX\"},{type:\"i\",name:\"originY\"},{type:\"i\",name:\"spanX\"},{type:\"i\",name:\"spanY\"},{type:\"i\",name:\"activeResF\"},{type:\"i\",name:\"rBound\"}],body:[0,[[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],\"originX\",[1,\"originX\",\"+\",\"spanX\"]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],\"originY\",[1,\"originY\",\"+\",\"spanY\"]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"px\",[1,[1,[1,[1,\"uxc\",\"-\",\"originX\"],\"/\",\"spanX\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"py\",[1,[1,[1,[1,\"uyc\",\"-\",\"originY\"],\"/\",\"spanY\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"px\"]]],[13,\"y0\",[6,\"std.floor\",[\"py\"]]],[13,\"fx\",[1,\"px\",\"-\",\"x0\"]],[13,\"fy\",[1,\"py\",\"-\",\"y0\"]],[13,\"tx2\",[1,\"fx\",\"*\",\"fx\"]],[13,\"tx3\",[1,\"tx2\",\"*\",\"fx\"]],[13,\"wx0\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"tx2\"],\"-\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx1\",[1,[1,[1,\"tx3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wx2\",[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"tx2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fx\",\"*\",[5,\"0.5\"]]]],[13,\"wx3\",[1,[1,\"tx3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"tx2\",\"*\",[5,\"0.5\"]]]],[13,\"ty2\",[1,\"fy\",\"*\",\"fy\"]],[13,\"ty3\",[1,\"ty2\",\"*\",\"fy\"]],[13,\"wy0\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",\"ty2\"],\"-\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy1\",[1,[1,[1,\"ty3\",\"*\",[5,\"1.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"2.5\"]]],\"+\",[5,\"1\"]]],[13,\"wy2\",[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",[1,\"ty2\",\"*\",[5,\"2\"]]],\"+\",[1,\"fy\",\"*\",[5,\"0.5\"]]]],[13,\"wy3\",[1,[1,\"ty3\",\"*\",[5,\"0.5\"]],\"-\",[1,\"ty2\",\"*\",[5,\"0.5\"]]]],[13,\"oxf\",[1,[5,\"1\"],\"-\",\"fx\"]],[13,\"bx0\",[1,[1,[1,\"oxf\",\"*\",\"oxf\"],\"*\",\"oxf\"],\"*\",[5,\"0.16666667\"]]],[13,\"bx1\",[1,[1,[1,\"tx3\",\"*\",[5,\"0.5\"]],\"-\",\"tx2\"],\"+\",[5,\"0.66666667\"]]],[13,\"bx2\",[1,[1,[1,[1,\"tx3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",[1,\"tx2\",\"*\",[5,\"0.5\"]]],\"+\",[1,\"fx\",\"*\",[5,\"0.5\"]]],\"+\",[5,\"0.16666667\"]]],[13,\"bx3\",[1,\"tx3\",\"*\",[5,\"0.16666667\"]]],[13,\"dbx0\",[1,[1,\"oxf\",\"*\",\"oxf\"],\"*\",[4,\"-\",[5,\"0.5\"]]]],[13,\"dbx1\",[1,[1,\"tx2\",\"*\",[5,\"1.5\"]],\"-\",[1,\"fx\",\"*\",[5,\"2\"]]]],[13,\"dbx2\",[1,[1,[1,\"tx2\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",\"fx\"],\"+\",[5,\"0.5\"]]],[13,\"dbx3\",[1,\"tx2\",\"*\",[5,\"0.5\"]]],[13,\"oyf\",[1,[5,\"1\"],\"-\",\"fy\"]],[13,\"by0\",[1,[1,[1,\"oyf\",\"*\",\"oyf\"],\"*\",\"oyf\"],\"*\",[5,\"0.16666667\"]]],[13,\"by1\",[1,[1,[1,\"ty3\",\"*\",[5,\"0.5\"]],\"-\",\"ty2\"],\"+\",[5,\"0.66666667\"]]],[13,\"by2\",[1,[1,[1,[1,\"ty3\",\"*\",[4,\"-\",[5,\"0.5\"]]],\"+\",[1,\"ty2\",\"*\",[5,\"0.5\"]]],\"+\",[1,\"fy\",\"*\",[5,\"0.5\"]]],\"+\",[5,\"0.16666667\"]]],[13,\"by3\",[1,\"ty3\",\"*\",[5,\"0.16666667\"]]],[13,\"dby0\",[1,[1,\"oyf\",\"*\",\"oyf\"],\"*\",[4,\"-\",[5,\"0.5\"]]]],[13,\"dby1\",[1,[1,\"ty2\",\"*\",[5,\"1.5\"]],\"-\",[1,\"fy\",\"*\",[5,\"2\"]]]],[13,\"dby2\",[1,[1,[1,\"ty2\",\"*\",[4,\"-\",[5,\"1.5\"]]],\"+\",\"fy\"],\"+\",[5,\"0.5\"]]],[13,\"dby3\",[1,\"ty2\",\"*\",[5,\"0.5\"]]],[13,\"maxT\",[1,\"activeResF\",\"-\",[5,\"1\"]]],[13,\"cxm\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"-\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"x0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx2\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"2\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cym\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"-\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"y0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy2\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"2\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"k00\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cym\"]],[5,\"0\"]]]],[13,\"k01\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cym\"]],[5,\"0\"]]]],[13,\"k02\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cym\"]],[5,\"0\"]]]],[13,\"k03\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cym\"]],[5,\"0\"]]]],[13,\"k10\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy0\"]],[5,\"0\"]]]],[13,\"k11\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy0\"]],[5,\"0\"]]]],[13,\"k12\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy0\"]],[5,\"0\"]]]],[13,\"k13\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy0\"]],[5,\"0\"]]]],[13,\"k20\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy1\"]],[5,\"0\"]]]],[13,\"k21\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy1\"]],[5,\"0\"]]]],[13,\"k22\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy1\"]],[5,\"0\"]]]],[13,\"k23\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy1\"]],[5,\"0\"]]]],[13,\"k30\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cxm\",\"cy2\"]],[5,\"0\"]]]],[13,\"k31\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy2\"]],[5,\"0\"]]]],[13,\"k32\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy2\"]],[5,\"0\"]]]],[13,\"k33\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx2\",\"cy2\"]],[5,\"0\"]]]],[13,\"rAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"r\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"r\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"r\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"r\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"aAcc\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy0\"],\"+\",[1,[1,[7,\"k01\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k02\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k03\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy0\"]],\"+\",[1,[1,[7,\"k10\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k11\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k12\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k13\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy1\"]],\"+\",[1,[1,[7,\"k20\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k21\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k22\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k23\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy2\"]],\"+\",[1,[1,[7,\"k30\",\"a\"],\"*\",\"wx0\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k31\",\"a\"],\"*\",\"wx1\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k32\",\"a\"],\"*\",\"wx2\"],\"*\",\"wy3\"]],\"+\",[1,[1,[7,\"k33\",\"a\"],\"*\",\"wx3\"],\"*\",\"wy3\"]]],[13,\"drdpx\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"r\"],\"*\",\"dbx0\"],\"*\",\"by0\"],\"+\",[1,[1,[7,\"k01\",\"r\"],\"*\",\"dbx1\"],\"*\",\"by0\"]],\"+\",[1,[1,[7,\"k02\",\"r\"],\"*\",\"dbx2\"],\"*\",\"by0\"]],\"+\",[1,[1,[7,\"k03\",\"r\"],\"*\",\"dbx3\"],\"*\",\"by0\"]],\"+\",[1,[1,[7,\"k10\",\"r\"],\"*\",\"dbx0\"],\"*\",\"by1\"]],\"+\",[1,[1,[7,\"k11\",\"r\"],\"*\",\"dbx1\"],\"*\",\"by1\"]],\"+\",[1,[1,[7,\"k12\",\"r\"],\"*\",\"dbx2\"],\"*\",\"by1\"]],\"+\",[1,[1,[7,\"k13\",\"r\"],\"*\",\"dbx3\"],\"*\",\"by1\"]],\"+\",[1,[1,[7,\"k20\",\"r\"],\"*\",\"dbx0\"],\"*\",\"by2\"]],\"+\",[1,[1,[7,\"k21\",\"r\"],\"*\",\"dbx1\"],\"*\",\"by2\"]],\"+\",[1,[1,[7,\"k22\",\"r\"],\"*\",\"dbx2\"],\"*\",\"by2\"]],\"+\",[1,[1,[7,\"k23\",\"r\"],\"*\",\"dbx3\"],\"*\",\"by2\"]],\"+\",[1,[1,[7,\"k30\",\"r\"],\"*\",\"dbx0\"],\"*\",\"by3\"]],\"+\",[1,[1,[7,\"k31\",\"r\"],\"*\",\"dbx1\"],\"*\",\"by3\"]],\"+\",[1,[1,[7,\"k32\",\"r\"],\"*\",\"dbx2\"],\"*\",\"by3\"]],\"+\",[1,[1,[7,\"k33\",\"r\"],\"*\",\"dbx3\"],\"*\",\"by3\"]]],[13,\"drdpy\",[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[1,[7,\"k00\",\"r\"],\"*\",\"bx0\"],\"*\",\"dby0\"],\"+\",[1,[1,[7,\"k01\",\"r\"],\"*\",\"bx1\"],\"*\",\"dby0\"]],\"+\",[1,[1,[7,\"k02\",\"r\"],\"*\",\"bx2\"],\"*\",\"dby0\"]],\"+\",[1,[1,[7,\"k03\",\"r\"],\"*\",\"bx3\"],\"*\",\"dby0\"]],\"+\",[1,[1,[7,\"k10\",\"r\"],\"*\",\"bx0\"],\"*\",\"dby1\"]],\"+\",[1,[1,[7,\"k11\",\"r\"],\"*\",\"bx1\"],\"*\",\"dby1\"]],\"+\",[1,[1,[7,\"k12\",\"r\"],\"*\",\"bx2\"],\"*\",\"dby1\"]],\"+\",[1,[1,[7,\"k13\",\"r\"],\"*\",\"bx3\"],\"*\",\"dby1\"]],\"+\",[1,[1,[7,\"k20\",\"r\"],\"*\",\"bx0\"],\"*\",\"dby2\"]],\"+\",[1,[1,[7,\"k21\",\"r\"],\"*\",\"bx1\"],\"*\",\"dby2\"]],\"+\",[1,[1,[7,\"k22\",\"r\"],\"*\",\"bx2\"],\"*\",\"dby2\"]],\"+\",[1,[1,[7,\"k23\",\"r\"],\"*\",\"bx3\"],\"*\",\"dby2\"]],\"+\",[1,[1,[7,\"k30\",\"r\"],\"*\",\"bx0\"],\"*\",\"dby3\"]],\"+\",[1,[1,[7,\"k31\",\"r\"],\"*\",\"bx1\"],\"*\",\"dby3\"]],\"+\",[1,[1,[7,\"k32\",\"r\"],\"*\",\"bx2\"],\"*\",\"dby3\"]],\"+\",[1,[1,[7,\"k33\",\"r\"],\"*\",\"bx3\"],\"*\",\"dby3\"]]],[13,\"rMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.min\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"rMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"r\"],[7,\"k12\",\"r\"]]],[6,\"std.max\",[[7,\"k21\",\"r\"],[7,\"k22\",\"r\"]]]]]],[13,\"aMin\",[6,\"std.min\",[[6,\"std.min\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.min\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aMax\",[6,\"std.max\",[[6,\"std.max\",[[7,\"k11\",\"a\"],[7,\"k12\",\"a\"]]],[6,\"std.max\",[[7,\"k21\",\"a\"],[7,\"k22\",\"a\"]]]]]],[13,\"aOut\",[6,\"std.clamp\",[\"aAcc\",\"aMin\",\"aMax\"]]],[13,\"kSoft\",[1,[1,[1,\"rMax\",\"-\",\"rMin\"],\"*\",[5,\"0.3\"]],\"+\",[5,\"0.000001\"]]],[13,\"hCap\",[6,\"std.clamp\",[[1,[1,[1,[1,\"rMax\",\"-\",\"rAcc\"],\"/\",\"kSoft\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"rCap\",[1,[6,\"std.mix\",[\"rMax\",\"rAcc\",\"hCap\"]],\"-\",[1,[1,\"kSoft\",\"*\",\"hCap\"],\"*\",[1,[5,\"1\"],\"-\",\"hCap\"]]]],[13,\"hFlr\",[6,\"std.clamp\",[[1,[1,[1,[1,\"rCap\",\"-\",\"rMin\"],\"/\",\"kSoft\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"rSoft\",[1,[6,\"std.mix\",[\"rMin\",\"rCap\",\"hFlr\"]],\"+\",[1,[1,\"kSoft\",\"*\",\"hFlr\"],\"*\",[1,[5,\"1\"],\"-\",\"hFlr\"]]]],[13,\"rNear\",[1,\"rSoft\",\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",\"rBound\"]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[13,\"insideX\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[6,\"std.abs\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"]]],\"<\",[5,\"1e-7\"]]]]],[13,\"insideY\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[6,\"std.abs\",[[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]],\"<\",[5,\"1e-7\"]]]]],[13,\"invOut\",[1,[5,\"1\"],\"/\",[6,\"std.max\",[\"outsideDist\",[5,\"0.00001\"]]]]],[13,\"gU\",[1,[1,[1,\"drdpx\",\"*\",[1,\"activeResF\",\"/\",\"spanX\"]],\"*\",\"insideX\"],\"+\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],\"*\",\"invOut\"]]],[13,\"gV\",[1,[1,[1,\"drdpy\",\"*\",[1,\"activeResF\",\"/\",\"spanY\"]],\"*\",\"insideY\"],\"+\",[1,[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"],\"*\",\"invOut\"]]],[10,[6,\"d.vec4f\",[\"rOut\",\"gU\",\"gV\",\"aOut\"]]]]]},externals:{\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"d.u32\":()=>Y,\"d.f32\":()=>a,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"std.min\":()=>ue,\"std.max\":()=>w,\"std.mix\":()=>Z,\"std.smoothstep\":()=>ce,\"std.select\":()=>F,\"std.abs\":()=>W,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"fieldSampleGradArg\"),fieldSampleFastArg:y.fn([u,Hs(a),a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=z(t.x,r,__tsover_add(r,n)),_=z(t.y,o,__tsover_add(o,i)),p=te(u(__tsover_sub(t.x,c),__tsover_sub(t.y,_))),f=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(c,r),n),d),.5),h=__tsover_sub(__tsover_mul(__tsover_div(__tsover_sub(_,o),i),d),.5),g=K(f),x=K(h),T=__tsover_sub(f,g),S=__tsover_sub(h,x),A=__tsover_sub(d,1),E=Y(z(g,a(0),A)),M=Y(z(__tsover_add(g,1),a(0),A)),$=Y(z(x,a(0),A)),L=Y(z(__tsover_add(x,1),a(0),A)),B=at(s,He(E,$),0),D=at(s,He(M,$),0),G=at(s,He(E,L),0),I=at(s,He(M,L),0),X=Z(Z(B,D,T),Z(G,I,T),S),H=__tsover_add(X.r,p);return b(Z(H,w(__tsover_sub(te(u(__tsover_sub(t.x,.5),__tsover_sub(t.y,.5))),l),H),ce(a(0),.25,p)),X.g,X.b,X.a)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"field\"},{type:\"i\",name:\"originX\"},{type:\"i\",name:\"originY\"},{type:\"i\",name:\"spanX\"},{type:\"i\",name:\"spanY\"},{type:\"i\",name:\"activeResF\"},{type:\"i\",name:\"rBound\"}],body:[0,[[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],\"originX\",[1,\"originX\",\"+\",\"spanX\"]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],\"originY\",[1,\"originY\",\"+\",\"spanY\"]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"px\",[1,[1,[1,[1,\"uxc\",\"-\",\"originX\"],\"/\",\"spanX\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"py\",[1,[1,[1,[1,\"uyc\",\"-\",\"originY\"],\"/\",\"spanY\"],\"*\",\"activeResF\"],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"px\"]]],[13,\"y0\",[6,\"std.floor\",[\"py\"]]],[13,\"fx\",[1,\"px\",\"-\",\"x0\"]],[13,\"fy\",[1,\"py\",\"-\",\"y0\"]],[13,\"maxT\",[1,\"activeResF\",\"-\",[5,\"1\"]]],[13,\"cx0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"x0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"y0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"t00\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy0\"]],[5,\"0\"]]]],[13,\"t10\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy0\"]],[5,\"0\"]]]],[13,\"t01\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx0\",\"cy1\"]],[5,\"0\"]]]],[13,\"t11\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[\"cx1\",\"cy1\"]],[5,\"0\"]]]],[13,\"bl\",[6,\"std.mix\",[[6,\"std.mix\",[\"t00\",\"t10\",\"fx\"]],[6,\"std.mix\",[\"t01\",\"t11\",\"fx\"]],\"fy\"]]],[13,\"rNear\",[1,[7,\"bl\",\"r\"],\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",\"rBound\"]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[10,[6,\"d.vec4f\",[\"rOut\",[7,\"bl\",\"g\"],[7,\"bl\",\"b\"],[7,\"bl\",\"a\"]]]]]]},externals:{\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"d.u32\":()=>Y,\"d.f32\":()=>a,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"std.mix\":()=>Z,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"fieldSampleFastArg\"),fieldSampleTexelArg:y.fn([u,Hs(a),a,a,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=z(t.x,r,__tsover_add(r,n)),_=z(t.y,o,__tsover_add(o,i)),p=te(u(__tsover_sub(t.x,c),__tsover_sub(t.y,_))),f=__tsover_sub(d,1),h=z(K(__tsover_mul(__tsover_div(__tsover_sub(c,r),n),d)),a(0),f),g=z(K(__tsover_mul(__tsover_div(__tsover_sub(_,o),i),d)),a(0),f),x=at(s,He(Y(h),Y(g)),0),T=__tsover_add(x.r,p);return b(Z(T,w(__tsover_sub(te(u(__tsover_sub(t.x,.5),__tsover_sub(t.y,.5))),l),T),ce(a(0),.25,p)),x.g,x.b,x.a)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"field\"},{type:\"i\",name:\"originX\"},{type:\"i\",name:\"originY\"},{type:\"i\",name:\"spanX\"},{type:\"i\",name:\"spanY\"},{type:\"i\",name:\"activeResF\"},{type:\"i\",name:\"rBound\"}],body:[0,[[13,\"uxc\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],\"originX\",[1,\"originX\",\"+\",\"spanX\"]]]],[13,\"uyc\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],\"originY\",[1,\"originY\",\"+\",\"spanY\"]]]],[13,\"outsideDist\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"uxc\"],[1,[7,\"uv\",\"y\"],\"-\",\"uyc\"]]]]]],[13,\"maxT\",[1,\"activeResF\",\"-\",[5,\"1\"]]],[13,\"px\",[6,\"std.clamp\",[[6,\"std.floor\",[[1,[1,[1,\"uxc\",\"-\",\"originX\"],\"/\",\"spanX\"],\"*\",\"activeResF\"]]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]],[13,\"py\",[6,\"std.clamp\",[[6,\"std.floor\",[[1,[1,[1,\"uyc\",\"-\",\"originY\"],\"/\",\"spanY\"],\"*\",\"activeResF\"]]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]],[13,\"t\",[6,\"std.textureLoad\",[\"field\",[6,\"d.vec2u\",[[6,\"d.u32\",[\"px\"]],[6,\"d.u32\",[\"py\"]]]],[5,\"0\"]]]],[13,\"rNear\",[1,[7,\"t\",\"r\"],\"+\",\"outsideDist\"]],[13,\"rCircle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",\"rBound\"]],[13,\"rOut\",[6,\"std.mix\",[\"rNear\",[6,\"std.max\",[\"rCircle\",\"rNear\"]],[6,\"std.smoothstep\",[[6,\"d.f32\",[[5,\"0\"]]],[5,\"0.25\"],\"outsideDist\"]]]]],[10,[6,\"d.vec4f\",[\"rOut\",[7,\"t\",\"g\"],[7,\"t\",\"b\"],[7,\"t\",\"a\"]]]]]]},externals:{\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.floor\":()=>K,\"d.f32\":()=>a,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"d.u32\":()=>Y,\"std.mix\":()=>Z,\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"fieldSampleTexelArg\"),texelSpanFn:y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_div(w(t,s),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"spanX\"},{type:\"i\",name:\"spanY\"},{type:\"i\",name:\"activeResF\"}],body:[0,[[10,[1,[6,\"std.max\",[\"spanX\",\"spanY\"]],\"/\",\"activeResF\"]]]]},externals:{\"std.max\":()=>w}})&&e.f)({})).$name(\"fieldTexelSpan\")}}var OB={_vfOriginX:{schema:a,initial:0},_vfOriginY:{schema:a,initial:0},_vfSpanX:{schema:a,initial:1},_vfSpanY:{schema:a,initial:1},_vfActiveRes:{schema:a,initial:1},_vfRBound:{schema:a,initial:.6}};function aS(e,t){let{fieldSampleArg:s,fieldSampleGradArg:r,fieldSampleFastArg:o,fieldSampleTexelArg:n,texelSpanFn:i}=Fy(),d=(globalThis.__TYPEGPU_AUTONAME__??(c=>c))(e.accessor(),\"acc\"),l=c=>[c,d,t.originX,t.originY,t.spanX,t.spanY,t.activeResF,t.rBound];return{volumetricFieldSampler:c=>se(s,\"vfSample\",l(c)),volumetricFieldSamplerGrad:c=>se(r,\"vfSampleGrad\",l(c)),volumetricFieldSamplerFast:c=>se(o,\"vfSampleFast\",l(c)),volumetricFieldSamplerTexel:c=>se(n,\"vfSampleTexel\",l(c)),volumetricFieldTexelSpan:se(i,\"vfTexelSpan\",[t.spanX,t.spanY,t.activeResF])}}function VB(e,t={}){let{patternMode:s=\"none\",gradSampler:r=\"fast\",bakedGradients:o=\"none\"}=t,{computeOutputs:n,uniforms:i,propValues:d,getCpuValue:l}=e,c=n?.volumetricFieldTexture;if(c){let g=aS(c,{originX:i._vfOriginX,originY:i._vfOriginY,spanX:i._vfSpanX,spanY:i._vfSpanY,activeResF:i._vfActiveRes,rBound:i._vfRBound}),x=o!==\"none\",T=x?g.volumetricFieldSamplerGrad:g.volumetricFieldSampler;return{sampler:T,gradSampler:r===\"same\"?T:g.volumetricFieldSamplerFast,texelSampler:g.volumetricFieldSamplerTexel,volumetric:!0,bakedGradients:x}}let _=d.shapeSdfUrl||\"\",p=d.shapeType||\"\";if(_){let g=o===\"all\",x=g?UT(e,_):RT(e,_);return{sampler:x,gradSampler:x,texelSampler:x,volumetric:ZT(p),bakedGradients:g}}let f=DB(p,l(\"shape\")),h=zT(f,DT(e,()=>l(\"shape\")),s);return{sampler:h,gradSampler:h,texelSampler:h,volumetric:Um(f),bakedGradients:!1}}var zi=Math.PI/180;function By(e){if(e&&typeof e==\"object\")return e;if(typeof e==\"string\")try{return JSON.parse(e)}catch{return{}}return{}}function iS(e,t,s,r,o={}){let n=jp[t]??jp.sphere3D,i=o.extraPad??(()=>0),{layout:d}=Ly(),l=(globalThis.__TYPEGPU_AUTONAME__??(Pe=>Pe))(e.createUniform(va),\"marchParamsBuffer\"),c=y.fn([v],a)((Pe=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(Pe.f=(Ce=>{\"use gpu\";let ie=d.$.params;return t===\"cube3D\"?Ac(Ce,ie.pA,ie.pB,ie.pC,ie.pD):t===\"torus3D\"?zv(Ce,ie.pA,ie.pB):t===\"octahedron3D\"?Gv(Ce,ie.pA):t===\"cylinder3D\"?Dv(Ce,ie.pA,ie.pB,ie.pD):t===\"capsule3D\"?Lv(Ce,ie.pA,ie.pB):t===\"cone3D\"?Fv(Ce,ie.pA,ie.pC,ie.pB):t===\"pyramid3D\"?Bv(Ce,ie.pA,ie.pB):t===\"prism3D\"?Iv(Ce,ie.pA,ie.pB):t===\"ellipsoid3D\"?Yv(Ce,ie.pA,ie.pB,ie.pC):t===\"diamond3D\"?Ec(Ce,ie.pA,ie.pB):t===\"link3D\"?Wv(Ce,ie.pB,ie.pA,ie.pC):t===\"gem3D\"?Vv(Ce,ie.pA,ie.pB,ie.pC):t===\"helix3D\"?Nv(Ce,ie.pA,ie.pB,ie.pC,a(3)):t===\"metaballs3D\"?qv(Ce,ie.mb0,ie.mb1,ie.mb2,ie.mb3,ie.mb4,ie.mb5,ie.mb6,ie.mb7,ie.pA,ie.pD):t===\"dodecahedron3D\"?Xv(Ce,ie.pA):t===\"hemisphere3D\"?Hv(Ce,ie.pA,ie.pB):t===\"ribbon3D\"?jv(Ce,ie.pA,ie.pB,ie.pC,ie.mb0.x,ie.mb0.y,ie.mb0.z,ie.mb1.x,ie.mb1.y,ie.mb1.z,ie.mb2.x):t===\"blob3D\"?Kv(Ce,ie.pA,ie.mb0.x,ie.mb0.y,ie.mb0.z,ie.mb1.x,ie.mb2.x):t===\"gyroscope3D\"?Zv(Ce,ie.pA,ie.pB,ie.pD,ie.mb3.x,ie.pC,ie.mb0.x,ie.mb0.y,ie.mb1.x,ie.mb1.y,ie.mb2.x,ie.mb2.y):Uv(Ce,ie.pA)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"pp\",[7,[7,\"layout\",\"$\"],\"params\"]],[11,[1,\"shapeType\",\"===\",[103,\"cube3D\"]],[10,[6,\"sdRoundBox\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"],[7,\"pp\",\"pD\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"torus3D\"]],[10,[6,\"sdTorus\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"octahedron3D\"]],[10,[6,\"sdOctahedron\",[\"p\",[7,\"pp\",\"pA\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"cylinder3D\"]],[10,[6,\"sdRoundCylinder\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pD\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"capsule3D\"]],[10,[6,\"sdCapsule\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"cone3D\"]],[10,[6,\"sdCappedCone\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pC\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"pyramid3D\"]],[10,[6,\"sdPyramid\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"prism3D\"]],[10,[6,\"sdHexPrism\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"ellipsoid3D\"]],[10,[6,\"sdEllipsoid\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"diamond3D\"]],[10,[6,\"sdBicone\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"link3D\"]],[10,[6,\"sdLink\",[\"p\",[7,\"pp\",\"pB\"],[7,\"pp\",\"pA\"],[7,\"pp\",\"pC\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"gem3D\"]],[10,[6,\"sdGem\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"helix3D\"]],[10,[6,\"sdHelix\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"],[6,\"d.f32\",[\"HELIX_TURNS\"]]]]],[11,[1,\"shapeType\",\"===\",[103,\"metaballs3D\"]],[10,[6,\"sdMetaballs\",[\"p\",[7,\"pp\",\"mb0\"],[7,\"pp\",\"mb1\"],[7,\"pp\",\"mb2\"],[7,\"pp\",\"mb3\"],[7,\"pp\",\"mb4\"],[7,\"pp\",\"mb5\"],[7,\"pp\",\"mb6\"],[7,\"pp\",\"mb7\"],[7,\"pp\",\"pA\"],[7,\"pp\",\"pD\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"dodecahedron3D\"]],[10,[6,\"sdDodecahedron\",[\"p\",[7,\"pp\",\"pA\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"hemisphere3D\"]],[10,[6,\"sdCutSphere\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"ribbon3D\"]],[10,[6,\"sdRibbon\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"],[7,[7,\"pp\",\"mb0\"],\"x\"],[7,[7,\"pp\",\"mb0\"],\"y\"],[7,[7,\"pp\",\"mb0\"],\"z\"],[7,[7,\"pp\",\"mb1\"],\"x\"],[7,[7,\"pp\",\"mb1\"],\"y\"],[7,[7,\"pp\",\"mb1\"],\"z\"],[7,[7,\"pp\",\"mb2\"],\"x\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"blob3D\"]],[10,[6,\"sdWobbleBlob\",[\"p\",[7,\"pp\",\"pA\"],[7,[7,\"pp\",\"mb0\"],\"x\"],[7,[7,\"pp\",\"mb0\"],\"y\"],[7,[7,\"pp\",\"mb0\"],\"z\"],[7,[7,\"pp\",\"mb1\"],\"x\"],[7,[7,\"pp\",\"mb2\"],\"x\"]]]],[11,[1,\"shapeType\",\"===\",[103,\"gyroscope3D\"]],[10,[6,\"sdGyroscope\",[\"p\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pD\"],[7,[7,\"pp\",\"mb3\"],\"x\"],[7,\"pp\",\"pC\"],[7,[7,\"pp\",\"mb0\"],\"x\"],[7,[7,\"pp\",\"mb0\"],\"y\"],[7,[7,\"pp\",\"mb1\"],\"x\"],[7,[7,\"pp\",\"mb1\"],\"y\"],[7,[7,\"pp\",\"mb2\"],\"x\"],[7,[7,\"pp\",\"mb2\"],\"y\"]]]],[10,[6,\"sdSphere\",[\"p\",[7,\"pp\",\"pA\"]]]]]]]]]]]]]]]]]]]]]]]]]},externals:{layout:()=>d,shapeType:()=>t,sdRoundBox:()=>Ac,sdTorus:()=>zv,sdOctahedron:()=>Gv,sdRoundCylinder:()=>Dv,sdCapsule:()=>Lv,sdCappedCone:()=>Fv,sdPyramid:()=>Bv,sdHexPrism:()=>Iv,sdEllipsoid:()=>Yv,sdBicone:()=>Ec,sdLink:()=>Wv,sdGem:()=>Vv,sdHelix:()=>Nv,\"d.f32\":()=>a,HELIX_TURNS:()=>3,sdMetaballs:()=>qv,sdDodecahedron:()=>Xv,sdCutSphere:()=>Hv,sdRibbon:()=>jv,sdWobbleBlob:()=>Kv,sdGyroscope:()=>Zv,sdSphere:()=>Uv}})&&Pe.f)({})),_=0,p=\"\",f=s,h=new Map,g=.35,x=.3,T=.3,S=0,A=.6,E=1,M=0,$=1,L=0,B=1,D=0,G=1,I=1,X=0,H=0,ee=Xc(),Q=Array.from({length:8},()=>[0,0,0]),de=()=>{l.write({rot:{cx:E,sx:M,cy:$,sy:L,cz:B,sz:D},rBound:A,spanX:G,spanY:I,originX:X,originY:H,activeRes:ee,pA:g,pB:x,pC:T,pD:S,mb0:v(Q[0][0],Q[0][1],Q[0][2]),mb1:v(Q[1][0],Q[1][1],Q[1][2]),mb2:v(Q[2][0],Q[2][1],Q[2][2]),mb3:v(Q[3][0],Q[3][1],Q[3][2]),mb4:v(Q[4][0],Q[4][1],Q[4][2]),mb5:v(Q[5][0],Q[5][1],Q[5][2]),mb6:v(Q[6][0],Q[6][1],Q[6][2]),mb7:v(Q[7][0],Q[7][1],Q[7][2])})},Ee=Pe=>{let Ce=Pe?.deltaTime??0;_+=Ce;let ie=r();if(ie&&typeof ie==\"object\")f=ie;else if(typeof ie==\"string\"&&ie!==p){p=ie;try{f=JSON.parse(ie)}catch{}}let Ne={elapsed:_,deltaTime:Ce,pointerX:Pe?.pointer?.x??.5,pointerY:Pe?.pointer?.y??.5,springs:h},ye=Be=>Gy(f[Be],n[Be]??0,Ne,Be);x=.3,T=.3,S=0;for(let Be=0;Be<Q.length;Be++)Q[Be]=[0,0,0];switch(t){case\"cube3D\":g=ye(\"sizeX\"),x=ye(\"sizeY\"),T=ye(\"sizeZ\"),S=ye(\"rounding\");break;case\"torus3D\":g=ye(\"radius\"),x=ye(\"tube\");break;case\"cylinder3D\":g=ye(\"radius\"),x=ye(\"height\"),S=ye(\"rounding\");break;case\"capsule3D\":g=ye(\"radius\"),x=ye(\"height\");break;case\"cone3D\":g=ye(\"radius\"),x=ye(\"height\"),T=ye(\"topRadius\");break;case\"pyramid3D\":g=ye(\"size\"),x=ye(\"height\");break;case\"prism3D\":case\"diamond3D\":g=ye(\"radius\"),x=ye(\"height\");break;case\"ellipsoid3D\":g=ye(\"radiusX\"),x=ye(\"radiusY\"),T=ye(\"radiusZ\");break;case\"link3D\":g=ye(\"radius\"),x=ye(\"length\"),T=ye(\"tube\");break;case\"gem3D\":g=ye(\"radius\"),x=ye(\"height\"),T=ye(\"facets\");break;case\"helix3D\":g=ye(\"radius\"),x=ye(\"tube\"),T=ye(\"pitch\");break;case\"metaballs3D\":{g=ye(\"ballRadius\"),x=ye(\"spread\"),S=ye(\"blend\");let Be=Math.min(8,Math.max(1,Math.round(ye(\"balls\")))),rt=x,tt=_*ye(\"speed\")*.6;for(let Ke=0;Ke<Q.length;Ke++){if(Ke>=Be){Q[Ke]=[0,99,0];continue}let Oe=Ke*(Ui/Be),gt=Oe+tt,pt=.75+.25*Math.sin(tt*1.3+Ke*1.7);Q[Ke]=[rt*Math.cos(gt)*pt,rt*.6*Math.sin(tt*.9+Oe*1.5),rt*Math.sin(gt)*pt]}break}case\"hemisphere3D\":g=ye(\"radius\"),x=ye(\"cut\");break;case\"ribbon3D\":{g=ye(\"width\"),x=ye(\"thickness\"),T=ye(\"length\");let Be=_*ye(\"speed\"),rt=ye(\"wave\")*(.8+.2*Math.sin(Be*.9)),tt=ye(\"waveFrequency\"),Ke=ye(\"twist\")*zi/Math.max(T*2,.01);Q[0]=[rt,tt,Be*1.1],Q[1]=[Be*.7+2.1,Ke,Be*.45];let Oe=Math.abs(rt)*tt+Math.abs(Ke)*Math.hypot(g,x);Q[2]=[1/Math.sqrt(1+Oe*Oe),0,0];break}case\"blob3D\":{g=ye(\"radius\");let Be=_*ye(\"speed\"),rt=ye(\"wobble\")*(.75+.25*Math.sin(Be*.83)),tt=ye(\"wobbliness\");Q[0]=[rt,tt,Be*1.2],Q[1]=[Be*.77+1.3,0,0],Q[2]=[1/(1+Math.abs(rt)*tt*1.3),0,0];break}case\"gyroscope3D\":{g=ye(\"radius\"),x=ye(\"width\"),T=ye(\"core\"),S=ye(\"thickness\");let Be=Math.max(0,Math.min(ye(\"rounding\"),Math.min(x,S)*.5)),rt=_*ye(\"speed\"),tt=rt*.9,Ke=rt*.63+1.1,Oe=rt*1.21+2.3;Q[0]=[Math.cos(tt),Math.sin(tt),0],Q[1]=[Math.cos(Ke),Math.sin(Ke),0],Q[2]=[Math.cos(Oe),Math.sin(Oe),0],Q[3]=[Be,0,0];break}default:g=ye(\"radius\");break}A=eS({...f,type:t})+.02+i();let Ve=ye(\"rotX\")*zi,qe=ye(\"rotY\")*zi,st=ye(\"rotZ\")*zi;E=Math.cos(Ve),M=Math.sin(Ve),$=Math.cos(qe),L=Math.sin(qe),B=Math.cos(st),D=Math.sin(st);let We=A+.05;G=We*2,I=We*2,X=.5-We,H=.5-We,de()};Ee();let he=Pe=>{Pe!==ee&&(ee=Pe,de())},Me=()=>`${g},${x},${T},${S},${A},`+Q.map(Pe=>`${Pe[0]},${Pe[1]},${Pe[2]}`).join(\",\");return{layout:d,marchParamsBuffer:l,sdfFn:c,update:Ee,setActiveRes:he,getStateKey:()=>`${Me()},${E},${M},${$},${L},${B},${D}`,getFootprint:()=>({spanX:G,spanY:I,originX:X,originY:H,rBound:A}),getRotation:()=>({cx:E,sx:M,cy:$,sy:L,cz:B,sz:D}),getGeometryKey:Me}}function dS(e,t,s,r={}){let o=e.gpu.root,n=r.extraPad??(()=>0),{texture:i,getVersion:d}=$y(e,t),{layout:l}=nS(),c=(globalThis.__TYPEGPU_AUTONAME__??(Pe=>Pe))(o.createUniform(va),\"marchParamsBuffer\"),_=a(512),p=a(511),f=y.fn([v],a)((Pe=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(Pe.f=(Ce=>{\"use gpu\";let ie=l.$.params,Ne=ie.pA,ye=ie.pB,Ve=__tsover_sub(__tsover_mul(__tsover_add(Ce.x,.5),_),.5),qe=__tsover_sub(__tsover_mul(__tsover_sub(.5,Ce.y),_),.5),st=K(Ve),We=K(qe),Be=__tsover_sub(Ve,st),rt=__tsover_sub(qe,We),tt=Y(z(st,a(0),p)),Ke=Y(z(__tsover_add(st,1),a(0),p)),Oe=Y(z(We,a(0),p)),gt=Y(z(__tsover_add(We,1),a(0),p)),pt=at(l.$.sdfSource,He(tt,Oe),0).r,Ut=at(l.$.sdfSource,He(Ke,Oe),0).r,Lt=at(l.$.sdfSource,He(tt,gt),0).r,Wt=at(l.$.sdfSource,He(Ke,gt),0).r,vs=Z(Z(pt,Ut,Be),Z(Lt,Wt,Be),rt),jt=__tsover_add(vs,ye),Qt=__tsover_add(__tsover_sub(W(Ce.z),Ne),ye),$s=ue(w(jt,Qt),a(0)),Is=te(u(w(jt,a(0)),w(Qt,a(0))));return __tsover_sub(__tsover_add($s,Is),ye)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"pp\",[7,[7,\"layout\",\"$\"],\"params\"]],[13,\"halfDepth\",[7,\"pp\",\"pA\"]],[13,\"bevel\",[7,\"pp\",\"pB\"]],[13,\"u\",[1,[1,[1,[7,\"p\",\"x\"],\"+\",[5,\"0.5\"]],\"*\",\"SIZE_F\"],\"-\",[5,\"0.5\"]]],[13,\"v\",[1,[1,[1,[5,\"0.5\"],\"-\",[7,\"p\",\"y\"]],\"*\",\"SIZE_F\"],\"-\",[5,\"0.5\"]]],[13,\"x0\",[6,\"std.floor\",[\"u\"]]],[13,\"y0\",[6,\"std.floor\",[\"v\"]]],[13,\"fx\",[1,\"u\",\"-\",\"x0\"]],[13,\"fy\",[1,\"v\",\"-\",\"y0\"]],[13,\"cx0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"x0\",[6,\"d.f32\",[[5,\"0\"]]],\"MAX_TEXEL\"]]]]],[13,\"cx1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"MAX_TEXEL\"]]]]],[13,\"cy0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"y0\",[6,\"d.f32\",[[5,\"0\"]]],\"MAX_TEXEL\"]]]]],[13,\"cy1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"MAX_TEXEL\"]]]]],[13,\"s00\",[7,[6,\"std.textureLoad\",[[7,[7,\"layout\",\"$\"],\"sdfSource\"],[6,\"d.vec2u\",[\"cx0\",\"cy0\"]],[5,\"0\"]]],\"r\"]],[13,\"s10\",[7,[6,\"std.textureLoad\",[[7,[7,\"layout\",\"$\"],\"sdfSource\"],[6,\"d.vec2u\",[\"cx1\",\"cy0\"]],[5,\"0\"]]],\"r\"]],[13,\"s01\",[7,[6,\"std.textureLoad\",[[7,[7,\"layout\",\"$\"],\"sdfSource\"],[6,\"d.vec2u\",[\"cx0\",\"cy1\"]],[5,\"0\"]]],\"r\"]],[13,\"s11\",[7,[6,\"std.textureLoad\",[[7,[7,\"layout\",\"$\"],\"sdfSource\"],[6,\"d.vec2u\",[\"cx1\",\"cy1\"]],[5,\"0\"]]],\"r\"]],[13,\"field2d\",[6,\"std.mix\",[[6,\"std.mix\",[\"s00\",\"s10\",\"fx\"]],[6,\"std.mix\",[\"s01\",\"s11\",\"fx\"]],\"fy\"]]],[13,\"d2\",[1,\"field2d\",\"+\",\"bevel\"]],[13,\"wz\",[1,[1,[6,\"std.abs\",[[7,\"p\",\"z\"]]],\"-\",\"halfDepth\"],\"+\",\"bevel\"]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"d2\",\"wz\"]],[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"d2\",[6,\"d.f32\",[[5,\"0\"]]]]],[6,\"std.max\",[\"wz\",[6,\"d.f32\",[[5,\"0\"]]]]]]]]]],[10,[1,[1,\"inner\",\"+\",\"outer\"],\"-\",\"bevel\"]]]]},externals:{layout:()=>l,SIZE_F:()=>_,\"std.floor\":()=>K,\"d.u32\":()=>Y,\"std.clamp\":()=>z,\"d.f32\":()=>a,MAX_TEXEL:()=>p,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"std.mix\":()=>Z,\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.max\":()=>w,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&Pe.f)({})),h=0,g=\"\",x=By(s()),T=new Map,S=.06,A=.02,E=.75,M=1,$=0,L=1,B=0,D=1,G=0,I=1,X=1,H=0,ee=0,Q=Xc(),de=()=>{c.write({rot:{cx:M,sx:$,cy:L,sy:B,cz:D,sz:G},rBound:E,spanX:I,spanY:X,originX:H,originY:ee,activeRes:Q,pA:S,pB:A,pC:0,pD:0,mb0:v(0,0,0),mb1:v(0,0,0),mb2:v(0,0,0),mb3:v(0,0,0),mb4:v(0,0,0),mb5:v(0,0,0),mb6:v(0,0,0),mb7:v(0,0,0)})},Ee=Pe=>{let Ce=Pe?.deltaTime??0;h+=Ce;let ie=s();if(ie&&typeof ie==\"object\")x=ie;else if(typeof ie==\"string\"&&ie!==g){g=ie;try{x=JSON.parse(ie)}catch{}}let Ne={elapsed:h,deltaTime:Ce,pointerX:Pe?.pointer?.x??.5,pointerY:Pe?.pointer?.y??.5,springs:T},ye=jt=>Gy(x[jt],QT[jt]??0,Ne,jt);S=Math.max(.001,ye(\"depth\")*.5),A=Math.min(Math.max(0,ye(\"bevel\")),S);let Ve=Rm(t),qe=Ve?Math.min(.5,Ve.hwf+.02):.5,st=Ve?Math.min(.5,Ve.hhf+.02):.5,We=n();E=Math.hypot(qe,st,S)+A+.03+We;let Be=ye(\"rotX\")*zi,rt=ye(\"rotY\")*zi,tt=ye(\"rotZ\")*zi;M=Math.cos(Be),$=Math.sin(Be),L=Math.cos(rt),B=Math.sin(rt),D=Math.cos(tt),G=Math.sin(tt);let Ke={cx:M,sx:$,cy:L,sy:B,cz:D,sz:G},Oe=Rv(1,0,0,Ke),gt=Rv(0,1,0,Ke),pt=A+.03+We,Ut=Math.abs(Oe.x)*qe+Math.abs(Oe.y)*st+Math.abs(Oe.z)*S+pt,Lt=Math.abs(gt.x)*qe+Math.abs(gt.y)*st+Math.abs(gt.z)*S+pt,Wt=Ut+.05,vs=Lt+.05;I=Wt*2,X=vs*2,H=.5-Wt,ee=.5-vs,de()};Ee();let he=Pe=>{Pe!==Q&&(Q=Pe,de())},Me=()=>`${S},${A},${E},${d()}`,Te=()=>`${Me()},${I},${X},${M},${$},${L},${B},${D},${G}`;return{layout:l,marchParamsBuffer:c,sdfFn:f,sdfSourceTexture:i.texture,update:Ee,setActiveRes:he,getStateKey:Te,getFootprint:()=>({spanX:I,spanY:X,originX:H,originY:ee,rBound:E}),getRotation:()=>({cx:M,sx:$,cy:L,sy:B,cz:D,sz:G}),getGeometryKey:Me}}function NB(e,t,s,r,o={}){let n=o.extraPad??(()=>0),{layout:i}=Ly(),d=(globalThis.__TYPEGPU_AUTONAME__??(D=>D))(e.createUniform(va),\"marchParamsBuffer\"),l=Cy(t),c=y.fn([v],a)((D=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(D.f=(G=>{\"use gpu\";let I=i.$.params,X=l(u(__tsover_add(G.x,.5),__tsover_sub(.5,G.y)),I.pA,I.pB,I.pC,I.pD,I.mb0.x,I.mb0.y,I.mb0.z,I.mb1.x).x,H=__tsover_sub(W(G.z),I.mb1.y),ee=ue(w(X,H),a(0)),Q=te(u(w(X,a(0)),w(H,a(0))));return __tsover_add(ee,Q)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"}],body:[0,[[13,\"pp\",[7,[7,\"layout\",\"$\"],\"params\"]],[13,\"uv\",[6,\"d.vec2f\",[[1,[7,\"p\",\"x\"],\"+\",[5,\"0.5\"]],[1,[5,\"0.5\"],\"-\",[7,\"p\",\"y\"]]]]],[13,\"d2\",[7,[6,\"analytic\",[\"uv\",[7,\"pp\",\"pA\"],[7,\"pp\",\"pB\"],[7,\"pp\",\"pC\"],[7,\"pp\",\"pD\"],[7,[7,\"pp\",\"mb0\"],\"x\"],[7,[7,\"pp\",\"mb0\"],\"y\"],[7,[7,\"pp\",\"mb0\"],\"z\"],[7,[7,\"pp\",\"mb1\"],\"x\"]]],\"x\"]],[13,\"wz\",[1,[6,\"std.abs\",[[7,\"p\",\"z\"]]],\"-\",[7,[7,\"pp\",\"mb1\"],\"y\"]]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"d2\",\"wz\"]],[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec2f\",[[6,\"std.max\",[\"d2\",[6,\"d.f32\",[[5,\"0\"]]]]],[6,\"std.max\",[\"wz\",[6,\"d.f32\",[[5,\"0\"]]]]]]]]]],[10,[1,\"inner\",\"+\",\"outer\"]]]]},externals:{layout:()=>i,\"d.vec2f\":()=>u,analytic:()=>l,\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.max\":()=>w,\"d.f32\":()=>a,\"std.length\":()=>te}})&&D.f)({})),_=\"\",p=By(s()),f=Xp(p),h=.06,g=.6,x=1,T=1,S=0,A=0,E=Xc(),M=()=>{d.write({rot:{cx:1,sx:0,cy:1,sy:0,cz:1,sz:0},rBound:g,spanX:x,spanY:T,originX:S,originY:A,activeRes:E,pA:f.radius,pB:f.sides,pC:f.rounding,pD:f.innerRatio,mb0:v(f.rotation,f.height,f.offset),mb1:v(f.aperture,h,0),mb2:v(0,0,0),mb3:v(0,0,0),mb4:v(0,0,0),mb5:v(0,0,0),mb6:v(0,0,0),mb7:v(0,0,0)})},$=()=>{let D=s();if(D&&typeof D==\"object\")p=D;else if(typeof D==\"string\"&&D!==_){_=D;try{p=JSON.parse(D)}catch{}}f=Xp(p),h=Math.max(.001,r());let{hwf:G,hhf:I}=Cv({shape:{...p,radius:f.radius,height:f.height}});g=Math.hypot(G,I,h)+.02+n();let X=g+.05;x=X*2,T=X*2,S=.5-X,A=.5-X,M()};$();let L=D=>{D!==E&&(E=D,M())},B=()=>`${f.radius},${f.sides},${f.rounding},${f.innerRatio},${f.rotation},${f.height},${f.offset},${f.aperture},${h},${g}`;return{layout:i,marchParamsBuffer:d,sdfFn:c,update:$,setActiveRes:L,getStateKey:B,getFootprint:()=>({spanX:x,spanY:T,originX:S,originY:A,rBound:g}),getRotation:()=>({cx:1,sx:0,cy:1,sy:0,cz:1,sz:0}),getGeometryKey:B}}function qB(e,t,s=\"none\",r=\"span\"){let o=e.gpu?.root;if(!o)return null;let n=By(t()),i=e.getCpuValue(\"shapeSdfUrl\")||\"\",d=e.getCpuValue(\"shapeType\")||n.type||\"\",l=null;if(i&&zy(d)?l=dS(e,i,t):!i&&Um(d)&&(l=iS(o,d,n,t)),!l)return null;let c=Dy(l.sdfFn,s,r),_=rS(l.layout,c),p=oS(o,l.layout,_,e.onCleanup,{paramsUniform:l.marchParamsBuffer,sdfSourceTexture:l.sdfSourceTexture}),f=e.registerComputeTexture(p.fieldTexture),h=p.maxRes,g=\"\",x=No()?2:1,T=0,S={originX:0,originY:0,spanX:1,spanY:1,activeRes:1,rBound:.6};return{outputs:{volumetricFieldTexture:f},getComputeNodes:E=>{l.update(E);let M=l.getFootprint(),$=e.getCpuValue(\"scale\")??1,L=e.dimensions.height;h=sS(M.spanX,M.spanY,$,L,p.maxRes,h);let B=`${l.getStateKey()},${h}`;return B===g||(T++,x>1&&T%x!==0)?null:(g=B,l.setActiveRes(h),e.setExtraField(\"_vfOriginX\",M.originX),e.setExtraField(\"_vfOriginY\",M.originY),e.setExtraField(\"_vfSpanX\",M.spanX),e.setExtraField(\"_vfSpanY\",M.spanY),e.setExtraField(\"_vfActiveRes\",h),e.setExtraField(\"_vfRBound\",M.rBound),S.originX=M.originX,S.originY=M.originY,S.spanX=M.spanX,S.spanY=M.spanY,S.activeRes=h,S.rBound=M.rBound,[()=>p.dispatch(h)])},fieldTexture:p.fieldTexture,getFieldDomain:()=>({...S})}}var Kp=.08,Js=y.fn([v,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=s.x,n=s.y,i=s.z,d=s.w,l=r.x,c=r.y,_=v(__tsover_add(__tsover_mul(t.x,i),__tsover_mul(t.z,d)),t.y,__tsover_add(__tsover_mul(__tsover_mul(t.x,d),-1),__tsover_mul(t.z,i))),p=v(_.x,__tsover_sub(__tsover_mul(_.y,o),__tsover_mul(_.z,n)),__tsover_add(__tsover_mul(_.y,n),__tsover_mul(_.z,o)));return v(__tsover_sub(__tsover_mul(p.x,l),__tsover_mul(p.y,c)),__tsover_add(__tsover_mul(p.x,c),__tsover_mul(p.y,l)),p.z)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"}],body:[0,[[13,\"cx\",[7,\"rp0\",\"x\"]],[13,\"sx\",[7,\"rp0\",\"y\"]],[13,\"cy\",[7,\"rp0\",\"z\"]],[13,\"sy\",[7,\"rp0\",\"w\"]],[13,\"cz\",[7,\"rp1\",\"x\"]],[13,\"sz\",[7,\"rp1\",\"y\"]],[13,\"py\",[6,\"d.vec3f\",[[1,[1,[7,\"p\",\"x\"],\"*\",\"cy\"],\"+\",[1,[7,\"p\",\"z\"],\"*\",\"sy\"]],[7,\"p\",\"y\"],[1,[1,[1,[7,\"p\",\"x\"],\"*\",\"sy\"],\"*\",[4,\"-\",[5,\"1\"]]],\"+\",[1,[7,\"p\",\"z\"],\"*\",\"cy\"]]]]],[13,\"px\",[6,\"d.vec3f\",[[7,\"py\",\"x\"],[1,[1,[7,\"py\",\"y\"],\"*\",\"cx\"],\"-\",[1,[7,\"py\",\"z\"],\"*\",\"sx\"]],[1,[1,[7,\"py\",\"y\"],\"*\",\"sx\"],\"+\",[1,[7,\"py\",\"z\"],\"*\",\"cx\"]]]]],[10,[6,\"d.vec3f\",[[1,[1,[7,\"px\",\"x\"],\"*\",\"cz\"],\"-\",[1,[7,\"px\",\"y\"],\"*\",\"sz\"]],[1,[1,[7,\"px\",\"x\"],\"*\",\"sz\"],\"+\",[1,[7,\"px\",\"y\"],\"*\",\"cz\"]],[7,\"px\",\"z\"]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})).$name(\"eulerRotatePacked\"),XB=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";return __tsover_sub(te(Js(t,s,r)),r.z)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[10,[1,[6,\"std.length\",[[6,\"eulerRotatePacked\",[\"p\",\"rp0\",\"rp1\"]]]],\"-\",[7,\"rp1\",\"z\"]]]]]},externals:{\"std.length\":()=>te,eulerRotatePacked:()=>Js}})&&e.f)({})).$name(\"paramSphereSdf\"),HB=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Rs(Js(t,r,o));return u(__tsover_add(__tsover_div(bt(d.z,d.x),6.283185307179586),.5),__tsover_mul(__tsover_add(d.y,1),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"_n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"n\",[6,\"std.normalize\",[[6,\"eulerRotatePacked\",[\"h\",\"rp0\",\"rp1\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,[6,\"std.atan2\",[[7,\"n\",\"z\"],[7,\"n\",\"x\"]]],\"/\",[5,\"6.283185307179586\"]],\"+\",[5,\"0.5\"]],[1,[1,[7,\"n\",\"y\"],\"+\",[5,\"1\"]],\"*\",[5,\"0.5\"]]]]]]]},externals:{\"std.normalize\":()=>Rs,eulerRotatePacked:()=>Js,\"d.vec2f\":()=>u,\"std.atan2\":()=>bt}})&&e.f)({})).$name(\"sphereSurfaceUV\"),jB=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=Js(t,s,r),d=u(__tsover_sub(te(u(i.x,i.z)),r.z),i.y);return __tsover_sub(te(d),r.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"p\",\"rp0\",\"rp1\"]]],[13,\"q\",[6,\"d.vec2f\",[[1,[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"rp\",\"x\"],[7,\"rp\",\"z\"]]]]],\"-\",[7,\"rp1\",\"z\"]],[7,\"rp\",\"y\"]]]],[10,[1,[6,\"std.length\",[\"q\"]],\"-\",[7,\"rp1\",\"w\"]]]]]},externals:{eulerRotatePacked:()=>Js,\"d.vec2f\":()=>u,\"std.length\":()=>te}})&&e.f)({})).$name(\"paramTorusSdf\"),KB=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Js(t,r,o),l=__tsover_add(__tsover_div(bt(d.z,d.x),6.283185307179586),.5),c=__tsover_sub(te(u(d.x,d.z)),o.z);return u(l,__tsover_add(__tsover_div(bt(d.y,c),6.283185307179586),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"_n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"h\",\"rp0\",\"rp1\"]]],[13,\"u\",[1,[1,[6,\"std.atan2\",[[7,\"rp\",\"z\"],[7,\"rp\",\"x\"]]],\"/\",[5,\"6.283185307179586\"]],\"+\",[5,\"0.5\"]]],[13,\"ringDist\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[7,\"rp\",\"x\"],[7,\"rp\",\"z\"]]]]],\"-\",[7,\"rp1\",\"z\"]]],[10,[6,\"d.vec2f\",[\"u\",[1,[1,[6,\"std.atan2\",[[7,\"rp\",\"y\"],\"ringDist\"]],\"/\",[5,\"6.283185307179586\"]],\"+\",[5,\"0.5\"]]]]]]]},externals:{eulerRotatePacked:()=>Js,\"std.atan2\":()=>bt,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"torusSurfaceUV\"),ZB=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=Js(t,s,r),d=o.y,l=__tsover_add(__tsover_sub(W(i.x),r.z),d),c=__tsover_add(__tsover_sub(W(i.y),r.w),d),_=__tsover_add(__tsover_sub(W(i.z),o.x),d),p=te(v(w(l,a(0)),w(c,a(0)),w(_,a(0)))),f=ue(w(l,w(c,_)),a(0));return __tsover_sub(__tsover_add(p,f),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"p\",\"rp0\",\"rp1\"]]],[13,\"rounding\",[7,\"rp2\",\"y\"]],[13,\"qx\",[1,[1,[6,\"std.abs\",[[7,\"rp\",\"x\"]]],\"-\",[7,\"rp1\",\"z\"]],\"+\",\"rounding\"]],[13,\"qy\",[1,[1,[6,\"std.abs\",[[7,\"rp\",\"y\"]]],\"-\",[7,\"rp1\",\"w\"]],\"+\",\"rounding\"]],[13,\"qz\",[1,[1,[6,\"std.abs\",[[7,\"rp\",\"z\"]]],\"-\",[7,\"rp2\",\"x\"]],\"+\",\"rounding\"]],[13,\"outer\",[6,\"std.length\",[[6,\"d.vec3f\",[[6,\"std.max\",[\"qx\",[6,\"d.f32\",[[5,\"0\"]]]]],[6,\"std.max\",[\"qy\",[6,\"d.f32\",[[5,\"0\"]]]]],[6,\"std.max\",[\"qz\",[6,\"d.f32\",[[5,\"0\"]]]]]]]]]],[13,\"inner\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",[6,\"std.max\",[\"qy\",\"qz\"]]]],[6,\"d.f32\",[[5,\"0\"]]]]]],[10,[1,[1,\"outer\",\"+\",\"inner\"],\"-\",\"rounding\"]]]]},externals:{eulerRotatePacked:()=>Js,\"std.abs\":()=>W,\"std.length\":()=>te,\"d.vec3f\":()=>v,\"std.max\":()=>w,\"d.f32\":()=>a,\"std.min\":()=>ue}})&&e.f)({})).$name(\"paramBoxSdf\"),QB=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Js(t,r,o),l=Js(s,r,o),c=v(W(l.x),W(l.y),W(l.z)),_=o.z,p=o.w,f=n.x,h=__tsover_div(.5,w(p,f)),g=__tsover_div(.5,w(_,f)),x=__tsover_div(.5,w(_,p)),T=u(__tsover_add(__tsover_mul(d.z,h),.5),__tsover_add(__tsover_mul(d.y,h),.5)),S=u(__tsover_add(__tsover_mul(d.x,g),.5),__tsover_add(__tsover_mul(d.z,g),.5)),A=u(__tsover_add(__tsover_mul(d.x,x),.5),__tsover_add(__tsover_mul(d.y,x),.5)),E=F(A,T,c.x>c.z);return F(F(A,S,c.y>c.z),E,c.x>c.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"h\",\"rp0\",\"rp1\"]]],[13,\"rn\",[6,\"eulerRotatePacked\",[\"n\",\"rp0\",\"rp1\"]]],[13,\"an\",[6,\"d.vec3f\",[[6,\"std.abs\",[[7,\"rn\",\"x\"]]],[6,\"std.abs\",[[7,\"rn\",\"y\"]]],[6,\"std.abs\",[[7,\"rn\",\"z\"]]]]]],[13,\"hx\",[7,\"rp1\",\"z\"]],[13,\"hy\",[7,\"rp1\",\"w\"]],[13,\"hz\",[7,\"rp2\",\"x\"]],[13,\"scaleX\",[1,[5,\"0.5\"],\"/\",[6,\"std.max\",[\"hy\",\"hz\"]]]],[13,\"scaleY\",[1,[5,\"0.5\"],\"/\",[6,\"std.max\",[\"hx\",\"hz\"]]]],[13,\"scaleZ\",[1,[5,\"0.5\"],\"/\",[6,\"std.max\",[\"hx\",\"hy\"]]]],[13,\"uvX\",[6,\"d.vec2f\",[[1,[1,[7,\"rp\",\"z\"],\"*\",\"scaleX\"],\"+\",[5,\"0.5\"]],[1,[1,[7,\"rp\",\"y\"],\"*\",\"scaleX\"],\"+\",[5,\"0.5\"]]]]],[13,\"uvY\",[6,\"d.vec2f\",[[1,[1,[7,\"rp\",\"x\"],\"*\",\"scaleY\"],\"+\",[5,\"0.5\"]],[1,[1,[7,\"rp\",\"z\"],\"*\",\"scaleY\"],\"+\",[5,\"0.5\"]]]]],[13,\"uvZ\",[6,\"d.vec2f\",[[1,[1,[7,\"rp\",\"x\"],\"*\",\"scaleZ\"],\"+\",[5,\"0.5\"]],[1,[1,[7,\"rp\",\"y\"],\"*\",\"scaleZ\"],\"+\",[5,\"0.5\"]]]]],[13,\"pickXZ\",[6,\"std.select\",[\"uvZ\",\"uvX\",[1,[7,\"an\",\"x\"],\">\",[7,\"an\",\"z\"]]]]],[13,\"pickYZ\",[6,\"std.select\",[\"uvZ\",\"uvY\",[1,[7,\"an\",\"y\"],\">\",[7,\"an\",\"z\"]]]]],[10,[6,\"std.select\",[\"pickYZ\",\"pickXZ\",[1,[7,\"an\",\"x\"],\">\",[7,\"an\",\"y\"]]]]]]]},externals:{eulerRotatePacked:()=>Js,\"d.vec3f\":()=>v,\"std.abs\":()=>W,\"std.max\":()=>w,\"d.vec2f\":()=>u,\"std.select\":()=>F}})&&e.f)({})).$name(\"boxFaceUV\"),JB=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=Js(t,s,r),d=r.z,l=r.w,c=z(i.y,__tsover_mul(l,-1),l);return __tsover_sub(te(v(i.x,__tsover_sub(i.y,c),i.z)),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"p\",\"rp0\",\"rp1\"]]],[13,\"radius\",[7,\"rp1\",\"z\"]],[13,\"halfHeight\",[7,\"rp1\",\"w\"]],[13,\"clampedY\",[6,\"std.clamp\",[[7,\"rp\",\"y\"],[1,\"halfHeight\",\"*\",[4,\"-\",[5,\"1\"]]],\"halfHeight\"]]],[10,[1,[6,\"std.length\",[[6,\"d.vec3f\",[[7,\"rp\",\"x\"],[1,[7,\"rp\",\"y\"],\"-\",\"clampedY\"],[7,\"rp\",\"z\"]]]]],\"-\",\"radius\"]]]]},externals:{eulerRotatePacked:()=>Js,\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec3f\":()=>v}})&&e.f)({})).$name(\"paramCapsuleSdf\"),e8=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Js(t,r,o),l=__tsover_add(__tsover_div(bt(d.z,d.x),6.283185307179586),.5),c=__tsover_add(o.w,o.z);return u(l,z(__tsover_add(__tsover_mul(__tsover_div(d.y,c),.5),.5),0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"_n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"h\",\"rp0\",\"rp1\"]]],[13,\"u\",[1,[1,[6,\"std.atan2\",[[7,\"rp\",\"z\"],[7,\"rp\",\"x\"]]],\"/\",[5,\"6.283185307179586\"]],\"+\",[5,\"0.5\"]]],[13,\"span\",[1,[7,\"rp1\",\"w\"],\"+\",[7,\"rp1\",\"z\"]]],[10,[6,\"d.vec2f\",[\"u\",[6,\"std.clamp\",[[1,[1,[1,[7,\"rp\",\"y\"],\"/\",\"span\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]]]]]]},externals:{eulerRotatePacked:()=>Js,\"std.atan2\":()=>bt,\"d.vec2f\":()=>u,\"std.clamp\":()=>z}})&&e.f)({})).$name(\"capsuleSurfaceUV\"),t8=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=Js(t,s,r),d=r.z,l=r.w,c=o.x,_=bt(i.z,i.x),p=v(__tsover_mul(J(_),d),0,__tsover_mul(O(_),d)),f=v(__tsover_sub(i.x,p.x),__tsover_sub(i.y,p.y),__tsover_sub(i.z,p.z)),h=__tsover_mul(_,.5),g=v(__tsover_mul(J(_),J(h)),O(h),__tsover_mul(O(_),J(h))),x=le(f,g),T=w(__tsover_sub(W(x),l),a(0)),S=v(__tsover_sub(f.x,__tsover_mul(g.x,x)),__tsover_sub(f.y,__tsover_mul(g.y,x)),__tsover_sub(f.z,__tsover_mul(g.z,x)));return __tsover_sub(te(u(T,te(S))),c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"p\",\"rp0\",\"rp1\"]]],[13,\"ringRadius\",[7,\"rp1\",\"z\"]],[13,\"halfWidth\",[7,\"rp1\",\"w\"]],[13,\"thickness\",[7,\"rp2\",\"x\"]],[13,\"phi\",[6,\"std.atan2\",[[7,\"rp\",\"z\"],[7,\"rp\",\"x\"]]]],[13,\"spine\",[6,\"d.vec3f\",[[1,[6,\"std.cos\",[\"phi\"]],\"*\",\"ringRadius\"],[5,\"0\"],[1,[6,\"std.sin\",[\"phi\"]],\"*\",\"ringRadius\"]]]],[13,\"dvec\",[6,\"d.vec3f\",[[1,[7,\"rp\",\"x\"],\"-\",[7,\"spine\",\"x\"]],[1,[7,\"rp\",\"y\"],\"-\",[7,\"spine\",\"y\"]],[1,[7,\"rp\",\"z\"],\"-\",[7,\"spine\",\"z\"]]]]],[13,\"halfPhi\",[1,\"phi\",\"*\",[5,\"0.5\"]]],[13,\"ev\",[6,\"d.vec3f\",[[1,[6,\"std.cos\",[\"phi\"]],\"*\",[6,\"std.cos\",[\"halfPhi\"]]],[6,\"std.sin\",[\"halfPhi\"]],[1,[6,\"std.sin\",[\"phi\"]],\"*\",[6,\"std.cos\",[\"halfPhi\"]]]]]],[13,\"vProj\",[6,\"std.dot\",[\"dvec\",\"ev\"]]],[13,\"du\",[6,\"std.max\",[[1,[6,\"std.abs\",[\"vProj\"]],\"-\",\"halfWidth\"],[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"perp\",[6,\"d.vec3f\",[[1,[7,\"dvec\",\"x\"],\"-\",[1,[7,\"ev\",\"x\"],\"*\",\"vProj\"]],[1,[7,\"dvec\",\"y\"],\"-\",[1,[7,\"ev\",\"y\"],\"*\",\"vProj\"]],[1,[7,\"dvec\",\"z\"],\"-\",[1,[7,\"ev\",\"z\"],\"*\",\"vProj\"]]]]],[10,[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"du\",[6,\"std.length\",[\"perp\"]]]]]],\"-\",\"thickness\"]]]]},externals:{eulerRotatePacked:()=>Js,\"std.atan2\":()=>bt,\"d.vec3f\":()=>v,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"std.max\":()=>w,\"std.abs\":()=>W,\"d.f32\":()=>a,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"paramMobiusSdf\"),s8=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=Js(t,r,o),l=o.z,c=o.w,_=bt(d.z,d.x),p=v(__tsover_mul(J(_),l),0,__tsover_mul(O(_),l)),f=v(__tsover_sub(d.x,p.x),__tsover_sub(d.y,p.y),__tsover_sub(d.z,p.z)),h=__tsover_mul(_,.5),g=le(f,v(__tsover_mul(J(_),J(h)),O(h),__tsover_mul(O(_),J(h))));return u(__tsover_add(__tsover_div(_,6.283185307179586),.5),__tsover_add(__tsover_mul(__tsover_div(g,c),.5),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"_n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"_t\"}],body:[0,[[13,\"rp\",[6,\"eulerRotatePacked\",[\"h\",\"rp0\",\"rp1\"]]],[13,\"ringRadius\",[7,\"rp1\",\"z\"]],[13,\"halfWidth\",[7,\"rp1\",\"w\"]],[13,\"phi\",[6,\"std.atan2\",[[7,\"rp\",\"z\"],[7,\"rp\",\"x\"]]]],[13,\"spine\",[6,\"d.vec3f\",[[1,[6,\"std.cos\",[\"phi\"]],\"*\",\"ringRadius\"],[5,\"0\"],[1,[6,\"std.sin\",[\"phi\"]],\"*\",\"ringRadius\"]]]],[13,\"dvec\",[6,\"d.vec3f\",[[1,[7,\"rp\",\"x\"],\"-\",[7,\"spine\",\"x\"]],[1,[7,\"rp\",\"y\"],\"-\",[7,\"spine\",\"y\"]],[1,[7,\"rp\",\"z\"],\"-\",[7,\"spine\",\"z\"]]]]],[13,\"halfPhi\",[1,\"phi\",\"*\",[5,\"0.5\"]]],[13,\"ev\",[6,\"d.vec3f\",[[1,[6,\"std.cos\",[\"phi\"]],\"*\",[6,\"std.cos\",[\"halfPhi\"]]],[6,\"std.sin\",[\"halfPhi\"]],[1,[6,\"std.sin\",[\"phi\"]],\"*\",[6,\"std.cos\",[\"halfPhi\"]]]]]],[13,\"vProj\",[6,\"std.dot\",[\"dvec\",\"ev\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"phi\",\"/\",[5,\"6.283185307179586\"]],\"+\",[5,\"0.5\"]],[1,[1,[1,\"vProj\",\"/\",\"halfWidth\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]]]]]]]},externals:{eulerRotatePacked:()=>Js,\"std.atan2\":()=>bt,\"d.vec3f\":()=>v,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.dot\":()=>le,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"mobiusSurfaceUV\"),r8=y.fn([v,b,b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=s.x,d=s.y,l=s.z,c=r.x,_=r.y,p=r.z,f=J(i),h=O(i),g=__tsover_add(__tsover_mul(t.x,f),__tsover_mul(t.y,h)),x=__tsover_add(__tsover_mul(__tsover_mul(t.x,h),-1),__tsover_mul(t.y,f)),T=__tsover_add(__tsover_add(__tsover_mul(g,d),_),__tsover_mul(n,Kp)),S=J(T),A=O(T),E=__tsover_add(__tsover_mul(x,S),__tsover_mul(t.z,A)),M=__tsover_add(__tsover_mul(__tsover_mul(x,A),-1),__tsover_mul(t.z,S)),$=w(__tsover_sub(W(E),l),a(0));return __tsover_div(__tsover_sub(te(u($,M)),c),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"angleRad\",[7,\"rp0\",\"x\"]],[13,\"twist\",[7,\"rp0\",\"y\"]],[13,\"halfW\",[7,\"rp0\",\"z\"]],[13,\"thickness\",[7,\"rp1\",\"x\"]],[13,\"phase\",[7,\"rp1\",\"y\"]],[13,\"lipschitz\",[7,\"rp1\",\"z\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rpx\",[1,[1,[7,\"p\",\"x\"],\"*\",\"cosA\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"sinA\"]]],[13,\"rpy\",[1,[1,[1,[7,\"p\",\"x\"],\"*\",\"sinA\"],\"*\",[4,\"-\",[5,\"1\"]]],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"cosA\"]]],[13,\"twistAngle\",[1,[1,[1,\"rpx\",\"*\",\"twist\"],\"+\",\"phase\"],\"+\",[1,\"t\",\"*\",\"TWISTED_RIBBON_TWIST_RATE\"]]],[13,\"ca\",[6,\"std.cos\",[\"twistAngle\"]]],[13,\"sa\",[6,\"std.sin\",[\"twistAngle\"]]],[13,\"localU\",[1,[1,\"rpy\",\"*\",\"ca\"],\"+\",[1,[7,\"p\",\"z\"],\"*\",\"sa\"]]],[13,\"localV\",[1,[1,[1,\"rpy\",\"*\",\"sa\"],\"*\",[4,\"-\",[5,\"1\"]]],\"+\",[1,[7,\"p\",\"z\"],\"*\",\"ca\"]]],[13,\"du\",[6,\"std.max\",[[1,[6,\"std.abs\",[\"localU\"]],\"-\",\"halfW\"],[6,\"d.f32\",[[5,\"0\"]]]]]],[10,[1,[1,[6,\"std.length\",[[6,\"d.vec2f\",[\"du\",\"localV\"]]]],\"-\",\"thickness\"],\"/\",\"lipschitz\"]]]]},externals:{\"std.cos\":()=>J,\"std.sin\":()=>O,TWISTED_RIBBON_TWIST_RATE:()=>Kp,\"std.max\":()=>w,\"std.abs\":()=>W,\"d.f32\":()=>a,\"std.length\":()=>te,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"paramTwistedRibbonSdf\"),o8=y.fn([v,v,b,b,b,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=r.x,l=r.y,c=r.z,_=r.w,p=o.y,f=J(d),h=O(d),g=__tsover_add(__tsover_mul(t.x,f),__tsover_mul(t.y,h)),x=__tsover_add(__tsover_mul(__tsover_mul(t.x,h),-1),__tsover_mul(t.y,f)),T=__tsover_add(__tsover_add(__tsover_mul(g,l),p),__tsover_mul(i,Kp)),S=J(T),A=O(T),E=w(ue(__tsover_add(__tsover_mul(x,S),__tsover_mul(t.z,A)),c),__tsover_mul(c,-1));return u(__tsover_add(__tsover_mul(g,.15),.5),__tsover_add(__tsover_div(E,_),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"h\"},{type:\"i\",name:\"_n\"},{type:\"i\",name:\"rp0\"},{type:\"i\",name:\"rp1\"},{type:\"i\",name:\"_rp2\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"angleRad\",[7,\"rp0\",\"x\"]],[13,\"twist\",[7,\"rp0\",\"y\"]],[13,\"halfW\",[7,\"rp0\",\"z\"]],[13,\"width\",[7,\"rp0\",\"w\"]],[13,\"phase\",[7,\"rp1\",\"y\"]],[13,\"cosA\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"sinA\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"rpx\",[1,[1,[7,\"h\",\"x\"],\"*\",\"cosA\"],\"+\",[1,[7,\"h\",\"y\"],\"*\",\"sinA\"]]],[13,\"rpy\",[1,[1,[1,[7,\"h\",\"x\"],\"*\",\"sinA\"],\"*\",[4,\"-\",[5,\"1\"]]],\"+\",[1,[7,\"h\",\"y\"],\"*\",\"cosA\"]]],[13,\"twistAngle\",[1,[1,[1,\"rpx\",\"*\",\"twist\"],\"+\",\"phase\"],\"+\",[1,\"t\",\"*\",\"TWISTED_RIBBON_TWIST_RATE\"]]],[13,\"ca\",[6,\"std.cos\",[\"twistAngle\"]]],[13,\"sa\",[6,\"std.sin\",[\"twistAngle\"]]],[13,\"localU\",[1,[1,\"rpy\",\"*\",\"ca\"],\"+\",[1,[7,\"h\",\"z\"],\"*\",\"sa\"]]],[13,\"localUClamped\",[6,\"std.max\",[[6,\"std.min\",[\"localU\",\"halfW\"]],[1,\"halfW\",\"*\",[4,\"-\",[5,\"1\"]]]]]],[10,[6,\"d.vec2f\",[[1,[1,\"rpx\",\"*\",[5,\"0.15\"]],\"+\",[5,\"0.5\"]],[1,[1,\"localUClamped\",\"/\",\"width\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{\"std.cos\":()=>J,\"std.sin\":()=>O,TWISTED_RIBBON_TWIST_RATE:()=>Kp,\"std.max\":()=>w,\"std.min\":()=>ue,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"twistedRibbonSurfaceUV\");function n8(e,t){let s={};return t.forEach((r,o)=>{s[`${e}${o}`]={schema:b,initial:r}}),s}var Tf=No()?128:192,sq=Math.ceil(Tf/4)*Tf*Tf,Zp=No()?512:1024;var rq=Math.PI/180;var Sf=2.39996323,v5=.27;var oq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cam:J6(16,ew(32,qc)),lightDir:v,voxelSize:a,lightT1:v,fill:a,lightT2:v,voxelScale:a,bevel:a,gridOrigin:a,gridN:a,gridW:a}),\"VoxelMarchParams\");var Af=y.fn([Hs(a),a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=a(__tsover_sub(Zp,1)),i=K(s),d=K(r),l=__tsover_sub(s,i),c=__tsover_sub(r,d),_=Y(z(i,a(0),n)),p=Y(z(__tsover_add(i,1),a(0),n)),f=Y(z(d,a(0),n)),h=Y(z(__tsover_add(d,1),a(0),n)),g=F(a(0),a(1),at(t,He(_,f),0).r<o),x=F(a(0),a(1),at(t,He(p,f),0).r<o),T=F(a(0),a(1),at(t,He(_,h),0).r<o),S=F(a(0),a(1),at(t,He(p,h),0).r<o);return Z(Z(g,x,l),Z(T,S,l),c)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"tex\"},{type:\"i\",name:\"mx\"},{type:\"i\",name:\"my\"},{type:\"i\",name:\"ref\"}],body:[0,[[13,\"maxT\",[6,\"d.f32\",[[1,\"VOXEL_SHADOW_RES\",\"-\",[5,\"1\"]]]]],[13,\"x0\",[6,\"std.floor\",[\"mx\"]]],[13,\"y0\",[6,\"std.floor\",[\"my\"]]],[13,\"fx\",[1,\"mx\",\"-\",\"x0\"]],[13,\"fy\",[1,\"my\",\"-\",\"y0\"]],[13,\"cx0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"x0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cx1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"x0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy0\",[6,\"d.u32\",[[6,\"std.clamp\",[\"y0\",[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"cy1\",[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"y0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],\"maxT\"]]]]],[13,\"s00\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,[6,\"std.textureLoad\",[\"tex\",[6,\"d.vec2u\",[\"cx0\",\"cy0\"]],[5,\"0\"]]],\"r\"],\"<\",\"ref\"]]]],[13,\"s10\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,[6,\"std.textureLoad\",[\"tex\",[6,\"d.vec2u\",[\"cx1\",\"cy0\"]],[5,\"0\"]]],\"r\"],\"<\",\"ref\"]]]],[13,\"s01\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,[6,\"std.textureLoad\",[\"tex\",[6,\"d.vec2u\",[\"cx0\",\"cy1\"]],[5,\"0\"]]],\"r\"],\"<\",\"ref\"]]]],[13,\"s11\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,[6,\"std.textureLoad\",[\"tex\",[6,\"d.vec2u\",[\"cx1\",\"cy1\"]],[5,\"0\"]]],\"r\"],\"<\",\"ref\"]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[\"s00\",\"s10\",\"fx\"]],[6,\"std.mix\",[\"s01\",\"s11\",\"fx\"]],\"fy\"]]]]]},externals:{\"d.f32\":()=>a,VOXEL_SHADOW_RES:()=>Zp,\"std.floor\":()=>K,\"d.u32\":()=>Y,\"std.clamp\":()=>z,\"std.select\":()=>F,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"std.mix\":()=>Z}})&&e.f)({})).$name(\"voxelShadowCompare\"),nq=y.fn([Hs(a),v,v,v,v,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=a(Zp),_=__tsover_div(__tsover_mul(i,2),c),p=le(s,o),f=le(s,n),h=__tsover_sub(i,le(s,r)),g=__tsover_sub(__tsover_mul(__tsover_add(__tsover_mul(__tsover_div(p,i),.5),.5),c),.5),x=__tsover_sub(__tsover_mul(__tsover_add(__tsover_mul(__tsover_div(f,i),.5),.5),c),.5),T=__tsover_sub(h,__tsover_add(__tsover_mul(l,.05),__tsover_mul(_,2))),S=a(0);if(d<.001)S=Af(t,g,x,T);else{let A=__tsover_mul(d,v5),E=w(__tsover_div(ue(__tsover_mul(i,A),__tsover_mul(i,.25)),_),1),M=a(0),$=a(0);for(let L=0;L<8;L++){let B=__tsover_mul($e(__tsover_div(__tsover_add(a(L),.5),8)),E),D=__tsover_mul(a(L),Sf),G=z(__tsover_add(g,__tsover_mul(J(D),B)),a(0),__tsover_sub(c,1)),I=z(__tsover_add(x,__tsover_mul(O(D),B)),a(0),__tsover_sub(c,1)),X=at(t,He(Y(G),Y(I)),0).r;X<T&&(M=__tsover_add(M,X),$=__tsover_add($,1))}if($>.5){let L=__tsover_div(M,$),B=z(__tsover_div(__tsover_mul(__tsover_sub(h,L),A),_),1,E),D=a(0);for(let G=0;G<12;G++){let I=__tsover_mul($e(__tsover_div(__tsover_add(a(G),.5),12)),B),X=__tsover_add(__tsover_mul(a(G),Sf),.7);D=__tsover_add(D,Af(t,__tsover_add(g,__tsover_mul(J(X),I)),__tsover_add(x,__tsover_mul(O(X),I)),T))}S=__tsover_div(D,12)}}return S}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"tex\"},{type:\"i\",name:\"p\"},{type:\"i\",name:\"L\"},{type:\"i\",name:\"T1\"},{type:\"i\",name:\"T2\"},{type:\"i\",name:\"rBound\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"voxel\"}],body:[0,[[13,\"RES\",[6,\"d.f32\",[\"VOXEL_SHADOW_RES\"]]],[13,\"texelWorld\",[1,[1,\"rBound\",\"*\",[5,\"2\"]],\"/\",\"RES\"]],[13,\"u\",[6,\"std.dot\",[\"p\",\"T1\"]]],[13,\"w\",[6,\"std.dot\",[\"p\",\"T2\"]]],[13,\"dL\",[1,\"rBound\",\"-\",[6,\"std.dot\",[\"p\",\"L\"]]]],[13,\"mx\",[1,[1,[1,[1,[1,\"u\",\"/\",\"rBound\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],\"*\",\"RES\"],\"-\",[5,\"0.5\"]]],[13,\"my\",[1,[1,[1,[1,[1,\"w\",\"/\",\"rBound\"],\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],\"*\",\"RES\"],\"-\",[5,\"0.5\"]]],[13,\"ref\",[1,\"dL\",\"-\",[1,[1,\"voxel\",\"*\",[5,\"0.05\"]],\"+\",[1,\"texelWorld\",\"*\",[5,\"2\"]]]]],[12,\"shadow\",[6,\"d.f32\",[[5,\"0\"]]]],[11,[1,\"softness\",\"<\",[5,\"0.001\"]],[0,[[2,\"shadow\",\"=\",[6,\"shadowCompare\",[\"tex\",\"mx\",\"my\",\"ref\"]]]]],[0,[[13,\"k\",[1,\"softness\",\"*\",\"SOFT_TAN\"]],[13,\"rSearch\",[6,\"std.max\",[[1,[6,\"std.min\",[[1,\"rBound\",\"*\",\"k\"],[1,\"rBound\",\"*\",[5,\"0.25\"]]]],\"/\",\"texelWorld\"],[5,\"1\"]]]],[12,\"sum\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"count\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"s\",[5,\"0\"]],[1,\"s\",\"<\",[5,\"8\"]],[102,\"++\",\"s\"],[0,[[13,\"r\",[1,[6,\"std.sqrt\",[[1,[1,[6,\"d.f32\",[\"s\"]],\"+\",[5,\"0.5\"]],\"/\",[5,\"8\"]]]],\"*\",\"rSearch\"]],[13,\"th\",[1,[6,\"d.f32\",[\"s\"]],\"*\",\"GOLDEN_ANGLE\"]],[13,\"sx\",[6,\"std.clamp\",[[1,\"mx\",\"+\",[1,[6,\"std.cos\",[\"th\"]],\"*\",\"r\"]],[6,\"d.f32\",[[5,\"0\"]]],[1,\"RES\",\"-\",[5,\"1\"]]]]],[13,\"sy\",[6,\"std.clamp\",[[1,\"my\",\"+\",[1,[6,\"std.sin\",[\"th\"]],\"*\",\"r\"]],[6,\"d.f32\",[[5,\"0\"]]],[1,\"RES\",\"-\",[5,\"1\"]]]]],[13,\"dep\",[7,[6,\"std.textureLoad\",[\"tex\",[6,\"d.vec2u\",[[6,\"d.u32\",[\"sx\"]],[6,\"d.u32\",[\"sy\"]]]],[5,\"0\"]]],\"r\"]],[11,[1,\"dep\",\"<\",\"ref\"],[0,[[2,\"sum\",\"=\",[1,\"sum\",\"+\",\"dep\"]],[2,\"count\",\"=\",[1,\"count\",\"+\",[5,\"1\"]]]]]]]]],[11,[1,\"count\",\">\",[5,\"0.5\"]],[0,[[13,\"avgBlocker\",[1,\"sum\",\"/\",\"count\"]],[13,\"penumbra\",[6,\"std.clamp\",[[1,[1,[1,\"dL\",\"-\",\"avgBlocker\"],\"*\",\"k\"],\"/\",\"texelWorld\"],[5,\"1\"],\"rSearch\"]]],[12,\"acc\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"s\",[5,\"0\"]],[1,\"s\",\"<\",[5,\"12\"]],[102,\"++\",\"s\"],[0,[[13,\"r\",[1,[6,\"std.sqrt\",[[1,[1,[6,\"d.f32\",[\"s\"]],\"+\",[5,\"0.5\"]],\"/\",[5,\"12\"]]]],\"*\",\"penumbra\"]],[13,\"th\",[1,[1,[6,\"d.f32\",[\"s\"]],\"*\",\"GOLDEN_ANGLE\"],\"+\",[5,\"0.7\"]]],[2,\"acc\",\"=\",[1,\"acc\",\"+\",[6,\"shadowCompare\",[\"tex\",[1,\"mx\",\"+\",[1,[6,\"std.cos\",[\"th\"]],\"*\",\"r\"]],[1,\"my\",\"+\",[1,[6,\"std.sin\",[\"th\"]],\"*\",\"r\"]],\"ref\"]]]]]]],[2,\"shadow\",\"=\",[1,\"acc\",\"/\",[5,\"12\"]]]]]]]]],[10,\"shadow\"]]]},externals:{\"d.f32\":()=>a,VOXEL_SHADOW_RES:()=>Zp,\"std.dot\":()=>le,shadowCompare:()=>Af,SOFT_TAN:()=>v5,\"std.max\":()=>w,\"std.min\":()=>ue,\"std.sqrt\":()=>$e,GOLDEN_ANGLE:()=>Sf,\"std.clamp\":()=>z,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"d.u32\":()=>Y}})&&e.f)({})).$name(\"voxelShadowLookup\"),h5=y.fn([v,v,v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=F(a(-1),a(1),s.x>=0),i=F(a(-1),a(1),s.y>=0),d=F(a(-1),a(1),s.z>=0),l=__tsover_div(n,w(W(s.x),1e-6)),c=__tsover_div(i,w(W(s.y),1e-6)),_=__tsover_div(d,w(W(s.z),1e-6)),p=__tsover_mul(__tsover_sub(__tsover_sub(r.x,o),t.x),l),f=__tsover_mul(__tsover_sub(__tsover_add(r.x,o),t.x),l),h=__tsover_mul(__tsover_sub(__tsover_sub(r.y,o),t.y),c),g=__tsover_mul(__tsover_sub(__tsover_add(r.y,o),t.y),c),x=__tsover_mul(__tsover_sub(__tsover_sub(r.z,o),t.z),_),T=__tsover_mul(__tsover_sub(__tsover_add(r.z,o),t.z),_),S=w(ue(p,f),w(ue(h,g),ue(x,T))),A=ue(w(p,f),ue(w(h,g),w(x,T))),E=__tsover_mul(F(a(0),a(1),S<=A),F(a(0),a(1),A>=0));return F(a(-1),w(S,a(0)),E>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"ro\"},{type:\"i\",name:\"rd\"},{type:\"i\",name:\"c\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"sx\",[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,\"rd\",\"x\"],\">=\",[5,\"0\"]]]]],[13,\"sy\",[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,\"rd\",\"y\"],\">=\",[5,\"0\"]]]]],[13,\"sz\",[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[6,\"d.f32\",[[5,\"1\"]]],[1,[7,\"rd\",\"z\"],\">=\",[5,\"0\"]]]]],[13,\"ix\",[1,\"sx\",\"/\",[6,\"std.max\",[[6,\"std.abs\",[[7,\"rd\",\"x\"]]],[5,\"0.000001\"]]]]],[13,\"iy\",[1,\"sy\",\"/\",[6,\"std.max\",[[6,\"std.abs\",[[7,\"rd\",\"y\"]]],[5,\"0.000001\"]]]]],[13,\"iz\",[1,\"sz\",\"/\",[6,\"std.max\",[[6,\"std.abs\",[[7,\"rd\",\"z\"]]],[5,\"0.000001\"]]]]],[13,\"t1x\",[1,[1,[1,[7,\"c\",\"x\"],\"-\",\"h\"],\"-\",[7,\"ro\",\"x\"]],\"*\",\"ix\"]],[13,\"t2x\",[1,[1,[1,[7,\"c\",\"x\"],\"+\",\"h\"],\"-\",[7,\"ro\",\"x\"]],\"*\",\"ix\"]],[13,\"t1y\",[1,[1,[1,[7,\"c\",\"y\"],\"-\",\"h\"],\"-\",[7,\"ro\",\"y\"]],\"*\",\"iy\"]],[13,\"t2y\",[1,[1,[1,[7,\"c\",\"y\"],\"+\",\"h\"],\"-\",[7,\"ro\",\"y\"]],\"*\",\"iy\"]],[13,\"t1z\",[1,[1,[1,[7,\"c\",\"z\"],\"-\",\"h\"],\"-\",[7,\"ro\",\"z\"]],\"*\",\"iz\"]],[13,\"t2z\",[1,[1,[1,[7,\"c\",\"z\"],\"+\",\"h\"],\"-\",[7,\"ro\",\"z\"]],\"*\",\"iz\"]],[13,\"tIn\",[6,\"std.max\",[[6,\"std.min\",[\"t1x\",\"t2x\"]],[6,\"std.max\",[[6,\"std.min\",[\"t1y\",\"t2y\"]],[6,\"std.min\",[\"t1z\",\"t2z\"]]]]]]],[13,\"tOut\",[6,\"std.min\",[[6,\"std.max\",[\"t1x\",\"t2x\"]],[6,\"std.min\",[[6,\"std.max\",[\"t1y\",\"t2y\"]],[6,\"std.max\",[\"t1z\",\"t2z\"]]]]]]],[13,\"ok\",[1,[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"tIn\",\"<=\",\"tOut\"]]],\"*\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"tOut\",\">=\",[5,\"0\"]]]]]],[10,[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[6,\"std.max\",[\"tIn\",[6,\"d.f32\",[[5,\"0\"]]]]],[1,\"ok\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.select\":()=>F,\"d.f32\":()=>a,\"std.max\":()=>w,\"std.abs\":()=>W,\"std.min\":()=>ue}})&&e.f)({})).$name(\"voxelRayBox\"),aq=y.fn([v,v,v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=t.sub(r),i=le(n,s),d=__tsover_sub(le(n,n),__tsover_mul(o,o)),l=__tsover_sub(__tsover_mul(i,i),d),c=__tsover_sub(__tsover_mul(i,-1),$e(w(l,0))),_=__tsover_mul(F(a(0),a(1),l>=0),F(a(0),a(1),c>=0));return F(a(-1),c,_>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"ro\"},{type:\"i\",name:\"rd\"},{type:\"i\",name:\"c\"},{type:\"i\",name:\"h\"}],body:[0,[[13,\"oc\",[6,[7,\"ro\",\"sub\"],[\"c\"]]],[13,\"b\",[6,\"std.dot\",[\"oc\",\"rd\"]]],[13,\"cc\",[1,[6,\"std.dot\",[\"oc\",\"oc\"]],\"-\",[1,\"h\",\"*\",\"h\"]]],[13,\"disc\",[1,[1,\"b\",\"*\",\"b\"],\"-\",\"cc\"]],[13,\"t\",[1,[1,\"b\",\"*\",[4,\"-\",[5,\"1\"]]],\"-\",[6,\"std.sqrt\",[[6,\"std.max\",[\"disc\",[5,\"0\"]]]]]]],[13,\"ok\",[1,[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"disc\",\">=\",[5,\"0\"]]]],\"*\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"t\",\">=\",[5,\"0\"]]]]]],[10,[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],\"t\",[1,\"ok\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.dot\":()=>le,\"std.sqrt\":()=>$e,\"std.max\":()=>w,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})).$name(\"voxelRaySphere\"),iq=y.fn([v,v,v,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=h5(t,s,r,o),d=a(-1);if(i>=0){let l=i,c=a(0);for(let _=0;_<8;_++){let p=Ac(t.add(s.mul(l)).sub(r),o,o,o,n);if(p<__tsover_mul(o,.004)){c=a(1);break}if(l=__tsover_add(l,p),l>__tsover_add(i,__tsover_mul(o,3.5)))break}d=F(a(-1),l,c>.5)}return d}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"ro\"},{type:\"i\",name:\"rd\"},{type:\"i\",name:\"c\"},{type:\"i\",name:\"h\"},{type:\"i\",name:\"r\"}],body:[0,[[13,\"tBox\",[6,\"voxelRayBox\",[\"ro\",\"rd\",\"c\",\"h\"]]],[12,\"t\",[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]]],[11,[1,\"tBox\",\">=\",[5,\"0\"]],[0,[[12,\"s\",\"tBox\"],[12,\"hit\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"i\",[5,\"0\"]],[1,\"i\",\"<\",[5,\"8\"]],[102,\"++\",\"i\"],[0,[[13,\"p\",[6,[7,[6,[7,\"ro\",\"add\"],[[6,[7,\"rd\",\"mul\"],[\"s\"]]]],\"sub\"],[\"c\"]]],[13,\"dd\",[6,\"sdRoundBox\",[\"p\",\"h\",\"h\",\"h\",\"r\"]]],[11,[1,\"dd\",\"<\",[1,\"h\",\"*\",[5,\"0.004\"]]],[0,[[2,\"hit\",\"=\",[6,\"d.f32\",[[5,\"1\"]]]],[17]]]],[2,\"s\",\"=\",[1,\"s\",\"+\",\"dd\"]],[11,[1,\"s\",\">\",[1,\"tBox\",\"+\",[1,\"h\",\"*\",[5,\"3.5\"]]]],[0,[[17]]]]]]],[2,\"t\",\"=\",[6,\"std.select\",[[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],\"s\",[1,\"hit\",\">\",[5,\"0.5\"]]]]]]]],[10,\"t\"]]]},externals:{voxelRayBox:()=>h5,\"d.f32\":()=>a,sdRoundBox:()=>Ac,\"std.select\":()=>F}})&&e.f)({})).$name(\"voxelRayRoundedBox\");var lS=Pn({bevelSin:()=>cS}),cS=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_sub(1,t),o=ce(0,.14,t),n=ce(.68,.92,t);return Z(r,Z(a(1),__tsover_mul(.72,__tsover_sub(1,n)),o),s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"shape\"}],body:[0,[[13,\"sRound\",[1,[5,\"1\"],\"-\",\"t\"]],[13,\"k1\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.14\"],\"t\"]]],[13,\"k2\",[6,\"std.smoothstep\",[[5,\"0.68\"],[5,\"0.92\"],\"t\"]]],[13,\"sMach\",[6,\"std.mix\",[[6,\"d.f32\",[[5,\"1\"]]],[1,[5,\"0.72\"],\"*\",[1,[5,\"1\"],\"-\",\"k2\"]],\"k1\"]]],[10,[6,\"std.mix\",[\"sRound\",\"sMach\",\"shape\"]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.mix\":()=>Z,\"d.f32\":()=>a}})&&e.f)({})),uS=Pn({BLUR_DISK:()=>Ei,GlassLensUVs:()=>q_,applyGlassEffect:()=>i8,glassBlurOffset:()=>pS,glassBorderHighlight:()=>th,glassComposite:()=>mS,glassFresnelRim:()=>rh,glassGradient:()=>Dm,glassLensUVs:()=>_S,glassRefrStrength:()=>Pc,glassSpecular:()=>sh,glassTint:()=>eh,offsetUV:()=>jd,sdfSpaceUV:()=>Gm}),Oa=.017453292519943295,M_=.4472135954999579,a8=2.3999632297286535,Jv=9,Ei=[];for(let e=0;e<Jv;e++){let t=e*a8,s=Math.sqrt(e/Jv);Ei.push([Math.cos(t)*s,Math.sin(t)*s])}var Gm=y.fn([u,a,a,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=t.x,d=__tsover_sub(1,t.y),l=__tsover_mul(__tsover_sub(o.x,i),n),c=__tsover_sub(o.y,d),_=__tsover_mul(r,Oa),p=J(_),f=O(_),h=__tsover_add(__tsover_mul(l,p),__tsover_mul(c,f)),g=__tsover_sub(__tsover_mul(c,p),__tsover_mul(l,f));return u(__tsover_add(__tsover_div(h,s),.5),__tsover_add(__tsover_div(g,s),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"centerX\",[7,\"center\",\"x\"]],[13,\"centerY\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]],[13,\"dxAc\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"centerX\"],\"*\",\"aspect\"]],[13,\"dy\",[1,[7,\"uv\",\"y\"],\"-\",\"centerY\"]],[13,\"rotRad\",[1,\"rotation\",\"*\",\"DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rdx\",[1,[1,\"dxAc\",\"*\",\"cosR\"],\"+\",[1,\"dy\",\"*\",\"sinR\"]]],[13,\"rdy\",[1,[1,\"dy\",\"*\",\"cosR\"],\"-\",[1,\"dxAc\",\"*\",\"sinR\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"rdx\",\"/\",\"scale\"],\"+\",[5,\"0.5\"]],[1,[1,\"rdy\",\"/\",\"scale\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{DEG_TO_RAD:()=>Oa,\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({})),jd=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(__tsover_add(t.x,s),__tsover_add(t.y,r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[10,[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"+\",\"ox\"],[1,[7,\"uv\",\"y\"],\"+\",\"oy\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),Dm=y.fn([a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return u(__tsover_div(__tsover_sub(s,t),.01),__tsover_div(__tsover_sub(r,t),.01))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdfRaw\"},{type:\"i\",name:\"sdfX\"},{type:\"i\",name:\"sdfY\"}],body:[0,[[13,\"eps\",[5,\"0.01\"]],[10,[6,\"d.vec2f\",[[1,[1,\"sdfX\",\"-\",\"sdfRaw\"],\"/\",\"eps\"],[1,[1,\"sdfY\",\"-\",\"sdfRaw\"],\"/\",\"eps\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),Pc=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=w(__tsover_mul(s,.3),.005),n=z(__tsover_div(__tsover_mul(t,-1),o),0,1),i=ce(0,1,n);return F(__tsover_mul(__tsover_sub(1,n),__tsover_sub(1,n)),i,r>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"thicknessRange\",[6,\"std.max\",[[1,\"thickness\",\"*\",[5,\"0.3\"]],[5,\"0.005\"]]]],[13,\"depthNorm\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"thicknessRange\"],[5,\"0\"],[5,\"1\"]]]],[13,\"vol\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"1\"],\"depthNorm\"]]],[13,\"flat\",[1,[1,[5,\"1\"],\"-\",\"depthNorm\"],\"*\",[1,[5,\"1\"],\"-\",\"depthNorm\"]]],[10,[6,\"std.select\",[\"flat\",\"vol\",[1,\"volumetric\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.smoothstep\":()=>ce,\"std.select\":()=>F}})&&e.f)({})),q_=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({lensUV:u,rUV:u,bUV:u}),\"GlassLensUVs\"),_S=y.fn([u,u,a,a,a,a,a,a,a,a,a,a],q_)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f)=>{\"use gpu\";let h=Pc(__tsover_div(r,o),c,f),g=__tsover_mul(d,.15),x=w($e(__tsover_add(__tsover_mul(n,n),__tsover_mul(i,i))),1e-4),T=ue(a(1),__tsover_div(12,x)),S=__tsover_div(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(n,T),-1),g),h),p),A=__tsover_mul(__tsover_mul(__tsover_mul(__tsover_mul(i,T),-1),g),h),E=s.x,M=__tsover_sub(1,s.y),$=__tsover_add(E,__tsover_div(__tsover_sub(t.x,E),l)),L=__tsover_add(M,__tsover_div(__tsover_sub(t.y,M),l)),B=__tsover_add($,S),D=__tsover_add(L,A),G=__tsover_mul(_,.06),I=__tsover_mul(S,G),X=__tsover_mul(A,G);return q_({lensUV:u(B,D),rUV:u(__tsover_add(B,I),__tsover_add(D,X)),bUV:u(__tsover_sub(B,I),__tsover_sub(D,X))})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"sdfRaw\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"refraction\"},{type:\"i\",name:\"innerZoom\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"aberration\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"sdf\",[1,\"sdfRaw\",\"/\",\"scale\"]],[13,\"refrStrength\",[6,\"glassRefrStrength\",[\"sdf\",\"thickness\",\"volumetric\"]]],[13,\"refrScale\",[1,\"refraction\",\"*\",[5,\"0.15\"]]],[13,\"slopeLen\",[6,\"std.max\",[[6,\"std.sqrt\",[[1,[1,\"gradX\",\"*\",\"gradX\"],\"+\",[1,\"gradY\",\"*\",\"gradY\"]]]],[5,\"0.0001\"]]]],[13,\"slopeScale\",[6,\"std.min\",[[6,\"d.f32\",[[5,\"1\"]]],[1,[5,\"12\"],\"/\",\"slopeLen\"]]]],[13,\"offsetX\",[1,[1,[1,[1,[1,\"gradX\",\"*\",\"slopeScale\"],\"*\",[4,\"-\",[5,\"1\"]]],\"*\",\"refrScale\"],\"*\",\"refrStrength\"],\"/\",\"aspect\"]],[13,\"offsetY\",[1,[1,[1,[1,\"gradY\",\"*\",\"slopeScale\"],\"*\",[4,\"-\",[5,\"1\"]]],\"*\",\"refrScale\"],\"*\",\"refrStrength\"]],[13,\"centerX\",[7,\"center\",\"x\"]],[13,\"centerY\",[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]],[13,\"zoomedX\",[1,\"centerX\",\"+\",[1,[1,[7,\"uv\",\"x\"],\"-\",\"centerX\"],\"/\",\"innerZoom\"]]],[13,\"zoomedY\",[1,\"centerY\",\"+\",[1,[1,[7,\"uv\",\"y\"],\"-\",\"centerY\"],\"/\",\"innerZoom\"]]],[13,\"lensX\",[1,\"zoomedX\",\"+\",\"offsetX\"]],[13,\"lensY\",[1,\"zoomedY\",\"+\",\"offsetY\"]],[13,\"chrScale\",[1,\"aberration\",\"*\",[5,\"0.06\"]]],[13,\"chrOffX\",[1,\"offsetX\",\"*\",\"chrScale\"]],[13,\"chrOffY\",[1,\"offsetY\",\"*\",\"chrScale\"]],[10,[6,\"GlassLensUVs\",[[104,{lensUV:[6,\"d.vec2f\",[\"lensX\",\"lensY\"]],rUV:[6,\"d.vec2f\",[[1,\"lensX\",\"+\",\"chrOffX\"],[1,\"lensY\",\"+\",\"chrOffY\"]]],bUV:[6,\"d.vec2f\",[[1,\"lensX\",\"-\",\"chrOffX\"],[1,\"lensY\",\"-\",\"chrOffY\"]]]}]]]]]]},externals:{glassRefrStrength:()=>Pc,\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.min\":()=>ue,\"d.f32\":()=>a,GlassLensUVs:()=>q_,\"d.vec2f\":()=>u}})&&e.f)({})),pS=y.fn([u,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(s,2);return u(__tsover_mul(__tsover_div(r,t.x),n),__tsover_mul(__tsover_div(o,t.y),n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"viewportSize\"},{type:\"i\",name:\"blur\"},{type:\"i\",name:\"ox\"},{type:\"i\",name:\"oy\"}],body:[0,[[13,\"m\",[1,\"blur\",\"*\",[5,\"2\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"ox\",\"/\",[7,\"viewportSize\",\"x\"]],\"*\",\"m\"],[1,[1,\"oy\",\"/\",[7,\"viewportSize\",\"y\"]],\"*\",\"m\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),eh=y.fn([v,v,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=v(.299,.587,.114),i=le(t,n),d=Z(t,s,r),l=le(d,n);return Z(d,d.mul(__tsover_div(i,w(l,1e-4))),F(a(0),a(1),o>.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"tintColor\"},{type:\"i\",name:\"tintIntensity\"},{type:\"i\",name:\"preserveLum\"}],body:[0,[[13,\"lumWeights\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]],[13,\"origLum\",[6,\"std.dot\",[\"rgb\",\"lumWeights\"]]],[13,\"tinted\",[6,\"std.mix\",[\"rgb\",\"tintColor\",\"tintIntensity\"]]],[13,\"tintedLum\",[6,\"std.dot\",[\"tinted\",\"lumWeights\"]]],[13,\"lumPreserved\",[6,[7,\"tinted\",\"mul\"],[[1,\"origLum\",\"/\",[6,\"std.max\",[\"tintedLum\",[5,\"0.0001\"]]]]]]],[13,\"preserveFactor\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"preserveLum\",\">\",[5,\"0.5\"]]]]],[10,[6,\"std.mix\",[\"tinted\",\"lumPreserved\",\"preserveFactor\"]]]]]},externals:{\"d.vec3f\":()=>v,\"std.dot\":()=>le,\"std.mix\":()=>Z,\"std.max\":()=>w,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})),th=y.fn([a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=w(__tsover_mul(s,.5),.001),c=w(__tsover_mul(l,.0625),__tsover_mul(r,1.5)),_=__tsover_sub(t,r),p=__tsover_sub(z(__tsover_div(__tsover_mul(_,-1),c),0,1),z(__tsover_div(__tsover_mul(t,-1),c),0,1)),f=J(__tsover_mul(i,Oa)),h=O(__tsover_mul(i,Oa)),g=__tsover_add(__tsover_mul(o,f),__tsover_mul(n,h)),x=z(__tsover_add(__tsover_mul(g,.5),.5),0,1);return __tsover_mul(__tsover_mul(p,x),d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"edgeSoftness\"},{type:\"i\",name:\"pxH\"},{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"lightAngle\"},{type:\"i\",name:\"highlight\"}],body:[0,[[13,\"sharp\",[6,\"std.max\",[[1,\"edgeSoftness\",\"*\",[5,\"0.5\"]],[5,\"0.001\"]]]],[13,\"w2\",[6,\"std.max\",[[1,\"sharp\",\"*\",[5,\"0.0625\"]],[1,\"pxH\",\"*\",[5,\"1.5\"]]]]],[13,\"sdfOuter\",[1,\"sdf\",\"-\",\"pxH\"]],[13,\"rb2base\",[1,[6,\"std.clamp\",[[1,[1,\"sdfOuter\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"w2\"],[5,\"0\"],[5,\"1\"]]],\"-\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"w2\"],[5,\"0\"],[5,\"1\"]]]]],[13,\"lx\",[6,\"std.cos\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"ly\",[6,\"std.sin\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"normalDotLight\",[1,[1,\"gradX\",\"*\",\"lx\"],\"+\",[1,\"gradY\",\"*\",\"ly\"]]],[13,\"lightFacing\",[6,\"std.clamp\",[[1,[1,\"normalDotLight\",\"*\",[5,\"0.5\"]],\"+\",[5,\"0.5\"]],[5,\"0\"],[5,\"1\"]]]],[10,[1,[1,\"rb2base\",\"*\",\"lightFacing\"],\"*\",\"highlight\"]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,\"std.cos\":()=>J,DEG_TO_RAD:()=>Oa,\"std.sin\":()=>O}})&&e.f)({})),sh=y.fn([a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=J(__tsover_mul(r,Oa)),l=O(__tsover_mul(r,Oa)),c=a(2),_=$e(__tsover_add(__tsover_add(__tsover_mul(t,t),__tsover_mul(s,s)),__tsover_mul(c,c))),p=__tsover_div(t,_),f=__tsover_div(s,_),h=__tsover_div(c,_),g=__tsover_add(__tsover_add(__tsover_mul(p,__tsover_mul(d,M_)),__tsover_mul(f,__tsover_mul(l,M_))),__tsover_mul(h,__tsover_mul(2,M_))),x=rp(__tsover_sub(8,__tsover_mul(n,7)));return __tsover_mul(__tsover_mul(Ye(z(g,0,1),x),o),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"lightAngle\"},{type:\"i\",name:\"highlight\"},{type:\"i\",name:\"highlightSoftness\"},{type:\"i\",name:\"refrStrength\"}],body:[0,[[13,\"lx\",[6,\"std.cos\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"ly\",[6,\"std.sin\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"nz\",[6,\"d.f32\",[[5,\"2\"]]]],[13,\"nLen\",[6,\"std.sqrt\",[[1,[1,[1,\"gradX\",\"*\",\"gradX\"],\"+\",[1,\"gradY\",\"*\",\"gradY\"]],\"+\",[1,\"nz\",\"*\",\"nz\"]]]]],[13,\"nx\",[1,\"gradX\",\"/\",\"nLen\"]],[13,\"ny\",[1,\"gradY\",\"/\",\"nLen\"]],[13,\"nnz\",[1,\"nz\",\"/\",\"nLen\"]],[13,\"nDotH\",[1,[1,[1,\"nx\",\"*\",[1,\"lx\",\"*\",\"INV_HLEN_GLASS\"]],\"+\",[1,\"ny\",\"*\",[1,\"ly\",\"*\",\"INV_HLEN_GLASS\"]]],\"+\",[1,\"nnz\",\"*\",[1,[5,\"2\"],\"*\",\"INV_HLEN_GLASS\"]]]],[13,\"shininess\",[6,\"std.exp2\",[[1,[5,\"8\"],\"-\",[1,\"highlightSoftness\",\"*\",[5,\"7\"]]]]]],[10,[1,[1,[6,\"std.pow\",[[6,\"std.clamp\",[\"nDotH\",[5,\"0\"],[5,\"1\"]]],\"shininess\"]],\"*\",\"highlight\"],\"*\",\"refrStrength\"]]]]},externals:{\"std.cos\":()=>J,DEG_TO_RAD:()=>Oa,\"std.sin\":()=>O,\"d.f32\":()=>a,\"std.sqrt\":()=>$e,INV_HLEN_GLASS:()=>M_,\"std.exp2\":()=>rp,\"std.pow\":()=>Ye,\"std.clamp\":()=>z}})&&e.f)({})),rh=y.fn([a,a,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_add(__tsover_mul(s,s),__tsover_mul(r,r)),c=__tsover_div(1,$e(__tsover_add(l,1))),_=Z(6,1.5,z(n,0,1)),p=__tsover_mul(__tsover_mul(__tsover_mul(Ye(__tsover_sub(1,c),_),o),2),i),f=w(__tsover_mul(n,.06),.001),h=z(__tsover_div(__tsover_mul(t,-1),f),0,1);return F(__tsover_mul(__tsover_mul(__tsover_mul(__tsover_sub(1,h),__tsover_sub(1,h)),o),i),p,d>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdf\"},{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"fresnel\"},{type:\"i\",name:\"fresnelSoftness\"},{type:\"i\",name:\"rb1\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"slopeSq\",[1,[1,\"gradX\",\"*\",\"gradX\"],\"+\",[1,\"gradY\",\"*\",\"gradY\"]]],[13,\"cosView\",[1,[5,\"1\"],\"/\",[6,\"std.sqrt\",[[1,\"slopeSq\",\"+\",[5,\"1\"]]]]]],[13,\"exponent\",[6,\"std.mix\",[[5,\"6\"],[5,\"1.5\"],[6,\"std.clamp\",[\"fresnelSoftness\",[5,\"0\"],[5,\"1\"]]]]]],[13,\"volRim\",[1,[1,[1,[6,\"std.pow\",[[1,[5,\"1\"],\"-\",\"cosView\"],\"exponent\"]],\"*\",\"fresnel\"],\"*\",[5,\"2\"]],\"*\",\"rb1\"]],[13,\"fresnelWidth\",[6,\"std.max\",[[1,\"fresnelSoftness\",\"*\",[5,\"0.06\"]],[5,\"0.001\"]]]],[13,\"fresnelDepth\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"fresnelWidth\"],[5,\"0\"],[5,\"1\"]]]],[13,\"flatRim\",[1,[1,[1,[1,[5,\"1\"],\"-\",\"fresnelDepth\"],\"*\",[1,[5,\"1\"],\"-\",\"fresnelDepth\"]],\"*\",\"fresnel\"],\"*\",\"rb1\"]],[10,[6,\"std.select\",[\"flatRim\",\"volRim\",[1,\"volumetric\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.sqrt\":()=>$e,\"std.mix\":()=>Z,\"std.clamp\":()=>z,\"std.pow\":()=>Ye,\"std.max\":()=>w,\"std.select\":()=>F}})&&e.f)({})),mS=y.fn([b,b,a,a,a,a,u,a,a,a,v,a,a,v,a,a,v,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f,h,g,x,T,S,A,E,M,$)=>{\"use gpu\";let L=w(__tsover_mul(l,.5),.001),B=__tsover_div(1,d.y),D=__tsover_div(r,o),G=w(__tsover_mul(L,.03125),__tsover_mul(B,1.5)),I=z(__tsover_div(__tsover_mul(D,-1),G),0,1),X=Pc(D,T,$),H=th(D,l,B,n,i,c,_),ee=eh(v(s.x,s.y,s.z),S,A,E),Q=sh(n,i,c,_,f,X),de=rh(D,n,i,h,x,I,$),Ee=b(__tsover_add(__tsover_add(__tsover_add(ee.x,__tsover_mul(p.x,H)),__tsover_mul(p.x,Q)),__tsover_mul(g.x,de)),__tsover_add(__tsover_add(__tsover_add(ee.y,__tsover_mul(p.y,H)),__tsover_mul(p.y,Q)),__tsover_mul(g.y,de)),__tsover_add(__tsover_add(__tsover_add(ee.z,__tsover_mul(p.z,H)),__tsover_mul(p.z,Q)),__tsover_mul(g.z,de)),__tsover_add(s.w,H)),he=ce(0,1,I),Me=Z(t,Ee,he),Te=F(a(1),he,M>.5);return b(Me.x,Me.y,Me.z,__tsover_mul(Me.w,Te))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"baseColor\"},{type:\"i\",name:\"blurred\"},{type:\"i\",name:\"sdfRaw\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"viewportSize\"},{type:\"i\",name:\"edgeSoftness\"},{type:\"i\",name:\"lightAngle\"},{type:\"i\",name:\"highlight\"},{type:\"i\",name:\"highlightColor\"},{type:\"i\",name:\"highlightSoftness\"},{type:\"i\",name:\"fresnel\"},{type:\"i\",name:\"fresnelColor\"},{type:\"i\",name:\"fresnelSoftness\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"tintColor\"},{type:\"i\",name:\"tintIntensity\"},{type:\"i\",name:\"tintPreserveLuminosity\"},{type:\"i\",name:\"cutout\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"sharp\",[6,\"std.max\",[[1,\"edgeSoftness\",\"*\",[5,\"0.5\"]],[5,\"0.001\"]]]],[13,\"pxH\",[1,[5,\"1\"],\"/\",[7,\"viewportSize\",\"y\"]]],[13,\"sdf\",[1,\"sdfRaw\",\"/\",\"scale\"]],[13,\"w1\",[6,\"std.max\",[[1,\"sharp\",\"*\",[5,\"0.03125\"]],[1,\"pxH\",\"*\",[5,\"1.5\"]]]]],[13,\"rb1\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"w1\"],[5,\"0\"],[5,\"1\"]]]],[13,\"refrStrength\",[6,\"glassRefrStrength\",[\"sdf\",\"thickness\",\"volumetric\"]]],[13,\"rb2\",[6,\"glassBorderHighlight\",[\"sdf\",\"edgeSoftness\",\"pxH\",\"gradX\",\"gradY\",\"lightAngle\",\"highlight\"]]],[13,\"blurredRgb\",[6,\"d.vec3f\",[[7,\"blurred\",\"x\"],[7,\"blurred\",\"y\"],[7,\"blurred\",\"z\"]]]],[13,\"tintedRgb\",[6,\"glassTint\",[\"blurredRgb\",\"tintColor\",\"tintIntensity\",\"tintPreserveLuminosity\"]]],[13,\"specGlint\",[6,\"glassSpecular\",[\"gradX\",\"gradY\",\"lightAngle\",\"highlight\",\"highlightSoftness\",\"refrStrength\"]]],[13,\"fresnelRim\",[6,\"glassFresnelRim\",[\"sdf\",\"gradX\",\"gradY\",\"fresnel\",\"fresnelSoftness\",\"rb1\",\"volumetric\"]]],[13,\"litR\",[1,[1,[1,[7,\"tintedRgb\",\"x\"],\"+\",[1,[7,\"highlightColor\",\"x\"],\"*\",\"rb2\"]],\"+\",[1,[7,\"highlightColor\",\"x\"],\"*\",\"specGlint\"]],\"+\",[1,[7,\"fresnelColor\",\"x\"],\"*\",\"fresnelRim\"]]],[13,\"litG\",[1,[1,[1,[7,\"tintedRgb\",\"y\"],\"+\",[1,[7,\"highlightColor\",\"y\"],\"*\",\"rb2\"]],\"+\",[1,[7,\"highlightColor\",\"y\"],\"*\",\"specGlint\"]],\"+\",[1,[7,\"fresnelColor\",\"y\"],\"*\",\"fresnelRim\"]]],[13,\"litB\",[1,[1,[1,[7,\"tintedRgb\",\"z\"],\"+\",[1,[7,\"highlightColor\",\"z\"],\"*\",\"rb2\"]],\"+\",[1,[7,\"highlightColor\",\"z\"],\"*\",\"specGlint\"]],\"+\",[1,[7,\"fresnelColor\",\"z\"],\"*\",\"fresnelRim\"]]],[13,\"litA\",[1,[7,\"blurred\",\"w\"],\"+\",\"rb2\"]],[13,\"lighting\",[6,\"d.vec4f\",[\"litR\",\"litG\",\"litB\",\"litA\"]]],[13,\"transition\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"1\"],\"rb1\"]]],[13,\"composited\",[6,\"std.mix\",[\"baseColor\",\"lighting\",\"transition\"]]],[13,\"cutoutAlpha\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],\"transition\",[1,\"cutout\",\">\",[5,\"0.5\"]]]]],[10,[6,\"d.vec4f\",[[7,\"composited\",\"x\"],[7,\"composited\",\"y\"],[7,\"composited\",\"z\"],[1,[7,\"composited\",\"w\"],\"*\",\"cutoutAlpha\"]]]]]]},externals:{\"std.max\":()=>w,\"std.clamp\":()=>z,glassRefrStrength:()=>Pc,glassBorderHighlight:()=>th,\"d.vec3f\":()=>v,glassTint:()=>eh,glassSpecular:()=>sh,glassFresnelRim:()=>rh,\"d.vec4f\":()=>b,\"std.smoothstep\":()=>ce,\"std.mix\":()=>Z,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({}));function i8(e,t,s,r,o){let{uniforms:n,propValues:i,ctx:d}=e,l=o?.volumetric??!1,c=o?.bakedGradients??!1,_=nt(l?1:0),p=Vs(se(Gm,\"sdfSpaceUV\",[n.center,n.scale,n.rotation,d.uv,d.aspect]),\"glassSdfUV\"),f=Vs(t(p),\"glassSurf\"),h=f.member(\"r\"),g,x;if(c)g=f.member(\"g\"),x=f.member(\"b\");else{let H=t(se(jd,\"offsetUV\",[p,nt(.01),nt(0)])),ee=t(se(jd,\"offsetUV\",[p,nt(0),nt(.01)])),Q=Vs(se(Dm,\"glassGradient\",[h,H.member(\"r\"),ee.member(\"r\")]),\"glassGrad\");g=Q.member(\"x\"),x=Q.member(\"y\")}let T=Vs(se(_S,\"glassLensUVs\",[d.uv,n.center,h,n.scale,g,x,n.refraction,n.innerZoom,n.thickness,n.aberration,d.aspect,_]),\"glassLens\"),S=T.member(\"lensUV\"),A=T.member(\"rUV\"),E=T.member(\"bUV\"),M=i.blur,$=typeof M==\"number\"?M>0:!0,L=i.aberration,B=typeof L==\"number\"?L>0:!0,D=(H,ee,Q,de)=>H.sample(ee.add(se(pS,\"glassBlurOffset\",[d.viewportSize,n.blur,nt(Q),nt(de)]))),G=(H,ee)=>{let Q=D(H,ee,Ei[0][0],Ei[0][1]);for(let de=1;de<Ei.length;de++)Q=Q.add(D(H,ee,Ei[de][0],Ei[de][1]));return Q.mul(1/Jv)},I;if(r&&$)I=B?Ss(r.sample(A).member(\"r\"),r.sample(S).member(\"g\"),r.sample(E).member(\"b\"),r.sample(S).member(\"a\")):r.sample(S);else if(!$&&!B)I=s.sample(S);else if(!$&&B)I=Ss(s.sample(A).member(\"r\"),s.sample(S).member(\"g\"),s.sample(E).member(\"b\"),s.sample(S).member(\"a\"));else if($&&!B)I=G(s,S);else{let H=G(s,A),ee=G(s,S),Q=G(s,E);I=Ss(H.member(\"r\"),ee.member(\"g\"),Q.member(\"b\"),ee.member(\"a\"))}let X=se(Hn,\"unpremultiplyAlpha\",[I]);return se(mS,\"glassComposite\",[se(Hn,\"unpremultiplyAlpha\",[s.sample(d.uv)]),X,h,n.scale,g,x,d.viewportSize,n.edgeSoftness,n.lightAngle,n.highlight,n.highlightColor.member(\"rgb\"),n.highlightSoftness,n.fresnel,n.fresnelColor.member(\"rgb\"),n.fresnelSoftness,n.thickness,n.tintColor.member(\"rgb\"),n.tintIntensity,n.tintPreserveLuminosity,n.cutout,_])}var dq=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(t.x,t.y),o=__tsover_div(s.x,s.y),n=w(__tsover_div(o,r),1);return u(__tsover_mul(__tsover_div(r,o),n),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dims\"},{type:\"i\",name:\"vp\"}],body:[0,[[13,\"aspect\",[1,[7,\"dims\",\"x\"],\"/\",[7,\"dims\",\"y\"]]],[13,\"viewportAspect\",[1,[7,\"vp\",\"x\"],\"/\",[7,\"vp\",\"y\"]]],[13,\"coverScale\",[6,\"std.max\",[[1,\"viewportAspect\",\"/\",\"aspect\"],[5,\"1\"]]]],[10,[6,\"d.vec2f\",[[1,[1,\"aspect\",\"/\",\"viewportAspect\"],\"*\",\"coverScale\"],\"coverScale\"]]]]]},externals:{\"std.max\":()=>w,\"d.vec2f\":()=>u}})&&e.f)({})),lq=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(t.x,t.y),o=__tsover_div(s.x,s.y),n=ue(__tsover_div(o,r),1);return u(__tsover_mul(__tsover_div(r,o),n),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dims\"},{type:\"i\",name:\"vp\"}],body:[0,[[13,\"aspect\",[1,[7,\"dims\",\"x\"],\"/\",[7,\"dims\",\"y\"]]],[13,\"viewportAspect\",[1,[7,\"vp\",\"x\"],\"/\",[7,\"vp\",\"y\"]]],[13,\"containScale\",[6,\"std.min\",[[1,\"viewportAspect\",\"/\",\"aspect\"],[5,\"1\"]]]],[10,[6,\"d.vec2f\",[[1,[1,\"aspect\",\"/\",\"viewportAspect\"],\"*\",\"containScale\"],\"containScale\"]]]]]},externals:{\"std.min\":()=>ue,\"d.vec2f\":()=>u}})&&e.f)({})),cq=y.fn([],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(()=>{\"use gpu\";return u(1,1)}),{v:2,name:void 0,ast:{params:[],body:[0,[[10,[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),uq=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(t.x,t.y),o=__tsover_div(s.x,s.y),n=ue(ue(__tsover_div(o,r),1),ue(__tsover_div(s.x,t.x),__tsover_div(s.y,t.y)));return u(__tsover_mul(__tsover_div(r,o),n),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dims\"},{type:\"i\",name:\"vp\"}],body:[0,[[13,\"aspect\",[1,[7,\"dims\",\"x\"],\"/\",[7,\"dims\",\"y\"]]],[13,\"viewportAspect\",[1,[7,\"vp\",\"x\"],\"/\",[7,\"vp\",\"y\"]]],[13,\"containScale\",[6,\"std.min\",[[1,\"viewportAspect\",\"/\",\"aspect\"],[5,\"1\"]]]],[13,\"naturalScale\",[6,\"std.min\",[[1,[7,\"vp\",\"x\"],\"/\",[7,\"dims\",\"x\"]],[1,[7,\"vp\",\"y\"],\"/\",[7,\"dims\",\"y\"]]]]],[13,\"scaleDownScale\",[6,\"std.min\",[\"containScale\",\"naturalScale\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"aspect\",\"/\",\"viewportAspect\"],\"*\",\"scaleDownScale\"],\"scaleDownScale\"]]]]]},externals:{\"std.min\":()=>ue,\"d.vec2f\":()=>u}})&&e.f)({})),_q=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_div(t.x,t.y),o=__tsover_div(s.x,s.y),n=ue(__tsover_div(s.x,t.x),__tsover_div(s.y,t.y));return u(__tsover_mul(__tsover_div(r,o),n),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dims\"},{type:\"i\",name:\"vp\"}],body:[0,[[13,\"aspect\",[1,[7,\"dims\",\"x\"],\"/\",[7,\"dims\",\"y\"]]],[13,\"viewportAspect\",[1,[7,\"vp\",\"x\"],\"/\",[7,\"vp\",\"y\"]]],[13,\"noneScale\",[6,\"std.min\",[[1,[7,\"vp\",\"x\"],\"/\",[7,\"dims\",\"x\"]],[1,[7,\"vp\",\"y\"],\"/\",[7,\"dims\",\"y\"]]]]],[10,[6,\"d.vec2f\",[[1,[1,\"aspect\",\"/\",\"viewportAspect\"],\"*\",\"noneScale\"],\"noneScale\"]]]]]},externals:{\"std.min\":()=>ue,\"d.vec2f\":()=>u}})&&e.f)({})),pq=y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t.sub(u(.5,.5));return u(__tsover_div(r.x,s.x),__tsover_div(r.y,s.y)).add(u(.5,.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"uvScale\"}],body:[0,[[13,\"centeredUV\",[6,[7,\"uv\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"scaledUV\",[6,\"d.vec2f\",[[1,[7,\"centeredUV\",\"x\"],\"/\",[7,\"uvScale\",\"x\"]],[1,[7,\"centeredUV\",\"y\"],\"/\",[7,\"uvScale\",\"y\"]]]]],[10,[6,[7,\"scaledUV\",\"add\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),mq=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(F(t.x,__tsover_sub(1,t.x),s>0),t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"mirror\"}],body:[0,[[13,\"mirroredX\",[6,\"std.select\",[[7,\"uv\",\"x\"],[1,[5,\"1\"],\"-\",[7,\"uv\",\"x\"]],[1,\"mirror\",\">\",[5,\"0\"]]]]],[10,[6,\"d.vec2f\",[\"mirroredX\",[7,\"uv\",\"y\"]]]]]]},externals:{\"std.select\":()=>F,\"d.vec2f\":()=>u}})&&e.f)({})),fq=y.fn([b,u],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=d2(v(t.x,t.y,t.z)),o=s.x<0||s.x>1||s.y<0||s.y>1,n=F(t.w,0,o);return b(r.x,r.y,r.z,n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"color\"},{type:\"i\",name:\"uv\"}],body:[0,[[13,\"linear\",[6,\"srgbToLinear\",[[6,\"d.vec3f\",[[7,\"color\",\"x\"],[7,\"color\",\"y\"],[7,\"color\",\"z\"]]]]]],[13,\"outOfBounds\",[3,[3,[3,[1,[7,\"uv\",\"x\"],\"<\",[5,\"0\"]],\"||\",[1,[7,\"uv\",\"x\"],\">\",[5,\"1\"]]],\"||\",[1,[7,\"uv\",\"y\"],\"<\",[5,\"0\"]]],\"||\",[1,[7,\"uv\",\"y\"],\">\",[5,\"1\"]]]],[13,\"alpha\",[6,\"std.select\",[[7,\"color\",\"w\"],[5,\"0\"],\"outOfBounds\"]]],[10,[6,\"d.vec4f\",[[7,\"linear\",\"x\"],[7,\"linear\",\"y\"],[7,\"linear\",\"z\"],\"alpha\"]]]]]},externals:{srgbToLinear:()=>d2,\"d.vec3f\":()=>v,\"std.select\":()=>F,\"d.vec4f\":()=>b}})&&e.f)({}));var vq=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=W(s),i=__tsover_sub(r,t),d=o,l=__tsover_mul(r,2),c=z(__tsover_div(__tsover_add(__tsover_mul(n,d),__tsover_mul(i,l)),w(__tsover_add(__tsover_mul(d,d),__tsover_mul(l,l)),1e-9)),0,1),_=__tsover_sub(n,__tsover_mul(d,c)),p=__tsover_sub(i,__tsover_mul(l,c)),f=__tsover_sub(n,__tsover_mul(d,z(__tsover_div(n,w(d,1e-9)),0,1))),h=__tsover_sub(i,l),g=ue(__tsover_add(__tsover_mul(_,_),__tsover_mul(p,p)),__tsover_add(__tsover_mul(f,f),__tsover_mul(h,h))),x=ue(__tsover_sub(__tsover_mul(i,d),__tsover_mul(n,l)),__tsover_sub(l,i))>0;return F($e(g),-$e(g),x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"n\"},{type:\"i\",name:\"hl\"},{type:\"i\",name:\"hw\"}],body:[0,[[13,\"px\",[6,\"std.abs\",[\"n\"]]],[13,\"py\",[1,\"hl\",\"-\",\"t\"]],[13,\"qx\",\"hw\"],[13,\"qy\",[1,\"hl\",\"*\",[5,\"2\"]]],[13,\"k\",[6,\"std.clamp\",[[1,[1,[1,\"px\",\"*\",\"qx\"],\"+\",[1,\"py\",\"*\",\"qy\"]],\"/\",[6,\"std.max\",[[1,[1,\"qx\",\"*\",\"qx\"],\"+\",[1,\"qy\",\"*\",\"qy\"]],[5,\"1e-9\"]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"ax\",[1,\"px\",\"-\",[1,\"qx\",\"*\",\"k\"]]],[13,\"ay\",[1,\"py\",\"-\",[1,\"qy\",\"*\",\"k\"]]],[13,\"bx\",[1,\"px\",\"-\",[1,\"qx\",\"*\",[6,\"std.clamp\",[[1,\"px\",\"/\",[6,\"std.max\",[\"qx\",[5,\"1e-9\"]]]],[5,\"0\"],[5,\"1\"]]]]]],[13,\"by\",[1,\"py\",\"-\",\"qy\"]],[13,\"dSq\",[6,\"std.min\",[[1,[1,\"ax\",\"*\",\"ax\"],\"+\",[1,\"ay\",\"*\",\"ay\"]],[1,[1,\"bx\",\"*\",\"bx\"],\"+\",[1,\"by\",\"*\",\"by\"]]]]],[13,\"sA\",[1,[1,\"py\",\"*\",\"qx\"],\"-\",[1,\"px\",\"*\",\"qy\"]]],[13,\"sB\",[1,\"qy\",\"-\",\"py\"]],[13,\"inside\",[1,[6,\"std.min\",[\"sA\",\"sB\"]],\">\",[5,\"0\"]]],[10,[6,\"std.select\",[[6,\"std.sqrt\",[\"dSq\"]],[4,\"-\",[6,\"std.sqrt\",[\"dSq\"]]],\"inside\"]]]]]},externals:{\"std.abs\":()=>W,\"std.clamp\":()=>z,\"std.max\":()=>w,\"std.min\":()=>ue,\"std.select\":()=>F,\"std.sqrt\":()=>$e}})&&e.f)({})).$name(\"agentArrowSdf\"),hq=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_sub(t,z(t,-r,r));return __tsover_sub($e(__tsover_add(__tsover_mul(n,n),__tsover_mul(s,s))),o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"n\"},{type:\"i\",name:\"hl\"},{type:\"i\",name:\"r\"}],body:[0,[[13,\"tc\",[1,\"t\",\"-\",[6,\"std.clamp\",[\"t\",[4,\"-\",\"hl\"],\"hl\"]]]],[10,[1,[6,\"std.sqrt\",[[1,[1,\"tc\",\"*\",\"tc\"],\"+\",[1,\"n\",\"*\",\"n\"]]]],\"-\",\"r\"]]]]},externals:{\"std.clamp\":()=>z,\"std.sqrt\":()=>$e}})&&e.f)({})).$name(\"agentCapsuleSdf\"),yq=y.fn([a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_sub(W(t),r),i=__tsover_sub(W(s),o),d=w(n,0),l=w(i,0);return __tsover_add($e(__tsover_add(__tsover_mul(d,d),__tsover_mul(l,l))),ue(w(n,i),0))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"t\"},{type:\"i\",name:\"n\"},{type:\"i\",name:\"hl\"},{type:\"i\",name:\"hw\"}],body:[0,[[13,\"qx\",[1,[6,\"std.abs\",[\"t\"]],\"-\",\"hl\"]],[13,\"qy\",[1,[6,\"std.abs\",[\"n\"]],\"-\",\"hw\"]],[13,\"ox\",[6,\"std.max\",[\"qx\",[5,\"0\"]]]],[13,\"oy\",[6,\"std.max\",[\"qy\",[5,\"0\"]]]],[10,[1,[6,\"std.sqrt\",[[1,[1,\"ox\",\"*\",\"ox\"],\"+\",[1,\"oy\",\"*\",\"oy\"]]]],\"+\",[6,\"std.min\",[[6,\"std.max\",[\"qx\",\"qy\"]],[5,\"0\"]]]]]]]},externals:{\"std.abs\":()=>W,\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.min\":()=>ue}})&&e.f)({})).$name(\"agentBoxSdf\");var gq=y.fn([u,u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=te(t),i=F(u(0,0),t.div(w(n,1e-5)).mul(r),n>1e-5).sub(s),d=te(i);return F(i,i.div(w(d,1e-5)).mul(o),d>o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"dir\"},{type:\"i\",name:\"vel\"},{type:\"i\",name:\"maxSpeed\"},{type:\"i\",name:\"maxForce\"}],body:[0,[[13,\"len\",[6,\"std.length\",[\"dir\"]]],[13,\"desired\",[6,\"std.select\",[[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]],[6,[7,[6,[7,\"dir\",\"div\"],[[6,\"std.max\",[\"len\",[5,\"0.00001\"]]]]],\"mul\"],[\"maxSpeed\"]],[1,\"len\",\">\",[5,\"0.00001\"]]]]],[13,\"steer\",[6,[7,\"desired\",\"sub\"],[\"vel\"]]],[13,\"sl\",[6,\"std.length\",[\"steer\"]]],[10,[6,\"std.select\",[\"steer\",[6,[7,[6,[7,\"steer\",\"div\"],[[6,\"std.max\",[\"sl\",[5,\"0.00001\"]]]]],\"mul\"],[\"maxForce\"]],[1,\"sl\",\">\",\"maxForce\"]]]]]]},externals:{\"std.length\":()=>te,\"std.select\":()=>F,\"d.vec2f\":()=>u,\"std.max\":()=>w}})&&e.f)({})).$name(\"agentReynoldsSteer\"),xq=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(.82,__tsover_mul(fr(__tsover_add(__tsover_mul(t,.61803),.13)),.4))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fi\"}],body:[0,[[10,[1,[5,\"0.82\"],\"+\",[1,[6,\"noise.hash11\",[[1,[1,\"fi\",\"*\",[5,\"0.61803\"]],\"+\",[5,\"0.13\"]]]],\"*\",[5,\"0.4\"]]]]]]},externals:{\"noise.hash11\":()=>fr}})&&e.f)({})).$name(\"agentCruiseVariation\"),bq=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_add(.55,__tsover_mul(fr(__tsover_add(__tsover_mul(t,1.91),2.53)),.7))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fi\"}],body:[0,[[10,[1,[5,\"0.55\"],\"+\",[1,[6,\"noise.hash11\",[[1,[1,\"fi\",\"*\",[5,\"1.91\"]],\"+\",[5,\"2.53\"]]]],\"*\",[5,\"0.7\"]]]]]]},externals:{\"noise.hash11\":()=>fr}})&&e.f)({})).$name(\"agentPresenceVariation\"),wq=y.fn([b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=z(t.w,0,1),o=__tsover_add(r,__tsover_mul(s.w,__tsover_sub(1,r))),n=t.xyz.mul(r).add(s.xyz.mul(__tsover_mul(s.w,__tsover_sub(1,r)))).div(w(o,1e-4));return b(n.x,n.y,n.z,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"c\"}],body:[0,[[13,\"pa\",[6,\"std.clamp\",[[7,\"p\",\"w\"],[5,\"0\"],[5,\"1\"]]]],[13,\"outA\",[1,\"pa\",\"+\",[1,[7,\"c\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"pa\"]]]],[13,\"rgb\",[6,[7,[6,[7,[6,[7,[7,\"p\",\"xyz\"],\"mul\"],[\"pa\"]],\"add\"],[[6,[7,[7,\"c\",\"xyz\"],\"mul\"],[[1,[7,\"c\",\"w\"],\"*\",[1,[5,\"1\"],\"-\",\"pa\"]]]]]],\"div\"],[[6,\"std.max\",[\"outA\",[5,\"0.0001\"]]]]]],[10,[6,\"d.vec4f\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],\"outA\"]]]]]},externals:{\"std.clamp\":()=>z,\"std.max\":()=>w,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"agentStraightAlphaOver\"),Tq=y.fn([u,u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=le(s,t);return F(t.mul(__tsover_mul(2,o)).sub(s),t,r>.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rhat\"},{type:\"i\",name:\"axis\"},{type:\"i\",name:\"fieldType\"}],body:[0,[[13,\"mdotr\",[6,\"std.dot\",[\"axis\",\"rhat\"]]],[13,\"dipoleB\",[6,[7,[6,[7,\"rhat\",\"mul\"],[[1,[5,\"2\"],\"*\",\"mdotr\"]]],\"sub\"],[\"axis\"]]],[10,[6,\"std.select\",[\"dipoleB\",\"rhat\",[1,\"fieldType\",\">\",[5,\"0.5\"]]]]]]]},externals:{\"std.dot\":()=>le,\"std.select\":()=>F}})&&e.f)({})).$name(\"agentDipoleOrRadialField\"),Sq=y.fn([a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";return __tsover_mul(t,O(__tsover_mul(2,__tsover_sub(s,r))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"k\"},{type:\"i\",name:\"target\"},{type:\"i\",name:\"theta\"}],body:[0,[[10,[1,\"k\",\"*\",[6,\"std.sin\",[[1,[5,\"2\"],\"*\",[1,\"target\",\"-\",\"theta\"]]]]]]]]},externals:{\"std.sin\":()=>O}})&&e.f)({})).$name(\"agentNematicTorque\"),Aq=y.fn([b,a,b,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(r.w,o),i=s>=n,d=w(s,n),l=F(v(r.x,r.y,r.z),v(t.x,t.y,t.z),i);return b(l.x,l.y,l.z,d)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"col\"},{type:\"i\",name:\"curA\"},{type:\"i\",name:\"prev\"},{type:\"i\",name:\"trails\"}],body:[0,[[13,\"prevA\",[1,[7,\"prev\",\"w\"],\"*\",\"trails\"]],[13,\"win\",[1,\"curA\",\">=\",\"prevA\"]],[13,\"outA\",[6,\"std.max\",[\"curA\",\"prevA\"]]],[13,\"outRGB\",[6,\"std.select\",[[6,\"d.vec3f\",[[7,\"prev\",\"x\"],[7,\"prev\",\"y\"],[7,\"prev\",\"z\"]]],[6,\"d.vec3f\",[[7,\"col\",\"x\"],[7,\"col\",\"y\"],[7,\"col\",\"z\"]]],\"win\"]]],[10,[6,\"d.vec4f\",[[7,\"outRGB\",\"x\"],[7,\"outRGB\",\"y\"],[7,\"outRGB\",\"z\"],\"outA\"]]]]]},externals:{\"std.max\":()=>w,\"std.select\":()=>F,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"agentTrailMaxDecay\"),Eq=y.fn([v,b,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return v(__tsover_add(__tsover_add(__tsover_mul(s.x,t.x),__tsover_mul(s.y,t.y)),__tsover_mul(s.z,t.z)),__tsover_add(__tsover_add(__tsover_mul(r.x,t.x),__tsover_mul(r.y,t.y)),__tsover_mul(r.z,t.z)),__tsover_add(__tsover_add(__tsover_mul(o.x,t.x),__tsover_mul(o.y,t.y)),__tsover_mul(o.z,t.z)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pw\"},{type:\"i\",name:\"rowX\"},{type:\"i\",name:\"rowY\"},{type:\"i\",name:\"rowZ\"}],body:[0,[[10,[6,\"d.vec3f\",[[1,[1,[1,[7,\"rowX\",\"x\"],\"*\",[7,\"pw\",\"x\"]],\"+\",[1,[7,\"rowX\",\"y\"],\"*\",[7,\"pw\",\"y\"]]],\"+\",[1,[7,\"rowX\",\"z\"],\"*\",[7,\"pw\",\"z\"]]],[1,[1,[1,[7,\"rowY\",\"x\"],\"*\",[7,\"pw\",\"x\"]],\"+\",[1,[7,\"rowY\",\"y\"],\"*\",[7,\"pw\",\"y\"]]],\"+\",[1,[7,\"rowY\",\"z\"],\"*\",[7,\"pw\",\"z\"]]],[1,[1,[1,[7,\"rowZ\",\"x\"],\"*\",[7,\"pw\",\"x\"]],\"+\",[1,[7,\"rowZ\",\"y\"],\"*\",[7,\"pw\",\"y\"]]],\"+\",[1,[7,\"rowZ\",\"z\"],\"*\",[7,\"pw\",\"z\"]]]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})).$name(\"agentApplyCameraRows\"),Pq=y.fn([v,b,b,b],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";return v(__tsover_add(__tsover_add(__tsover_mul(s.x,t.x),__tsover_mul(r.x,t.y)),__tsover_mul(o.x,t.z)),__tsover_add(__tsover_add(__tsover_mul(s.y,t.x),__tsover_mul(r.y,t.y)),__tsover_mul(o.y,t.z)),__tsover_add(__tsover_add(__tsover_mul(s.z,t.x),__tsover_mul(r.z,t.y)),__tsover_mul(o.z,t.z)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"},{type:\"i\",name:\"rowX\"},{type:\"i\",name:\"rowY\"},{type:\"i\",name:\"rowZ\"}],body:[0,[[10,[6,\"d.vec3f\",[[1,[1,[1,[7,\"rowX\",\"x\"],\"*\",[7,\"v\",\"x\"]],\"+\",[1,[7,\"rowY\",\"x\"],\"*\",[7,\"v\",\"y\"]]],\"+\",[1,[7,\"rowZ\",\"x\"],\"*\",[7,\"v\",\"z\"]]],[1,[1,[1,[7,\"rowX\",\"y\"],\"*\",[7,\"v\",\"x\"]],\"+\",[1,[7,\"rowY\",\"y\"],\"*\",[7,\"v\",\"y\"]]],\"+\",[1,[7,\"rowZ\",\"y\"],\"*\",[7,\"v\",\"z\"]]],[1,[1,[1,[7,\"rowX\",\"z\"],\"*\",[7,\"v\",\"x\"]],\"+\",[1,[7,\"rowY\",\"z\"],\"*\",[7,\"v\",\"y\"]]],\"+\",[1,[7,\"rowZ\",\"z\"],\"*\",[7,\"v\",\"z\"]]]]]]]]},externals:{\"d.vec3f\":()=>v}})&&e.f)({})).$name(\"agentApplyCameraRowsT\"),Ef=Ct({x0:Y,x1:Y,y0:Y,y1:Y,fx:a,fy:a}).$name(\"AgentBilinearFrame\"),Mq=y.fn([u,u],Ef)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_sub(__tsover_mul(t.x,s.x),.5),o=__tsover_sub(__tsover_mul(t.y,s.y),.5),n=K(r),i=K(o);return Ef({x0:Y(z(n,a(0),__tsover_sub(s.x,1))),x1:Y(z(__tsover_add(n,1),a(0),__tsover_sub(s.x,1))),y0:Y(z(i,a(0),__tsover_sub(s.y,1))),y1:Y(z(__tsover_add(i,1),a(0),__tsover_sub(s.y,1))),fx:__tsover_sub(r,n),fy:__tsover_sub(o,i)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv01\"},{type:\"i\",name:\"dims\"}],body:[0,[[13,\"cu\",[1,[1,[7,\"uv01\",\"x\"],\"*\",[7,\"dims\",\"x\"]],\"-\",[5,\"0.5\"]]],[13,\"cv\",[1,[1,[7,\"uv01\",\"y\"],\"*\",[7,\"dims\",\"y\"]],\"-\",[5,\"0.5\"]]],[13,\"cx0\",[6,\"std.floor\",[\"cu\"]]],[13,\"cy0\",[6,\"std.floor\",[\"cv\"]]],[10,[6,\"BilinearFrame\",[[104,{x0:[6,\"d.u32\",[[6,\"std.clamp\",[\"cx0\",[6,\"d.f32\",[[5,\"0\"]]],[1,[7,\"dims\",\"x\"],\"-\",[5,\"1\"]]]]]],x1:[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"cx0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],[1,[7,\"dims\",\"x\"],\"-\",[5,\"1\"]]]]]],y0:[6,\"d.u32\",[[6,\"std.clamp\",[\"cy0\",[6,\"d.f32\",[[5,\"0\"]]],[1,[7,\"dims\",\"y\"],\"-\",[5,\"1\"]]]]]],y1:[6,\"d.u32\",[[6,\"std.clamp\",[[1,\"cy0\",\"+\",[5,\"1\"]],[6,\"d.f32\",[[5,\"0\"]]],[1,[7,\"dims\",\"y\"],\"-\",[5,\"1\"]]]]]],fx:[1,\"cu\",\"-\",\"cx0\"],fy:[1,\"cv\",\"-\",\"cy0\"]}]]]]]]},externals:{\"std.floor\":()=>K,BilinearFrame:()=>Ef,\"d.u32\":()=>Y,\"std.clamp\":()=>z,\"d.f32\":()=>a}})&&e.f)({})).$name(\"agentBilinearTexelFrame\"),y5=y.fn([u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=le(t,t);return Mt(__tsover_mul(__tsover_div(r,w(s,1e-5)),-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"delta\"},{type:\"i\",name:\"radSq\"}],body:[0,[[13,\"dl\",[6,\"std.dot\",[\"delta\",\"delta\"]]],[10,[6,\"std.exp\",[[1,[1,\"dl\",\"/\",[6,\"std.max\",[\"radSq\",[5,\"0.00001\"]]]],\"*\",[4,\"-\",[5,\"1\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"std.exp\":()=>Mt,\"std.max\":()=>w}})&&e.f)({})).$name(\"agentCursorFalloff\"),kq=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=w(te(t),1e-4);return t.div(o).mul(__tsover_mul(y5(t,s),r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"delta\"},{type:\"i\",name:\"radSq\"},{type:\"i\",name:\"force\"}],body:[0,[[13,\"dl\",[6,\"std.max\",[[6,\"std.length\",[\"delta\"]],[5,\"0.0001\"]]]],[10,[6,[7,[6,[7,\"delta\",\"div\"],[\"dl\"]],\"mul\"],[[1,[6,\"cursorFalloff\",[\"delta\",\"radSq\"]],\"*\",\"force\"]]]]]]},externals:{\"std.max\":()=>w,\"std.length\":()=>te,cursorFalloff:()=>y5}})&&e.f)({})).$name(\"agentCursorMagnet\");var ha=e=>e;function Ls(){return{default:null,transform:ha,compileTimeWhen:(e,t)=>{let s=r=>{let o=Array.isArray(r)?r.length:0;return o>1?o:0};return s(e)!==s(t)},description:\"Multi-stop gradient colors (overrides Color A / Color B when set)\",ui:{type:\"gradient-stops\",label:\"Colors\",group:\"Colors\"}}}var Wi=e=>e;function d8(e){let t=e?.ui;return!t||t.type!==\"list\"||!t.item||typeof t.maxItems!=\"number\"?null:{item:t.item,maxItems:t.maxItems,minItems:t.minItems,itemLabel:t.itemLabel}}var Iy=(e,t)=>`${e}_${t}`,Yy=e=>`${e}Count`;function Lm(e){return!!e&&typeof e==\"object\"&&e.type===\"mouse-position\"}var fS=(e,t,s)=>`${e}.${t}.${s}`;function Wy(e){let t=/^([^.]+)\\.(\\d+)\\.([^.]+)$/.exec(e);return t?{prop:t[1],index:Number(t[2]),field:t[3]}:null}function Oy(e,t,s){return(Array.isArray(e)?e.slice(0,t.maxItems):[]).map((r,o)=>{let n=r&&typeof r==\"object\"?r:{},i={};for(let[d,l]of Object.entries(t.item)){let c=n[d]===void 0||n[d]===null?l.default:n[d];i[d]=l8(l.kind,c,o,d,s)}return i})}function l8(e,t,s,r,o){switch(e){case\"position\":{if(Lm(t)){let i=o.drivenPosition?.(s,r,t);return i||{x:typeof t.x==\"number\"?t.x:t.originX??.5,y:1-(typeof t.y==\"number\"?t.y:t.originY??.5)}}let n=ct(t);return{x:n.x,y:n.y}}case\"color\":return o.color(typeof t==\"string\"?t:\"#ffffff\");case\"boolean\":return t?1:-1;default:return typeof t==\"number\"?t:0}}function c8(e){return typeof e==\"number\"?[e,0,0,0]:Array.isArray(e)?e:[e.x,e.y,0,0]}function Vy(e,t){let s={};for(let r of Object.keys(t.item)){let o=new Array(t.maxItems*4).fill(0);for(let n=0;n<Math.min(e.length,t.maxItems);n++){let i=c8(e[n][r]);o[n*4]=i[0],o[n*4+1]=i[1],o[n*4+2]=i[2],o[n*4+3]=i[3]}s[r]=o}return{count:e.length,fields:s}}function Ny(e,t){return Array.isArray(e)?e.some(s=>s&&typeof s==\"object\"&&Object.entries(t.item).some(([r,o])=>o.kind===\"position\"&&Lm(s[r]))):!1}var vS=\"p3-linear\";function hS(e){vS=e;try{Gx(e)}catch{}}function u8(e){try{let t=new io(e),s=vS===\"srgb\"?\"srgb-linear\":\"p3-linear\",r=t.to(s).coords,o=Number(t.alpha);return{r:Number.isFinite(r?.[0])?r[0]:0,g:Number.isFinite(r?.[1])?r[1]:0,b:Number.isFinite(r?.[2])?r[2]:0,a:Number.isFinite(o)?o:1}}catch{return{r:0,g:0,b:0,a:0}}}function yS(e){let{r:t,g:s,b:r,a:o}=u8(e);return b(t,s,r,o)}function Hc(e){let t=yS(e);return[t.x,t.y,t.z,t.w]}function g5(e,t){if(typeof e==\"number\")return e;if(typeof e==\"object\"&&e!==null)return e.value;let s=e.toLowerCase().trim();if(t){if(s===\"top\")return 0;if(s===\"bottom\")return 1;if(s===\"center\")return .5}else{if(s===\"left\")return 0;if(s===\"right\")return 1;if(s===\"center\")return .5}return console.warn(`Invalid position value: ${e}. Defaulting to center.`),.5}function _8(e){let t=.5,s=.5;if(typeof e==\"string\"){let r=e.toLowerCase().trim().split(/\\s+/);r.includes(\"left\")?t=0:r.includes(\"right\")?t=1:(r.includes(\"center\")||r.length===1&&(r[0]===\"top\"||r[0]===\"bottom\"))&&(t=.5),r.includes(\"top\")?s=0:r.includes(\"bottom\")?s=1:(r.includes(\"center\")||r.length===1&&(r[0]===\"left\"||r[0]===\"right\"))&&(s=.5),r.length===1&&r[0]===\"center\"&&(t=.5,s=.5)}else typeof e==\"object\"&&e!==null?(t=g5(e.x,!1),s=g5(e.y,!0)):console.warn(`Invalid position value provided: ${e}. Defaulting to center.`);return u(t,1-s)}function gS(e){if(e)return e===ke?yS:e===ct?_8:e===ha?ha:e===Wi?Wi:e}function qy(e,t){e>0,t>0}function jc(e){return e!=null&&typeof e==\"object\"&&typeof e.value==\"number\"&&(e.unit===\"px\"||e.unit===\"uv\")}function Xy(e){if(!e)return;let t;for(let[s,r]of Object.entries(e)){let o=r?.ui?.dimensional;(o===\"canvas-height\"||o===\"half-canvas-height\"||o===\"canvas-width\"||o===\"count-canvas-height\")&&(t??=new Map).set(s,o)}return t}function ll(e,t){let s=e?.propBindings,r=new Set,o=new Map;if(s)for(let n of[\"x\",\"y\",\"width\",\"height\"]){let i=s[n];i&&(i.as===\"position-x\"||i.as===\"position-y\"?r.add(i.prop):(i.as===\"canvas-height\"||i.as===\"half-canvas-height\")&&o.set(i.prop,i.as))}if(t)for(let[n,i]of t)o.set(n,i);return r.size>0||o.size>0?{positionProps:r,sizeProps:o}:null}var p8=e=>({ox:e.includes(\"left\")?\"start\":e.includes(\"right\")?\"end\":\"center\",oy:e.includes(\"top\")?\"start\":e.includes(\"bottom\")?\"end\":\"center\"}),m8=(e,t,s)=>t===\"start\"?e+s:t===\"end\"?e-s:e;function Mc(e,t,s,r){let o=(n,i)=>jc(n)?n.unit===\"px\"?n.value:n.value*i:typeof n==\"number\"?n*i:0;return e.as===\"canvas-height\"?o(t,r):e.as===\"half-canvas-height\"?o(t,2*r):e.as===\"canvas-width\"?o(t,s):0}function Hy(e,t,s,r){if(e?.computeBounds){let d=e.computeBounds(t,s,r);return{hwx:s>0?d.widthPx/s/2:0,hhy:r>0?d.heightPx/r/2:0}}let o=e?.propBindings,n=0,i=0;return o?.width&&s>0&&(n=Mc(o.width,t[o.width.prop],s,r)/(2*s)),o?.height&&r>0&&(i=Mc(o.height,t[o.height.prop],s,r)/(2*r)),{hwx:n,hhy:i}}function x5(e,t,s,r){let o;if(jc(e))if(e.unit===\"px\"){let n=t>0?e.value/t:0;o=s===\"end\"?1-n:s===\"center\"?.5+n:n}else o=e.value;else if(typeof e==\"number\")o=e;else return e;return m8(o,s,r)}function f8(e,t,s,r){return e.unit!==\"px\"?e.value:t===\"canvas-width\"?s>0?e.value/s:e.value:r<=0?e.value:t===\"count-canvas-height\"?e.value>0?r/e.value:e.value:t===\"canvas-height\"?e.value/r:e.value/(2*r)}function Kc(e,t,s,r,o,n,i,d){let l=ll(e,i);if(!l)return s;let{ox:c,oy:_}=p8(r);if(l.positionProps.has(t))return!s||typeof s!=\"object\"?s:{...s,x:x5(s.x,o,c,d?.hwx??0),y:x5(s.y,n,_,d?.hhy??0)};let p=l.sizeProps.get(t);return p&&jc(s)?f8(s,p,o,n):s}function jy(e,t,s){let r=ll(e,s);return r?r.positionProps.has(t)||r.sizeProps.has(t):!1}function Pf(e){let{body:t,build:s,args:r,compose:o,identity:n,missingChildMessage:i,setup:d,...l}=e;if(!t&&!s)throw new Error(`definePointwiseFilter(${e.name}): needs a body or a build`);return{...l,requiresChild:!0,fragment:_=>{if(!_.childNode)return i&&console.error(i),_s;let p=_;if(Ky(n,p))return p.childNode;d?.(p);let f;if(s)f=s(p);else{let{fn:h,hint:g}=typeof t==\"function\"?t(p.propValues):t;f=se(h,g,[p.childNode,...r?.(p)??[]])}return o?o(f,p):f}}}function Ky(e,t){if(!e)return!1;for(let s of e.props)if(t.getMapInfo?.(s))return!1;return e.when(t.propValues)}function b5(e){let{build:t,resultAlpha:s,identity:r,missingChildMessage:o,setup:n,...i}=e;return{...i,requiresRTT:!0,requiresChild:!0,fragment:l=>{if(!l.childNode)return o&&console.error(o),_s;let c=l.convertToTexture(l.childNode),_=h=>se(Hn,\"unpremultiplyAlpha\",[c.sample(h)]),p={...l,childNode:l.childNode,texture:c,sampleStraight:_};if(Ky(r,l))return _(l.ctx.uv);n?.(p);let f=t(p);return s===\"straight\"?f:se(Hn,\"unpremultiplyAlpha\",[f])}}}function w5(e){return\"uv\"in e?e:{uv:e}}function v8(e,t={}){let s=typeof e==\"function\"?e:()=>e,r=t.edges??\"prop\",o=n=>r===\"none\"?null:typeof r==\"number\"?r:n.edges??0;return{fragment:n=>{let{childNode:i,ctx:d,convertToTexture:l,propValues:c}=n;if(!i)return t.requireChildMessage&&console.error(t.requireChildMessage),_s;let _=l(i),p=o(c),f=w5(s(n).map(d.uv,d.aspect)),h=p===null?_.sample(f.uv):t.resample===\"bilinear\"?Ed(f.uv,g=>_.sample(g),p):JL(_,f.uv,p);return se(Hn,\"unpremultiplyAlpha\",[f.coverage?Ss(h.member(\"rgb\"),h.member(\"a\").mul(f.coverage)):h])},uvRemap:n=>{if(t.uvRemapIdentityWhen?.(n))return{uv:n.uv,mask:n.mask};let i=o(n.propValues),d=w5(s(n).map(n.uv,n.aspect)),l=i===null?{uv:d.uv,mask:n.mask}:QL(d.uv,n.mask,i);return d.coverage?{uv:l.uv,mask:l.mask.mul(d.coverage)}:l}}}function h8(e,t){let s={type:\"position\",label:t?.label??\"Center\",group:t?.group??\"Position\"};return t?.units&&(s.units=[...t.units]),{default:t?.default??{x:.5,y:.5},transform:ct,description:e,ui:s}}function y8(){return{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}}}function g8(e){return{softness:{default:0,description:e?.softnessDescription??\"Edge softness for antialiasing\",ui:{type:\"range\",min:0,max:.1,step:.001,label:\"Softness\",group:\"Effect\"}},strokeThickness:{default:0,description:\"Stroke thickness. Zero means no stroke.\",ui:{type:\"range\",min:0,max:e?.strokeThicknessMax??.2,step:.005,label:\"Stroke Thickness\",group:\"Stroke\"}},strokeColor:{default:\"#000000\",transform:ke,description:e?.strokeColorDescription??\"Color of the stroke outline\",ui:{type:\"color\",label:\"Stroke Color\",group:\"Colors\"}},strokePosition:{default:\"center\",transform:Lx,description:e?.strokePositionDescription??\"Position of the stroke relative to the shape edge\",ui:{type:\"select\",options:[{label:\"Outside\",value:\"outside\"},{label:\"Center\",value:\"center\"},{label:\"Inside\",value:\"inside\"}],label:\"Stroke Position\",group:\"Stroke\"}}}}function x8(e){return{default:\"linear\",transform:ft,compileTime:!0,description:e?.description??\"Color space for blending fill and stroke colors\",ui:{type:\"select\",options:At,label:\"Color Blending\",group:\"Colors\"}}}var b8={refraction:{default:.5,description:\"How strongly the shell bends what's seen through or inside it\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Refraction\",group:\"Glass\"}},dispersion:{default:.25,description:\"Spectral splitting at the shell \\u2014 rainbow fringes where light bends hardest\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Dispersion\",group:\"Glass\"}},thickness:{default:.2,description:\"Shell depth \\u2014 how far inward from the edge the shell's optics extend\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Thickness\",group:\"Glass\"}},environment:{default:1,description:\"Strength of the studio lighting reflected in the shell\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Environment\",group:\"Glass\"}},envRotation:{default:0,description:\"Rotates the reflected studio \\u2014 spins where the bright reflections fall\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Env Rotation\",group:\"Glass\"}},lightAngle:{default:315,description:\"Direction of the key light, in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Glass\"}},highlight:{default:1,description:\"Sharp key-light glint on the shell\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Highlight\",group:\"Highlight\"}},highlightColor:{default:\"#ffffff\",transform:ke,description:\"Color of the key-light highlight\",ui:{type:\"color\",label:\"Highlight Color\",group:\"Highlight\"}},highlightSoftness:{default:.5,description:\"Specular highlight softness \\u2014 lower is a tighter, sharper glint\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Highlight Softness\",group:\"Highlight\"}},fresnel:{default:.1,description:\"Fresnel rim glow \\u2014 the luminous edge where the shell turns away from view\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Fresnel\",group:\"Fresnel\"}},fresnelSoftness:{default:.1,description:\"Fresnel rim width \\u2014 higher values spread the glow further inward\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Fresnel Softness\",group:\"Fresnel\"}},fresnelColor:{default:\"#ffffff\",transform:ke,description:\"Color of the fresnel rim glow\",ui:{type:\"color\",label:\"Fresnel Color\",group:\"Fresnel\"}},edgeSoftness:{default:.05,description:\"Softness of the shape boundary edge\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Glass\"}}};function Ho(e){let t={};for(let s of Object.keys(e)){let r=e[s];if(!r)continue;let o=b8[s];t[s]=r===!0?o:{...o,...r,ui:{...o.ui,...r.ui??{}}}}return t}function w8(e){return{default:0,description:e,ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Shape\"}}}function T8(e){return{default:\"#ffffff\",transform:ke,description:e,ui:{type:\"color\",label:\"Color\",group:\"Colors\"}}}function S8(e,t){if(e.custom)return e.custom;let s=e.size.as??\"half-canvas-height\",r={x:{prop:\"center\",as:\"position-x\"},y:{prop:\"center\",as:\"position-y\"},width:{prop:e.size.width,as:s},height:{prop:e.size.height,as:s}};return t&&(r.rotation={prop:\"rotation\",as:\"degrees\"}),{propBindings:r}}function A8(e,t,s){if(!t)return e;let r=Object.keys(e).filter(i=>!t.includes(i)),o=t.filter(i=>!(i in e));if(r.length||o.length)throw new Error(`defineSdfShapeShader(${s}): propOrder must list every prop exactly once (missing: ${r.join(\", \")||\"none\"}; unknown: ${o.join(\", \")||\"none\"})`);let n={};for(let i of t)n[i]=e[i];return n}function E8(e){let t=e.rotatable!==!1,s=g8(e.stroke),r={origin:y8(),color:T8(e.colorDescription),center:h8(e.centerDescription,{units:[\"%\",\"px\"],...e.centerLabel?{label:e.centerLabel}:{}}),...e.shapeProps,...t?{rotation:w8(e.rotationDescription??\"Rotation in degrees\")}:{},softness:s.softness,strokeThickness:s.strokeThickness,strokeColor:s.strokeColor,strokePosition:s.strokePosition,colorSpace:x8(e.colorSpaceDescription?{description:e.colorSpaceDescription}:void 0),...e.propOverrides};return{name:e.name,category:e.category??\"Shapes\",description:e.description,acceptsUVContext:!0,boundingBoxDeclaration:S8(e.bounds,t),props:A8(r,e.propOrder,e.name),fragment:o=>{let{uniforms:n,ctx:i,propValues:d}=o,l=o.uvContext??i.uv,c=d.colorSpace??0;return CT(Vs(P8(e,n,l,i.aspect),\"shapeMask\"),n.color,n.strokeColor,c)}}}function P8(e,t,s,r){let o=t.rotation??il(\"0f\"),n=Vs(se(kT,\"shapeLocalCoords\",[t.center,o,s,r]),\"shapeLocal\"),i=d=>{let l=t[d];if(!l)throw new Error(`defineSdfShapeShader(${e.name}): distance reads unknown prop '${d}'`);return l};return se($T,\"strokeMaskFromSdf\",[e.distance({x:n.member(\"x\"),y:n.member(\"y\")},i),t.softness,t.strokeThickness,t.strokePosition])}function re(e){return{kind:\"prop\",name:e}}var ai=class oh{constructor(t){this.node=t}times(t){return new oh({kind:\"mul\",a:this.node,b:t instanceof oh?t.node:t})}};function Mn(e){return{uv:e.uvContext??e.ctx.uv,viewport:e.effectiveViewportSize??e.ctx.viewportSize}}function Se(e,t){let s=t.uniforms[e.name];if(!s)throw new Error(`std: effect binds unknown prop '${e.name}'`);return s}function En(e,t){let s=e instanceof ai?e.node:e;switch(s.kind){case\"prop\":return Se(s,t);case\"mul\":return En(s.a,t).mul(En(s.b,t));case\"radialMask\":if(!t.ctx)throw new Error(\"std: radialMask needs a fragment host (warp slots have no ctx)\");return se(YD,\"radialFalloffMask\",[t.ctx.uv,t.ctx.aspect,Se(s.center,t),Se(s.radius,t),Se(s.falloff,t)]);case\"signal\":return s.build(t)}}function M8(e,t){if(typeof e==\"number\")return nt(e);if(e instanceof ai)return En(e,t);switch(e.kind){case\"prop\":return Se(e,t);case\"ctx\":if(!t.ctx)throw new Error(`std: ctx.${e.name} needs a fragment host (warp slots have no ctx)`);return t.ctx[e.name];default:return En(e,t)}}function Zy(e,t,s){let r={},o=e.boundingBoxDeclaration,n=Xy(e.props),i=k8(e.props,t);for(let[d,l]of Object.entries(e.props)){let c=l.transform;if(c===ha){$8(r,d,l,t[d],i);continue}if(c===Wi){C8(r,d,l,t[d]);continue}let _=t[d],p=_;p==null&&(p=l.default),p==null&&(console.error(`[Shaders] Uniform \"${d}\" is null/undefined after fallback. PropConfig:`,{propName:d,initialValue:_,default:l.default,hasTransform:!!c}),p=0);let f=gS(c),h=jy(o,d,n),g=!f&&!h&&(typeof p==\"string\"||typeof p==\"object\"&&p!==null&&!Array.isArray(p));r[d]={value:p,transform:f,compileTime:l.compileTime||!1,...l.compileTimeWhen?{compileTimeWhen:l.compileTimeWhen,_lastCompiledValue:_??l.default}:{},...h?{_rawDimensional:_}:{},...g?{cpu:!0}:{}}}return r}function k8(e,t){for(let[s,r]of Object.entries(e))if(r.transform===ft){let o=t[s]??r.default;return typeof o==\"string\"?ft(o):0}return 0}function $8(e,t,s,r,o){let n=r??null,i=Ay(n,Hc),d=Ey(i.colors,i.stopCount,o);e[t]={value:n,transform:ha,cpu:!0,compileTime:s.compileTime||!1,...s.compileTimeWhen?{compileTimeWhen:s.compileTimeWhen,_lastCompiledValue:n??s.default}:{}},e.colorsArray={value:i.colors,schema:zt(b,8)},e.positionsArray={value:i.positions,schema:zt(b,8/4)},e.convertedColorsArray={value:d,schema:zt(v,8)},e.stopCount={value:i.stopCount,schema:a}}function C8(e,t,s,r){let o=d8(s);if(!o){console.error(`[Shaders] List prop \"${t}\" has no item spec in its ui config`);return}let n=Oy(r??s.default,o,{color:Hc}),i=Vy(n,o);e[t]={value:n,transform:Wi,cpu:!0,compileTime:s.compileTime||!1,_rawList:r??s.default,_listSpec:o};for(let[d,l]of Object.entries(i.fields))e[Iy(t,d)]={value:l,schema:zt(b,o.maxItems)};e[Yy(t)]={value:i.count,schema:a}}var Md=Ct({x0:oe,x1:oe,y0:oe,y1:oe}).$name(\"SplatWindow\"),$q=y.fn([u,a,a,a],Md)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=w(r,1e-5),i=oe(K(__tsover_mul(__tsover_div(t.x,n),o))),d=oe(K(__tsover_mul(t.y,o))),l=oe(ac(__tsover_div(__tsover_mul(s,o),n))),c=oe(ac(__tsover_mul(s,o))),_=__tsover_sub(oe(o),1);return Md({x0:w(__tsover_sub(i,l),0),x1:ue(__tsover_add(i,l),_),y0:w(__tsover_sub(d,c),0),y1:ue(__tsover_add(d,c),_)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"pos\"},{type:\"i\",name:\"reach\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"res\"}],body:[0,[[13,\"asp\",[6,\"std.max\",[\"aspect\",[5,\"0.00001\"]]]],[13,\"cxi\",[6,\"d.i32\",[[6,\"std.floor\",[[1,[1,[7,\"pos\",\"x\"],\"/\",\"asp\"],\"*\",\"res\"]]]]]],[13,\"cyi\",[6,\"d.i32\",[[6,\"std.floor\",[[1,[7,\"pos\",\"y\"],\"*\",\"res\"]]]]]],[13,\"radX\",[6,\"d.i32\",[[6,\"std.ceil\",[[1,[1,\"reach\",\"*\",\"res\"],\"/\",\"asp\"]]]]]],[13,\"radY\",[6,\"d.i32\",[[6,\"std.ceil\",[[1,\"reach\",\"*\",\"res\"]]]]]],[13,\"last\",[1,[6,\"d.i32\",[\"res\"]],\"-\",[5,\"1\"]]],[10,[6,\"SplatWindow\",[[104,{x0:[6,\"std.max\",[[1,\"cxi\",\"-\",\"radX\"],[5,\"0\"]]],x1:[6,\"std.min\",[[1,\"cxi\",\"+\",\"radX\"],\"last\"]],y0:[6,\"std.max\",[[1,\"cyi\",\"-\",\"radY\"],[5,\"0\"]]],y1:[6,\"std.min\",[[1,\"cyi\",\"+\",\"radY\"],\"last\"]]}]]]]]]},externals:{\"std.max\":()=>w,\"d.i32\":()=>oe,\"std.floor\":()=>K,\"std.ceil\":()=>ac,SplatWindow:()=>Md,\"std.min\":()=>ue}})&&e.f)({})).$name(\"worldSplatWindow\"),Cq=y.fn([u,oe,tp],Md)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=oe(K(t.x)),n=oe(K(t.y));return Md({x0:w(__tsover_sub(o,s),0),x1:ue(__tsover_add(o,s),r.x),y0:w(__tsover_sub(n,s),0),y1:ue(__tsover_add(n,s),r.y)})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"center\"},{type:\"i\",name:\"rad\"},{type:\"i\",name:\"last\"}],body:[0,[[13,\"cxi\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"center\",\"x\"]]]]]],[13,\"cyi\",[6,\"d.i32\",[[6,\"std.floor\",[[7,\"center\",\"y\"]]]]]],[10,[6,\"SplatWindow\",[[104,{x0:[6,\"std.max\",[[1,\"cxi\",\"-\",\"rad\"],[5,\"0\"]]],x1:[6,\"std.min\",[[1,\"cxi\",\"+\",\"rad\"],[7,\"last\",\"x\"]]],y0:[6,\"std.max\",[[1,\"cyi\",\"-\",\"rad\"],[5,\"0\"]]],y1:[6,\"std.min\",[[1,\"cyi\",\"+\",\"rad\"],[7,\"last\",\"y\"]]]}]]]]]]},externals:{\"d.i32\":()=>oe,\"std.floor\":()=>K,SplatWindow:()=>Md,\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})).$name(\"texelSplatWindow\"),Rq=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_sub(1,Mt(__tsover_mul(__tsover_mul(t,s),-1)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"energy\"},{type:\"i\",name:\"k\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.exp\",[[1,[1,\"energy\",\"*\",\"k\"],\"*\",[4,\"-\",[5,\"1\"]]]]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})).$name(\"energyCoverageAlpha\"),Uq=y.fn([v,v,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=t.add(s.mul(r)).mul(o),d=te(i);return i.mul(__tsover_div(ue(d,n),w(d,1e-5)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"vel\"},{type:\"i\",name:\"force\"},{type:\"i\",name:\"dt\"},{type:\"i\",name:\"dragMul\"},{type:\"i\",name:\"maxSpeed\"}],body:[0,[[13,\"v\",[6,[7,[6,[7,\"vel\",\"add\"],[[6,[7,\"force\",\"mul\"],[\"dt\"]]]],\"mul\"],[\"dragMul\"]]],[13,\"spd\",[6,\"std.length\",[\"v\"]]],[10,[6,[7,\"v\",\"mul\"],[[1,[6,\"std.min\",[\"spd\",\"maxSpeed\"]],\"/\",[6,\"std.max\",[\"spd\",[5,\"0.00001\"]]]]]]]]]},externals:{\"std.length\":()=>te,\"std.min\":()=>ue,\"std.max\":()=>w}})&&e.f)({})).$name(\"integrateSemiImplicitEuler\");var nh=Math.exp(-1),T5=1/(1-nh),S5=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return Mt(__tsover_mul(__tsover_div(t,s),-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"distSq\"},{type:\"i\",name:\"radiusSq\"}],body:[0,[[10,[6,\"std.exp\",[[1,[1,\"distSq\",\"/\",\"radiusSq\"],\"*\",[4,\"-\",[5,\"1\"]]]]]]]]},externals:{\"std.exp\":()=>Mt}})&&e.f)({})),A5=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return z(__tsover_mul(__tsover_sub(Mt(__tsover_mul(__tsover_div(t,s),-1)),nh),T5),a(0),a(1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"distSq\"},{type:\"i\",name:\"radiusSq\"}],body:[0,[[10,[6,\"std.clamp\",[[1,[1,[6,\"std.exp\",[[1,[1,\"distSq\",\"/\",\"radiusSq\"],\"*\",[4,\"-\",[5,\"1\"]]]]],\"-\",\"EDGE\"],\"*\",\"INV_EDGE\"],[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]]]]]]]},externals:{\"std.clamp\":()=>z,\"std.exp\":()=>Mt,EDGE:()=>nh,INV_EDGE:()=>T5,\"d.f32\":()=>a}})&&e.f)({}));y.fn([u,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=It(t,s);return S5(le(o,o),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cellPos\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"radiusSq\"}],body:[0,[[13,\"off\",[6,\"std.sub\",[\"cellPos\",\"center\"]]],[10,[6,\"gaussianBrushSq\",[[6,\"std.dot\",[\"off\",\"off\"]],\"radiusSq\"]]]]]},externals:{\"std.sub\":()=>It,gaussianBrushSq:()=>S5,\"std.dot\":()=>le}})&&e.f)({}));y.fn([u,u,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=It(t,s);return A5(le(o,o),r)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cellPos\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"radiusSq\"}],body:[0,[[13,\"off\",[6,\"std.sub\",[\"cellPos\",\"center\"]]],[10,[6,\"gaussianBrushShiftedSq\",[[6,\"std.dot\",[\"off\",\"off\"]],\"radiusSq\"]]]]]},externals:{\"std.sub\":()=>It,gaussianBrushShiftedSq:()=>A5,\"std.dot\":()=>le}})&&e.f)({}));var ql=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return ms(u(t,s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"px\"},{type:\"i\",name:\"py\"}],body:[0,[[10,[6,\"noise.hash12\",[[6,\"d.vec2f\",[\"px\",\"py\"]]]]]]]},externals:{\"noise.hash12\":()=>ms,\"d.vec2f\":()=>u}})&&e.f)({})),k_=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=K(t),o=K(s),n=ve(t),i=ve(s),d=__tsover_mul(__tsover_mul(n,n),__tsover_sub(3,__tsover_mul(n,2))),l=__tsover_mul(__tsover_mul(i,i),__tsover_sub(3,__tsover_mul(i,2)));return Z(Z(ql(r,o),ql(__tsover_add(r,1),o),d),Z(ql(r,__tsover_add(o,1)),ql(__tsover_add(r,1),__tsover_add(o,1)),d),l)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"nx\"},{type:\"i\",name:\"ny\"}],body:[0,[[13,\"ix\",[6,\"std.floor\",[\"nx\"]]],[13,\"iy\",[6,\"std.floor\",[\"ny\"]]],[13,\"sx\",[6,\"std.fract\",[\"nx\"]]],[13,\"sy\",[6,\"std.fract\",[\"ny\"]]],[13,\"ux\",[1,[1,\"sx\",\"*\",\"sx\"],\"*\",[1,[5,\"3\"],\"-\",[1,\"sx\",\"*\",[5,\"2\"]]]]],[13,\"uy\",[1,[1,\"sy\",\"*\",\"sy\"],\"*\",[1,[5,\"3\"],\"-\",[1,\"sy\",\"*\",[5,\"2\"]]]]],[10,[6,\"std.mix\",[[6,\"std.mix\",[[6,\"valueHash\",[\"ix\",\"iy\"]],[6,\"valueHash\",[[1,\"ix\",\"+\",[5,\"1\"]],\"iy\"]],\"ux\"]],[6,\"std.mix\",[[6,\"valueHash\",[\"ix\",[1,\"iy\",\"+\",[5,\"1\"]]]],[6,\"valueHash\",[[1,\"ix\",\"+\",[5,\"1\"]],[1,\"iy\",\"+\",[5,\"1\"]]]],\"ux\"]],\"uy\"]]]]]},externals:{\"std.floor\":()=>K,\"std.fract\":()=>ve,\"std.mix\":()=>Z,valueHash:()=>ql}})&&e.f)({})),zq=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_add(__tsover_add(__tsover_mul(k_(t,s),.5),__tsover_mul(k_(__tsover_add(__tsover_mul(t,2),5.37),__tsover_add(__tsover_mul(s,2),9.13)),.3)),__tsover_mul(k_(__tsover_add(__tsover_mul(t,4),1.79),__tsover_add(__tsover_mul(s,4),3.51)),.2))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"nx\"},{type:\"i\",name:\"ny\"}],body:[0,[[10,[1,[1,[1,[6,\"valueNoise2D\",[\"nx\",\"ny\"]],\"*\",[5,\"0.5\"]],\"+\",[1,[6,\"valueNoise2D\",[[1,[1,\"nx\",\"*\",[5,\"2\"]],\"+\",[5,\"5.37\"]],[1,[1,\"ny\",\"*\",[5,\"2\"]],\"+\",[5,\"9.13\"]]]],\"*\",[5,\"0.3\"]]],\"+\",[1,[6,\"valueNoise2D\",[[1,[1,\"nx\",\"*\",[5,\"4\"]],\"+\",[5,\"1.79\"]],[1,[1,\"ny\",\"*\",[5,\"4\"]],\"+\",[5,\"3.51\"]]]],\"*\",[5,\"0.2\"]]]]]]},externals:{valueNoise2D:()=>k_}})&&e.f)({})),Gq=y.fn([a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=__tsover_mul(fr(__tsover_mul(r,37.31)),97),i=__tsover_mul(fr(__tsover_mul(r,83.17)),97);return u(__tsover_add(__tsover_mul(t,o),n),__tsover_add(__tsover_mul(s,o),i))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"x\"},{type:\"i\",name:\"y\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"cellsPerTexel\"}],body:[0,[[13,\"sdx\",[1,[6,\"noise.hash11\",[[1,\"seed\",\"*\",[5,\"37.31\"]]]],\"*\",[5,\"97\"]]],[13,\"sdy\",[1,[6,\"noise.hash11\",[[1,\"seed\",\"*\",[5,\"83.17\"]]]],\"*\",[5,\"97\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"x\",\"*\",\"cellsPerTexel\"],\"+\",\"sdx\"],[1,[1,\"y\",\"*\",\"cellsPerTexel\"],\"+\",\"sdy\"]]]]]]},externals:{\"noise.hash11\":()=>fr,\"d.vec2f\":()=>u}})&&e.f)({}));var Dq=y.fn([a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=__tsover_mul(__tsover_sub(t,r),d),c=__tsover_sub(s,o),_=J(i),p=O(i),f=__tsover_add(__tsover_mul(l,_),__tsover_mul(c,p)),h=__tsover_sub(__tsover_mul(c,_),__tsover_mul(l,p));return u(__tsover_add(__tsover_div(f,n),.5),__tsover_add(__tsover_div(h,n),.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"u\"},{type:\"i\",name:\"v\"},{type:\"i\",name:\"centerX\"},{type:\"i\",name:\"centerY\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"rotation\"},{type:\"i\",name:\"aspect\"}],body:[0,[[13,\"dxAc\",[1,[1,\"u\",\"-\",\"centerX\"],\"*\",\"aspect\"]],[13,\"dy\",[1,\"v\",\"-\",\"centerY\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotation\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotation\"]]],[13,\"rdx\",[1,[1,\"dxAc\",\"*\",\"cosR\"],\"+\",[1,\"dy\",\"*\",\"sinR\"]]],[13,\"rdy\",[1,[1,\"dy\",\"*\",\"cosR\"],\"-\",[1,\"dxAc\",\"*\",\"sinR\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"rdx\",\"/\",\"scale\"],\"+\",[5,\"0.5\"]],[1,[1,\"rdy\",\"/\",\"scale\"],\"+\",[5,\"0.5\"]]]]]]]},externals:{\"std.cos\":()=>J,\"std.sin\":()=>O,\"d.vec2f\":()=>u}})&&e.f)({}));Ct({centerX:a,centerY:a,scale:a,rotation:a,aspect:a,saRadius:a,saSides:a,saRounding:a,saInnerRatio:a,saRotation:a,saHeight:a,saOffset:a,saAperture:a,vfOriginX:a,vfOriginY:a,vfSpanX:a,vfSpanY:a,vfActiveRes:a});var X_=256*256;var E5=1-10*.004,Lq=E5>=1?1/0:Math.min(3e4,Math.log(1e-6)/Math.log(Math.max(E5,.001))*16.67);var P5=\"rgba16float\",xS=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({amp:a,freq:a,seed:a,edgePin:a,cursorIntensity:a,t:a,aspect:a,focal:a,camPos:v,camForward:v,camRight:v,camUp:v,lighting:a,glossiness:a,highlights:a,lightX:a,lightY:a,lightZ:a,lightColor:v,nearCutoff:a,farCutoff:a,cursorWaveX:a,cursorWaveY:a,mouseSpeed:a,dt:a,decay:a,radius:a,waveSpeed:a,heightEnvelope:a,cursorActive:a}),\"HeightFieldParams\");var Fq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({readSrc:{storage:zt(a,X_),access:\"readonly\"},writeBuf:{storage:zt(a,X_),access:\"mutable\"},readBuf:{storage:zt(a,X_),access:\"mutable\"},params:{uniform:xS}}),\"waveEquationLayout\"),Bq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({readBuf:{storage:zt(a,X_),access:\"readonly\"},params:{uniform:xS},uvMaskTex:{storageTexture:an(P5,\"write-only\")},litTex:{storageTexture:an(P5,\"write-only\")}}),\"heightFieldMarchLayout\");var Iq=y.fn([b,b,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=W(t.xyz.sub(s.xyz)),n=W(__tsover_sub(t.w,s.w)),i=__tsover_add(le(o,v(.299,.587,.114)),n);return ce(r,__tsover_add(__tsover_mul(r,2),.001),i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"live\"},{type:\"i\",name:\"prev\"},{type:\"i\",name:\"threshold\"}],body:[0,[[13,\"dRgb\",[6,\"std.abs\",[[6,[7,[7,\"live\",\"xyz\"],\"sub\"],[[7,\"prev\",\"xyz\"]]]]]],[13,\"dA\",[6,\"std.abs\",[[1,[7,\"live\",\"w\"],\"-\",[7,\"prev\",\"w\"]]]]],[13,\"diff\",[1,[6,\"std.dot\",[\"dRgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]],\"+\",\"dA\"]],[10,[6,\"std.smoothstep\",[\"threshold\",[1,[1,\"threshold\",\"*\",[5,\"2\"]],\"+\",[5,\"0.001\"]],\"diff\"]]]]]},externals:{\"std.abs\":()=>W,\"std.dot\":()=>le,\"d.vec3f\":()=>v,\"std.smoothstep\":()=>ce}})&&e.f)({})).$name(\"frameDiffMask\"),Yq=y.fn([v,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=lc(t);return Yi(v(ve(__tsover_add(r.x,s)),r.y,r.z))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"amount\"}],body:[0,[[13,\"hsl\",[6,\"colorMixing.rgbToHsl\",[\"rgb\"]]],[13,\"rotated\",[6,\"d.vec3f\",[[6,\"std.fract\",[[1,[7,\"hsl\",\"x\"],\"+\",\"amount\"]]],[7,\"hsl\",\"y\"],[7,\"hsl\",\"z\"]]]],[10,[6,\"colorMixing.hslToRgb\",[\"rotated\"]]]]]},externals:{\"colorMixing.rgbToHsl\":()=>lc,\"d.vec3f\":()=>v,\"std.fract\":()=>ve,\"colorMixing.hslToRgb\":()=>Yi}})&&e.f)({})).$name(\"hueRotateTurns\");var R8=[16,11,10,16,24,40,51,61,12,12,14,19,26,58,60,55,14,13,16,24,40,57,69,56,14,17,22,29,51,87,80,62,18,22,37,56,68,109,103,77,24,35,55,64,81,104,113,92,49,64,78,87,103,121,120,101,72,92,95,98,112,100,103,99],U8=[17,18,24,47,99,99,99,99,18,21,26,66,99,99,99,99,24,26,56,99,99,99,99,99,47,66,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99,99],bS=[];for(let e=0;e<8;e++)for(let t=0;t<8;t++)bS[e*8+t]=Math.cos((2*e+1)*t*Math.PI/16);var Wq=Math.PI/16,Oq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.const(zt(a,64),bS),\"COS_LUT\"),Vq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.const(zt(a,64),R8),\"LUMA_QUANT_C\"),Nq=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.const(zt(a,64),U8),\"CHROMA_QUANT_C\");var qq=y.fn([b,b,b,b,b,b,b,b,b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_)=>{\"use gpu\";let p=ce(0,.1,__tsover_mul(__tsover_add(__tsover_add(__tsover_add(__tsover_add(t.z,s.z),r.z),o.z),n.z),.2)),f=t.xy.add(s.xy).add(r.xy).add(o.xy).add(n.xy).mul(.2),h=te(f),g=ce(.01,.1,h),x=__tsover_div(f.x,__tsover_add(h,.001)),T=__tsover_div(f.y,__tsover_add(h,.001)),S=ce(0,.7,w(x,0)),A=ce(0,.7,w(__tsover_mul(x,-1),0)),E=ce(0,.7,w(T,0)),M=ce(0,.7,w(__tsover_mul(T,-1),0)),$=c.mul(A).add(_.mul(S)),L=l.mul(M).add(d.mul(E)),B=__tsover_add(A,S),D=__tsover_add(E,M),G=__tsover_add(__tsover_add(B,D),.001);return Z(i,$.mul(__tsover_div(B,G)).add(L.mul(__tsover_div(D,G))),b(g)).mul(p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"s0\"},{type:\"i\",name:\"s1\"},{type:\"i\",name:\"s2\"},{type:\"i\",name:\"s3\"},{type:\"i\",name:\"s4\"},{type:\"i\",name:\"base\"},{type:\"i\",name:\"up\"},{type:\"i\",name:\"down\"},{type:\"i\",name:\"left\"},{type:\"i\",name:\"right\"}],body:[0,[[13,\"smoothedLiquid\",[1,[1,[1,[1,[1,[7,\"s0\",\"z\"],\"+\",[7,\"s1\",\"z\"]],\"+\",[7,\"s2\",\"z\"]],\"+\",[7,\"s3\",\"z\"]],\"+\",[7,\"s4\",\"z\"]],\"*\",[5,\"0.2\"]]],[13,\"liquidIntensity\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.1\"],\"smoothedLiquid\"]]],[13,\"flow\",[6,[7,[6,[7,[6,[7,[6,[7,[6,[7,[7,\"s0\",\"xy\"],\"add\"],[[7,\"s1\",\"xy\"]]],\"add\"],[[7,\"s2\",\"xy\"]]],\"add\"],[[7,\"s3\",\"xy\"]]],\"add\"],[[7,\"s4\",\"xy\"]]],\"mul\"],[[5,\"0.2\"]]]],[13,\"flowMagnitude\",[6,\"std.length\",[\"flow\"]]],[13,\"hasFlow\",[6,\"std.smoothstep\",[[5,\"0.01\"],[5,\"0.1\"],\"flowMagnitude\"]]],[13,\"normalizedX\",[1,[7,\"flow\",\"x\"],\"/\",[1,\"flowMagnitude\",\"+\",[5,\"0.001\"]]]],[13,\"normalizedY\",[1,[7,\"flow\",\"y\"],\"/\",[1,\"flowMagnitude\",\"+\",[5,\"0.001\"]]]],[13,\"rightAmount\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.7\"],[6,\"std.max\",[\"normalizedX\",[5,\"0\"]]]]]],[13,\"leftAmount\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.7\"],[6,\"std.max\",[[1,\"normalizedX\",\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0\"]]]]]],[13,\"upAmount\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.7\"],[6,\"std.max\",[\"normalizedY\",[5,\"0\"]]]]]],[13,\"downAmount\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.7\"],[6,\"std.max\",[[1,\"normalizedY\",\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0\"]]]]]],[13,\"horizontalColor\",[6,[7,[6,[7,\"left\",\"mul\"],[\"leftAmount\"]],\"add\"],[[6,[7,\"right\",\"mul\"],[\"rightAmount\"]]]]],[13,\"verticalColor\",[6,[7,[6,[7,\"down\",\"mul\"],[\"downAmount\"]],\"add\"],[[6,[7,\"up\",\"mul\"],[\"upAmount\"]]]]],[13,\"horizontalWeight\",[1,\"leftAmount\",\"+\",\"rightAmount\"]],[13,\"verticalWeight\",[1,\"upAmount\",\"+\",\"downAmount\"]],[13,\"totalWeight\",[1,[1,\"horizontalWeight\",\"+\",\"verticalWeight\"],\"+\",[5,\"0.001\"]]],[13,\"directionalColor\",[6,[7,[6,[7,\"horizontalColor\",\"mul\"],[[1,\"horizontalWeight\",\"/\",\"totalWeight\"]]],\"add\"],[[6,[7,\"verticalColor\",\"mul\"],[[1,\"verticalWeight\",\"/\",\"totalWeight\"]]]]]],[13,\"finalColor\",[6,\"std.mix\",[\"base\",\"directionalColor\",[6,\"d.vec4f\",[\"hasFlow\"]]]]],[10,[6,[7,\"finalColor\",\"mul\"],[\"liquidIntensity\"]]]]]},externals:{\"std.smoothstep\":()=>ce,\"std.length\":()=>te,\"std.max\":()=>w,\"std.mix\":()=>Z,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"flowDirectionColor\"),Fm={name:\"Root\",props:{},fragment:({childNode:e})=>e??il(\"vec4f(0.0, 0.0, 0.0, 0.0)\")};function it(e,t,s=\"_animTime\"){let r=e.props.member(s);if(t){let o=e.uniforms[t];if(o)return r.add(o)}return r}var z8=class{kind=\"wgsl\";spec;identifiers;fns=new Map;constructor(e){if(typeof e.body!=\"string\"||e.body.trim()===\"\")throw new Error(\"wgsl: the body must be a non-empty WGSL string\");if(!/\\breturn\\b/.test(wS(e.body)))throw new Error(\"wgsl: the body must `return` a vec4f color\");this.spec=e,this.identifiers=G8(e.body)}get samplesChild(){return this.identifiers.has(\"childTexture\")}fnFor(e,t){let s=this.fns.get(e);return s||(s=t(),this.fns.set(e,s)),s}};function Zc(e){return e instanceof z8}function wS(e){return e.replace(/\\/\\*[\\s\\S]*?\\*\\//g,\" \").replace(/\\/\\/[^\\n]*/g,\" \")}function G8(e){let t=new Set,s=new RegExp(\"(?<![\\\\w.])[A-Za-z_][A-Za-z0-9_]*\",\"g\");for(let r of wS(e).matchAll(s))t.add(r[0]);return t}function TS(e){let t=e.transform;if(t===ke)return\"vec4f\";if(t===ct)return\"vec2f\";if(t===ha||t===Wi)return null;let s=e.default;if(jc(s))return\"f32\";let r=gS(t);if(!r&&(typeof s==\"string\"||typeof s==\"object\"&&s!==null&&!Array.isArray(s)))return null;let o=s;if(r)try{o=r(s)}catch{o=s}switch(o&&typeof o==\"object\"&&\"data\"in o&&(o=o.data),N7(o).type){case\"f32\":return\"f32\";case\"vec2f\":return\"vec2f\";case\"vec3f\":return\"vec3f\";case\"vec4f\":return\"vec4f\";default:return null}}var D8={f32:a,vec2f:u,vec3f:v,vec4f:b,\"texture_2d<f32>\":Hs(a),sampler:Nh()},L8=new Set([\"viewport\",\"child\",\"childTexture\",\"childSampler\"]),SS={uv:\"vec2f\",aspect:\"f32\",time:\"f32\",viewportSize:\"vec2f\",logicalViewportSize:\"vec2f\",pointer:\"vec2f\"};function M5(e){return/^[A-Za-z_][A-Za-z0-9_]*$/.test(e)?e:e.replace(/[^A-Za-z0-9_]/g,\"_\")}function Qy(e,t,s){let r=M5(e.spec.name??F8(s.name)+B8(t)),o=I8(t,s),n=Y8(e.spec.inputs??{},s.props),i=new Map;for(let _ of o)e.identifiers.has(_.name)&&i.set(_.name,_);for(let _ of n)i.set(_.name,_);let d=[...i.values()],l=`(${d.map(_=>`${M5(_.name)}: ${_.type}`).join(\", \")}) -> vec4f`,c=d.map(_=>`${_.name}:${_.type}`).join(\",\");return _=>(j0(),_.noteCustomWgsl?.(),se(e.fnFor(c,()=>(globalThis.__TYPEGPU_AUTONAME__??(p=>p))(y.fn(d.map(p=>D8[p.type]),b),\"shell\")(`${l} {\n${e.spec.body}\n}`)),r,d.map(p=>p.value(_))))}function F8(e){return e?e[0].toLowerCase()+e.slice(1):\"custom\"}function B8(e){return e===\"generator\"?\"Paint\":\"Filter\"}function I8(e,t){let s=[],r=e===\"generator\";s.push({name:\"uv\",type:\"vec2f\",value:o=>r?o.uvContext??o.ctx.uv:o.ctx.uv}),s.push({name:\"time\",type:\"f32\",value:o=>t.animatedTime?it(o):o.ctx.time}),s.push({name:\"aspect\",type:\"f32\",value:o=>o.ctx.aspect}),s.push({name:\"viewport\",type:\"vec2f\",value:o=>r?o.effectiveViewportSize??o.ctx.viewportSize:o.ctx.viewportSize}),s.push({name:\"pointer\",type:\"vec2f\",value:o=>o.ctx.pointer}),e===\"pointwise\"&&s.push({name:\"child\",type:\"vec4f\",value:o=>o.childNode}),e===\"gather\"&&(s.push({name:\"childTexture\",type:\"texture_2d<f32>\",value:o=>o.texture.accessor()}),s.push({name:\"childSampler\",type:\"sampler\",value:()=>il(\"samp.$.linearClamp\")}));for(let[o,n]of Object.entries(t.props)){if(SS[o]||L8.has(o))continue;let i=TS(n);if(!i)continue;let d=n.transform===ct;s.push({name:o,type:i,value:l=>{let c=l.uniforms[o];if(!c)throw new Error(`wgsl: prop '${o}' has no GPU uniform (is it CPU-only?)`);return d?new Ts(_=>`vec2f(${c.member(\"x\")._emit(_)}, 1.0 - ${c.member(\"y\")._emit(_)})`):c}})}return s}function Y8(e,t){let s=[];for(let[r,o]of Object.entries(e)){let n=o!==null&&typeof o==\"object\"&&\"value\"in o&&\"type\"in o,i=n?o.value:o,d=W8(i,t),l=n?o.type:d;if(n&&l!==d)throw new Error(`wgsl: input '${r}' is declared ${l} but its source is ${d}`);s.push({name:r,type:l,value:c=>typeof i==\"number\"?nt(i):M8(i,c)})}return s}function W8(e,t){if(typeof e==\"number\"||e instanceof ai)return\"f32\";if(e.kind===\"ctx\")return SS[e.name]??\"f32\";if(e.kind===\"prop\"){let s=t[e.name];if(!s)throw new Error(`wgsl: input binds unknown prop '${e.name}'`);let r=TS(s);if(!r)throw new Error(`wgsl: prop '${e.name}' is CPU-only and cannot be bound as a WGSL parameter`);return r}return\"f32\"}function ri(e){let t={};for(let s of Object.keys(e)){let{recompile:r,...o}=e[s],n={...o};if(r?.kind===\"crosses\"){let i=r.value;n.compileTimeWhen=(d,l)=>d===i!=(l===i)}else r?.kind===\"custom\"&&(n.compileTimeWhen=r.predicate);t[s]=n}return t}function AS(e,t){switch(e.kind){case\"isZero\":case\"isValue\":{let s=e.kind===\"isZero\"?0:e.value,r=t[e.prop];return{props:[e.prop],when:o=>(o[e.prop]??r)===s}}case\"allOf\":{let s=e.rules.map(r=>AS(r,t));return{props:[...new Set(s.flatMap(r=>r.props))],when:r=>s.every(o=>o.when(r))}}case\"custom\":return{props:e.props,when:e.when}}}function Qp(e,t){if(!e)return;let s={};for(let[r,o]of Object.entries(t))s[r]=o.default;return AS(e,s)}function O8(e){let{role:t,species:s,effect:r,identityWhen:o,missingChildMessage:n,props:i,...d}=e,l={...d,props:ri(i),identity:Qp(o,i),missingChildMessage:n};if(r.kind===\"tintToward\"){let{color:p,amount:f}=r;return Pf({...l,body:{fn:cL,hint:\"mixToward\"},args:h=>[Se(p,h),En(f,h)]})}if(Zc(r))return Pf({...l,build:Qy(r,\"pointwise\",Jy(e))});let{kind:c,..._}=r;return Pf({...l,..._})}function Jy(e){return{name:e.name,props:e.props,animatedTime:e.animatedTime}}function V8(e){let{role:t,species:s,effect:r,identityWhen:o,missingChildMessage:n,props:i,...d}=e;if(r.kind===\"displaceBy\")return N8(e);if(Zc(r))return b5({...d,props:ri(i),identity:Qp(o,i),missingChildMessage:n,build:Qy(r,\"gather\",Jy(e)),resultAlpha:r.spec.alpha??\"premultiplied\"});let{kind:l,...c}=r;return b5({...d,props:ri(i),identity:Qp(o,i),missingChildMessage:n,...c})}function N8(e){let{role:t,species:s,effect:r,identityWhen:o,missingChildMessage:n,props:i,...d}=e,l=r,c=Qp(o,i),_=l.field.sim.config,p=l.field.output,f=_.step.find(g=>g.kind===\"op.wave\"),h=_.step.find(g=>g.kind===\"op.splat\");if(!f||!h||_.step.length!==2)throw new Error(`std: simulate.grid currently implements exactly [op.wave, op.splat] (got: ${_.step.map(g=>g.kind).join(\", \")})`);if(_.history!==2)throw new Error(`std: op.wave reads t\\u22121 and t\\u22122 \\u2014 declare history: 2 (got ${_.history})`);if(_.derive[p]?.kind!==\"op.gradient\")throw new Error(`std: displaceBy consumes a vector field \\u2014 derive '${p}' must be op.gradient()`);if(_.rest&&_.rest.settlesWhen!==\"derived-from-damping\")throw new Error(\"std: simulate.grid rest supports settlesWhen: 'derived-from-damping' only\");return{...d,props:ri(i),requiresRTT:!0,requiresChild:!0,usesPointer:h.at.kind===\"pointer\",compute:g=>{if(!g.childNode)return null;let x=PB(g,{resolution:_.resolution,dampingProp:f.damping.name,radiusProp:h.radius.name,radiusScale:.05,speedMax:h.amount.max,teleportGuard:h.at.teleportGuard});return x?{outputs:{[p]:x.displacement},getComputeNodes:x.getComputeNodes}:null},fragment:g=>{let{childNode:x,ctx:T,computeOutputs:S,propValues:A,convertToTexture:E}=g;if(!x)return _s;let M=E(x);if(Ky(c,g))return se(Hn,\"unpremultiplyAlpha\",[M.sample(T.uv)]);let $=A[l.edges.name]??0,L=S?.[p],B=L?L.sample(T.uv,\"linearClamp\").member(\"xy\"):il(\"vec2f(0.0, 0.0)\"),D=se(eF,\"chromaticDisplaceUVs\",[T.uv,B,Se(l.strength,g),Se(l.chromatic,g)]),G=ee=>M.sample(ee),I=Ed(D.member(\"rUV\"),G,$),X=Ed(D.member(\"gUV\"),G,$),H=Ed(D.member(\"bUV\"),G,$);return se(Hn,\"unpremultiplyAlpha\",[Ss(I.member(\"r\"),X.member(\"g\"),H.member(\"b\"),X.member(\"a\"))])}}}function q8(e){let{role:t,map:s,edges:r,resample:o,uvRemapIdentityWhen:n,missingChildMessage:i,props:d,...l}=e;return{...l,props:ri(d),requiresRTT:!0,requiresChild:!0,...v8(s,{edges:r,resample:o,uvRemapIdentityWhen:n,requireChildMessage:i})}}function X8(e){let{role:t,name:s,description:r,category:o,shape:n}=e;return E8({name:s,description:r,category:o,...n})}function H8(e){let{role:t,paint:s,props:r,...o}=e;return Zc(s)?{acceptsUVContext:!0,...o,props:ri(r),fragment:Qy(s,\"generator\",Jy(e))}:{...o,props:ri(r),fragment:s}}function j8(e){let{role:t,species:s,gpu:r,props:o,...n}=e;return{...n,props:ri(o),fragment:r.fragment,...r.uvRemap?{uvRemap:r.uvRemap}:{}}}function K8(e){let t=[],s=e.paint,r=e.effect;for(let n of[s,r])Zc(n)&&t.push(n.spec.body,Z8(n.spec.inputs??{}),n.spec.alpha??\"\");if(t.length===0)return;let o=2166136261;for(let n of t.join(\"\\0\"))o^=n.charCodeAt(0),o=Math.imul(o,16777619)>>>0;return o.toString(16)}function Z8(e){let t=r=>{if(typeof r!=\"object\"||r===null)return String(r);let o=r;switch(o.kind){case\"prop\":return`p:${o.name}`;case\"ctx\":return`c:${o.name}`;case\"mul\":return`mul(${t(o.a)},${t(o.b)})`;case\"radialMask\":return`radialMask(${o.center?.name},${o.radius?.name},${o.falloff?.name})`;default:return o.kind}},s=r=>typeof r==\"number\"?`n:${r}`:r instanceof ai?`s:${t(r.node)}`:t(r);return Object.keys(e).sort().map(r=>{let o=e[r];return o!==null&&typeof o==\"object\"&&\"value\"in o&&\"type\"in o?`${r}=${s(o.value)}:${o.type}`:`${r}=${s(o)}`}).join(\",\")}var Q8=new Set([\"blendMode\",\"opacity\",\"visible\",\"id\",\"maskSource\",\"maskType\",\"renderOrder\",\"transform\",\"boundingBox\",\"flow\",\"absolute\",\"children\",\"ref\",\"key\",\"src\"]),J8=new Set([\"_animTime\",\"_opacity\"]),eI=[\"_pad\",\"_bbox_\",\"_map_\",\"_childBounds_\",\"_animTime_\"],tI=/^[A-Za-z_][A-Za-z0-9_]*$/;function sI(e,t){for(let s of Object.keys(t)){if(!tI.test(s))throw new Error(`defineShader(\"${e}\"): prop '${s}' is not a valid identifier (letters, digits and _ only, not starting with a digit)`);if(Q8.has(s))throw new Error(`defineShader(\"${e}\"): '${s}' is a layer prop every component already has (blend mode, opacity, layout, \\u2026) \\u2014 rename the shader prop`);if(J8.has(s)||eI.some(r=>s.startsWith(r)))throw new Error(`defineShader(\"${e}\"): '${s}' collides with a field the renderer manages itself \\u2014 rename the shader prop`)}}function et(e){\"props\"in e&&e.props&&sI(e.name,e.props);let t=aI(e),s=K8(e);return s?{...t,revision:s}:t}function rI(e){let t=\"shape\"in e?\"shape\":\"map\"in e?\"warp\":\"gpu\"in e?\"custom\":\"paint\"in e?\"generator\":\"effect\"in e?\"filter\":null,s=String(e.name??\"?\");if(!t)throw new Error(`defineShader(\"${s}\"): give it a GPU half \\u2014 paint: (generator), effect: (filter), map: (warp), shape: (shape) or gpu: (custom)`);let r=e.role;if(r&&t!==\"custom\"&&r!==t)throw new Error(`defineShader(\"${s}\"): role '${r}' contradicts its ${oI[t]} field (a ${t})`);return t}var oI={shape:\"shape:\",warp:\"map:\",custom:\"gpu:\",generator:\"paint:\",filter:\"effect:\"};function nI(e){let{effect:t,species:s}=e;if(Zc(t))return s??(t.samplesChild?\"gather\":\"pointwise\");let r=t.kind===\"gather\"||t.kind===\"displaceBy\"?\"gather\":\"pointwise\";if(s&&s!==r)throw new Error(`defineShader(\"${e.name}\"): species '${s}' contradicts its '${t.kind}' effect (${r})`);return r}function aI(e){switch(rI(e)){case\"shape\":return X8(e);case\"warp\":return q8(e);case\"custom\":return j8(e);case\"generator\":return H8(e);case\"filter\":{let t=e;return nI(t)===\"gather\"?V8({...t,species:\"gather\"}):O8({...t,species:\"pointwise\"})}}}var ah=e=>typeof e==\"number\"?nt(e):e,Jp=(e,t)=>typeof e==\"number\"?nt(e)._emit(t):e._emit(t);function tr(e,...t){return new Ts(s=>`${e}(${t.map(r=>Jp(r,s)).join(\", \")})`)}function cl(e,t,s){return new Ts(r=>`(${Jp(t,r)} ${e} ${Jp(s,r)})`)}var C=(e,t)=>cl(\"+\",e,t),ae=(e,t)=>cl(\"-\",e,t),m=(e,t)=>cl(\"*\",e,t),De=(e,t)=>cl(\"/\",e,t),mo=e=>new Ts(t=>`(-(${Jp(e,t)}))`),Us=e=>tr(\"abs\",e),e0=e=>tr(\"floor\",e);var Uo=e=>tr(\"fract\",e),un=e=>tr(\"sqrt\",e),rs=(e,t)=>tr(\"pow\",e,t),Fs=e=>tr(\"exp\",e);var Zt=e=>tr(\"sin\",e),kn=e=>tr(\"cos\",e);var $n=(e,t)=>tr(\"min\",e,t),ht=(e,t)=>tr(\"max\",e,t),Le=(e,t,s)=>tr(\"clamp\",e,t,s),dt=(e,t,s)=>wn(ah(e),ah(t),s),ES=(e,t)=>tr(\"step\",e,t),Fe=(e,t,s)=>tr(\"smoothstep\",e,t,s);var Ir=e=>tr(\"length\",e);var Gs=(e,t)=>tr(\"dot\",e,t),Jr=e=>tr(\"normalize\",e);var Bm=(e,t,s)=>Je(ae(m($_(e,\"x\"),t),m($_(e,\"y\"),s)),C(m($_(e,\"x\"),s),m($_(e,\"y\"),t))),$_=(e,t)=>typeof e==\"number\"?e:e.member(t),jo=(e,t)=>tr(\"reflect\",e,t),PS=(e,t,s)=>tr(\"refract\",e,t,s),t0=e=>tr(\"exp2\",e),s0=(e,t)=>m(Uo(m(Zt(m(e,t.k)),t.big)),6.283185307179586);var MS=(e,t)=>cl(\"<=\",e,t),r0=(e,t)=>cl(\">\",e,t);var Gt=e=>nt(e),Je=(e,t)=>tr(\"vec2f\",e,t),Ze=(e,t,s)=>tr(\"vec3f\",e,t,s),is=(...e)=>Ss(...e.map(ah)),Dt=e=>tr(\"vec3f\",e),P=(e,t)=>Vs(e,t),kS=(e,t)=>{let s=P(e,\"sp\");return m(C(s,un(C(m(s,s),m(t,t)))),.5)},Im=(e,t)=>Fs(mo(m(m(e,e),t)));function $S(e){return m(Fe(e.below.from,e.below.to,e.distance),ae(1,Fe(e.above.from??0,e.above.to,e.distance)))}function CS(e){let{width:t,curve:s}=e.softness;return rs(ae(1,Fe(ae(e.radius,t),C(e.radius,t),e.dist)),s)}function ul(e){let t=m(e.footprint,.5);return ae(1,Fe(mo(t),t,e.distance))}function RS(e){return ul({distance:ae(Us(e.distance),m(e.width,.5)),footprint:e.footprint})}function US(e,t,s){e.onBeforeRender(()=>{let r=e.getCpuValue(t.x),o=e.getCpuValue(t.y),n=e.getCpuValue(t.z),i=Math.sqrt(r*r+o*o+n*n);i>0?(e.setExtraField(s.x,r/i),e.setExtraField(s.y,o/i),e.setExtraField(s.z,n/i)):(e.setExtraField(s.x,0),e.setExtraField(s.y,0),e.setExtraField(s.z,0))})}function zS(e){return{kind:\"crosses\",value:e}}var iI=e=>typeof e==\"number\"?nt(e):e,vo=(e,t)=>(...s)=>se(e,t,s.map(iI)),GS=vo(_c,\"circleSdf\"),Xq=vo(Bp,\"ellipseSdf\"),DS=vo(Fp,\"roundedRectSdf\"),Hq=vo(Up,\"polygonSdf\"),jq=vo(Gp,\"starSdf\"),Kq=vo(zp,\"flowerSdf\"),Zq=vo(Op,\"heartSdf\"),Qq=vo(Lp,\"crossSdf\"),Jq=vo(Dp,\"ringSdf\"),eX=vo(Ip,\"vesicaSdf\"),tX=vo(Yp,\"crescentSdf\"),sX=vo(Wp,\"trapezoidSdf\"),rX=vo(Np,\"teardropSdf\"),oX=vo(qp,\"parallelogramSdf\"),nX=vo(Vp,\"arcSdf\");var Ge=Math.fround,dI=Ge($D),Mf=Ge(Et),lI=.11,ih=Ge(4294967295),k5=new DataView(new ArrayBuffer(4));function dh(e){return k5.setFloat32(0,Ge(e),!0),k5.getUint32(0,!0)}function em(e,t){return Math.imul(e>>>0,t>>>0)>>>0}function $5(e){let t=dh(Ge(Ge(e)*Ge(3141592653)));return Ge(Ge(em(em(t,t),3141592653))/ih)}function C5(e,t){let s=(dh(Ge(Ge(e)*Ge(141421356)))^dh(Ge(Ge(t)*Ge(2718281828))))>>>0;return[Ge(Ge(em(s,3141592653))/ih),Ge(Ge(em(s,1618033988))/ih)]}function cI(e,t,s,r,o,n){let i=Ge(Ge(e*dI)+Ge($5(Ge(Ge(s*Ge(.7311))+Ge(1.618)))*Mf)),d=Ge(Math.sqrt(Ge(Ge(e+.5)/Ge(t)))),l=C5(Ge(Ge(e*Ge(3.77))+Ge(.917)),Ge(Ge(s*Ge(1.093))+Ge(2.236))),c=Ge(Ge(l[0]-.5)*Ge(.26)),_=Ge(Ge(l[1]-.5)*Ge(.26)),p=C5(Ge(Ge(e*Ge(7.13))+Ge(1.618)),Ge(Ge(s*Ge(.531))+Ge(3.71))),f=Ge(p[0]*Mf),h=Ge(p[1]*Mf),g=Ge(.5+Ge($5(Ge(Ge(Ge(e*Ge(5.417))+Ge(s*Ge(.291)))+Ge(.917)))*Ge(.7))),x=Ge(Ge(n*Ge(lI))*g),T=Ge(Math.sin(Ge(x+f))),S=Ge(Math.cos(Ge(Ge(x*Ge(1.37))+h))),A=Ge(Ge(Ge(Ge(Math.cos(i))*d)*Ge(.62))+c)+Ge(Ge(T*Ge(r))*Ge(.16)),E=Ge(Ge(Ge(Ge(Math.sin(i))*d)*Ge(.62))+_)+Ge(Ge(S*Ge(r))*Ge(.16));return[Ge(Ge(.5+Ge(A))*Ge(o)),Ge(.5+Ge(E))]}function uI(e,t,s,r,o){let n=new Array(16);for(let i=0;i<8;i++){let[d,l]=cI(i,e,t,s,r,o);n[i*2]=d,n[i*2+1]=l}return n}function R5(e,t){return typeof e==\"number\"?nt(e):e instanceof ai||e.kind!==\"ctx\"?En(e,t):t.ctx[e.name]}function wr(e,t){if(typeof e==\"object\"&&e!==null&&\"base\"in e){let s=R5(e.base,t);return e.add!==void 0&&(s=s.add(e.add)),e.mul!==void 0&&(s=s.mul(e.mul)),s}return R5(e,t)}function Pi(e){return{uv:e.uvContext??e.ctx.uv,viewport:e.effectiveViewportSize??e.ctx.viewportSize}}function o0(e,t){return t.propValues[e.name]}function Qc(e){return typeof e==\"number\"?e:typeof e==\"string\"?ft(e):0}function LS(e,t){return Xo[e?Qc(t.propValues[e.name]):0]??lr}function Ym(e){return(t,s,r)=>{let o=LS(e.space,r);return se(o,\"mixColors\",[se(o,\"mixColors\",[Se(e.a,r),Se(e.b,r),t]),Se(e.c,r),s])}}function FS(e,t,s){return(r,o)=>se(Xo[Qc(o0(s,o))]??lr,\"mixColors\",[Se(e,o),Se(t,o),r])}function eo(e){return(t,s)=>{let r=Qc(o0(e,s));return(s.propValues.stopCount??0)>1?dl(t,{colorsArray:s.uniforms.colorsArray,positionsArray:s.uniforms.positionsArray,convertedColorsArray:s.uniforms.convertedColorsArray,stopCount:s.uniforms.stopCount},r):se(Xo[r]??lr,\"mixColors\",[s.uniforms.colorA,s.uniforms.colorB,t])}}var U5=1,_I=2,pI=3;function _n(e,t,s){return r=>{let{uv:o}=Pi(r),n=e(r,o);if(!s?.edges)return t(n,r);let i=o0(s.edges,r)??0,d;i===_I?d=se(cT,\"gradientEdgeMirror\",[n]):i===pI?d=se(sF,\"gradientEdgeWrap\",[n]):i===U5?d=n:d=se(E2,\"gradientClamp01\",[n]);let l=t(se(E2,\"gradientClamp01\",[d]),r);if(i===U5){let c=se(rF,\"gradientTransparentAlpha\",[n]);return Ss(l.member(\"rgb\"),l.member(\"a\").mul(c))}return l}}var BS={linear(e){return(t,s)=>{let{viewport:r}=Pi(t);return se(tF,\"gradientRawT\",[Se(e.from,t),Se(e.to,t),wr(e.angle,t),s,r])}},radial(e){return(t,s)=>{let{viewport:r}=Pi(t);return se(oF,\"radialDist\",[Se(e.center,t),wr(e.skew,t),wr(e.aspect,t),wr(e.radius,t),s,r])}},conic(e){return(t,s)=>{let{viewport:r}=Pi(t);return se(nF,\"conicSweep\",[Se(e.center,t),wr(e.rotation,t),s,r])}},diamond(e){return(t,s)=>{let{viewport:r}=Pi(t);return se(aF,\"diamondDist\",[Se(e.center,t),wr(e.size,t),wr(e.rotation,t),wr(e.roundness,t),s,r])}},spiral(e){return(t,s)=>{let{viewport:r}=Pi(t);return se(uF,\"spiralMask\",[Se(e.center,t),wr(e.scale,t),wr(e.width,t),wr(e.falloff,t),wr(e.softness,t),it(t),s,r])}}};function IS(e,t){return(s,r)=>se(_F,\"toneRemap\",[e(s,r),wr(t.glow,s),wr(t.contrast,s),wr(t.balance,s)])}function YS(e,t){return(s,r)=>se(vF,\"unitThreshold\",[e(s,r),t.bias!==void 0?wr(t.bias,s):nt(0),nt(t.low),nt(t.high)])}function Jc(e){let t=new WeakMap;return(s,r)=>{let o=t.get(s);return o||(o=Vs(e(s,r),\"field\"),t.set(s,o)),o}}var mI={mx3:{fn:()=>mF,hint:\"unitNoise3\"},perlin:{fn:()=>yd,hint:\"perlin13\"},value:{fn:()=>CD,hint:\"value13\"},mx3signed:{fn:()=>Po,hint:\"mxNoiseFloat3\"}};function WS(e){let t=mI[e];return(s,r)=>se(t.fn(),t.hint,[r])}function OS(e,t){let s=J7(Po,{name:\"warpDomain\"});return(r,o)=>{let n=wr(t.amount,r);t.amountScale!==void 0&&(n=n.mul(t.amountScale));let i=it(r);return t.timeScale!==void 0&&(i=i.mul(t.timeScale)),e(r,se(s,\"warpDomain\",[o,i,n]))}}function VS(e,t){return(s,r)=>{let{viewport:o}=Pi(s);return e(s,se(pF,\"volumeDomain\",[r,o,wr(t.scale,s)]))}}function NS(e){return(t,s)=>se(fF,\"flowLayers\",[s,wr(e.detail,t),it(t)])}function qS(e,t){return(s,r)=>se(hF,\"shimmerPulse\",[e(s,r),it(s),nt(t.speed),nt(t.span),nt(t.depth)])}function XS(e){let t=P(m(Uo(e),6),\"hue6\");return Ze(Le(ae(Us(ae(t,3)),1),0,1),Le(ae(2,Us(ae(t,2))),0,1),Le(ae(2,Us(ae(t,4))),0,1))}function HS(e,t){return s=>e(s).mul(t(s,s.ctx.uv))}function jS(e){let t=s=>typeof s==\"number\"?nt(s):s;return e.anchors?se(WD,\"scatterField\",[e.at,t(e.count),t(e.seed),e.anchors,t(e.softness)]):se(OD,\"scatterField\",[e.at,t(e.count),t(e.seed),t(e.drift),t(e.aspect),t(e.time),t(e.softness)])}function KS(e,t){let s=e.dimensions.width/Math.max(e.dimensions.height,1e-6);e.onResize(({width:o,height:n})=>{s=o/Math.max(n,1e-6)});let r=\"\";return e.onBeforeRender(()=>{let o=e.getCpuValue(\"_animTime\"),n=e.getCpuValue(t.count.name),i=e.getCpuValue(t.seed.name),d=e.getCpuValue(t.drift.name);if(typeof o!=\"number\"||typeof n!=\"number\"||typeof i!=\"number\"||typeof d!=\"number\")return;let l=`${n}|${i}|${d}|${s}|${o}`;l!==r&&(r=l,e.setExtraField(t.field,uI(n,i,d,s,o)))}),e.uniforms[t.field]}function ZS(e){return se(bF,\"rampWrap\",[e.t,typeof e.cycles==\"number\"?nt(e.cycles):e.cycles])}function QS(e){return se(cT,\"gradientEdgeMirror\",[e])}function JS(e){let t=s=>typeof s==\"number\"?nt(s):s;return e.levels===1?se(ID(Po,{name:\"warpDomain1\"}),\"warpDomain1\",[e.at,t(e.time),t(e.amount)]):se(J7(Po,{name:\"warpDomain\"}),\"warpDomain\",[e.at,t(e.time),t(e.amount)])}function n0(e){let t=s=>typeof s==\"number\"?nt(s):s;return se(VD,\"chainedWarpStep\",[e.at,nt(e.scale),t(e.z),Je(e.offsets[0][0],e.offsets[0][1]),Je(e.offsets[1][0],e.offsets[1][1]),nt(e.reach),t(e.strength)])}function eA(e,t){return kB(t,e)}function tA(e){return(t,s,r)=>{let{uniforms:o}=r,n=Qc(r.propValues[e.space.name]),i=Se(e.a,r),d=Se(e.b,r),l=Se(e.c,r),c=Se(e.d,r);if(n!==0){let _=\"\";r.onBeforeRender(()=>{let h=[e.a.name,e.b.name,e.c.name,e.d.name].map(T=>r.getCpuValue(T));if(h.some(T=>!T))return;let g=h.map(T=>`${T.x},${T.y},${T.z}`).join(\"|\");if(g===_)return;_=g;let x=[\"convA\",\"convB\",\"convC\",\"convD\"];h.forEach((T,S)=>{let A=Mm(T.x,T.y,T.z,n);r.setExtraField(x[S],[A[0],A[1],A[2]])})});let p=Vs(se(ti,\"mixInSpace\",[o.convA,i.member(\"a\"),o.convB,d.member(\"a\"),t]),\"flowRow1\"),f=Vs(se(ti,\"mixInSpace\",[o.convC,l.member(\"a\"),o.convD,c.member(\"a\"),t]),\"flowRow2\");return se(hy[n]??Pm,\"mixPreconvertedColors\",[p.member(\"conv\"),f.member(\"conv\"),p.member(\"alpha\"),f.member(\"alpha\"),s])}return se(lr,\"mixColors\",[Vs(se(lr,\"mixColors\",[i,d,t]),\"flowRow1\"),Vs(se(lr,\"mixColors\",[l,c,t]),\"flowRow2\"),s])}}function z5(e,t){return typeof e==\"number\"?nt(e):e instanceof ai||e.kind!==\"ctx\"?En(e,t):t.ctx[e.name]}function fI(e){return{uv:e.uvContext??e.ctx.uv,viewport:e.effectiveViewportSize??e.ctx.viewportSize}}function G5(e,t){return t.propValues[e.name]}function sA(e){return t=>{let{uv:s,viewport:r}=fI(t),o=it(t),n=se(iF,\"colorWheelT\",[s,r,z5(e.direction,t),z5(e.scale,t),o]);if((G5(e.mode,t)??\"rainbow\")===\"rainbow\")return se(dF,\"colorWheelRainbow\",[n]);let i=P(se(lF,\"colorWheelPhase\",[n]),\"wheelPhase\"),d=i.member(\"x\"),l=i.member(\"y\"),c=Xo[G5(e.space,t)??0]??lr;return se(cF,\"colorWheelSelect\",[se(c,\"mixColors\",[Se(e.palette.a,t),Se(e.palette.b,t),d]),se(c,\"mixColors\",[Se(e.palette.b,t),Se(e.palette.c,t),d]),se(c,\"mixColors\",[Se(e.palette.c,t),Se(e.palette.a,t),d]),l])}}function Va(e,t){return typeof e==\"function\"?e(t):Se(e,t)}function rA(e){let t=new WeakMap;return s=>{let r=t.get(s);if(r)return r;let o=e(s);return t.set(s,o),o}}function _l(e){return rA(t=>se(LS(e.space,t),\"mixColors\",[Va(e.fill,t),Va(e.stroke,t),Va(e.mask,t)]))}function oA(e,t){return s=>Ss(Va(e,s).member(\"rgb\"),Va(t,s))}function nA(e){return t=>Va(e,t).member(\"a\")}function aA(e,t){return s=>Va(e,s).mul(Va(t,s))}function iA(e){return t=>{let{uv:s,viewport:r}=Mn(t);return se(EF,\"stripesMask\",[s,r,Se(e.angle,t),Se(e.density,t),it(t),Se(e.offset,t),Se(e.balance,t),Se(e.softness,t)])}}function dA(e){return t=>{let{uv:s,viewport:r}=Mn(t);return se(PF,\"ripplesMask\",[Se(e.center,t),Se(e.frequency,t),Se(e.softness,t),Se(e.thickness,t),Se(e.phase,t),it(t),s,r])}}function lA(e){let t=rA(s=>{let{uv:r,viewport:o}=Mn(s);return P(se(MF,\"fallingLinesField\",[r,o,Se(e.angle,s),Se(e.density,s),Se(e.speedVariance,s),Se(e.trailLength,s),Se(e.strokeWidth,s),Se(e.rounding,s),Se(e.balance,s),it(s)]),\"fallingField\")});return{mask:s=>t(s).member(\"x\"),fade:s=>t(s).member(\"y\")}}function cA(e){let t=C(m(e.along,e.frequency),m(e.time,e.speed));return e.phase!==void 0&&(t=C(t,e.phase)),rs(C(m(Zt(t),.5),.5),e.sharpness)}function uA(e){let t=e.bulge?.tilt??.2,s=e.bulge?.drop??.1,r=Vs(Fe(0,e.radius,e.dist),\"domeSlope\"),o=C(r,t);return Jr(Ze(m(e.delta.member(\"x\"),o),m(e.delta.member(\"y\"),o),ae(1,m(r,s))))}function _A(e){return rs(ht(0,jo(m(e.light,-1),e.normal).member(\"z\")),e.gloss)}function Ks(e,t){return typeof e==\"number\"?nt(e):e instanceof ai||e.kind!==\"ctx\"?En(e,t):t.ctx[e.name]}function pl(e){return{uv:e.uvContext??e.ctx.uv,viewport:e.effectiveViewportSize??e.ctx.viewportSize}}function pA(e){return t=>{let{uv:s,viewport:r}=pl(t);return se(jD,\"radialFrame\",[s,r,Se(e,t)])}}function mA(e){return t=>{let{uv:s,viewport:r}=pl(t);return se(yF,\"godraysFrame\",[s,r,Se(e,t)])}}function Wm(e,t,s){return r=>t(s?Vs(e(r),s):e(r),r)}function fA(e,...t){return(s,r)=>t.reduce((o,n)=>o.mul(n(s,r)),e(s,r))}function vA(e){return(t,s)=>se(HD,\"softRayLobes\",[t.member(\"y\"),Ks(e.count,s),it(s).mul(e.spin),Ks(e.softness,s)])}function hA(e){return(t,s)=>se(XD,\"featherMask\",[t.member(\"x\"),Ks(e.radius,s),Ks(e.feather,s)])}function yA(e){return(t,s)=>se(gF,\"godraysRayStack\",[t,it(s),Ks(e.density,s),Ks(e.intensity,s),Ks(e.spotty,s)])}function gA(e){return t=>{let{uv:s,viewport:r}=pl(t);return se(NF,\"flareFrame\",[s,r,it(t),Se(e.position,t),Ks(e.intensity,t),Ks(e.edgeFade,t)])}}function xA(e){return(t,s,r,o)=>{let{uv:n}=pl(o);return se(qF,\"lensFlareGhost\",[n,t.member(\"aspect\"),t.member(\"lightPos\"),t.member(\"flareAxis\"),it(o),Ks(e.spread,o),Ks(e.chroma,o),Ks(e.intensity,o),Ss(...s),Ss(...r)])}}function bA(e){return(t,s)=>{let{uv:r}=pl(s);return se(XF,\"flareHalo\",[r,t.member(\"aspect\"),t.member(\"lightPos\"),it(s),Ks(e.intensity,s),Ks(e.radius,s),Ks(e.chroma,s),Ks(e.softness,s)])}}function wA(e){return(t,s)=>se(HF,\"flareStarburst\",[t.member(\"lightAngle\"),t.member(\"flareAxis\"),t.member(\"aspect\"),it(s),t.member(\"lightDist\"),Ks(e.points,s),Ks(e.intensity,s)])}function TA(e){return(t,s)=>{let{uv:r}=pl(s);return se(jF,\"flareStreak\",[r,t.member(\"lightPos\"),Ks(e.length,s),Ks(e.intensity,s)])}}function SA(e){return(t,s)=>se(KF,\"flareGlare\",[t.member(\"lightDist\"),Ks(e.size,s),Ks(e.intensity,s)])}function AA(e){return(t,s)=>se(ZF,\"flareCore\",[t.member(\"lightDist\"),Ks(e.intensity,s)])}function EA(e,t){return se(QF,\"flareComposite\",[e,t.member(\"masterFade\")])}function a0(e,...t){return t.reduce((s,r)=>s.add(r),e)}function PA(e){return t=>{let s=e.hint?Vs(e.coverage(t),e.hint):e.coverage(t),r=Se(e.color,t),o=Se(e.background,t);return Ss(wn(o.member(\"rgb\"),r.member(\"rgb\"),s),wn(o.member(\"a\"),r.member(\"a\"),s))}}function MA(e){return t=>se(xF,\"coverageOver\",[Se(e.color,t),Se(e.background,t),e.coverage(t)])}function ml(e,t){let s=(n,i,d)=>{if(i!==void 0){if(n===void 0)throw new Error(`std: waves() schedule uses axis '${d}' but the axes object doesn't provide it`);return i===1?n:m(n,i)}},r=n=>{let i=[s(e.x,n.x,\"x\"),s(e.y,n.y,\"y\"),s(e.t,n.t,\"t\"),n.phase].filter(d=>d!==void 0);if(i.length===0)throw new Error(\"std: a wave needs at least one axis coefficient or phase\");return Zt(i.reduce((d,l)=>C(d,l)))},o=t.map(n=>{if(n.waves.length===0)throw new Error(\"std: a waves() term needs at least one wave\");let i=n.waves.map(r).reduce((d,l)=>m(d,l));return n.weight===void 0||n.weight===1?i:m(i,n.weight)});if(o.length===0)throw new Error(\"std: waves() needs at least one term\");return o.reduce((n,i)=>C(n,i))}function kA(e){return ml({x:e.along,t:e.time},e.waves.map(t=>({waves:[{x:t.freq,t:t.speed,phase:t.phase}],weight:t.amount})))}function $A(e,t){return(s,r)=>{let{viewport:o}=Mn(s);return e(s,se(FD,\"aspectScaledDomain\",[r,o,Se(t.scale,s),Se(t.seed,s)]))}}function CA(e){return(t,s)=>se(RD,\"gabor12\",[s,Se(e.frequency,t),it(t)])}function RA(e){return(t,s)=>se(UD,\"signedToUnit\",[e(t,s)])}function UA(e,t){return(s,r)=>se(MB,\"noiseToneKColor\",[e(s,r),t?.contrast?Se(t.contrast,s):nt(0),t?.balance?Se(t.balance,s):nt(0)])}function vI(e,t){return(s,r)=>se(GF,\"worleyTone\",[e(s,r),Se(t.contrast,s),Se(t.balance,s)])}function zA(e){return _n((s,r)=>{let{viewport:o}=Mn(s);return se(RF,\"fbmNormalize\",[se(CF,\"fractalSum\",[se($F,\"rotatedCenteredDomain\",[r,o,Se(e.angle,s)]),Se(e.detail,s),Se(e.contrast,s),it(s),Se(e.seed,s),Se(e.octaves,s)])])},eo(e.space))}function GA(e){return _n(vI((s,r)=>{let{viewport:o}=Mn(s),n=DF(s.propValues[e.mode.name]),i=LF(s.propValues[e.distance.name]),d=Math.max(1,Math.min(4,Math.round(s.propValues[e.octaves.name]??1)));return se(zF,\"worleyNormalize\",[se(UF,\"worleyCells\",[se(mT,\"aspectPlane\",[r,o]),Se(e.scale,s),Se(e.seed,s),Se(e.jitter,s),Se(e.lacunarity,s),Se(e.persistence,s),it(s),nt(d),nt(i),nt(n)]),nt(FF(n,i))])},{contrast:e.contrast,balance:e.balance}),eo(e.space))}function DA(e){return(t,s)=>{let{viewport:r}=Mn(t);return se(BF,\"voronoiNearest2\",[se(mT,\"aspectPlane\",[s,r]).mul(Se(e.scale,t)),it(t),Se(e.seed,t)])}}function LA(e,t){return(s,r)=>se(IF,\"cellFill\",[e(s,r),Se(t.edgeIntensity,s)])}function FA(e,t){return(s,r)=>se(YF,\"cellBorders\",[e(s,r),Se(t.softness,s),Se(t.scale,s)])}function BA(e,t,s){return r=>{let{uv:o}=Mn(r),n=Vs(e(r),\"base\");return Ss(wn(Se(s.color,r).member(\"rgb\"),n.member(\"rgb\"),t(r,o)),n.member(\"a\"))}}function IA(e,...t){return s=>{let r=e(s),o=r.member(\"rgb\");for(let n of t)o=n(o,s);return Ss(o,r.member(\"a\"))}}function YA(e){return(t,s)=>pT(t,e.space?Qc(s.propValues[e.space.name]):0)}function WA(){return e=>se(WF,\"toneLift\",[e])}function OA(e){return t=>{let{uniforms:s}=t,{uv:r,viewport:o}=Mn(t),n=it(t),i=it(t,void 0,\"_animTime_color\"),d=Ss(Se(e.amplitude,t),Se(e.frequency,t),Se(e.count,t),Se(e.width,t)),l=Ss(Se(e.softness,t),Se(e.spread,t),Se(e.colorScale,t),Se(e.colorVariance,t)),c=Ss(Se(e.pinEdges,t),n,i,s.stopCount);return se(OF,\"ribbonsField\",[r,o,Se(e.from,t),Se(e.to,t),d,l,c,s.colorsArray,s.positionsArray,s.convertedColorsArray])}}var VA=fT,NA=vT;var{sdfSpaceUV:hI,offsetUV:C_}=uS,{ANALYTIC_SDF_EXTRA_FIELDS:yI}=Cm,{createVolumetricFieldComputeNode:gI,resolveShapeFieldSampler:xI,VOLUMETRIC_FIELD_EXTRA_FIELDS:bI}=ni,wI=0;function sr(e,t,s,r=\"guarded\",o=[]){let n=wI++;return new Ts(i=>i.memo(`guard:${n}`,()=>{let d=i.freshLocal(r),l=e._emit(i),c=s._emit(i);for(let f of o)f._emit(i);let _=[],p=t._emit({external:(f,h)=>i.external(f,h),statement:f=>_.push(f),freshLocal:f=>i.freshLocal(f),memo:(f,h)=>i.memo(f,h)});return i.statement(`var ${d} = ${c};`),i.statement(`if (${l}) {\n ${_.join(`\n `)}\n ${d} = ${p};\n}`),d}))}function Yr(e,t){let s=se(xT,\"outsideShape\",[e,t]);return new Ts(r=>`(!(${s._emit(r)}))`)}function Bs(e){let t=e.pattern??\"none\",s=e.chord??\"span\",r=e.stencil??{kind:\"forward\",eps:.01},o=i=>gI(i,()=>i.getCpuValue(\"shape\"),t,s),n=i=>{let{childNode:d,computeOutputs:l,convertToTexture:c,uniforms:_,ctx:p}=i,f;if(e.child===\"required\"){if(!d)return _s;f=l?.childTexture??c(d)}let{sampler:h,gradSampler:g,texelSampler:x,volumetric:T,bakedGradients:S}=xI(i,{patternMode:t,gradSampler:e.gradSampler??\"fast\",bakedGradients:e.bakedGradients??\"none\"}),A={sampler:h,gradSampler:g,texelSampler:x,volumetric:T,bakedGradients:S,volFlag:nt(T?1:0),childTexture:f};if(r!==\"none\"){let E=e.placeUV?e.placeUV(i):p.uv;if(A.sdfUV=P(se(hI,\"sdfSpaceUV\",[_.center,_.scale,_.rotation,E,p.aspect]),\"sdfUV\"),A.surf0=(e.centreTap===\"fast\"?g:h)(A.sdfUV),r!==\"centre\"){let{kind:M,eps:$}=r;A.surfX=g(se(C_,\"offsetUV\",[A.sdfUV,nt($),nt(0)])),M===\"central\"&&(A.surfL=g(se(C_,\"offsetUV\",[A.sdfUV,nt(-$),nt(0)]))),A.surfY=g(se(C_,\"offsetUV\",[A.sdfUV,nt(0),nt($)])),M===\"central\"&&(A.surfD=g(se(C_,\"offsetUV\",[A.sdfUV,nt(0),nt(-$)])))}}return e.surface(A,i)};return{extraFields:{...bI,...yI},compute:o,gpu:{fragment:n}}}function to(e,t,s={}){let{ctx:r}=t,o=P(e.surf0,\"s0\"),n=P(De(1,r.viewportSize.member(\"y\")),\"pxH\"),i=P(s.scale?De(o.member(\"x\"),s.scale):o.member(\"x\"),\"sdf\"),d=De(r.viewportSize.member(\"x\"),r.viewportSize.member(\"y\"));return{s0:o,sX:e.surfX?P(e.surfX,\"sX\"):void 0,sY:e.surfY?P(e.surfY,\"sY\"):void 0,sdf:i,pxH:n,aspect:d}}function fl(e,t,s){let r=Gt(s.eps??.01),o=s.hint??\"nGeo\";if(e.volumetric)return P(se(My,\"volumetricNormal\",[t.s0,t.sX,t.sY,r,Gt(s.sharpness??5)]),o);let n=Le(De(mo(t.sdf),ht(s.bevelWidth,.003)),0,1);return P(se(yT,\"bevelledFlatNormal\",[se(Py,\"fieldGradient\",[t.s0,t.sX,t.sY,r]),se(cS,\"bevelSin\",[n,s.bevelShape])]),o)}function zo(e,t,s={}){return P(se(gT,\"patternCoords\",[s.uv??e.sdfUV,t.s0,e.volFlag]),\"pat\")}function ii(e,t=.01){return P(se(Py,\"fieldGradient\",[e.s0,e.sX,e.sY,Gt(t)]),\"grad\")}function di(e,t,s=.6){return P(se(bT,\"perspectiveViewRay\",[e.ctx.uv,t.aspect,Gt(s)]),\"viewI\")}function Om(e,t){return P(ae(1,Le(mo(Gs(e,t)),0,1)),\"grazing\")}function Vm(e,t,s){let r=o=>typeof o==\"number\"?Gt(o):o;return se(lB,\"studio5Softbox\",[e,t,s.rotation.member(\"x\"),s.rotation.member(\"y\"),r(s.keyRadius),r(s.drift),r(s.strength),Gt(s.skyGain)])}function so(e,t){return se(eB,\"silhouetteAlpha\",[e.sdf,t,e.pxH])}function Nm(e){return se(sT,\"tonemapNeutral\",[e])}function li(e,t,s,r=\"n\"){return P(se(nB,\"nudgeNormal\",[e,t,s]),r)}function vl(e,t=5,s=\"nGeo\"){return P(se(My,\"volumetricNormal\",[e.s0,e.sX,e.sY,Gt(.01),Gt(t)]),s)}function pn(e,t,s=\"kl\"){return TI(e.member(\"x\"),e.member(\"y\"),t,s)}function TI(e,t,s,r=\"kl\"){return P(se(tB,\"keyLight\",[e,t,Gt(s)]),r)}function ci(e){return P(se(sB,\"grazingView\",[e]),\"grazing\")}function qm(e,t,s){return se(rB,\"sharpGlint\",[e,t,s])}function Xm(e,t){return se(oB,\"clampedPerlinGrad\",[e,typeof t==\"number\"?Gt(t):t])}function Kd(e,t){return se(aB,\"opticalThickness\",[e.sdf,t.volFlag])}function Hm(e,t){return se(iB,\"beerLambert\",[e,t])}function jm(e,t){return se(dB,\"flowWarpOffset\",[e,t])}function $r(e,t){return se($i,\"mxNoiseFloat2\",[Je(e,t)])}function ro(e){return se($i,\"mxNoiseFloat2\",[e])}function Tn(e){return se(Po,\"mxNoiseFloat3\",[e])}function qA(e,t){return se(Vc,\"cosinePalette\",[e,Gt(t[0]),Gt(t[1]),Gt(t[2])])}function SI(e){return se(fy,\"mxWorleyNoiseFloat2Pub\",[e,Gt(1)])}function hl(e,t){return se(ms,\"hash12\",[Je(e,t)])}function XA(e,t){return se(uo,\"value12\",[Je(e,t)])}function HA(e){let t=P(e.gradSampler(Je(.5,.5)),\"s0C\");return{x:P(m(mo(t.member(\"y\")),e.volFlag),\"rotSenseX\"),y:P(m(mo(t.member(\"z\")),e.volFlag),\"rotSenseY\")}}function jA(e,t,s){let r=P(ae(e.sdfUV.member(\"x\"),.5),\"cx\"),o=P(ae(e.sdfUV.member(\"y\"),.5),\"cy\");return{x:P(C(r,m(t.member(\"x\"),s)),\"bentX\"),y:P(C(o,m(t.member(\"y\"),s)),\"bentY\"),centered:{x:r,y:o}}}function Km(e,t){return C(t.r0??.04,m(rs(e,Gt(t.power??5)),t.gain))}function i0(e,t,s){return C(ae(1,s.amount),m(Zt(C(m(e,s.rate),m(t,s.spread))),s.amount))}function d0(e,t){let s=t.hint??\"stars\",r=P(C(m(ro(m(e,t.variationFreq)),.5),.5),`${s}V`),o=t.shimmer?t.shimmer(r):Gt(1),n=P(m(m(m(Fe(C(t.radius[0],m(r,t.radius[1])),5e-4,SI(e)),Fe(t.keep[0],t.keep[1],r)),m(C(t.brightness[0],m(m(r,r),t.brightness[1])),o)),t.gain),s);return{glint:n,variation:r,rgb:t.tint?m(dt(Ze(...t.tint.from),Ze(...t.tint.to),Dt(r)),Dt(m(n,t.tint.gain))):void 0}}function KA(e,t){let s=t.softness?P(t0(dt(2,-2,t.softness)),\"lobeWiden\"):void 0,r=o=>s?m(o,s):Gt(o);return m(C(m(rs(e,r(t.core[0])),t.core[1]),m(rs(e,r(t.halo[0])),t.halo[1])),t.gain)}function ZA(e,t,s){let r=P(m(e.s0.member(\"w\"),t.volFlag),\"rayEntry\"),o=P(s.lengthScale===void 0?Kd(e,t):m(Kd(e,t),s.lengthScale),\"rayLen\"),n=s.view?P(m(s.view.member(\"x\"),s.shear??1),\"rayShearX\"):void 0,i=s.view?P(m(s.view.member(\"y\"),s.shear??1),\"rayShearY\"):void 0;return{entry:r,length:o,at(d){return{x:n?C(s.origin.x,m(n,d)):s.origin.x,y:i?C(s.origin.y,m(i,d)):s.origin.y}}}}function l0(e,t){let s=t.hint??\"plane\",r=P(C(e.entry,m(e.length,t.depth)),`${s}Z`),o=e.at(r);if(!t.pan)return{x:o.x,y:o.y,z:r};let n=t.panRate??1;return{x:C(o.x,m(t.pan.x,n)),y:C(o.y,m(t.pan.y,n)),z:r}}function QA(e,t){let s=t.hint??\"\",r=t.drift,o=t.seed,n=(p,f,h,g)=>{let x=f===void 0?m(p,t.frequency):m(p,m(t.frequency,f));return r&&(x=C(x,h===1?r:m(r,h))),o&&(x=C(x,g===1?o:m(o,g))),x},i=P(Ze(n(e.x,void 0,1,1),n(e.y,void 0,-.7,.53),n(e.z,1.25,1.3,.79)),`q${s}`),d=P(Tn(r?C(m(i,.5),Ze(m(r,1.4),0,m(r,-.9))):m(i,.5)),`warp${s}`),l=t.billow?P(C(i,m(Ze(d,m(d,-.73),m(d,.41)),t.billow)),`qw${s}`):i,c=P(Tn(C(m(l,2.13),Ze(5.2,1.3,8.4))),`mid${s}`),_=P(Tn(C(m(l,4.31),Ze(9.1,3.7,1.2))),`fine${s}`);return{density:P(m(C(C(Tn(l),m(c,.5)),m(_,.27)),.57),`fbm${s}`),mid:c,fine:_}}function JA(e,t){let s=Dt(1),r=Ze(0,0,0);for(let o=0;o<e.steps;o++){let n=(o+.5)/e.steps,i=P(C(e.entry,m(e.length,e.jitter?C(n,e.jitter):n)),`z${o}`),{emit:d,absorb:l}=t({i:o,t:n,z:i}),c=m(d,s);r=C(r,e.emissionGain?m(c,Dt(e.emissionGain)):c),s=P(m(s,Fs(mo(l))),`transmit${o}`)}return{color:P(r,e.hint??\"marchAcc\"),transmittance:s}}function eE(e,t){let s,r;if(e.forEach((o,n)=>{let{value:i,weight:d}=t(o,n),l=m(i,d);s=s===void 0?l:C(s,l),r=r===void 0?d:C(r,d)}),!s||!r)throw new Error(\"std: layered([]) needs at least one layer\");return{weightedSum:s,totalWeight:r}}function tE(e){let t;for(let s of e){let r=s instanceof Object&&\"paint\"in s?s:{paint:s},o=r.paint;r.opacity!==void 0&&(o=m(o,r.opacity)),r.behind&&(o=m(o,r.behind)),t=t===void 0?o:r.blend===\"screen\"?ae(C(t,o),m(t,o)):C(t,o)}if(!t)throw new Error(\"std: layers([]) needs at least one layer\");return t}function sE(e,t){let{uv:s,viewport:r}=Mn(t);return se(LD,\"rgbDither\",[e,s,r,it(t)])}function Xl(e,t){return typeof e==\"number\"?nt(e):e instanceof ai||e.kind!==\"ctx\"?En(e,t):t.ctx[e.name]}function AI(e,t,s){let r=Se(e,s);return Ss(r.member(\"rgb\"),r.member(\"a\").mul(t))}function rE(e){return t=>{let{uv:s,viewport:r}=Mn(t),o=se(VF,\"sineWaveMask\",[s,r,Xl(e.angle,t),Se(e.position,t),Xl(e.frequency,t),Xl(e.amplitude,t),Xl(e.thickness,t),Xl(e.softness,t),it(t)]);return AI(e.color,o,t)}}var{sdfSpaceUV:aX}=uS,EI=\"rgba16float\",c0=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({center:u,lightPos:zt(b,8),lightColor:zt(b,8),lightCount:a,scale:a,rotation:a,aspect:a,reach:a,wrap:a,lightRange:a,shadowSoftness:a,eps:a,res:a,frame:a,rays:a,saRadius:a,saSides:a,saRounding:a,saInnerRatio:a,saRotation:a,saHeight:a,saOffset:a,saAperture:a,vfOriginX:a,vfOriginY:a,vfSpanX:a,vfSpanY:a,vfActiveRes:a,vfRBound:a}),\"IrradianceParams\"),Ki={storageTexture:an(EI,\"write-only\")},iX=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({params:{uniform:c0},outTex:Ki}),\"irradianceAnalyticLayout\"),kf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({params:{uniform:c0},outTex:Ki,sdfSource:{texture:Hs(a)},samp:{sampler:\"filtering\"}}),\"irradianceSvgLayout\"),R_=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({params:{uniform:c0},outTex:Ki,silhouetteTex:{texture:Hs(a)},samp:{sampler:\"filtering\"}}),\"irradianceFieldLayout\"),$f=1e3,tm=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return w(ue(t,$f),__tsover_mul($f,-1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"v\"}],body:[0,[[10,[6,\"std.max\",[[6,\"std.min\",[\"v\",\"FAR\"]],[1,\"FAR\",\"*\",[4,\"-\",[5,\"1\"]]]]]]]]},externals:{\"std.max\":()=>w,\"std.min\":()=>ue,FAR:()=>$f}})&&e.f)({})).$name(\"irradianceSane\"),D5=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=z(t,u(0,0),u(1,1));return te(t.sub(s))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"c\",[6,\"std.clamp\",[\"uv\",[6,\"d.vec2f\",[[5,\"0\"],[5,\"0\"]]],[6,\"d.vec2f\",[[5,\"1\"],[5,\"1\"]]]]]],[10,[6,\"std.length\",[[6,[7,\"uv\",\"sub\"],[\"c\"]]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec2f\":()=>u,\"std.length\":()=>te}})&&e.f)({})).$name(\"irradianceBeyondSquare\");var dX=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ip(kf.$.sdfSource,kf.$.samp,t,a(0)).x,r=D5(t);return tm(F(s,w(r,__tsover_sub(s,r)),r>0))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"border\",[7,[6,\"std.textureSampleLevel\",[[7,[7,\"irradianceSvgLayout\",\"$\"],\"sdfSource\"],[7,[7,\"irradianceSvgLayout\",\"$\"],\"samp\"],\"uv\",[6,\"d.f32\",[[5,\"0\"]]]]],\"x\"]],[13,\"beyond\",[6,\"beyondSquare\",[\"uv\"]]],[10,[6,\"sane\",[[6,\"std.select\",[\"border\",[6,\"std.max\",[\"beyond\",[1,\"border\",\"-\",\"beyond\"]]],[1,\"beyond\",\">\",[5,\"0\"]]]]]]]]]},externals:{\"std.textureSampleLevel\":()=>ip,irradianceSvgLayout:()=>kf,\"d.f32\":()=>a,beyondSquare:()=>D5,sane:()=>tm,\"std.select\":()=>F,\"std.max\":()=>w}})&&e.f)({})).$name(\"irradianceSvgField\"),lX=y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=R_.$.params,r=z(t.x,s.vfOriginX,__tsover_add(s.vfOriginX,s.vfSpanX)),o=z(t.y,s.vfOriginY,__tsover_add(s.vfOriginY,s.vfSpanY)),n=te(u(__tsover_sub(t.x,r),__tsover_sub(t.y,o))),i=__tsover_sub(te(u(__tsover_sub(t.x,.5),__tsover_sub(t.y,.5))),s.vfRBound),d=u(__tsover_div(__tsover_sub(r,s.vfOriginX),s.vfSpanX),__tsover_div(__tsover_sub(o,s.vfOriginY),s.vfSpanY)),l=ip(R_.$.silhouetteTex,R_.$.samp,d,a(0)),c=__tsover_mul(l.z,l.w);return tm(F(c,w(w(n,i),__tsover_sub(c,n)),n>0))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"}],body:[0,[[13,\"p\",[7,[7,\"irradianceFieldLayout\",\"$\"],\"params\"]],[13,\"cx\",[6,\"std.clamp\",[[7,\"uv\",\"x\"],[7,\"p\",\"vfOriginX\"],[1,[7,\"p\",\"vfOriginX\"],\"+\",[7,\"p\",\"vfSpanX\"]]]]],[13,\"cy\",[6,\"std.clamp\",[[7,\"uv\",\"y\"],[7,\"p\",\"vfOriginY\"],[1,[7,\"p\",\"vfOriginY\"],\"+\",[7,\"p\",\"vfSpanY\"]]]]],[13,\"outside\",[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",\"cx\"],[1,[7,\"uv\",\"y\"],\"-\",\"cy\"]]]]]],[13,\"circle\",[1,[6,\"std.length\",[[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"uv\",\"y\"],\"-\",[5,\"0.5\"]]]]]],\"-\",[7,\"p\",\"vfRBound\"]]],[13,\"tuv\",[6,\"d.vec2f\",[[1,[1,\"cx\",\"-\",[7,\"p\",\"vfOriginX\"]],\"/\",[7,\"p\",\"vfSpanX\"]],[1,[1,\"cy\",\"-\",[7,\"p\",\"vfOriginY\"]],\"/\",[7,\"p\",\"vfSpanY\"]]]]],[13,\"sil\",[6,\"std.textureSampleLevel\",[[7,[7,\"irradianceFieldLayout\",\"$\"],\"silhouetteTex\"],[7,[7,\"irradianceFieldLayout\",\"$\"],\"samp\"],\"tuv\",[6,\"d.f32\",[[5,\"0\"]]]]]],[13,\"inDomain\",[1,[7,\"sil\",\"z\"],\"*\",[7,\"sil\",\"w\"]]],[13,\"beyond\",[6,\"std.max\",[[6,\"std.max\",[\"outside\",\"circle\"]],[1,\"inDomain\",\"-\",\"outside\"]]]],[10,[6,\"sane\",[[6,\"std.select\",[\"inDomain\",\"beyond\",[1,\"outside\",\">\",[5,\"0\"]]]]]]]]]},externals:{irradianceFieldLayout:()=>R_,\"std.clamp\":()=>z,\"std.length\":()=>te,\"d.vec2f\":()=>u,\"std.textureSampleLevel\":()=>ip,\"d.f32\":()=>a,\"std.max\":()=>w,sane:()=>tm,\"std.select\":()=>F}})&&e.f)({})).$name(\"irradianceVolumetricField\"),oE=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({vfOriginX:a,vfOriginY:a,vfSpanX:a,vfSpanY:a,vfActiveRes:a,vfRBound:a,res:a,step:a}),\"SilhouetteParams\"),kd=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({params:{uniform:oE},fieldTex:{texture:Hs(a),sampleType:\"unfilterable-float\"},out:Ki}),\"silhouetteSeedLayout\"),Hl=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({params:{uniform:oE},src:{texture:Hs(a)},out:Ki}),\"silhouetteStepLayout\"),{fieldSampleFastArg:L5}=Fy(),vd=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=kd.$.params,o=L5(u(__tsover_add(r.vfOriginX,__tsover_mul(__tsover_div(__tsover_add(t,.5),r.res),r.vfSpanX)),__tsover_add(r.vfOriginY,__tsover_mul(__tsover_div(__tsover_add(s,.5),r.res),r.vfSpanY))),kd.$.fieldTex,r.vfOriginX,r.vfOriginY,r.vfSpanX,r.vfSpanY,r.vfActiveRes,r.vfRBound).x;return F(a(1),a(-1),o<0)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"tx\"},{type:\"i\",name:\"ty\"}],body:[0,[[13,\"p\",[7,[7,\"silhouetteSeedLayout\",\"$\"],\"params\"]],[13,\"uv\",[6,\"d.vec2f\",[[1,[7,\"p\",\"vfOriginX\"],\"+\",[1,[1,[1,\"tx\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanX\"]]],[1,[7,\"p\",\"vfOriginY\"],\"+\",[1,[1,[1,\"ty\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanY\"]]]]]],[13,\"v\",[7,[6,\"fieldSampleFastArg\",[\"uv\",[7,[7,\"silhouetteSeedLayout\",\"$\"],\"fieldTex\"],[7,\"p\",\"vfOriginX\"],[7,\"p\",\"vfOriginY\"],[7,\"p\",\"vfSpanX\"],[7,\"p\",\"vfSpanY\"],[7,\"p\",\"vfActiveRes\"],[7,\"p\",\"vfRBound\"]]],\"x\"]],[10,[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[1,\"v\",\"<\",[5,\"0\"]]]]]]]},externals:{silhouetteSeedLayout:()=>kd,\"d.vec2f\":()=>u,fieldSampleFastArg:()=>L5,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})).$name(\"silhouetteInside\"),cX=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=kd.$.params,o=a(t),n=a(s),i=vd(o,n),d=__tsover_sub(r.res,1),l=vd(w(__tsover_sub(o,1),0),n),c=vd(ue(__tsover_add(o,1),d),n),_=vd(o,w(__tsover_sub(n,1),0)),p=vd(o,ue(__tsover_add(n,1),d)),f=l!==i||c!==i||_!==i||p!==i,h=__tsover_add(r.vfOriginX,__tsover_mul(__tsover_div(__tsover_add(o,.5),r.res),r.vfSpanX)),g=__tsover_add(r.vfOriginY,__tsover_mul(__tsover_div(__tsover_add(n,.5),r.res),r.vfSpanY)),x=F(b(-1,-1,6e4,i),b(h,g,0,i),f);Co(kd.$.out,He(t,s),x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"p\",[7,[7,\"silhouetteSeedLayout\",\"$\"],\"params\"]],[13,\"fx\",[6,\"d.f32\",[\"cx\"]]],[13,\"fy\",[6,\"d.f32\",[\"cy\"]]],[13,\"s0\",[6,\"silhouetteInside\",[\"fx\",\"fy\"]]],[13,\"maxT\",[1,[7,\"p\",\"res\"],\"-\",[5,\"1\"]]],[13,\"sL\",[6,\"silhouetteInside\",[[6,\"std.max\",[[1,\"fx\",\"-\",[5,\"1\"]],[5,\"0\"]]],\"fy\"]]],[13,\"sR\",[6,\"silhouetteInside\",[[6,\"std.min\",[[1,\"fx\",\"+\",[5,\"1\"]],\"maxT\"]],\"fy\"]]],[13,\"sD\",[6,\"silhouetteInside\",[\"fx\",[6,\"std.max\",[[1,\"fy\",\"-\",[5,\"1\"]],[5,\"0\"]]]]]],[13,\"sU\",[6,\"silhouetteInside\",[\"fx\",[6,\"std.min\",[[1,\"fy\",\"+\",[5,\"1\"]],\"maxT\"]]]]],[13,\"boundary\",[3,[3,[3,[1,\"sL\",\"!==\",\"s0\"],\"||\",[1,\"sR\",\"!==\",\"s0\"]],\"||\",[1,\"sD\",\"!==\",\"s0\"]],\"||\",[1,\"sU\",\"!==\",\"s0\"]]],[13,\"sx\",[1,[7,\"p\",\"vfOriginX\"],\"+\",[1,[1,[1,\"fx\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanX\"]]]],[13,\"sy\",[1,[7,\"p\",\"vfOriginY\"],\"+\",[1,[1,[1,\"fy\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanY\"]]]],[13,\"seed\",[6,\"std.select\",[[6,\"d.vec4f\",[[4,\"-\",[5,\"1\"]],[4,\"-\",[5,\"1\"]],[5,\"60000\"],\"s0\"]],[6,\"d.vec4f\",[\"sx\",\"sy\",[5,\"0\"],\"s0\"]],\"boundary\"]]],[6,\"std.textureStore\",[[7,[7,\"silhouetteSeedLayout\",\"$\"],\"out\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],\"seed\"]]]]},externals:{silhouetteSeedLayout:()=>kd,\"d.f32\":()=>a,silhouetteInside:()=>vd,\"std.max\":()=>w,\"std.min\":()=>ue,\"std.select\":()=>F,\"d.vec4f\":()=>b,\"std.textureStore\":()=>Co,\"d.vec2u\":()=>He}})&&e.f)({})).$name(\"silhouetteSeed\"),uX=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=Hl.$.params,o=a(t),n=a(s),i=u(__tsover_add(r.vfOriginX,__tsover_mul(__tsover_div(__tsover_add(o,.5),r.res),r.vfSpanX)),__tsover_add(r.vfOriginY,__tsover_mul(__tsover_div(__tsover_add(n,.5),r.res),r.vfSpanY))),d=at(Hl.$.src,He(t,s),0),l=b(d),c=__tsover_sub(r.res,1);for(let _=-1;_<=1;_++)for(let p=-1;p<=1;p++){let f=z(__tsover_add(o,__tsover_mul(a(p),r.step)),0,c),h=z(__tsover_add(n,__tsover_mul(a(_),r.step)),0,c),g=at(Hl.$.src,He(Y(f),Y(h)),0);if(g.x>=0){let x=te(g.xy.sub(i));x<l.z&&(l=b(g.x,g.y,x,l.w))}}Co(Hl.$.out,He(t,s),b(l.x,l.y,l.z,d.w))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"p\",[7,[7,\"silhouetteStepLayout\",\"$\"],\"params\"]],[13,\"tx\",[6,\"d.f32\",[\"cx\"]]],[13,\"ty\",[6,\"d.f32\",[\"cy\"]]],[13,\"here\",[6,\"d.vec2f\",[[1,[7,\"p\",\"vfOriginX\"],\"+\",[1,[1,[1,\"tx\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanX\"]]],[1,[7,\"p\",\"vfOriginY\"],\"+\",[1,[1,[1,\"ty\",\"+\",[5,\"0.5\"]],\"/\",[7,\"p\",\"res\"]],\"*\",[7,\"p\",\"vfSpanY\"]]]]]],[13,\"self\",[6,\"std.textureLoad\",[[7,[7,\"silhouetteStepLayout\",\"$\"],\"src\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],[5,\"0\"]]]],[12,\"best\",[6,\"d.vec4f\",[\"self\"]]],[13,\"maxT\",[1,[7,\"p\",\"res\"],\"-\",[5,\"1\"]]],[14,[12,\"j\",[4,\"-\",[5,\"1\"]]],[1,\"j\",\"<=\",[5,\"1\"]],[102,\"++\",\"j\"],[0,[[14,[12,\"i\",[4,\"-\",[5,\"1\"]]],[1,\"i\",\"<=\",[5,\"1\"]],[102,\"++\",\"i\"],[0,[[13,\"nx\",[6,\"std.clamp\",[[1,\"tx\",\"+\",[1,[6,\"d.f32\",[\"i\"]],\"*\",[7,\"p\",\"step\"]]],[5,\"0\"],\"maxT\"]]],[13,\"ny\",[6,\"std.clamp\",[[1,\"ty\",\"+\",[1,[6,\"d.f32\",[\"j\"]],\"*\",[7,\"p\",\"step\"]]],[5,\"0\"],\"maxT\"]]],[13,\"n\",[6,\"std.textureLoad\",[[7,[7,\"silhouetteStepLayout\",\"$\"],\"src\"],[6,\"d.vec2u\",[[6,\"d.u32\",[\"nx\"]],[6,\"d.u32\",[\"ny\"]]]],[5,\"0\"]]]],[11,[1,[7,\"n\",\"x\"],\">=\",[5,\"0\"]],[0,[[13,\"dist\",[6,\"std.length\",[[6,[7,[7,\"n\",\"xy\"],\"sub\"],[\"here\"]]]]],[11,[1,\"dist\",\"<\",[7,\"best\",\"z\"]],[0,[[2,\"best\",\"=\",[6,\"d.vec4f\",[[7,\"n\",\"x\"],[7,\"n\",\"y\"],\"dist\",[7,\"best\",\"w\"]]]]]]]]]]]]]]]],[6,\"std.textureStore\",[[7,[7,\"silhouetteStepLayout\",\"$\"],\"out\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],[6,\"d.vec4f\",[[7,\"best\",\"x\"],[7,\"best\",\"y\"],[7,\"best\",\"z\"],[7,\"self\",\"w\"]]]]]]]},externals:{silhouetteStepLayout:()=>Hl,\"d.f32\":()=>a,\"d.vec2f\":()=>u,\"std.textureLoad\":()=>at,\"d.vec2u\":()=>He,\"d.vec4f\":()=>b,\"std.clamp\":()=>z,\"d.u32\":()=>Y,\"std.length\":()=>te,\"std.textureStore\":()=>Co}})&&e.f)({})).$name(\"silhouetteStep\");var PI=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({weight:a}),\"AccumulateParams\"),jl=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({sample:{texture:Hs(a)},prev:{texture:Hs(a)},out:Ki,params:{uniform:PI}}),\"accumulateLayout\"),_X=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=He(t,s),o=at(jl.$.sample,r,0),n=at(jl.$.prev,r,0),i=jl.$.params.weight;Co(jl.$.out,r,F(n.add(o.sub(n).mul(i)),o,i>=1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"at\",[6,\"d.vec2u\",[\"cx\",\"cy\"]]],[13,\"s\",[6,\"std.textureLoad\",[[7,[7,\"accumulateLayout\",\"$\"],\"sample\"],\"at\",[5,\"0\"]]]],[13,\"prev\",[6,\"std.textureLoad\",[[7,[7,\"accumulateLayout\",\"$\"],\"prev\"],\"at\",[5,\"0\"]]]],[13,\"w\",[7,[7,[7,\"accumulateLayout\",\"$\"],\"params\"],\"weight\"]],[6,\"std.textureStore\",[[7,[7,\"accumulateLayout\",\"$\"],\"out\"],\"at\",[6,\"std.select\",[[6,[7,\"prev\",\"add\"],[[6,[7,[6,[7,\"s\",\"sub\"],[\"prev\"]],\"mul\"],[\"w\"]]]],\"s\",[1,\"w\",\">=\",[5,\"1\"]]]]]]]]},externals:{\"d.vec2u\":()=>He,\"std.textureLoad\":()=>at,accumulateLayout:()=>jl,\"std.textureStore\":()=>Co,\"std.select\":()=>F}})&&e.f)({})).$name(\"irradianceAccumulate\"),Cf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({src:{texture:Hs(a)},out:Ki}),\"copyLayout\"),pX=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=He(t,s);Co(Cf.$.out,r,at(Cf.$.src,r,0))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"at\",[6,\"d.vec2u\",[\"cx\",\"cy\"]]],[6,\"std.textureStore\",[[7,[7,\"copyLayout\",\"$\"],\"out\"],\"at\",[6,\"std.textureLoad\",[[7,[7,\"copyLayout\",\"$\"],\"src\"],\"at\",[5,\"0\"]]]]]]]},externals:{\"d.vec2u\":()=>He,\"std.textureStore\":()=>Co,copyLayout:()=>Cf,\"std.textureLoad\":()=>at}})&&e.f)({})).$name(\"irradianceCopy\");var{createSdfDataTexture:mX,analyticSubPropValues:fX,parseShapeConfigValue:vX}=Cm,{createVolumetricFieldComputeNode:hX}=ni;var yX=[[1/16,-3/16],[-1/16,3/16],[5/16,1/16],[-3/16,-5/16],[-5/16,5/16],[-7/16,-1/16],[3/16,7/16],[7/16,-7/16]];var MI=Qe;function Ko(e){let t=e.uvContext??e.ctx.uv,s=e.effectiveViewportSize??e.ctx.viewportSize;return{uv:t,viewport:s,aspect:P(De(s.member(\"x\"),s.member(\"y\")),\"aspect\")}}function nE(e){let t=e.uvContext??e.ctx.uv,s=e.ctx.viewportSize;return{uv:t,viewport:s,aspect:P(De(s.member(\"x\"),s.member(\"y\")),\"aspect\")}}function aE(e){return(t,s)=>{let r=Se(e.center,t),{uv:o,aspect:n}=s,i=P(Je(ae(m(o.member(\"x\"),n),m(r.member(\"x\"),n)),ae(o.member(\"y\"),ae(1,r.member(\"y\")))),\"centred\");return{delta:i,dist:P(Ir(i),\"centredDist\")}}}function Zm(e){return(t,s)=>{let r=Se(e.from,t),o=Se(e.to,t),{uv:n,aspect:i}=s,d=m(r.member(\"x\"),i),l=ae(1,r.member(\"y\")),c=P(Je(ae(m(n.member(\"x\"),i),d),ae(n.member(\"y\"),l)),\"rel\"),_=P(Je(ae(m(o.member(\"x\"),i),d),ae(ae(1,o.member(\"y\")),l)),\"toRel\"),p=P(ht(Ir(_),1e-4),\"segLen\"),f=P(De(_,p),\"segDir\");return{along:P(Gs(c,f),\"along\"),across:P(C(m(c.member(\"x\"),mo(f.member(\"y\"))),m(c.member(\"y\"),f.member(\"x\"))),\"across\"),length:p}}}function Wr(e,t=\"dir\"){let s=m(e,MI);return P(Je(kn(s),Zt(s)),t)}function Qm(e,t=\"grain\"){let s=Wr(e,`${t}T`),r=P(Je(mo(s.member(\"y\")),s.member(\"x\")),`${t}P`);return{tangent:s,perp:r,coordsOf(o){return{along:P(Gs(o,s),\"along\"),across:P(Gs(o,r),\"across\")}}}}var gX=y.fn([u,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return u(t.x,__tsover_sub(__tsover_mul(s,2),t.y))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"lineY\"}],body:[0,[[10,[6,\"d.vec2f\",[[7,\"uv\",\"x\"],[1,[1,\"lineY\",\"*\",[5,\"2\"]],\"-\",[7,\"uv\",\"y\"]]]]]]]},externals:{\"d.vec2f\":()=>u}})&&e.f)({})),xX=y.fn([b,b,a,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=w(__tsover_sub(r,o),0),l=w(n,.001),c=w(__tsover_mul(l,i),1e-4),_=__tsover_sub(l,c),p=__tsover_sub(1,ce(_,l,d)),f=__tsover_mul(s.w,p),h=__tsover_sub(1,f);return Z(t,b(s.xyz.mul(p).add(t.xyz.mul(h)),__tsover_add(f,__tsover_mul(t.w,h))),b(ot(o,r)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"original\"},{type:\"i\",name:\"refl\"},{type:\"i\",name:\"uvY\"},{type:\"i\",name:\"lineY\"},{type:\"i\",name:\"distance\"},{type:\"i\",name:\"falloff\"}],body:[0,[[13,\"distBelow\",[6,\"std.max\",[[1,\"uvY\",\"-\",\"lineY\"],[5,\"0\"]]]],[13,\"distanceMax\",[6,\"std.max\",[\"distance\",[5,\"0.001\"]]]],[13,\"fadeWidth\",[6,\"std.max\",[[1,\"distanceMax\",\"*\",\"falloff\"],[5,\"0.0001\"]]]],[13,\"fadeStart\",[1,\"distanceMax\",\"-\",\"fadeWidth\"]],[13,\"visibility\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"fadeStart\",\"distanceMax\",\"distBelow\"]]]],[13,\"effReflA\",[1,[7,\"refl\",\"w\"],\"*\",\"visibility\"]],[13,\"oneMinusReflA\",[1,[5,\"1\"],\"-\",\"effReflA\"]],[13,\"belowRgb\",[6,[7,[6,[7,[7,\"refl\",\"xyz\"],\"mul\"],[\"visibility\"]],\"add\"],[[6,[7,[7,\"original\",\"xyz\"],\"mul\"],[\"oneMinusReflA\"]]]]],[13,\"belowA\",[1,\"effReflA\",\"+\",[1,[7,\"original\",\"w\"],\"*\",\"oneMinusReflA\"]]],[13,\"belowLine\",[6,\"d.vec4f\",[\"belowRgb\",\"belowA\"]]],[13,\"isBelowLine\",[6,\"std.step\",[\"lineY\",\"uvY\"]]],[10,[6,\"std.mix\",[\"original\",\"belowLine\",[6,\"d.vec4f\",[\"isBelowLine\"]]]]]]]},externals:{\"std.max\":()=>w,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b,\"std.step\":()=>ot,\"std.mix\":()=>Z}})&&e.f)({}));var bX=y.fn([b,b,b],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=r.w,n=z(s.xyz.mul(r.xyz).mul(o),v(0,0,0),v(1,1,1)),i=v(1,1,1),d=i.sub(i.sub(t.xyz).mul(i.sub(n))),l=__tsover_add(t.w,__tsover_mul(__tsover_mul(s.w,o),__tsover_sub(1,t.w)));return b(d.x,d.y,d.z,z(l,0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"base\"},{type:\"i\",name:\"glow\"},{type:\"i\",name:\"tintStrength\"}],body:[0,[[13,\"strength\",[7,\"tintStrength\",\"w\"]],[13,\"bloomC\",[6,\"std.clamp\",[[6,[7,[6,[7,[7,\"glow\",\"xyz\"],\"mul\"],[[7,\"tintStrength\",\"xyz\"]]],\"mul\"],[\"strength\"]],[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]]]],[13,\"one\",[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]],[13,\"screened\",[6,[7,\"one\",\"sub\"],[[6,[7,[6,[7,\"one\",\"sub\"],[[7,\"base\",\"xyz\"]]],\"mul\"],[[6,[7,\"one\",\"sub\"],[\"bloomC\"]]]]]]],[13,\"a\",[1,[7,\"base\",\"w\"],\"+\",[1,[1,[7,\"glow\",\"w\"],\"*\",\"strength\"],\"*\",[1,[5,\"1\"],\"-\",[7,\"base\",\"w\"]]]]],[10,[6,\"d.vec4f\",[[7,\"screened\",\"x\"],[7,\"screened\",\"y\"],[7,\"screened\",\"z\"],[6,\"std.clamp\",[\"a\",[5,\"0\"],[5,\"1\"]]]]]]]]},externals:{\"std.clamp\":()=>z,\"d.vec3f\":()=>v,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"tintedScreenGlow\");var wX=y.fn([u,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r)=>{\"use gpu\";let o=__tsover_mul(s,.006),n=__tsover_mul(__tsover_add(__tsover_mul(O(__tsover_mul(r,1.7)),.5),__tsover_mul(O(__tsover_add(__tsover_mul(r,.9),1.3)),.5)),o),i=__tsover_mul(__tsover_add(__tsover_mul(O(__tsover_add(__tsover_mul(r,1.3),.7)),.5),__tsover_mul(O(__tsover_mul(r,2.3)),.5)),o),d=__tsover_mul(__tsover_mul(O(__tsover_mul(r,.6)),s),.004),l=J(d),c=O(d),_=t.sub(u(.5,.5)),p=__tsover_sub(__tsover_mul(_.x,l),__tsover_mul(_.y,c)),f=__tsover_add(__tsover_mul(_.x,c),__tsover_mul(_.y,l));return u(__tsover_add(__tsover_add(p,.5),n),__tsover_add(__tsover_add(f,.5),i))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"amount\"},{type:\"i\",name:\"t\"}],body:[0,[[13,\"amp\",[1,\"amount\",\"*\",[5,\"0.006\"]]],[13,\"ox\",[1,[1,[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"1.7\"]]]],\"*\",[5,\"0.5\"]],\"+\",[1,[6,\"std.sin\",[[1,[1,\"t\",\"*\",[5,\"0.9\"]],\"+\",[5,\"1.3\"]]]],\"*\",[5,\"0.5\"]]],\"*\",\"amp\"]],[13,\"oy\",[1,[1,[1,[6,\"std.sin\",[[1,[1,\"t\",\"*\",[5,\"1.3\"]],\"+\",[5,\"0.7\"]]]],\"*\",[5,\"0.5\"]],\"+\",[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"2.3\"]]]],\"*\",[5,\"0.5\"]]],\"*\",\"amp\"]],[13,\"ang\",[1,[1,[6,\"std.sin\",[[1,\"t\",\"*\",[5,\"0.6\"]]]],\"*\",\"amount\"],\"*\",[5,\"0.004\"]]],[13,\"c\",[6,\"std.cos\",[\"ang\"]]],[13,\"s\",[6,\"std.sin\",[\"ang\"]]],[13,\"p\",[6,[7,\"uv\",\"sub\"],[[6,\"d.vec2f\",[[5,\"0.5\"],[5,\"0.5\"]]]]]],[13,\"rx\",[1,[1,[7,\"p\",\"x\"],\"*\",\"c\"],\"-\",[1,[7,\"p\",\"y\"],\"*\",\"s\"]]],[13,\"ry\",[1,[1,[7,\"p\",\"x\"],\"*\",\"s\"],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"c\"]]],[10,[6,\"d.vec2f\",[[1,[1,\"rx\",\"+\",[5,\"0.5\"]],\"+\",\"ox\"],[1,[1,\"ry\",\"+\",[5,\"0.5\"]],\"+\",\"oy\"]]]]]]},externals:{\"std.sin\":()=>O,\"std.cos\":()=>J,\"d.vec2f\":()=>u}})&&e.f)({})).$name(\"swayUV\");var pc=_o,F5=.35,iE=y.fn([a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=__tsover_mul(.18,t),r=Ye(W(O(__tsover_mul(s,pc))),10),o=Ye(W(O(__tsover_mul(__tsover_sub(s,.15),pc))),10);return z(__tsover_add(r,__tsover_mul(.6,o)),0,1)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"animTime\"}],body:[0,[[13,\"time\",[1,[5,\"0.18\"],\"*\",\"animTime\"]],[13,\"first\",[6,\"std.pow\",[[6,\"std.abs\",[[6,\"std.sin\",[[1,\"time\",\"*\",\"TWO_PI\"]]]]],[5,\"10\"]]]],[13,\"second\",[6,\"std.pow\",[[6,\"std.abs\",[[6,\"std.sin\",[[1,[1,\"time\",\"-\",[5,\"0.15\"]],\"*\",\"TWO_PI\"]]]]],[5,\"10\"]]]],[10,[6,\"std.clamp\",[[1,\"first\",\"+\",[1,[5,\"0.6\"],\"*\",\"second\"]],[5,\"0\"],[5,\"1\"]]]]]]},externals:{\"std.pow\":()=>Ye,\"std.abs\":()=>W,\"std.sin\":()=>O,TWO_PI:()=>pc,\"std.clamp\":()=>z}})&&e.f)({})),dE=y.fn([a,u,u,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=__tsover_add(__tsover_mul(c,1.2),131),h=w(__tsover_mul(__tsover_mul(.5,n),F5),.002),g=W(__tsover_add(__tsover_div(t,w(o,.001)),Z(h,a(0),i))),x=Z(h,__tsover_mul(3,h),i),T=__tsover_div(2,__tsover_mul(r.y,w(o,.001))),S=ue(Z(x,__tsover_mul(x,-1),i),__tsover_add(x,T)),A=w(Z(x,__tsover_mul(x,-1),i),__tsover_add(x,T)),E=__tsover_sub(1,ce(S,A,g));E=Ye(z(E,0,1),__tsover_add(1,i));let M=u(__tsover_sub(s.x,.5),__tsover_sub(s.y,.5)).mul(__tsover_add(.5,__tsover_mul(2.5,d))),$=__tsover_mul(.5,f),L=uo(u(__tsover_add(__tsover_mul(M.x,2.7),$),__tsover_add(__tsover_mul(M.y,2.7),$))),B=uo(u(__tsover_sub(__tsover_mul(M.x,3.4),$),__tsover_sub(__tsover_mul(M.y,3.4),$))),D=__tsover_sub(z(__tsover_mul(3,L),0,1),B),G=z(__tsover_add(h,.2),.1,.4),I=Ye(z(__tsover_sub(1,ce(__tsover_mul(G,-1),__tsover_add(G,T),g)),0,1),2);D=__tsover_mul(D,I),D=__tsover_mul(__tsover_mul(__tsover_mul(30,D),D),__tsover_mul(__tsover_mul(.5,l),l)),D=__tsover_mul(D,Z(a(1),p,_)),E=z(__tsover_add(E,z(D,0,1)),0,1);let X=__tsover_div(bt(__tsover_sub(s.y,.5),__tsover_sub(s.x,.5)),pc);return u(E,X)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fieldRaw\"},{type:\"i\",name:\"sdfUV\"},{type:\"i\",name:\"viewport\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"smokeSize\"},{type:\"i\",name:\"smokeAmt\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"pulse\"},{type:\"i\",name:\"beat\"}],body:[0,[[13,\"t\",[1,[1,\"animTime\",\"*\",[5,\"1.2\"]],\"+\",[5,\"131\"]]],[13,\"th\",[6,\"std.max\",[[1,[1,[5,\"0.5\"],\"*\",\"thickness\"],\"*\",\"BAND_THICKNESS_REF\"],[5,\"0.002\"]]]],[13,\"f\",[1,[1,\"fieldRaw\",\"/\",[6,\"std.max\",[\"scale\",[5,\"0.001\"]]]],\"+\",[6,\"std.mix\",[\"th\",[6,\"d.f32\",[[5,\"0\"]]],\"softness\"]]]],[13,\"bd\",[6,\"std.abs\",[\"f\"]]],[13,\"borderTh\",[6,\"std.mix\",[\"th\",[1,[5,\"3\"],\"*\",\"th\"],\"softness\"]]],[13,\"aa\",[1,[5,\"2\"],\"/\",[1,[7,\"viewport\",\"y\"],\"*\",[6,\"std.max\",[\"scale\",[5,\"0.001\"]]]]]],[13,\"e0\",[6,\"std.min\",[[6,\"std.mix\",[\"borderTh\",[1,\"borderTh\",\"*\",[4,\"-\",[5,\"1\"]]],\"softness\"]],[1,\"borderTh\",\"+\",\"aa\"]]]],[13,\"e1\",[6,\"std.max\",[[6,\"std.mix\",[\"borderTh\",[1,\"borderTh\",\"*\",[4,\"-\",[5,\"1\"]]],\"softness\"]],[1,\"borderTh\",\"+\",\"aa\"]]]],[12,\"border\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[\"e0\",\"e1\",\"bd\"]]]],[2,\"border\",\"=\",[6,\"std.pow\",[[6,\"std.clamp\",[\"border\",[5,\"0\"],[5,\"1\"]]],[1,[5,\"1\"],\"+\",\"softness\"]]]],[13,\"suv\",[6,[7,[6,\"d.vec2f\",[[1,[7,\"sdfUV\",\"x\"],\"-\",[5,\"0.5\"]],[1,[7,\"sdfUV\",\"y\"],\"-\",[5,\"0.5\"]]]],\"mul\"],[[1,[5,\"0.5\"],\"+\",[1,[5,\"2.5\"],\"*\",\"smokeSize\"]]]]],[13,\"drift\",[1,[5,\"0.5\"],\"*\",\"t\"]],[13,\"n1\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,[7,\"suv\",\"x\"],\"*\",[5,\"2.7\"]],\"+\",\"drift\"],[1,[1,[7,\"suv\",\"y\"],\"*\",[5,\"2.7\"]],\"+\",\"drift\"]]]]]],[13,\"n2\",[6,\"noise.value12\",[[6,\"d.vec2f\",[[1,[1,[7,\"suv\",\"x\"],\"*\",[5,\"3.4\"]],\"-\",\"drift\"],[1,[1,[7,\"suv\",\"y\"],\"*\",[5,\"3.4\"]],\"-\",\"drift\"]]]]]],[12,\"smoke\",[1,[6,\"std.clamp\",[[1,[5,\"3\"],\"*\",\"n1\"],[5,\"0\"],[5,\"1\"]]],\"-\",\"n2\"]],[13,\"smokeTh\",[6,\"std.clamp\",[[1,\"th\",\"+\",[5,\"0.2\"]],[5,\"0.1\"],[5,\"0.4\"]]]],[13,\"smokeBand\",[6,\"std.pow\",[[6,\"std.clamp\",[[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[1,\"smokeTh\",\"*\",[4,\"-\",[5,\"1\"]]],[1,\"smokeTh\",\"+\",\"aa\"],\"bd\"]]],[5,\"0\"],[5,\"1\"]]],[5,\"2\"]]]],[2,\"smoke\",\"=\",[1,\"smoke\",\"*\",\"smokeBand\"]],[2,\"smoke\",\"=\",[1,[1,[1,[5,\"30\"],\"*\",\"smoke\"],\"*\",\"smoke\"],\"*\",[1,[1,[5,\"0.5\"],\"*\",\"smokeAmt\"],\"*\",\"smokeAmt\"]]],[2,\"smoke\",\"=\",[1,\"smoke\",\"*\",[6,\"std.mix\",[[6,\"d.f32\",[[5,\"1\"]]],\"beat\",\"pulse\"]]]],[2,\"border\",\"=\",[6,\"std.clamp\",[[1,\"border\",\"+\",[6,\"std.clamp\",[\"smoke\",[5,\"0\"],[5,\"1\"]]]],[5,\"0\"],[5,\"1\"]]]],[13,\"angle01\",[1,[6,\"std.atan2\",[[1,[7,\"sdfUV\",\"y\"],\"-\",[5,\"0.5\"]],[1,[7,\"sdfUV\",\"x\"],\"-\",[5,\"0.5\"]]]],\"/\",\"TWO_PI\"]],[10,[6,\"d.vec2f\",[\"border\",\"angle01\"]]]]]},externals:{\"std.max\":()=>w,BAND_THICKNESS_REF:()=>F5,\"std.mix\":()=>Z,\"d.f32\":()=>a,\"std.abs\":()=>W,\"std.min\":()=>ue,\"std.smoothstep\":()=>ce,\"std.pow\":()=>Ye,\"std.clamp\":()=>z,\"d.vec2f\":()=>u,\"noise.value12\":()=>uo,\"std.atan2\":()=>bt,TWO_PI:()=>pc}})&&e.f)({})),lE=y.fn([a,a,a,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p)=>{\"use gpu\";let f=__tsover_add(__tsover_mul(r,1.2),131),h=__tsover_add(1,__tsover_mul(__tsover_add(1,__tsover_mul(4,c)),l)),g=a(0),x=a(0);for(let T=0;T<5;T++){let S=a(T),A=F(a(0),a(1),S<n),E=Dr(u(__tsover_add(__tsover_add(__tsover_mul(S,10),2),__tsover_mul(_,7.31)),__tsover_add(__tsover_add(40,p),__tsover_mul(_,3.17)))),M=__tsover_add(.1,__tsover_mul(.15,W(__tsover_mul(O(__tsover_mul(S,__tsover_add(2,p))),J(__tsover_mul(S,__tsover_add(2,__tsover_mul(2.5,p)))))))),$=F(a(1),a(-1),E.y<.5),L=__tsover_mul(__tsover_add(__tsover_mul(M,f),__tsover_mul(E.x,3)),$),B=W(__tsover_sub(p,__tsover_mul(2,K(__tsover_mul(p,.5)))))<.5,D=O(__tsover_add(f,__tsover_mul(S,__tsover_sub(5,__tsover_mul(1.5,p))))),G=J(__tsover_add(f,__tsover_mul(S,__tsover_add(3,__tsover_mul(1.3,p))))),I=__tsover_add(.5,__tsover_mul(.5,F(G,D,B))),X=z(__tsover_sub(__tsover_mul(2,d),E.x),0,1);I=Z(I,o,X);let H=ve(__tsover_add(t,L)),ee=__tsover_add(__tsover_add(.05,__tsover_mul(__tsover_mul(.6,i),i)),__tsover_mul(.05,E.x));ee=Z(ee,.1,X);let Q=__tsover_mul(ce(__tsover_sub(.5,ee),.5,H),__tsover_sub(1,ce(.5,__tsover_add(.5,ee),H)));Q=__tsover_mul(z(__tsover_mul(__tsover_mul(__tsover_mul(Q,I),s),h),0,1),A),g=__tsover_add(g,__tsover_mul(__tsover_sub(1,g),Q)),x=__tsover_add(x,Q)}return u(g,x)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"angle01\"},{type:\"i\",name:\"border\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"beat\"},{type:\"i\",name:\"spotsF\"},{type:\"i\",name:\"spotSize\"},{type:\"i\",name:\"pulse\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"softness\"},{type:\"i\",name:\"seed\"},{type:\"i\",name:\"colorIdxF\"}],body:[0,[[13,\"t\",[1,[1,\"animTime\",\"*\",[5,\"1.2\"]],\"+\",[5,\"131\"]]],[13,\"intensityEff\",[1,[5,\"1\"],\"+\",[1,[1,[5,\"1\"],\"+\",[1,[5,\"4\"],\"*\",\"softness\"]],\"*\",\"intensity\"]]],[12,\"overAcc\",[6,\"d.f32\",[[5,\"0\"]]]],[12,\"addAcc\",[6,\"d.f32\",[[5,\"0\"]]]],[14,[12,\"s\",[5,\"0\"]],[1,\"s\",\"<\",[5,\"5\"]],[102,\"++\",\"s\"],[0,[[13,\"sF\",[6,\"d.f32\",[\"s\"]]],[13,\"gate\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"sF\",\"<\",\"spotsF\"]]]],[13,\"randVal\",[6,\"noise.hash22\",[[6,\"d.vec2f\",[[1,[1,[1,\"sF\",\"*\",[5,\"10\"]],\"+\",[5,\"2\"]],\"+\",[1,\"seed\",\"*\",[5,\"7.31\"]]],[1,[1,[5,\"40\"],\"+\",\"colorIdxF\"],\"+\",[1,\"seed\",\"*\",[5,\"3.17\"]]]]]]]],[13,\"speedFactor\",[1,[5,\"0.1\"],\"+\",[1,[5,\"0.15\"],\"*\",[6,\"std.abs\",[[1,[6,\"std.sin\",[[1,\"sF\",\"*\",[1,[5,\"2\"],\"+\",\"colorIdxF\"]]]],\"*\",[6,\"std.cos\",[[1,\"sF\",\"*\",[1,[5,\"2\"],\"+\",[1,[5,\"2.5\"],\"*\",\"colorIdxF\"]]]]]]]]]]],[13,\"dir\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"1\"]]],[6,\"d.f32\",[[4,\"-\",[5,\"1\"]]]],[1,[7,\"randVal\",\"y\"],\"<\",[5,\"0.5\"]]]]],[13,\"sTime\",[1,[1,[1,\"speedFactor\",\"*\",\"t\"],\"+\",[1,[7,\"randVal\",\"x\"],\"*\",[5,\"3\"]]],\"*\",\"dir\"]],[13,\"evenCond\",[1,[6,\"std.abs\",[[1,\"colorIdxF\",\"-\",[1,[5,\"2\"],\"*\",[6,\"std.floor\",[[1,\"colorIdxF\",\"*\",[5,\"0.5\"]]]]]]]],\"<\",[5,\"0.5\"]]],[13,\"sinVal\",[6,\"std.sin\",[[1,\"t\",\"+\",[1,\"sF\",\"*\",[1,[5,\"5\"],\"-\",[1,[5,\"1.5\"],\"*\",\"colorIdxF\"]]]]]]],[13,\"cosVal\",[6,\"std.cos\",[[1,\"t\",\"+\",[1,\"sF\",\"*\",[1,[5,\"3\"],\"+\",[1,[5,\"1.3\"],\"*\",\"colorIdxF\"]]]]]]],[12,\"mask\",[1,[5,\"0.5\"],\"+\",[1,[5,\"0.5\"],\"*\",[6,\"std.select\",[\"cosVal\",\"sinVal\",\"evenCond\"]]]]],[13,\"pWeight\",[6,\"std.clamp\",[[1,[1,[5,\"2\"],\"*\",\"pulse\"],\"-\",[7,\"randVal\",\"x\"]],[5,\"0\"],[5,\"1\"]]]],[2,\"mask\",\"=\",[6,\"std.mix\",[\"mask\",\"beat\",\"pWeight\"]]],[13,\"atg\",[6,\"std.fract\",[[1,\"angle01\",\"+\",\"sTime\"]]]],[12,\"ss\",[1,[1,[5,\"0.05\"],\"+\",[1,[1,[5,\"0.6\"],\"*\",\"spotSize\"],\"*\",\"spotSize\"]],\"+\",[1,[5,\"0.05\"],\"*\",[7,\"randVal\",\"x\"]]]],[2,\"ss\",\"=\",[6,\"std.mix\",[\"ss\",[5,\"0.1\"],\"pWeight\"]]],[12,\"sector\",[1,[6,\"std.smoothstep\",[[1,[5,\"0.5\"],\"-\",\"ss\"],[5,\"0.5\"],\"atg\"]],\"*\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0.5\"],[1,[5,\"0.5\"],\"+\",\"ss\"],\"atg\"]]]]],[2,\"sector\",\"=\",[1,[6,\"std.clamp\",[[1,[1,[1,\"sector\",\"*\",\"mask\"],\"*\",\"border\"],\"*\",\"intensityEff\"],[5,\"0\"],[5,\"1\"]]],\"*\",\"gate\"]],[2,\"overAcc\",\"=\",[1,\"overAcc\",\"+\",[1,[1,[5,\"1\"],\"-\",\"overAcc\"],\"*\",\"sector\"]]],[2,\"addAcc\",\"=\",[1,\"addAcc\",\"+\",\"sector\"]]]]],[10,[6,\"d.vec2f\",[\"overAcc\",\"addAcc\"]]]]]},externals:{\"d.f32\":()=>a,\"std.select\":()=>F,\"noise.hash22\":()=>Dr,\"d.vec2f\":()=>u,\"std.abs\":()=>W,\"std.sin\":()=>O,\"std.cos\":()=>J,\"std.floor\":()=>K,\"std.clamp\":()=>z,\"std.mix\":()=>Z,\"std.fract\":()=>ve,\"std.smoothstep\":()=>ce}})&&e.f)({})),Ya=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({rgb:v,w:a,ba:a,ac:v,aa:a}),\"EdgeGlowAccum\"),cE=y.fn([],Ya)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(()=>{\"use gpu\";return Ya({rgb:v(0,0,0),w:a(0),ba:a(0),ac:v(0,0,0),aa:a(0)})}),{v:2,name:void 0,ast:{params:[],body:[0,[[10,[6,\"EdgeGlowAccum\",[[104,{rgb:[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],w:[6,\"d.f32\",[[5,\"0\"]]],ba:[6,\"d.f32\",[[5,\"0\"]]],ac:[6,\"d.vec3f\",[[5,\"0\"],[5,\"0\"],[5,\"0\"]]],aa:[6,\"d.f32\",[[5,\"0\"]]]}]]]]]]},externals:{EdgeGlowAccum:()=>Ya,\"d.vec3f\":()=>v,\"d.f32\":()=>a}})&&e.f)({})),B5=new Map;function kI(e){let t=Xo[e]??lr;return y.fn([Ya,b,u],Ya)((s=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(s.f=((r,o,n)=>{\"use gpu\";let i=__tsover_mul(o.w,n.x),d=__tsover_div(i,w(__tsover_add(r.w,i),1e-5)),l=t(b(r.rgb,1),b(o.xyz,1),d),c=__tsover_add(r.ba,__tsover_mul(__tsover_sub(1,r.ba),i)),_=r.ac.add(o.xyz.mul(__tsover_mul(o.w,n.y))),p=__tsover_add(r.aa,__tsover_mul(o.w,n.y));return Ya({rgb:l.xyz,w:__tsover_add(r.w,i),ba:c,ac:_,aa:p})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"st\"},{type:\"i\",name:\"color\"},{type:\"i\",name:\"sectors\"}],body:[0,[[13,\"wNew\",[1,[7,\"color\",\"w\"],\"*\",[7,\"sectors\",\"x\"]]],[13,\"t\",[1,\"wNew\",\"/\",[6,\"std.max\",[[1,[7,\"st\",\"w\"],\"+\",\"wNew\"],[5,\"0.00001\"]]]]],[13,\"mixed\",[6,\"variant\",[[6,\"d.vec4f\",[[7,\"st\",\"rgb\"],[5,\"1\"]]],[6,\"d.vec4f\",[[7,\"color\",\"xyz\"],[5,\"1\"]]],\"t\"]]],[13,\"ba\",[1,[7,\"st\",\"ba\"],\"+\",[1,[1,[5,\"1\"],\"-\",[7,\"st\",\"ba\"]],\"*\",\"wNew\"]]],[13,\"ac\",[6,[7,[7,\"st\",\"ac\"],\"add\"],[[6,[7,[7,\"color\",\"xyz\"],\"mul\"],[[1,[7,\"color\",\"w\"],\"*\",[7,\"sectors\",\"y\"]]]]]]],[13,\"aa\",[1,[7,\"st\",\"aa\"],\"+\",[1,[7,\"color\",\"w\"],\"*\",[7,\"sectors\",\"y\"]]]],[10,[6,\"EdgeGlowAccum\",[[104,{rgb:[7,\"mixed\",\"xyz\"],w:[1,[7,\"st\",\"w\"],\"+\",\"wNew\"],ba:\"ba\",ac:\"ac\",aa:\"aa\"}]]]]]]},externals:{\"std.max\":()=>w,variant:()=>t,\"d.vec4f\":()=>b,EdgeGlowAccum:()=>Ya}})&&s.f)({})).$name(`edgeGlowAccumColor_${e}`)}function uE(e){let t=B5.get(e);return t||(t=kI(e),B5.set(e,t)),t}var _E=y.fn([zt(b,8),a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=t[oe(s)];return b(r.x,r.y,r.z,r.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"colors\"},{type:\"i\",name:\"idx\"}],body:[0,[[13,\"c\",[8,\"colors\",[6,\"d.i32\",[\"idx\"]]]],[10,[6,\"d.vec4f\",[[7,\"c\",\"x\"],[7,\"c\",\"y\"],[7,\"c\",\"z\"],[7,\"c\",\"w\"]]]]]]},externals:{\"d.i32\":()=>oe,\"d.vec4f\":()=>b}})&&e.f)({})),pE=y.fn([Ya,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_mul(s,4),o=Z(t.rgb.mul(t.ba),t.ac,v(r)),n=z(Z(t.ba,t.aa,r),0,1);return b(z(o.div(w(n,1e-4)),v(0),v(1)),n)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"st\"},{type:\"i\",name:\"bloom\"}],body:[0,[[13,\"k\",[1,\"bloom\",\"*\",[5,\"4\"]]],[13,\"blendPremult\",[6,[7,[7,\"st\",\"rgb\"],\"mul\"],[[7,\"st\",\"ba\"]]]],[13,\"accumC\",[6,\"std.mix\",[\"blendPremult\",[7,\"st\",\"ac\"],[6,\"d.vec3f\",[\"k\"]]]]],[13,\"accumA\",[6,\"std.clamp\",[[6,\"std.mix\",[[7,\"st\",\"ba\"],[7,\"st\",\"aa\"],\"k\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"straight\",[6,\"std.clamp\",[[6,[7,\"accumC\",\"div\"],[[6,\"std.max\",[\"accumA\",[5,\"0.0001\"]]]]],[6,\"d.vec3f\",[[5,\"0\"]]],[6,\"d.vec3f\",[[5,\"1\"]]]]]],[10,[6,\"d.vec4f\",[\"straight\",\"accumA\"]]]]]},externals:{\"std.mix\":()=>Z,\"d.vec3f\":()=>v,\"std.clamp\":()=>z,\"std.max\":()=>w,\"d.vec4f\":()=>b}})&&e.f)({}));var Rf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({crackIntensity:a,edgeNormal:u,displacedUV:u,disp:u}),\"CrackGeom\"),TX=y.fn([u,a,a,a,a,a,a,a],Rf)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l)=>{\"use gpu\";let c=u(s,r),_=u(o,n),p=u(i,d),f=t.sub(c),h=te(f),g=te(t.sub(_)),x=te(p),T=__tsover_sub(g,h),S=__tsover_mul(l,.005),A=__tsover_sub(1,ce(0,S,T)),E=ce(0,.01,x),M=__tsover_mul(A,E),$=f.div(w(h,1e-5));return Rf({crackIntensity:M,edgeNormal:u(__tsover_mul($.y,-1),$.x),displacedUV:t.sub(p),disp:p})}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"nPosX\"},{type:\"i\",name:\"nPosY\"},{type:\"i\",name:\"sPosX\"},{type:\"i\",name:\"sPosY\"},{type:\"i\",name:\"dispX\"},{type:\"i\",name:\"dispY\"},{type:\"i\",name:\"crackWidth\"}],body:[0,[[13,\"nearestPos\",[6,\"d.vec2f\",[\"nPosX\",\"nPosY\"]]],[13,\"secondPos\",[6,\"d.vec2f\",[\"sPosX\",\"sPosY\"]]],[13,\"disp\",[6,\"d.vec2f\",[\"dispX\",\"dispY\"]]],[13,\"fromNearest\",[6,[7,\"uv\",\"sub\"],[\"nearestPos\"]]],[13,\"minDist1\",[6,\"std.length\",[\"fromNearest\"]]],[13,\"minDist2\",[6,\"std.length\",[[6,[7,\"uv\",\"sub\"],[\"secondPos\"]]]]],[13,\"displacementMag\",[6,\"std.length\",[\"disp\"]]],[13,\"edgeDiff\",[1,\"minDist2\",\"-\",\"minDist1\"]],[13,\"crackThreshold\",[1,\"crackWidth\",\"*\",[5,\"0.005\"]]],[13,\"baseCrackIntensity\",[1,[5,\"1\"],\"-\",[6,\"std.smoothstep\",[[5,\"0\"],\"crackThreshold\",\"edgeDiff\"]]]],[13,\"displacementFactor\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.01\"],\"displacementMag\"]]],[13,\"crackIntensity\",[1,\"baseCrackIntensity\",\"*\",\"displacementFactor\"]],[13,\"toNearest\",[6,[7,\"fromNearest\",\"div\"],[[6,\"std.max\",[\"minDist1\",[5,\"0.00001\"]]]]]],[13,\"edgeNormal\",[6,\"d.vec2f\",[[1,[7,\"toNearest\",\"y\"],\"*\",[4,\"-\",[5,\"1\"]]],[7,\"toNearest\",\"x\"]]]],[13,\"displacedUV\",[6,[7,\"uv\",\"sub\"],[\"disp\"]]],[10,[6,\"CrackGeom\",[[104,{crackIntensity:\"crackIntensity\",edgeNormal:\"edgeNormal\",displacedUV:\"displacedUV\",disp:\"disp\"}]]]]]]},externals:{\"d.vec2f\":()=>u,\"std.length\":()=>te,\"std.smoothstep\":()=>ce,\"std.max\":()=>w,CrackGeom:()=>Rf}})&&e.f)({})),SX=y.fn([u,u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=s.mul(__tsover_mul(o,.01)),l=__tsover_mul(n,.005),c=s.mul(__tsover_mul(i,l)),_=d.add(c);return t.add(_.mul(r))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"displacedUV\"},{type:\"i\",name:\"edgeNormal\"},{type:\"i\",name:\"crackIntensity\"},{type:\"i\",name:\"refractionStrength\"},{type:\"i\",name:\"chromaticSplit\"},{type:\"i\",name:\"channel\"}],body:[0,[[13,\"refractionOffset\",[6,[7,\"edgeNormal\",\"mul\"],[[1,\"refractionStrength\",\"*\",[5,\"0.01\"]]]]],[13,\"chromaticOffset\",[1,\"chromaticSplit\",\"*\",[5,\"0.005\"]]],[13,\"chromaShift\",[6,[7,\"edgeNormal\",\"mul\"],[[1,\"channel\",\"*\",\"chromaticOffset\"]]]],[13,\"offset\",[6,[7,\"refractionOffset\",\"add\"],[\"chromaShift\"]]],[10,[6,[7,\"displacedUV\",\"add\"],[[6,[7,\"offset\",\"mul\"],[\"crackIntensity\"]]]]]]]},externals:{}})&&e.f)({})),I5=.3/Math.hypot(.3,.6),Y5=.6/Math.hypot(.3,.6),AX=y.fn([b,b,b,b,a,u,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d)=>{\"use gpu\";let l=v(s.x,r.y,o.z),c=t.xyz.mul(__tsover_sub(1,n)).add(l.mul(n)),_=te(i),p=__tsover_div(i.x,__tsover_add(_,.001)),f=__tsover_div(i.y,__tsover_add(_,.001)),h=__tsover_add(__tsover_mul(p,I5),__tsover_mul(f,Y5)),g=__tsover_add(1,__tsover_mul(h,d)),x=ce(0,.02,_),T=__tsover_add(1,__tsover_mul(__tsover_sub(g,1),x));return b(c.mul(T),t.w)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"normalColor\"},{type:\"i\",name:\"rFinal\"},{type:\"i\",name:\"gFinal\"},{type:\"i\",name:\"bFinal\"},{type:\"i\",name:\"crackIntensity\"},{type:\"i\",name:\"disp\"},{type:\"i\",name:\"shardLighting\"}],body:[0,[[13,\"refractedRGB\",[6,\"d.vec3f\",[[7,\"rFinal\",\"x\"],[7,\"gFinal\",\"y\"],[7,\"bFinal\",\"z\"]]]],[13,\"shadedRGB\",[6,[7,[6,[7,[7,\"normalColor\",\"xyz\"],\"mul\"],[[1,[5,\"1\"],\"-\",\"crackIntensity\"]]],\"add\"],[[6,[7,\"refractedRGB\",\"mul\"],[\"crackIntensity\"]]]]],[13,\"displacementLength\",[6,\"std.length\",[\"disp\"]]],[13,\"tiltX\",[1,[7,\"disp\",\"x\"],\"/\",[1,\"displacementLength\",\"+\",[5,\"0.001\"]]]],[13,\"tiltY\",[1,[7,\"disp\",\"y\"],\"/\",[1,\"displacementLength\",\"+\",[5,\"0.001\"]]]],[13,\"normalDot\",[1,[1,\"tiltX\",\"*\",\"SHARD_LIGHT_DIR_X\"],\"+\",[1,\"tiltY\",\"*\",\"SHARD_LIGHT_DIR_Y\"]]],[13,\"lightingFactor\",[1,[5,\"1\"],\"+\",[1,\"normalDot\",\"*\",\"shardLighting\"]]],[13,\"lightingIntensity\",[6,\"std.smoothstep\",[[5,\"0\"],[5,\"0.02\"],\"displacementLength\"]]],[13,\"finalLighting\",[1,[5,\"1\"],\"+\",[1,[1,\"lightingFactor\",\"-\",[5,\"1\"]],\"*\",\"lightingIntensity\"]]],[13,\"finalRGB\",[6,[7,\"shadedRGB\",\"mul\"],[\"finalLighting\"]]],[10,[6,\"d.vec4f\",[\"finalRGB\",[7,\"normalColor\",\"w\"]]]]]]},externals:{\"d.vec3f\":()=>v,\"std.length\":()=>te,SHARD_LIGHT_DIR_X:()=>I5,SHARD_LIGHT_DIR_Y:()=>Y5,\"std.smoothstep\":()=>ce,\"d.vec4f\":()=>b}})&&e.f)({}));var{formatFloat:EX}=pB;var PX=y.fn([u,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n)=>{\"use gpu\";let i=Ab(s),d=u(__tsover_div(J(i),o),O(i)),l=__tsover_mul(r,.1),c=d.mul(l);return t.add(c.mul(n))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"angle\"},{type:\"i\",name:\"strength\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"channelOffset\"}],body:[0,[[13,\"angleRad\",[6,\"std.radians\",[\"angle\"]]],[13,\"direction\",[6,\"d.vec2f\",[[1,[6,\"std.cos\",[\"angleRad\"]],\"/\",\"aspect\"],[6,\"std.sin\",[\"angleRad\"]]]]],[13,\"scaledStrength\",[1,\"strength\",\"*\",[5,\"0.1\"]]],[13,\"offsetBase\",[6,[7,\"direction\",\"mul\"],[\"scaledStrength\"]]],[10,[6,[7,\"uv\",\"add\"],[[6,[7,\"offsetBase\",\"mul\"],[\"channelOffset\"]]]]]]]},externals:{\"std.radians\":()=>Ab,\"d.vec2f\":()=>u,\"std.cos\":()=>J,\"std.sin\":()=>O}})&&e.f)({}));var mE=\"rgba16float\",fE=16384;var MX=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({buffer:{storage:zt(b,fE),access:\"mutable\"},params:{uniform:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cursorX:a,cursorY:a,mouseVelX:a,mouseVelY:a,dt:a,decay:a,intensity:a,radius:a,aspect:a}),\"uniform\")}}),\"splatUpdateLayout\"),kX=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({buffer:{storage:zt(b,fE),access:\"readonly\"},dispTex:{storageTexture:an(mE,\"write-only\")}}),\"splatOutputLayout\");var la=64,lh=la*la,Uf=la-1,en=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({readBuf:{storage:zt(b,lh),access:\"readonly\"},writeBuf:{storage:zt(b,lh),access:\"mutable\"},params:{uniform:(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({cursorX:a,cursorY:a,dirX:a,dirY:a,clampedSpeed:a,dt:a,subDt:a,stiffness:a,dampFactor:a,radius:a,aspect:a}),\"uniform\")}}),\"latticeLayout\"),zf=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(y.bindGroupLayout({srcBuf:{storage:zt(b,lh),access:\"readonly\"},dispTex:{storageTexture:an(mE,\"write-only\")}}),\"latticeOutputLayout\"),$X=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";if(t>Y(0)&&t<Y(Uf)&&s>Y(0)&&s<Y(Uf)){let r=en.$.params,o=Y(la),n=__tsover_add(__tsover_mul(s,o),t),i=en.$.readBuf[n],d=i.x,l=i.y,c=i.z,_=i.w,p=en.$.readBuf[__tsover_sub(n,Y(1))],f=en.$.readBuf[__tsover_add(n,Y(1))],h=en.$.readBuf[__tsover_sub(n,o)],g=en.$.readBuf[__tsover_add(n,o)],x=en.$.readBuf[__tsover_sub(__tsover_sub(n,o),Y(1))],T=en.$.readBuf[__tsover_add(__tsover_sub(n,o),Y(1))],S=en.$.readBuf[__tsover_sub(__tsover_add(n,o),Y(1))],A=en.$.readBuf[__tsover_add(__tsover_add(n,o),Y(1))],E=__tsover_mul(r.stiffness,__tsover_add(__tsover_add(__tsover_add(__tsover_sub(p.x,d),__tsover_sub(f.x,d)),__tsover_sub(h.x,d)),__tsover_sub(g.x,d))),M=__tsover_mul(r.stiffness,__tsover_add(__tsover_add(__tsover_add(__tsover_sub(p.y,l),__tsover_sub(f.y,l)),__tsover_sub(h.y,l)),__tsover_sub(g.y,l))),$=__tsover_mul(r.stiffness,.35);E=__tsover_add(E,__tsover_mul($,__tsover_add(__tsover_add(__tsover_add(__tsover_sub(x.x,d),__tsover_sub(T.x,d)),__tsover_sub(S.x,d)),__tsover_sub(A.x,d)))),M=__tsover_add(M,__tsover_mul($,__tsover_add(__tsover_add(__tsover_add(__tsover_sub(x.y,l),__tsover_sub(T.y,l)),__tsover_sub(S.y,l)),__tsover_sub(A.y,l)))),E=__tsover_sub(E,__tsover_mul(__tsover_mul(r.stiffness,.1),d)),M=__tsover_sub(M,__tsover_mul(__tsover_mul(r.stiffness,.1),l));let L=__tsover_add(__tsover_mul(c,r.dampFactor),__tsover_mul(E,r.subDt)),B=__tsover_add(__tsover_mul(_,r.dampFactor),__tsover_mul(M,r.subDt));if(r.clampedSpeed>.01){let I=__tsover_div(__tsover_add(a(t),.5),a(la)),X=__tsover_div(__tsover_add(a(s),.5),a(la)),H=F(__tsover_sub(I,r.cursorX),__tsover_mul(__tsover_sub(I,r.cursorX),r.aspect),r.aspect>=1),ee=F(__tsover_div(__tsover_sub(X,r.cursorY),r.aspect),__tsover_sub(X,r.cursorY),r.aspect>=1),Q=__tsover_add(__tsover_mul(H,H),__tsover_mul(ee,ee)),de=__tsover_mul(r.radius,3);if(Q<__tsover_mul(de,de)){let Ee=Mt(__tsover_mul(__tsover_div(Q,__tsover_mul(r.radius,r.radius)),-1)),he=__tsover_mul(__tsover_mul(__tsover_mul(Ee,r.clampedSpeed),r.dt),2);L=__tsover_add(L,__tsover_mul(r.dirX,he)),B=__tsover_add(B,__tsover_mul(r.dirY,he))}}let D=z(__tsover_add(d,__tsover_mul(L,r.subDt)),-.5,.5),G=z(__tsover_add(l,__tsover_mul(B,r.subDt)),-.5,.5);en.$.writeBuf[n]=b(D,G,L,B)}}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[11,[3,[3,[3,[1,\"cx\",\">\",[6,\"d.u32\",[[5,\"0\"]]]],\"&&\",[1,\"cx\",\"<\",[6,\"d.u32\",[\"LATTICE_MAX\"]]]],\"&&\",[1,\"cy\",\">\",[6,\"d.u32\",[[5,\"0\"]]]]],\"&&\",[1,\"cy\",\"<\",[6,\"d.u32\",[\"LATTICE_MAX\"]]]],[0,[[13,\"p\",[7,[7,\"latticeLayout\",\"$\"],\"params\"]],[13,\"gs\",[6,\"d.u32\",[\"LATTICE_GRID\"]]],[13,\"idx\",[1,[1,\"cy\",\"*\",\"gs\"],\"+\",\"cx\"]],[13,\"current\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],\"idx\"]],[13,\"dispX\",[7,\"current\",\"x\"]],[13,\"dispY\",[7,\"current\",\"y\"]],[13,\"velX\",[7,\"current\",\"z\"]],[13,\"velY\",[7,\"current\",\"w\"]],[13,\"nL\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"-\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"nR\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"+\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"nU\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"-\",\"gs\"]]],[13,\"nD\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,\"idx\",\"+\",\"gs\"]]],[13,\"nUL\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,[1,\"idx\",\"-\",\"gs\"],\"-\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"nUR\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,[1,\"idx\",\"-\",\"gs\"],\"+\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"nDL\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,[1,\"idx\",\"+\",\"gs\"],\"-\",[6,\"d.u32\",[[5,\"1\"]]]]]],[13,\"nDR\",[8,[7,[7,\"latticeLayout\",\"$\"],\"readBuf\"],[1,[1,\"idx\",\"+\",\"gs\"],\"+\",[6,\"d.u32\",[[5,\"1\"]]]]]],[12,\"fx\",[1,[7,\"p\",\"stiffness\"],\"*\",[1,[1,[1,[1,[7,\"nL\",\"x\"],\"-\",\"dispX\"],\"+\",[1,[7,\"nR\",\"x\"],\"-\",\"dispX\"]],\"+\",[1,[7,\"nU\",\"x\"],\"-\",\"dispX\"]],\"+\",[1,[7,\"nD\",\"x\"],\"-\",\"dispX\"]]]],[12,\"fy\",[1,[7,\"p\",\"stiffness\"],\"*\",[1,[1,[1,[1,[7,\"nL\",\"y\"],\"-\",\"dispY\"],\"+\",[1,[7,\"nR\",\"y\"],\"-\",\"dispY\"]],\"+\",[1,[7,\"nU\",\"y\"],\"-\",\"dispY\"]],\"+\",[1,[7,\"nD\",\"y\"],\"-\",\"dispY\"]]]],[13,\"shearK\",[1,[7,\"p\",\"stiffness\"],\"*\",[5,\"0.35\"]]],[2,\"fx\",\"=\",[1,\"fx\",\"+\",[1,\"shearK\",\"*\",[1,[1,[1,[1,[7,\"nUL\",\"x\"],\"-\",\"dispX\"],\"+\",[1,[7,\"nUR\",\"x\"],\"-\",\"dispX\"]],\"+\",[1,[7,\"nDL\",\"x\"],\"-\",\"dispX\"]],\"+\",[1,[7,\"nDR\",\"x\"],\"-\",\"dispX\"]]]]],[2,\"fy\",\"=\",[1,\"fy\",\"+\",[1,\"shearK\",\"*\",[1,[1,[1,[1,[7,\"nUL\",\"y\"],\"-\",\"dispY\"],\"+\",[1,[7,\"nUR\",\"y\"],\"-\",\"dispY\"]],\"+\",[1,[7,\"nDL\",\"y\"],\"-\",\"dispY\"]],\"+\",[1,[7,\"nDR\",\"y\"],\"-\",\"dispY\"]]]]],[2,\"fx\",\"=\",[1,\"fx\",\"-\",[1,[1,[7,\"p\",\"stiffness\"],\"*\",[5,\"0.1\"]],\"*\",\"dispX\"]]],[2,\"fy\",\"=\",[1,\"fy\",\"-\",[1,[1,[7,\"p\",\"stiffness\"],\"*\",[5,\"0.1\"]],\"*\",\"dispY\"]]],[12,\"newVelX\",[1,[1,\"velX\",\"*\",[7,\"p\",\"dampFactor\"]],\"+\",[1,\"fx\",\"*\",[7,\"p\",\"subDt\"]]]],[12,\"newVelY\",[1,[1,\"velY\",\"*\",[7,\"p\",\"dampFactor\"]],\"+\",[1,\"fy\",\"*\",[7,\"p\",\"subDt\"]]]],[11,[1,[7,\"p\",\"clampedSpeed\"],\">\",[5,\"0.01\"]],[0,[[13,\"cellX\",[1,[1,[6,\"d.f32\",[\"cx\"]],\"+\",[5,\"0.5\"]],\"/\",[6,\"d.f32\",[\"LATTICE_GRID\"]]]],[13,\"cellY\",[1,[1,[6,\"d.f32\",[\"cy\"]],\"+\",[5,\"0.5\"]],\"/\",[6,\"d.f32\",[\"LATTICE_GRID\"]]]],[13,\"ddx\",[6,\"std.select\",[[1,\"cellX\",\"-\",[7,\"p\",\"cursorX\"]],[1,[1,\"cellX\",\"-\",[7,\"p\",\"cursorX\"]],\"*\",[7,\"p\",\"aspect\"]],[1,[7,\"p\",\"aspect\"],\">=\",[5,\"1\"]]]]],[13,\"ddy\",[6,\"std.select\",[[1,[1,\"cellY\",\"-\",[7,\"p\",\"cursorY\"]],\"/\",[7,\"p\",\"aspect\"]],[1,\"cellY\",\"-\",[7,\"p\",\"cursorY\"]],[1,[7,\"p\",\"aspect\"],\">=\",[5,\"1\"]]]]],[13,\"distSq\",[1,[1,\"ddx\",\"*\",\"ddx\"],\"+\",[1,\"ddy\",\"*\",\"ddy\"]]],[13,\"influenceRadius\",[1,[7,\"p\",\"radius\"],\"*\",[5,\"3\"]]],[11,[1,\"distSq\",\"<\",[1,\"influenceRadius\",\"*\",\"influenceRadius\"]],[0,[[13,\"influence\",[6,\"std.exp\",[[1,[1,\"distSq\",\"/\",[1,[7,\"p\",\"radius\"],\"*\",[7,\"p\",\"radius\"]]],\"*\",[4,\"-\",[5,\"1\"]]]]]],[13,\"forceMag\",[1,[1,[1,\"influence\",\"*\",[7,\"p\",\"clampedSpeed\"]],\"*\",[7,\"p\",\"dt\"]],\"*\",[5,\"2\"]]],[2,\"newVelX\",\"=\",[1,\"newVelX\",\"+\",[1,[7,\"p\",\"dirX\"],\"*\",\"forceMag\"]]],[2,\"newVelY\",\"=\",[1,\"newVelY\",\"+\",[1,[7,\"p\",\"dirY\"],\"*\",\"forceMag\"]]]]]]]]],[13,\"newDispX\",[6,\"std.clamp\",[[1,\"dispX\",\"+\",[1,\"newVelX\",\"*\",[7,\"p\",\"subDt\"]]],[4,\"-\",[5,\"0.5\"]],[5,\"0.5\"]]]],[13,\"newDispY\",[6,\"std.clamp\",[[1,\"dispY\",\"+\",[1,\"newVelY\",\"*\",[7,\"p\",\"subDt\"]]],[4,\"-\",[5,\"0.5\"]],[5,\"0.5\"]]]],[2,[8,[7,[7,\"latticeLayout\",\"$\"],\"writeBuf\"],\"idx\"],\"=\",[6,\"d.vec4f\",[\"newDispX\",\"newDispY\",\"newVelX\",\"newVelY\"]]]]]]]]},externals:{\"d.u32\":()=>Y,LATTICE_MAX:()=>Uf,latticeLayout:()=>en,LATTICE_GRID:()=>la,\"d.f32\":()=>a,\"std.select\":()=>F,\"std.exp\":()=>Mt,\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"springLatticeStep\"),CX=y.fn([Y,Y])((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=__tsover_add(__tsover_mul(s,Y(la)),t),o=zf.$.srcBuf[r];Co(zf.$.dispTex,He(t,s),b(o.x,o.y,0,1))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"cx\"},{type:\"i\",name:\"cy\"}],body:[0,[[13,\"idx\",[1,[1,\"cy\",\"*\",[6,\"d.u32\",[\"LATTICE_GRID\"]]],\"+\",\"cx\"]],[13,\"cell\",[8,[7,[7,\"latticeOutputLayout\",\"$\"],\"srcBuf\"],\"idx\"]],[6,\"std.textureStore\",[[7,[7,\"latticeOutputLayout\",\"$\"],\"dispTex\"],[6,\"d.vec2u\",[\"cx\",\"cy\"]],[6,\"d.vec4f\",[[7,\"cell\",\"x\"],[7,\"cell\",\"y\"],[5,\"0\"],[5,\"1\"]]]]]]]},externals:{\"d.u32\":()=>Y,LATTICE_GRID:()=>la,latticeOutputLayout:()=>zf,\"std.textureStore\":()=>Co,\"d.vec2u\":()=>He,\"d.vec4f\":()=>b}})&&e.f)({})).$name(\"springLatticeOutput\");var W5=Qe,RX=y.fn([u,a,u,a,a,a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=u(__tsover_mul(t.x,s),t.y),l=u(__tsover_mul(r.x,s),__tsover_sub(1,r.y)),c=__tsover_sub(d.x,l.x),_=__tsover_sub(d.y,l.y),p=__tsover_mul(o,W5),f=J(p),h=O(p),g=__tsover_add(__tsover_mul(c,f),__tsover_mul(_,h)),x=__tsover_sub(__tsover_mul(_,f),__tsover_mul(c,h)),T=__tsover_add(__tsover_div(g,__tsover_mul(n,2)),.5),S=__tsover_add(__tsover_div(x,__tsover_mul(i,2)),.5);return v(T,S,__tsover_mul(__tsover_mul(__tsover_mul(ot(0,T),ot(T,1)),ot(0,S)),ot(S,1)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"aspect\"},{type:\"i\",name:\"center\"},{type:\"i\",name:\"rotationDeg\"},{type:\"i\",name:\"halfW\"},{type:\"i\",name:\"halfH\"}],body:[0,[[13,\"aspectUV\",[6,\"d.vec2f\",[[1,[7,\"uv\",\"x\"],\"*\",\"aspect\"],[7,\"uv\",\"y\"]]]],[13,\"centerPos\",[6,\"d.vec2f\",[[1,[7,\"center\",\"x\"],\"*\",\"aspect\"],[1,[5,\"1\"],\"-\",[7,\"center\",\"y\"]]]]],[13,\"dx\",[1,[7,\"aspectUV\",\"x\"],\"-\",[7,\"centerPos\",\"x\"]]],[13,\"dy\",[1,[7,\"aspectUV\",\"y\"],\"-\",[7,\"centerPos\",\"y\"]]],[13,\"rotRad\",[1,\"rotationDeg\",\"*\",\"OBF_DEG_TO_RAD\"]],[13,\"cosR\",[6,\"std.cos\",[\"rotRad\"]]],[13,\"sinR\",[6,\"std.sin\",[\"rotRad\"]]],[13,\"rdx\",[1,[1,\"dx\",\"*\",\"cosR\"],\"+\",[1,\"dy\",\"*\",\"sinR\"]]],[13,\"rdy\",[1,[1,\"dy\",\"*\",\"cosR\"],\"-\",[1,\"dx\",\"*\",\"sinR\"]]],[13,\"localU\",[1,[1,\"rdx\",\"/\",[1,\"halfW\",\"*\",[5,\"2\"]]],\"+\",[5,\"0.5\"]]],[13,\"localV\",[1,[1,\"rdy\",\"/\",[1,\"halfH\",\"*\",[5,\"2\"]]],\"+\",[5,\"0.5\"]]],[13,\"insideMask\",[1,[1,[1,[6,\"std.step\",[[5,\"0\"],\"localU\"]],\"*\",[6,\"std.step\",[\"localU\",[5,\"1\"]]]],\"*\",[6,\"std.step\",[[5,\"0\"],\"localV\"]]],\"*\",[6,\"std.step\",[\"localV\",[5,\"1\"]]]]],[10,[6,\"d.vec3f\",[\"localU\",\"localV\",\"insideMask\"]]]]]},externals:{\"d.vec2f\":()=>u,OBF_DEG_TO_RAD:()=>W5,\"std.cos\":()=>J,\"std.sin\":()=>O,\"std.step\":()=>ot,\"d.vec3f\":()=>v}})&&e.f)({})),mc=Et,O5=Qe,UX=y.fn([u,a,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=__tsover_mul(s,O5),l=J(d),c=O(d),_=__tsover_add(__tsover_mul(t.x,__tsover_mul(c,-1)),__tsover_mul(t.y,l)),p=J(__tsover_add(__tsover_mul(__tsover_mul(_,r),mc),o)),f=Z(-1.15,1.15,z(n,0,1));return ce(__tsover_sub(f,i),__tsover_add(f,i),p)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"angleDeg\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"reliefPhase\"},{type:\"i\",name:\"level\"},{type:\"i\",name:\"aa\"}],body:[0,[[13,\"angleRad\",[1,\"angleDeg\",\"*\",\"HP_DEG_TO_RAD\"]],[13,\"c\",[6,\"std.cos\",[\"angleRad\"]]],[13,\"s\",[6,\"std.sin\",[\"angleRad\"]]],[13,\"w\",[1,[1,[7,\"p\",\"x\"],\"*\",[1,\"s\",\"*\",[4,\"-\",[5,\"1\"]]]],\"+\",[1,[7,\"p\",\"y\"],\"*\",\"c\"]]],[13,\"phase\",[1,[1,[1,\"w\",\"*\",\"frequency\"],\"*\",\"HP_TAU\"],\"+\",\"reliefPhase\"]],[13,\"v\",[6,\"std.cos\",[\"phase\"]]],[13,\"thr\",[6,\"std.mix\",[[4,\"-\",[5,\"1.15\"]],[5,\"1.15\"],[6,\"std.clamp\",[\"level\",[5,\"0\"],[5,\"1\"]]]]]],[10,[6,\"std.smoothstep\",[[1,\"thr\",\"-\",\"aa\"],[1,\"thr\",\"+\",\"aa\"],\"v\"]]]]]},externals:{HP_DEG_TO_RAD:()=>O5,\"std.cos\":()=>J,\"std.sin\":()=>O,HP_TAU:()=>mc,\"std.mix\":()=>Z,\"std.clamp\":()=>z,\"std.smoothstep\":()=>ce}})&&e.f)({})),zX=y.fn([u,u,a,a,a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i)=>{\"use gpu\";let d=t.sub(s),l=te(d),c=bt(d.y,d.x),_=J(__tsover_add(__tsover_mul(__tsover_sub(__tsover_mul(l,r),__tsover_mul(c,__tsover_div(1,mc))),mc),o)),p=Z(-1.15,1.15,z(n,0,1));return ce(__tsover_sub(p,i),__tsover_add(p,i),_)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"p\"},{type:\"i\",name:\"c\"},{type:\"i\",name:\"frequency\"},{type:\"i\",name:\"reliefPhase\"},{type:\"i\",name:\"level\"},{type:\"i\",name:\"aa\"}],body:[0,[[13,\"dv\",[6,[7,\"p\",\"sub\"],[\"c\"]]],[13,\"r\",[6,\"std.length\",[\"dv\"]]],[13,\"theta\",[6,\"std.atan2\",[[7,\"dv\",\"y\"],[7,\"dv\",\"x\"]]]],[13,\"phase\",[1,[1,[1,[1,\"r\",\"*\",\"frequency\"],\"-\",[1,\"theta\",\"*\",[1,[5,\"1\"],\"/\",\"HP_TAU\"]]],\"*\",\"HP_TAU\"],\"+\",\"reliefPhase\"]],[13,\"v\",[6,\"std.cos\",[\"phase\"]]],[13,\"thr\",[6,\"std.mix\",[[4,\"-\",[5,\"1.15\"]],[5,\"1.15\"],[6,\"std.clamp\",[\"level\",[5,\"0\"],[5,\"1\"]]]]]],[10,[6,\"std.smoothstep\",[[1,\"thr\",\"-\",\"aa\"],[1,\"thr\",\"+\",\"aa\"],\"v\"]]]]]},externals:{\"std.length\":()=>te,\"std.atan2\":()=>bt,HP_TAU:()=>mc,\"std.cos\":()=>J,\"std.mix\":()=>Z,\"std.clamp\":()=>z,\"std.smoothstep\":()=>ce}})&&e.f)({}));var GX=Ct({pos:u,dir:u,spd:a}).$name(\"AgentPose\");var DX=Ct({rhat:u,strength:a,phi:a}).$name(\"AgentFieldSample\");var LX=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return F(F(__tsover_mul(fr(__tsover_add(__tsover_mul(t,2.3987),.517)),3.141592653589793),a(0),s>.5),a(1.5707963267948966),s>1.5)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"fi\"},{type:\"i\",name:\"restMode\"}],body:[0,[[13,\"randAng\",[1,[6,\"noise.hash11\",[[1,[1,\"fi\",\"*\",[5,\"2.3987\"]],\"+\",[5,\"0.517\"]]]],\"*\",[5,\"3.141592653589793\"]]],[13,\"a\",[6,\"std.select\",[\"randAng\",[6,\"d.f32\",[[5,\"0\"]]],[1,\"restMode\",\">\",[5,\"0.5\"]]]]],[10,[6,\"std.select\",[\"a\",[6,\"d.f32\",[[5,\"1.5707963267948966\"]]],[1,\"restMode\",\">\",[5,\"1.5\"]]]]]]]},externals:{\"noise.hash11\":()=>fr,\"std.select\":()=>F,\"d.f32\":()=>a}})&&e.f)({})).$name(\"agentRestAngle\");var FX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return le(t,v(.299,.587,.114))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[10,[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),BX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return __tsover_sub(1,le(t,v(.299,.587,.114)))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[10,[1,[5,\"1\"],\"-\",[6,\"std.dot\",[\"rgb\",[6,\"d.vec3f\",[[5,\"0.299\"],[5,\"0.587\"],[5,\"0.114\"]]]]]]]]]},externals:{\"std.dot\":()=>le,\"d.vec3f\":()=>v}})&&e.f)({})),IX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return t.x}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[10,[7,\"rgb\",\"x\"]]]]},externals:{}})&&e.f)({})),YX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return t.y}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[10,[7,\"rgb\",\"y\"]]]]},externals:{}})&&e.f)({})),WX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return t.z}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[10,[7,\"rgb\",\"z\"]]]]},externals:{}})&&e.f)({})),OX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=w(w(t.x,t.y),t.z),o=ue(ue(t.x,t.y),t.z);return __tsover_sub(r,o)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"rgb\"},{type:\"i\",name:\"_a\"}],body:[0,[[13,\"mx\",[6,\"std.max\",[[6,\"std.max\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[7,\"rgb\",\"z\"]]]],[13,\"mn\",[6,\"std.min\",[[6,\"std.min\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"]]],[7,\"rgb\",\"z\"]]]],[10,[1,\"mx\",\"-\",\"mn\"]]]]},externals:{\"std.max\":()=>w,\"std.min\":()=>ue}})&&e.f)({})),VX=y.fn([v,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return s}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"_rgb\"},{type:\"i\",name:\"a\"}],body:[0,[[10,\"a\"]]]},externals:{}})&&e.f)({}));var NX=y.fn([a,a],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";let r=w(t,0),o=w(s,0);return __tsover_add(ue(w(t,s),0),$e(__tsover_add(__tsover_mul(r,r),__tsover_mul(o,o))))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"d2\"},{type:\"i\",name:\"wz\"}],body:[0,[[13,\"ox\",[6,\"std.max\",[\"d2\",[5,\"0\"]]]],[13,\"oz\",[6,\"std.max\",[\"wz\",[5,\"0\"]]]],[10,[1,[6,\"std.min\",[[6,\"std.max\",[\"d2\",\"wz\"]],[5,\"0\"]]],\"+\",[6,\"std.sqrt\",[[1,[1,\"ox\",\"*\",\"ox\"],\"+\",[1,\"oz\",\"*\",\"oz\"]]]]]]]]},externals:{\"std.max\":()=>w,\"std.min\":()=>ue,\"std.sqrt\":()=>$e}})&&e.f)({})).$name(\"shapeFieldExtrudeZ\");function vE(){return{colorA:{default:\"#ffffff\",description:\"First color\",transform:ke,ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#000000\",description:\"Second color\",transform:ke,ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}}}function hE(){return{contrast:{default:0,description:\"Pattern contrast (higher = sharper transitions)\",ui:{type:[\"range\",\"map\"],min:-1,max:5,step:.1,label:\"Contrast\",group:\"Effect\"}},balance:{default:0,description:\"Balance between colors (negative = more colorB, positive = more colorA)\",ui:{type:[\"range\",\"map\"],min:-1,max:1,step:.05,label:\"Balance\",group:\"Effect\"}},seed:{default:0,description:\"Random seed for pattern variation\",ui:{type:\"range\",min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}}}}function yE(e=1){return{speed:{default:e,description:\"Animation speed\",ui:{type:\"range\",min:0,max:5,step:.1,label:\"Speed\",group:\"Animation\"}}}}var $I=[{freq:.7,speed:.4,amount:.15,salt:{k:12.9,big:4758.5}},{freq:1.6,speed:.65,amount:.08,salt:{k:78.2,big:2847.1}},{freq:2.9,speed:.3,amount:.04,salt:{k:41.6,big:1593.7}}],CI={k:53.7,big:3847.2},RI=[{timeOffset:0,weight:1},{timeOffset:3.1,weight:.65},{timeOffset:6.7,weight:.45},{timeOffset:9.4,weight:.3}],eu=et({name:\"Aurora\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Mesmerizing aurora borealis with layered curtains, vertical rays, and flowing light.\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#a533f8\",transform:ke,description:\"Edge color at the curtain base\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#22ee88\",transform:ke,description:\"Core color in the bright center\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},colorC:{default:\"#1694e8\",transform:ke,description:\"Tip color at the ray ends\",ui:{type:\"color\",label:\"Color C\",group:\"Colors\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},balance:{default:50,description:\"Shifts color distribution across the curtain height\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Balance\",group:\"Colors\"}},intensity:{default:80,description:\"Overall aurora brightness\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Intensity\",group:\"Aurora\"}},curtainCount:{default:4,compileTime:!0,description:\"Number of aurora curtain layers\",ui:{type:\"range\",min:1,max:4,step:1,label:\"Curtains\",group:\"Aurora\"}},speed:{default:5,description:\"Animation speed\",ui:{type:\"range\",min:-10,max:10,step:.1,label:\"Speed\",group:\"Aurora\"}},waviness:{default:50,description:\"How much the curtains undulate\",ui:{type:[\"range\",\"map\"],min:0,max:200,step:1,label:\"Waviness\",group:\"Aurora\"}},rayDensity:{default:20,description:\"Density of vertical ray structures\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Ray Detail\",group:\"Aurora\"}},height:{default:120,description:\"How tall the aurora extends\",ui:{type:[\"range\",\"map\"],min:10,max:200,step:1,label:\"Height\",group:\"Scene\"}},center:{default:{x:.5,y:0},transform:ct,description:\"Center position of the aurora\",ui:{type:\"position\",label:\"Center\",group:\"Scene\"}},seed:{default:0,description:\"Random seed for variation\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Aurora\"}}},paint:e=>{let{uv:t,viewport:s}=Ko(e),r=P(De(s.member(\"x\"),ht(s.member(\"y\"),1e-6)),\"aspect\"),o=P(it(e),\"auroraTime\"),n=Se(re(\"seed\"),e),i=Se(re(\"center\"),e),d=i.member(\"x\"),l=ae(1,i.member(\"y\")),c=m(Se(re(\"waviness\"),e),.01),_=m(Se(re(\"rayDensity\"),e),.01),p=m(Se(re(\"height\"),e),.01),f=m(Se(re(\"intensity\"),e),.018),h=dt(2.5,.4,m(Se(re(\"balance\"),e),.01)),g=(L,B)=>{let D=P(C(m(o,.06),B),\"tSlow\"),G=P(C(n,Math.fround(L*Math.fround(31.7))),\"lSeed\"),I=P(m(m(ae(t.member(\"x\"),d),r),2),\"wx\"),X=kA({along:I,time:D,waves:$I.map(Ne=>({...Ne,phase:s0(G,Ne.salt)}))}),H=P(Tn(Ze(m(I,.5),m(D,.25),m(G,.1))),\"curtainNoise\"),ee=C(C(l,m(X,c)),m(m(H,.14),c)),Q=P(cA({along:C(I,m(H,2.5)),frequency:m(dt(6,20,_),.15),time:D,speed:.1,phase:s0(G,CI),sharpness:1.5}),\"curtainRays\"),de=m(p,dt(.4,1,Q)),Ee=P(ae(t.member(\"y\"),ee),\"distFromPath\"),he=P(m(de,C(m(Q,.4),.6)),\"topExtent\"),Me=$S({distance:Ee,below:{from:-.04,to:.015},above:{to:he}}),Te=P(Le(De(Ee,C(he,.001)),0,1),\"colorT\"),Pe=dt(.4,1,C(m(H,.5),.5)),Ce=ae(Te,.2),ie=C(m(Fs(m(m(Ce,Ce),-6)),.3),1);return{colorT:Te,alpha:P(m(m(m(Me,Q),Pe),ie),\"curtainAlpha\")}},x=Math.max(1,Math.min(4,Math.round(e.propValues.curtainCount??4))),{weightedSum:T,totalWeight:S}=eE(RI.slice(0,x),({timeOffset:L,weight:B},D)=>{let{colorT:G,alpha:I}=g(D,L);return{value:G,weight:B===1?I:m(I,B)}}),A=P(S,\"auroraAlpha\"),E=P(rs(De(T,C(A,.001)),h),\"auroraAvgT\"),M=Ym({a:re(\"colorA\"),b:re(\"colorB\"),c:re(\"colorC\"),space:re(\"colorSpace\")})(Fe(0,.2,E),Fe(.4,.85,E),e),$=P(m(A,f),\"auroraGlow\");return is(Le(m(M.member(\"rgb\"),$),Dt(0),Dt(1)),Le(m($,.5),0,1))}});var UI=[{amount:.15,schedule:[{waves:[{x:3.2,t:.8},{y:2.8,t:.6}]},{waves:[{x:4.8,y:-3.6,t:-.4}]}]},{amount:.12,schedule:[{waves:[{x:5.6,t:-.5},{y:4.4,t:.7}]}]},{amount:.1,schedule:[{waves:[{x:7.2,y:6.4,t:.3}]},{waves:[{x:2.4,t:-.9}]}]},{amount:.04,schedule:[{waves:[{x:8.8,t:.2},{y:7.6,t:-.8}]}]}],zI=[{waves:[{x:1,t:.4},{y:1,t:.3}]},{waves:[{x:.7,y:.8,t:.2}]}],GI=[{waves:[{x:1.3,t:-.5},{y:1.1,t:.6}]},{waves:[{x:.5,y:-.6,t:.3}]}],tu=et({name:\"Blob\",role:\"generator\",category:\"Textures\",description:\"Organic animated blob with 3D lighting and gradients\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},extraFields:{normLx:{schema:a,initial:0},normLy:{schema:a,initial:0},normLz:{schema:a,initial:1}},boundingBoxDeclaration:{propBindings:{x:{prop:\"center\",as:\"position-x\"},y:{prop:\"center\",as:\"position-y\"}},computeBounds(e,t,s){let r=e.size??.5,o=typeof e.center?.x==\"number\"?e.center.x:.5,n=typeof e.center?.y==\"number\"?e.center.y:.5,i=r*2*s;return{centerXPx:o*t,centerYPx:n*s,widthPx:i,heightPx:i,rotationDeg:0}},writeBounds(e,t,s,r){let o=Math.max(0,e.widthPx/(2*r));return{center:{...t.center??{x:.5,y:.5},x:e.centerXPx/s,y:e.centerYPx/r},size:o}},softnessBinding:{prop:\"softness\",toPx:(e,t,s)=>e*.3*s,fromPx:(e,t,s)=>Math.max(0,Math.min(1,e/(.3*s)))}},props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},colorA:{default:\"#ff6b35\",transform:ke,description:\"Primary color of the blob\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#e91e63\",transform:ke,description:\"Secondary color of the blob\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),size:{default:.5,description:\"Size of the blob\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Size\",group:\"Effect\"}},deformation:{default:.5,description:\"How organic and blobby the shape is (0 = circle, 1 = very blobby)\",ui:{type:\"range\",min:0,max:1,step:.1,label:\"Deformation\",group:\"Effect\"}},softness:{default:.5,description:\"Softness of the blob edges (combines edge width and transition curve)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Softness\",group:\"Effect\"}},highlightIntensity:{default:.5,description:\"Intensity of specular highlight effect\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Highlight Intensity\",group:\"Highlight\"}},highlightX:{default:.3,description:\"Light direction X component\",ui:{type:\"range\",min:-1,max:1,step:.1,label:\"Highlight X\",group:\"Highlight\"}},highlightY:{default:-.3,description:\"Light direction Y component\",ui:{type:\"range\",min:-1,max:1,step:.1,label:\"Highlight Y\",group:\"Highlight\"}},highlightZ:{default:.4,description:\"Light direction Z component\",ui:{type:\"range\",min:-1,max:1,step:.1,label:\"Highlight Z\",group:\"Highlight\"}},highlightColor:{default:\"#ffe11a\",transform:ke,description:\"Color of the specular highlight\",ui:{type:\"color\",label:\"Highlight Color\",group:\"Highlight\"}},speed:{default:.5,description:\"Animation speed\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.1,label:\"Speed\",group:\"Animation\"}},seed:{default:1,description:\"Adjusts the starting state, useful for variation\",ui:{type:\"range\",min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"The center point of the blob\",ui:{type:\"position\",label:\"Center Position\",group:\"Position\",units:[\"%\",\"px\"]}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:e=>{let{uniforms:t}=e,s=S=>En(S,e);US(e,{x:\"highlightX\",y:\"highlightY\",z:\"highlightZ\"},{x:\"normLx\",y:\"normLy\",z:\"normLz\"});let r=P(it(e,\"seed\"),\"blobTime\"),{delta:o,dist:n}=aE({center:re(\"center\")})(e,nE(e)),i={x:o.member(\"x\"),y:o.member(\"y\"),t:r},d=s(re(\"deformation\")),l=P(C(s(re(\"size\")),UI.map(({schedule:S,amount:A})=>m(m(ml(i,S),A),d)).reduce((S,A)=>C(S,A))),\"blobRadius\"),c=P(s(re(\"softness\")),\"blobSoftness\"),_=P(CS({dist:n,radius:l,softness:{width:m(c,.3),curve:C(m(c,2),.5)}}),\"blobMask\"),p=m(m(m(_A({normal:uA({delta:o,dist:n,radius:l}),light:Ze(t.normLx,t.normLy,t.normLz),gloss:32}),C(m(Fe(0,l,n),.5),.5)),s(re(\"highlightIntensity\"))),_),f={x:m(i.x,3),y:m(i.y,3),t:r},h=S=>C(m(ml(f,S),.5),.5),g=eo(re(\"colorSpace\"))(Fe(.1,.9,C(m(h(zI),.6),m(h(GI),.4))),e),x=Se(re(\"highlightColor\"),e),T=m(C(t.colorA.member(\"a\"),t.colorB.member(\"a\")),.5);return is(C(g.member(\"rgb\"),m(x.member(\"rgb\"),p)),m(T,_))}});var{bevelSin:DI}=lS,{fieldGradient:LI}=hT,{isMobileGpuViewport:FI}=ni,BI=Qe,II=JSON.stringify({type:\"sphere3D\",radius:.35});function u0(e,t,s,r,o,n,i,d,l){let c=P(e,\"ex\"),_=P(t,\"ey\"),p=P(s,\"ez\"),f=P(De(c,C(Ir(Je(c,_)),1e-4)),\"horiz\"),h=P(C(.35,m(.65,Fe(-.7,.7,f))),\"warmSide\"),g=P(C(.45,m(.55,Fe(-.7,.7,m(f,-1)))),\"coolSide\"),x=P(Fe(-.65,1,_),\"up\"),T=C(m(l,.03),Ze(.003,.003,.004)),S=dt(dt(Ze(.17,.175,.19),T,Dt(i)),Ze(.56,.57,.6),Dt(m(x,x))),A=Fe(.3,.9,_);S=C(S,m(Ze(.55,.55,.56),A));let E=P(De(C(_,.45),.2),\"cd\"),M=Fs(m(m(E,E),-1));S=C(S,m(l,m(m(m(M,n),.2),g)));let $=P(Fe(.18,-.1,p),\"facing\"),L=P(ht(ae(.32,p),.06),\"pz\"),B=P(De(c,L),\"px\"),D=P(De(_,L),\"py\"),G=P(ae(Us(B),.62),\"bx\"),I=P(ae(Us(ae(D,.3)),.28),\"by\"),X=$n(ht(G,I),0),H=P(C(Ir(ht(Je(G,I),Je(0,0))),X),\"dbox\"),ee=P(C(.05,m(r,.4)),\"boxSoft\"),Q=m(Fe(ee,m(ee,-.6),H),$);S=C(S,m(Ze(2.9,2.87,2.82),Q));let de=Fe(.5,.92,Us(c)),Ee=dt(.55,.07,i);S=m(S,dt(Gt(1),Ee,de));let he=P(C(.065,m(o,.05)),\"gw\"),Me=P(ht(H,0),\"dOut\"),Te=m(Fs(m(m(De(Me,he),De(Me,he)),-1)),Fe(-.06,.1,H));S=C(S,m(d,m(m(m(m(Te,n),1.3),h),$)));let Pe=P(De(C(_,.12),.05),\"fb\");S=C(S,m(d,m(m(m(m(Fs(m(m(Pe,Pe),-1)),n),.5),h),ae(1,$))));let Ce=P(ae(Us(B),.7),\"cbx\"),ie=P(ae(Us(C(D,.78)),.05),\"cby\"),Ne=P(C(Ir(ht(Je(Ce,ie),Je(0,0))),$n(ht(Ce,ie),0)),\"dcard\"),ye=m(Fe(ee,m(ee,-.6),Ne),$);return C(S,m(Ze(.5,.5,.52),ye))}var su=et({name:\"Chrome\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Studio-lit mirror chrome \\u2014 a precision-machined shape with a controllable polished bevel, softly convex faces and a photographic studio reflected in them: one huge frontal softbox, black flags, and thin warm/cool strip lights that fringe amber and ice-blue exactly where the reflections break\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=e.volumetric,n=FI(),i=.01,d=.0081,l=to(e,t,{scale:s.scale}),{s0:c,sX:_,sY:p,sdf:f,pxH:h}=l,g=zo(e,l),x=g.member(\"x\"),T=g.member(\"y\"),S;if(o)S=vl(l);else{let pt=P(se(LI,\"fieldGradient\",[c,_,p,Gt(i)]),\"grad\"),Ut=P(ht(Ir(pt),1e-4),\"glen\"),Lt=P(De(pt.member(\"x\"),Ut),\"gx\"),Wt=P(De(pt.member(\"y\"),Ut),\"gy\"),vs=ht(s.bevelWidth,.003),jt=P(m(f,-1),\"depth\"),Qt=P(Le(De(jt,vs),0,1),\"t0\"),$s=P(se(DI,\"bevelSin\",[Le(C(Qt,m(m(m(m(m(P(se(qn,\"perlin12d\",[Je(m(x,21),m(T,21))]),\"rimN\").member(\"x\"),s.waviness),.22),Qt),ae(1,Qt)),4)),0,1),s.bevelShape]),\"sBev\"),Is=m(m(s.curvature,.14),De(d,C(m(jt,jt),d))),Ys=P(Ir(Je(x,T)),\"flen\"),hs=P(De(x,ht(Ys,1e-4)),\"dgx\"),rr=P(De(T,ht(Ys,1e-4)),\"dgy\"),or=P(m(m(s.curvature,.75),Fe(0,.5,Ys)),\"sSphere\"),Cr=P(ht($s,Is),\"sEdge\"),Zr=P(Je(C(m(Lt,Cr),m(hs,or)),C(m(Wt,Cr),m(rr,or))),\"txy\"),Rr=P($n(Ir(Zr),.9995),\"tl\"),ur=P(m(Zr,De(Rr,ht(Ir(Zr),1e-4))),\"tn\"),Qr=un(ae(1,m(Rr,Rr)));S=P(Ze(ur.member(\"x\"),ur.member(\"y\"),m(Qr,-1)),\"nGeo\")}let A=P(Xm(Je(C(m(x,1.05),m(r,.08)),m(T,1.05)),1),\"wg\"),E=P(m(s.waviness,.2),\"wAmt\"),M=li(S,m(A.member(\"x\"),E),m(A.member(\"y\"),E)),$=di(t,l,.55),L=P(jo($,M),\"R\"),B=Om(M,$),D=P(C(m(s.envRotation,BI),m(Zt(m(r,.23)),.05)),\"rotA\"),G=P(kn(D),\"envC\"),I=P(Zt(D),\"envS\"),X=P(m(L.member(\"y\"),-1),\"upY\"),H=P(ae(m(L.member(\"x\"),G),m(X,I)),\"rx0\"),ee=P(C(m(L.member(\"x\"),I),m(X,G)),\"ry0\"),Q=P(C(m(Zt(m(r,.5)),.4),m(Zt(C(m(r,.19),1.7)),.2)),\"orbit\"),de=P(kn(Q),\"oc\"),Ee=P(Zt(Q),\"os\"),he=P(C(m(H,de),m(L.member(\"z\"),Ee)),\"rx\"),Me=P(ae(m(L.member(\"z\"),de),m(H,Ee)),\"rz0\"),Te=P(m(Zt(C(m(r,.31),.9)),.12),\"nod\"),Pe=P(kn(Te),\"nc\"),Ce=P(Zt(Te),\"ns\"),ie=P(ae(m(ee,Pe),m(Me,Ce)),\"ry\"),Ne=P(C(m(Me,Pe),m(ee,Ce)),\"rz\"),ye=Fe(.75,1,m(M.member(\"z\"),-1)),Ve=P(s.softness,\"soft\"),qe=P(C(Ve,m(ye,.2)),\"softEff\"),st=P(s.spectral,\"spectral\"),We=P(s.shadows,\"shadows\"),Be=P(s.warmColor.member(\"rgb\"),\"warmC\"),rt=P(s.coolColor.member(\"rgb\"),\"coolC\"),tt=P(u0(he,ie,Ne,qe,Ve,st,We,Be,rt),\"envG\"),Ke,Oe;if(n)Ke=tt.member(\"x\"),Oe=tt.member(\"z\");else{let pt=P(m(s.dispersion,C(.004,m(m(B,B),.06))),\"delta\"),Ut=P(u0(he,C(ie,pt),Ne,qe,Ve,st,We,Be,rt),\"envRt\"),Lt=P(u0(he,ae(ie,pt),Ne,qe,Ve,st,We,Be,rt),\"envBt\");Ke=Ut.member(\"x\"),Oe=Lt.member(\"z\")}let gt=Nm(m(m(Ze(Ke,tt.member(\"y\"),Oe),s.environment),s.tint.member(\"rgb\")));return sr(Yr(f,h),is(gt,so(l,s.edgeSoftness)),_s,\"chrome\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the chrome shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the chrome shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the chrome shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},tint:{default:\"#ffffff\",transform:ke,description:\"Metal tint multiplied into the reflection \\u2014 white for silver chrome, warm ivory for gold, dusky rose for copper\",ui:{type:\"color\",label:\"Tint\",group:\"Metal\"}},warmColor:{default:\"#ffa94d\",transform:ke,description:\"Color of the warm strip light hugging the studio horizon \\u2014 the amber band that fringes the reflections\",ui:{type:\"color\",label:\"Warm Light\",group:\"Metal\"}},coolColor:{default:\"#82a7e6\",transform:ke,description:\"Color of the cool wash below the horizon \\u2014 the steel-blue zone the darker reflections fall into\",ui:{type:\"color\",label:\"Cool Light\",group:\"Metal\"}},bevelWidth:{default:.028,description:\"Width of the polished edge bevel, relative to the shape \\u2014 thin for machined jewellery edges, wide for soft pillowed metal\",ui:{type:[\"range\",\"map\"],min:.005,max:.2,step:.001,label:\"Bevel Width\",group:\"Bevel\"}},bevelShape:{default:.55,description:\"Bevel profile \\u2014 0 = one smooth round fillet, 1 = machined: a steep outer fillet, a chamfer plateau and an inner knee, each catching its own line of light\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Bevel Profile\",group:\"Bevel\"}},curvature:{default:.5,description:\"Convex doming of the faces \\u2014 sweeps the big soft studio gradients across otherwise flat metal\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Curvature\",group:\"Bevel\"}},waviness:{default:.15,description:\"Pressed-metal imperfection \\u2014 gently bends the face reflections and wobbles the bevel light lines so the surface reads as real\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Waviness\",group:\"Bevel\"}},...Ho({environment:{description:\"Exposure of the reflected studio \\u2014 the overall brilliance of the chrome\",ui:{group:\"Studio\"}},envRotation:{description:\"Rotates the whole reflected studio \\u2014 spins where the softbox, flags and strips fall\",ui:{type:[\"range\",\"map\"],group:\"Studio\"}}}),softness:{default:.3,description:\"Softness of the studio edges \\u2014 0 = razor polished reflections, 1 = satin diffusion\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Softness\",group:\"Studio\"}},spectral:{default:.9,description:\"The colored accent lights: an amber glow hugging the softbox edge and an ice-blue wash below it. 0 = a fully achromatic black-and-white studio.\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Accent Lights\",group:\"Studio\"}},...Ho({dispersion:{default:.3,description:\"Prismatic RGB splitting concentrated on the fast-curving bevel \\u2014 thin rainbow micro-fringes along the edge highlights, distinct from the broad accent lights\",ui:{group:\"Studio\"}}}),shadows:{default:.7,description:\"Depth of the dark studio reflections \\u2014 how hard the black side flags and floor crush toward graphite. 0 lifts them to a soft gray studio.\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Shadows\",group:\"Studio\"}},speed:{default:.5,description:\"Speed of the studio orbit \\u2014 the whole lighting environment slowly wanders around the piece, sliding the reflections across faces and edges. 0 freezes it.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Studio\"}},...Ho({edgeSoftness:{ui:{group:\"Surface\"}}}),shape:{default:II,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var ru=et({name:\"ColorWheel\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"A directional gradient that smoothly cycles through rainbow colors or a custom set of three colors\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{mode:{default:\"rainbow\",compileTime:!0,description:\"Rainbow cycles through the full spectrum; Custom loops through your three chosen colors\",ui:{type:\"select\",options:[{label:\"Rainbow\",value:\"rainbow\"},{label:\"Custom\",value:\"custom\"}],label:\"Mode\",group:\"Colors\"}},colorA:{default:\"#ff0000\",transform:ke,description:\"First color in the cycle\",ui:{type:\"color\",label:\"Color 1\",group:\"Colors\",condition:{mode:\"custom\"}}},colorB:{default:\"#00ff88\",transform:ke,description:\"Second color in the cycle\",ui:{type:\"color\",label:\"Color 2\",group:\"Colors\",condition:{mode:\"custom\"}}},colorC:{default:\"#0066ff\",transform:ke,description:\"Third color in the cycle\",ui:{type:\"color\",label:\"Color 3\",group:\"Colors\",condition:{mode:\"custom\"}}},scale:{default:1,description:\"Number of color cycles across the viewport\",ui:{type:[\"range\",\"map\"],min:.1,max:10,step:.1,label:\"Scale\",group:\"Effect\"}},angle:{default:0,transform:Ra,description:\"Direction the gradient flows\",ui:{type:[\"range\",\"map\"],min:-180,max:180,step:1,label:\"Angle\",group:\"Effect\"}},speed:{default:.05,description:\"Speed at which the gradient cycles\",ui:{type:\"range\",min:-1,max:1,step:.01,label:\"Speed\",group:\"Animation\"}},colorSpace:{default:\"oklch\",transform:ft,compileTime:!0,description:\"Color space for blending between custom colors\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\",condition:{mode:\"custom\"}}}},paint:sA({mode:re(\"mode\"),direction:re(\"angle\"),scale:re(\"scale\"),palette:{a:re(\"colorA\"),b:re(\"colorB\"),c:re(\"colorC\")},space:re(\"colorSpace\")})});var xE=lA({angle:re(\"angle\"),density:re(\"density\"),speedVariance:re(\"speedVariance\"),trailLength:re(\"trailLength\"),strokeWidth:re(\"strokeWidth\"),rounding:re(\"rounding\"),balance:re(\"balance\")}),gE=_l({fill:re(\"colorB\"),stroke:re(\"colorA\"),mask:xE.fade,space:re(\"colorSpace\")}),ou=et({name:\"FallingLines\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Directional falling lines with a leading-to-trailing color fade\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#ffffff\",transform:ke,description:\"Color at the leading edge of each line\",ui:{type:\"color\",label:\"Lead Color\",group:\"Colors\"}},colorB:{default:\"#ffffff00\",transform:ke,description:\"Color at the trailing edge (transparent by default)\",ui:{type:\"color\",label:\"Trail Color\",group:\"Colors\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for interpolation between lead and trail colors\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},angle:{default:90,description:\"Direction of movement in degrees (90=down, 270=up, 0=right, 180=left)\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Angle\",group:\"Effect\"}},speed:{default:.5,description:\"Movement speed\",ui:{type:\"range\",min:0,max:3,step:.01,label:\"Speed\",group:\"Animation\"}},speedVariance:{default:.3,description:\"Per-line speed variance (0=uniform, 1=high variance)\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Speed Variance\",group:\"Animation\"}},density:{default:15,description:\"Number of line columns across the canvas\",ui:{type:\"range\",min:1,max:60,step:1,label:\"Density\",group:\"Effect\"}},trailLength:{default:.35,description:\"Streak length relative to spacing (0=point, 1=continuous)\",ui:{type:[\"range\",\"map\"],min:.01,max:1,step:.01,label:\"Trail Length\",group:\"Effect\"}},balance:{default:.5,description:\"Color mix midpoint (0.5=linear, 0=all trailing/colorB, 1=all leading/colorA)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Balance\",group:\"Colors\"}},strokeWidth:{default:.15,description:\"Line thickness as fraction of column width (0=hairline, 1=full width)\",ui:{type:[\"range\",\"map\"],min:.02,max:1,step:.02,label:\"Stroke Width\",group:\"Effect\"}},rounding:{default:1,description:\"Rounds the leading edge (0=flat/square, 1=fully rounded cap)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Rounding\",group:\"Effect\"}}},paint:oA(gE,aA(nA(gE),xE.mask))});var YI=4*Math.PI,yl=[{scale:2,offsets:[[5.2,1.3],[1.7,9.2]],reach:.25},{scale:1.5,offsets:[[8.3,2.8],[3.1,7.4]],reach:.2}],nu=et({name:\"FlowingGradient\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Liquid silk gradient with organic flowing color bands\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},extraFields:{convA:{schema:v,initial:[0,0,0]},convB:{schema:v,initial:[0,0,0]},convC:{schema:v,initial:[0,0,0]},convD:{schema:v,initial:[0,0,0]}},props:{colorA:{default:\"#0a0015\",transform:ke,description:\"Deep background color\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#6b17e6\",transform:ke,description:\"Primary accent color\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},colorC:{default:\"#ff4d6a\",transform:ke,description:\"Secondary accent color\",ui:{type:\"color\",label:\"Color C\",group:\"Colors\"}},colorD:{default:\"#ff6b35\",transform:ke,description:\"Tertiary accent color\",ui:{type:\"color\",label:\"Color D\",group:\"Colors\"}},colorSpace:{default:\"oklch\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},speed:{default:1,description:\"Animation speed\",ui:{type:\"range\",min:0,max:10,step:.1,label:\"Speed\",group:\"Effect\"}},distortion:{default:.5,description:\"Organic distortion intensity\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.1,label:\"Distortion\",group:\"Effect\"}},seed:{default:0,description:\"Random seed for variation\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}}},paint:e=>{let{uv:t,viewport:s}=Ko(e),r=P(De(s.member(\"x\"),ht(s.member(\"y\"),1e-6)),\"aspect\"),o=P(m(it(e),.075),\"flowTime\"),n=P(m(Se(re(\"seed\"),e),.17),\"flowSeed\"),i=P(Se(re(\"distortion\"),e),\"flowStrength\"),d=P(ae(t,.5),\"flowCentred\"),l=P(m(m(Tn(Ze(C(m(d.member(\"x\"),.8),m(o,.4)),ae(m(d.member(\"y\"),.8),m(o,.25)),n)),YI),i),\"flowAngle\"),c=P(Bm(Je(d.member(\"x\"),De(d.member(\"y\"),r)),kn(l),Zt(l)),\"flowSpun\"),_=P(Je(c.member(\"x\"),m(c.member(\"y\"),r)),\"flowRot\"),p=m(o,2),f=P(C(_.member(\"x\"),m(De(Zt(C(m(_.member(\"y\"),5),p)),50),i)),\"flowShearX\"),h=P(n0({at:Je(f,C(_.member(\"y\"),m(De(Zt(C(m(f,7.5),p)),25),i))),scale:yl[0].scale,z:C(m(o,.5),n),offsets:yl[0].offsets,reach:yl[0].reach,strength:i}),\"flowWarp1\"),g=P(C(m(o,.3),n),\"flowTz\"),x=P(n0({at:h.member(\"xy\"),scale:yl[1].scale,z:g,offsets:yl[1].offsets,reach:yl[1].reach,strength:i}),\"flowWarp2\"),T=Tn(Ze(m(x.member(\"x\"),1.8),m(x.member(\"y\"),1.8),g)),S=P(rs(C(m(h.member(\"z\"),.5),.5),1.5),\"flowHardness\"),A=P(dt(.5,.008,S),\"flowEdge\"),E=P(Fe(m(A,-1),A,T),\"flowT1\"),M=P(Fe(m(A,-1),A,h.member(\"w\")),\"flowT2\"),$=P(tA({a:re(\"colorA\"),b:re(\"colorB\"),c:re(\"colorC\"),d:re(\"colorD\"),space:re(\"colorSpace\")})(E,M,e),\"flowBase\"),L=G=>ae(1,Us(ae(m(G,2),1))),B=m(ht(L(E),L(M)),S),D=m(C(m(C(m(x.member(\"z\"),.5),.5),.12),.94),C(1,m(B,.35)));return is(Le(m($.member(\"rgb\"),D),Dt(0),Dt(1)),$.member(\"a\"))}});var au=et({name:\"FractalNoise\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Multi-octave fractal Brownian motion noise texture with true noise evolution\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#000000\",transform:ke,description:\"First color\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#ffffff\",transform:ke,description:\"Second color\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),octaves:{default:4,compileTime:!0,description:\"Number of noise octaves (more = more detail)\",ui:{type:\"range\",min:1,max:8,step:1,label:\"Octaves\",group:\"Effect\"}},detail:{default:2,description:\"How much finer each successive octave becomes\",ui:{type:[\"range\",\"map\"],min:1,max:4,step:.1,label:\"Detail\",group:\"Effect\"}},contrast:{default:.5,description:\"How strongly finer octaves contribute \\u2014 higher values create more texture contrast\",ui:{type:[\"range\",\"map\"],min:.1,max:1,step:.01,label:\"Contrast\",group:\"Effect\"}},speed:{default:.15,description:\"Speed at which the noise pattern evolves in place\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Speed\",group:\"Animation\"}},angle:{default:0,transform:Ra,description:\"Rotation angle in degrees\",ui:{type:[\"range\",\"map\"],min:-180,max:180,step:1,label:\"Angle\",group:\"Effect\"}},seed:{default:0,description:\"Random seed for pattern variation\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:zA({angle:re(\"angle\"),detail:re(\"detail\"),contrast:re(\"contrast\"),octaves:re(\"octaves\"),seed:re(\"seed\"),space:re(\"colorSpace\")})});var WI=JSON.stringify({type:\"sphere3D\",radius:.35}),iu=et({name:\"Frost\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Photoreal frozen ice \\u2014 thickness-driven subsurface scattering that reads as a solid block, with fine frost crystals creeping in from the edges\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",chord:\"firstLobe\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=e.volumetric,n=.01,i=to(e,t,{scale:s.scale}),{s0:d,sX:l,sY:c,sdf:_,pxH:p}=i,f=ii(i),h=so(i,s.edgeSoftness),g=zo(e,i),x=g.member(\"x\"),T=g.member(\"y\"),S=P(Le(De(m(_,-1),ht(.3,.01)),0,1),\"depthNorm\"),A,E;if(o){let gt=P(Le(De(ae(l.member(\"w\"),d.member(\"w\")),n),-4,4),\"ddx\"),pt=P(Le(De(ae(c.member(\"w\"),d.member(\"w\")),n),-4,4),\"ddy\");A=P(Jr(Ze(gt,pt,-1)),\"nBase\"),E=P(De(1,C(1,m(Le(C(m(gt,gt),m(pt,pt)),0,2),2))),\"steepAtten\")}else{let gt=P(m(un(ht(ae(1,m(S,S)),0)),1.8),\"bevelSlope\");A=P(Jr(Ze(m(f.member(\"x\"),gt),m(f.member(\"y\"),gt),-1)),\"nBase\"),E=Gt(1)}let M=P(m(Kd(i,e),s.density),\"thickness\"),$=P(Le(m(M,1.2),0,1),\"depthT\"),L=P(Hm(M,m(Ze(1.6,.85,.45),s.absorption)),\"transmit\"),B=P(m(dt(Ze(1,1,1),s.iceColor.member(\"rgb\"),Dt($)),L),\"scatteredRgb\"),D=P(m(ae(1,Fe(0,ht(m(s.frostDepth,.3),.01),m(_,-1))),s.frostAmount),\"frostField\"),G=P(m(s.frostScale,60),\"frostScl\"),I=.004,X=P($r(m(x,G),m(T,G)),\"fn0\"),H=De(ae($r(m(C(x,I),G),m(T,G)),X),I),ee=De(ae($r(m(x,G),m(C(T,I),G)),X),I),Q=P(m(m(D,s.frostRoughness),E),\"frostNormalAmp\"),de=m(s.frostScale,40),Ee=se(fy,\"mxWorleyNoiseFloat2Pub\",[Je(m(x,de),m(T,de)),Gt(1)]),he=P(sr(r0(D,0),Ze(m(m(H,Q),.03),m(m(ee,Q),.03),m(Fe(.25,0,Ee),D)),Ze(0,0,0),\"frostFx\",[g,D,G,E]),\"fx3\"),Me=li(A,he.member(\"x\"),he.member(\"y\")),Te=pn(Wr(s.lightAngle,\"light\"),-.6),Pe=Te.member(\"L\"),Ce=P(Gs(Me,Pe),\"ndl\"),ie=P(Le(Gs(Me,Te.member(\"H\")),0,1),\"ndh\"),Ne=rs(C(m(Ce,.5),.5),.7),ye=m(m(m(L,Le(C(m(Gs(Pe,Ze(0,0,1)),.5),.5),0,1)),s.scatter),ae(1,m($,.4))),Ve=C(m(B,C(m(Ne,.6),.5)),m(ye,.5)),qe=P(C(m($r(C(m(x,190),13.7),ae(m(T,190),4.3)),.5),.5),\"glintField\"),st=C(m(Zt(C(m(r,3),m(qe,40))),.5),.5),We=sr(r0(D,0),m(m(m(Fe(.72,.96,m(qe,st)),C(m(rs(ie,6),.6),.4)),D),s.sparkle),Gt(0),\"sparkleGlint\",[g,D,ie]),Be=m(Ze(.95,.98,1),C(m(he.member(\"z\"),.4),m(We,4))),rt=m(rs(ci(Me),3),s.fresnel),tt=m(Ze(.85,.93,1),m(rt,1.5)),Ke=P(m(m(rs(ie,16),.4),s.gloss),\"broadSpec\"),Oe=P(C(C(C(C(Ve,m(Ze(.4,.46,.55),s.ambient)),Dt(Ke)),tt),Be),\"iceRgb\");return sr(Yr(_,p),is(Oe,h),_s,\"frost\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the ice shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the ice shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the ice shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},iceColor:{default:\"#0597fc\",transform:ke,description:\"Ice tint \\u2014 the color deep ice saturates toward (thin edges stay near white)\",ui:{type:\"color\",label:\"Ice Color\",group:\"Ice\"}},ambient:{default:0,description:\"Cool ambient fill so shadowed ice never goes black\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Ambient\",group:\"Ice\"}},edgeSoftness:{default:.05,description:\"Softness of the shape boundary edge\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Ice\"}},density:{default:5,description:\"Optical depth multiplier \\u2014 how thick and deep the ice reads\",ui:{type:\"range\",min:0,max:10,step:.01,label:\"Density\",group:\"Subsurface\"}},absorption:{default:1,description:\"Beer\\u2013Lambert absorption strength \\u2014 higher drives a deeper blue-teal core\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Absorption\",group:\"Subsurface\"}},scatter:{default:.5,description:\"Forward back-lit glow transmitted through thin ice\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Scatter\",group:\"Subsurface\"}},frostAmount:{default:.8,description:\"Overall density of the rim frost crystals\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Frost\",group:\"Frost\"}},frostDepth:{default:.4,description:\"How far the frost creeps inward from the rim\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Frost Depth\",group:\"Frost\"}},frostScale:{default:1,description:\"Crystal size \\u2014 higher = finer, busier frost\",ui:{type:\"range\",min:.3,max:4,step:.01,label:\"Frost Scale\",group:\"Frost\"}},frostRoughness:{default:3,description:\"Feathery roughness of the frost crystal surface\",ui:{type:\"range\",min:1,max:5,step:.01,label:\"Frost Roughness\",group:\"Frost\"}},sparkle:{default:.5,description:\"Tiny bright crystal glints catching the light at the rim\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Sparkle\",group:\"Frost\"}},gloss:{default:.6,description:\"Surface sheen \\u2014 the broad soft icy specular\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Gloss\",group:\"Surface\"}},fresnel:{default:.02,description:\"Cold rim glow on grazing surfaces\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Fresnel\",group:\"Surface\"}},lightAngle:{default:300,description:\"Key light direction in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Surface\"}},speed:{default:.3,description:\"Sparkle twinkle speed. 0 freezes the sparkle.\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Speed\",group:\"Animation\"}},shape:{default:WI,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var du=et({name:\"GaborNoise\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Oriented sine-grain noise with a fingerprint-like flow\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{...vE(),scale:{default:1.5,description:\"Pattern scale (higher = finer, more detailed patterns; each +1 roughly doubles the frequency)\",ui:{type:\"range\",min:-2,max:5,step:.1,label:\"Scale\",group:\"Effect\"}},frequency:{default:8,description:\"Frequency of the oriented waves within each cell\",ui:{type:\"range\",min:1,max:24,step:.5,label:\"Frequency\",group:\"Effect\"}},...hE(),...yE()},paint:_n(UA($A(RA(CA({frequency:re(\"frequency\")})),{scale:re(\"scale\"),seed:re(\"seed\")}),{contrast:re(\"contrast\"),balance:re(\"balance\")}),eo(re(\"colorSpace\")))});var lu=et({name:\"Godrays\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Volumetric light rays emanating from a point\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{center:{default:{x:0,y:0},transform:ct,description:\"The center point of the god rays\",ui:{type:\"position\",label:\"Center\",group:\"Position\"}},density:{default:.3,description:\"Frequency of ray sectors\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Density\",group:\"Effect\"}},intensity:{default:.8,description:\"Ray visibility within sectors\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Intensity\",group:\"Effect\"}},spotty:{default:1,description:\"Density of spots on rays (higher = more spots)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Spotty\",group:\"Effect\"}},speed:{default:.5,description:\"Animation speed of the rays\",ui:{type:\"range\",min:0,max:2,step:.1,label:\"Speed\",group:\"Animation\"}},rayColor:{default:\"#4283fb\",transform:ke,description:\"Color of the light rays\",ui:{type:\"color\",label:\"Ray Color\",group:\"Colors\"}},backgroundColor:{default:\"transparent\",transform:ke,description:\"Background color\",ui:{type:\"color\",label:\"Background Color\",group:\"Colors\"}}},paint:MA({color:re(\"rayColor\"),background:re(\"backgroundColor\"),coverage:Wm(mA(re(\"center\")),yA({density:re(\"density\"),intensity:re(\"intensity\"),spotty:re(\"spotty\")}))})});var OI=JSON.stringify({type:\"sphere3D\",radius:.35}),_0=7,gl=e=>{let t=Math.sin(e*12.9898)*43758.5453;return t-Math.floor(t)},bE=[],wE=[];for(let e=0;e<_0;e++){let t=e*2.399963,s=Math.sqrt((e+.5)/_0);bE.push([s*Math.cos(t),s*Math.sin(t),.5+gl(e+1),.5+gl(e+7)]),wE.push([.5+gl(e+13),gl(e+2)*6.2831853,gl(e+5)*6.2831853,gl(e+9)*6.2831853])}var cu=et({name:\"Goo\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Photoreal wet liquid \\u2014 animated 3D metaball blobs that merge and bulge to loosely form the shape, with sliding wet highlights, a clearcoat rim and a translucent body\",animatedTime:{speed:\"speed\"},props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the goo\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the goo (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the goo in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},gooColor:{default:\"#37c95a\",transform:ke,description:\"Base liquid color (a glossy slime green by default)\",ui:{type:\"color\",label:\"Goo Color\",group:\"Goo\"}},translucency:{default:.6,description:\"Subsurface glow strength \\u2014 deep lobes transmit more color\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Translucency\",group:\"Goo\"}},absorb:{default:2,description:\"How fast thin areas clear and thick areas saturate (Beer\\u2013Lambert)\",ui:{type:\"range\",min:0,max:6,step:.01,label:\"Absorption\",group:\"Goo\"}},containment:{default:.9,description:\"0 = free blobs that ignore the shape, 1 = goo fills the shape and its surface conforms to the 3D form (highlights track the faces as it rotates)\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Containment\",group:\"Goo\"}},edgeSoftness:{default:.06,description:\"Softness of the blob coverage edge\",ui:{type:\"range\",min:0,max:.3,step:.005,label:\"Edge Softness\",group:\"Goo\"}},blobScale:{default:.3,description:\"Base radius of each liquid lobe\",ui:{type:\"range\",min:.1,max:1,step:.01,label:\"Blob Size\",group:\"Blobs\"}},spread:{default:1,description:\"How far the lobes scatter across the shape\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Spread\",group:\"Blobs\"}},merge:{default:.6,description:\"How much the lobes fuse together \\u2014 low = distinct beads, high = one fused mass\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Merge\",group:\"Blobs\"}},bulge:{default:1,description:\"How 3D-rounded each lobe reads \\u2014 dome height of the wet surface\",ui:{type:\"range\",min:0,max:1.5,step:.01,label:\"Bulge\",group:\"Blobs\"}},threshold:{default:.5,description:\"Iso-surface level \\u2014 lower makes fatter, fuller blobs\",ui:{type:\"range\",min:.2,max:.9,step:.01,label:\"Threshold\",group:\"Blobs\"}},lightAngle:{default:300,description:\"Light direction in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Lighting\"}},wetness:{default:2,description:\"Master scale on the sharp specular highlight and clearcoat rim\",ui:{type:\"range\",min:0,max:5,step:.01,label:\"Highlights\",group:\"Lighting\"}},fresnel:{default:.25,description:\"Clearcoat fresnel rim strength wrapping each lobe\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Fresnel\",group:\"Lighting\"}},specColor:{default:\"#ffffff\",transform:ke,description:\"Highlight / rim color (white reads as a clear wet coat)\",ui:{type:\"color\",label:\"Highlight Color\",group:\"Lighting\"}},ambient:{default:.25,description:\"Base fill so shadowed goo isn't black\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Ambient\",group:\"Lighting\"}},speed:{default:.5,description:\"Drift and breathe speed of the blobs. 0 pauses.\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Speed\",group:\"Animation\"}},wobble:{default:.5,description:\"Drift amplitude \\u2014 how far the lobe centers wander\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Wobble\",group:\"Animation\"}},breathe:{default:.3,description:\"Radius pulsing amplitude \\u2014 lobes swell and shrink\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Breathe\",group:\"Animation\"}},seed:{default:1,description:\"Variation offset \\u2014 shifts the blob arrangement\",ui:{type:\"range\",min:0,max:100,step:1,label:\"Seed\",group:\"Animation\"}},shape:{default:OI,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}},...Bs({chord:\"firstLobe\",stencil:{kind:\"forward\",eps:.004},surface:(e,t)=>{let{uniforms:s}=t,r=P(it(t,\"seed\"),\"gooT\"),o=.004,n=P(e.surf0,\"s0\"),i=P(e.sdfUV,\"sdfUV\"),d=P(ae(i.member(\"x\"),.5),\"px\"),l=P(ae(i.member(\"y\"),.5),\"py\"),c=un(C(m(d,d),m(l,l))),_=P(m(s.spread,.45),\"spread\"),p=P(m(s.wobble,.12),\"driftAmp\"),f=P(s.breathe,\"breatheAmp\"),h=C(.65,m(s.merge,.7)),g=P(m(m(s.blobScale,.38),h),\"baseR\"),x=C(C(C(_,m(g,C(1,f))),p),.2),T=null,S=null,A=null;for(let Oe=0;Oe<_0;Oe++){let gt=bE[Oe],pt=wE[Oe],Ut=P(C(m(gt[0],_),m(p,Zt(C(m(r,gt[2]),pt[1])))),`cx${Oe}`),Lt=P(C(m(gt[1],_),m(p,kn(C(m(r,gt[3]),pt[2])))),`cy${Oe}`),Wt=P(m(g,C(1,m(f,Zt(C(m(r,pt[0]),pt[3]))))),`rVal${Oe}`),vs=P(De(1,ht(m(Wt,Wt),1e-4)),`invR2_${Oe}`),jt=P(ae(d,Ut),`dcx${Oe}`),Qt=P(ae(l,Lt),`dcy${Oe}`),$s=Fs(m(m(C(m(jt,jt),m(Qt,Qt)),vs),-1)),Is=P(ae(C(d,o),Ut),`dxx${Oe}`),Ys=Fs(m(m(C(m(Is,Is),m(Qt,Qt)),vs),-1)),hs=P(ae(C(l,o),Lt),`dyy${Oe}`),rr=Fs(m(m(C(m(jt,jt),m(hs,hs)),vs),-1));T=T?C(T,$s):$s,S=S?C(S,Ys):Ys,A=A?C(A,rr):rr}let E=P(ae(1,Fe(-.06,.06,n.member(\"x\"))),\"inside0\"),M=P(ae(1,Fe(-.06,.06,e.surfX.member(\"x\"))),\"insideX\"),$=P(ae(1,Fe(-.06,.06,e.surfY.member(\"x\"))),\"insideY\"),L=s.containment,B=P(C(m(T,dt(Gt(1),E,L)),m(E,L)),\"H0\"),D=P(C(m(S,dt(Gt(1),M,L)),m(M,L)),\"Hx\"),G=P(C(m(A,dt(Gt(1),$,L)),m($,L)),\"Hy\"),I=P(ht(s.edgeSoftness,.001),\"soft\"),X=Fe(ae(s.threshold,I),C(s.threshold,I),B),H=De(ae(D,B),o),ee=De(ae(G,B),o),Q=P(C(m(s.bulge,.12),.03),\"metaSlope\"),de=$n($n(E,M),$),Ee=P(m(m(L,1.6),de),\"shapeRelief\"),he=Le(De(ae(e.surfX.member(\"w\"),n.member(\"w\")),o),-6,6),Me=Le(De(ae(e.surfY.member(\"w\"),n.member(\"w\")),o),-6,6),Te=P(Jr(Ze(C(m(m(H,-1),Q),m(he,Ee)),C(m(m(ee,-1),Q),m(Me,Ee)),-1)),\"n\"),Pe=P(Le(C(m(un(ht(ae(B,s.threshold),0)),s.bulge),m(m(ht(m(n.member(\"x\"),-1),0),L),1.2)),0,1),\"thick\"),Ce=pn(Wr(s.lightAngle,\"light\"),-.8),ie=P(Le(Gs(Te,Ce.member(\"L\")),0,1),\"ndl\"),Ne=P(Le(Gs(Te,Ce.member(\"H\")),0,1),\"ndh\"),ye=m(rs(Ne,232),1.7),Ve=m(rs(Ne,32),.25),qe=m(Fe(.992,.999,Ne),1.9),st=m(rs(ci(Te),5),s.fresnel),We=m(s.specColor.member(\"rgb\"),m(C(C(C(ye,Ve),qe),st),s.wetness)),Be=Fs(m(m(s.absorb,-1),ae(1,Pe))),rt=P(s.gooColor.member(\"xyz\"),\"gooRgb\"),tt=m(m(rt,m(s.translucency,Be)),C(m(ie,.5),.5)),Ke=P(C(C(m(rt,C(s.ambient,m(ie,.7))),tt),We),\"gooOut\");return sr(MS(c,x),is(Ke,m(X,s.gooColor.member(\"w\"))),_s,\"goo\")}})});var VI=JSON.stringify({type:\"sphere3D\",radius:.35}),NI=[{color:\"#02010f\",position:0},{color:\"#2a0a8a\",position:.2},{color:\"#a41c9b\",position:.45},{color:\"#e8632b\",position:.7},{color:\"#f9e25f\",position:.9},{color:\"#ffffff\",position:1}],p0=(e,t,s,r)=>{let o=dt(-.6,.6,s),n=ae(XA(C(m(t,4),m(Gt(r),13.7)),C(m(s,3),m(Gt(r),7.1))),.5),i=P(C(ae(e,o),m(n,.12)),\"aEff\");return Le(m(Fs(De(m(m(i,i),-1),.0256)),m(Fe(0,.15,s),ae(1,Fe(.85,1,s)))),0,1)},uu=et({name:\"Heatmap\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Thermal-camera heat flowing through any 2D, SVG, or 3D shape. Powered by Paper Shaders.\",animatedTime:{speed:\"speed\"},...Bs({stencil:\"centre\",surface:(e,t)=>{let{uniforms:s,propValues:r}=t,o=it(t),n=P(e.sdfUV,\"suv\"),i=ht(s.scale,.001),d=P(De(e.surf0.member(\"r\"),i),\"f\"),l=P(ae(1,Fe(-.003,.003,d)),\"inside\"),c=Qm(s.angle,\"travel\"),_=P(ae(n.member(\"xy\"),Je(.5,.5)),\"rel\"),p=P(Gs(_,c.tangent),\"a\"),f=P(m(Gs(_,c.perp),-1),\"b\"),h=P(ae(m(.1,o),.3),\"tBase\"),g=C(.8,m(.8,Fs(De(m(ht(m(d,-1),0),-1),.12))));g=P(dt(g,0,p0(p,f,Uo(h),1)),\"inner1\"),g=P(dt(g,0,p0(p,f,Uo(C(h,1/3)),2)),\"inner2\"),g=P(dt(g,0,p0(p,f,Uo(C(h,2/3)),3)),\"inner3\"),g=m(g,m(2,s.innerGlow)),g=C(g,m(m(s.contour,2),Fs(De(m(Us(d),-1),.03)))),g=m($n(g,1),l),g=P(rs(ht(g,0),1.2),\"inner\");let x=Fs(De(m(ht(d,0),-1),C(.05,m(.15,s.outerGlow)))),T=Uo(ae(m(h,3),.1)),S=P(Uo(ae(m(p,1.2),T)),\"yy\"),A=C(.5,m(Fe(.3,.65,S),ae(1,Fe(.65,1,S)))),E=P(m(m(m(m(m(m(.9,rs(x,.8)),A),5),s.outerGlow),s.outerGlow),ae(1,l)),\"outer\"),M=Le(C(g,E),0,1),$=P(m(m(m(Fe(-.06,.1,n.member(\"x\")),ae(1,Fe(.9,1.06,n.member(\"x\")))),Fe(-.06,.1,n.member(\"y\"))),ae(1,Fe(.9,1.06,n.member(\"y\")))),\"frameFade\");M=m(M,$),M=C(M,m(.005,ae(hl(m(n.member(\"x\"),991.3),m(n.member(\"y\"),787.7)),.5))),M=P(Le(M,0,1),\"heat\");let L=m(Le(C(l,E),0,1),$),B=r.colorSpace??0,D=r.stopCount??0,G;D>1?G=dl(M,{colorsArray:s.colorsArray,positionsArray:s.positionsArray,convertedColorsArray:s.convertedColorsArray,stopCount:s.stopCount},B):G=se(Xo[B]??lr,\"mixColors\",[s.colorA,s.colorB,M]);let I=P(G,\"ramp\");return is(Le(I.member(\"xyz\"),Ze(0,0,0),Ze(1,1,1)),m(I.member(\"w\"),L))}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the heatmap shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the heatmap shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the heatmap shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},colorA:{default:\"#02010f\",transform:ke,description:\"Cold color (used when no gradient stops are set)\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#f9e25f\",transform:ke,description:\"Hot color (used when no gradient stops are set)\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:{...Ls(),default:NI},colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space for the heat ramp interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},innerGlow:{default:.4,description:\"Heat filling the inside of the shape\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Inner Glow\",group:\"Heat\"}},outerGlow:{default:.2,description:\"Heat radiating beyond the silhouette\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Outer Glow\",group:\"Heat\"}},contour:{default:.5,description:\"Heat concentrated along the shape boundary\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Contour\",group:\"Heat\"}},angle:{default:90,description:\"Direction the heat waves travel, in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Angle\",group:\"Heat\"}},speed:{default:1,description:\"Speed of the flowing heat. 0 pauses.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Heat\"}},shape:{default:VI,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var qI=JSON.stringify({type:\"sphere3D\",radius:.35}),XI=_o,_u=et({name:\"Hologram\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Volumetric sci-fi hologram \\u2014 a translucent emissive projection of the shape with fresnel-lit edges, depth scan-lines that wrap 3D forms, CRT scanlines, flicker and beam wobble\",animatedTime:{speed:\"speed\"},...Bs({chord:\"firstLobe\",stencil:{kind:\"central\",eps:.008},placeUV:e=>{let{uniforms:t,ctx:s}=e,r=it(e),o=s.uv.member(\"y\"),n=C(m(Zt(C(m(o,38),m(r,2.3))),.5),m(Zt(ae(m(o,11.5),m(r,1.7))),.5));return Je(C(s.uv.member(\"x\"),m(m(n,t.distortion),.012)),o)},surface:(e,t)=>{let{uniforms:s,ctx:r}=t,o=P(it(t),\"animTime\"),n=e.volumetric,i=.008,d=P(e.surf0,\"sC\"),l=P(De(1,r.viewportSize.member(\"y\")),\"pxH\"),c=P(De(d.member(\"x\"),s.scale),\"sdf\"),_=P(e.surfX,\"sR\"),p=P(e.surfL,\"sL\"),f=P(e.surfY,\"sU\"),h=P(e.surfD,\"sD\"),g=ht(m(s.edgeSoftness,.5),.001),x=P(De(ae(_.member(\"x\"),p.member(\"x\")),i*2),\"gradX\"),T=P(ht(m(c,-1),0),\"thickness\"),S=P(Fs(m(T,-5.5)),\"thin\"),A,E;if(n){let We=rs(Le(ae(1,Us(P(Jr(Ze(Le(De(ae(_.member(\"w\"),p.member(\"w\")),i*2),-2,2),Le(De(ae(f.member(\"w\"),h.member(\"w\")),i*2),-2,2),-1)),\"nrm\").member(\"z\"))),0,1),2.2);A=C(m(S,.55),We),E=d.member(\"w\")}else A=S,E=T;let M=P(m(A,s.edgeGlow),\"rim\"),$=m(ae(1,Fs(m(T,-5))),s.fill),L=P(Uo(ae(m(E,s.depthScale),m(o,1.2))),\"phaseFract\"),B=m(Fe(.06,0,$n(L,ae(1,L))),s.depthLines),D=C(m(Zt(m(ae(m(r.uv.member(\"y\"),s.scanlineScale),m(o,m(s.scanlineSpeed,3))),XI)),.5),.5),G=P(dt(Gt(1),D,s.scanlines),\"scanMask\"),I=Uo(m(o,.16)),X=P(ae(r.uv.member(\"y\"),I),\"sweepD\"),H=P(m(Fs(m(m(X,X),-650)),s.sweep),\"sweepGlow\"),ee=C(m(Zt(m(o,40)),.04),m(Zt(m(o,23.3)),.03)),Q=Fe(.6,.95,C(m($r(m(o,6),11),.5),.5)),de=m(C(1,ee),ae(1,m(m(s.flicker,Q),.7))),Ee=C(1,m(m(ae(hl(C(m(r.uv.member(\"x\"),r.viewportSize.member(\"x\")),m(o,57.3)),m(r.uv.member(\"y\"),r.viewportSize.member(\"y\"))),.5),s.grain),.6)),he=P(m(C(m(m(m(C(C($,M),B),G),de),Ee),m(H,G)),s.brightness),\"core\"),Me=C(m(s.distortion,.12),.04),Te=P(m(m(m(M,x),Me),.1),\"fringe\"),Pe=C(he,Te),Ce=ae(he,Te),ie=s.color.member(\"rgb\"),Ne=Ze(m(ie.member(\"x\"),Pe),m(ie.member(\"y\"),he),m(ie.member(\"z\"),Ce)),ye=Le(C(m(M,.5),H),0,.8),Ve=P(dt(Ne,Dt(he),Dt(ye)),\"hotRgb\"),qe=Fe(0,1,Le(m(De(m(c,-1),g),32),0,1)),st=m(Le(he,0,1),qe);return sr(Yr(c,l),is(Ve,st),_s,\"hologram\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the hologram shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the hologram shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the hologram shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},color:{default:\"#5ec8ff\",transform:ke,description:\"Projection tint \\u2014 the color the whole hologram emits (classic sci-fi cyan by default)\",ui:{type:\"color\",label:\"Color\",group:\"Style\"}},brightness:{default:2.5,description:\"Overall emission gain. Bright edges blow out toward white for a hot, projected look.\",ui:{type:\"range\",min:.2,max:3,step:.01,label:\"Brightness\",group:\"Style\"}},edgeSoftness:{default:.04,description:\"Softness of the shape boundary edge \\u2014 keep low for crisp projection edges\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Style\"}},fill:{default:.45,description:\"Translucent interior glow. Driven by optical thickness, so thicker parts of a 3D form glow more \\u2014 the core volumetric cue.\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Volume Fill\",group:\"Volume\"}},edgeGlow:{default:1,description:\"Fresnel rim intensity \\u2014 bright glowing silhouette and, on 3D shapes, the grazing internal walls of extruded logos\",ui:{type:\"range\",min:0,max:2.5,step:.01,label:\"Edge Glow\",group:\"Volume\"}},depthLines:{default:.5,description:\"Iso-depth scan-lines that hug the surface and reveal the 3D form like a volumetric scan. On flat shapes they become concentric contour rings.\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Depth Lines\",group:\"Volume\"}},depthScale:{default:26,description:\"Density of the depth scan-lines \\u2014 higher packs more contour bands through the volume\",ui:{type:\"range\",min:4,max:70,step:1,label:\"Depth Density\",group:\"Volume\"}},scanlines:{default:.55,description:\"CRT scanline contrast \\u2014 how dark the gaps between horizontal projection lines get\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Scanlines\",group:\"Scanlines\"}},scanlineScale:{default:130,description:\"Number of horizontal scanlines across the canvas height\",ui:{type:\"range\",min:20,max:400,step:1,label:\"Scanline Count\",group:\"Scanlines\"}},scanlineSpeed:{default:1,description:\"How fast the scanlines drift upward \\u2014 0 holds them static\",ui:{type:\"range\",min:0,max:5,step:.01,label:\"Scanline Drift\",group:\"Scanlines\"}},sweep:{default:.1,description:\"Brightness of the refresh bar that sweeps vertically through the projection\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Sweep Bar\",group:\"Scanlines\"}},flicker:{default:.3,description:\"Unstable-projector flicker \\u2014 a fast shimmer plus occasional brightness dropouts\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Flicker\",group:\"Interference\"}},distortion:{default:.1,description:\"Continuous horizontal wobble and chromatic edge fringing \\u2014 the wavering of an unstable beam\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Distortion\",group:\"Interference\"}},grain:{default:.7,description:\"Fine projection static \\u2014 animated per-pixel noise over the emission\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Grain\",group:\"Interference\"}},speed:{default:1,description:\"Master animation speed for every animated layer. 0 freezes the projection.\",ui:{type:\"range\",min:0,max:3,step:.01,label:\"Speed\",group:\"Animation\"}},shape:{default:qI,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file \\u2014 when non-empty, activates SVG mode and triggers a shader recompile\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type \\u2014 triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"}}});var HI=JSON.stringify({type:\"sphere3D\",radius:.35}),jI=1/3,KI=2/3,Jm=Math.cos(300*Math.PI/180),e1=Math.sin(300*Math.PI/180),ZI=.37164708971977234,QI=-.6437116265296936,JI=-.6689647436141968,TE=e=>qA(e,[0,jI,KI]),pu=et({name:\"Holographic\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Iridescent holographic foil sticker with animated rainbow sheen and glitter flakes\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",stencil:{kind:\"forward\",eps:.008},surface:(e,t)=>{let{uniforms:s}=t,r=P(it(t),\"animTime\"),o=e.volumetric,n=.008,i=to(e,t,{scale:s.scale}),{s0:d,sX:l,sY:c,sdf:_,pxH:p}=i,f=so(i,s.edgeSoftness),h=P(e.sdfUV,\"suv\"),g=zo(e,i,{uv:h}),x=g.member(\"x\"),T=g.member(\"y\"),S=ae(h.member(\"x\"),.5),A=ae(h.member(\"y\"),.5),E,M,$;if(o){let Lt=P(Le(De(ae(l.member(\"w\"),d.member(\"w\")),n),-1.5,1.5),\"baseNxVol\"),Wt=P(Le(De(ae(c.member(\"w\"),d.member(\"w\")),n),-1.5,1.5),\"baseNyVol\");E=Lt,M=Wt,$=P(De(1,C(1,m(Le(C(m(Lt,Lt),m(Wt,Wt)),0,2),2))),\"steepAtten\")}else{let Lt=ii(i,n),Wt=P(m(ae(1,Le(De(m(_,-1),.06),0,1)),.35),\"domeSlope\");E=P(m(Lt.member(\"x\"),Wt),\"baseNx\"),M=P(m(Lt.member(\"y\"),Wt),\"baseNy\"),$=Gt(1)}let L=P(m(s.crinkleScale,1.35),\"crScale\"),B=P(m(m(s.crinkle,.8),$),\"crAmp\"),D=.02,G=P($r(C(m(x,L),2.7),C(m(T,L),11.3)),\"w0\"),I=De(ae($r(C(m(C(x,D),L),2.7),C(m(T,L),11.3)),G),D),X=De(ae($r(C(m(x,L),2.7),C(m(C(T,D),L),11.3)),G),D),H=P(Jr(Ze(C(E,m(m(I,B),.4)),C(M,m(m(X,B),.4)),-1)),\"n\"),ee=P(m(s.foilScale,2.2),\"fScale\"),Q=P(m(r,.06),\"drift\"),de=C($r(C(m(x,ee),m(Q,Jm)),C(m(T,ee),m(Q,e1))),m($r(ae(C(m(m(x,ee),2.1),5.2),m(m(Q,Jm),1.6)),ae(C(m(m(T,ee),2.1),9.4),m(m(Q,e1),1.6))),.4)),Ee=C(m(H.member(\"x\"),Jm),m(H.member(\"y\"),e1)),he=m(C(m(x,Jm),m(T,e1)),.8),Me=P(C(C(C(C(m(de,.45),he),m(Ee,1.4)),m(r,.18)),De(s.hueShift,360)),\"hue\"),Te=Le(s.saturation,0,1),Pe=TE(Me),Ce=P(dt(Ze(.72,.73,.76),Pe,Dt(m(Te,.85))),\"foilTint\"),ie=P(Le(s.roughness,0,1),\"roughnessC\"),Ne=P(Ze(ZI,QI,JI),\"L\"),ye=P(Jr(C(Ne,Ze(0,0,-1))),\"H\"),Ve=P(Le(C(m(Gs(H,Ne),.5),.5),0,1),\"ndl\"),qe=P(Le(Gs(H,ye),0,1),\"ndh\"),st=m(m(rs(qe,7),.45),ae(1,m(ie,.35))),We=m(m(rs(qe,dt(Gt(42),Gt(12),ie)),.85),ae(1,m(ie,.55))),Be=C(m(Ce,st),m(dt(Ce,Ze(1,1,1),Dt(.6)),We)),rt=$r(m(x,190),m(T,190)),tt=P($r(C(m(x,190),47.3),ae(m(T,190),31.1)),\"flakePhase\"),Ke=P(C(m(Zt(C(m(r,2.2),m(tt,12.6))),.5),.5),\"twinkle\"),Oe=m(m(Fe(.52,.62,C(m(rt,.75),m(Ke,.3))),Le(s.sparkle,0,1)),$),gt=m(m(TE(C(C(Me,.33),m(tt,.5))),C(.85,m(Ke,.55))),C(m(Ve,.6),.7)),pt=C(1,m(m($r(m(S,420),m(A,420)),ie),.28)),Ut=P(m(dt(C(m(Ce,C(m(Ve,.5),.62)),Be),gt,Dt(Oe)),pt),\"foilRgb\");return sr(Yr(_,p),is(Ut,f),_s,\"holo\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the foil shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the foil shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the foil shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},hueShift:{default:0,description:\"Rotates the rainbow spectrum across the foil\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Hue Shift\",group:\"Foil\"}},foilScale:{default:1.5,description:\"Size of the iridescent color patches \\u2014 higher = smaller, busier patches\",ui:{type:\"range\",min:.3,max:6,step:.01,label:\"Foil Scale\",group:\"Foil\"}},saturation:{default:.75,description:\"Rainbow saturation \\u2014 0 = plain silver foil, 1 = fully spectral\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Saturation\",group:\"Foil\"}},roughness:{default:.25,description:\"Matte laminate grain \\u2014 softens the gloss with fine paper-like noise\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Roughness\",group:\"Foil\"}},speed:{default:1,description:\"Animation speed \\u2014 the spectrum drifts across the foil as if the sticker is tilting in your hand. 0 pauses.\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Speed\",group:\"Animation\"}},crinkle:{default:.5,description:\"Laminate wrinkles \\u2014 perturbs the surface so the sheen and rainbow swirl locally instead of lying flat\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Crinkle\",group:\"Foil\"}},crinkleScale:{default:1,description:\"Size of the laminate wrinkles \\u2014 higher = smaller, denser wrinkles\",ui:{type:\"range\",min:.3,max:6,step:.01,label:\"Crinkle Scale\",group:\"Foil\"}},sparkle:{default:.4,description:\"Glitter flakes embedded in the foil \\u2014 tiny facets that refract a shifted hue and twinkle as the spectrum drifts\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Sparkle\",group:\"Foil\"}},edgeSoftness:{default:.05,description:\"Softness of the shape boundary edge\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Foil\"}},shape:{default:HI,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var mu=et({name:\"LensFlare\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Stylize\",description:\"Realistic camera lens flare with artifacts.\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{lightPosition:{default:{x:.3,y:.3},transform:ct,description:\"Position of the light source\",ui:{type:\"position\",label:\"Light Position\",group:\"Light\"}},intensity:{default:.5,description:\"Master brightness of the entire lens flare effect\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Intensity\",group:\"Light\"}},ghostIntensity:{default:.4,description:\"Brightness of internal reflection ghost discs along the flare axis\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Ghosts\",group:\"Reflections\"}},ghostSpread:{default:.7,description:\"Spacing between ghost reflections along the flare axis\",ui:{type:\"range\",min:.1,max:2,step:.01,label:\"Ghost Spread\",group:\"Reflections\"}},ghostChroma:{default:.3,description:\"Rainbow chromatic fringing around ghost element edges\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Ghost Chroma\",group:\"Reflections\"}},haloIntensity:{default:.4,description:\"Brightness of the circular halo ring from internal reflection\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Halo\",group:\"Reflections\"}},haloRadius:{default:.6,description:\"Radius of the halo ring\",ui:{type:\"range\",min:.1,max:1,step:.01,label:\"Halo Size\",group:\"Reflections\"}},haloChroma:{default:.6,description:\"Spectral dispersion on the halo creating rainbow color separation\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Halo Chroma\",group:\"Reflections\"}},haloSoftness:{default:.8,description:\"Thickness and softness of the halo ring\",ui:{type:[\"range\",\"map\"],min:.01,max:3,step:.01,label:\"Halo Softness\",group:\"Reflections\"}},starburstIntensity:{default:.3,description:\"Brightness of diffraction spikes radiating from the light source\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Starburst\",group:\"Effects\"}},starburstPoints:{default:6,description:\"Number of starburst spikes (simulates aperture blade count)\",ui:{type:[\"range\",\"map\"],min:4,max:16,step:1,label:\"Blades\",group:\"Effects\"}},streakIntensity:{default:.15,description:\"Brightness of horizontal anamorphic light streak\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Streak\",group:\"Effects\"}},streakLength:{default:.5,description:\"Horizontal extent of the anamorphic streak\",ui:{type:[\"range\",\"map\"],min:.1,max:1,step:.01,label:\"Streak Length\",group:\"Effects\"}},glareIntensity:{default:.2,description:\"Soft veiling glare that washes out contrast around the light\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Glare\",group:\"Effects\"}},glareSize:{default:.5,description:\"Size of the soft glare glow\",ui:{type:[\"range\",\"map\"],min:.1,max:1,step:.01,label:\"Glare Size\",group:\"Effects\"}},edgeFade:{default:.2,description:\"How much the flare fades when the light source is near the screen edge (0 = no fade, 1 = heavy fade)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Edge Fade\",group:\"Light\"}},speed:{default:.5,description:\"Speed of subtle flare shimmer and starburst rotation\",ui:{type:\"range\",min:0,max:3,step:.1,label:\"Speed\",group:\"Animation\"}}},paint:e=>{let t=Vs(gA({position:re(\"lightPosition\"),intensity:re(\"intensity\"),edgeFade:re(\"edgeFade\")})(e),\"flare\"),s=xA({intensity:re(\"ghostIntensity\"),spread:re(\"ghostSpread\"),chroma:re(\"ghostChroma\")});return EA(a0(a0(s(t,[.15,.2,.3,.1],[1,.95,.9,0],e),s(t,[.3,.12,.25,.65],[1,.85,.55,2.17],e),s(t,[.5,.08,.35,.15],[.62,.82,1,4.34],e),s(t,[.72,.14,.18,.75],[.75,1,.7,6.51],e),s(t,[.95,.06,.3,0],[1,.6,.85,8.68],e),s(t,[1.25,.1,.15,.8],[.55,.88,1,10.85],e),s(t,[1.55,.07,.2,.25],[1,.92,.6,13.02],e)),bA({intensity:re(\"haloIntensity\"),radius:re(\"haloRadius\"),chroma:re(\"haloChroma\"),softness:re(\"haloSoftness\")})(t,e),wA({intensity:re(\"starburstIntensity\"),points:re(\"starburstPoints\")})(t,e),TA({intensity:re(\"streakIntensity\"),length:re(\"streakLength\")})(t,e),SA({intensity:re(\"glareIntensity\"),size:re(\"glareSize\")})(t,e),AA({intensity:re(\"intensity\")})(t,e)),t)}});var eY=JSON.stringify({type:\"sphere3D\",radius:.35}),tY=[{color:\"#7b2ff7\",position:0},{color:\"#00e0ff\",position:.5},{color:\"#ff3d81\",position:1}],fu=et({name:\"LightEdge\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Glowing, pulsing light racing around the edge of any 2D, SVG, or 3D shape. Powered by Paper Shaders.\",animatedTime:{speed:\"speed\"},...Bs({chord:\"firstLobe\",stencil:\"centre\",surface:(e,t)=>{let{uniforms:s,propValues:r}=t,o=it(t),n=Vs(se(iE,\"heartbeatPulse\",[o]),\"beat\"),i=se(dE,\"edgeGlowBand\",[e.surf0.member(\"r\"),e.sdfUV,t.ctx.viewportSize,s.scale,s.thickness,s.softness,s.smokeSize,s.smoke,o,s.pulse,n]),d=i.member(\"x\"),l=i.member(\"y\"),c=r.stopCount??0,_=c>1?Math.min(c,8):2,p=uE(r.colorSpace??0),f=x=>se(lE,\"orbitSpotsAccum\",[l,d,o,n,s.spots,s.spotSize,s.pulse,s.intensity,s.softness,s.seed,nt(x)]),h=x=>c>1?se(_E,\"colorAtIndex\",[s.colorsArray,nt(x)]):x===0?s.colorA:s.colorB,g=se(cE,\"edgeGlowAccumZero\",[]);for(let x=0;x<_;x++)g=se(p,\"edgeGlowAccumColor\",[g,h(x),f(x)]);return se(pE,\"edgeGlowCompose\",[g,s.bloom])}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},colorA:{default:\"#7b2ff7\",transform:ke,description:\"First border light color (used when no gradient stops are set)\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#00e0ff\",transform:ke,description:\"Second border light color (used when no gradient stops are set)\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:{...Ls(),default:tY},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space overlapping lights blend in\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},thickness:{default:.25,description:\"Width of the border band\",ui:{type:[\"range\",\"map\"],min:.01,max:1,step:.01,label:\"Thickness\",group:\"Border\"}},softness:{default:.5,description:\"Edge softness \\u2014 0 = crisp band, 1 = wide smooth gradient\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Softness\",group:\"Border\"}},intensity:{default:.6,description:\"Brightness of the individual light spots\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Intensity\",group:\"Light\"}},bloom:{default:.3,description:\"How additively overlapping lights pile up \\u2014 high values overdrive to white\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Bloom\",group:\"Light\"}},spots:{default:3,description:\"Number of light spots orbiting per color\",ui:{type:\"range\",min:1,max:5,step:1,label:\"Spots\",group:\"Light\"}},spotSize:{default:.5,description:\"Angular size of each light spot\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Spot Size\",group:\"Light\"}},pulse:{default:0,description:\"Heartbeat pulsing \\u2014 synchronizes the lights to a double-beat rhythm\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Pulse\",group:\"Animation\"}},smoke:{default:.3,description:\"Noisy luminous smoke drifting along the border\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Smoke\",group:\"Smoke\"}},smokeSize:{default:.5,description:\"Scale of the smoke billows\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Smoke Size\",group:\"Smoke\"}},speed:{default:1,description:\"Animation speed. 0 pauses.\",ui:{type:\"range\",min:0,max:4,step:.1,label:\"Speed\",group:\"Animation\"}},seed:{default:0,description:\"Random seed \\u2014 re-rolls spot speeds, directions and phases\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Animation\"}},shape:{default:eY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var{isMobileGpuViewport:sY}=ni,rY=JSON.stringify({type:\"sphere3D\",radius:.35});function SE(e,t,s,r,o,n,i){let d=P(ae(m(e,s),m(t,r)),\"ex\"),l=P(C(m(e,r),m(t,s)),\"ey\"),c=P(Je(d,l),\"p\"),_=P(Fe(-.7,.85,l),\"sky\"),p=m(m(_,_),.4),f=P(m(o,1.05),\"r0\"),h=Fe(f,m(f,.2),Ir(ae(c,Je(C(0,n),.55))));p=C(p,m(m(h,1.75),i));let g=P(m(o,1.25),\"r1\"),x=Fe(g,m(g,.2),Ir(ae(c,Je(C(-.45,n),-.4))));p=C(p,m(m(x,1.15),i));let T=P(m(o,1.15),\"r2\"),S=Fe(T,m(T,.2),Ir(ae(c,Je(C(.55,n),.1))));return C(p,m(m(S,1.1),i))}var vu=et({name:\"LiquidMetal\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Flowing liquid chrome \\u2014 a molten reflective surface that wraps the shape, sweeping a procedural studio reflection across animated folds with crisp speculars and prismatic edges\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=sY(),n=to(e,t,{scale:s.scale}),{sdf:i,pxH:d}=n,l=fl(e,n,{bevelWidth:s.bevelWidth,bevelShape:s.bevelShape}),c=zo(e,n),_=P(m(s.ripple,2.6),\"freq\"),p=P(m(r,.12),\"flowT\"),f=P(Je(m(c.member(\"x\"),_),m(c.member(\"y\"),_)),\"q\"),h=m(s.warp,.9),g=P(Xm(C(f,m(jm(m(f,.6),p),h)),.62),\"hg\"),x=P(m(s.turbulence,.5),\"relief\"),T=li(l,m(m(g.member(\"x\"),x),-1),m(m(g.member(\"y\"),x),-1)),S=P(jo(di(t,n),T),\"R\"),A=P(s.environment,\"envStr\"),E=P(Le(s.sharpness,0,1),\"sharp\"),M=P(dt(.5,.18,E),\"keyRad\"),$=P(m(Zt(m(r,.07)),.05),\"drift\"),L=Wr(s.envRotation,\"env\"),B=L.member(\"x\"),D=L.member(\"y\"),G=P(pn(Wr(s.lightAngle,\"light\"),-.7).member(\"H\"),\"Hh\"),I=P(qm(Le(C(C(m(T.member(\"x\"),G.member(\"x\")),m(T.member(\"y\"),G.member(\"y\"))),m(T.member(\"z\"),G.member(\"z\"))),0,1),E,is(60,900,.4,1.4)),\"spec\"),X=P(C(SE(S.member(\"x\"),S.member(\"y\"),B,D,M,$,A),I),\"lumG\"),H,ee;if(o)H=X,ee=X;else{let he=ae(1,Le(m(T.member(\"z\"),-1),0,1)),Me=P(m(m(s.dispersion,.09),C(.4,m(he,1.3))),\"dth\"),Te=P(C(SE(C(S.member(\"x\"),m(S.member(\"y\"),Me)),ae(S.member(\"y\"),m(S.member(\"x\"),Me)),B,D,M,$,A),I),\"lumBoffset\");ee=Te,H=ae(m(X,2),Te)}let Q=P(s.darkColor.member(\"rgb\"),\"dark\"),de=P(s.lightColor.member(\"rgb\"),\"light\"),Ee=is(dt(Q.member(\"x\"),de.member(\"x\"),Le(H,0,1.8)),dt(Q.member(\"y\"),de.member(\"y\"),Le(X,0,1.8)),dt(Q.member(\"z\"),de.member(\"z\"),Le(ee,0,1.8)),so(n,s.edgeSoftness));return sr(Yr(i,d),Ee,_s,\"liquidMetal\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the metal shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the metal shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the metal shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},lightColor:{default:\"#eef0f6\",transform:ke,description:\"The bright tone of the chrome highlights\",ui:{type:\"color\",label:\"Light Color\",group:\"Metal\"}},darkColor:{default:\"#141414\",transform:ke,description:\"The dark tone the reflection falls to in shadow \\u2014 recolor for tinted metal (gold, steel, copper\\u2026)\",ui:{type:\"color\",label:\"Dark Color\",group:\"Metal\"}},turbulence:{default:1,description:\"How molten the surface is \\u2014 the depth of the flowing folds that bend the reflection\",ui:{type:\"range\",min:0,max:1.5,step:.01,label:\"Turbulence\",group:\"Liquid\"}},ripple:{default:4,description:\"Scale of the molten folds \\u2014 higher = smaller, busier ripples\",ui:{type:\"range\",min:.5,max:8,step:.01,label:\"Ripple Scale\",group:\"Liquid\"}},warp:{default:1.5,description:\"Swirl of the flow \\u2014 domain-warps the folds into liquid curls\",ui:{type:\"range\",min:0,max:1.5,step:.01,label:\"Swirl\",group:\"Liquid\"}},speed:{default:.5,description:\"Speed of the molten flow and the slowly drifting reflection. 0 pauses.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Liquid\"}},...Ho({environment:{default:1.5,description:\"Strength of the reflected studio lighting \\u2014 the softboxes seen across the metal\",ui:{group:\"Surface\"}},envRotation:{ui:{group:\"Surface\"}}}),sharpness:{default:.6,description:\"Tightness of the specular highlights \\u2014 1 = razor chrome glints, 0 = soft satin\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Sharpness\",group:\"Surface\"}},...Ho({dispersion:{description:\"Prismatic color fringing along the reflection edges\",ui:{group:\"Surface\"}},lightAngle:{default:265,description:\"Direction of the key light for the specular glints, in degrees\",ui:{group:\"Surface\"}}}),bevelWidth:{default:.05,description:\"Width of the edge bevel, relative to the shape \\u2014 thin for machined jewellery edges, wide for soft pillowed metal\",ui:{type:[\"range\",\"map\"],min:.005,max:.2,step:.001,label:\"Bevel Width\",group:\"Surface\"}},bevelShape:{default:0,description:\"Bevel profile \\u2014 0 = one smooth round fillet, 1 = machined: a steep outer fillet, a chamfer plateau and an inner knee, each catching its own line of light\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Bevel Profile\",group:\"Surface\"}},...Ho({edgeSoftness:{ui:{group:\"Surface\"}}}),shape:{default:rY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var oY=3.141592653589793,hu=et({name:\"Marble\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Classic marble swirl and vein texture using noise-warped sine waves\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#ffffff\",transform:ke,description:\"Base background color of the marble\",ui:{type:\"color\",label:\"Base\",group:\"Colors\"}},colorB:{default:\"#3a2d54\",transform:ke,description:\"Secondary marble tone\",ui:{type:\"color\",label:\"Tone\",group:\"Colors\"}},colorC:{default:\"#0f0f0f\",transform:ke,description:\"Deepest marble color\",ui:{type:\"color\",label:\"Depth\",group:\"Colors\"}},scale:{default:2,description:\"Scale and density of the marble vein pattern\",ui:{type:[\"range\",\"map\"],min:.1,max:10,step:.1,label:\"Scale\",group:\"Effect\"}},turbulence:{default:10,description:\"Amount of noise-driven distortion applied to the veins\",ui:{type:[\"range\",\"map\"],min:0,max:50,step:.5,label:\"Turbulence\",group:\"Effect\"}},speed:{default:.05,description:\"Animation speed\",ui:{type:\"range\",min:0,max:.25,step:.005,label:\"Speed\",group:\"Animation\"}},seed:{default:0,description:\"Random seed for pattern variation\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:e=>{let{uv:t,viewport:s}=Ko(e),r=P(De(s.member(\"x\"),ht(s.member(\"y\"),1e-6)),\"aspect\"),o=P(it(e),\"marbleTime\"),n=Se(re(\"seed\"),e),i=P(m(Je(m(t.member(\"x\"),r),t.member(\"y\")),Se(re(\"scale\"),e)),\"plane\"),d=i.member(\"x\"),l=i.member(\"y\"),c=P(C(C(ro(Je(C(d,n),C(l,o))),m(ro(Je(C(m(d,2),m(n,1.7)),C(m(l,2),m(o,.7)))),.5)),m(ro(Je(C(m(d,4),m(n,3.1)),C(m(l,4),m(o,1.3)))),.25)),\"marbleTurb\"),_=P(C(m(Zt(C(m(d,oY),m(c,Se(re(\"turbulence\"),e)))),.5),.5),\"veinT\"),p=C(m(ro(Je(C(m(l,1.5),m(n,2)),m(d,1.2))),.3),.5);return Ym({a:re(\"colorA\"),b:re(\"colorB\"),c:re(\"colorC\"),space:re(\"colorSpace\")})(Fe(.3,.6,_),m(Fe(.6,.9,_),p),e)}});var t1=1.6,nY=.48,aY=.125,iY=3,AE=1.9,dY=1.4,lY=.045,cY=9,uY=[{color:\"#1a0533\",position:0},{color:\"#6d2fd1\",position:.26},{color:\"#e04b9e\",position:.52},{color:\"#ff8c42\",position:.76},{color:\"#ffdf8e\",position:1}],yu=et({name:\"MeshGradient\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Flowing mesh gradient of soft drifting color swaths whose seams wrap through the palette\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},extraFields:{meshAnchors:{schema:zt(b,4),initial:new Array(16).fill(0)}},props:{colorA:{default:\"#1a0533\",transform:ke,description:\"First gradient color (two-color fallback when stops are cleared)\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#ffdf8e\",transform:ke,description:\"Second gradient color (two-color fallback when stops are cleared)\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:{...Ls(),default:uY},colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},count:{default:5,description:\"Number of color points scattered across the canvas\",ui:{type:\"range\",min:2,max:8,step:1,label:\"Points\",group:\"Effect\"}},smoothness:{default:2,description:\"How smoothly the color points blend into each other\",ui:{type:[\"range\",\"map\"],min:0,max:5,step:.01,label:\"Smoothness\",group:\"Effect\"}},variation:{default:.35,recompile:zS(0),description:\"Varies edge softness across the canvas \\u2014 some color boundaries crisp, others diffuse\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Variation\",group:\"Effect\"}},swirl:{default:.3,description:\"Vortex rotation that spirals the field around the frame centre \\u2014 negative values spin the other way\",ui:{type:[\"range\",\"map\"],min:-1,max:1,step:.01,label:\"Swirl\",group:\"Effect\"}},drift:{default:.5,description:\"How far the color points wander from their home positions\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Drift\",group:\"Effect\"}},wrapping:{default:0,description:\"Wraps the palette back through itself where colors meet \\u2014 banded seams where the field pinches, smooth elsewhere\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Wrapping\",group:\"Effect\"}},speed:{default:1,description:\"Animation speed\",ui:{type:\"range\",min:0,max:10,step:.1,label:\"Speed\",group:\"Animation\"}},seed:{default:0,description:\"Random seed for the point layout and palette assignment\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}}},paint:e=>{let{uv:t,viewport:s}=Ko(e),r=P(De(s.member(\"x\"),ht(s.member(\"y\"),1e-6)),\"aspect\"),o=P(it(e),\"meshTime\"),n=Se(re(\"seed\"),e),i=P(Je(ae(m(t.member(\"x\"),r),m(r,.5)),ae(t.member(\"y\"),.5)),\"meshCentred\"),d=P(m(m(-iY,Se(re(\"swirl\"),e)),Fe(0,1,Ir(i))),\"swirlAngle\"),l=P(Bm(i,kn(d),Zt(d)),\"meshRot\"),c=P(Je(C(l.member(\"x\"),m(r,.5)),C(l.member(\"y\"),.5)),\"meshSwirled\"),_=P(JS({at:Ze(m(c.member(\"x\"),t1),m(c.member(\"y\"),t1),m(n,7.31)),time:m(o,aY),amount:nY,levels:No()?1:2}),\"meshWarp\"),p=P(Je(De(_.member(\"x\"),t1),De(_.member(\"y\"),t1)),\"meshQ\"),f=De(8,C(Se(re(\"smoothness\"),e),.5)),h=e.propValues.variation,g=h!==void 0&&h!==0?Le(m(f,Fs(m(m(Tn(Ze(m(p.member(\"x\"),AE),m(p.member(\"y\"),AE),C(m(n,3.17),m(o,lY)))),Se(re(\"variation\"),e)),dY))),.6,16):Le(f,.6,16),x=KS(e,{count:re(\"count\"),seed:re(\"seed\"),drift:re(\"drift\"),field:\"meshAnchors\"});return sE(eA(ZS({t:jS({at:p,count:Se(re(\"count\"),e),seed:n,drift:Se(re(\"drift\"),e),aspect:r,time:o,softness:g,anchors:x}),cycles:C(1,m(Se(re(\"wrapping\"),e),cY))}),e),e)}});var{isMobileGpuViewport:_Y,VOLUMETRIC_FIELD_EXTRA_FIELDS:pY}=ni,{ANALYTIC_SDF_EXTRA_FIELDS:mY}=Cm,fY=JSON.stringify({type:\"sphere3D\",radius:.35}),vY=6,hY=4,gu=et({name:\"Nebula\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"A volumetric gas nebula sealed inside polished glass; billowing emission clouds with hollow dark cavities and hot glowing cores, star fields drifting at real depth behind the gas, all refracted through the curved walls of the shape and dressed with studio reflections\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=_Y()?hY:vY,n=t.propValues.colorSpace??0,i,d;if(n!==0){let We=\"\";t.onBeforeRender(()=>{let rt=[\"veilColor\",\"gasColor\",\"coreColor\"].map(Oe=>t.getCpuValue(Oe));if(rt.some(Oe=>!Oe))return;let tt=rt.map(Oe=>`${Oe.x},${Oe.y},${Oe.z}`).join(\"|\");if(tt===We)return;We=tt;let Ke=[\"convVeil\",\"convGas\",\"convCore\"];rt.forEach((Oe,gt)=>{let pt=Mm(Oe.x,Oe.y,Oe.z,n);t.setExtraField(Ke[gt],[pt[0],pt[1],pt[2]])})});let Be=hy[n]??Pm;i=rt=>se(Be,\"mixPreconvertedColors\",[s.convVeil,s.convGas,s.veilColor.member(\"a\"),s.gasColor.member(\"a\"),rt]),d=(rt,tt,Ke)=>{let Oe=P(se(ti,\"mixInSpace\",[s.convVeil,s.veilColor.member(\"a\"),s.convGas,s.gasColor.member(\"a\"),rt]),`${Ke}AB`);return se(Be,\"mixPreconvertedColors\",[Oe.member(\"conv\"),s.convCore,Oe.member(\"alpha\"),s.coreColor.member(\"a\"),tt])}}else i=We=>se(lr,\"mixColors\",[s.veilColor,s.gasColor,We]),d=(We,Be)=>se(lr,\"mixColors\",[se(lr,\"mixColors\",[s.veilColor,s.gasColor,We]),s.coreColor,Be]);let l=to(e,t,{scale:s.scale}),{sdf:c,pxH:_}=l,p=fl(e,l,{bevelWidth:Gt(.09),bevelShape:Gt(0)}),f=di(t,l),h=jA(e,p,P(m(s.refraction,.16),\"bend\")),{x:g,y:x}=h.centered,T=HA(e),S=ZA(l,e,{origin:h,view:f,shear:.55,lengthScale:.9}),A=S.length,E=P(m(s.gasScale,3.1),\"freq\"),M=P(m(r,.14),\"drift\"),$=P(m(s.seed,7.31),\"seedOff\"),L=P(m(hl(m(h.x,311.7),m(h.y,173.3)),.15/o),\"jit\"),B=P(m(ro(Je(C(C(m(g,1.3),m(M,.6)),m($,.37)),C(m(x,1.3),m($,.61)))),.5),\"macro\"),D=P(dt(-.35,.5,s.cavity),\"cav\"),G=P(m(s.billow,.55),\"billowAmt\"),I=P(s.coreColor.member(\"rgb\"),\"coreRgb\"),X=P(s.veilColor.member(\"rgb\"),\"veilRgb\"),H=P(m(C(.3,m(A,.9)),6/o),\"eGain\"),ee=P(m(m(C(.5,m(A,2.2)),s.density),3/o),\"aGain\"),Q=JA({steps:o,entry:S.entry,length:S.length,jitter:L,emissionGain:H,hint:\"gasAcc\"},({i:We,t:Be,z:rt})=>{let tt=S.at(rt),Ke=QA({x:tt.x,y:tt.y,z:rt},{frequency:E,drift:M,seed:$,billow:G,hint:`${We}`}),Oe=Fe(0,.11,m(A,Math.min(Be,1-Be))),gt=ae(1,Le(m(Us(Ke.fine),1.6),0,1)),pt=P(m(m(Fe(0,.5,ae(C(Ke.density,B),D)),Oe),C(.65,m(gt,.7))),`dens${We}`),Ut=P(m(m(Fe(.45,.75,Ke.mid),Oe),s.dust),`dust${We}`),Lt=P(d(Fe(.05,.75,pt),Fe(.68,1,pt),`cB${We}`),`cB${We}`).member(\"rgb\"),Wt=1-Be*.45,vs=m(Fe(-.7,.3,Ke.density),m(.05,Oe));return{emit:C(C(m(Lt,m(pt,Wt)),m(I,m(rs(pt,3),m(s.glow,1.2*Wt)))),m(X,m(vs,Wt))),absorb:C(Dt(m(pt,ee)),m(Ze(1.5,1,.55),m(Ut,m(ee,2.2))))}}),de=P(m(s.starScale,34),\"starFreq\"),Ee=P(m(s.twinkle,.5),\"twinkleAmt\"),he=l0(S,{depth:1.1,pan:T,panRate:1.3,hint:\"far\"}),Me=d0(P(Je(m(he.x,de),m(he.y,de)),\"farP\"),{variationFreq:.13,radius:[.004,.013],keep:[.35,.75],brightness:[.3,1.2],shimmer:We=>i0(r,We,{amount:Ee,rate:1.7,spread:40}),gain:s.stars,tint:{from:[.72,.82,1],to:[1,.92,.82],gain:1.6},hint:\"starFar\"}),Te=l0(S,{depth:.25,pan:T,panRate:.55,hint:\"near\"}),Pe=m(de,.56),Ce=d0(P(Je(C(m(Te.x,Pe),7.3),C(m(Te.y,Pe),2.9)),\"nearP\"),{variationFreq:.11,radius:[.003,.01],keep:[.45,.8],brightness:[.35,1.3],shimmer:We=>i0(r,We,{amount:Ee,rate:2.3,spread:34}),gain:s.stars,tint:{from:[.75,.85,1],to:[1,.95,.88],gain:1.8},hint:\"starNear\"}),ie=Wr(s.lightAngle,\"light\"),Ne=P(Le(Gs(p,pn(ie,-.7).member(\"H\")),0,1),\"ndh\"),ye=P(jo(f,p),\"R\"),Ve=P(Vm(ye.member(\"x\"),ye.member(\"y\"),{rotation:ie,keyRadius:.2,drift:0,strength:s.environment,skyGain:.32}),\"envLum\"),qe=KA(Ne,{core:[140,1.3],halo:[22,.14],softness:s.highlightSoftness,gain:s.highlight}),st=Nm(tE([{paint:i(Gt(.25)).member(\"rgb\"),opacity:.06,behind:Q.transmittance},Q.color,{paint:Me.rgb,behind:Q.transmittance},{paint:Ce.rgb,behind:dt(Q.transmittance,Dt(1),.35)},{paint:m(Ze(.85,.92,1.08),Ve),opacity:.38},m(Ze(1,.98,.95),qe)]));return sr(Yr(c,_),is(st,so(l,s.edgeSoftness)),_s,\"nebula\")}}),extraFields:{...pY,...mY,convVeil:{schema:v,initial:[0,0,0]},convGas:{schema:v,initial:[0,0,0]},convCore:{schema:v,initial:[0,0,0]}},props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the nebula shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the nebula shape (1 = default size)\",ui:{type:[\"range\",\"map\"],min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the nebula shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},coreColor:{default:\"#ffd9b0\",transform:ke,description:\"The hot color the densest gas cores glow with \\u2014 the embedded newborn stars\",ui:{type:\"color\",label:\"Core Color\",group:\"Nebula\"}},gasColor:{default:\"#ff5e7a\",transform:ke,description:\"The main emission color of the gas body \\u2014 H-alpha rose by default\",ui:{type:\"color\",label:\"Gas Color\",group:\"Nebula\"}},veilColor:{default:\"#3a5bdb\",transform:ke,description:\"The color of the thin outer veils and the deep-space background behind the gas\",ui:{type:\"color\",label:\"Veil Color\",group:\"Nebula\"}},colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space the veil \\u2192 gas \\u2192 core ramps blend in\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Nebula\"}},density:{default:1,description:\"Optical density of the gas \\u2014 how strongly clouds occlude the stars and gas behind them\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Density\",group:\"Nebula\"}},cavity:{default:0,description:\"How hollowed-out the nebula is \\u2014 0 fills the volume with cloud banks, high carves large dark voids between them\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Cavity\",group:\"Nebula\"}},dust:{default:.55,description:\"Cold dark dust lanes threading the gas \\u2014 absorb-only tendrils that redden the clouds and stars behind them\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Dust\",group:\"Nebula\"}},gasScale:{default:.4,description:\"Feature size of the gas \\u2014 higher = finer, busier cloud detail\",ui:{type:[\"range\",\"map\"],min:.1,max:1,step:.01,label:\"Gas Scale\",group:\"Nebula\"}},billow:{default:.6,description:\"Turbulent folding of the clouds \\u2014 0 = smooth drifting banks, 1 = heavily churned billows\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Billow\",group:\"Nebula\"}},glow:{default:0,description:\"Hot emission bloom of the dense cores\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Glow\",group:\"Nebula\"}},seed:{default:0,description:\"Random seed \\u2014 pans the gas field to a different region of noise space for a new cloud composition\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Nebula\"}},stars:{default:.07,description:\"Brightness of the star fields drifting at depth behind and inside the gas\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Stars\",group:\"Stars\"}},starScale:{default:1,description:\"Density of the star fields \\u2014 higher = smaller, busier stars\",ui:{type:[\"range\",\"map\"],min:.25,max:3,step:.01,label:\"Star Scale\",group:\"Stars\"}},twinkle:{default:.35,description:\"Intensity of the star twinkle (0 = steady stars, 1 = full shimmer)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Twinkle\",group:\"Stars\"}},...Ho({refraction:{description:\"How strongly the curved glass walls bend the interior seen near the edges\"},environment:{default:.7,description:\"Strength of the studio softboxes reflected in the polished glass surface\"},highlight:{default:1.15,description:\"Sharp key-light glint on the glass\",ui:{group:\"Glass\"}},highlightSoftness:{ui:{group:\"Glass\"}},lightAngle:{description:\"Direction of the key light and reflected studio, in degrees\"},edgeSoftness:!0}),speed:{default:.3,description:\"Speed of the slowly churning gas and twinkling stars. 0 freezes the nebula.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Animation\"}},shape:{default:fY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var yY=JSON.stringify({type:\"sphere3D\",radius:.35}),gY=[{color:\"#ff2f7a\",position:0},{color:\"#2a2cff\",position:.3},{color:\"#5fe6ff\",position:.55},{color:\"#a6ffd8\",position:.75},{color:\"#ffb3e6\",position:1}],xY=.9,bY=.55,wY=.25,xu=et({name:\"Obsidian\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Dark tinted glass whose faces stay near-black while every surface turning away from the viewer ignites with a flowing iridescent gradient \\u2014 vivid color living only on the oblique walls and bevels\",animatedTime:{speed:\"speed\"},props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the glass shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the glass shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the glass shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},bodyColor:{default:\"#06071a\",transform:ke,description:\"The dark body of the glass \\u2014 what the faces looking straight at you show. Keep it deep for the iridescence to pop.\",ui:{type:\"color\",label:\"Body Color\",group:\"Colors\"}},colorA:{default:\"#ff2f7a\",transform:ke,description:\"First iridescent color (two-color fallback when stops are cleared)\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#5fe6ff\",transform:ke,description:\"Second iridescent color (two-color fallback when stops are cleared)\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:{...Ls(),default:gY},colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},iridescence:{default:1,description:\"Strength of the color on the oblique surfaces \\u2014 0 = plain dark glass, above 1 = saturated neon walls\",ui:{type:[\"range\",\"map\"],min:0,max:1.5,step:.01,label:\"Iridescence\",group:\"Iridescence\"}},rimWidth:{default:.55,description:\"How far in from edge-on the color reaches \\u2014 small keeps it to the steepest walls, large lets it creep across gently turning faces\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Rim Width\",group:\"Iridescence\"}},rimSoftness:{default:.25,description:\"Softness of the transition from dark face to colored wall\",ui:{type:[\"range\",\"map\"],min:.02,max:.6,step:.01,label:\"Rim Softness\",group:\"Iridescence\"}},flowAngle:{default:30,description:\"Direction the gradient flows across the surface, in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Flow Angle\",group:\"Iridescence\"}},flowScale:{default:1,description:\"How many times the palette cycles across the shape \\u2014 higher = tighter color bands\",ui:{type:[\"range\",\"map\"],min:.2,max:4,step:.01,label:\"Flow Scale\",group:\"Iridescence\"}},speed:{default:.5,description:\"Speed the gradient flows along the walls. 0 pauses.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Iridescence\"}},gloss:{default:.35,description:\"Strength of the studio softboxes reflected in the glass \\u2014 the pale highlights riding the top edges\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Gloss\",group:\"Surface\"}},...Ho({envRotation:{ui:{group:\"Surface\"}}}),bevelWidth:{default:.08,description:\"Width of the edge bevel on flat shapes \\u2014 the band that turns away from the viewer and catches the color\",ui:{type:[\"range\",\"map\"],min:.005,max:.3,step:.001,label:\"Bevel Width\",group:\"Surface\"}},bevelShape:{default:0,description:\"Bevel profile \\u2014 0 = one smooth round fillet, 1 = machined: a steep outer fillet, a chamfer plateau and an inner knee\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Bevel Profile\",group:\"Surface\"}},...Ho({edgeSoftness:{ui:{group:\"Surface\"}}}),shape:{default:yY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=to(e,t,{scale:s.scale}),n=fl(e,o,{bevelWidth:s.bevelWidth,bevelShape:s.bevelShape}),i=di(t,o),d=Om(n,i),l=P(ae(1,s.rimWidth),\"rimEdge\"),c=P(Fe(ae(l,s.rimSoftness),C(l,s.rimSoftness),d),\"rim\"),_=Qm(s.flowAngle,\"flow\").coordsOf(zo(e,o)).along,p=C(C(m(_,m(s.flowScale,1/bY)),m(d,xY)),m(r,.2)),f=P(eo(re(\"colorSpace\"))(QS(p),t).member(\"rgb\"),\"iri\"),h=P(jo(i,n),\"R\"),g=P(m(Vm(h.member(\"x\"),h.member(\"y\"),{rotation:Wr(s.envRotation,\"env\"),keyRadius:.3,drift:0,strength:s.gloss,skyGain:wY}),Km(d,{r0:.04,gain:.96,power:4})),\"shine\"),x=C(dt(s.bodyColor.member(\"rgb\"),f,Dt(m(c,s.iridescence))),m(dt(f,Dt(1),Dt(.6)),Dt(m(g,.5))));return sr(Yr(o.sdf,o.pxH),is(x,so(o,s.edgeSoftness)),_s,\"obsidian\")}})});var bu=et({name:\"Plasma\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Animated effect of glowing plasma\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{density:{default:2,description:\"Density of the plasma pattern\",ui:{type:[\"range\",\"map\"],min:0,max:4,step:.1,label:\"Density\",group:\"Effect\"}},speed:{default:2,description:\"Animation speed\",ui:{type:\"range\",min:0,max:5,step:.1,label:\"Speed\",group:\"Effect\"}},intensity:{default:1.5,description:\"Brightness and spread of the plasma glow\",ui:{type:[\"range\",\"map\"],min:.1,max:3,step:.1,label:\"Intensity\",group:\"Colors\"}},warp:{default:.4,description:\"How much the flow distorts and swirls\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Warp\",group:\"Effect\"}},contrast:{default:1,description:\"Push darks darker and lights lighter\",ui:{type:[\"range\",\"map\"],min:0,max:3,step:.1,label:\"Contrast\",group:\"Colors\"}},balance:{default:50,description:\"Skew color balance toward A (higher) or B (lower)\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Balance\",group:\"Colors\"}},colorA:{default:\"#7018be\",description:\"Primary color\",transform:ke,ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#000000\",description:\"Secondary color\",transform:ke,ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:_n(IS(VS(OS(WS(\"mx3\"),{amount:re(\"warp\"),amountScale:4,timeScale:.125}),{scale:re(\"density\")}),{glow:re(\"intensity\"),contrast:re(\"contrast\"),balance:re(\"balance\"),invert:!0}),eo(re(\"colorSpace\")))});var TY=JSON.stringify({type:\"sphere3D\",radius:.35}),Zi=(e,t,s,r,o)=>{let n=P(r,`${o}S`),i=P(e,`${o}X`);return m(Fe(ae(t,n),C(t,n),i),ae(1,Fe(ae(s,n),C(s,n),i)))},m0=(e,t,s,r)=>{let o=Je(C(m(e,s),r),C(m(t,s),m(r,.617))),n=Je(C(C(m(m(e,s),2.3),13.1),r),C(C(m(m(t,s),2.3),7.7),m(r,.617)));return C(Us(ro(o)),m(Us(ro(n)),.45))},wu=et({name:\"Plastic\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Glossy molded plastic with photorealistic studio reflections, driven in a custom shape\",animatedTime:{speed:\"speed\"},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s,propValues:r}=t,o=it(t),n=e.volumetric,i=to(e,t,{scale:s.scale}),{sdf:d,pxH:l}=i,c=P(e.sdfUV,\"sdfUV\"),_=Wr(s.gradientAngle,\"gDir\"),p=Fe(0,1,Le(C(De(Gs(ae(c.member(\"xy\"),Je(.5,.5)),_),.7),.5),0,1)),f=r.colorSpace??0,h=r.stopCount??0,g;h>1?g=dl(p,{colorsArray:s.colorsArray,positionsArray:s.positionsArray,convertedColorsArray:s.convertedColorsArray,stopCount:s.stopCount},f):g=se(Xo[f]??lr,\"mixColors\",[s.colorA,s.colorB,p]);let x=g.member(\"rgb\"),T=Wr(C(s.lightAngle,m(o,6)),\"light\"),S=T.member(\"x\"),A=T.member(\"y\"),E=ii(i),M=so(i,s.edgeSoftness),$=zo(e,i,{uv:c}),L=$.member(\"x\"),B=$.member(\"y\"),D=ht(m(s.thickness,.3),.01),G=P(Le(De(m(d,-1),D),0,1),\"depthNorm\"),I;if(n)I=vl(i,4,\"nBase\");else{let hs=P(m(un(ht(ae(1,m(G,G)),0)),2.4),\"bevelSlope\");I=P(Jr(Ze(m(E.member(\"x\"),hs),m(E.member(\"y\"),hs),-1)),\"nBase\")}let X=P(m(s.crumpleScale,4),\"cScale\"),H=m(s.crumple,.9),ee=P(m(s.seed,7.31),\"seedOff\"),Q=.012,de=P(m0(L,B,X,ee),\"cr0\"),Ee=De(ae(m0(C(L,Q),B,X,ee),de),Q),he=De(ae(m0(L,C(B,Q),X,ee),de),Q),Me=Le(s.crumpleCoverage,0,1),Te=C(m($r(C(C(m(L,2.6),ee),31.7),C(C(m(B,2.6),m(ee,.617)),17.3)),.5),.5),Pe=P(ae(1.25,m(Me,1.75)),\"covThreshold\"),Ce=P(m(m(H,Fe(ae(Pe,.25),C(Pe,.25),Te)),C(m(Fe(0,.35,G),.85),.15)),\"crumpleW\"),ie=li(I,m(m(Ee,Ce),.25),m(m(he,Ce),.25)),Ne=ci(ie),ye=P(jo(Ze(0,0,1),ie),\"R\"),Ve=P(Le(s.roughness,0,1),\"rough\"),qe=P(m(m(Ve,$r(m(L,140),m(B,140))),.18),\"rJit\"),st=P(C(C(m(ye.member(\"x\"),S),m(ye.member(\"y\"),A)),qe),\"eu\"),We=P(C(C(m(ye.member(\"x\"),m(A,-1)),m(ye.member(\"y\"),S)),m(qe,.6)),\"ev\"),Be=P(dt(.02,.45,Ve),\"soft\"),rt=m(m(Zi(st,.18,.95,Be,\"win1\"),Zi(We,-.42,.42,Be,\"win2\")),ae(1,m(m(Zi(We,-.045,.045,m(Be,.6),\"mull\"),.8),ae(1,Ve)))),tt=m(m(Zi(st,-.16,-.05,m(Be,.7),\"strip1\"),Zi(We,-.85,.85,Be,\"strip2\")),.85),Ke=m(m(Zi(st,-.95,-.45,m(Be,1.6),\"fill1\"),Zi(We,-.6,.6,m(Be,1.6),\"fill2\")),.3),Oe=m(Le(C(m(st,.5),.5),0,1),.12),gt=m(C(C(C(rt,tt),Ke),Oe),ae(1,m(Ve,.55))),pt=C(.3,m(rs(Ne,3),.7)),Ut=m(s.reflectivity,pt),Lt=pn(T,-.8),Wt=Lt.member(\"L\"),vs=P(m(C(gt,m(m(rs(Le(Gs(ie,Lt.member(\"H\")),0,1),t0(dt(9,4,Ve))),1.6),ae(1,m(Ve,.7)))),Ut),\"specular\"),jt=P(C(m(Le(Gs(ie,Wt),-1,1),.5),.5),\"lit\"),Qt=dt(ae(1,m(s.shading,.75)),C(1,m(s.shading,.45)),jt),$s=dt(.6,1,Fe(0,1,Le(De(m(d,-1),.025),0,1))),Is=m(m(m(rs(Ne,3.5),s.rim),C(m(jt,.6),.4)),1.6),Ys=P(C(C(m(m(x,Qt),$s),Dt(vs)),m(s.rimColor.member(\"rgb\"),Is)),\"plasticRgb\");return sr(Yr(d,l),is(Ys,M),_s,\"plastic\")}}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the plastic shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the plastic shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the plastic shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},colorA:{default:\"#f5f5f7\",transform:ke,description:\"Body color at the start of the gradient\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#d9dade\",transform:ke,description:\"Body color at the end of the gradient\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),gradientAngle:{default:90,description:\"Direction of the body color gradient in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Gradient Angle\",group:\"Colors\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for gradient color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},thickness:{default:.5,description:\"Puffiness \\u2014 how far the rounded bevel reaches inward from the edge before the surface flattens\",ui:{type:\"range\",min:.05,max:1,step:.01,label:\"Puffiness\",group:\"Plastic\"}},roughness:{default:.12,description:\"Surface roughness \\u2014 0 = polished gloss with crisp mirror reflections, 1 = matte satin\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Roughness\",group:\"Plastic\"}},reflectivity:{default:1,description:\"Strength of the environment reflections and specular highlights\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Reflectivity\",group:\"Plastic\"}},crumple:{default:.25,description:\"Surface crumple \\u2014 irregular dents that break reflections into hard organic shapes, like blown or vacuum-formed plastic\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Crumple\",group:\"Plastic\"}},crumpleScale:{default:1,description:\"Size of the crumple dents \\u2014 higher = smaller, denser dents\",ui:{type:\"range\",min:.5,max:10,step:.1,label:\"Crumple Scale\",group:\"Plastic\"}},crumpleCoverage:{default:1,description:\"How much of the surface is crumpled \\u2014 0 = pristine, 0.5 = patches of crumple, 1 = fully crumpled\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Crumple Coverage\",group:\"Plastic\"}},seed:{default:0,description:\"Random seed \\u2014 re-rolls the crumple pattern for reflection variety\",ui:{type:\"range\",min:0,max:100,step:1,label:\"Seed\",group:\"Plastic\"}},edgeSoftness:{default:.05,description:\"Softness of the shape boundary edge\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Plastic\"}},lightAngle:{default:315,description:\"Direction the studio key light comes from, in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Lighting\"}},speed:{default:1,description:\"Speed of the environment drift \\u2014 the studio reflections slowly orbit the surface. 0 pauses.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Animation\"}},shading:{default:.35,description:\"Diffuse shading contrast \\u2014 how strongly the body darkens away from the light\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Shading\",group:\"Lighting\"}},rim:{default:.25,description:\"Fresnel rim light intensity on grazing surfaces\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Rim Light\",group:\"Lighting\"}},rimColor:{default:\"#ffffff\",transform:ke,description:\"Color of the fresnel rim light\",ui:{type:\"color\",label:\"Rim Color\",group:\"Lighting\"}},shape:{default:TY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}}});var Tu=et({name:\"Prism\",role:\"generator\",category:\"Textures\",description:\"A beam of light that fans out and splits into a slowly-rotating rainbow past a controllable point. Transparent background \\u2014 composite over a dark layer.\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{position:{default:{x:.18,y:.18},transform:ct,description:\"Where the beam originates\",ui:{type:\"position\",label:\"Source\",group:\"Beam\"}},beamWidth:{default:.04,description:\"Thickness of the white beam\",ui:{type:[\"range\",\"map\"],min:.002,max:.3,step:.002,label:\"Beam Width\",group:\"Beam\"}},intensity:{default:1.6,description:\"Brightness (above 1 blows the core to white)\",ui:{type:[\"range\",\"map\"],min:0,max:4,step:.01,label:\"Intensity\",group:\"Beam\"}},beamColor:{default:\"#ffffff\",transform:ke,description:\"color of the beam before it splits\",ui:{type:\"color\",label:\"Beam Color\",group:\"Beam\"}},startFalloff:{default:.15,description:\"How softly the beam fades in at its source\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Start Falloff\",group:\"Beam\"}},endFalloff:{default:.6,description:\"How quickly the rainbow fades out with distance\",ui:{type:[\"range\",\"map\"],min:.02,max:2,step:.01,label:\"End Falloff\",group:\"Beam\"}},splitPosition:{default:{x:.5,y:.42},transform:ct,description:\"Where the beam starts to fan out and split (projected onto the beam axis)\",ui:{type:\"position\",label:\"Split Point\",group:\"Spectrum\"}},spread:{default:.7,description:\"How widely the rainbow diffuses as it travels past the split point\",ui:{type:[\"range\",\"map\"],min:0,max:3,step:.01,label:\"Spread\",group:\"Spectrum\"}},softness:{default:.12,description:\"How quickly the white beam transitions into the rainbow\",ui:{type:[\"range\",\"map\"],min:.001,max:1,step:.005,label:\"Softness\",group:\"Spectrum\"}},saturation:{default:.95,description:\"Rainbow saturation \\u2014 0 = white, 1 = full color\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Saturation\",group:\"Spectrum\"}},speed:{default:.1,description:\"Speed the hue slowly rotates through the rainbow (0 = static)\",ui:{type:\"range\",min:-1,max:1,step:.01,label:\"Hue Speed\",group:\"Spectrum\"}}},paint:e=>{let t=h=>Se(re(h),e),s=Zm({from:re(\"position\"),to:re(\"splitPosition\")})(e,Ko(e)),r=P(ht(t(\"softness\"),.001),\"soft\"),o=P(kS(ae(s.along,s.length),m(r,.6)),\"past\"),n=P(m(Fe(0,ht(t(\"startFalloff\"),.001),s.along),Fs(mo(De(o,ht(t(\"endFalloff\"),.001))))),\"longEnv\"),i=ht(C(t(\"beamWidth\"),m(o,t(\"spread\"))),.001),d=P(De(s.across,i),\"an\"),l=Im(d,2.5),c=Fe(s.length,C(s.length,r),s.along),_=C(m(d,.42),it(e)),p=dt(t(\"beamColor\").member(\"rgb\"),XS(_),Dt(m(c,t(\"saturation\")))),f=P(m(l,n),\"amt\");return is(P(m(m(p,f),t(\"intensity\")),\"beamRgb\").member(\"xyz\"),Le(f,0,1))}});var Su=et({name:\"Ripples\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Concentric animated ripples emanating from a point\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{center:{default:{x:.5,y:.5},transform:ct,description:\"The center point where ripples emanate from\",ui:{type:\"position\",label:\"Center\",group:\"Position\"}},colorA:{default:\"#ffffff\",transform:ke,description:\"Color of the ripple waves\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#000000\",transform:ke,description:\"Background color between ripples\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},speed:{default:1,description:\"Speed of ripple animation\",ui:{type:\"range\",min:-5,max:5,step:.1,label:\"Speed\",group:\"Animation\"}},frequency:{default:20,description:\"Number of ripples/spacing between them\",ui:{type:[\"range\",\"map\"],min:1,max:80,step:.1,label:\"Frequency\",group:\"Effect\"}},softness:{default:0,description:\"Softness of ripple edges\",ui:{type:[\"range\",\"map\"],min:0,max:3,step:.1,label:\"Softness\",group:\"Effect\"}},thickness:{default:.5,description:\"Thickness of each ripple band\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Thickness\",group:\"Effect\"}},phase:{default:0,description:\"Phase offset for ripple animation\",ui:{type:[\"range\",\"map\"],min:0,max:6.28,step:.1,label:\"Phase\",group:\"Animation\"}}},paint:_l({fill:re(\"colorB\"),stroke:re(\"colorA\"),mask:dA({center:re(\"center\"),frequency:re(\"frequency\"),thickness:re(\"thickness\"),softness:re(\"softness\"),phase:re(\"phase\")})})});var Au=et({name:\"SineWave\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Animated wave with thickness and softness\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{color:{default:\"#ffffff\",transform:ke,description:\"The color of the sine wave\",ui:{type:\"color\",label:\"Color\",group:\"Colors\"}},amplitude:{default:.15,description:\"The height/amplitude of the sine wave\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Amplitude\",group:\"Effect\"}},frequency:{default:1,description:\"The frequency/number of wave cycles\",ui:{type:[\"range\",\"map\"],min:.1,max:20,step:.1,label:\"Frequency\",group:\"Effect\"}},speed:{default:1,description:\"The animation speed of the wave\",ui:{type:\"range\",min:-5,max:5,step:.1,label:\"Speed\",group:\"Animation\"}},angle:{default:0,transform:Ra,description:\"The rotation angle of the wave (in degrees)\",ui:{type:[\"range\",\"map\"],min:0,max:360,step:1,label:\"Angle\",group:\"Effect\"}},position:{default:{x:.5,y:.5},transform:ct,description:\"The center position of the wave\",ui:{type:\"position\",label:\"Position\",group:\"Position\"}},thickness:{default:.2,description:\"The thickness of the wave line\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.1,label:\"Thickness\",group:\"Effect\"}},softness:{default:.4,description:\"Edge softness of the wave line\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Softness\",group:\"Effect\"}}},paint:rE({position:re(\"position\"),angle:re(\"angle\"),frequency:re(\"frequency\"),amplitude:re(\"amplitude\"),thickness:re(\"thickness\"),softness:re(\"softness\"),color:re(\"color\")})});var Eu=et({name:\"Spiral\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Rotating spiral pattern with animated movement\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#000000\",transform:ke,description:\"Background color\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#ffffff\",transform:ke,description:\"Spiral stroke color\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},strokeWidth:{default:.5,description:\"Thickness of spiral stroke\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.1,label:\"Stroke Width\",group:\"Effect\"}},strokeFalloff:{default:0,description:\"Stroke losing width further from center\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Stroke Falloff\",group:\"Effect\"}},softness:{default:0,description:\"Color transition sharpness (0 = hard edge, 1 = smooth fade)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Softness\",group:\"Effect\"}},speed:{default:1,description:\"Animation speed (negative values reverse direction)\",ui:{type:\"range\",min:-3,max:3,step:.1,label:\"Speed\",group:\"Animation\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"The center point of the spiral\",ui:{type:\"position\",label:\"Center\",group:\"Position\"}},scale:{default:1,description:\"Scale factor for spiral bands (higher = more bands, lower = fewer bands)\",ui:{type:[\"range\",\"map\"],min:.1,max:5,step:.1,label:\"Scale\",group:\"Effect\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:_n(BS.spiral({center:re(\"center\"),scale:re(\"scale\"),width:re(\"strokeWidth\"),falloff:re(\"strokeFalloff\"),softness:re(\"softness\")}),FS(re(\"colorA\"),re(\"colorB\"),re(\"colorSpace\")))});var Pu=et({name:\"Strands\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Flowing ribbons of light with a multi-color gradient\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},extraAnimatedTimes:{color:\"colorSpeed\"},props:{speed:{default:.5,description:\"Overall animation speed\",ui:{type:\"range\",min:0,max:2,step:.1,label:\"Speed\",group:\"Animation\"}},amplitude:{default:2,description:\"How far the strands wave away from their resting line\",ui:{type:[\"range\",\"map\"],min:0,max:5,step:.1,label:\"Amplitude\",group:\"Effect\"}},frequency:{default:.3,description:\"How many waves run along each strand\",ui:{type:[\"range\",\"map\"],min:0,max:5,step:.1,label:\"Frequency\",group:\"Effect\"}},lineCount:{default:8,description:\"Number of strands\",ui:{type:\"range\",min:1,max:16,step:1,label:\"Strand Count\",group:\"Effect\"}},lineWidth:{default:.05,description:\"Thickness of each strand\\u2019s solid core\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.05,label:\"Strand Width\",group:\"Effect\"}},softness:{default:.05,description:\"Softness of each strand\\u2019s edge (0 is crisp, higher is feathered)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.05,label:\"Strand Softness\",group:\"Effect\"}},spread:{default:.2,description:\"How far the strands fan out across the field\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.05,label:\"Spread\",group:\"Effect\"}},pinEdges:{default:!1,transform:Dx,description:\"Pin the strands so they converge to the start and end points\",ui:{type:\"checkbox\",label:\"Pin Edges\",group:\"Effect\"}},stops:{...Ls(),default:[{color:\"#00e5ff\",position:0},{color:\"#5b8cff\",position:.34},{color:\"#b06bff\",position:.67},{color:\"#ff5fa2\",position:1}]},colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space used to blend the gradient\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},colorScale:{default:1,description:\"How many times the gradient repeats along the strands\",ui:{type:[\"range\",\"map\"],min:1,max:6,step:1,label:\"Color Scale\",group:\"Colors\"}},colorVariance:{default:1,description:\"At 0 every strand shares the same color; at 1 the strands spread across the full gradient\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.05,label:\"Color Variance\",group:\"Colors\"}},colorSpeed:{default:1,description:\"Speed at which the colors flow along the strands (loops)\",ui:{type:\"range\",min:0,max:2,step:.05,label:\"Color Speed\",group:\"Colors\"}},start:{default:{x:0,y:.5},transform:ct,description:\"Starting point of the strands\",ui:{type:\"position\",label:\"Start\",group:\"Position\"}},end:{default:{x:1,y:.5},transform:ct,description:\"Ending point of the strands\",ui:{type:\"position\",label:\"End\",group:\"Position\"}}},paint:IA(OA({from:re(\"start\"),to:re(\"end\"),count:re(\"lineCount\"),width:re(\"lineWidth\"),amplitude:re(\"amplitude\"),frequency:re(\"frequency\"),softness:re(\"softness\"),spread:re(\"spread\"),pinEdges:re(\"pinEdges\"),colorScale:re(\"colorScale\"),colorVariance:re(\"colorVariance\")}),YA({space:re(\"colorSpace\")}),WA())});var Mu=et({name:\"Stripes\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Alternating colored stripes with animation\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#000000\",transform:ke,description:\"First stripe color\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#ffffff\",transform:ke,description:\"Second stripe color\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},angle:{default:45,transform:Ra,description:\"Angle of stripes in degrees\",ui:{type:[\"range\",\"map\"],min:-180,max:180,step:1,label:\"Angle\",group:\"Effect\"}},density:{default:5,description:\"Number of stripe pairs visible\",ui:{type:[\"range\",\"map\"],min:1,max:30,step:1,label:\"Density\",group:\"Effect\"}},balance:{default:.5,description:\"Ratio of the two colors\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Balance\",group:\"Effect\"}},softness:{default:0,description:\"Edge softness\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Softness\",group:\"Effect\"}},speed:{default:.2,description:\"Animation speed\",ui:{type:\"range\",min:-1,max:1,step:.1,label:\"Speed\",group:\"Animation\"}},offset:{default:0,description:\"Phase offset for pattern positioning\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.1,label:\"Offset\",group:\"Animation\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:_l({fill:re(\"colorA\"),stroke:re(\"colorB\"),mask:iA({angle:re(\"angle\"),density:re(\"density\"),balance:re(\"balance\"),softness:re(\"softness\"),offset:re(\"offset\")}),space:re(\"colorSpace\")})});var ku=et({name:\"SunBurst\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Radial sunburst rays emanating from a center point\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{color:{default:\"#ffdd88\",transform:ke,description:\"Ray color\",ui:{type:\"color\",label:\"Color\",group:\"Colors\"}},background:{default:\"#000000\",transform:ke,description:\"Background color\",ui:{type:\"color\",label:\"Background\",group:\"Colors\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center point of the sunburst\",ui:{type:\"position\",label:\"Center\",group:\"Position\"}},rayCount:{default:12,description:\"Number of rays\",ui:{type:\"range\",min:3,max:64,step:1,label:\"Ray Count\",group:\"Effect\"}},softness:{default:.3,description:\"Softness of ray edges\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Softness\",group:\"Effect\"}},radius:{default:.8,description:\"How far the rays extend from the center\",ui:{type:[\"range\",\"map\"],min:0,max:1.2,step:.01,label:\"Radius\",group:\"Effect\"}},feather:{default:.5,description:\"How gradually the rays fade at their outer edge\",ui:{type:[\"range\",\"map\"],min:0,max:5,step:.01,label:\"Feather\",group:\"Effect\"}},speed:{default:.2,description:\"Rotation speed \\u2014 positive values rotate clockwise\",ui:{type:\"range\",min:-2,max:2,step:.1,label:\"Speed\",group:\"Animation\"}}},paint:PA({color:re(\"color\"),background:re(\"background\"),coverage:Wm(pA(re(\"center\")),fA(vA({count:re(\"rayCount\"),softness:re(\"softness\"),spin:-1}),hA({radius:re(\"radius\"),feather:re(\"feather\")})),\"burstFrame\"),hint:\"burstAlpha\"})});var EE=Jc(NS({detail:re(\"detail\")})),$u=et({name:\"Swirl\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null},category:\"Textures\",description:\"Flowing swirl pattern with multi-layered noise\",animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#1275d8\",description:\"Primary gradient color\",transform:ke,ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#e19136\",description:\"Secondary gradient color\",transform:ke,ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),speed:{default:1,description:\"Flow animation speed\",ui:{type:\"range\",min:0,max:5,step:.1,label:\"Speed\",group:\"Animation\"}},detail:{default:1,description:\"Level of detail and intricacy in the swirl patterns\",ui:{type:[\"range\",\"map\"],min:0,max:5,step:.1,label:\"Detail\",group:\"Effect\"}},blend:{default:50,description:\"Skew color balance toward A (lower values) or B (higher values)\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Blend\",group:\"Effect\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:HS(_n(YS(EE,{low:.3,high:.7,bias:{base:re(\"blend\"),add:-50,mul:.006}}),eo(re(\"colorSpace\"))),qS(EE,{speed:2.5,span:8,depth:.015}))});var SY=Pn({applyThinFilmEffect:()=>AY,thinFilmCompose:()=>CE,thinFilmCustomParams:()=>$E,thinFilmRainbow:()=>kE,thinFilmShade:()=>ME}),f0=.017453292519943295,PE=6.283185307179586,ME=y.fn([a,a,a,a,a,a,a,a,a,a,a,a],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o,n,i,d,l,c,_,p,f)=>{\"use gpu\";let h=__tsover_div(t,s),g=w(__tsover_mul(n,.5),.001),x=w($e(__tsover_add(__tsover_mul(r,r),__tsover_mul(o,o))),1e-4),T=__tsover_div(r,x),S=__tsover_div(o,x),A=z(__tsover_mul(__tsover_div(__tsover_mul(h,-1),g),32),0,1),E=w(__tsover_mul(i,.1),.001),M=z(__tsover_div(__tsover_mul(h,-1),E),0,1),$=__tsover_div(1,$e(__tsover_add(__tsover_mul(x,x),1))),L=Z(7,1.5,z(i,0,1)),B=__tsover_mul(Ye(__tsover_sub(1,$),L),A),D=F(__tsover_mul(__tsover_mul(__tsover_sub(1,M),__tsover_sub(1,M)),A),B,f>.5),G=J(__tsover_mul(_,f0)),I=O(__tsover_mul(_,f0)),X=__tsover_add(__tsover_mul(T,G),__tsover_mul(S,I)),H=__tsover_sub(__tsover_mul(S,G),__tsover_mul(T,I)),ee=__tsover_mul(p,PE),Q=__tsover_add(__tsover_mul(X,J(ee)),__tsover_mul(H,O(ee))),de=__tsover_mul(__tsover_mul(d,w(__tsover_mul(h,-1),0)),10),Ee=F(__tsover_mul(__tsover_mul(d,M),2),de,f>.5);return u(__tsover_add(__tsover_add(c,__tsover_mul(l,Q)),Ee),D)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"sdfRaw\"},{type:\"i\",name:\"scale\"},{type:\"i\",name:\"gradX\"},{type:\"i\",name:\"gradY\"},{type:\"i\",name:\"edgeSoftness\"},{type:\"i\",name:\"rimWidthUniform\"},{type:\"i\",name:\"thickness\"},{type:\"i\",name:\"dispersion\"},{type:\"i\",name:\"hueShift\"},{type:\"i\",name:\"lightAngle\"},{type:\"i\",name:\"animTime\"},{type:\"i\",name:\"volumetric\"}],body:[0,[[13,\"sdf\",[1,\"sdfRaw\",\"/\",\"scale\"]],[13,\"sharp\",[6,\"std.max\",[[1,\"edgeSoftness\",\"*\",[5,\"0.5\"]],[5,\"0.001\"]]]],[13,\"gLen\",[6,\"std.max\",[[6,\"std.sqrt\",[[1,[1,\"gradX\",\"*\",\"gradX\"],\"+\",[1,\"gradY\",\"*\",\"gradY\"]]]],[5,\"0.0001\"]]]],[13,\"nx\",[1,\"gradX\",\"/\",\"gLen\"]],[13,\"ny\",[1,\"gradY\",\"/\",\"gLen\"]],[13,\"rb1\",[6,\"std.clamp\",[[1,[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"sharp\"],\"*\",[5,\"32\"]],[5,\"0\"],[5,\"1\"]]]],[13,\"rimWidth\",[6,\"std.max\",[[1,\"rimWidthUniform\",\"*\",[5,\"0.1\"]],[5,\"0.001\"]]]],[13,\"depth\",[6,\"std.clamp\",[[1,[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],\"/\",\"rimWidth\"],[5,\"0\"],[5,\"1\"]]]],[13,\"cosView\",[1,[5,\"1\"],\"/\",[6,\"std.sqrt\",[[1,[1,\"gLen\",\"*\",\"gLen\"],\"+\",[5,\"1\"]]]]]],[13,\"exponent\",[6,\"std.mix\",[[5,\"7\"],[5,\"1.5\"],[6,\"std.clamp\",[\"rimWidthUniform\",[5,\"0\"],[5,\"1\"]]]]]],[13,\"volRim\",[1,[6,\"std.pow\",[[1,[5,\"1\"],\"-\",\"cosView\"],\"exponent\"]],\"*\",\"rb1\"]],[13,\"flatRim\",[1,[1,[1,[5,\"1\"],\"-\",\"depth\"],\"*\",[1,[5,\"1\"],\"-\",\"depth\"]],\"*\",\"rb1\"]],[13,\"rim\",[6,\"std.select\",[\"flatRim\",\"volRim\",[1,\"volumetric\",\">\",[5,\"0.5\"]]]]],[13,\"lx\",[6,\"std.cos\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"ly\",[6,\"std.sin\",[[1,\"lightAngle\",\"*\",\"DEG_TO_RAD\"]]]],[13,\"baseCos\",[1,[1,\"nx\",\"*\",\"lx\"],\"+\",[1,\"ny\",\"*\",\"ly\"]]],[13,\"baseSin\",[1,[1,\"ny\",\"*\",\"lx\"],\"-\",[1,\"nx\",\"*\",\"ly\"]]],[13,\"theta\",[1,\"animTime\",\"*\",\"TWO_PI\"]],[13,\"rotatedDot\",[1,[1,\"baseCos\",\"*\",[6,\"std.cos\",[\"theta\"]]],\"+\",[1,\"baseSin\",\"*\",[6,\"std.sin\",[\"theta\"]]]]],[13,\"thickVol\",[1,[1,\"thickness\",\"*\",[6,\"std.max\",[[1,\"sdf\",\"*\",[4,\"-\",[5,\"1\"]]],[5,\"0\"]]]],\"*\",[5,\"10\"]]],[13,\"thickFlat\",[1,[1,\"thickness\",\"*\",\"depth\"],\"*\",[5,\"2\"]]],[13,\"thicknessTerm\",[6,\"std.select\",[\"thickFlat\",\"thickVol\",[1,\"volumetric\",\">\",[5,\"0.5\"]]]]],[13,\"phase\",[1,[1,\"hueShift\",\"+\",[1,\"dispersion\",\"*\",\"rotatedDot\"]],\"+\",\"thicknessTerm\"]],[10,[6,\"d.vec2f\",[\"phase\",\"rim\"]]]]]},externals:{\"std.max\":()=>w,\"std.sqrt\":()=>$e,\"std.clamp\":()=>z,\"std.mix\":()=>Z,\"std.pow\":()=>Ye,\"std.select\":()=>F,\"std.cos\":()=>J,DEG_TO_RAD:()=>f0,\"std.sin\":()=>O,TWO_PI:()=>PE,\"d.vec2f\":()=>u}})&&e.f)({})),kE=y.fn([a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return Vc(t,0,.3333,.6667)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[10,[6,\"cosinePalette\",[\"phase\",[5,\"0\"],[5,\"0.3333\"],[5,\"0.6667\"]]]]]]},externals:{cosinePalette:()=>Vc}})&&e.f)({})),$E=y.fn([a],v)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";let s=ve(t),r=__tsover_mul(s,3),o=ve(r),n=K(r);return v(o,F(a(0),a(1),n<=1.5),F(a(0),a(1),n<=.5))}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"phase\"}],body:[0,[[13,\"t\",[6,\"std.fract\",[\"phase\"]]],[13,\"t3\",[1,\"t\",\"*\",[5,\"3\"]]],[13,\"si\",[6,\"std.fract\",[\"t3\"]]],[13,\"floorT3\",[6,\"std.floor\",[\"t3\"]]],[13,\"gate12\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"floorT3\",\"<=\",[5,\"1.5\"]]]]],[13,\"gate01\",[6,\"std.select\",[[6,\"d.f32\",[[5,\"0\"]]],[6,\"d.f32\",[[5,\"1\"]]],[1,\"floorT3\",\"<=\",[5,\"0.5\"]]]]],[10,[6,\"d.vec3f\",[\"si\",\"gate12\",\"gate01\"]]]]]},externals:{\"std.fract\":()=>ve,\"std.floor\":()=>K,\"std.select\":()=>F,\"d.f32\":()=>a,\"d.vec3f\":()=>v}})&&e.f)({})),CE=y.fn([v,a,a,a],b)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s,r,o)=>{\"use gpu\";let n=Z(v(1,1,1),t,o).mul(s).mul(r),i=z(s,0,1);return b(n.x,n.y,n.z,i)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"baseColor\"},{type:\"i\",name:\"rim\"},{type:\"i\",name:\"intensity\"},{type:\"i\",name:\"saturation\"}],body:[0,[[13,\"white\",[6,\"d.vec3f\",[[5,\"1\"],[5,\"1\"],[5,\"1\"]]]],[13,\"col\",[6,\"std.mix\",[\"white\",\"baseColor\",\"saturation\"]]],[13,\"rgb\",[6,[7,[6,[7,\"col\",\"mul\"],[\"rim\"]],\"mul\"],[\"intensity\"]]],[13,\"alpha\",[6,\"std.clamp\",[\"rim\",[5,\"0\"],[5,\"1\"]]]],[10,[6,\"d.vec4f\",[[7,\"rgb\",\"x\"],[7,\"rgb\",\"y\"],[7,\"rgb\",\"z\"],\"alpha\"]]]]]},externals:{\"d.vec3f\":()=>v,\"std.mix\":()=>Z,\"std.clamp\":()=>z,\"d.vec4f\":()=>b}})&&e.f)({}));function AY(e,t,s){let{uniforms:r,propValues:o,ctx:n}=e,i=s?.volumetric??!1,d=s?.gradSampler??t,l=nt(i?1:0),c=e.props.member(\"_animTime\"),_=se(Gm,\"sdfSpaceUV\",[r.center,r.scale,r.rotation,n.uv,n.aspect]),p=t(_),f=p.member(\"r\"),h,g;if(s?.bakedGradients)h=p.member(\"g\"),g=p.member(\"b\");else{let E=d(se(jd,\"offsetUV\",[_,nt(.01),nt(0)])),M=d(se(jd,\"offsetUV\",[_,nt(0),nt(.01)])),$=se(Dm,\"glassGradient\",[f,E.member(\"r\"),M.member(\"r\")]);h=$.member(\"x\"),g=$.member(\"y\")}let x=se(ME,\"thinFilmShade\",[f,r.scale,h,g,r.edgeSoftness,r.rimWidth,r.thickness,r.dispersion,r.hueShift,r.lightAngle,c,l]),T=x.member(\"x\"),S=x.member(\"y\"),A;if(o.mode===\"custom\"){let E=Xo[typeof o.colorSpace==\"number\"?o.colorSpace:0]??lr,M=se($E,\"thinFilmCustomParams\",[T]),$=M.member(\"x\"),L=M.member(\"y\"),B=M.member(\"z\"),D=se(E,\"mixColors\",[r.colorA,r.colorB,$]),G=se(E,\"mixColors\",[r.colorB,r.colorC,$]);A=wn(wn(se(E,\"mixColors\",[r.colorC,r.colorA,$]),G,L),D,B).member(\"rgb\")}else A=se(kE,\"thinFilmRainbow\",[T]);return se(CE,\"thinFilmCompose\",[A,S,r.intensity,r.saturation])}var{applyThinFilmEffect:EY}=SY,PY=JSON.stringify({type:\"sphere3D\",radius:.35}),Cu=et({name:\"ThinFilm\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Iridescent thin-film edge\",animatedTime:{speed:\"speed\"},...Bs({chord:\"firstLobe\",gradSampler:\"same\",bakedGradients:\"volumetric\",stencil:\"none\",surface:(e,t)=>EY(t,e.sampler,{volumetric:e.volumetric,bakedGradients:e.bakedGradients})}),props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the shape (1 = default size)\",ui:{type:[\"range\",\"map\"],min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},intensity:{default:1,description:\"Rim brightness \\u2014 values above 1 push the edge past white for HDR bloom\",ui:{type:[\"range\",\"map\"],min:0,max:4,step:.01,label:\"Intensity\",group:\"Film\"}},rimWidth:{default:1,description:\"How far inward from the edge the iridescence reaches\",ui:{type:[\"range\",\"map\"],min:0,max:3,step:.01,label:\"Rim Width\",group:\"Film\"}},edgeSoftness:{default:.3,description:\"Softness of the shape boundary\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Film\"}},thickness:{default:.5,description:\"Film thickness \\u2014 higher values pack more spectral bands across the rim\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Thickness\",group:\"Film\"}},dispersion:{default:.5,description:\"How strongly color separates around the perimeter (warm vs cool sides)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Dispersion\",group:\"Film\"}},saturation:{default:1,description:\"Spectral saturation \\u2014 0 = white rim, 1 = full iridescence\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Saturation\",group:\"Film\"}},hueShift:{default:0,description:\"Rotate the spectrum to reposition the colors\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Hue Shift\",group:\"Film\"}},lightAngle:{default:300,description:\"Light angle in degrees \\u2014 sets which side of the rim runs warm vs cool\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Film\"}},mode:{default:\"rainbow\",compileTime:!0,description:\"Rainbow uses the full iridescent spectrum; Custom cycles through your three chosen colors\",ui:{type:\"select\",options:[{label:\"Rainbow\",value:\"rainbow\"},{label:\"Custom\",value:\"custom\"}],label:\"Mode\",group:\"Colors\"}},colorA:{default:\"#2b6fff\",transform:ke,description:\"First color in the rim cycle\",ui:{type:\"color\",label:\"Color 1\",group:\"Colors\",condition:{mode:\"custom\"}}},colorB:{default:\"#ffffff\",transform:ke,description:\"Second color in the rim cycle\",ui:{type:\"color\",label:\"Color 2\",group:\"Colors\",condition:{mode:\"custom\"}}},colorC:{default:\"#ff7a21\",transform:ke,description:\"Third color in the rim cycle\",ui:{type:\"color\",label:\"Color 3\",group:\"Colors\",condition:{mode:\"custom\"}}},colorSpace:{default:\"oklch\",transform:ft,compileTime:!0,description:\"color space used to blend between custom colors\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\",condition:{mode:\"custom\"}}},speed:{default:.1,description:\"Speed at which the colors rotate around the rim (0 = static)\",ui:{type:\"range\",min:-1,max:1,step:.01,label:\"Speed\",group:\"Animation\"}},shape:{default:PY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file \\u2014 when non-empty, activates SVG mode and triggers a shader recompile\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type \\u2014 triggers recompile when shape is switched. When empty, derived from shape JSON at mount time.\"}}});var RE=Jc(DA({scale:re(\"scale\"),seed:re(\"seed\")})),Ru=et({name:\"Voronoi\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Cellular pattern where each pixel is colored by its distance to the nearest of many scattered points\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#3186cf\",transform:ke,description:\"Color near each cell's center point\",ui:{type:\"color\",label:\"Color A (Center)\",group:\"Colors\"}},colorB:{default:\"#fc02dd\",transform:ke,description:\"Color at cell boundaries, far from any center point\",ui:{type:\"color\",label:\"Color B (Edge)\",group:\"Colors\"}},stops:Ls(),colorBorder:{default:\"#000000\",transform:ke,description:\"Color of the cell boundary lines\",ui:{type:\"color\",label:\"Border Color\",group:\"Colors\"}},scale:{default:6,description:\"Number of cells across the canvas\",ui:{type:[\"range\",\"map\"],min:1,max:20,step:.5,label:\"Scale\",group:\"Effect\"}},speed:{default:.5,description:\"Animation speed \\u2014 how fast the cell points drift\",ui:{type:\"range\",min:0,max:5,step:.1,label:\"Speed\",group:\"Animation\"}},seed:{default:0,description:\"Random seed \\u2014 shifts the cell pattern without changing the overall structure\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}},edgeIntensity:{default:.5,description:\"Controls how much of the cell interior is filled by the edge color. Low = center color dominates with a sharp boundary. High = edge color spreads further into the cell.\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Edge Intensity\",group:\"Effect\"}},edgeSoftness:{default:.05,description:\"Width of the cell boundary lines.\",ui:{type:[\"range\",\"map\"],min:0,max:.4,step:.005,label:\"Edge Softness\",group:\"Effect\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}}},paint:BA(_n(Jc(LA(RE,{edgeIntensity:re(\"edgeIntensity\")})),eo(re(\"colorSpace\"))),FA(RE,{softness:re(\"edgeSoftness\"),scale:re(\"scale\")}),{color:re(\"colorBorder\")})});var MY=JSON.stringify({type:\"sphere3D\",radius:.35}),v0=(e,t)=>{let s=P(e,t),r=ro(s),o=m(ro(C(m(s,2.07),Je(4.3,9.1))),.5),n=m(ro(C(m(s,4.13),Je(1.7,8.2))),.25);return m(C(C(r,o),n),.52)},xl=e=>m(ro(e),.52),UE=(e,t,s,r,o,n,i,d)=>{let l=P(ae(m(e,o),m(t,n)),`${d}Ex`),c=P(C(m(e,n),m(t,o)),`${d}Ey`),_=P(Le(C(m(c,.5),.5),0,1),`${d}Up`),p=Ze(.9,.96,1),f=Ze(.2,.46,.85),h=dt(Ze(.04,.1,.16),dt(p,f,Dt(Fe(.5,1,_))),Dt(Fe(.4,.55,_))),g=Je(m(s,.8),C(m(r,.8),.12)),x=P(dt(.5,.13,i),`${d}SunRad`),T=Ir(ae(Je(l,c),g)),S=Fe(x,m(x,.15),T);return C(h,m(Ze(1,.97,.88),m(S,1.5)))},Uu=et({name:\"Water\",role:\"shapeEffect\",species:\"custom\",boundingBoxDeclaration:Ds,category:\"Shape Effects\",description:\"Translucent water \\u2014 a refractive, light-absorbing body that deepens to its color with thickness, wrapped in a wind-driven wave surface that reflects a procedural sky, with Fresnel-bright grazing edges and foam breaking on the crests and shoreline\",animatedTime:{speed:\"speed\"},props:{origin:{default:\"center\",description:\"Reference edge the center position is measured from (center default). Lets you pin the shape relative to a corner or the canvas centre.\",ui:{type:\"origin\",label:\"Origin\",group:\"Position\"}},center:{default:{x:.5,y:.5},transform:ct,description:\"Center position of the water shape\",ui:{type:\"position\",label:\"Center\",group:\"Position\",units:[\"%\",\"px\"]}},scale:{default:1,description:\"Scale of the water shape (1 = default size)\",ui:{type:\"range\",min:.1,max:3,step:.01,label:\"Scale\",group:\"Position\"}},rotation:{default:0,description:\"Rotation of the water shape in degrees\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Rotation\",group:\"Position\"}},waterColor:{default:\"#00bfeb\",transform:ke,description:\"The color the water saturates toward with depth\",ui:{type:\"color\",label:\"Water Color\",group:\"Water\"}},clarity:{default:.4,description:\"How much of the reflected sky transmits through the body\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Clarity\",group:\"Water\"}},depth:{default:5,description:\"How quickly the water darkens and saturates toward its color with thickness\",ui:{type:\"range\",min:0,max:8,step:.01,label:\"Depth\",group:\"Water\"}},shallows:{default:.5,description:\"Brightness of the thin shallow water at the edges \\u2014 high fades the rim to light translucent water, low keeps the edges close to the deep water color\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Shallows\",group:\"Water\"}},caustics:{default:.15,description:\"Intensity of the light caustics bubbling up through the body \\u2014 bright veins of focused light churning inside the water\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Caustics\",group:\"Water\"}},causticScale:{default:6,description:\"Size of the caustic veins \\u2014 higher = finer, busier light patterns inside the body\",ui:{type:\"range\",min:1,max:20,step:.1,label:\"Caustic Scale\",group:\"Water\"}},choppiness:{default:.8,description:\"Height of the wind-driven waves \\u2014 the depth of the folds that bend the reflection\",ui:{type:\"range\",min:0,max:1.5,step:.01,label:\"Choppiness\",group:\"Waves\"}},waveScale:{default:3.5,description:\"Scale of the wave fronts \\u2014 higher = smaller, busier ripples\",ui:{type:\"range\",min:.5,max:8,step:.01,label:\"Wave Scale\",group:\"Waves\"}},swirl:{default:.6,description:\"Swirl of the flow \\u2014 domain-warps the wave fronts into curling eddies\",ui:{type:\"range\",min:0,max:1.5,step:.01,label:\"Swirl\",group:\"Waves\"}},speed:{default:.5,description:\"Speed of the rolling waves. 0 pauses the surface.\",ui:{type:\"range\",min:0,max:4,step:.01,label:\"Speed\",group:\"Waves\"}},reflection:{default:2,description:\"Strength of the reflected sky across the surface\",ui:{type:\"range\",min:0,max:2,step:.01,label:\"Reflection\",group:\"Surface\"}},envRotation:{default:0,description:\"Rotates the reflected sky \\u2014 spins where the bright sky and sun fall\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Env Rotation\",group:\"Surface\"}},sharpness:{default:.1,description:\"Tightness of the sun glint and reflected sun\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Sharpness\",group:\"Surface\"}},lightAngle:{default:30,description:\"Direction of the sun, in degrees \\u2014 drives the glint and where the sun reflects\",ui:{type:\"range\",min:0,max:360,step:1,label:\"Light Angle\",group:\"Surface\"}},foam:{default:.3,description:\"White foam breaking on the wave crests and along the shoreline edge\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Foam\",group:\"Surface\"}},edgeSoftness:{default:.05,description:\"Softness of the shape boundary edge\",ui:{type:\"range\",min:0,max:1,step:.01,label:\"Edge Softness\",group:\"Surface\"}},shape:{default:MY,description:\"Serialized shape configuration (JSON)\",ui:{type:\"shape\",label:\"Shape\",group:\"Shape\"}},shapeSdfUrl:{default:\"\",compileTime:!0,description:\"URL to a pre-generated SDF .bin file\"},shapeType:{default:\"\",compileTime:!0,description:\"Active SDF shape type\"}},...Bs({pattern:\"raw\",surface:(e,t)=>{let{uniforms:s}=t,r=it(t),o=e.volumetric,n=to(e,t,{scale:s.scale}),{sdf:i,pxH:d}=n,l=Wr(s.lightAngle,\"light\"),c=l.member(\"x\"),_=l.member(\"y\"),p=Wr(s.envRotation,\"env\"),f=p.member(\"x\"),h=p.member(\"y\"),g=ii(n),x;if(o)x=vl(n);else{let Cr=P(m(ae(1,Le(De(m(i,-1),.05),0,1)),1.6),\"rimBevel\");x=P(Jr(Ze(m(g.member(\"x\"),Cr),m(g.member(\"y\"),Cr),-1)),\"nGeo\")}let T=zo(e,n),S=T.member(\"x\"),A=T.member(\"y\"),E=P(m(s.waveScale,2.4),\"freq\"),M=P(m(r,.2),\"flowT\"),$=P(Je(m(m(S,E),.8),m(m(A,E),1.25)),\"q\"),L=m(s.swirl,.9),B=P(C(C($,m(jm(m($,.6),M),L)),Je(0,m(M,-1))),\"qw\"),D=.06,G=P(v0(B,\"fbmH0\"),\"h0\"),I=P(xl(B),\"h0n1\"),X=Le(De(ae(xl(C(B,Je(D,0))),I),D),-4,4),H=Le(De(ae(xl(C(B,Je(0,D))),I),D),-4,4),ee=.025,Q=P(C(C(m(B,3.3),Je(m(M,1.7),m(M,-1.15))),Je(11.3,4.7)),\"qf\"),de=P(xl(Q),\"f0n1\"),Ee=Le(De(ae(xl(C(Q,Je(ee,0))),de),ee),-4,4),he=Le(De(ae(xl(C(Q,Je(0,ee))),de),ee),-4,4),Me=P(m(s.choppiness,.5),\"relief\"),Te=P(m(s.choppiness,.22),\"reliefFine\"),Pe=P(Jr(Ze(ae(ae(x.member(\"x\"),m(X,Me)),m(Ee,Te)),ae(ae(x.member(\"y\"),m(H,Me)),m(he,Te)),x.member(\"z\"))),\"n\"),Ce=P(Le(s.sharpness,0,1),\"sharp\"),ie=P(jo(Ze(0,0,1),Pe),\"R\"),Ne=P(m(UE(ie.member(\"x\"),ie.member(\"y\"),c,_,f,h,Ce,\"refl\"),s.reflection),\"reflCol\"),ye=P(m(Kd(n,e),s.depth),\"thickness\"),Ve=P(Le(m(ye,1.3),0,1),\"depthT\"),qe=P(s.waterColor.member(\"rgb\"),\"wc\"),st=P(Hm(ye,Ze(m(ae(1,qe.member(\"x\")),2.2),m(ae(1,qe.member(\"y\")),2.2),m(ae(1,qe.member(\"z\")),2.2))),\"transmit\"),We=Le(s.shallows,0,1),Be=P(C(m(dt(dt(qe,Ze(1,1,1),Dt(We)),qe,Dt(Ve)),st),m(qe,m(Ve,.18))),\"bodyTint\"),rt=pn(l,-.7),tt=P(C(m(rs(Le(C(m(Gs(Pe,rt.member(\"L\")),.5),.5),0,1),.8),.5),.5),\"diffuse\"),Ke=P(PS(Ze(0,0,1),Pe,Gt(1/1.333)),\"tDir\"),Oe=m(UE(Ke.member(\"x\"),Ke.member(\"y\"),c,_,f,h,Ce,\"trans\"),st),gt=m(Le(s.clarity,0,1),ae(1,m(Ve,.8))),pt=m(dt(Be,C(m(Oe,.6),m(Be,.4)),Dt(gt)),tt),Ut=P(m(r,3),\"causT\"),Lt=P(C(m(Je(S,A),s.causticScale),Je(m(Zt(m(Ut,.15)),.4),m(m(Ut,.3),-1))),\"causP\"),Wt=ae(1,Us(v0(Lt,\"fbmC1\"))),vs=ae(1,Us(v0(C(m(Lt,1.9),Je(3.7,m(m(Ut,.18),-1))),\"fbmC2\"))),jt=P(rs(Le(C(m(Wt,.6),m(vs,.4)),0,1),3),\"causV\"),Qt=P(m(C(m(Ve,.8),.2),s.caustics),\"causMask\"),$s=dt(C(m(pt,C(1,m(m(jt,Qt),.7))),m(Ze(.55,.82,1),m(m(jt,Qt),.45))),Ne,Dt(Le(Km(ci(Pe),{gain:.96}),0,1))),Is=qm(Le(Gs(Pe,rt.member(\"H\")),0,1),Ce,is(40,600,.3,1.3)),Ys=C($s,m(Ze(1,.98,.92),Is)),hs=P(m(Le(C(Fe(.62,.92,Le(C(m(G,.5),.5),0,1)),m(ae(1,Fe(0,.045,m(i,-1))),.7)),0,1),s.foam),\"foamMask\"),rr=P(dt(Ys,Ze(1,1,1),Dt(m(hs,.85))),\"waterRgb\"),or=so(n,s.edgeSoftness);return sr(Yr(i,d),is(rr,or),_s,\"water\")}})});var kY=[{waves:[{x:5.1,t:1.3}],weight:.28},{waves:[{x:9.7,t:-1.9},{x:1.7,t:.6}],weight:.24},{waves:[{x:17.3,t:2.7}],weight:.18},{waves:[{x:31.9,t:-3.4},{x:3.3,t:-.9}],weight:.14},{waves:[{x:67.7,t:4.1}],weight:.09},{waves:[{x:131.3,t:-5.3},{x:7.9,t:1.1}],weight:.07}],$Y=.4,CY=4,RY=.45,UY=.6,h0=.002,zE={bars:0,wave:1,line:2,dots:3},GE={mirrored:0,top:1,bottom:2},zY=e=>typeof e==\"number\"?Object.keys(zE)[e]??\"bars\":e===\"wave\"||e===\"line\"||e===\"dots\"?e:\"bars\",GY=e=>typeof e==\"number\"?Object.keys(GE)[e]??\"mirrored\":e===\"top\"||e===\"bottom\"?e:\"mirrored\",zu=et({name:\"Waveform\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Audio-visualizer waveform \\u2014 equalizer bars, a filled wave, an oscilloscope line, or a dot matrix \\u2014 driven by a simulated signal whose amplitude you can map to your own audio level\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{style:{default:\"bars\",transform:e=>zE[e]??0,compileTime:!0,description:\"Visualizer style: equalizer bars, a filled wave envelope, an oscilloscope line, or a dot matrix\",ui:{type:\"select\",options:[{label:\"Bars\",value:\"bars\"},{label:\"Wave\",value:\"wave\"},{label:\"Line\",value:\"line\"},{label:\"Dots\",value:\"dots\"}],label:\"Style\",group:\"Style\"}},colorA:{default:\"#3b5bff\",transform:ke,description:\"Color at the start\",ui:{type:\"color\",label:\"Color A\",group:\"Colors\"}},colorB:{default:\"#ff3bd4\",transform:ke,description:\"Color at the end\",ui:{type:\"color\",label:\"Color B\",group:\"Colors\"}},stops:Ls(),colorSpace:{default:\"oklab\",transform:ft,compileTime:!0,description:\"Color space for the start\\u2192end gradient\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},from:{default:{x:0,y:.5},transform:ct,description:\"Where the waveform starts (Color A end)\",ui:{type:\"position\",label:\"Start\",group:\"Position\",units:[\"%\",\"px\"]}},to:{default:{x:1,y:.5},transform:ct,description:\"Where the waveform ends (Color B end)\",ui:{type:\"position\",label:\"End\",group:\"Position\",units:[\"%\",\"px\"]}},amplitude:{default:1,description:\"Overall signal level (0 = silence). Map this to your own audio level to make the waveform react to real sound.\",ui:{type:[\"range\",\"map\"],min:0,max:2,step:.01,label:\"Amplitude\",group:\"Signal\"}},frequency:{default:1,description:\"How busy the signal is across the width (higher = more peaks)\",ui:{type:[\"range\",\"map\"],min:.2,max:3,step:.01,label:\"Frequency\",group:\"Signal\"}},height:{default:.6,description:\"Maximum vertical extent of the waveform as a fraction of the canvas height\",ui:{type:[\"range\",\"map\"],min:.05,max:1,step:.01,label:\"Height\",group:\"Effect\"}},align:{default:\"mirrored\",transform:e=>GE[e]??0,compileTime:!0,description:\"Which side of the start\\u2192end baseline the waveform grows on: mirrored around it, above it (top), or below it (bottom)\",ui:{type:\"select\",options:[{label:\"Mirrored\",value:\"mirrored\"},{label:\"Top\",value:\"top\"},{label:\"Bottom\",value:\"bottom\"}],label:\"Align\",group:\"Effect\"}},count:{default:32,description:\"Number of bars (or dot columns) across the width\",ui:{type:[\"range\",\"map\"],min:4,max:128,step:1,label:\"Count\",group:\"Effect\",condition:{style:[\"bars\",\"dots\"]}}},barWidth:{default:.6,description:\"Bar thickness as a fraction of its column (1 = bars touch)\",ui:{type:[\"range\",\"map\"],min:.1,max:1,step:.01,label:\"Bar Width\",group:\"Effect\",condition:{style:\"bars\"}}},rounding:{default:1,description:\"Rounds the bar ends (0 = square, 1 = fully rounded caps)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Rounding\",group:\"Effect\",condition:{style:\"bars\"}}},dotSize:{default:.7,description:\"Dot diameter as a fraction of its cell\",ui:{type:[\"range\",\"map\"],min:.2,max:1,step:.01,label:\"Dot Size\",group:\"Effect\",condition:{style:\"dots\"}}},lineWidth:{default:.006,description:\"Stroke thickness of the line. A value of one (1) matches the canvas height.\",ui:{type:[\"range\",\"map\"],min:.001,max:.05,step:.001,label:\"Line Width\",group:\"Effect\",dimensional:\"canvas-height\",condition:{style:\"line\"}}},softness:{default:0,description:\"Feathers the wave's edge into a glow\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Softness\",group:\"Effect\",condition:{style:\"wave\"}}},speed:{default:1,description:\"Animation speed of the simulated signal\",ui:{type:\"range\",min:0,max:3,step:.01,label:\"Speed\",group:\"Animation\"}},seed:{default:1,description:\"Adjusts the starting state, useful for variation\",ui:{type:\"range\",min:0,max:100,step:1,label:\"Seed\",group:\"Animation\"}}},paint:e=>{let t=zY(e.propValues.style),s=GY(e.propValues.align),{viewport:r}=Ko(e),o=de=>Se(re(de),e),{along:n,across:i,length:d}=Zm({from:re(\"from\"),to:re(\"to\")})(e,Ko(e)),l=P(De(n,d),\"wfX\"),c=P(De(1,r.member(\"y\")),\"wfPx\"),_=P(it(e,\"seed\"),\"wfTime\"),p=o(\"amplitude\"),f=o(\"frequency\"),h=o(\"height\"),g=de=>ml({x:m(de,f),t:_},kY),x=de=>dt($Y,1,Im(ae(de,.5),CY)),T=de=>Le(m(m(g(de),x(de)),p),-1,1),S=de=>Le(m(m(C(RY,m(g(de),UY)),x(de)),p),0,1),A=s===\"mirrored\",E=P(s===\"top\"?mo(i):i,\"wfDy\"),M=A?Us(E):E,$=de=>m(m(de,h),A?.5:1),L=de=>A?ae(M,de):ht(ae(M,de),mo(M)),B=o(\"count\"),D=P(De(d,B),\"wfCell\"),G=P(m(l,B),\"wfXCells\"),I=P(De(C(e0(G),.5),B),\"wfColX\"),X=P(m(ae(Uo(G),.5),D),\"wfColDx\"),H;if(t===\"bars\"){let de=P(m(m(o(\"barWidth\"),D),.5),\"wfHalfW\"),Ee=P(ht($(S(I)),A?de:m(de,2)),\"wfExtent\"),he=A?Ee:m(Ee,.5);H=ul({distance:DS(X,A?E:ae(E,he),de,he,m(o(\"rounding\"),de)),footprint:c})}else if(t===\"dots\"){let de=P(De(M,D),\"wfRows\"),Ee=P(m(C(e0(de),.5),D),\"wfRowY\"),he=P($(S(I)),\"wfExtent\"),Me=m(ae(1,Fe(ae(he,m(D,.5)),C(he,m(D,.5)),Ee)),A?1:ES(0,M)),Te=m(m(o(\"dotSize\"),D),.5);H=m(ul({distance:GS(X,m(ae(Uo(de),.5),D),Te),footprint:c}),Me)}else if(t===\"line\"){let de=Me=>$(A?T(Me):S(Me)),Ee=P(de(l),\"wfCurve\"),he=P(De(ae(de(C(l,h0)),de(ae(l,h0))),m(2*h0,d)),\"wfSlope\");H=RS({distance:De(ae(E,Ee),un(C(1,m(he,he)))),width:o(\"lineWidth\"),footprint:c})}else H=ul({distance:L(P($(S(l)),\"wfExtent\")),footprint:C(c,m(o(\"softness\"),.2))});let ee=ul({distance:ht(mo(n),ae(n,d)),footprint:c}),Q=P(eo(re(\"colorSpace\"))(l,e),\"wfColor\");return is(Q.member(\"rgb\"),m(m(Q.member(\"a\"),H),ee))}});var Gu=et({name:\"WorleyNoise\",role:\"generator\",boundingBoxDeclaration:{aspectRatio:null,supportsResizeFit:!0},category:\"Textures\",description:\"Cellular noise field \\u2014 distance-based, with selectable feature combinations and fractal octaves\",acceptsUVContext:!0,animatedTime:{speed:\"speed\"},props:{colorA:{default:\"#ffffff\",transform:ke,description:\"Color where the noise field is low (typically near cell centers)\",ui:{type:\"color\",label:\"Color A (Low)\",group:\"Colors\"}},colorB:{default:\"#000000\",transform:ke,description:\"Color where the noise field is high (typically near cell boundaries)\",ui:{type:\"color\",label:\"Color B (High)\",group:\"Colors\"}},colorSpace:{default:\"linear\",transform:ft,compileTime:!0,description:\"Color space for color interpolation\",ui:{type:\"select\",options:At,label:\"Color Space\",group:\"Colors\"}},scale:{default:6,description:\"Number of cells across the canvas at the base octave\",ui:{type:[\"range\",\"map\"],min:1,max:30,step:.5,label:\"Scale\",group:\"Effect\"}},mode:{default:\"f1\",transform:VA,compileTime:!0,description:\"Field type. F1 = distance to nearest point. F2 = distance to second-nearest. F2 \\u2212 F1 emphasises cell boundaries.\",ui:{type:\"select\",options:[{label:\"F1 (Cells)\",value:\"f1\"},{label:\"F2 (Wider Cells)\",value:\"f2\"},{label:\"F2 \\u2212 F1 (Edges)\",value:\"f2MinusF1\"},{label:\"F1 + F2\",value:\"f1PlusF2\"},{label:\"F1 \\xD7 F2\",value:\"f1TimesF2\"}],label:\"Mode\",group:\"Effect\"}},distance:{default:\"euclidean\",transform:NA,compileTime:!0,description:\"Distance metric. Euclidean = round cells. Manhattan = diamond. Chebyshev = square.\",ui:{type:\"select\",options:[{label:\"Euclidean\",value:\"euclidean\"},{label:\"Manhattan\",value:\"manhattan\"},{label:\"Chebyshev\",value:\"chebyshev\"}],label:\"Distance\",group:\"Effect\"}},octaves:{default:1,compileTime:!0,description:\"Number of fractal layers stacked at progressively finer scales\",ui:{type:\"range\",min:1,max:4,step:1,label:\"Octaves\",group:\"Effect\"}},lacunarity:{default:2,description:\"Scale multiplier between octaves (only active when Octaves > 1)\",ui:{type:[\"range\",\"map\"],min:1.5,max:4,step:.1,label:\"Lacunarity\",group:\"Effect\",condition:{octaves:[2,3,4]}}},persistence:{default:.5,description:\"Amplitude multiplier between octaves (only active when Octaves > 1)\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Persistence\",group:\"Effect\",condition:{octaves:[2,3,4]}}},jitter:{default:1,description:\"How much each cell's point drifts inside its cell. 0 = rigid grid (banded look), 1 = fully random.\",ui:{type:[\"range\",\"map\"],min:0,max:1,step:.01,label:\"Jitter\",group:\"Effect\"}},contrast:{default:1,description:\"Steepness of the gradient between low and high regions\",ui:{type:[\"range\",\"map\"],min:.25,max:4,step:.01,label:\"Contrast\",group:\"Effect\"}},balance:{default:0,description:\"Shifts the gradient midpoint. Negative pulls the field toward Color A, positive toward Color B.\",ui:{type:[\"range\",\"map\"],min:-1,max:1,step:.01,label:\"Balance\",group:\"Effect\"}},seed:{default:0,description:\"Random seed \\u2014 shifts the cell pattern without changing its overall structure\",ui:{type:[\"range\",\"map\"],min:0,max:100,step:1,label:\"Seed\",group:\"Effect\"}},speed:{default:.5,description:\"Animation speed \\u2014 how fast each cell's point drifts\",ui:{type:\"range\",min:0,max:5,step:.1,label:\"Speed\",group:\"Animation\"}}},paint:GA({scale:re(\"scale\"),jitter:re(\"jitter\"),lacunarity:re(\"lacunarity\"),persistence:re(\"persistence\"),contrast:re(\"contrast\"),balance:re(\"balance\"),seed:re(\"seed\"),mode:re(\"mode\"),distance:re(\"distance\"),octaves:re(\"octaves\"),space:re(\"colorSpace\")})});var DY=[eu,tu,su,ru,ou,nu,au,iu,du,lu,cu,uu,_u,pu,mu,fu,vu,hu,yu,gu,xu,bu,wu,Tu,Su,Au,Eu,Pu,Mu,ku,$u,Cu,Ru,Uu,zu,Gu].map(e=>({definition:e})),LY=e=>DY.find(t=>t.definition.name===e);var FY=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Em({in:{vertexIndex:qr.vertexIndex},out:{pos:qr.position,uv:$t}})`{\n const pos = array<vec2f, 3>(vec2f(-1, -1), vec2f(3, -1), vec2f(-1, 3));\n const uv = array<vec2f, 3>(vec2f(0, 1), vec2f(2, 1), vec2f(0, -1));\n\n return Out(vec4f(pos[in.vertexIndex], 0, 1), uv[in.vertexIndex]);\n}`,\"fullScreenTriangle\");Q5.disable(\"external-omitted\");var BY=[\"float32-filterable\",\"timestamp-query\"],g0=new WeakMap,y0=new WeakMap,x0=new WeakSet,bl=null,IY=new WeakSet;async function YY(e={}){if(e.device&&!x0.has(e.device)){let r=e.device,o=g0.get(r);o||(o=y.initFromDevice({device:r}),g0.set(r,o));let n=DE(o,e.onDeviceLost);return{root:o,device:r,adapter:e.adapter,createdDevice:!1,release:n}}e.device&&vi(\"[gpu] injected GPU device was lost \\u2014 falling back to the shared default device\");let t=await WY(),s=DE(t.root,e.onDeviceLost);return{root:t.root,device:t.device,adapter:t.adapter,createdDevice:!1,release:s}}async function WY(){for(;;){let t=bl;if(!t)break;let s=await t.catch(()=>null);if(s&&!IY.has(t)&&!x0.has(s.device))return s;bl===t&&(bl=null)}let e=OY();bl=e;try{return await e}catch(t){throw bl===e&&(bl=null),t}}async function OY(){if(typeof navigator>\"u\"||!navigator.gpu)throw new od(\"unsupported\",\"[gpu] WebGPU is not available in this environment (navigator.gpu is undefined).\");let e;try{e=await y.init({adapter:{powerPreference:\"high-performance\"},device:{optionalFeatures:BY}})}catch(t){let s=await Z0();throw new od(s.supported?\"no-device\":s.reason??\"init-failed\",void 0,{cause:t})}if(!e.device)throw new od(\"no-device\",\"[gpu] adapter returned no device.\");return g0.set(e.device,e),{root:e,device:e.device,createdDevice:!0}}function VY(e,t,s={}){return e.configureContext({canvas:t,alphaMode:\"premultiplied\",...s})}function DE(e,t){let s=e.device,r=y0.get(s);if(r||(r=new Set,y0.set(s,r),e.device.lost.then(n=>{if(x0.add(s),n.reason!==\"destroyed\")for(let i of[...y0.get(s)??[]])i(n)})),!t)return()=>{};let o=r;return o.add(t),()=>o.delete(t)}function NY(){let e={value:0,advance(t,s){e.value+=t*s}};return e}var LE=new WeakMap;function Qi(e){let t=LE.get(e);return t||(t=NY(),LE.set(e,t)),t}var qY=(globalThis.__TYPEGPU_AUTONAME__??(e=>e))(Ct({time:a,viewportSize:u,logicalViewportSize:u,aspect:a,pointer:u,pointerActive:a}),\"SystemUniforms\");y.fn([u,u],u)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=((t,s)=>{\"use gpu\";return Kr(t,s)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"uv\"},{type:\"i\",name:\"viewportSize\"}],body:[0,[[10,[6,\"std.mul\",[\"uv\",\"viewportSize\"]]]]]},externals:{\"std.mul\":()=>Kr}})&&e.f)({}));y.fn([u],a)((e=>(globalThis.__TYPEGPU_META__??=new WeakMap).set(e.f=(t=>{\"use gpu\";return __tsover_div(t.x,t.y)}),{v:2,name:void 0,ast:{params:[{type:\"i\",name:\"viewportSize\"}],body:[0,[[10,[1,[7,\"viewportSize\",\"x\"],\"/\",[7,\"viewportSize\",\"y\"]]]]]},externals:{}})&&e.f)({}));function XY(e){let t=2166136261,s=e.join(\"\u0001\");for(let r=0;r<s.length;r++)t^=s.charCodeAt(r),t=Math.imul(t,16777619);return`${(t>>>0).toString(16).padStart(8,\"0\")}:${s.length}`}function HY(e={}){let t=e.maxSize??4,s=e.dispose,r=new Map,o=0,n=null,i=null;function d(c){c.lastUsed=++o}function l(){for(;r.size>t;){let c=null;for(let _ of r.values())_.hash===n||_.hash===i||(!c||_.lastUsed<c.lastUsed)&&(c=_);if(!c)break;r.delete(c.hash),s?.(c.value,c.hash)}}return{getOrBuild(c,_){let p=r.get(c);if(p)return d(p),c===n?i=null:i=c,p.value;let f=_(),h={hash:c,value:f,lastUsed:++o};return r.set(c,h),n===null?(n=c,i=null):i=c,l(),f},markReady(c){if(c!==i)return;let _=r.get(c);_&&(n=c,i=null,d(_),l())},get renderValue(){let c=n??i;return c?r.get(c)?.value??null:null},get activeHash(){return n},get pendingHash(){return i},release(c){let _=r.get(c);_&&(r.delete(c),s?.(_.value,c),n===c&&(n=null),i===c&&(i=null))},has(c){return r.has(c)},get size(){return r.size},clear(){for(let c of r.values())s?.(c.value,c.hash);r.clear(),n=null,i=null}}}var wl=\"passManager\";function jY(e,t){let{textureManager:s,dispatcher:r}=t,o=t.canvasFormat??KY(),n=t.rttFormat??\"rgba16float\",i=e.device?.limits?.maxSampledTexturesPerShaderStage,d=t.maxSampledTextures??(typeof i==\"number\"&&i>0?i:16),l=t.fullScreenTriangle??FY,c=new Map,_=new Set,p=null;function f(){let G=s.samplers;try{return e.createBindGroup(by,{linearClamp:G.linearClamp,nearestClamp:G.nearestClamp,linearRepeat:G.linearRepeat,nearestRepeat:G.nearestRepeat})}catch(I){yr(`[${wl}] failed to build sampler bind group:`,I);return}}function h(G,I){let X=new Set;for(let H of G.textures)if(H.kind===\"rtt\")if(X.add(H.key),c.has(H.key))c.get(H.key).resize(I.width,I.height);else{let ee=s.createRenderTexture({width:I.width,height:I.height,format:n,label:`rtt:${H.key}`});c.set(H.key,ee),_.add(ee)}for(let[H,ee]of[...c])X.has(H)||(ee.destroy(),_.delete(ee),c.delete(H))}function g(G,I){if(!G.textureLayout||G.reads.length===0)return;let X={};for(let H of G.reads){let ee=c.get(H),Q=I?.[H],de=ee??Q;if(!de){yr(`[${wl}] pass \"${G.entry}\" reads unknown texture \"${H}\"`);return}X[H]=de.texture}G.reads.length>d&&vi(`[${wl}] pass samples ${G.reads.length} textures (> device limit ~${d}); composition may fail on this device.`);try{return e.createBindGroup(G.textureLayout,X)}catch(H){yr(`[${wl}] failed to build texture bind group:`,H);return}}function x(G,I){return e.createRenderPipeline({vertex:l,fragment:G.entry,targets:{format:I}})}function T(G,I){if(!G.externalLayout||G.externalReads.length===0)return;let X=G.externalReads;if(X.length===1){let ee=I.get(X[0]);if(!ee){yr(`[${wl}] external read \"${X[0]}\" has no registered source`);return}return s.createExternalTextureBinding({layout:G.externalLayout,entryKey:X[0],getSource:ee})}let H=null;return{update(){let ee={};for(let Q of X){let de=I.get(Q)?.();if(!de)return H=null,null;try{ee[Q]=e.device.importExternalTexture({source:de})}catch{return H=null,null}}return H=e.createBindGroup(G.externalLayout,ee),H},get current(){return H},destroy(){H=null}}}function S(G,I,X,H){let ee=I.kind===\"canvas\"?o:n,Q=G.reads.filter(Ee=>X?.[Ee]),de=new Map(Q.map(Ee=>[Ee,X[Ee].texture]));return{fragment:G,pipeline:x(G,ee),textureBindGroup:g(G,X),externalBinding:T(G,H),target:I,mediaReads:Q,mediaSnapshot:de}}function A(G,I,X,H){h(G,X);for(let he of G.computeSteps)he.bindInputs?.(Me=>c.get(Me)??H?.[Me]);let ee=f(),Q=new Map;for(let he of G.externalTextures)Q.set(he.key,he.getSource);let de=G.rttPasses.map(he=>S(he.fragment,{kind:\"rtt\",key:he.textureKey},H,Q)),Ee=S(G.finalPass,{kind:\"canvas\"},H,Q);p={ir:G,uniformBindGroup:I,samplerBindGroup:ee,computeSteps:G.computeSteps,rttPasses:de,finalPass:Ee,size:X,mediaResources:H}}function E(G,I){let X=G.pipeline;if(p?.uniformBindGroup&&(X=X.with(p.uniformBindGroup)),G.mediaReads&&G.mediaReads.length>0&&p?.mediaResources){let H=!1;for(let ee of G.mediaReads)p.mediaResources[ee].texture!==G.mediaSnapshot.get(ee)&&(H=!0);if(H){G.textureBindGroup=g(G.fragment,p.mediaResources);for(let ee of G.mediaReads)G.mediaSnapshot.set(ee,p.mediaResources[ee].texture)}}if(G.textureBindGroup&&(X=X.with(G.textureBindGroup)),G.fragment.usesSamplers&&p?.samplerBindGroup&&(X=X.with(p.samplerBindGroup)),G.fragment.externalReads.length>0){let H=G.externalBinding?.update()??null;if(!H){G.externalSkipLogged||(vi(`[${wl}] external texture not ready \\u2014 skipping pass (${G.fragment.externalReads.join(\", \")})`),G.externalSkipLogged=!0);return}X=X.with(H)}X.withColorAttachment({view:I}).draw(3)}function M(G,I,X){if(p){for(let H of p.computeSteps){let ee=H.getComputeNodes(I);ee&&ee.length&&r.dispatch(ee)}X?.(),$(),E(p.finalPass,G)}}function $(){if(p)for(let G of p.rttPasses){let I=c.get(G.target.key);I&&E(G,L(I))}}function L(G){return e.unwrap(G.texture).createView()}function B(G){if(!(!G.fragment.textureLayout||G.fragment.reads.length===0)&&(G.textureBindGroup=g(G.fragment,p?.mediaResources),G.mediaReads&&G.mediaSnapshot&&p?.mediaResources))for(let I of G.mediaReads)G.mediaSnapshot.set(I,p.mediaResources[I].texture)}function D(G,I){let X=!1;for(let H of c.values())H.resize(G,I)&&(X=!0);if(!p)return X;if(p.size={width:G,height:I},!X)return!1;for(let H of p.computeSteps)H.bindInputs?.(ee=>c.get(ee)??p.mediaResources?.[ee]);for(let H of p.rttPasses)B(H);return B(p.finalPass),!0}return{setComposition:A,render:M,repaintRtt:$,resize:D,get textureCount(){return _.size},get passCount(){return p?p.rttPasses.length+1:0},dispose(){for(let G of[..._])G.destroy();_.clear(),c.clear(),p=null}}}function KY(){return typeof navigator<\"u\"&&navigator.gpu?navigator.gpu.getPreferredCanvasFormat():\"bgra8unorm\"}function FE(e){return`${e}-srgb`}function ZY(e){let t=new Set;function s(h,...g){return e.createTexture.call(e,h).$usage(...g)}let r,o,n,i,d={get linearClamp(){return r??=e.createSampler({magFilter:\"linear\",minFilter:\"linear\",mipmapFilter:\"linear\",addressModeU:\"clamp-to-edge\",addressModeV:\"clamp-to-edge\"})},get nearestClamp(){return o??=e.createSampler({magFilter:\"nearest\",minFilter:\"nearest\",addressModeU:\"clamp-to-edge\",addressModeV:\"clamp-to-edge\"})},get linearRepeat(){return n??=e.createSampler({magFilter:\"linear\",minFilter:\"linear\",mipmapFilter:\"linear\",addressModeU:\"repeat\",addressModeV:\"repeat\"})},get nearestRepeat(){return i??=e.createSampler({magFilter:\"nearest\",minFilter:\"nearest\",addressModeU:\"repeat\",addressModeV:\"repeat\"})}};function l(h,g,x,T,S){let A={texture:h,width:g,height:x,format:T,write(E){h.write(E)},unwrap(){return e.unwrap(h)},createSrgbView(){if(S)return e.unwrap(h).createView({format:FE(T)})},generateMipmaps(){h.generateMipmaps?.()},destroy(){t.has(A)&&(h.destroy(),t.delete(A))}};return t.add(A),A}function c(h){let{width:g,height:x,srgb:T=!1,mipLevelCount:S}=h,A=h.format??\"rgba8unorm\";return l(s({size:[g,x],format:A,...T?{viewFormats:[FE(A)]}:{},...S?{mipLevelCount:S}:{}},\"sampled\",\"render\"),g,x,A,T)}function _(h){let{width:g,height:x,format:T,data:S}=h,A=l(s({size:[g,x],format:T},\"sampled\"),g,x,T,!1);return S&&A.write(S),A}function p(h){let g=h.format??\"rgba16float\",{mipLevelCount:x}=h,T=h.width,S=h.height;function A(M,$){return l(s({size:[M,$],format:g,...x?{mipLevelCount:x}:{}},\"sampled\",\"render\"),M,$,g,!1)}let E=A(T,S);return{get texture(){return E.texture},get width(){return T},get height(){return S},format:g,write(M){E.write(M)},unwrap(){return E.unwrap()},createSrgbView(){return E.createSrgbView()},generateMipmaps(){E.generateMipmaps()},resize(M,$){return M===T&&$===S?!1:(E.destroy(),T=M,S=$,E=A(M,$),!0)},destroy(){E.destroy()}}}function f(h){let{layout:g,entryKey:x,getSource:T,staticEntries:S={}}=h,A=null;return{update(){let E=T();if(!E)return A=null,null;let M;try{M=e.device.importExternalTexture({source:E})}catch{return A=null,null}return A=e.createBindGroup(g,{...S,[x]:M}),A},get current(){return A},destroy(){A=null}}}return{samplers:d,createMediaTexture:c,createDataTexture:_,createRenderTexture:p,createExternalTextureBinding:f,get textureCount(){return t.size},destroy(){for(let h of[...t])h.destroy();t.clear()}}}function QY(e,t){let s=LY(e)?.definition?.naturalSizeKey;if(!s)return null;if(\"fixed\"in s)return s.fixed||null;let r=t[s.fromProp];return typeof r==\"string\"&&r?r:null}function JY(e,t,s){if(!e||typeof e!=\"object\")return null;let r=(i,d)=>!i||typeof i!=\"object\"||typeof i.value!=\"number\"?null:i.unit===\"px\"?i.value:i.value*d,o=r(e.width,t),n=r(e.height,s);return o!=null&&n!=null&&o>0&&n>0?{widthPx:o,heightPx:n}:null}function eW(e,t,s){let{type:r,decl:o,props:n,boundingBox:i}=e;if(!(t>0)||!(s>0)||e.requiresChild)return null;if(o?.computeBounds){let _=o.computeBounds(n,t,s);return _.widthPx>0&&_.heightPx>0?{widthPx:_.widthPx,heightPx:_.heightPx}:null}let d=o?.propBindings;if(d?.width&&d?.height){let _=Mc(d.width,n[d.width.prop],t,s),p=Mc(d.height,n[d.height.prop],t,s);return _>0&&p>0?{widthPx:_,heightPx:p}:null}let l=JY(i,t,s);if(l)return l;let c=QY(r,n);if(c){let _=TT(c);if(_)return{widthPx:_.width,heightPx:_.height}}return null}function tW(e,t){return e==null?0:typeof e==\"number\"?e:e.unit===\"px\"?e.value:e.value*t}function b0(e,t,s){return!e||e.mode!==\"column\"&&e.mode!==\"row\"?null:{mode:e.mode,gapPx:Math.max(0,tW(e.gap,e.mode===\"column\"?s:t)),align:e.align??\"center\",anchor:e.anchor??\"center\",anchorOffsetX:e.anchorOffset?.x??0,anchorOffsetY:e.anchorOffset?.y??0}}var BE=e=>({ox:e.includes(\"left\")?\"start\":e.includes(\"right\")?\"end\":\"center\",oy:e.includes(\"top\")?\"start\":e.includes(\"bottom\")?\"end\":\"center\"}),s1=(e,t,s,r)=>e===\"start\"?r:e===\"end\"?s-t-r:(s-t)/2+r;function r1(e,t){let s=0,r=0;for(let o of t){let n=e.mode===\"column\"?o.size.heightPx:o.size.widthPx,i=e.mode===\"column\"?o.size.widthPx:o.size.heightPx;s+=n,r=Math.max(r,i)}return t.length>1&&(s+=e.gapPx*(t.length-1)),e.mode===\"column\"?{widthPx:r,heightPx:s}:{widthPx:s,heightPx:r}}function sW(e,t,s,r){let o=new Map;if(t.length===0)return o;let n=r1(e,t),{ox:i,oy:d}=BE(e.anchor),l=s1(i,n.widthPx,s,e.anchorOffsetX),c=s1(d,n.heightPx,r,e.anchorOffsetY),_=(f,h)=>e.align===\"start\"?0:e.align===\"end\"?h-f:(h-f)/2,p=0;for(let f of t)if(e.mode===\"column\"){let h=l+_(f.size.widthPx,n.widthPx)+f.size.widthPx/2,g=c+p+f.size.heightPx/2;o.set(f.id,{centerXPx:h,centerYPx:g}),p+=f.size.heightPx+e.gapPx}else{let h=l+p+f.size.widthPx/2,g=c+_(f.size.heightPx,n.heightPx)+f.size.heightPx/2;o.set(f.id,{centerXPx:h,centerYPx:g}),p+=f.size.widthPx+e.gapPx}return o}function rW(e,t,s){let r=b0(e.layout,t,s);if(r){let o=w0(e,t,s);return o.length===0?null:r1(r,o)}return eW({type:e.componentName,decl:e.decl,props:e.props,boundingBox:e.boundingBox,requiresChild:e.requiresChild,availableWidthPx:t},t,s)}function w0(e,t,s){let r=[];for(let o of e.children){if(o.visible===!1||o.absolute)continue;let n=rW(o,t,s);n&&r.push({id:o.id,size:n,view:o})}return r}function oW(e,t,s){if(!e.decl?.computeBounds)return{x:0,y:0};let r=e.decl.computeBounds(e.props,t,s),o=typeof e.props.center?.x==\"number\"?e.props.center.x:.5,n=typeof e.props.center?.y==\"number\"?e.props.center.y:.5;return{x:r.centerXPx-o*t,y:r.centerYPx-n*s}}function nW(e,t,s,r,o,n,i,d){let l=b0(e.layout,o,n);if(l){IE(e,l,o,n,i,{centerXPx:s,centerYPx:r},d);return}let c=e.decl?.propBindings?.x?.prop??e.decl?.propBindings?.y?.prop;if(c){if(!e.positionDriven){let _=oW(e,o,n);i.push({kind:\"position\",id:e.id,prop:c,value:{x:(s-_.x)/o,y:(r-_.y)/n}})}return}i.push({kind:\"box\",id:e.id,xPx:s-t.widthPx/2,yPx:r-t.heightPx/2,widthPx:t.widthPx,heightPx:t.heightPx})}function IE(e,t,s,r,o,n,i,d){let l=d??w0(e,s,r);if(l.length===0)return;let c=t;if(n){let p=r1(t,l);c={...t,anchor:\"top-left\",anchorOffsetX:n.centerXPx-p.widthPx/2,anchorOffsetY:n.centerYPx-p.heightPx/2}}if(i){let p=r1(c,l),{ox:f,oy:h}=BE(c.anchor);i.set(e.id,{leftPx:s1(f,p.widthPx,s,c.anchorOffsetX),topPx:s1(h,p.heightPx,r,c.anchorOffsetY),widthPx:p.widthPx,heightPx:p.heightPx})}let _=sW(c,l,s,r);for(let p of l){let f=_.get(p.id);f&&nW(p.view,p.size,f.centerXPx,f.centerYPx,s,r,o,i)}}function aW(e,t,s,r){let o=[],n=i=>{let d=b0(i.layout,t,s);if(d){let l=w0(i,t,s);IE(i,d,t,s,o,void 0,r,l);let c=new Set(l.map(_=>_.id));for(let _ of i.children)_.visible!==!1&&(c.has(_.id)||n(_));return}for(let l of i.children)l.visible!==!1&&n(l)};for(let i of e)i.visible!==!1&&n(i);return o}var iW=class{frameTimesMs=[];frameTimesIndex=0;frameTimesCount=0;maxSamples=60;targetFrameTime=16.67;jankFrameCount=0;totalFrameCount=0;memorySnapshots=[];memorySnapshotIndex=0;maxMemorySnapshots=300;nodeCount=0;rttNodeCount=0;lastCpuTime=null;lastGpuTime=null;isRendering=!1;lastFrameTimestamp=0;frameIntervals=[];frameIntervalsIndex=0;frameIntervalsCount=0;pushToCircularBuffer(e,t,s,r,o){return e.length<o?(e.push(t),{index:e.length,count:e.length}):(e[s%o]=t,{index:s+1,count:o})}getBufferValues(e,t){return t<=e.length?e.slice(0,t):e}recordFrame(e){let t=this.pushToCircularBuffer(this.frameTimesMs,e,this.frameTimesIndex,this.frameTimesCount,this.maxSamples);this.frameTimesIndex=t.index,this.frameTimesCount=t.count,this.totalFrameCount++,e>this.targetFrameTime&&this.jankFrameCount++;let s=performance.now();if(this.lastFrameTimestamp>0){let r=s-this.lastFrameTimestamp,o=this.pushToCircularBuffer(this.frameIntervals,r,this.frameIntervalsIndex,this.frameIntervalsCount,this.maxSamples);this.frameIntervalsIndex=o.index,this.frameIntervalsCount=o.count}this.lastFrameTimestamp=s,this.recordMemorySnapshot()}recordCpuTime(e){this.lastCpuTime=e}recordGpuTime(e){this.lastGpuTime=e}updateNodeCounts(e,t){this.nodeCount=e,this.rttNodeCount=t}setRendering(e){this.isRendering=e}recordMemorySnapshot(){if(!performance.memory)return;let e=performance.now(),t=performance.memory.usedJSHeapSize;if(this.memorySnapshots.length<this.maxMemorySnapshots)this.memorySnapshots.push({time:e,bytes:t});else{let s=this.memorySnapshots[this.memorySnapshotIndex];s.time=e,s.bytes=t,this.memorySnapshotIndex=(this.memorySnapshotIndex+1)%this.maxMemorySnapshots}}calculateMemoryGrowthRate(){if(this.memorySnapshots.length<2)return null;let e=this.memorySnapshots.length,t=e<this.maxMemorySnapshots?0:this.memorySnapshotIndex,s=e<this.maxMemorySnapshots?e-1:(this.memorySnapshotIndex-1+e)%e,r=this.memorySnapshots[t],o=this.memorySnapshots[s],n=(o.time-r.time)/1e3;return n<=0?null:(o.bytes-r.bytes)/(1024*1024)/n}calculateStdDev(e){if(e.length===0)return 0;let t=e.reduce((r,o)=>r+o,0)/e.length,s=0;for(let r=0;r<e.length;r++){let o=e[r]-t;s+=o*o}return Math.sqrt(s/e.length)}sortBuffer=[];calculateP99(e){let t=e.length;if(t===0)return 0;for(;this.sortBuffer.length<t;)this.sortBuffer.push(0);for(let r=0;r<t;r++)this.sortBuffer[r]=e[r];for(let r=1;r<t;r++){let o=this.sortBuffer[r],n=r-1;for(;n>=0&&this.sortBuffer[n]>o;)this.sortBuffer[n+1]=this.sortBuffer[n],n--;this.sortBuffer[n+1]=o}let s=Math.floor(t*.99);return this.sortBuffer[Math.min(s,t-1)]}calculateComplexityScore(){return this.nodeCount+this.rttNodeCount*10}calculateIntensityScore(){let e=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),t=e.length;if(t===0)return{score:0,label:\"N/A\"};let s=e.reduce((_,p)=>_+p,0)/t,r=Math.min(s/16.67*100,100),o=this.calculateComplexityScore(),n=Math.min(o/100*100,100),i=0;this.lastGpuTime!==null&&(i=Math.min(this.lastGpuTime/16.67*100,100));let d=this.lastGpuTime!==null?{frame:.4,gpu:.4,complexity:.2}:{frame:.7,gpu:0,complexity:.3},l=Math.round(r*d.frame+i*d.gpu+n*d.complexity),c;return l<=20?c=\"Very Light\":l<=40?c=\"Light\":l<=60?c=\"Medium\":l<=80?c=\"Heavy\":c=\"Very Heavy\",{score:Math.min(l,100),label:c}}getStats(e){let t=this.getBufferValues(this.frameTimesMs,this.frameTimesCount),s=this.getBufferValues(this.frameIntervals,this.frameIntervalsCount),r=t.length,o=s.length>0?1e3/(s.reduce((E,M)=>E+M,0)/s.length):0,n=r>0?t.reduce((E,M)=>E+M,0)/r:0,i=r>0?Math.min(...t):0,d=r>0?Math.max(...t):0,l=this.calculateP99(t),c=this.calculateStdDev(t),_=this.totalFrameCount>0?this.jankFrameCount/this.totalFrameCount*100:0,p=performance.memory,f=p?p.usedJSHeapSize/(1024*1024):null,h=this.calculateMemoryGrowthRate(),g=n>0?n/this.targetFrameTime*100:0,x=e?.render?.calls??null,T=e?.programs?.length??null,S=e?.memory?.textures??null,A=this.calculateIntensityScore();return{fps:Math.round(o),avgFrameTime:Math.round(n*100)/100,minFrameTime:Math.round(i*100)/100,maxFrameTime:Math.round(d*100)/100,p99FrameTime:Math.round(l*100)/100,stdDevFrameTime:Math.round(c*100)/100,jankCount:this.jankFrameCount,jankPercent:Math.round(_*10)/10,nodeCount:this.nodeCount,rttNodeCount:this.rttNodeCount,complexityScore:this.calculateComplexityScore(),memoryUsedMB:f!==null?Math.round(f*100)/100:null,memoryGrowthRate:h!==null?Math.round(h*1e3)/1e3:null,cpuTime:this.lastCpuTime!==null?Math.round(this.lastCpuTime*100)/100:null,gpuTime:this.lastGpuTime!==null?Math.round(this.lastGpuTime*100)/100:null,budgetUsed:Math.round(g*10)/10,drawCalls:x,shaderPrograms:T,textureCount:S,intensityScore:A.score,intensityLabel:A.label,isRendering:this.isRendering}}reset(){this.frameTimesMs.length=0,this.frameTimesIndex=0,this.frameTimesCount=0,this.frameIntervals.length=0,this.frameIntervalsIndex=0,this.frameIntervalsCount=0,this.lastFrameTimestamp=0,this.jankFrameCount=0,this.totalFrameCount=0,this.memorySnapshots.length=0,this.memorySnapshotIndex=0,this.sortBuffer.length=0,this.lastCpuTime=null,this.lastGpuTime=null}},dW=32,lW=5,cW=(()=>{let e=0,t=new Set,s=(c,_)=>{t.forEach(p=>{try{p[c](_)}catch(f){yr(\"[Shaders] Error in pointer handler:\",f)}})},r=c=>s(\"onMouseMove\",c),o=c=>s(\"onTouchMove\",c),n=c=>s(\"onMouseDown\",c),i=c=>s(\"onTouchStart\",c),d=()=>s(\"onMouseUp\"),l=()=>s(\"onTouchEnd\");return{register(c){return t.add(c),e++,e===1&&typeof window<\"u\"&&(window.addEventListener(\"mousemove\",r),window.addEventListener(\"touchmove\",o),window.addEventListener(\"mousedown\",n,!0),window.addEventListener(\"touchstart\",i,!0),window.addEventListener(\"mouseup\",d,!0),window.addEventListener(\"touchend\",l,!0)),()=>{t.delete(c),e--,e===0&&typeof window<\"u\"&&(window.removeEventListener(\"mousemove\",r),window.removeEventListener(\"touchmove\",o),window.removeEventListener(\"mousedown\",n,!0),window.removeEventListener(\"touchstart\",i,!0),window.removeEventListener(\"mouseup\",d,!0),window.removeEventListener(\"touchend\",l,!0))}}}})();function uW(e){if(!e)return!1;let t=e;if(typeof e==\"string\")try{t=JSON.parse(e)}catch{return!1}if(!t||typeof t!=\"object\")return!1;for(let s in t){let r=t[s];if(r&&typeof r==\"object\"&&r.type===\"mouse\")return!0}return!1}function YE(){let e=null,t=null,s=null,r=null,o=null,n=null,i=!1,d=!1,l=!1,c=null,_=new Map,p=null,f=new Map,h=[],g=[],x=HY({maxSize:4,dispose:k=>R0(k)}),T=new Set,S=null,A=null,E=!0,M=0,$=0,L=0,B=0,D=1,G=8192,I=0,X=0,H=!1,ee=()=>L||M||1,Q=()=>B||$||1,de=!0,Ee=!1,he=!1,Me=0,Te=0,Pe=0,Ce=null,ie=null,Ne=-10,ye=-10,Ve=!1,qe=!1,st=null,We=!1,Be=null,rt=null,tt=null,Ke=null,Oe=null,gt=null,pt=!1,Ut=\"p3-linear\",Lt=\"linear\",Wt=!1,vs=null,jt=null,Qt=!1,$s=!1,Is=null,Ys=!1,hs=null,rr=null,or=!1,Cr=null,Zr=null,Rr=0,ur=0,Qr=new iW,nr={deltaTime:0,pointer:{x:-10,y:-10,seen:!1},pointerActive:!1,dimensions:{width:0,height:0}},ho=WT(()=>Tl()),Cn=k=>k.replace(/[^a-zA-Z0-9_]/g,\"_\"),Go=k=>{let R=f.get(k);if(!R)return[];let U=[];for(let j of R){let V=_.get(j);V&&U.push(V)}return U},ed=k=>{let R=Cn(k);for(let[U,j]of _)if(j.metadata.id===R)return U;return null},ui=(k,R)=>{if(R===\"center\")return;let U=k.boundingBoxDeclaration;if(!U)return;let j={};for(let[V,ne]of Object.entries(k.uniforms))j[V]=ne._rawDimensional!==void 0?ne._rawDimensional:ne.value;return sd(k,j.shapeSdfUrl),Hy(U,j,ee(),Q())},td=new WeakMap,sd=(k,R)=>{if(typeof R!=\"string\"||!R||LT(R))return;let U=td.get(k)??new Set;td.set(k,U),!U.has(R)&&(U.add(R),Rm(R,()=>{U.delete(R),_.get(k.id)===k&&(N(k),ds()&&us(),Qo())}))},N=k=>{let R=k.boundingBoxDeclaration,U=k.extraDimProps,j=ll(R,U);if(!j)return;let V=k.uniforms.origin?.value??\"center\",ne=ui(k,V),ge=[...j.positionProps,...j.sizeProps.keys()];for(let ze of ge){let Ie=k.uniforms[ze];if(!Ie||Ie._rawDimensional===void 0)continue;let ut=Kc(R,ze,Ie._rawDimensional,V,ee(),Q(),U,ne);Ie.value=ut,pi(k,ze,ut)}},xe=(k,R,U)=>{if(typeof U==\"number\")return U;let j=k.uniforms.origin?.value??\"center\",V=Kc(k.boundingBoxDeclaration,R,U,j,ee(),Q(),k.extraDimProps);return typeof V==\"number\"?V:U?.value??0},pe=()=>{let{width:k,height:R}=mi();return k/Math.max(1,R)},_e=k=>{let R=k.metadata.transform;return{offsetX:R?.offsetX??0,offsetY:R?.offsetY??0,rotation:R?.rotation??0,scale:R?.scale??1,anchorX:R?.anchorX??.5,anchorY:R?.anchorY??.5,aspectRatio:pe()}},me=k=>{let R=k.metadata.boundingBox;if(!R)return null;let U=gy(R,ee(),Q());return{centerX:U.centerX,centerY:U.centerY,halfWidth:U.halfWidthUV,halfHeight:U.halfHeightUV,cornerRadius:U.cornerRadiusUV,rotation:U.rotation,aspectRatio:pe()}},Ue=k=>!!k.metadata.boundingBox&&!!k.boundingBoxDeclaration&&!km(k.metadata.boundingBox),je=k=>{let R=k.boundingBoxDeclaration;if(!R||!k.uniforms||!R.computeBounds&&!R.propBindings)return null;let U={};for(let[Ie,ut]of Object.entries(k.uniforms))U[Ie]=ut._rawDimensional!==void 0?ut._rawDimensional:ut.value;let j=Hy(R,U,ee(),Q());if(j.hwx<=0&&j.hhy<=0)return null;let V=.5,ne=.5,ge=R.propBindings?.x?.prop??R.propBindings?.y?.prop,ze=ge?k.uniforms[ge]?.value:void 0;if(ze&&typeof ze.x==\"number\"&&typeof ze.y==\"number\"&&(V=ze.x,ne=ze.y),ge){let Ie=k.metadata.maps?.[ge];if(Ie?.type===\"mouse-position\"){let ut=k.mouseDriverState[ge];ut&&(V=ut.liveX??(typeof Ie.x==\"number\"?Ie.x:ut.currentX),ne=ut.liveY??(typeof Ie.y==\"number\"?Ie.y:ut.currentY))}}return{centerX:V,centerY:ne,halfWidth:j.hwx,halfHeight:j.hhy}},yt=k=>{if(!k.definition.wantsBoundsParams)return null;let R=Go(k.id).sort((U,j)=>U.metadata.renderOrder-j.metadata.renderOrder);for(let U of R){if(U.metadata.visible===!1)continue;if(Ue(U))return null;let j=je(U);if(j)return j}return null},wt=()=>{for(let k of _.values()){if(!k.definition.wantsBoundsParams)continue;let R=yt(k);R&&(Ps(k,\"_childBounds_centerX\",R.centerX),Ps(k,\"_childBounds_centerY\",R.centerY),Ps(k,\"_childBounds_halfWidth\",R.halfWidth),Ps(k,\"_childBounds_halfHeight\",R.halfHeight))}},mt=!1,us=()=>{mt=!0,Qo()},ds=()=>{for(let k of _.values()){let R=k.metadata.flow?.mode;if(R===\"column\"||R===\"row\")return!0}return!1},hr=k=>{let R={};for(let[ne,ge]of Object.entries(k.uniforms))R[ne]=ge._rawDimensional!==void 0?ge._rawDimensional:ge.value;let U=k.boundingBoxDeclaration?.propBindings?.x?.prop??k.boundingBoxDeclaration?.propBindings?.y?.prop,j=U?k.uniforms[U]?.value:void 0,V=!!(U&&(j?.type===\"mouse-position\"||k.metadata.maps?.[U]));return{id:k.id,componentName:k.componentName,visible:k.metadata.visible!==!1,absolute:k.metadata.absolute===!0,requiresChild:k.requiresChild,layout:k.metadata.flow,decl:k.boundingBoxDeclaration,props:R,boundingBox:k.metadata.boundingBox,positionDriven:V,children:Go(k.id).sort((ne,ge)=>ne.metadata.renderOrder-ge.metadata.renderOrder).map(hr)}},Zo=()=>{if(!ds()){mt=!1;return}let k=ee(),R=Q();if(k<=1||R<=1)return;mt=!1;let U=[];for(let V of _.values())V.parentId===null&&U.push(hr(V));let j=aW(U,k,R);for(let V of j){let ne=_.get(V.id);if(ne)if(V.kind===\"position\"){let ge=ne.uniforms[V.prop];if(!ge)continue;let ze=ge.value,Ie=ze&&typeof ze==\"object\"?{...ze,x:V.value.x,y:V.value.y}:V.value;ge.value=Ie,pi(ne,V.prop,Ie)}else{let ge=Ue(ne);if(ne.metadata.boundingBox={x:{value:V.xPx,unit:\"px\"},y:{value:V.yPx,unit:\"px\"},width:{value:V.widthPx,unit:\"px\"},height:{value:V.heightPx,unit:\"px\"},origin:\"top-left\",rotation:ne.metadata.boundingBox?.rotation??0,...ne.metadata.boundingBox?.cornerRadius?{cornerRadius:ne.metadata.boundingBox.cornerRadius}:{},...ne.metadata.boundingBox?.lockAspect!==void 0?{lockAspect:ne.metadata.boundingBox.lockAspect}:{}},!ge&&Ue(ne))Aa();else{let ze=me(ne);if(ze)for(let[Ie,ut]of Object.entries(ze))Ps(ne,`_bbox_${Ie}`,ut)}}}},oo=()=>{mt&&Zo()},ys=null,Rn=()=>{ds()&&us()},yo=()=>{ys||(ys=ST(()=>{ds()&&us()})),typeof document<\"u\"&&document.fonts?.addEventListener&&document.fonts.addEventListener(\"loadingdone\",Rn)};yo();let mn=k=>da(k.metadata.transform),_i=(k,R,U)=>{let j=k.mapValues[R]??{inputMin:0,inputMax:1,outputMin:0,outputMax:1,curve:0};if(U.type===\"map\"){let V=U;j.inputMin=V.inputMin,j.inputMax=V.inputMax,j.outputMin=xe(k,R,V.outputMin),j.outputMax=xe(k,R,V.outputMax),j.curve=V.curve??0}else if(U.type===\"mouse\"){let V=U;j.outputMin=xe(k,R,V.outputMin),j.outputMax=xe(k,R,V.outputMax),j.curve=V.curve??0}else if(U.type===\"auto-animate\"){let V=U;j.outputMin=xe(k,R,V.outputMin),j.outputMax=xe(k,R,V.outputMax)}return k.mapValues[R]=j,j},n1=(k,R,U)=>{let j=k.mouseDriverState[R];if(j)return j;if(U.type===\"mouse-position\"){let V=U.x===void 0||U.x===\"mouse\",ne=U.y===void 0||U.y===\"mouse\";j={currentX:V?Ne:U.x,currentY:ne?ye:U.y,velocityX:0,velocityY:0,pointerSnapped:qe}}else j={currentX:Math.max(.001,U.axis===\"x\"?Ne:ye),currentY:0,velocityX:0,velocityY:0,pointerSnapped:qe};return k.mouseDriverState[R]=j,j},a1=k=>{let R=k.metadata.maps;if(R)for(let[U,j]of Object.entries(R))U in k.uniforms&&(j.type===\"map\"?_i(k,U,j):j.type===\"mouse-position\"?n1(k,U,j):j.type===\"mouse\"?(n1(k,U,j),_i(k,U,j)):j.type===\"auto-animate\"&&(k.autoAnimateState[U]||(k.autoAnimateState[U]={}),_i(k,U,j)))},Lu=k=>{let R=k.definition.animatedTime;return(R?k.uniforms[R.speed]:void 0)??k},i1=(k,R)=>k.uniforms[R]??k,A0=k=>{let R=[];for(let[V,ne]of Object.entries(k.uniforms))R.push({name:V,initial:ne.value,transform:ne.transform,cpu:ne.cpu,schema:ne.schema});if(R.push({name:\"_opacity\",schema:a,initial:k.metadata.opacity??1}),k.definition.animatedTime&&R.push({name:\"_animTime\",schema:a,initial:Qi(Lu(k)).value}),k.definition.extraAnimatedTimes)for(let[V,ne]of Object.entries(k.definition.extraAnimatedTimes))R.push({name:`_animTime_${V}`,schema:a,initial:Qi(i1(k,ne)).value});let U=k.definition.extraFields;if(U)for(let[V,ne]of Object.entries(U))R.push({name:V,schema:ne.schema,initial:ne.initial});if(mn(k)){let V=_e(k);for(let[ne,ge]of Object.entries(V))R.push({name:`_xform_${ne}`,schema:a,initial:ge})}if(Ue(k)){let V=me(k);if(V)for(let[ne,ge]of Object.entries(V))R.push({name:`_bbox_${ne}`,schema:a,initial:ge})}if(k.definition.wantsBoundsParams){let V=yt(k)??{centerX:.5,centerY:.5,halfWidth:.5,halfHeight:.5};for(let[ne,ge]of Object.entries(V))R.push({name:`_childBounds_${ne}`,schema:a,initial:ge})}let j=k.metadata.maps;if(j){a1(k);for(let[V,ne]of Object.entries(j))if(V in k.uniforms){if(ne.type===\"map\"){let ge=k.mapValues[V];R.push({name:`_map_${V}_inputMin`,schema:a,initial:ge.inputMin}),R.push({name:`_map_${V}_inputMax`,schema:a,initial:ge.inputMax}),R.push({name:`_map_${V}_outputMin`,schema:a,initial:ge.outputMin}),R.push({name:`_map_${V}_outputMax`,schema:a,initial:ge.outputMax}),R.push({name:`_map_${V}_curve`,schema:a,initial:ge.curve})}else if(ne.type===\"mouse-position\"){let ge=k.mouseDriverState[V];R.push({name:`_smoothed_${V}`,schema:u,initial:[ge.currentX,1-ge.currentY]})}else if(ne.type===\"mouse\"){let ge=k.mapValues[V];R.push({name:`_smoothed_${V}`,schema:a,initial:ge.outputMin})}else if(ne.type===\"auto-animate\"){let ge=k.mapValues[V];R.push({name:`_smoothed_${V}`,schema:a,initial:ge.outputMin})}}}return R},pi=(k,R,U)=>{let j=k._liveHandles?.[R];j&&(vs?.(Ut),H7(j,U))},Ps=(k,R,U)=>{let j=k._liveHandles?.[R];j instanceof An&&(j.value=U)},E0=(k,R,U)=>{let j=k._liveHandles?.[R];j instanceof An?j.value=U:j instanceof bc&&Array.isArray(U)&&(j.array=U)},VE=k=>{for(let R of Object.values(k.uniforms))if(R.transform===ft){let U=R.value;if(typeof U==\"string\")return ft(U);if(typeof U==\"number\")return U}return 0},NE=k=>{if(!k.uniforms.convertedColorsArray)return;let R=null;for(let ne of Object.values(k.uniforms))if(ne.transform===ha){R=ne.value??null;break}let U=Ay(R,Hc),j=Ey(U.colors,U.stopCount,VE(k)),V=(ne,ge)=>{let ze=k.uniforms[ne];ze&&(ze.value=ge),pi(k,ne,ge)};V(\"colorsArray\",U.colors),V(\"positionsArray\",U.positions),V(\"convertedColorsArray\",j),V(\"stopCount\",U.stopCount)},P0=(k,R)=>{let U=k.uniforms[R],j=U?._listSpec;if(!U||!j)return;let V=U._rawList,ne=new Set,ge=Oy(V,j,{color:Hc,drivenPosition:(ut,ls,Cs)=>{let bs=fS(R,ut,ls);ne.add(bs);let St=n1(k,bs,Cs);return St.liveX!==void 0&&St.liveY!==void 0?{x:St.liveX,y:1-St.liveY}:void 0}});for(let ut of Object.keys(k.mouseDriverState)){let ls=Wy(ut);ls&&ls.prop===R&&!ne.has(ut)&&delete k.mouseDriverState[ut]}U.value=ge,pi(k,R,ge);let ze=Vy(ge,j),Ie=(ut,ls)=>{let Cs=k.uniforms[ut];Cs&&(Cs.value=ls),pi(k,ut,ls)};for(let[ut,ls]of Object.entries(ze.fields))Ie(Iy(R,ut),ls);Ie(Yy(R),ze.count)},qE=(k,R)=>{let U=k.metadata.maps?.[R];if(U)return U;let j=Wy(R);if(!j)return;let V=k.uniforms[j.prop]?._rawList,ne=(Array.isArray(V)?V[j.index]:void 0)?.[j.field];return Lm(ne)?ne:void 0},XE=k=>Object.values(k.uniforms).some(R=>R._listSpec&&Ny(R._rawList,R._listSpec)),HE=k=>{if(Ps(k,\"_opacity\",k.metadata.opacity??1),k.definition.animatedTime&&Ps(k,\"_animTime\",Qi(Lu(k)).value),k.definition.extraAnimatedTimes)for(let[U,j]of Object.entries(k.definition.extraAnimatedTimes))Ps(k,`_animTime_${U}`,Qi(i1(k,j)).value);if(mn(k))for(let[U,j]of Object.entries(_e(k)))Ps(k,`_xform_${U}`,j);if(Ue(k)){let U=me(k);if(U)for(let[j,V]of Object.entries(U))Ps(k,`_bbox_${j}`,V)}let R=k.metadata.maps;if(R){for(let[U,j]of Object.entries(R))if(j.type===\"map\"&&k.mapValues[U]){let V=k.mapValues[U];Ps(k,`_map_${U}_inputMin`,V.inputMin),Ps(k,`_map_${U}_inputMax`,V.inputMax),Ps(k,`_map_${U}_outputMin`,V.outputMin),Ps(k,`_map_${U}_outputMax`,V.outputMax),Ps(k,`_map_${U}_curve`,V.curve)}}},jE=(k,R)=>{let U={};for(let j of Object.keys(k.uniforms)){let V=R[j];V&&(U[j]=V)}return U},KE=k=>{let R={};for(let[U,j]of Object.entries(k.uniforms))R[U]={accessorPath:\"\",cpu:!!j.cpu,value:j.value};return R},ZE=(k,R)=>({id:k.id,customId:k.metadata.id,componentName:k.componentName,parentId:k.parentId,definition:k.definition,metadata:k.metadata,handles:R,domCanvas:k.domCanvas}),M0=(k,R)=>{let U=new Map,j=ne=>ZE(ne,k&&R?jE(ne,R.get(ne.id)??{}):KE(ne)),V=ne=>{let ge=U.get(ne);if(ge)return ge;let ze=_.get(ne);if(!ze)return;let Ie=j(ze);return U.set(ne,Ie),Ie};return{rootId:p,getNode:V,getChildren:ne=>Go(ne).map(ge=>V(ge.id)),resolveCustomId:ne=>ed(ne),store:{gpuAccessor:(ne,ge)=>k?k.gpuAccessor(ne,ge):\"\",layout:k?.layout}}},k0=()=>({toneMapping:Lt,flipY:!1,premultiplyAlpha:!0,canvas:n??void 0,dimensions:mi(),gpu:t?{device:t.device,root:t}:void 0,writeExtraField:(k,R,U)=>{let j=_.get(k);j&&E0(j,R,U)},createMediaTexture:k=>{if(!r)throw new Error(\"[gpu] createMediaTexture before init\");return r.createMediaTexture(k)},createDataTexture:k=>{if(!r)throw new Error(\"[gpu] createDataTexture before init\");return r.createDataTexture(k)},resolveMapWindow:(k,R)=>{let U=_.get(k),j=U?.metadata.maps?.[R];if(!U||!j||j.type!==\"map\")return;let V=_i(U,R,j);return{inputMin:V.inputMin,inputMax:V.inputMax,outputMin:V.outputMin,outputMax:V.outputMax,curve:V.curve}},resolveDriverCpuValue:(k,R)=>{let U=_.get(k);if(!U)return;if(R===\"_animTime\"||R.startsWith(\"_animTime_\")){let V=U._liveHandles?.[R];return V instanceof An?V.value:void 0}let j=U.metadata.maps?.[R];if(j){if(j.type===\"mouse-position\"){let V=U.mouseDriverState[R];return!V||V.liveX===void 0||V.liveY===void 0?void 0:{x:V.liveX,y:1-V.liveY}}if(j.type===\"mouse\"||j.type===\"auto-animate\"){let V=U._liveHandles?.[`_smoothed_${R}`];return V instanceof An?V.value:void 0}}}}),QE=()=>{let k=[];for(let[R,U]of _){let j=U.metadata;k.push(`aopac:${R}:${(j.opacity??1)<1}`);let V=U.uniforms.stopCount?.value;typeof V==\"number\"&&k.push(`stops:${R}:${V>1?V:0}`);for(let[ne,ge]of Object.entries(U.uniforms)){if(!ge.compileTimeWhen)continue;let ze=ge._lastCompiledValue;typeof ze!=\"number\"&&typeof ze!=\"boolean\"||k.push(`ctw:${R}:${ne}:${String(ze)}`)}if(j.maps){let ne=Object.entries(j.maps).sort(([ge],[ze])=>ge<ze?-1:ge>ze?1:0).map(([ge,ze])=>{let Ie=ze;return`${ge}=${Ie.type}:${Ie.source??\"\"}:${Ie.channel??\"\"}:${Ie.axis??\"\"}`}).join(\",\");k.push(`mapfp:${R}:${ne}`)}}return k},$0=()=>p?XY([...aT(M0(null,null),k0()),...QE()]):null,mi=()=>({width:Math.max(1,Math.round(M*D)),height:Math.max(1,Math.round($*D))}),JE=k=>{let R={};for(let U of k.textures)U.kind!==\"rtt\"&&U.resource&&(R[U.key]=U.resource);return R},eP=k=>{if(!t||!r||!o)throw new Error(\"[gpu] buildComposition before init\");let R=X7(t,{systemSchema:qY}),U=new Map;for(let[ze,Ie]of _)U.set(ze,R.defineNode(ze,A0(Ie)));R.defineSystem(),R.finalize();let j=nT(M0(R,U),k0()),V=jY(t,{textureManager:r,dispatcher:o}),ne={hash:k,store:R,ir:j,passManager:V,handlesById:U,fresh:!0,validationFrames:3},ge=j.usesCustomWgsl?t.device:void 0;ge&&ge.pushErrorScope(\"validation\");try{V.setComposition(j,R.bindGroup,mi(),JE(j))}finally{ge&&ge.popErrorScope().then(ze=>{ze&&!ne.broken&&C0(ne,ze.message)}).catch(()=>{})}return T.add(ne),ne},C0=(k,R)=>{k.broken=R,Vu(\"[gpu] a shader in this composition failed GPU validation \\u2014 it will not draw until it changes. If you are writing a wgsl`\\u2026` body, the message below points at the line:\\n\"+R)},R0=k=>{try{for(let R of k.ir.onCleanup)R()}catch(R){yr(\"[gpu] composition onCleanup error:\",R)}try{k.passManager.dispose()}catch(R){yr(\"[gpu] passManager dispose error:\",R)}try{k.store.destroy()}catch(R){yr(\"[gpu] store destroy error:\",R)}T.delete(k),S===k&&(S=null)},tP=k=>{let R=!1;for(let[U,j]of k.handlesById){let V=_.get(U);V&&V._liveHandles!==j&&(V._liveHandles=j,R=!0)}if(!(k===S&&!R)){if(!k.fresh){for(let U of _.values()){for(let[j,V]of Object.entries(U.uniforms))pi(U,j,V.value);a1(U),HE(U)}k.store.writeAll()}k.fresh=!1,S=k,!Qt&&k.ir.composedNodeIds.size>0&&($s=!0)}},Aa=()=>{E=!0,ds()&&(mt=!0),Qo()},Qo=()=>{hs||ho.running||ie===null&&typeof requestAnimationFrame==\"function\"&&(ie=requestAnimationFrame(()=>{ie=null,Tl()}))},U0=(k,R,U,j,V={},ne,ge)=>{if(hs)return;if(R===null){let St=h.findIndex(Ur=>Ur.id===k);if(St!==-1){h.splice(St,1),g=g.filter(Ur=>Ur.id!==k);return}d1(k);return}if(!ne){console.error(`[gpu] registerNode(\"${k}\") requires a componentDefinition`);return}if(!l){let St=h.findIndex(fn=>fn.id===k),Ur={id:k,definition:ne,parentId:U,metadata:j,uniforms:V,domCanvas:ge};St!==-1?(h[St]=Ur,g=g.filter(fn=>fn.id!==k)):h.push(Ur);return}let ze=0;if(U!==null){let St=f.get(U);if(St&&St.size>0){let Ur=0;for(let fn of St){let go=_.get(fn);go&&go.metadata.renderOrder>Ur&&(Ur=go.metadata.renderOrder)}ze=Ur+1}}let Ie={blendMode:j?.blendMode||\"normal\",opacity:j?.opacity,visible:j?.visible!==!1,id:j?.id?Cn(j.id):j?.id,mask:j?.mask,maps:j?.maps,renderOrder:j?.renderOrder!==void 0?j.renderOrder:ze,transform:j?.transform,boundingBox:j?.boundingBox,flow:j?.flow,absolute:j?.absolute},ut=ne.boundingBoxDeclaration,ls=ne.props?Xy(ne.props):void 0,Cs={id:k,componentName:ne.name||\"Unknown\",parentId:U,definition:ne,metadata:Ie,uniforms:V,domCanvas:ge,requiresRTT:!!ne.requiresRTT,requiresChild:!!ne.requiresChild,blendWithChildren:!!ne.blendWithChildren,acceptsUVContext:!!ne.acceptsUVContext,providesUVContextViaCompute:!!ne.providesUVContextViaCompute,usesPointer:!!ne.usesPointer,hasUvRemap:!!ne.uvRemap,boundingBoxDeclaration:ut,wantsBoundsParams:!!ne.wantsBoundsParams,extraDimProps:ls,mouseDriverState:{},autoAnimateState:{},mapValues:{},_liveHandles:null};if(ut||ls){let St=ll(ut,ls);if(St){let Ur=V.origin?.value??\"center\",fn=ui(Cs,Ur);for(let go of[...St.positionProps,...St.sizeProps.keys()]){let no=V[go];no&&(no._rawDimensional===void 0&&(no._rawDimensional=no.value),no.value=Kc(ut,go,no._rawDimensional,Ur,ee(),Q(),ls,fn))}}}for(let St of Object.values(V))St.compileTimeWhen&&St._lastCompiledValue===void 0&&(St._lastCompiledValue=St.value);_.set(k,Cs),U===null&&(p=k);let bs=f.get(U)||new Set;bs.add(k),f.set(U,bs),Sl(),Aa(),ds()&&us()},z0=k=>{h.some(R=>R.id===k.id)&&g.push(k)},G0=(k,R,U)=>{let j=_.get(k);if(!j){z0({id:k,kind:\"uniform\",name:R,value:U});return}let V=j.uniforms[R];if(!V)return;let ne=j.boundingBoxDeclaration,ge=j.extraDimProps;if((ne||ge)&&jy(ne,R,ge)){V._rawDimensional=U;let ze=j.uniforms.origin?.value??\"center\",Ie=ui(j,ze);U=Kc(ne,R,U,ze,ee(),Q(),ge,Ie)}if(V.transform===Wi){V._rawList=U,P0(j,R),Sl(),Qo();return}if(V.value=U,pi(j,R,U),(V.transform===ha||V.transform===ft)&&NE(j),R===\"origin\"&&ne)N(j);else if(ne&&(j.uniforms.origin?.value??\"center\")!==\"center\"){let ze=ll(ne,ge),Ie=!!ne.computeBounds||(ze?.sizeProps.has(R)??!1),ut=ze?.positionProps.has(R)??!1;Ie&&!ut&&N(j)}if(R===\"shape\"&&Sl(),ds()&&us(),V.compileTime){Aa();return}if(V.compileTimeWhen){let ze=V._lastCompiledValue;if(V.compileTimeWhen(ze,U)){V._lastCompiledValue=U,Aa();return}}Qo()},D0=(k,R)=>{let U=_.get(k);if(!U){z0({id:k,kind:\"metadata\",metadata:R});return}let j=!1;if(R.blendMode!==void 0&&U.metadata.blendMode!==R.blendMode&&(U.metadata.blendMode=R.blendMode,j=!0),R.opacity!==void 0&&U.metadata.opacity!==R.opacity){let V=U.metadata.opacity??1,ne=R.opacity;U.metadata.opacity=ne,Ps(U,\"_opacity\",ne),V>=1!=ne>=1&&(j=!0)}if(R.renderOrder!==void 0&&U.metadata.renderOrder!==R.renderOrder&&(U.metadata.renderOrder=R.renderOrder,j=!0),\"visible\"in R){let V=R.visible!==!1;U.metadata.visible!==V&&(U.metadata.visible=V,j=!0)}if(R.id!==void 0){let V=Cn(R.id);U.metadata.id!==V&&(U.metadata.id=V,j=!0)}if(\"mask\"in R&&(U.metadata.mask?.source!==R.mask?.source||U.metadata.mask?.type!==R.mask?.type)&&(U.metadata.mask=R.mask,j=!0),\"maps\"in R&&JSON.stringify(U.metadata.maps)!==JSON.stringify(R.maps)){let V=U.metadata.maps,ne=R.maps;if(U.metadata.maps=ne,Sl(),(()=>{if(!V||!ne)return!0;let ge=Object.keys(V),ze=Object.keys(ne);if(ge.length!==ze.length||!ge.every(Ie=>Ie in ne))return!0;for(let Ie of ze){let ut=V[Ie],ls=ne[Ie];if(ut.type!==ls.type)return!0;if(ls.type===\"map\"){let Cs=ut,bs=ls;if(Cs.source!==bs.source||Cs.channel!==bs.channel)return!0}else if(ls.type===\"mouse\"&&ut.axis!==ls.axis)return!0}return!1})()){if(V&&ne)for(let ge of Object.keys(V))ge in ne&&V[ge].type!==ne[ge].type&&(delete U.mouseDriverState[ge],delete U.autoAnimateState[ge],delete U.mapValues[ge]);j=!0}else if(ne)for(let[ge,ze]of Object.entries(ne)){let Ie=_i(U,ge,ze);ze.type===\"map\"&&(Ps(U,`_map_${ge}_inputMin`,Ie.inputMin),Ps(U,`_map_${ge}_inputMax`,Ie.inputMax),Ps(U,`_map_${ge}_outputMin`,Ie.outputMin),Ps(U,`_map_${ge}_outputMax`,Ie.outputMax),Ps(U,`_map_${ge}_curve`,Ie.curve))}}if(R.transform!==void 0){let V=U.metadata.transform,ne={offsetX:R.transform.offsetX??V?.offsetX??0,offsetY:R.transform.offsetY??V?.offsetY??0,rotation:R.transform.rotation??V?.rotation??0,scale:R.transform.scale??V?.scale??1,anchorX:R.transform.anchorX??V?.anchorX??.5,anchorY:R.transform.anchorY??V?.anchorY??.5,edges:R.transform.edges??V?.edges??\"transparent\"},ge=mn(U);U.metadata.transform=ne;let ze=da(ne);if(ge!==ze||V&&V.edges!==ne.edges)j=!0;else if(ze)for(let[Ie,ut]of Object.entries(_e(U)))Ps(U,`_xform_${Ie}`,ut)}if(R.boundingBox!==void 0&&R.boundingBox!==null&&U.boundingBoxDeclaration!==void 0){let V=Ue(U);U.metadata.boundingBox=R.boundingBox;let ne=Ue(U);if(V!==ne)j=!0;else if(ne){let ge=me(U);if(ge)for(let[ze,Ie]of Object.entries(ge))Ps(U,`_bbox_${ze}`,Ie)}}else R.boundingBox===null&&U.metadata.boundingBox!==void 0&&(U.metadata.boundingBox=void 0,j=!0);if(\"flow\"in R&&JSON.stringify(U.metadata.flow)!==JSON.stringify(R.flow)){let V=U.metadata.flow?.mode===\"column\"||U.metadata.flow?.mode===\"row\";U.metadata.flow=R.flow??void 0;let ne=U.metadata.flow?.mode===\"column\"||U.metadata.flow?.mode===\"row\";if(V&&!ne){let ge=ze=>{for(let Ie of Go(ze))N(Ie),ge(Ie.id)};ge(k)}us()}\"absolute\"in R&&U.metadata.absolute!==R.absolute&&(U.metadata.absolute=R.absolute,R.absolute&&N(U),us()),ds()&&us(),j?Aa():Qo()},d1=k=>{let R=_.get(k);if(!R)return;for(let j of Go(k))d1(j.id);p===k&&(p=null);let U=f.get(R.parentId);U&&(U.delete(k),U.size===0&&f.delete(R.parentId)),_.delete(k),Sl(),Aa(),ds()&&us()},L0=()=>{let k=nr.deltaTime;Pe=BT(Ce,Pe,k,performance.now());for(let R of _.values()){let U=R.metadata.maps??{};for(let j in R.mouseDriverState){let V=R.mouseDriverState[j],ne=qE(R,j);if(ne){if(ne.type===\"mouse-position\"){let ge=ne.smoothing??0,ze=ne.momentum??0,Ie=ne.x===void 0||ne.x===\"mouse\",ut=ne.y===void 0||ne.y===\"mouse\";!V.pointerSnapped&&qe&&(V.pointerSnapped=!0,Ie&&(V.currentX=Ne,V.velocityX=0),ut&&(V.currentY=ye,V.velocityY=0));let ls,Cs;if(Ie){let[vn,rd]=Nc(V.currentX,V.velocityX,Ne,ge,ze,k);V.currentX=vn,V.velocityX=rd,ls=vn}else ls=ne.x,V.velocityX=0;if(ut){let[vn,rd]=Nc(V.currentY,V.velocityY,ye,ge,ze,k);V.currentY=vn,V.velocityY=rd,Cs=vn}else Cs=ne.y,V.velocityY=0;let bs=ne.reach??1,St=ne.originX??.5,Ur=ne.originY??.5,fn=ne.invertX?-1:1,go=ne.invertY?-1:1,no=St+fn*(ls-St)*bs,Jo=Ur+go*(Cs-Ur)*bs,fi=no,Al=Jo,Yu=R.metadata.boundingBox;if(Yu&&R.boundingBoxDeclaration?.supportsResizeFit&&Ue(R)){let vn=gy(Yu,ee(),Q()),rd=rT(no,Jo,{centerX:vn.centerX,centerY:vn.centerY,halfWidthUV:vn.halfWidthUV,halfHeightUV:vn.halfHeightUV,rotationDeg:vn.rotation,aspectRatio:pe()});fi=rd.x,Al=rd.y}V.liveX=fi,V.liveY=Al;let q0=R._liveHandles?.[`_smoothed_${j}`];q0 instanceof An&&q0.setComponents(fi,1-Al)}else if(ne.type===\"mouse\"){let ge=ne.smoothing??0,ze=ne.momentum??0,Ie=ne.axis===\"x\"?Ne:ye;!V.pointerSnapped&&qe&&(V.pointerSnapped=!0,V.currentX=Math.max(.001,Ie),V.velocityX=0);let[ut,ls]=Nc(V.currentX,V.velocityX,Ie,ge,ze,k);V.currentX=ut,V.velocityX=ls;let Cs=Math.max(.001,ut),bs=R.mapValues[j],St=bs?bs.outputMin+(bs.outputMax-bs.outputMin)*Math.pow(Cs,Math.pow(2,-bs.curve*2)):Cs;V.liveScalar=St,Ps(R,`_smoothed_${j}`,St)}}}for(let[j,V]of Object.entries(R.uniforms))V._listSpec&&Ny(V._rawList,V._listSpec)&&P0(R,j);for(let j in R.autoAnimateState){let V=U[j];if(!V||V.type!==\"auto-animate\")continue;let ne=Pe*(V.speed??1)*.2,ge,ze=V.easing??V.waveform??\"sine\";if(V.mode===\"loop\")ge=Ry((ne%1+1)%1,ze);else{let St=(ne%1+1)%1;ge=Ry(St<.5?St*2:(1-St)*2,ze)}let Ie=R.mapValues[j],ut=Ie?Ie.outputMin:xe(R,j,V.outputMin),ls=Ie?Ie.outputMax:xe(R,j,V.outputMax),Cs=ut+ge*(ls-ut),bs=R.uniforms[j];if(bs?.compileTimeWhen){let St=bs._lastCompiledValue;bs.compileTimeWhen(St,Cs)&&(bs._lastCompiledValue=Cs,Aa())}Ps(R,`_smoothed_${j}`,Cs)}}},F0=()=>{let k=nr.deltaTime;for(let R of _.values()){let U=R.definition.animatedTime;if(U){let V=R.uniforms[U.speed],ne=V&&Number(V.value)||0,ge=Qi(Lu(R));ge.advance(k,ne),Ps(R,\"_animTime\",ge.value)}let j=R.definition.extraAnimatedTimes;if(j)for(let[V,ne]of Object.entries(j)){let ge=R.uniforms[ne],ze=ge&&Number(ge.value)||0,Ie=Qi(i1(R,ne));Ie.advance(k,ze),Ps(R,`_animTime_${V}`,Ie.value)}}},l1=(k,R)=>FT(k,R,{maxTextureDim:G,pixelRatio:D,viewportWidth:typeof window<\"u\"?window.innerWidth:k,viewportHeight:typeof window<\"u\"?window.innerHeight:R}),c1=()=>{let k=(typeof window<\"u\"?window.devicePixelRatio:1)||1;return Math.min(k,AT())},Fu=(k,R,U,j)=>{if(H&&k===M&&R===$&&U===L&&j===B){let{width:ze,height:Ie}=mi();if(!n||n.width===ze&&n.height===Ie)return}M=k,$=R,L=U,B=j,qy(U,j),H||(H=!0,_.size>0&&Aa());let{width:V,height:ne}=mi();n&&(n.width=V,n.height=ne);let ge=!1;for(let ze of T)ze.passManager.resize(V,ne)&&(ge=!0);for(let ze of T)for(let Ie of ze.ir.onResize)try{Ie({width:V,height:ne})}catch(ut){yr(\"[gpu] composition onResize error:\",ut)}for(let ze of _.values()){if(mn(ze)&&Ps(ze,\"_xform_aspectRatio\",pe()),Ue(ze)){let Ie=me(ze);if(Ie)for(let[ut,ls]of Object.entries(Ie))Ps(ze,`_bbox_${ut}`,ls)}N(ze)}if(Zo(),ge)for(let ze of T)I0(ze.store),ze.store.flush(),ze.passManager.repaintRtt();Me=0,Tl()},u1=(k,R)=>{k<=0||R<=0||k===I&&R===X||(I=k,X=R,gt={width:k,height:R},!pt&&typeof requestAnimationFrame==\"function\"&&(pt=!0,requestAnimationFrame(()=>{if(pt=!1,!gt)return;let U=gt;gt=null;let{width:j,height:V}=l1(U.width,U.height);Fu(j,V,U.width,U.height)})))},sP=k=>{let R=k[0];if(!R)return;let U,j;if(R.contentBoxSize){let V=Array.isArray(R.contentBoxSize)?R.contentBoxSize[0]:R.contentBoxSize;V?(U=Math.round(V.inlineSize),j=Math.round(V.blockSize)):(U=Math.round(R.contentRect.width),j=Math.round(R.contentRect.height))}else U=Math.round(R.contentRect.width),j=Math.round(R.contentRect.height);U===0||j===0||u1(U,j)},rP=k=>{let R=k[0];R&&(Ee=R.isIntersecting)},B0=()=>i&&!!t&&!!s&&M>0&&$>0,I0=k=>{let R=k.systemHandles,{width:U,height:j}=mi(),V=c1(),ne=(ge,ze)=>{let Ie=R[ge];Ie instanceof An&&(Ie.value=ze)};ne(\"time\",Pe),ne(\"viewportSize\",[U,j]),ne(\"logicalViewportSize\",[ee()*V,Q()*V]),ne(\"aspect\",U/Math.max(1,j)),ne(\"pointer\",[Ne,ye]),ne(\"pointerActive\",Ve?1:0)},Y0=k=>{for(let R of k)try{R(nr)}catch(U){yr(\"[gpu] render callback error:\",U)}},W0=k=>{if(hs||!B0())return;let R=performance.now(),U;if(k!==void 0)U=k;else{let ge=IT(R,{lastRenderTime:Me,isVisible:Ee,forceFullFrameRate:he,minInterval:Te});if(!ge.render)return;U=ge.deltaTime}Me=R,Wt&&performance.mark(\"shader-cpu-start\");let j=Ne>-5;nr.deltaTime=U,nr.pointer.x=j?Ne:.5,nr.pointer.y=j?ye:.5,nr.pointer.seen=qe,nr.pointerActive=Ve,nr.dimensions.width=M,nr.dimensions.height=$;let V=null,ne=null;try{YT({updateDrivers:()=>{L0(),F0(),wt(),oo()},ensureComposition:()=>((E||A===null)&&(A=$0(),E=!1),A===null?!1:(V=x.getOrBuild(A,()=>eP(A)),tP(V),!!S)),beforeRender:()=>Y0(S.ir.onBeforeRender),flush:()=>{I0(S.store),S.store.flush()},render:()=>{if(Wt&&performance.mark(\"shader-gpu-start\"),ne=x.renderValue??V,ne?.broken)return!1;let ge=ne,ze=ge&&ge.validationFrames>0&&ge.ir.usesCustomWgsl?t?.device:void 0;ze&&ze.pushErrorScope(\"validation\");try{ge?.passManager.render(s,nr,()=>S?.store.flush())}finally{ze&&ge&&(ge.validationFrames--,ze.popErrorScope().then(Ie=>{Ie&&!ge.broken&&C0(ge,Ie.message)}).catch(()=>{}))}if(Wt){performance.mark(\"shader-gpu-end\");try{performance.measure(\"shader-gpu-time\",\"shader-gpu-start\",\"shader-gpu-end\");let Ie=performance.getEntriesByName(\"shader-gpu-time\")[0];Ie&&Qr.recordGpuTime(Ie.duration),performance.clearMeasures(\"shader-gpu-time\"),performance.clearMarks(\"shader-gpu-start\"),performance.clearMarks(\"shader-gpu-end\")}catch{}}},markReady:()=>{x.markReady(A),$s&&!Qt&&(Qt=!0,$s=!1,jt&&queueMicrotask(jt))},afterRender:()=>Y0((ne??S).ir.onAfterRender)}),ur=0}catch(ge){_P(ge);return}if(Wt){performance.mark(\"shader-cpu-end\");try{performance.measure(\"shader-cpu-time\",\"shader-cpu-start\",\"shader-cpu-end\");let ge=performance.getEntriesByName(\"shader-cpu-time\")[0];ge&&Qr.recordCpuTime(ge.duration),performance.clearMarks(\"shader-cpu-start\"),performance.clearMarks(\"shader-cpu-end\"),performance.clearMeasures(\"shader-cpu-time\")}catch{}}Qr.recordFrame(performance.now()-R)},Tl=()=>W0(void 0),oP=async k=>{if(hs)return;if(!B0())throw new Error(\"Renderer is not ready\");let R=ho.running;R&&Bu(),Me=0,Tl(),t&&k?.waitForGpu!==!1&&await Uy(t),R&&_1()},nP=async(k,R)=>{W0(k),t&&R?.waitForGpu!==!1&&await Uy(t)},_1=()=>{hs||ho.running||!de||(Qr.setRendering(!0),ho.start())},Bu=()=>{ho.running&&(ho.stop(),Qr.setRendering(!1))},Iu=k=>{if(!n)return;st=n.getBoundingClientRect();let R,U;if(\"touches\"in k){if(k.touches.length===0)return;R=k.touches[0].clientX,U=k.touches[0].clientY}else R=k.clientX,U=k.clientY;Ne=(R-st.left)/st.width,ye=(U-st.top)/st.height,qe=!0},aP=k=>{!i||!n||(Iu(k),Ve=!0,Qo())},iP=k=>{!i||!n||(Iu(k),Ve=!0,Qo())},dP=()=>{i&&(Ve=!1,Qo())},lP=()=>{i&&(Ve=!1,Qo())},O0=(k,R)=>{if(!i||!n)return!1;let U=n.getBoundingClientRect();return U.width===0||U.height===0?!1:k>=U.left&&k<=U.right&&R>=U.top&&R<=U.bottom},cP=k=>{k.button===0&&O0(k.clientX,k.clientY)&&(Ve=!0,Iu(k),Qo())},uP=k=>{k.touches.length!==0&&O0(k.touches[0].clientX,k.touches[0].clientY)&&(Ve=!0,Iu(k),Qo())},Sl=()=>{let k=!1;for(let R of _.values()){if(R.usesPointer){k=!0;break}if(uW(R.uniforms?.shape?.value)||XE(R)){k=!0;break}if(R.metadata.maps){for(let U of Object.values(R.metadata.maps))if(U&&typeof U==\"object\"&&\"type\"in U){let j=U.type;if(j===\"mouse\"||j===\"mouse-position\"){k=!0;break}}if(k)break}}k&&!We?(We=!0,!Be&&n&&(Be=cW.register({onMouseMove:aP,onTouchMove:iP,onMouseDown:cP,onTouchStart:uP,onMouseUp:dP,onTouchEnd:lP}))):!k&&We&&(We=!1,Be&&(Be(),Be=null))},V0=()=>{if(h.length===0)return;let k=[...h];h=[];for(let U of k)U0(U.id,U.definition.fragment,U.parentId,U.metadata,U.uniforms,U.definition,U.domCanvas);let R=g;g=[];for(let U of R)U.kind===\"uniform\"?G0(U.id,U.name,U.value):D0(U.id,U.metadata)},Ea=(k,R)=>{if(!hs){hs=k,Q0(k),yr(`[gpu] renderer stopped (${k}):`,R);try{p1()}catch(U){yr(\"[gpu] cleanup during failure threw:\",U)}if(!or&&rr){or=!0;let U=rr;queueMicrotask(()=>{try{U(k,R)}catch(j){yr(\"[gpu] onUnavailable callback threw:\",j)}})}}},_P=k=>{if(f1(k)){Ea(k.reason,k);return}ur++,ur===1&&Vu(\"[gpu] render error:\",k),ur>=lW&&Ea(\"render-failed\",k)},pP=k=>{!k||typeof k.addEventListener!=\"function\"||(N0(),Cr=k,Zr=R=>{try{R.preventDefault()}catch{}let U=R.error;if(Vu(\"[gpu] uncaptured device error (a custom WGSL body that fails to compile reports here \\u2014 read the message for the line):\",U),typeof GPUOutOfMemoryError<\"u\"&&U instanceof GPUOutOfMemoryError){Ea(\"out-of-memory\",U);return}if(typeof GPUInternalError<\"u\"&&U instanceof GPUInternalError){Ea(\"gpu-error\",U);return}Rr++,Rr>=dW&&Ea(\"gpu-error\",U)},k.addEventListener(\"uncapturederror\",Zr))},N0=()=>{if(Cr&&Zr)try{Cr.removeEventListener(\"uncapturederror\",Zr)}catch{}Cr=null,Zr=null},mP=k=>{if(!Ys){Ys=!0;try{Bu()}catch{}if(Is){let R=Is;queueMicrotask(()=>{try{R(k)}catch(U){yr(\"[gpu] onDeviceLost callback threw:\",U)}});return}Ea(\"device-lost\",k)}},fP=async k=>{if(k.context!==void 0)throw new Error(\"[gpu] initialize({ context }) is not supported \\u2014 this renderer is WebGPU-only. Remove the WebGL `context` option.\");if(hs)return;let R=J0();if(R){Ea(R);return}if(i||d)return;let{canvas:U,resizeTarget:j,enablePerformanceTracking:V=!1,colorSpace:ne=\"p3-linear\",toneMapping:ge=\"linear\",gpu:ze,forceFullFrameRate:Ie=!1,observeElement:ut=!0,timeOrigin:ls}=k;ls!=null&&(Ce=ls),Wt=V,he=Ie,Ut=ne,Lt=ge,yo(),d=!0,c=new AbortController;let Cs=c;try{if(vs=hS,vs(ne),Cs.signal.aborted||(n=U,e=await YY({device:ze?.device,adapter:ze?.adapter,onDeviceLost:Jo=>mP(Jo.message||Jo.reason||\"unknown\")}),Cs.signal.aborted))return;t=e.root,pP(t.device),D=c1();let bs=t.device.limits?.maxTextureDimension2D;typeof bs==\"number\"&&bs>0&&(G=bs),r=ZY(t),o=_T(t),typeof window<\"u\"&&(Ke=()=>p1(),window.addEventListener(\"beforeunload\",Ke),Oe=()=>{if(I>0&&X>0){let Jo=I,fi=X;I=0,X=0,u1(Jo,fi)}},window.addEventListener(\"resize\",Oe,{passive:!0}));let St=U.getBoundingClientRect();st=St,Ee=!ut||St.width>0&&St.height>0&&St.top<window.innerHeight&&St.bottom>0&&St.left<window.innerWidth&&St.right>0,de=!0;let Ur=St.width>0?St.width:U.width,fn=St.height>0?St.height:U.height,go=Math.round(Ur),no=Math.round(fn);if(go>0&&no>0){I=go,X=no;let{width:Jo,height:fi}=l1(go,no);M=Jo,$=fi,L=go,B=no,H=!0,qy(go,no);let{width:Al,height:Yu}=mi();U.width=Al,U.height=Yu}else H=!1;if(s=VY(t,U),ut&&typeof ResizeObserver<\"u\"){let Jo=j??U.parentElement;Jo?(rt=new ResizeObserver(sP),rt.observe(Jo)):console.warn(\"[gpu] no element available for resize observation \\u2014 use resize() manually\"),typeof IntersectionObserver<\"u\"&&(tt=new IntersectionObserver(rP,{threshold:0,rootMargin:\"128px\"}),tt.observe(U))}if(Cs.signal.aborted)return;i=!0,l=!0,V0(),M>0&&$>0&&Tl(),de&&_1()}catch(bs){let St=f1(bs)?bs.reason:\"init-failed\";d=!1,c===Cs&&(c=null),Ea(St,bs);return}finally{d=!1,c===Cs&&(c=null)}},p1=()=>{c&&c.abort(),rt&&(rt.disconnect(),rt=null),tt&&(tt.disconnect(),tt=null),Be&&(Be(),Be=null),Ke&&typeof window<\"u\"&&(window.removeEventListener(\"beforeunload\",Ke),Ke=null),Oe&&typeof window<\"u\"&&(window.removeEventListener(\"resize\",Oe),Oe=null),ie!==null&&typeof cancelAnimationFrame==\"function\"&&(cancelAnimationFrame(ie),ie=null),Bu(),N0(),ys?.(),ys=null,typeof document<\"u\"&&document.fonts?.removeEventListener&&document.fonts.removeEventListener(\"loadingdone\",Rn);try{e?.release?.()}catch{}x.clear();for(let k of[...T])R0(k);S=null;try{r?.destroy()}catch{}try{e?.createdDevice&&t?.destroy()}catch{}_.clear(),p=null,f.clear(),h=[],g=[],l=!1,gt=null,pt=!1,n=null,s=null,r=null,o=null,t=null,e=null,i=!1,d=!1,H=!1,c=null,M=0,$=0,L=0,B=0,A=null,E=!0,Ee=!1,de=!0,Ne=-10,ye=-10,Ve=!1,qe=!1,We=!1,jt=null,Qt=!1,$s=!1,Is=null,Ys=!1,Rr=0,ur=0};return{initialize:fP,cleanup:p1,registerNode:U0,removeNode:d1,updateUniformValue:G0,updateNodeMetadata:D0,isInitialized:()=>i,resize:(k,R)=>{t&&u1(k,R)},startAnimation:_1,stopAnimation:Bu,renderAndWait:oP,renderSyntheticFrame:nP,getPerformanceStats:()=>{let k=Math.max(0,_.size-1),R=S?S.ir.rttPasses.length:0;Qr.updateNodeCounts(k,R);let U={render:{calls:S?S.passManager.passCount:0},programs:{length:x.size},memory:{textures:r?r.textureCount:0}};return Qr.getStats(U)},getLiveDriverValue:(k,R)=>{let U=_.get(k)?.mouseDriverState?.[R];return!U||U.liveX===void 0||U.liveY===void 0?null:{x:U.liveX,y:U.liveY}},getLiveScalarValue:(k,R)=>{let U=_.get(k);if(!U)return null;let j=U.metadata.maps?.[R];if(j?.type===\"auto-animate\"){let V=U._liveHandles?.[`_smoothed_${R}`],ne=V instanceof An?V.value:void 0;return typeof ne==\"number\"?ne:null}return j?.type===\"mouse\"?U.mouseDriverState[R]?.liveScalar??null:null},getNodeRegistry:()=>({nodes:new Map(_)}),getRendererType:()=>\"webgpu\",getInternalRenderer:()=>t?{device:t.device,adapter:e?.adapter,root:t}:null,setForceFullFrameRate:k=>{let R=he;return he=k,R},beginRecordingResolution:(k,R,U)=>{if(!t||k<=0||R<=0)return()=>{};let j=D,V=M,ne=$,ge=L,ze=B,Ie=I,ut=X;return D=U,Fu(k,R,k,R),()=>{t&&(D=j,Fu(V,ne,ge,ze),I=Ie,X=ut)}},setResolutionScale:k=>{if(!t)return;let R=Math.max(.05,Math.min(k,1)),U=Math.max(.01,c1()*R);if(Math.abs(D-U)<.001)return;D=U;let j=L||M,V=B||$;if(j<=0||V<=0)return;let{width:ne,height:ge}=l1(j,V);Fu(ne,ge,j,V)},setFrameRateCap:k=>{Te=k&&k>0?1e3/Math.max(k,10)-1:0},setTimeOrigin:k=>{Ce=k},setOnReady:k=>{jt=k,k&&Qt&&queueMicrotask(k)},setOnDeviceLost:k=>{Is=k},setOnUnavailable:k=>{if(rr=k,k&&hs&&!or){or=!0;let R=hs;queueMicrotask(()=>{try{k(R)}catch(U){yr(\"[gpu] onUnavailable callback threw:\",U)}})}},getFailureReason:()=>hs,__testing:{needsTransformation:da,findChildNodes:Go,buildFieldInits:k=>{let R=_.get(k);return R?A0(R):null},ensureDriverState:k=>{let R=_.get(k);R&&a1(R)},stepMouseDrivers:k=>{nr.deltaTime=k,L0()},stepAnimatedTime:k=>{nr.deltaTime=k,F0()},getAnimatedTimeValue:k=>{let R=_.get(k);return R?.definition.animatedTime?Qi(Lu(R)).value:null},writeExtraField:(k,R,U)=>{let j=_.get(k);j&&E0(j,R,U)},readExtraField:(k,R)=>{let U=_.get(k)?._liveHandles?.[R];return U instanceof An?U.value:void 0},getNodeRegistry:()=>({nodes:_,rootId:p,parentToChildren:f}),getParentToChildren:()=>f,getPendingRegistrations:()=>[...h],getFrameDiagnostics:()=>({deltaTime:nr.deltaTime,pointerX:Ne,pointerY:ye,pointerActive:Ve,globalElapsedTime:Pe,lastRenderTime:Me,isVisible:Ee,forceFullFrameRate:he,sharedTimeOrigin:Ce,animating:ho.running,mouseListenersNeeded:We}),computeStructuralHash:$0,isStructuralDirty:()=>E,clearStructuralDirty:()=>{E=!1},setTestReady:k=>{i=!0,l=!0,k&&(M=k.width,$=k.height,L=k.width,B=k.height,H=!0),V0()}}}}var WE={Aurora:eu,Blob:tu,Chrome:su,ColorWheel:ru,FallingLines:ou,FlowingGradient:nu,FractalNoise:au,Frost:iu,GaborNoise:du,Godrays:lu,Goo:cu,Heatmap:uu,Hologram:_u,Holographic:pu,LensFlare:mu,LightEdge:fu,LiquidMetal:vu,Marble:hu,MeshGradient:yu,Nebula:gu,Obsidian:xu,Plasma:bu,Plastic:wu,Prism:Tu,Ripples:Su,SineWave:Au,Spiral:Eu,Strands:Pu,Stripes:Mu,SunBurst:ku,Swirl:$u,ThinFilm:Cu,Voronoi:Ru,Water:Uu,Waveform:zu,WorleyNoise:Gu};var o1=document.querySelector(\"canvas[data-shader]\"),Du=WE[o1.dataset.shader],Ji=YE(),T0=Promise.resolve();function OE(e){return T0=T0.then(()=>Ji.renderSyntheticFrame(e-Ji.__testing.getFrameDiagnostics().globalElapsedTime)),T0}var S0=(async()=>{if(!Du)throw new Error(`shaders: no shader named \"${o1.dataset.shader}\" in this bundle`);await Ji.initialize({canvas:o1,observeElement:!1,colorSpace:\"srgb\"});let e=Ji.getFailureReason();if(e)throw new Error(`shaders: WebGPU unavailable (${e})`);Ji.registerNode(\"root\",Fm.fragment,null,null,{},Fm);let t=JSON.parse(o1.dataset.shaderProps||\"{}\"),s=Object.fromEntries(Object.entries(Du.props).map(([o,n])=>[o,o in t?t[o]:n.default])),r={blendMode:\"normal\",renderOrder:1,id:\"fx\",boundingBox:xy(void 0)};Ji.registerNode(\"fx\",Du.fragment,\"root\",r,Zy(Du,s,\"fx\"),Du),Ji.stopAnimation(),await OE(window.__hfTypegpuTime??0)})();window.__hf=window.__hf||{};window.__hf.buildReady=window.__hf.buildReady||{};window.__hf.buildReady.shaders=S0;S0.catch(e=>console.error(String(e)));window.addEventListener(\"hf-seek\",e=>{let t=S0.then(()=>OE(e.detail.time));typeof e.detail.waitUntil==\"function\"&&e.detail.waitUntil(t)});})();\n</script></body>\n</html>"} |